国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

LVDS高速ADC接口, xilinx FPGA實現

ZYNQ ? 來源:ZYNQ ? 2023-04-03 10:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

LVDS

即Low-Voltage Differential Signaling。FPGA的selecteIO非常強大,支持各種IO接口標準,電壓電流都可以配置。其接口速率可以達到幾百M甚至上千M。使用lvds來接收高速ADC產生的數據會很方便。像ISERDES,IDDR,IDELAY,OSERDES,ODDR這種資源在FPGA的IOB中多得是(每個IO都對應有,最后具體介紹),根本不擔心使用。最近剛在項目中用到,提供一個思路,具體的器件使用參考FPGA手冊。

使用的AD芯片是ADI的AD9653,125M16bit高精度高速ADC,用到的采樣速率是80M。其SPI配置會單獨開一篇來講,SPI配置里面有個大坑,本來以為調好了的,后來又發現了問題,調了三天才定位到問題在哪,這就是硬件的魅力(坑爹)所在了吧。這里主要介紹FPGA的接收部分。

接收ADC數據的時序圖,

b650af8c-d1c4-11ed-bfe3-dac502259ad0.jpg

有幾點需要注意:

0 , 可以看出分成三種信號,數據采樣時鐘DCLK,幀同步信號FCLK,和輸入數據DATA

1,輸入數據采樣時鐘默認是已經對齊了輸入數據的中點,但幀時鐘是和數據字節邊緣對齊的。

2,使用Iserdes接收數據,Idelay調整時鐘延遲。

1,對數據采樣時鐘的處理如下

通過控制延時,使得CLK和經過IBUFDS的BitClk對齊,從而消除IBUFIO和BUFR還有net的延時。這樣所有的輸入信號都只經過了一個IBUFDS,延時相等。對Idelay的控制,可以手動調節,也可以用自動算法。(參考xapp524)

b667bab0-d1c4-11ed-bfe3-dac502259ad0.png

b67b0246-d1c4-11ed-bfe3-dac502259ad0.png

b69b1176-d1c4-11ed-bfe3-dac502259ad0.jpg

b6b5b6de-d1c4-11ed-bfe3-dac502259ad0.jpg

b6d0cd34-d1c4-11ed-bfe3-dac502259ad0.jpg

1.1手動調節對齊

首先來看看手動調節算法,用vivado的vio可以很方便的輸入輸出,可手動在線修改觀察現象,對后面的自動訓練算法也有一定的啟發作用。 默認R_delay_cnt=0時,可以看到輸入的正弦波形很亂

b6e5ea8e-d1c4-11ed-bfe3-dac502259ad0.png

b6f84b34-d1c4-11ed-bfe3-dac502259ad0.png

慢慢的增加R_delay_cnt,當R_delay_cnt=12時,開始出現穩定的正弦波,實驗發現R_delay_cnt=14,15,16時恰好采到時鐘的邊緣,也就是跟輸入的原始時鐘對齊了,可以看到采到邊緣是allign_word一直在跳變,有的是0,有的是1。一直到R_delay_cnt=18,正弦波都很穩定。有效窗口可以準確計算出來,200M的Idelay參考時鐘,78ps/tap。7tap*78ps=546ps。說明數據的有效窗口很小,畢竟是320M的DDR,半個周期都才1.56ns.

b7152358-d1c4-11ed-bfe3-dac502259ad0.png

b7344fe4-d1c4-11ed-bfe3-dac502259ad0.png

b74aaadc-d1c4-11ed-bfe3-dac502259ad0.png

b759fc08-d1c4-11ed-bfe3-dac502259ad0.png

最后取R_delay_cnt=15,可以在代碼里面寫死。

1.2自動訓練算法

既然有了手動調節的算法,為什么還要用自動訓練對齊的算法呢?在高低溫測試的時候,器件的延遲會受溫度的影響發生變化,特別是在時鐘頻率很高,數據有效窗口很小的時候,這時候就需要能夠動態的改變R_delay_cnt的值去自適應delay的變化,增加了魯棒性。

有了上面的手動調節算法,自動訓練的思路也很簡單了。上電復位后R_delay_cnt一直自加,記下最后一個全0和第一個全1的值,取中點。這里只考慮了一種情況,還可能是從全1到全0的情況。代碼如下

