高速數字記錄系統中光纖下載卡的邏輯設計
中斷控制方式是外圍設備收到數據后,向CPU發(fā)送中斷。CPU收到中斷后,再控制數據在其內存和外圍設備之間的傳輸。它的優(yōu)點(diǎn)是大大提高了CPU的利用率且能支持多道程序和設備的并行操作。它的缺點(diǎn)是由于數據緩沖寄存器比較小,如果中斷次數較多,仍然會(huì )占用大量CPU時(shí)間。在外圍設備較多時(shí),由于中斷次數的急劇增加,可能造成CPU無(wú)法響應中斷而出現中斷丟失的現象。如果外圍設備速度比較快,可能會(huì )出現CPU來(lái)不及從數據緩沖寄存器中取走數據而丟失數據的情況。本文引用地址:http://dyxdggzs.com/article/188359.htm
DMA方式是在外圍設備和內存之間開(kāi)辟直接的數據交換通路進(jìn)行數據傳送。外圍設備通過(guò)通用總線(xiàn)直接訪(fǎng)問(wèn)內存,將其收到的數據寫(xiě)入內存或將要發(fā)送的數據讀出內存。上述操作完成后,再通過(guò)中斷的方式通知CPU,由CPU進(jìn)行后繼的處理。它的優(yōu)點(diǎn)是除了在數據塊傳送開(kāi)始時(shí)需要CPU的啟動(dòng)指令,在整個(gè)數據塊傳送結束時(shí)需要發(fā)中斷通知CPU進(jìn)行中斷處理之外,不需要CPU的干涉。
可見(jiàn),下載設備和微機之間通過(guò)主DMA方式進(jìn)行通信,可以大大的提高數據傳輸速率。66MHz/64位寬的PCI總線(xiàn)在理想情況下可以提供近500Mb/s的傳輸速率,可以比較容易的達到250Mb/s的光纖下載速度,所以下載的瓶頸在于硬盤(pán)的讀寫(xiě)速度。普通硬盤(pán)的平均讀寫(xiě)速度在60Mb/s,采用4個(gè)盤(pán)一組的陣列盤(pán),差不多可以達到60×4=240Mb/s的速度。
由上述數據可以看出,采用64位的PCI總線(xiàn),用主DMA方式進(jìn)行數據傳輸,下載的最大速度將大于200Mb/s。
FPGA邏輯內部結構
邏輯總體結構圖如圖3所示,數據流方向為:串行的光纖數據首先進(jìn)入ATM(Aurora Transmit Module)模塊,由ATM模塊內部的Xilinx RocketIo核將串行數據轉換成并行32位數據。并行數據經(jīng)過(guò)FIFO進(jìn)行緩存后,進(jìn)入PING64模塊。Pin64模塊內部邏輯產(chǎn)生主DMA時(shí)序,并將FIFO數據送上內部總線(xiàn)。Pcim_lc將內部總線(xiàn)信號轉換成PCI總線(xiàn)信號并送出去。各個(gè)模塊的功能具體如下。
圖3 FPGA內部結構圖
● Pcim_lc模塊為Xilinx提供的PCI64位的軟核;
● Ping64模塊包括和PCI64軟核的接口以及主DMA處理邏輯;
● ATM為和光纖輸入的接口模塊,采用Xilinx提高的Aurora協(xié)議對數據進(jìn)行控制,ATM只需提高用戶(hù)邏輯和Aurora的接口即可;
● CRM為時(shí)鐘和復位信號產(chǎn)生模塊。
評論