那曲檬骨新材料有限公司

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

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

3天內不再提示

SERDES的工作原理及實現細節

倩倩 ? 來源:CSDN ? 作者:CSDN ? 2022-09-05 14:30 ? 次閱讀

高速串行通信經常需要用到 XILINX FPGA 內部專用的 SERDESE 模塊來實現串并轉換。LVDS 配合 SERDESE可以充分發揮 FPGA 的高速接口優勢。SERDESE 分輸入和輸出,輸入采用 ISERDESE, 輸出采用 OSERDESE,OSERDESE 的使用要比 ISERDESE 簡單。

本文涉及到一些重要原語概念,包括 idelay 延遲原語,IDELAYCTRL原語, ISERDESE 、OSERDESE。其中很關鍵一點時使用 idelay 延遲模塊以及 ISERDESE 原語中 BITSLIP 功能,實現比特流的時鐘對齊,以及數據流的位流順序對齊。XILINX FPGA 高速通信中經常會用到 idelay模塊對信號比特流做細微的時序調整。

參考文檔包括:官方手冊ug471,xapp585,第三方米聯客教程

1、IDELAYCTRL模塊

30a7c0c8-2cd8-11ed-ba43-dac502259ad0.png

2、IDELAY模塊

30d3a026-2cd8-11ed-ba43-dac502259ad0.png

3、IDELAY模塊工作時序

30fb49b4-2cd8-11ed-ba43-dac502259ad0.png

3113a144-2cd8-11ed-ba43-dac502259ad0.png

4、OSERDES模塊

3132c92a-2cd8-11ed-ba43-dac502259ad0.png

OSERDES模塊數據傳輸方式支持SDR,DDR兩種,數據位寬支持級聯以擴展到14比特。

3152b8e8-2cd8-11ed-ba43-dac502259ad0.png

317156c2-2cd8-11ed-ba43-dac502259ad0.png

由上圖可知,OSERDES串行輸出的數據流與原始并行數據比較,大小端是相反的。

5、ISERDES模塊

ISERDESE2 在 SDR 模式下數據轉換的位寬可以為 2、 3、 4、 5、 6、 7、 8bit,在 DDR 模式時,數據轉換位寬為 4、 6、 8bit, 2 個 ISERDESE2 級聯使用, DDR 模式可以支持 10、 14bit。如下圖所示通過 2 個 ISERDESE2 級聯輸出14bit 位寬數據接口。

31993e3a-2cd8-11ed-ba43-dac502259ad0.png

6、Bitslip數據對齊功能

31bb8d00-2cd8-11ed-ba43-dac502259ad0.png

31de5010-2cd8-11ed-ba43-dac502259ad0.png

7、Serdes時鐘源設計要求

3200fe4e-2cd8-11ed-ba43-dac502259ad0.png

二、源碼解析

1、SDR ISERDESE 時鐘恢復

ISERDESE 的作用是和 OSERDESE 相反的過程,但是比 OSERDESE 稍微復雜一些。ISERDESE 代碼需要實現自動找到最佳的數據采樣點, 自動完成數據對其,其中的加入了 IDELAY 和 BITSLIP 功能的使用,以及一些狀態機代碼。筆者下面根據 XAPP585 中給出的 demo 源碼分析。

1.1使用IDELAY之前,需配置IDELAYCTRL。

322af5f0-2cd8-11ed-ba43-dac502259ad0.png

1.2 計算比特流最大速率參數

官方源碼仿真使用的并行時鐘為80M,SDR模塊采用1_to_7串并轉換,則Serdes工作速率為560Mbps,由此可以得到Idelay調節Tap最大的步數。

3247f092-2cd8-11ed-ba43-dac502259ad0.png

設置 bit_rate_value=0560,那么代表了 serdes 的速率是 560Mbps,根據下面代碼得出 bt_val=5’h17(bt_val=5’d23)。由上文可知, idelay 的參考時鐘是 200MHZ, 那么每個延遲節拍是 78ps,則23*78ps= 1,794 ps = 557 Mb/s.最接近 560Mbps。

1.3 如何實現時鐘恢復時,差分時鐘信號正負相位對齊

查看源碼可知,SERDES工作速率為560Mbps參數,就可以選出 bit_rate_value 為 0557, 所以 bt_val 為 17h。先取出 bt_val 的中間值,即17h 的中間值是 0Bh。把差分時鐘n 的延遲時間設定為0Bh,把差分時鐘p的初始延遲設定為17h,然后保持差分時鐘n 的延遲時間不變,每次調節1個Tape,用于差分時鐘p和差分時鐘n的反向 進行相位對比,直到二者相位差為零。這個細節就是實現差分時鐘信號對齊的核心,看代碼時很容易忽略。我在第一遍時就犯了這個錯誤,導致始終不明白所以然。

