在线观看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>的概述及使用方法
    主站蜘蛛池模板: 亚洲婷婷六月 | 国产欧美日韩综合精品无毒 | 婷婷国产在线 | 午夜视频在线 | 色妞网| 国产成人三级视频在线观看播放 | 男女交性拍拍拍高清视频 | 在线免费国产 | 亚洲人成电影在线 | 亚洲毛片基地4455ww | 一级片在线免费播放 | 亚洲最大的成人网 | tom影院亚洲国产日本一区 | 亚洲第一网站 | 亚洲国产成人在人网站天堂 | 久久精品最新免费国产成人 | 国产黄在线观看 | 欧美成人 色 图 | 午夜黄色网址 | 夜夜爽天天狠狠九月婷婷 | 爱射综合 | 久久两性视频 | 美国一级毛片免费看成人 | 亚洲高清免费在线观看 | 天堂网在线www资源在线 | 噜噜噜色噜噜噜久久 | 49pao强力免费打造在线高清 | mitunav在线 | 久久天天躁狠狠躁夜夜呲 | 506rr亚洲欧美| 一区视频免费观看 | 中文字幕在线一区二区三区 | 天天操天天摸天天碰 | 免费久久精品国产片香蕉 | 成人窝窝午夜看片 | 欧美高清一区二区 | 午夜精品在线视频 | 国产一级影院 | 日本高清视频色wwwwww色 | 欧美色炮| 日本三级在线观看免费 |