音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

基于FPGA的LVDS高速數(shù)據(jù)通信卡設(shè)計(jì)

出處:zixielove 發(fā)布于:2012-05-23 11:27:35

  摘要 基于FPGA、PCI9054、SDRAM和DDS設(shè)計(jì)了用于某遙測信號模擬源的專用板卡。PCI9054實(shí)現(xiàn)與上位機(jī)的數(shù)據(jù)交互,F(xiàn)PGA實(shí)現(xiàn)PCI本地接口轉(zhuǎn)換、數(shù)據(jù)接收發(fā)送控制及DDS芯片的配置。通過WDM驅(qū)動程序設(shè)計(jì)及MFC交互界面設(shè)計(jì),終實(shí)現(xiàn)了10~200 Mbit·s-1的LVDS數(shù)據(jù)接收及10~50 Mbit·s-1任意速率的LVDS數(shù)據(jù)發(fā)送。

  某遙測信號模擬源是用于產(chǎn)生模擬信號處理器、遙測組件測試和交付測試的前端輸入信號的專用設(shè)備。該信號源生成各種類型的信號,輸入給待測產(chǎn)品,測試時比對遙測信號模擬源生成的信號和其經(jīng)過待測產(chǎn)品以后的信號,以判斷產(chǎn)品的功能是否正常。設(shè)計(jì)中的板卡為該遙測信號模擬源的組成部分,主要用于測試產(chǎn)品的LVDS總線協(xié)議的功能是否正常。由于待測信號的特殊應(yīng)用,要求板卡能夠接收200 Mbit·s-1內(nèi)的高速串行數(shù)據(jù)并能發(fā)送10~50 Mbit·s-1的任意速率LVDs數(shù)據(jù)。因PCI總線速度高、兼容性好、可靠性高且成本低,使其在各種與主機(jī)通信的總線技術(shù)中優(yōu)勢明顯。FPGA資源豐富、速度快、開發(fā)方便快捷,因此在高速數(shù)據(jù)通信中應(yīng)用廣泛。DDS頻率合成技術(shù)通過頻率控制字、相位控制字及參考時鐘的控制來實(shí)現(xiàn)輸出信號的調(diào)頻調(diào)相,并且輸出信號具有頻率轉(zhuǎn)換快、頻率分辨率高和相位噪聲低等優(yōu)點(diǎn)。綜合上述特點(diǎn),設(shè)計(jì)運(yùn)用PCI9054實(shí)現(xiàn)PCI總線接口,F(xiàn)PGA實(shí)現(xiàn)數(shù)據(jù)接收發(fā)送控制及接口實(shí)現(xiàn),DDS芯片AD9851產(chǎn)生任意LVDS數(shù)據(jù)發(fā)送時鐘,使用MFC實(shí)現(xiàn)板卡的交互界面并對板卡實(shí)現(xiàn)測試。

  1 硬件設(shè)計(jì)

  數(shù)據(jù)接收系統(tǒng)是將目標(biāo)信號進(jìn)行采集、處理并存儲,形成計(jì)算機(jī)可以處理的數(shù)據(jù)格式,即包含信號輸入單元、信號處理單元和信號輸出單元。數(shù)據(jù)發(fā)送系統(tǒng)是將目標(biāo)數(shù)據(jù)傳送給下位機(jī),下位機(jī)進(jìn)行數(shù)據(jù)格式處理,然后按照數(shù)據(jù)協(xié)議形式通過信號輸出單元發(fā)送出去。除此之外整個系統(tǒng)還需要緩沖區(qū)、時鐘以及電源等相關(guān)模塊支持。圖1所示為本板卡的硬件設(shè)計(jì)框圖。

圖1 LVDS數(shù)據(jù)采集發(fā)板卡的硬件設(shè)計(jì)框圖

