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

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

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

3天內不再提示

FPGA設計中兩種IO約束:管腳約束,延遲約束

454398 ? 來源:科學計算technomania ? 作者:貓叔 ? 2020-10-30 16:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

I/O約束

I/O約束是必須要用的約束,又包括管腳約束和延遲約束。

管腳約束

管腳約束就是指管腳分配,我們要指定管腳的PACKAGE_PIN和IOSTANDARD兩個屬性的值,前者指定了管腳的位置,后者指定了管腳對應的電平標準。

在vivado中,使用如下方式在xdc中對管腳進行約束。

set_property -dict {PACKAGE_PIN AJ16  IOSTANDARD  LVCMOS18} [get_ports "led[0]"    ]

在Vivado規(guī)定,必須要指定管腳電平,不然在最后一步生成比特流時會出錯。

除了管腳位置和電平,還有一個大家容易忽略但很容易引起錯誤的就是端接,當我們使用差分電平時比如LVDS,在在V6中我們使用IBUFDS來處理輸入的差分信號時,可以指定端接為TRUE。

   IBUFDS #(
      .DIFF_TERM("TRUE"),       // Differential Termination
      .IOSTANDARD("DEFAULT")     // Specify the input I/O standard
   ) IBUFDS_inst (
      .O(O),  // Buffer output
      .I(I),  // Diff_p buffer input (connect directly to top-level port)
      .IB(IB) // Diff_n buffer input (connect directly to top-level port)
   );

但在Ultrascale中的IBUFDS,卻把端接這個選項去掉了

IBUFDS #(

      .DQS_BIAS("FALSE")  // (FALSE, TRUE)
   )
   IBUFDS_inst (
      .O(O),   // 1-bit output: Buffer output
      .I(I),   // 1-bit input: Diff_p buffer input (connect directly to top-level port)
      .IB(IB)  // 1-bit input: Diff_n buffer input (connect directly to top-level port)
   );

我們必須要在xdc或I/O Pors界面中,手動指定,否則可能會出錯。

筆者之前就采過一個坑,差分端口輸入,當連續(xù)輸入的數據為11101111這種時,中間那個0拉不下來,還是1,同樣也會發(fā)生在000010000,這樣就導致數據傳輸錯誤,后來才發(fā)現(xiàn)是端接忘記加。因為端接會影響信號的實際電平,導致FPGA判斷錯誤。

當綜合完成后,我們可以點擊DRC,進行設計規(guī)則檢查,這一步可以報出一些關鍵問題,比如時鐘端口未分配在時鐘引腳上等。

延遲約束

延遲約束用的是set_input_delay和set_output_delay,分別用于input端和output端,其時鐘源可以是時鐘輸入管腳,也可以是虛擬時鐘。但需要注意的是,這個兩個約束并不是起延遲的作用,具體原因下面分析。

set_input_delay

這個約束跟ISE中的OFFSET=IN功能相同,但設置方式不同。下圖所示即為input delay的約束說明圖。

從圖中很容易理解,

T_inputdelay = Tco + TD

當滿足圖中的時序時,最大延遲為2ns,最小延遲為1ns。

因此,需要加的時序約束為:

create_clock -name sysclk -period 10 [get_ports clkin]
set_input_delay 2 -max -clock sysclk [get_ports Datain]
set_input_delay 1 -min -clock sysclk [get_ports Datain]
set_output_delay

set_output_delay的用法跟set_input_delay十分相似,這里就不再展開講了。我們上面講set_input_delay的描述中,大家可以看到,這個約束是告訴vivado我們的輸入信號和輸入時鐘之間的延遲關系,跟下面要講的時鐘周期約束是一個原理,讓vivado在這個前提下去Place and Route。并不是調節(jié)輸入信號的延遲,因為身邊有不少的FPGA工程師在沒用過這個約束指令之前,都以為這是調節(jié)延遲的約束。

如果要調整輸入信號的延遲,只能使用IDELAY,在V6中,IDELAY模塊有32個tap值,每個tap可延遲78ps,這樣總共差不多是2.5ns。

