數(shù)字視頻采集系統(tǒng)中1394總線模塊的設(shè)計
摘要:在開發(fā)數(shù)字視頻采集系統(tǒng)時,由于圖像,尤其是視頻圖像,數(shù)據(jù)量大,實時性又高,對數(shù)據(jù)的傳輸速率要求非常嚴(yán)格。系統(tǒng)中采用IEEE1394總線與PC機進行通信,在滿足要求的同時,既不影響系統(tǒng)的獨立性,又方便了系統(tǒng)的開發(fā)和調(diào)試工作。本文重點介紹了1394總線傳輸模塊設(shè)計以及用DSP初始化1394控制寄存器的方法。
數(shù)字視頻采集系統(tǒng)中傳輸與顯示模塊負責(zé)把捕獲的信息或處理后的信息,發(fā)送給終端進 行存儲,顯示或進一步的處理。由于圖像,尤其是視頻圖像,數(shù)據(jù)量大,實時性又高,對數(shù) 據(jù)的傳輸速率要求非常嚴(yán)格?,F(xiàn)在應(yīng)用較為普遍的傳輸總線有USB2.0 和IEEE1394a。這兩 種高速串行總線的最高數(shù)據(jù)傳輸速率分別為480Mbps 和400Mbps。本系統(tǒng)的設(shè)計目標(biāo)是成 為獨立的系統(tǒng),而不僅僅是PC 機的一個外設(shè)。而采用IEEE1394 總線與PC 機進行通信, 既不影響系統(tǒng)的獨立性,又方便了系統(tǒng)的開發(fā)和調(diào)試工作。
一、IEEE1394 高速串行總線
1394 最初由蘋果公司于1986 年公布,原名為火線(FireWire)高速串行傳輸線。1995 年由IEEE(Institute of Electrical and Electronic Engineers 電氣與電子工程師學(xué)會)發(fā)布,稱為 IEEE1394,正式名稱為IEEE1394-1995。另外,索尼及德州儀器(TI)也制定了1394 的另外一 種規(guī)格: IEEE1394a,現(xiàn)在已經(jīng)普遍用于數(shù)字視頻領(lǐng)域,也稱為i.Link 或Lynx。
IEEE1394 高速串行總線的主要特點有:
⑴使用方便-支持熱插拔、即插即用(Plug and Play,PnP)
⑵傳輸速率高-IEEE1394a 支持100M/200M/400Mbps 的數(shù)據(jù)傳輸率,IEEE11394b 則支 持800M/1.6G/3.2Gbps 的數(shù)據(jù)傳輸率
⑶具有很大的地址映射空間-1 條總線最多可支持63 個節(jié)點,每個節(jié)點具有256TB 的地址映射空間
⑷可以獨立于主機系統(tǒng)進行操作-支持點對點及時通信
⑸線纜供電-最多可提供 45W 的功率
⑹支持等時和異步兩種傳輸模式
二、1394 總線傳輸模塊設(shè)計
外設(shè)與 PC 機的通信大致分為兩種:并行方式和串行方式。并行端口比較復(fù)雜,需要許 多的軟件方面的控制。相對而言,串行總線只有幾根線組成,比并行總線簡單,成本也低, 并且大部分串行總線都支持即插即用和熱插拔,使用方便。目前應(yīng)用較廣的串行總線主要是 USB 和1394。本系統(tǒng)采用的是IEEE1394a 異步傳輸方式,由TI 公司的1394 鏈路層控制器 TSB12LV32 和1394 物理層控制器TSB41AB3 組成。1394 總線可以提供8~40V DC 的電壓 以及最高可達1.5A 的電流,足以滿足整個系統(tǒng)的供電需求。
1、IEEE1394 協(xié)議
為了簡化硬件和軟件的實現(xiàn),IEEE 1394 定義了4 個協(xié)議層:
⑴總線管理層——負責(zé)總線配置和每個節(jié)點的活動管理:1394 的各個節(jié)點都實現(xiàn)了總 線管理層,以支持包括總線配置,電源配置在內(nèi)的多種功能,具體包含的功能取決于節(jié)點的 實際能力,如該節(jié)點是否為根節(jié)點。根據(jù)不同的應(yīng)用場合,每個節(jié)點的總線管理層所包含的 功能各異。但所有的節(jié)點,無論是根節(jié)點還是子節(jié)點,都必須包含支持總線自動配置這一功 能。
⑵事務(wù)層——支持有關(guān)異步傳輸讀取,寫入,鎖定操作的請求和響應(yīng),由應(yīng)用程序直接 調(diào)用驅(qū)動程序?qū)崿F(xiàn):事務(wù)層只支持異步傳輸。確切的說,事務(wù)層是一個軟件層,1394 應(yīng)用 程序與事務(wù)層以下的各層是相互隔離的,所有的傳輸請求都由事務(wù)層轉(zhuǎn)換成完成這個請求所 需的一個或多個事務(wù)請求,產(chǎn)生的事務(wù)請求指示了事務(wù)類型——讀取,寫入,或者鎖定。
⑶鏈路層——將事務(wù)層請求和響應(yīng)轉(zhuǎn)化為相應(yīng)的包或者子事務(wù),發(fā)送到串行總線上。本 層還對異步包和等時包進行地址或信道號的編解碼,冗余校驗:對于異步事務(wù),鏈路層提供 了事務(wù)層和物理層之間的接口,請求者的鏈路層將來自事務(wù)層的事務(wù)請求轉(zhuǎn)換成數(shù)據(jù)包,然 后發(fā)送到1394 總線上;響應(yīng)者接收到數(shù)據(jù)包后,解碼并傳遞給本地的事務(wù)層。對于等時事 務(wù),鏈路層提供等時軟件驅(qū)動程序和物理層之間的接口。傳輸期間,鏈路層負責(zé)生成將要通 過1394 總線發(fā)送的等時包。鏈路層還接收來自總線的等時包,并將包的信道號解碼,如果 此節(jié)點是數(shù)據(jù)包的目標(biāo)節(jié)點,則將包傳給軟件驅(qū)動程序。
⑷物理層——提供數(shù)據(jù)傳輸所必需的電氣和機械接口,負責(zé)管理總線的仲裁進程,以確 保同一時刻只有一個節(jié)點在總線上傳輸數(shù)據(jù):物理層提供鏈路層和1394 電纜之間的接口, 每個端口使用兩對雙絞線(TPA/TPA*和TPB/TPB*)發(fā)送信號,支持IEEE1394 協(xié)議操作所 需的多種事件,包括總線配置,總線仲裁以及數(shù)據(jù)傳輸?shù)取?/P>
實際的1394 電纜分4 芯和6 芯兩種。區(qū)別是前者只有兩對雙絞線,采用差分信號傳輸 數(shù)據(jù);后者還包括一對電源線。6 芯的電纜如圖1 所示:
2、鏈路層控制器
TSB12LV32 是一款同時兼容IEEE 1394-1995 和 IEEE1394a 協(xié)議標(biāo)準(zhǔn)的鏈路層控制器 (LLC),具有2KB 的通用接收FIFO(GRF)與2KB 的通用發(fā)送FIFO(ATF),支持異步 與等時事務(wù)。微控制器接口支持8/16 位的可編程數(shù)據(jù)寬度,能夠非常方便地與各種微控制 器,如Motorola 的68000 和ColdFire 處理器相連,工作時鐘頻率最高可達60MHz, I/O 管 腳同時兼容3.3V 和5V。
TSB12LV32 提供直通模式(DMA)的數(shù)據(jù)傳送,待發(fā)送數(shù)據(jù)無需事先打包,可以邊 讀取邊傳送,這使得異步包發(fā)送能夠達到與等時傳送相當(dāng)?shù)目偩€帶寬,從而傳輸效率大大提高。TSB12LV32 內(nèi)部的寄存器配置由DSP 完成,設(shè)備的發(fā)現(xiàn)與識別,驅(qū)動程序的安裝,1394 控制寄存器的初始化等也需要DSP 進行響應(yīng)和干預(yù)。DSP 充當(dāng)了鏈路層控制器的微控制器 (MCU)。因為本系統(tǒng)在調(diào)試階段,是PC 機的外設(shè)。為了實現(xiàn)兩者之間的通信,必須安裝 與本系統(tǒng)相對應(yīng)的1394 設(shè)備驅(qū)動程序,這需要DSP 的控制和響應(yīng)。而且1394 接口控制芯 片LLC 和PLC 的內(nèi)部寄存器也需要DSP 進行配置和初始化,該過程可以用圖2 來描述:
上述過程中,DSP 最重要的工作就是,在1394 總線進行自標(biāo)識期間,構(gòu)造根節(jié)點PC 機 讀取配置ROM 信息的quadlet 異步讀響應(yīng)包。配置ROM 包含有設(shè)備驅(qū)動程序的安裝信息, 設(shè)備的功能信息等重要內(nèi)容。PC 機在完全確認設(shè)備的相關(guān)信息后,才會發(fā)現(xiàn)和識別設(shè)備, 并安裝相應(yīng)的設(shè)備驅(qū)動,然后就可以調(diào)用相應(yīng)的函數(shù)訪問設(shè)備了。
3、物理層控制器
物理層控制器(PHY )TSB41AB3 提供3 個1394 端口,3.3V 單一供電,符合1394a 協(xié)議標(biāo)準(zhǔn),支持等時傳輸和異步傳輸,支持100/200/400Mbps 的傳輸速率,可以與 TSB12LV21、TSB12LV31、TSB12LV32、TSB12LV41 或TSB12LV01A 等鏈路層控制器實現(xiàn) 無縫連接,具有較高的通信速率與可靠性。
TSB41AB3 具有線纜電壓監(jiān)測功能,與鏈路層的接口支持總線隔離。此外,TSB41AB3 有多種封裝形式以供選擇——PHP48-pin,PAP48-pin,GQE80-ball 和ZQE64-ball。
4、 LLC 與PHY 的接口電路設(shè)計
鏈路層與物理層的接口電路如圖 3 所示。微控制器的數(shù)據(jù),地址和讀寫控制信號由DSP 控制;DM 端口連接到FPGA 中1394 傳輸控制模塊,主要完成視頻圖像的實時傳輸; TSB41AB3 直接與1394 電纜連接,完成系統(tǒng)和PC 機之間的通信工作和數(shù)據(jù)傳輸。
創(chuàng)新點:本系統(tǒng)采用IEEE1394 總線與PC 機進行通信,既不影響系統(tǒng)的獨立性,又方便了 系統(tǒng)的開發(fā)和調(diào)試工作。提高了傳輸速度的同時,使視頻采集系統(tǒng)不僅是PC 機的一個外設(shè), 更是一個獨立的系統(tǒng)。
xiaobai