1引 言
隨著數字技術的進步與發展,對于數據傳輸的高速率性和時實性提出了很高的要求,IEEE1394協議的出現,很好地解決了該問題。IEEE1394又名FireWire,是一種高速串行總線,已經發展了IEEE1394b提供最高達3.2 Gb/s的速率,并將傳輸距離擴展到100 m。由此可以斷定1394必然成為未來的“標準”串行總線。
IEEE1394支持2類事務:等時傳輸和異步傳輸。
異步傳輸(asynchronous transactions)保證數據傳輸的正確性,但是不保證數據傳輸的時實性,主要用來傳輸控制信息和一些對數據的正確性要求很高的數據。一個異步傳輸由4部分組成:請求數據包、請求確認數據包、響應數據包和響應確認數據包。確認數據包是和請求數據包、響應數據包同步的,當請求數據包和響應數據包發送之后立即就是確認數據包。
異步傳輸不占據固定的帶寬,但能保證節點獲得時間上的公平訪問,每一個執行異步傳輸的節點都能在單一的間隔內準確地訪問總線。
等時傳輸(isochronous transactions)對于數據傳輸的時實性要求很高,而對于數據傳輸的正確性要求相對較低。等時傳輸通過一個與等時傳輸關聯的信道號碼確定設備,其以固定的時間間隔(125μs)發送數據,所以必須分配固定的總線帶寬,有著高于異步傳輸的優先級,等時傳輸可用的最大帶寬是整個帶寬的80%。
根據協議的結構可以將1394協議分成事務層、鏈路層、物理層、總線管理層。鏈路層和物理層目前已經由硬件芯片實現。本設計主要針對芯片的應用,因此對協議本身不做太多介紹和研究。
2采集系統硬件設計
根據硬件的特點,設計了基于T1芯片組和FPGA的CCD相機采集系統。系統結構如圖1所示。
FPGA選用Altera公司的Cyclone系列器件EP1C6T144C8,可以為CCD相機提供工作所需的驅動時序,同時接收經過A/D轉換的CCD輸出圖像數據。
這里主要介紹1394接口的數據采集,FPGA內部的CCD驅動邏輯暫時不介紹。本設計用于大量的數據的傳輸,因此使用TSB12LV32的DM端口來輸入和輸出數據。FPGA與TSB12LV32的DM端口的邏輯電路如圖2所示。
FPGA內部采用異步FIFO解決CCD輸出數據頻率和TSB12LV32采集頻率不匹配的問題,寫時鐘由CCD輸出位同步信號提供,寫請求信號由FIFO的滿狀態共同控制;讀時鐘由TSB12LV32的DMCLK提供,讀請求信號由DMRW。當TSB12LV32開始傳輸數據時,在FIFO的滿狀態和TSB12LV32的DMDONE引腳控制下,由CCD輸出位同步信號將數據寫入FIFO;在DMWR的控制下,由DMCLK將FIFO中的數據由DM0~DM7引腳讀入TSB12LV32,連接如圖2所示。
2.1 MCU軟件設計
軟件的設計分為2部分:一個是在PC機上開發設備板的驅動程序;另一個是使用設備板上面使用MCU控制和配置PDI1394L40的軟件流程。單片的主要負責初始化各個CRF,設置TSB12LV32的工作模式,配置ROM發送ROM,分析包頭,構造包頭和數據包。配置ROM是設計的重點也是難點,將設備插入PC的1394端口,通過配置ROM,使得PC機識得設備。配置ROM的流程如圖3所示。
2.2異步操作
異步發送“自動插入header的異步包發送”為例,介紹如何進行異步發送操作,其流程圖如圖4所示。
2.3等時操作
等時接收的工作流程圖圖5所示。
3驅動開發
采用Numega公司的DriverWorks工具開發驅動,該軟件對DDK中的函數進行很好的封裝。使用DriverWizard可以直接生成驅動程序源代碼的框架,只需對其做修改即可。
由于Windows已經提供了總線驅動程序和端口驅動程序,因此只需要開發功能驅動程序即可。DriverWorks將DDK下的1394請求包(IRB)封裝成KIrb類,并將總線驅動程序的功能封裝在K1394LowerDevice類中,對于等時傳輸和異步傳輸也有相應的類對其相應的DDK進行封裝。
1394WDM驅動程序使用IRB(請求包)和總線進行通信,IRB被發送到總線驅動,總線驅動將IRB在總線上執行。DriverWorks使用KIrb類迅速創建一個IRB,同時使用K1394LowerDevice::SubmitIrb函數將IRB發送到總線驅動。
4結語
經測試,該系統實現IEEE1394a的傳輸協議,實現了異步和同步傳輸。IEEE已經推出1394b標準,1394b的最高速度可以達到3.2 Gb/s,有效傳輸距離延長到100 m,而且有些公司已經開始推出1394b控制芯片。該系統不但實現了設備端與PC主機之間數據的高速傳輸,同時還為1394b傳輸系統的設計和實現提供了有效的鋪墊。
-
FPGA
+關注
關注
1626文章
21668瀏覽量
601864 -
芯片
+關注
關注
453文章
50407瀏覽量
421849 -
mcu
+關注
關注
146文章
16992瀏覽量
350317
發布評論請先 登錄
相關推薦
評論