在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

Xilinx的高質(zhì)量時鐘輸出ODDR原語

冬至子 ? 來源:FPGA探索者 ? 作者:FPGA探索者 ? 2023-06-21 14:11 ? 次閱讀

一、ODDR概述及使用方法

ODDR(Output Double Data Rate,輸出雙倍數(shù)據(jù)速率):

在DDR接口中,ODDR用于發(fā)送時鐘和數(shù)據(jù);

SDR接口中,ODDR轉(zhuǎn)發(fā)時鐘(仍在時鐘樹內(nèi)),輸出端要直連到輸出port,不可加邏輯,連接方式:輸出時鐘連接ODDR的C引腳,D1固定值1'b1, D2固定值1'b0,CE固定值1’b1,ODDR的輸出Q連接到OBUF;

圖片

時鐘輸入有限制,需要從SRCC或者MRCC專用時鐘輸入引腳輸入,時鐘輸出可以在任何引腳上輸出。當(dāng)輸出時鐘時,即使使用的是時鐘專用輸入管腳去輸出時鐘,也等同于使用普通的GPIO管腳輸出時鐘。

輸出時鐘的最佳方法是使用ODDR來轉(zhuǎn)發(fā)時鐘 (假設(shè)輸出的時鐘是一個專用時鐘網(wǎng)絡(luò)上的時鐘)。每個IOB(IO Bank)都具有ODDR功能。

這樣做時,內(nèi)部時鐘一直停留在專用的時鐘網(wǎng)絡(luò)上,直到ODDR,永遠不需要進入一般的路由結(jié)構(gòu)。不建議直接將時鐘帶到OBUF,因為這需要內(nèi)部時鐘離開專用時鐘網(wǎng)絡(luò),通過一般的fabric路由線路路由到OBUF。

對Spartan6里面,必須用ODDR寄存器輸出。

二、時鐘配置

建議在輸出時鐘時加入ODDR原語,現(xiàn)在加入ODDR對比一下加入前后的不同。

加入ODDR代碼,D1接高電平,D2接低電平,C接時鐘,Q輸出。

wire user_clk;
IBUFDS IBUFDS_inst_user_clk(
    .O(user_clk), // Buffer output
    .I(USRCLK_P_I), // Diff_p buffer input
    .IB(USRCLK_N_I) // Diff_n buffer input
);   

wire user_clk_bufg;
BUFG BUFG_inst_user_clk (
      .O(user_clk_bufg), // 1-bit output: Clock output
      .I(user_clk)
);