32795d6c-2cd8-11ed-ba43-dac502259ad0.png

32a97664-2cd8-11ed-ba43-dac502259ad0.png

1.4 Bitslip進行比特流位順序調節

32c69870-2cd8-11ed-ba43-dac502259ad0.png

這段代碼不復雜,Bitslip的調節原理見上文,也容易理解。

1.5 差分時鐘正負信號時序補償

32e55aee-2cd8-11ed-ba43-dac502259ad0.png

需要把上述代碼段看明白就知道補償原理了。

通過控制每次減 1 個 tap,減少 idelay 延遲,并且通過 ISERDESE 檢測時鐘的跳變。當第一次跳變發生的時候,代表檢測到了時鐘的跳變沿,假設這個時候 bt_val=05h,05h<0Bh 所以計算出時鐘的 0BH+05H =10H。

如果恢復出的時鐘信號不是目標Pattern值 1100001 或者 1100011,就需要用到 Bslip 調整,每次設置 Bslip 調整一次。

330cc2a0-2cd8-11ed-ba43-dac502259ad0.png

仿真結果如上圖的箭頭所示,接收的 clk_data 是 7bit 時鐘數據,通過調整 c_delay_in 值調整 idelay每次減 1 個 tap,直到 clk_data 發生改變,可以看到這個值是 0b 整好是和中間值相等。這個時候狀態機 state2 也會進入狀態 1,這個時候計算出 c_delay_in_target=0,這個就是我們需要延遲的時間,可以看到需要延遲的時間為 0,這種情況非常理想,如果實際程序跑起來一般不會是 0,之后進入狀態 2。在狀態 2 中繼續調整 c_delay_in 直到和 c_delay_in_target 相等,如下圖,可以看到 clk_data=1100001b 是占比3:4 的時鐘就恢復出來了。

總結:

本篇文檔通過學習米聯客的教程,并結合UG471的學習,XAPP585的源碼學習,來不斷加深SERDES的工作原理及實現細節,并記錄一下自己學習過程,仿真有助于理解源碼。

審核編輯 :李倩

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

    關注

    11

    文章

    715

    瀏覽量

    65531
  • 源碼
    +關注

    關注

    8

    文章

    652

    瀏覽量

    29457
  • SerDes
    +關注

    關注

    6

    文章

    201

    瀏覽量

    35048

原文標題:XAPP585 - Serdes 1_to_7_sdr 解讀

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

