作者:盛翠霞,張濤,陳俊江,姚清華,袁紅艷
由于高幀頻、大面陣CCD數(shù)字相機的圖像數(shù)據(jù)量非常巨大,存儲流量超過50MBps。而且圖像輸出速率也比較高,所以高速圖像數(shù)據(jù)的實時記錄是一個不易解決的問題。高幀頻、大面陣CCD相機的數(shù)字視頻存儲的一般方案是基于高性能計算機體系結(jié)構(gòu),把PCI總線的視頻采集卡與高性能IDE硬盤系統(tǒng)或基于PCI-SCSI橋的SCSI存儲硬盤系統(tǒng)結(jié)合起來完成任務(wù)。這種方案實現(xiàn)起來比較容易,但存在總線瓶頸問題,一次存儲占用兩次PCI總線,而且還受到操作系統(tǒng)和文件系統(tǒng)的限制,因而在實際應(yīng)用中存儲速度很難突破40MBps。針對這一問題,本文設(shè)計出脫離計算機平臺的圖像數(shù)據(jù)存儲方式,采用FPGA芯片控制時序,運用VHDL語言編程實現(xiàn)微處理器和DMA控制功能,從而協(xié)調(diào)SCSI協(xié)議處理器實現(xiàn)數(shù)據(jù)的傳輸。FPGA的運用比單獨使用DMA控制器減少了電路板的體積,降低了成本,提高了存儲的速率。
1 系統(tǒng)的硬件結(jié)構(gòu)設(shè)計
實現(xiàn)SCSI協(xié)議和硬盤存儲,通常需要有微處理器、DMA控制器、SCSI協(xié)議控制器、數(shù)據(jù)緩存器等硬件支持和相應(yīng)的軟件控制模塊。而本系統(tǒng)。DMA控制通過對FPGA編程來實現(xiàn)。圖像數(shù)據(jù)存儲系統(tǒng)結(jié)構(gòu)圖如圖l所示。
1.1微處理器
微處理器負責(zé)對各個模塊進行協(xié)調(diào)和控制。本系統(tǒng)所設(shè)計的專用高速硬盤存儲設(shè)備實現(xiàn)數(shù)據(jù)的持續(xù)高速存儲,要求處理數(shù)據(jù)的速度高,因此采用DSP微處理器。微處理器主要功能如下:
(1)完成與外接數(shù)據(jù)的傳輸起始、結(jié)束控制。
(2)對FPGA進行復(fù)位、開始操作。
(3)對FAS466的初始化操作,對傳輸?shù)漠惓G闆r進行中斷處理。
(4)對協(xié)議控制芯片內(nèi)部寄存器的讀寫控制,從而控制SCSI總線的命令傳輸和狀態(tài)監(jiān)控。
對SCSI的命令信息進行解釋、執(zhí)行、管理;對來自SCSI總線的信息狀態(tài)進行翻譯、執(zhí)行、管理。
1.2 DMA控制器
DMA控制器控制數(shù)據(jù)發(fā)送或接收源的數(shù)據(jù)緩沖器與SCSI協(xié)議控制器內(nèi)部緩沖器之間的數(shù)據(jù)傳送,這樣通過與協(xié)議控制器的DMA接口相協(xié)調(diào)以控制數(shù)據(jù)源與SCSI總線間的數(shù)據(jù)傳送。本設(shè)計采用FPGA器件,利用VHDL語言編程實現(xiàn)DMA控制器功能.而不采用專用的DMA控制器,主要考慮以下一些因素:本設(shè)計的數(shù)據(jù)傳輸速率達到50MBps,而一般的專用DMA控制器難以勝任;專用的DMA控制器與SCSI協(xié)議控制芯片之間的連接需要大量的邏輯轉(zhuǎn)換電路和外圍連線,使設(shè)計難度加大;使用FPGA器件,除了完成DMA控制功能之外,還可以把電路中的邏輯轉(zhuǎn)換、系統(tǒng)復(fù)位等模塊設(shè)計進去,減小了設(shè)備的體積,方便了以后對系統(tǒng)的升級和改進。
1.3 SCSI協(xié)議處理器(FAS466)
SCSI協(xié)議處理器是SCSI總線操作的執(zhí)行部件,各公司都有專門的SCSI集成電路芯片作為協(xié)議控制器,如Qlogic公司的FAS368M、FAS466等。FAS466(Fast Architecture SCSI Processor)處理器是Qloglc公司1999年上市的一種高性能SCSI引擎,它源于Qlogic公司的TEC450/452三重嵌入式控制的鋁系列,可提供Fast40的同步傳輸速率,它的同步數(shù)據(jù)寬總線傳輸速率可達80MBps;支持先進的SCSI自動配置模式的1層和2層協(xié)議;內(nèi)部嵌有微控制器,能夠通過編程方式靈活地協(xié)調(diào)SCSI作業(yè)隊列.可以工作在啟動或目標(biāo)模式并支持單端或低電壓差分模式的SCSI連接。
FAS466區(qū)別于其他SCSI協(xié)議處理器的最大特點是:它采用微處理器和DMA接口結(jié)構(gòu),而常見的SCSI協(xié)議控制器采用PCI接口總線結(jié)構(gòu)。這是本設(shè)計采用FAS466的一個主要原因。采用微處理器和DMA接口結(jié)構(gòu),可以通過DSP對傳輸進行控制,脫離微機平臺,減少傳輸帶寬限制,使數(shù)據(jù)存儲系統(tǒng)具有非常好的靈活性和可移植性。FAS466由SCSI控制器、微控制器、DMA接口和微處理器接口四個模塊組成。外部微處理器通過微處理器接口對FAS466進行控制,協(xié)議控制器接受微處理器的操作指令,如總裁、選擇、失連、復(fù)位總線等。SCSI控制器提供靈活、有效的底層SCSI協(xié)議控制,微控制器則負責(zé)控制數(shù)據(jù)從DMA接口到SCSI硬盤的傳輸以及各個模塊之間的協(xié)調(diào)。FAS466的內(nèi)部結(jié)構(gòu)如圖2所示。
1.4 數(shù)據(jù)緩存器
在設(shè)備的輸入接口部分,需要有數(shù)據(jù)緩存單元。數(shù)據(jù)緩存的目的是為SCSI的高速DMA傳輸做好準(zhǔn)備,使兩邊數(shù)據(jù)傳輸速度匹配。數(shù)據(jù)的流向一般是一個口進,一個口出,不對信號進行任何處理。普通的存儲器在寫入的同時不能讀取,雙口隨機存儲器RAM雖然也可完成這個任務(wù),但是由于它需要復(fù)雜的地址譯碼電路,所以不采用。采用FIFO芯片,可以去掉復(fù)雜的緩存器譯碼電路,大大簡化了系統(tǒng)設(shè)計。緩存單元在結(jié)構(gòu)上相當(dāng)于先進先出(First In First Out,F(xiàn)IFO)隊列,即先到的數(shù)據(jù)先被存儲。本設(shè)計中FIFO選用IDT公司的IDT72V2113芯片。
2系統(tǒng)的軟件設(shè)計
軟件設(shè)計是本系統(tǒng)設(shè)計的重點和難點,它負責(zé)對相關(guān)硬件的控制和協(xié)調(diào),最終實現(xiàn)SCSI協(xié)議、硬盤的控制和DMA傳輸?shù)?。軟件設(shè)計分為SCSI控制軟件和DMA控制器的FPGA實現(xiàn)兩部分。下面分別進行討論。
2.1 SCSI控制軟件
一般來說,要完成一次數(shù)據(jù)交換必須完成SCSI總線的仲裁、選擇、消息、命令、數(shù)據(jù)和狀態(tài)等階段。這些階段,微處理器通過對FAS466寄存器的讀寫控制來實現(xiàn)。
FAS466的寄存器主要有:
(1)命令寄存器:DSP通過向命令寄存器寫入相應(yīng)指令,控制FAS466完成初始化、復(fù)位、總線分配與復(fù)位以及SCSI總線各個階段的轉(zhuǎn)變等功能。
(2)FIFO寄存器:這是一個128字節(jié)的雙端口RAM,SCSI硬盤和FAS466之間的數(shù)據(jù)交換都通過該FIF016字(深)的FIFO寄存器來完成。
(3)傳輸計數(shù)寄存器:是一個減法計數(shù)器,用于保存一次DMA數(shù)據(jù)傳輸?shù)淖止?jié)數(shù)。
(4)中斷寄存器:DSP通過FAS466中斷寄存器了解SCSI命令的執(zhí)行情況,從而決定程序的執(zhí)行流向。
SCSI控制軟件流程如圖3所示。首先初始化SCSI控制器,然后SCSI控制器與SCSl硬盤建立同步傳輸協(xié)議,在硬盤準(zhǔn)備好的情況下才可以發(fā)送各種SCSI命令,如讀、寫等,同時處理好各種意外情況的發(fā)生。
2.2 DMA控制器的FPGA實現(xiàn)設(shè)計
FAS466外部DMA控制器由FPGA實現(xiàn)。FAS466通過DREQ信號有效請求數(shù)據(jù)傳輸,當(dāng)DMA控制器檢測到DREQ有效并且外部FIF0非空時,使DACK有效并通知FAS466開始DMA傳輸。DMA控制器的狀態(tài)機如圖4所示。
FPGA除了實現(xiàn)FAS466的外部DMA控制器之外,還實現(xiàn)FAS466與外部微處理器的部分邏輯和其他邏輯控制。FPGA內(nèi)部邏輯功能模塊如圖5所示。
本文在FAST-40 SCSI協(xié)議基礎(chǔ)上,對實時高速數(shù)字視頻SCSI存儲系統(tǒng)的軟硬件進行了設(shè)計。利用FAS466作為SCSI控制器宴現(xiàn)啟動器功能,控制兩塊SCSI硬盤實現(xiàn)直接存儲,充分利用SCSI總線的帶寬,從而大幅度提高了系統(tǒng)的效率。初步建立了較完善實用的直接存儲的結(jié)構(gòu)體系,實現(xiàn)存儲流量達70MBps。為解決大面陣、高幀頻CCD數(shù)據(jù)實時存儲奠定了良好的基礎(chǔ)。該項技術(shù)的解決,將會大力促進在科學(xué)研究、軍事技術(shù)、尤其在航天、航空偵察及高速數(shù)據(jù)記錄領(lǐng)域的應(yīng)用發(fā)展。
責(zé)任編輯:gt
-
控制器
+關(guān)注
關(guān)注
112文章
16361瀏覽量
178050 -
微處理器
+關(guān)注
關(guān)注
11文章
2263瀏覽量
82448 -
緩存器
+關(guān)注
關(guān)注
0文章
63瀏覽量
11660
發(fā)布評論請先 登錄
相關(guān)推薦
評論