wire user_clk_bufg_oddr;
ODDR #(
      .DDR_CLK_EDGE("OPPOSITE_EDGE"), //"OPPOSITE_EDGE" or "SAME_EDGE"
      .INIT(1'b0),    // Initial value of Q: 1'b0 or 1'b1
      .SRTYPE("SYNC") // Set/Reset type: "SYNC" or "ASYNC"
 ) ODDR_out_clock_inst_user_clock (
     .Q(user_clk_bufg_oddr),   // 1-bit DDR output
     .C(user_clk_bufg),   // 1-bit clock input
     .CE(1'b1), // 1-bit clock enable input
     .D1(1'b1), // 1-bit data input (positive edge)
     .D2(1'b0), // 1-bit data input (negative edge)
     .R(),   // 1-bit reset
     .S()    // 1-bit set
);

 OBUFDS OBUFDS_inst_user_clock (
    .O (USER_SMA_CLOCK_P_O
    .OB(USER_SMA_CLOCK_N_O),     // Diff_n output
    .I (user_clk_bufg_oddr)      // Buffer input
 )

不加ODDR,布局布線后RTL圖如下:

圖片

加ODDR,布局布線后RTL圖如下:

圖片

布局布線的資源中,下圖左側(cè)顯示沒有加ODDR的,右側(cè)是加入了ODDR,可見右側(cè)輸出時鐘經(jīng)BUFG后先到輸出引腳附近的ODDR(藍線和紫線交匯處),經(jīng)ODDR轉(zhuǎn)發(fā)后到PAD管腳輸出。

圖片

三、性能對比

按照Xilinx和網(wǎng)上的一些說法,加入ODDR后輸出時鐘的質(zhì)量會更好。

圖片

輸出DDR可以轉(zhuǎn)發(fā)一個時鐘副本到輸出。這對于傳播具有相同延遲的時鐘和DDR數(shù)據(jù)、以及生成多個時鐘(其中每個時鐘負載都有惟一的時鐘驅(qū)動)非常有用。這是通過將ODDR的D1輸入高電平并且D2輸入低電平來實現(xiàn)的。Xilinx建議使用這種方案將時鐘從FPGA邏輯轉(zhuǎn)發(fā)到輸出引腳。

如下圖所示是加入ODDR前后的時序裕量和資源消耗對比,可以看到,對 WNS (Worst Negative Slack,最差負時序裕量)和 WHS (Worst Hold Slack,最差保持時序裕量)、資源使用在加入前后沒有明顯的區(qū)別。實測加入ODDR前后誤碼率基本一致,眼圖掃描結(jié)果也一致。

圖片

按照Xilinx的推薦,在輸出時鐘時最好還是把ODDR加上 。這個測試用例沒有體現(xiàn)出ODDR的優(yōu)勢,也許在資源使用較多、時鐘頻率更高時才能體現(xiàn)。另外,這里只是輸出了時鐘,沒有輸出使用該時鐘的數(shù)據(jù)。

很多人說時鐘直接從BUFG輸出到管腳會報錯,必須加約束或者ODDR,目前我在ZYNQ7045上沒有發(fā)現(xiàn)此問題。

ODDR****的使用場景還在于 OSERDES、 FPGA 的源同步的系統(tǒng)設(shè)計 ,用 ODDR使得隨路時鐘和數(shù)據(jù)在輸出時是嚴格同步的,保證嚴格的相位對齊關(guān)系 。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA設(shè)計
    +關(guān)注

    關(guān)注

    9

    文章

    428

    瀏覽量

    27157
  • SDR
    SDR
    +關(guān)注

    關(guān)注

    7

    文章

    235

    瀏覽量

    51003
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    388

    瀏覽量

    60693
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1276

    瀏覽量

    53605
收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    protel輸出高質(zhì)量gerber

    圖文并茂一步一步手把手教你輸出高質(zhì)量的gerber傻瓜式教學(xué)。。。。[hide] [/hide]
    發(fā)表于 12-12 15:43

    高質(zhì)量C++、C編程指南

    高質(zhì)量C++、C編程指南
    發(fā)表于 08-06 11:58

    高質(zhì)量C&C++

    高質(zhì)量C&C++
    發(fā)表于 08-16 19:45

    原版PIC實戰(zhàn)項目-C(高質(zhì)量PDF版本)

    英文原版,高質(zhì)量保證。
    發(fā)表于 07-10 21:42

    高質(zhì)量C語言編程

    高質(zhì)量c語言,精,精,精,精華
    發(fā)表于 07-22 13:48

    編寫高質(zhì)量C語言代碼

    編寫高質(zhì)量C語言代碼 編寫高質(zhì)量C語言代碼 編寫高質(zhì)量C語言代碼
    發(fā)表于 07-31 17:47

    林銳《高質(zhì)量C語言編程》

    林銳《高質(zhì)量C語言編程》
    發(fā)表于 08-17 12:10

    高質(zhì)量C++與C編程指南

    高質(zhì)量C++與C編程指南
    發(fā)表于 03-09 10:54

    高質(zhì)量編程

    干貨,《495個C語言問題》、《華為內(nèi)部程序設(shè)計編碼規(guī)范》、《C語言:陷阱和缺陷》、《高質(zhì)量C編程[林銳]》
    發(fā)表于 02-27 19:39

    【下載】高質(zhì)量干貨-22本高質(zhì)量EMC電磁兼容性設(shè)計資料

    22本高質(zhì)量EMC電磁兼容性設(shè)計資料請君自取總體太大壓縮成兩個壓縮包。希望這些內(nèi)容能對大家在設(shè)計上有所幫助!
    發(fā)表于 03-20 00:02

    使用ODDR原語的重要性是什么?

    你好我將virtex5 LX50與具有應(yīng)根據(jù)standardEIA / TIA-644 LVDS規(guī)范終止的輸出數(shù)據(jù)的設(shè)備連接起來我在用著IBUFDS用于將輸入LVDS轉(zhuǎn)換為LVTTL,OBUFDS用于輸出信號和時鐘這是這樣做的正
    發(fā)表于 06-17 14:59

    請問怎么才能設(shè)計出高質(zhì)量的印制線路板?

    怎么才能設(shè)計出高質(zhì)量的印制線路板?
    發(fā)表于 04-23 06:57

    xilinx 原語使用方法

    xilinx 原語使用方法
    發(fā)表于 10-17 08:57 ?11次下載
    <b class='flag-5'>xilinx</b> <b class='flag-5'>原語</b>使用方法

    xilinx原語使用方法

    xilinx原語使用方法
    發(fā)表于 10-19 08:50 ?15次下載
    <b class='flag-5'>xilinx</b><b class='flag-5'>原語</b>使用方法

    Xilinx高質(zhì)量時鐘輸出ODDR原語的概述及使用方法

    在SDR接口中,ODDR轉(zhuǎn)發(fā)時鐘(仍在時鐘樹內(nèi)),輸出端要直連到輸出port,不可加邏輯
    的頭像 發(fā)表于 06-27 10:21 ?9769次閱讀
    <b class='flag-5'>Xilinx</b><b class='flag-5'>高質(zhì)量</b><b class='flag-5'>時鐘</b><b class='flag-5'>輸出</b><b class='flag-5'>ODDR</b><b class='flag-5'>原語</b>的概述及使用方法
    主站蜘蛛池模板: 天堂8中文在线最新版在线 天堂8资源8在线 | 日本高清在线3344www | 四虎影院永久在线 | 222网站高清免费观看 | 站长工具天天爽视频 | 色偷偷女男人的天堂亚洲网 | 亚洲码在线 | 三级黄色在线观看 | 免费在线黄视频 | 天天干在线影院 | 免费一级片在线观看 | 久久精品9 | www亚洲欲色成人久久精品 | 奇米99| 亚洲视频你懂的 | 色婷婷影视 | 欧美精品色精品一区二区三区 | 国产精品国产三级国快看 | 日日噜夜夜噜 | 日韩一级在线观看 | 成人欧美一区二区三区黑人免费 | sss欧美华人整片在线观看 | 色手机在线 | 国产成人精品亚洲 | 天天干天天干 | 亚洲欧美7777 | 色多多视频成人影院 | 亚洲黄色网址大全 | 午夜亚洲国产精品福利 | baoyu污污网站入口免费 | 中韩日欧美电影免费看 | 久久婷人人澡人人爽 | 四虎国产精品免费视 | 国产无套粉嫩白浆 | 免费一级毛片无毒不卡 | 欧美三级视频在线播放 | 欧美黄色一级片视频 | 日本高免费观看在线播放 | 久久精品国产免费中文 | 亚洲操操操| 男女免费观看视频 |