編輯:hfy

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

    關注

    1660

    文章

    22411

    瀏覽量

    636266
  • DRC
    DRC
    +關注

    關注

    2

    文章

    156

    瀏覽量

    38174
  • Vivado
    +關注

    關注

    19

    文章

    857

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Vivado時序約束invert參數的作用和應用場景

    在Vivado的時序約束,-invert是用于控制信號極性的特殊參數,應用于時鐘約束(Clock Constraints)和延遲約束(De
    的頭像 發(fā)表于 02-09 13:49 ?207次閱讀
    Vivado時序<b class='flag-5'>約束</b><b class='flag-5'>中</b>invert參數的作用和應用場景

    vivado中常用時序約束指令介紹

    在vivado,我們常用的時序約束指令主要包括如下幾個方面。
    的頭像 發(fā)表于 01-20 16:15 ?297次閱讀

    輸入引腳時鐘約束_Xilinx FPGA編程技巧-常用時序約束詳解

    基本的約束方法 為了保證成功的設計,所有路徑的時序要求必須能夠讓執(zhí)行工具獲取。最普遍的三路徑以及異常路徑為: 輸入路徑(Input Path),使用輸入約束 寄存器到寄存器路徑
    發(fā)表于 01-16 08:19

    蜂鳥e203移植要從哪些方面入手,在bsp哪里修改引腳對應關系,約束文件?

    蜂鳥e203移植要從哪些方面入手,在bsp哪里修改引腳對應關系,約束文件,跪求大神
    發(fā)表于 11-10 07:11

    采用xc7a200開發(fā)板移植蜂鳥E203

    是這個復位信號至少有一個生效。當著個復位鍵都為1時,從而將電源喚醒,可以設置一個LED觀察現(xiàn)象是否燒錄至FPGA,當約束的燈滅時,代表
    發(fā)表于 10-24 13:50

    時序約束問題的解決辦法

    Time 是否滿足約束。 我們要留意的是 WNS 和 WHS 個數值,如果這個數值為紅色,就說明時序不滿足約束。下面將解釋怎么解決這個問題。 1. Setup Time 違例
    發(fā)表于 10-24 09:55

    關于綜合保持時間約束不滿足的問題

    個時鐘是沒有約束的異步時鐘 3、在 synthesis 打開 edit timing constraints 設置異步時鐘,如下圖: 4、再重新運行 synthesis
    發(fā)表于 10-24 07:42

    蜂鳥e203移植fpga上如何修改約束文件

    第一步:我們先導入官方網站蜂鳥e203的代碼提供的e203添加進去,并加入ddr200T的 src.文件的system.v文件并加入約束文件(constrs文件夾之中
    發(fā)表于 10-24 07:18

    技術資訊 I Allegro 設計的走線約束設計

    本文要點在進行時序等長布線操作的時候,在布線操作的時候不管你是走蛇形線還是走折線,約束管理器會自動幫你計算長度、標偏差,通過精確控制走線長度,來實現(xiàn)信號的時序匹配。約束設計就是一套精準的導航系統(tǒng)
    的頭像 發(fā)表于 09-05 15:19 ?1326次閱讀
    技術資訊 I Allegro 設計<b class='flag-5'>中</b>的走線<b class='flag-5'>約束</b>設計

    技術資訊 I 圖文詳解約束管理器-差分對規(guī)則約束

    本文要點你是否經常在Layout設計抓瞎,拿著板子無從下手,拿著鼠標深夜狂按;DDR等長沒做好導致系統(tǒng)不穩(wěn)定,PCIe沒設相位容差造成鏈路訓練失敗……這些都是血淚教訓,關鍵時刻需要靠約束管理器救命
    的頭像 發(fā)表于 08-08 17:01 ?1195次閱讀
    技術資訊 I 圖文詳解<b class='flag-5'>約束</b>管理器-差分對規(guī)則<b class='flag-5'>約束</b>

    西門子再收購EDA公司 西門子宣布收購Excellicon公司 時序約束工具開發(fā)商

    精彩看點 此次收購將幫助系統(tǒng)級芯片 (SoC) 設計人員通過經市場檢驗的時序約束管理能力來加速設計,并提高功能約束和結構約束的正確性 ? 西門子宣布 收購 Excellicon 公司 ,將該公司用于
    的頭像 發(fā)表于 05-20 19:04 ?1577次閱讀
    西門子再收購EDA公司  西門子宣布收購Excellicon公司  時序<b class='flag-5'>約束</b>工具開發(fā)商

    PCB Layout 約束管理,助力優(yōu)化設計

    本文重點PCBlayout約束管理在設計的重要性Layout約束有助避免一些設計問題設計可以使用的不同約束在PCB設計規(guī)則和
    的頭像 發(fā)表于 05-16 13:02 ?1041次閱讀
    PCB Layout <b class='flag-5'>約束</b>管理,助力優(yōu)化設計

    PanDao:實際約束條件下成像系統(tǒng)的初始結構的生成

    的是,尋找合適的初始設計方案以進行后續(xù)適配與優(yōu)化,已經被證明是一項艱巨的工作。為避免這一耗時流程,本次研究的目標是從既定規(guī)格與約束條件中直接生成多種優(yōu)質的初始結構。此研究將會為光學設計師帶來大好處:其一
    發(fā)表于 05-07 08:57

    FPGA時序約束之設置時鐘組

    Vivado時序分析工具默認會分析設計中所有時鐘相關的時序路徑,除非時序約束設置了時鐘組或false路徑。使用set_clock_groups命令可以使時序分析工具不分析時鐘組
    的頭像 發(fā)表于 04-23 09:50 ?1340次閱讀
    <b class='flag-5'>FPGA</b>時序<b class='flag-5'>約束</b>之設置時鐘組

    一文詳解Vivado時序約束

    Vivado的時序約束是保存在xdc文件,添加或創(chuàng)建設計的工程源文件后,需要創(chuàng)建xdc文件設置時序約束。時序約束文件可以直接創(chuàng)建或添加已存在的約束
    的頭像 發(fā)表于 03-24 09:44 ?4828次閱讀
    一文詳解Vivado時序<b class='flag-5'>約束</b>