圖1 LVDS數(shù)據(jù)采集發(fā)板卡的硬件設(shè)計(jì)框圖

  1.1 PCI接口設(shè)計(jì)

  PCI總線是由Intel等公司制定的具有嚴(yán)格規(guī)范的外部設(shè)備互聯(lián)總線,是目前計(jì)算機(jī)中廣泛采用的局部總線,它的信號線包括32根地址數(shù)據(jù)復(fù)用線、仲裁、接口控制線、總線命令字節(jié)允許復(fù)用線和系統(tǒng)復(fù)位等。PCI接口設(shè)計(jì)一般采用兩種方法:(1)利用CPLD/FPGA實(shí)現(xiàn),這種方法可以針對自己的需要定制功能,設(shè)計(jì)靈活性大。(2)用通用的接口芯片,如AMCC公司的S5933、PLX公司的PCI9054等。因PCI總線協(xié)議復(fù)雜,自行設(shè)計(jì)接口費(fèi)時費(fèi)力,而PCI接口芯片具有設(shè)計(jì)簡單、功能強(qiáng)大、可靠性好等特點(diǎn),從而大大減少開發(fā)工作量。綜上所述,設(shè)計(jì)選用PCI90 54,C從模式工作,本地總線端輸入時鐘50 MHz,配置芯片為Mierochip Technology公司的93LC56串行EEPROM.

  1.2 LVDS接口設(shè)計(jì)

  低壓差分信號(Low Voltage Differential Signaling,LVDS)采用極低的電壓擺幅高速差動傳輸數(shù)據(jù),可以實(shí)現(xiàn)點(diǎn)對點(diǎn)或一點(diǎn)對多點(diǎn)的連接。文中采用Cyclone I系列EP1C6Q240FPGA,它支持高速LVDS接口,利用其I/O的LVDS驅(qū)動器把FPGA內(nèi)部邏輯信號轉(zhuǎn)換為低壓差分信號對,經(jīng)過傳輸線傳送到對方差分接收電路。在Cyclone I系列FPGA中,使用LVDS接口只需在其配套的Quartus II軟件的MegaWizard中調(diào)用Alt lvds并進(jìn)行定制即可。

  LVDS接口電路的設(shè)計(jì)如圖2所示,F(xiàn)PGA發(fā)送端通過LVDS發(fā)送差分信號,在差分線上分別串接一個120 Ω電阻,再在其間并接一個170 Ω電阻,削弱差分信號的幅值,防止信號產(chǎn)生震蕩;FPGA接收端在差分線間并接一個100 Ω的終端電阻,電流主要通過終端電阻形成回路,從而在接收器的輸入端形成差分接收的信號電壓;PCB布線時防止LVDS高速信號串?dāng)_和互擾,避免其他信號耦合到LVDS傳輸線上,應(yīng)盡量將LVDS信號和其他信號分別布在兩個信號層上。

圖2 LVDS發(fā)送和接收接口電路

圖2 LVDS發(fā)送和接收接口電路

  1.3 其他接口設(shè)計(jì)

  為滿足PCI總線的DMA傳輸特性,需要在硬件上加入緩沖區(qū)。輸入的LVDS速率越高,需要的緩沖區(qū)容量越大,以保證不丟失數(shù)據(jù)。因此設(shè)計(jì)選用Micron公司提供的MT48LC2M32 SDRAM作為緩沖區(qū),它是一款64 MB全同步SDRAM.另外,輸出的LVDS信號要求10~50 MHz頻率范圍內(nèi)任意可調(diào),因此選用AD公司采用CMOS技術(shù)生產(chǎn)的直接數(shù)字合成器AD9851,它的工作時鐘為180 MHz,內(nèi)部除了完整的高速DDS外,還集成了時鐘6倍頻器和一個高速比較器,并且它的接口控制簡單,可以用8位并行口或串行口直接輸入頻率、相位等控制數(shù)據(jù)。設(shè)計(jì)中通過FPGA中PLL輸出30 MHz時鐘,倍頻器將參考時鐘倍頻至180 MHz,控制接口采用并行口傳輸。

  除此之外,時鐘模塊采用有源晶振為系統(tǒng)提供50 MHz時鐘,SDRAM時鐘由FPGA內(nèi)部PLL合成。電源模塊采用外圍電路簡單的LDO(Low Dropout Regulator)提供3.3V及1.5V電源電壓。

  1.4 FPGA內(nèi)部結(jié)構(gòu)設(shè)計(jì)

  FPGA內(nèi)部結(jié)構(gòu)的邏輯設(shè)計(jì)是本板卡設(shè)計(jì)的部分,圖3所示為本系統(tǒng)FPGA內(nèi)部結(jié)構(gòu)框圖。

圖3 FPGA內(nèi)部結(jié)構(gòu)框圖

