基于FPGA的LVDS接口應(yīng)用
2.2 AltlvdS_tx時(shí)鐘模式
Altlvds模塊內(nèi)部有一個(gè)PLL,可以得到所需要的輸出數(shù)據(jù)時(shí)鐘,在圖1中可以看到選項(xiàng)Use External PLL,當(dāng)選擇此項(xiàng)時(shí),表示使用外部時(shí)鐘,則需要在FPGA中重新做一個(gè)PLL,并將輸出時(shí)鐘和LVDS模塊進(jìn)行相應(yīng)的連接。
當(dāng)使用內(nèi)部PLL時(shí),如圖2所示,What is the phase alignment of‘tx_in’with respect to the rising edgeof‘tx_inclock’?(in degrees)即可以調(diào)節(jié)tx_in輸入數(shù)據(jù)和tx_inclock輸入時(shí)鐘的相位偏移,而Register‘tx_in’input port using選項(xiàng)表示輸入數(shù)據(jù)是用輸入時(shí)鐘tx_inclock控制還是用核時(shí)鐘tx_coreclock控制,默認(rèn)的是核時(shí)鐘,而當(dāng)使用tx_inclock時(shí)鐘緩存輸入數(shù)據(jù)時(shí),可能會(huì)提示建立時(shí)間的問(wèn)題,而對(duì)高速時(shí)鐘來(lái)說(shuō),使用核時(shí)鐘緩存時(shí),會(huì)用最優(yōu)的相位位置來(lái)緩存數(shù)據(jù)。本文引用地址:http://m.butianyuan.cn/article/190723.htm
如圖4所示,發(fā)送器設(shè)置界面中What is the phasealignment of‘tx_outclock’with respect to‘tx_out’?選項(xiàng)可以設(shè)置輸出數(shù)據(jù)和輸出時(shí)鐘的相位關(guān)系。當(dāng)選擇‘tx_coreclock’輸出時(shí)可選擇核時(shí)鐘的時(shí)鐘源What isthe clock resource used for‘tx_coreclock’?可選擇Global Clock全局時(shí)鐘或Regional Clock區(qū)域時(shí)鐘,默認(rèn)的是Auto Selection.,由編譯時(shí)自動(dòng)選擇。
當(dāng)使用外部時(shí)鐘時(shí),即在圖1中選擇Use ExternalPLL,此時(shí)新建一個(gè)PLL來(lái)提供時(shí)鐘源,這時(shí)LVDS模塊只能設(shè)置輸出數(shù)據(jù)與時(shí)鐘的相位關(guān)系,其余選項(xiàng)不可設(shè)置。
3 Altlvds_tx模塊在DAC系統(tǒng)中的應(yīng)用實(shí)驗(yàn)
3.1 系統(tǒng)硬件設(shè)計(jì)
DAC系統(tǒng)原理框圖如圖5所示。
系統(tǒng)中DSP使用TigerSHARC處理器TS101,FPGA采用Aitera公司的StratixII系列EP2S90F1020C3,DAC芯片采用ADI公司的AD9735。
AD9735為12 bit數(shù)模轉(zhuǎn)換器,可以提供高達(dá)1 200 MS·s-1的采樣速率,且設(shè)有一個(gè)SPI端口,可以對(duì)D/A內(nèi)部參數(shù)進(jìn)行設(shè)置,并回讀狀態(tài)寄存器。
系統(tǒng)中由DSP將處理好的數(shù)據(jù)發(fā)送至FPGA,在FPGA內(nèi)部先由雙口RAM進(jìn)行緩存,然后將讀出的數(shù)據(jù)送至LVDS_TX模塊,輸出LVDS數(shù)據(jù)和數(shù)據(jù)時(shí)鐘到AD9735。實(shí)驗(yàn)中數(shù)據(jù)率為640 Mbit·s-1,并且提供640 MHz的系統(tǒng)時(shí)鐘給AD9735。由于接口時(shí)鐘速率提高,傳統(tǒng)系統(tǒng)同步方式的數(shù)據(jù)接口電路難以實(shí)現(xiàn),則采用源同步的方式更加可行,要求時(shí)鐘伴隨數(shù)據(jù)輸出,AD9735的數(shù)據(jù)輸入接口就是按照源同步的模式設(shè)計(jì),它要求保證時(shí)鐘與數(shù)據(jù)的邊沿對(duì)齊,即需要輸入數(shù)據(jù)隨路時(shí)鐘與數(shù)據(jù)采用同樣的機(jī)理產(chǎn)生。所以通過(guò)LVDS_TX模塊產(chǎn)生所需的數(shù)據(jù)和640 MHz時(shí)鐘送至AD9735。
3.2 系統(tǒng)軟件設(shè)計(jì)
在FPGA中使用全局時(shí)鐘100 MHz通過(guò)PLL產(chǎn)生160 MHz時(shí)鐘來(lái)控制雙口RAM的寫(xiě)地址計(jì)數(shù)器時(shí)鐘,并作為L(zhǎng)VDS_TX模塊外部時(shí)鐘PLL的輸入時(shí)鐘。如圖6所示,DSP送來(lái)的24位波形數(shù)據(jù),低12位為I路數(shù)據(jù),高12位為Q路數(shù)據(jù)送至雙口RAM,由DSP的60 MHz時(shí)鐘寫(xiě)入,用LVDS模塊的外部PLL產(chǎn)生的核時(shí)鐘做讀數(shù)時(shí)鐘,一次讀出96位,即4個(gè)點(diǎn)的數(shù)據(jù)。其中Rearrange模塊功能為實(shí)現(xiàn)數(shù)據(jù)位重新排列,為后面的LVDS_TX模塊數(shù)據(jù)做準(zhǔn)備(如圖3所示),使最終輸出數(shù)據(jù)能夠保證正確的數(shù)據(jù)順序。
fpga相關(guān)文章:fpga是什么
評(píng)論