91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

FPGA設(shè)計(jì)中兩種IO約束:管腳約束,延遲約束

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

掃碼添加小助手

加入工程師交流群

I/O約束

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

管腳約束

管腳約束就是指管腳分配,我們要指定管腳的PACKAGE_PIN和IOSTANDARD兩個(gè)屬性的值,前者指定了管腳的位置,后者指定了管腳對(duì)應(yīng)的電平標(biāo)準(zhǔn)。

在vivado中,使用如下方式在xdc中對(duì)管腳進(jìn)行約束。

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

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

除了管腳位置和電平,還有一個(gè)大家容易忽略但很容易引起錯(cuò)誤的就是端接,當(dāng)我們使用差分電平時(shí)比如LVDS,在在V6中我們使用IBUFDS來(lái)處理輸入的差分信號(hào)時(shí),可以指定端接為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,卻把端接這個(gè)選項(xiàng)去掉了

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界面中,手動(dòng)指定,否則可能會(huì)出錯(cuò)。

筆者之前就采過(guò)一個(gè)坑,差分端口輸入,當(dāng)連續(xù)輸入的數(shù)據(jù)為11101111這種時(shí),中間那個(gè)0拉不下來(lái),還是1,同樣也會(huì)發(fā)生在000010000,這樣就導(dǎo)致數(shù)據(jù)傳輸錯(cuò)誤,后來(lái)才發(fā)現(xiàn)是端接忘記加。因?yàn)槎私訒?huì)影響信號(hào)的實(shí)際電平,導(dǎo)致FPGA判斷錯(cuò)誤。

當(dāng)綜合完成后,我們可以點(diǎn)擊DRC,進(jìn)行設(shè)計(jì)規(guī)則檢查,這一步可以報(bào)出一些關(guān)鍵問(wèn)題,比如時(shí)鐘端口未分配在時(shí)鐘引腳上等。

延遲約束

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

set_input_delay

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

從圖中很容易理解,

T_inputdelay = Tco + TD

當(dāng)滿足圖中的時(shí)序時(shí),最大延遲為2ns,最小延遲為1ns。

因此,需要加的時(shí)序約束為:

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的描述中,大家可以看到,這個(gè)約束是告訴vivado我們的輸入信號(hào)和輸入時(shí)鐘之間的延遲關(guān)系,跟下面要講的時(shí)鐘周期約束是一個(gè)原理,讓vivado在這個(gè)前提下去Place and Route。并不是調(diào)節(jié)輸入信號(hào)的延遲,因?yàn)樯磉呌胁簧俚腇PGA工程師在沒(méi)用過(guò)這個(gè)約束指令之前,都以為這是調(diào)節(jié)延遲的約束。

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

編輯:hfy

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

    關(guān)注

    1660

    文章

    22416

    瀏覽量

    636609
  • DRC
    DRC
    +關(guān)注

    關(guān)注

    2

    文章

    156

    瀏覽量

    38194
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    857

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    電壓放大器在主動(dòng)約束層阻尼板研究測(cè)試的應(yīng)用

    主動(dòng)約束層阻尼結(jié)構(gòu)采用壓電或其他智能材料取代經(jīng)典約束層阻尼結(jié)構(gòu)約束層,并通過(guò)引入主動(dòng)控制系統(tǒng),進(jìn)一步增強(qiáng)約束阻尼層對(duì)振動(dòng)能量的耗散能力。
    的頭像 發(fā)表于 03-09 14:33 ?44次閱讀
    電壓放大器在主動(dòng)<b class='flag-5'>約束</b>層阻尼板研究測(cè)試<b class='flag-5'>中</b>的應(yīng)用

    Vivado時(shí)序約束invert參數(shù)的作用和應(yīng)用場(chǎng)景

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

    vivado中常用時(shí)序約束指令介紹

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

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

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

    蜂鳥e203移植要從哪些方面入手,在bsp哪里修改引腳對(duì)應(yīng)關(guān)系,約束文件?

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

    時(shí)序約束問(wèn)題的解決辦法

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

    關(guān)于綜合保持時(shí)間約束不滿足的問(wèn)題

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

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

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

    技術(shù)資訊 I Allegro 設(shè)計(jì)的走線約束設(shè)計(jì)

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

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

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

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

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

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

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

    PanDao:實(shí)際約束條件下成像系統(tǒng)的初始結(jié)構(gòu)的生成

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

    FPGA時(shí)序約束之設(shè)置時(shí)鐘組

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

    一文詳解Vivado時(shí)序約束

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