b77511b4-d1c4-11ed-bfe3-dac502259ad0.png

b78abcee-d1c4-11ed-bfe3-dac502259ad0.png

b7a543ca-d1c4-11ed-bfe3-dac502259ad0.png

2,對幀同步信號和數據的處理

用上面產生的數據采樣時鐘同時去采樣FCLK和DATA,使用Iserdes可以1:8進行串并轉換。但是我們不知道字節的邊界在哪里,所以要使用一個bit_slip對串轉并的結果進行移位,移位的同時檢測FCLK轉換的輸出,當輸出是8’b11110000的時候就停止移位。

b7b845ce-d1c4-11ed-bfe3-dac502259ad0.png

b7c8d632-d1c4-11ed-bfe3-dac502259ad0.png

b7e33a36-d1c4-11ed-bfe3-dac502259ad0.jpg

b7f6dcda-d1c4-11ed-bfe3-dac502259ad0.jpg

b80a5224-d1c4-11ed-bfe3-dac502259ad0.png

b8216752-d1c4-11ed-bfe3-dac502259ad0.jpg

b83ed1de-d1c4-11ed-bfe3-dac502259ad0.jpg

當數據率不是很高的IDDR數據,使用DDR替代Iserdes接收。IDDR和Iserdes使用的資源相同(待驗證)

b8539146-d1c4-11ed-bfe3-dac502259ad0.png

HR Bank真實的器件如下,一對IOB,可單獨使用,可差分使用。后面的資源從上到下依次是ISERDES(ILOGIC),IDELAY,OLOGIC(OSERDES),ILOGIC,IDELAY,OLOGIC。(ILOGIC可作為IDDR,OLOGIC可作為ODDR)。左上角的是一個clock region(如X0Y2)的中間分布的四個BUFIO和BUGR(局部時鐘驅動,局部時鐘分頻,二者延時相等)。后面是一個IDELAYCTRL。

b869d172-d1c4-11ed-bfe3-dac502259ad0.png

下面分別詳細介紹: IDEALY, 經過IDELAY必須要經過ISERDES,可直通。 ISERDES, ISERDES和ILOGIC使用相同的資源,可互換 ILOGIC,

b87b4e02-d1c4-11ed-bfe3-dac502259ad0.png

b890bd8c-d1c4-11ed-bfe3-dac502259ad0.png

OSERDES,和OLOGIC使用相同的資源,可互換

功能描述

? Edge triggered D type flip-flop(FF)

? DDR mode (SAME_EDGE or OPPOSITE_EDGE)

? Level sensitive latch(Latch)

? Asynchronous/combinatorial(直通)

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1660

    文章

    22411

    瀏覽量

    636265
  • lvds
    +關注

    關注

    2

    文章

    1237

    瀏覽量

    69828
  • AD芯片
    +關注

    關注

    2

    文章

    25

    瀏覽量

    18915

原文標題:LVDS高速ADC接口, xilinx FPGA實現

