海量存儲(chǔ)等級(jí)(Mass Storage Class,MSC)是USB第一個(gè)標(biāo)準(zhǔn)化的規(guī)格,目前海量存儲(chǔ)裝置都能通過(guò)USB物理連接支持這項(xiàng)傳輸協(xié)議。另一方面,由于數(shù)字版權(quán)管理與內(nèi)容保護(hù)需要考慮特殊的通訊協(xié)議,微軟因此又推出了媒體傳輸協(xié)議(MTP)作為傳統(tǒng)大容量存儲(chǔ)裝置的替代方案。
數(shù)字版權(quán)管理(DRM)與內(nèi)容保護(hù)需要運(yùn)用特別的通訊協(xié)議,在微軟的DRM引擎Janus中,底層采用的技術(shù)為MTP。MTP可被視為取代傳統(tǒng)MSC的方案,能傳送受保護(hù)的內(nèi)容。圖1是傳統(tǒng)海量存儲(chǔ)裝置應(yīng)用以及相關(guān)的軟件堆棧。
主流操作系統(tǒng)與海量存儲(chǔ)裝置都能通過(guò)USB物理連接支持MSC,USB閃存盤、iPod及USB DVD刻錄機(jī)都使用與USB Zip-100磁盤驅(qū)動(dòng)器完全相同的指令。USB閃存盤與iPod甚至包括特殊的USB控制器,如Cypress半導(dǎo)體公司的EZ-USB AT2LP能將SCSI指令轉(zhuǎn)譯成閃存或硬盤的原生指令。
制定一套新協(xié)議的決策不能等閑視之,當(dāng)微軟決定要針對(duì)便攜式媒體裝置制定一套新標(biāo)準(zhǔn)時(shí),等于是對(duì)抗整個(gè)USB市場(chǎng)的成功基礎(chǔ)。既然如此,為何要大費(fèi)周章改變一套發(fā)展相當(dāng)成功的標(biāo)準(zhǔn)呢?
事實(shí)上,對(duì)于掌上型便攜式媒體裝置這種需要更精密的系統(tǒng)存取機(jī)制而言,MSC并不是理想的方案。MSC為硬盤配備的接口僅允許一個(gè)裝置與磁盤驅(qū)動(dòng)器進(jìn)行傳輸,磁盤驅(qū)動(dòng)器無(wú)法通過(guò)USB接口或DSP在音樂(lè)播放器**用硬盤。由于USB接口無(wú)法探測(cè)裝置硬盤里的檔案系統(tǒng),因此所有讀寫作業(yè)都是在邏輯塊地址(Logical Block Address,LBA)中進(jìn)行。這意味著USB裝置無(wú)法得知寫入作業(yè)何時(shí)完成,因此不能預(yù)測(cè)何時(shí)能與主控端切斷聯(lián)機(jī)。
MSC也有受困于設(shè)計(jì)而無(wú)法達(dá)到的功能,例如未設(shè)立調(diào)整音量或關(guān)閉影片播放裝置屏幕的功能,也沒(méi)有專門的機(jī)制向主控端發(fā)送更多指令。此外,MSC本身也不適合支持USB聯(lián)機(jī)。在裝置寫入數(shù)據(jù)途中拔掉USB接線時(shí),USB裝置所使用的大多數(shù)檔案系統(tǒng)都無(wú)法做出適當(dāng)?shù)姆磻?yīng)。
通過(guò)修改現(xiàn)有的MSC協(xié)議來(lái)達(dá)成上述功能是很困難的,任何延伸方案都無(wú)法與現(xiàn)有基礎(chǔ)同時(shí)運(yùn)作。Mass Storage DWG多年來(lái)一直嘗試制定USB裝置開(kāi)機(jī)的標(biāo)準(zhǔn),但至今仍未達(dá)成目標(biāo)。與此同時(shí),微軟決定在現(xiàn)有基礎(chǔ)上建置MTP。
圖3展示了一個(gè)典型的MTP系統(tǒng)。通過(guò)系統(tǒng)中的USB串行接口引擎(SIE),CPU可控制USB總線的通訊協(xié)議。系統(tǒng)中的CPU可連接至主控端作為一個(gè)MTP裝置,也可配合設(shè)計(jì)的需要作為海量存儲(chǔ)裝置。
MTP與MSC在不同層面上通過(guò)USB進(jìn)行通訊,MSC針對(duì)系統(tǒng)中的存儲(chǔ)單元放置一個(gè)極薄的數(shù)據(jù)容器,USB Mass Storage裝置不知道存儲(chǔ)裝置的檔案系統(tǒng)。這種設(shè)計(jì)讓USB裝置擁有極高的彈性,主控端可通過(guò)不同的方法 來(lái)控制存儲(chǔ)單元。固定功能的USB-to-ATA橋接控制芯片可對(duì)硬盤進(jìn)行格式化或?qū)VD-R設(shè)定成任何專利型格式,甚至是芯片在出廠時(shí)尚未問(wèn)市的格式。
這是如何實(shí)現(xiàn)的呢?橋接芯片以透明化的模式將邏輯塊尋址層級(jí)的指令傳送給磁盤驅(qū)動(dòng)器,而不會(huì)嘗試了解檔案系統(tǒng)的結(jié)構(gòu)。反觀圖像傳輸協(xié)議(Picture Transport Protocol,PTP)與MTP協(xié)議,則能在更高的功能層上進(jìn)行通訊。
圖像傳輸協(xié)議是相機(jī)與掃描儀用來(lái)傳送數(shù)據(jù)的通訊協(xié)議,擁有許多MTP需要的功能,支持雙向控制機(jī)制,計(jì)算機(jī)可控制掃描儀,也可在掃描儀上設(shè)計(jì)一個(gè)按鈕向PC要求進(jìn)行掃描。設(shè)計(jì)這套協(xié)議主要針對(duì)高速、無(wú)錯(cuò)的數(shù)據(jù)傳輸,這也是掃描儀與便攜式媒體播放器所追求的目標(biāo)。