收藏 人收藏

    評論

    相關推薦

    SiLM9714中離線診斷模式的工作原理實現方式

    本應用筆記主要闡述了SiLM9714中離線診斷模式的工作原理以及實現方式。
    的頭像 發表于 12-05 10:32 ?791次閱讀
    SiLM9714中離線診斷模式的<b class='flag-5'>工作原理</b>和<b class='flag-5'>實現</b>方式

    成像器件的工作原理是什么

    工作原理 1. 成像器件的分類 成像器件可以根據其工作原理和應用領域進行分類。主要的成像器件類型包括: 電荷耦合器件(Charge-Coupled Device, CCD) :是一種基于半導體材料的成像器件,通過電荷的存儲和轉移來實現
    的頭像 發表于 10-14 14:05 ?484次閱讀

    TMS320C6474 SERDES實現指南

    電子發燒友網站提供《TMS320C6474 SERDES實現指南.pdf》資料免費下載
    發表于 10-14 09:29 ?0次下載
    TMS320C6474 <b class='flag-5'>SERDES</b><b class='flag-5'>實現</b>指南

    KeyStone I器件的SerDes實現指南

    電子發燒友網站提供《KeyStone I器件的SerDes實現指南.pdf》資料免費下載
    發表于 10-12 09:25 ?0次下載
    KeyStone I器件的<b class='flag-5'>SerDes</b><b class='flag-5'>實現</b>指南

    汽車SerDes ESD保護

    電子發燒友網站提供《汽車SerDes ESD保護.pdf》資料免費下載
    發表于 09-24 10:29 ?0次下載
    汽車<b class='flag-5'>SerDes</b> ESD保護

    cmos電流反饋運放的工作原理是什么?

    這是一個cmos電流反饋型運放的原理圖 誰能詳細的解釋一下它的工作原理 具體每個mos有什么用 如何實現放大的 謝謝了
    發表于 09-23 07:40

    CMOS型LDO的工作原理和特點

    差線性穩壓器。它結合了CMOS技術的高集成度、低功耗和低壓差穩壓器的穩定電壓輸出特性,成為現代電子設備中廣泛應用的電源管理組件。以下將詳細介紹CMOS型LDO的工作原理、特點、優勢、應用場景以及相關的技術細節
    的頭像 發表于 09-11 10:11 ?954次閱讀

    運放恒流源的工作原理

    運放恒流源的工作原理,主要基于運算放大器(Operational Amplifier,簡稱運放)的“虛短”和“虛斷”特性,以及負反饋機制來實現對負載提供恒定電流的目的。以下是對運放恒流源工作原理的詳細解析,內容將圍繞其基本原理、
    的頭像 發表于 08-28 09:55 ?2011次閱讀

    NFC天線的工作原理和結構

    NFC(Near Field Communication)天線作為實現近距離無線通訊技術的關鍵組件,其工作原理和結構對于理解NFC技術的運作至關重要。
    的頭像 發表于 08-27 10:52 ?2707次閱讀

    ASP4644在FPGA SERDES供電中的應用

    ASP4644是一款高集成度、四輸出的降壓型模組穩壓器,專為需要低紋波和高效率的供電場合設計,如FPGA和SERDES供電。本文將探討如何利用ASP4644的特性實現FPGA和SERDES供電的優化
    發表于 08-16 14:55

    控制閥的工作原理和特點

    控制閥是一種廣泛應用于工業自動化領域的設備,其主要作用是實現對流體的控制和調節。控制閥的工作原理和特點對于確保工業系統的穩定運行和提高生產效率具有重要意義。本文將詳細介紹控制閥的工作原理、特點以及
    的頭像 發表于 06-30 09:30 ?2625次閱讀

    速度繼電器的工作原理、分類、應用及設計

    速度繼電器是一種電氣自動控制元件,廣泛應用于各種機械設備和電力系統中,用于實現對電動機轉速的自動控制。本文將詳細介紹速度繼電器的工作原理、分類、應用以及設計和使用中的注意事項。 一、速度繼電器
    的頭像 發表于 06-28 14:25 ?3516次閱讀

    驅動器的工作原理

    及應用。 一、驅動器的工作原理 驅動器的工作原理是通過能量轉換,將輸入的能量轉換為機械能,從而實現對負載的驅動。驅動器的工作原理可以分為以下幾個步驟: 1. 能量輸入:驅動器接收來自控
    的頭像 發表于 06-10 16:08 ?2554次閱讀

    壓電換能器的工作原理、特點及應用

    壓電換能器,作為一種能夠實現電能與機械能之間相互轉換的器件,其獨特的工作原理和廣泛的應用特點使其在多個領域發揮著重要作用。本文將詳細闡述壓電換能器的工作原理,并深入探討其應用特點,以期為相關領域的研究和應用提供參考。
    的頭像 發表于 05-24 16:17 ?2703次閱讀

    霍爾開關的工作原理及應用

    霍爾開關的工作原理及應用
    的頭像 發表于 04-09 10:29 ?3731次閱讀
    霍爾開關的<b class='flag-5'>工作原理</b>及應用
    永凡棋牌游戏| 大发888游戏场下载| 百家乐官网那里信誉好| 百家乐官网微笑心法搜索| 大发888下载删除| 易球百家乐娱乐城| 机器百家乐官网心得| 百家乐官网技巧运气| 大发888娱乐城888 bg| 百家乐娱乐网网77scs| 博乐百家乐游戏| 百家乐官网微乐| 百家乐官网电脑游戏高手| 太阳城网络博彩| 二八杠游戏| 百家乐庄闲对冲| 百家乐官网平注法到65688| 网上百家乐官网骗人的| 豫游棋牌游戏中心| 百家乐黏土筹码| 百家乐厅| 百家乐官网庄最高连开几把| 百家乐官网一起多少张牌| 百家乐官网游戏机的玩法| 百家乐官网保单详图| 百家乐谋略| 百家乐网上投注网站| 百家乐官网网盛世三国| 网上百家乐官网有没有假| 阳新县| 太阳城伞| 立即博百家乐的玩法技巧和规则 | 利都百家乐国际赌场娱乐网规则| 真钱百家乐公司哪个好| 百家乐官网是娱乐场最不公平的游戏| 个人百家乐官网策略| 百家乐官网翻天qvod粤语| 单张百家乐官网论坛| 视频| 鸿利国际娱乐城| 马牌娱乐城|