基于PCD656的高速PCI總線(xiàn)接口的設計與實(shí)現
現代雷達信號處理具有數據量大、實(shí)時(shí)性高等特點(diǎn),而總線(xiàn)傳輸的效率決定了系統的性能,目前普遍使用標準化的PCI總線(xiàn)技術(shù),以便升級更新。為加快產(chǎn)品開(kāi)發(fā)和降低設計難度,一般有兩種解決方法:采用通用的PCI芯片或IP核。目前常用的PCI芯片如PCD054、PCD052等雖然性能穩定、使用方便,但它們只適用33 MHz、32位總線(xiàn)接口,受時(shí)序設計和應用程序效率等影響,總線(xiàn)傳輸速度約穩定在70 MB·s-1;使用IP核雖可以兼容66 Hz、64位總線(xiàn)且節省板卡面積,但其價(jià)格昂貴不利于高校及中小企業(yè)推廣使用。而PCI9656適用于66 MHz、64位的PCI總線(xiàn),因此逐漸成為總線(xiàn)開(kāi)發(fā)的主流元器件,使得總線(xiàn)傳輸速度達到了150 MB·s-1甚至更高。
本文引用地址:http://dyxdggzs.com/article/191292.htm本文利用高效PCI芯片和FPGA設計了一款64位總線(xiàn)傳輸接口電路,傳輸速度達到212 MB·s-1,較以往總線(xiàn)傳輸速度有了較大地提高,滿(mǎn)足了目前高速數據傳輸系統的要求。
1 PCI總線(xiàn)接口架構
本系統主要由PCI9656和FPGA構成,系統框圖如圖1所示。當主機發(fā)起讀寫(xiě)操作時(shí)PCI9656需要響應其操作,并將相應命令發(fā)送到FPGA進(jìn)行處理,FPGA進(jìn)行處理后將數據和命令通過(guò)PCI9656回傳給主機。PCI9656與主機之間的通信需要相應的設備驅動(dòng)程序支持,而FPGA響應主機命令則需要配置相應的局部時(shí)序。因此,本設計主要的工作為設備驅動(dòng)程序的開(kāi)發(fā)和FPGA局部時(shí)序的設計。
圖1 總體傳輸系統框圖
2 PCI9656性能概述
PCI9656是PLX公司推出的一款兼容32位和64位PCI總線(xiàn)標準的橋接芯片,采用PLX數據流水線(xiàn)結構(Data Pipe Architecture),內部配有DMA控制器、可編程主模式傳輸及從模式傳輸;內部有PCI優(yōu)先判決器,可以支持外部7個(gè)外部主控器;可由本地中斷信號LINTi和LINTo生成一個(gè)PCI中斷信號INTA;本地時(shí)鐘獨立于PCI時(shí)鐘工作;支持位寬為8位、16位和32位的66,MHz本地總線(xiàn)。PCI9656寄存器與PCI9054寄存器兼容,可容易地進(jìn)行基于32位PCI總線(xiàn)與基于64位PCI總線(xiàn)的軟件移植。
PCI 9656具有6條獨立的數據通道,分別支持Direct Master、Direct Slave以及DMA功能模式下的數據傳輸。
?。?)Direct Master模式。用于局部總線(xiàn)到PCI(CompactPCI)的數據傳輸,主控設備在局部總線(xiàn)端。16 QWord(128 Byte)和32 QWords(256Byte)的FIFO各應用于數據的讀、寫(xiě)通道。
?。?)Direct Slave模式。用于PCI(CompactPCI)到局部總線(xiàn)的數據傳輸,主控設備在PCI端。16QWords(128 Byte)和32 QWords(256 Byte)的FIFO各應用于數據的讀、寫(xiě)通道。
?。?)DMA模式。DMA傳輸時(shí)PCI9656同時(shí)是PCI和局部總線(xiàn)的主控設備,PCI 9656有兩條DMA通道(Channel 0、Channel 1),每條通道都由一DMA控制器和32 QWords(256 Byte)雙向FIFO組成。其DMA方式有常規的塊模式(Block Mode)、集散模式(Scatter/Gather Mode)和命令模式(Demand Mode)。
在局部總線(xiàn)端,根據不同的處理器PCI9656有3種工作模式。
?。?)M模式。支持Motorola 32 bit的處理器,提供了可與MPC850/860 PowerQUICC直接相連的接口。
?。?)C模式。適合大多數處理器的通用模式,比如常用的FPGA,在本設計中采用此模式。
?。?)J模式。與C模式類(lèi)似,但其地址線(xiàn)與數據線(xiàn)復用。
評論