圖3 FPGA內(nèi)部結(jié)構(gòu)框圖

  LVDS信號接收器接收外部的LVDS數(shù)據(jù)幀,檢出幀頭,并將幀數(shù)據(jù)傳送給雙口RAM進(jìn)行處理,一個數(shù)據(jù)幀包含32 bit的幀頭和256×32 bit的幀數(shù)據(jù)。接收的雙口RAM實(shí)現(xiàn)數(shù)據(jù)的乒乓存儲,寫數(shù)據(jù)的寬度為1 bit,讀數(shù)據(jù)的寬度為32 bit,以此來實(shí)現(xiàn)數(shù)據(jù)的串并轉(zhuǎn)換,同時實(shí)現(xiàn)數(shù)據(jù)時鐘域的轉(zhuǎn)換。LVDS接收數(shù)據(jù)控制模塊用于產(chǎn)生雙口RAM和SDRAM控制器的地址總線、數(shù)據(jù)總線和控制總線,實(shí)現(xiàn)各接收模塊聯(lián)合控制和數(shù)據(jù)轉(zhuǎn)移,同時它還負(fù)責(zé)從SDRAM控制器讀取數(shù)據(jù)送至FPGA內(nèi)的FIFO緩沖區(qū),用于PCI總線交互。

  LVDS信號發(fā)送部分由LVDS發(fā)送數(shù)據(jù)控制、雙口RAM、FIFO緩沖、LVDS信號發(fā)送器和DDS控制器組成。LVDS發(fā)送數(shù)據(jù)控制用于產(chǎn)生各模塊的地址、數(shù)據(jù)和控制總線,實(shí)現(xiàn)數(shù)據(jù)轉(zhuǎn)移和交互。雙口RAM實(shí)現(xiàn)并串轉(zhuǎn)換和乒乓存儲。LVDS信號發(fā)送器為數(shù)據(jù)幀添加包頭,并連同幀數(shù)據(jù)以AD98 51產(chǎn)生的發(fā)送頻率串行發(fā)送出去。

  另外,SDRAM控制器是FPGA內(nèi)用于外部SDRAM控制的模塊,PCI本地總線控制器是FPGA內(nèi)用于控制PCI9054本地總線交互的模塊,DDS控制器是FPGA內(nèi)用于外部AD9851控制的模塊。PLL是Ahera FPGA內(nèi)提供的模擬延遲鎖相環(huán)模塊,可以實(shí)現(xiàn)系統(tǒng)時鐘的倍頻、分頻及延遲等時鐘控制操作。通過該模塊可以實(shí)現(xiàn)系統(tǒng)內(nèi)不同時鐘域的時鐘分配。

  2 軟件設(shè)計(jì)

  系統(tǒng)設(shè)備的驅(qū)動程序采用Windows下的WDM(Windows Driver Model)驅(qū)動程序。目前開發(fā)WDM驅(qū)動程序通常有3種工具,即Windows DDK、DriverStudio和WinDriver.由于DriverStudio包含完善的源代碼生成工具以及相應(yīng)的類庫和驅(qū)動程序樣本,提供了在VC++下進(jìn)行驅(qū)動程序開發(fā)的支持,因此設(shè)計(jì)中使用DdverStudio來開發(fā)WDM驅(qū)動程序。

  設(shè)計(jì)的上層應(yīng)用程序采用Microsoft Virtual Studio作為開發(fā)平臺,通過MFC設(shè)計(jì)了人機(jī)交互界面,主要用于完成接收數(shù)據(jù)顯示存儲、發(fā)送數(shù)據(jù)載入、發(fā)送頻率控制字以及PCI控制命令等功能。其程序面板如圖4所示。

圖4 上層應(yīng)用程序界面

圖4 上層應(yīng)用程序界面

  3 結(jié)果測試

  在Ahium Designer 2009平臺上進(jìn)行板卡硬件原理圖和PCB圖設(shè)計(jì),F(xiàn)PGA芯片采用Altera公司的EP1C6Q240C6,使用Quartus II 9.0開發(fā)系統(tǒng)實(shí)現(xiàn)編程和仿真,完成對電路設(shè)計(jì)的功能仿真和時序仿真。

  在Quartus II中進(jìn)行引腳分配并編譯完工程后,將設(shè)計(jì)文件到FPGA的配置芯片中。在硬件上將LVDS的發(fā)送端和接收端連接以實(shí)現(xiàn)自發(fā)自收。在PC機(jī)的應(yīng)用程序中設(shè)置發(fā)送頻率為50 MHz,然后點(diǎn)擊"發(fā)送頻率控制字"按鈕發(fā)送頻率控制字,載入從0開始的連續(xù)累加數(shù)字,點(diǎn)擊"開始發(fā)送"按鈕發(fā)送數(shù)據(jù),然后點(diǎn)擊"開始接收"按鈕接收數(shù)據(jù)。從圖4所示的發(fā)送與接收數(shù)據(jù)顯示可以發(fā)現(xiàn),接收到的LVDS數(shù)據(jù)與發(fā)送的LVDS數(shù)據(jù)完全一致,系統(tǒng)的發(fā)送功能與接收功能符合設(shè)計(jì)要求。

參考文獻(xiàn):

[1]. PCI9054 datasheet http://m.58mhw.cn/datasheet/PCI9054_1054563.html.
[2]. PCI datasheet http://m.58mhw.cn/datasheet/PCI_1201469.html.
[3]. LVDS datasheet http://m.58mhw.cn/datasheet/LVDS_457917.html.
[4]. AD9851 datasheet http://m.58mhw.cn/datasheet/AD9851_251850.html.
[5]. S5933 datasheet http://m.58mhw.cn/datasheet/S5933_1055227.html.
[6]. 93LC56 datasheet http://m.58mhw.cn/datasheet/93LC56_1101729.html.
[7]. PCB datasheet http://m.58mhw.cn/datasheet/PCB_1201640.html.

關(guān)鍵詞:基于FPGA的LVDS高速數(shù)據(jù)通信卡設(shè)計(jì)

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!