文章出處:【微信號:ZYNQ,微信公眾號:ZYNQ】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    FPGA高速ADC接口簡介

    本文介紹FPGA高速ADC接口方式和標準以及JESD204與FPGA高速串行
    的頭像 發表于 06-12 14:18 ?3149次閱讀
    <b class='flag-5'>FPGA</b>與<b class='flag-5'>高速</b><b class='flag-5'>ADC</b><b class='flag-5'>接口</b>簡介

    Altera FPGA高速ADS4249和DAC3482的LVDS接口設計

    引言: 本文以TI的ADS4249(ADC)和DAC3482(DAC)之間的接口為例,介紹Altera FPGAADC/DAC之間的DDR LVD
    的頭像 發表于 06-19 10:05 ?3181次閱讀
    Altera <b class='flag-5'>FPGA</b>與<b class='flag-5'>高速</b>ADS4249和DAC3482的<b class='flag-5'>LVDS</b><b class='flag-5'>接口</b>設計

    ADCFPGA之間LVDS接口設計需要考慮的因素

    本文描述了ADCFPGA之間LVDS接口設計需要考慮的因素,包括LVDS數據標準、LVDS
    的頭像 發表于 07-29 10:01 ?5393次閱讀
    <b class='flag-5'>ADC</b>和<b class='flag-5'>FPGA</b>之間<b class='flag-5'>LVDS</b><b class='flag-5'>接口</b>設計需要考慮的因素

    FPGA | Xilinx ISE14.7 LVDS應用

    今天給大俠帶來 Xilinx ISE14.7 LVDS應用,話不多說,上貨。 最近項目需要用到差分信號傳輸,于是看了一下FPGA上差分信號的使用。Xilinx
    發表于 06-13 16:28

    基于FPGA高速LVDS數據傳輸

    高速LVDS數據傳輸方案和協議基于FPGA高速LVDS數據傳輸本人在北京工作6年,從事FPGA
    發表于 03-01 18:47

    如何尋找使用XILINX FPGA高速ADC評估套件?

    嗨,我正在尋找使用XILINX FPGA高速ADC(分辨率8到14位,速度從50MSPS到200MSPS)評估套件。這將是偉大的如果我可以使用ISE webpack軟件運行板。如果有
    發表于 08-30 09:10

    如何將高速ADC與串行LVDS輸出連接到virtex 7 fpga?

    親愛的大家,我希望將高速ADC與串行LVDS輸出連接到virtex 7 fpga。我使用的ADC評估板是AD9635_125EBZ。我想知道
    發表于 07-26 18:27

    利用FPGA 實現與TS201 的LinkPort 高速數據

    隨著技術的發展, 往往需要在不同的系統之間實現高速通信, 現介紹了一種基于LVDS高速數據傳輸的接口LinkPort , 給出了在
    發表于 09-22 08:26 ?98次下載

    基于FPGALVDS接口應用

    介紹了LVDS技術的原理,對LVDS接口高速數據傳輸系統中的應用做了簡要的分析,著重介紹了基于FPGA
    發表于 01-11 10:46 ?101次下載
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>LVDS</b><b class='flag-5'>接口</b>應用

    XilinxFPGALVDS差分高速傳輸的實現

    XilinxFPGALVDS差分高速傳輸的實現
    發表于 03-01 13:12 ?66次下載

    LVDS高速ADC接口_Xilinx FPGA實現

    。使用lvds來接收高速ADC產生的數據會很方便。像ISERDES,IDDR,IDELAY,OSERDES,ODDR這種資源在FPGA的IOB中多得是(每個IO都對應有,最后具體介紹)
    的頭像 發表于 06-30 10:23 ?2.6w次閱讀
    <b class='flag-5'>LVDS</b><b class='flag-5'>高速</b><b class='flag-5'>ADC</b><b class='flag-5'>接口</b>_<b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b><b class='flag-5'>實現</b>

    Xilinx FPGA的SerDes接口詳細說明

    因為攝像頭輸出的LVDS信號速率會達到600Mbps,我們將不能夠通過FPGA的I/O接口直接去讀取這么高速率的信號。因此,需要使用Xilinx
    發表于 12-30 17:24 ?43次下載
    <b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b>的SerDes<b class='flag-5'>接口</b>詳細說明

    如何使用XilinxFPGA高速PCB信號實現優化設計

    本文檔的主要內容詳細介紹的是如何使用XilinxFPGA高速PCB信號實現優化設計。
    發表于 01-13 17:00 ?26次下載
    如何使用<b class='flag-5'>Xilinx</b>的<b class='flag-5'>FPGA</b>對<b class='flag-5'>高速</b>PCB信號<b class='flag-5'>實現</b>優化設計

    具有LVDS輸出的LTM9011 ADC的AN147-Altera Stratix IV FPGA接口

    具有LVDS輸出的LTM9011 ADC的AN147-Altera Stratix IV FPGA接口
    發表于 05-09 21:19 ?15次下載
    具有<b class='flag-5'>LVDS</b>輸出的LTM9011 <b class='flag-5'>ADC</b>的AN147-Altera Stratix IV <b class='flag-5'>FPGA</b><b class='flag-5'>接口</b>

    高速ADCFPGALVDS數據接口中避免時序誤差的設計考慮

    電子發燒友網站提供《高速ADCFPGALVDS數據接口中避免時序誤差的設計考慮.pdf》資料免費下載
    發表于 10-15 09:50 ?8次下載
    <b class='flag-5'>高速</b><b class='flag-5'>ADC</b>與<b class='flag-5'>FPGA</b>的<b class='flag-5'>LVDS</b>數據<b class='flag-5'>接口</b>中避免時序誤差的設計考慮