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

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

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

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

Vivado時(shí)序約束中詳細(xì)的Tcl命令

454398 ? 來(lái)源:科學(xué)計(jì)算technomania ? 作者:貓叔 ? 2020-11-16 15:07 ? 次閱讀

Vivado時(shí)序約束中Tcl命令的對(duì)象及屬性

在前面的章節(jié)中,我們用了很多Tcl的指令,但有些指令并沒(méi)有把所有的參數(shù)多列出來(lái)解釋,這一節(jié),我們就把約束中的Tcl指令詳細(xì)講一下。

我們前面講到過(guò)get_pins和get_ports的區(qū)別,而且我們也用過(guò)get_cells、get_clocks和get_nets這幾個(gè)指令,下面就通過(guò)一張圖直觀展現(xiàn)它們的區(qū)別。


get_clocks后面的對(duì)象是我們之前通過(guò)create_clocks或者create_generated_clocks創(chuàng)建的時(shí)鐘,不在硬件上直接映射。

我們?cè)賮?lái)看下各個(gè)命令的屬性。

1. port

我們可以通過(guò)Tcl腳本查看port的所有屬性,比如上面的wave_gen工程中,有一個(gè)port是clk_pin_p,采用如下腳本:

set inst [get_ports clk_pin_p]
report_property $inst

顯示如下:

get_ports的使用方法如下:

# 獲取所有端口
get_ports *

# 獲取名稱中包含data的端口
get_ports *data*

# 獲取所有輸出端口
get_ports -filter {DIRECTION == OUT}

# 獲取所有輸入端口
all_inputs

# 獲取輸入端口中名字包含data的端口
get_ports -filter {DIRECTION == IN} *data*

# 獲取總線端口
get_ports -filter {BUS_NAME != ""}

2. cell

按照上面的同樣的方式,獲取cell的property,如下:

get_cells的使用方法如下:

# 獲取頂層模塊
get_cells *

# 獲取名稱中包含字符gen的模塊
get_cells *gen*

# 獲取clk_gen_i0下的所有模塊
get_cells clk_gen_i0/*

# 獲取觸發(fā)器為FDRE類型且名稱中包含字符samp
get_cells -hier filter {REF_NAME == FDRE} *samp*

# 獲取所有的時(shí)序單元邏輯
get_cells -hier -filter {IS_SEQUENTIAL == 1}

# 獲取模塊uart_rx_i0下兩層的LUT3
get_cells -filter {REF_NAME == LUT3} *uart_tx_i0/*/*

3. pin

獲取pin的property,如下:

get_pins的使用方法如下:

# 獲取所有pins
get_pins *

# 獲取名稱中包含字符led的引腳
get_pins -hier -filter {NAME =~ *led*}

# 獲取REF_PIN_NAME為led的引腳
get_pins -hier -filter {REF_PIN_NAME == led}

# 獲取時(shí)鐘引腳
get_pins -hier -filter {IS_CLOCK == 1}

# 獲取名稱中包含cmd_parse_i0的使能引腳
get_pins -filter {IS_ENABLE == 1} cmd_parse_i0/*/*

# 獲取名稱中包含字符cmd_parse_i0且為輸入的引腳
get_pins -filter {DIRECTION == IN} cmd_parse_i0/*/*

4. net

獲取pin的property,如下:

get_nets的使用方法如下:

# 獲取所有nets
get_nets *

# 獲取名稱中包含字符send_resp_val的網(wǎng)線
get_nets -hier *send_resp_val*
get_nets -filter {NAME =~ *send_resp_val*} -hier

# 獲取穿過(guò)邊界的同一網(wǎng)線的所有部分
get_nets {resp_gen_i0/data4[0]} -segments

# 獲取模塊cmd_parse_i0下的所有網(wǎng)線
get_nets -filter {PARENT_CELL == cmd_parse_i0} -hier

# 獲取模塊cmd_parse_i0下的名稱中包含字符arg_cnt[]的網(wǎng)線
get_nets -filter {PARENT_CELL == cmd_parse_i0} -hier *arg_cnt[*]

這5個(gè)tcl指令的常用選項(xiàng)如下表:

命令 -hierarchy -filter -of_objects -regexp -nocase
get_cells
get_nets
get_pins
get_ports
get_clocks

這5個(gè)Tcl命令對(duì)應(yīng)的5個(gè)對(duì)象之間也有著密切的關(guān)系,下圖所示的箭頭的方向表示已知箭頭末端對(duì)象可獲取箭頭指向的對(duì)象。


以wave_gen中的clk_gen_i0模塊為例來(lái)說(shuō)明上面的操作:

# 獲取模塊的輸入引腳
get_pins -of [get_cells {clk_gen_i0/clk_core_i0}] -filter {DIRECTION == IN}

# 已知引腳名獲取所在模塊
get_cells -of [get_pins clk_gen_i0/clk_core_i0/clk_in1_n]

# 已知模塊名獲取與該模塊相連的網(wǎng)線
get_nets -of [get_cells {clk_gen_i0/clk_core_i0}]

# 已知引腳名獲取與該引腳相連的網(wǎng)線
get_nets -of [get_pins clk_gen_i0/clk_core_i0/clk_rx]

# 已知時(shí)鐘引腳獲取時(shí)鐘引腳對(duì)應(yīng)的時(shí)鐘
get_clocks -of [get_pins clk_gen_i0/clk_core_i0/clk_rx]

需要注意的是:

① -hier不能和層次分隔符“/”同時(shí)使用,但“/”可出現(xiàn)在-filter中

② 可根據(jù)屬性過(guò)濾查找目標(biāo)對(duì)象

③ -filter中的屬性為:“==”(相等)、“!=”(不相等)、"=~"(匹配)、"!~"(不匹配),若有多個(gè)表達(dá)式,其返回值為bool類型時(shí),支持邏輯操作(&& ||)

編輯:hfy


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • TCL
    TCL
    +關(guān)注

    關(guān)注

    10

    文章

    1743

    瀏覽量

    88919
  • 時(shí)序約束
    +關(guān)注

    關(guān)注

    1

    文章

    115

    瀏覽量

    13462
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    815

    瀏覽量

    66935
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Vivado Tcl零基礎(chǔ)入門與案例實(shí)戰(zhàn)【高亞軍編著】

    Vivado Tcl零基礎(chǔ)入門與案例實(shí)戰(zhàn)-高亞軍編寫(xiě)
    發(fā)表于 01-14 11:13

    時(shí)序約束一主時(shí)鐘與生成時(shí)鐘

    的輸出,對(duì)于Ultrascale和Ultrascale+系列的器件,定時(shí)器會(huì)自動(dòng)地接入到GT的輸出。 1.2 約束設(shè)置格式 主時(shí)鐘約束使用命令create_clock進(jìn)行創(chuàng)建,進(jìn)入Timing
    的頭像 發(fā)表于 11-29 11:03 ?642次閱讀
    <b class='flag-5'>時(shí)序</b><b class='flag-5'>約束</b>一主時(shí)鐘與生成時(shí)鐘

    VivadoDDRX控制器(mig)ip核配置關(guān)于命令序號(hào)選擇和地址映射說(shuō)明

    本篇主要討論VivadoDDRX控制器(mig)ip核配置關(guān)于命令序號(hào)選擇和地址映射說(shuō)明(一) 利用Xilinx 7系列FPGA開(kāi)發(fā)時(shí),經(jīng)常需要驅(qū)動(dòng)外部存儲(chǔ)器--DDRX。Xili
    的頭像 發(fā)表于 11-27 09:30 ?1254次閱讀
    <b class='flag-5'>Vivado</b><b class='flag-5'>中</b>DDRX控制器(mig)ip核配置<b class='flag-5'>中</b>關(guān)于<b class='flag-5'>命令</b>序號(hào)選擇和地址映射說(shuō)明

    每次Vivado編譯的結(jié)果都一樣嗎

    tool inputs? 對(duì)大多數(shù)情況來(lái)說(shuō),Vivado編譯的結(jié)果是一樣的,但要保證下面的輸入是一樣的: Design sources Constraints Tcl scripts and command
    的頭像 發(fā)表于 11-11 11:23 ?607次閱讀
    每次<b class='flag-5'>Vivado</b>編譯的結(jié)果都一樣嗎

    常用時(shí)序約束使用說(shuō)明-v1

    為了防止約束失敗,我們?cè)?b class='flag-5'>Tcl輸入框驗(yàn)證,沒(méi)有告警或者錯(cuò)誤說(shuō)明約束的寫(xiě)法是正確的set_max_delay 5.00 -from [get_cells key2_detect_ins
    的頭像 發(fā)表于 11-01 11:06 ?256次閱讀

    Vivado使用小技巧

    有時(shí)我們對(duì)時(shí)序約束進(jìn)行了一些調(diào)整,希望能夠快速看到對(duì)應(yīng)的時(shí)序報(bào)告,而又不希望重新布局布線。這時(shí),我們可以打開(kāi)布線后的dcp,直接在Vivado Tc
    的頭像 發(fā)表于 10-24 15:08 ?449次閱讀
    <b class='flag-5'>Vivado</b>使用小技巧

    華為設(shè)備的OSPF命令詳解

    OSPF網(wǎng)絡(luò)。這篇文章將詳細(xì)介紹華為設(shè)備的OSPF命令,包括基本配置、路由策略、鄰居關(guān)系和故障排除等方面,幫助讀者全面了解和掌握這些命令
    的頭像 發(fā)表于 08-12 18:13 ?2093次閱讀

    Windows操作系統(tǒng)的常用命令

    這些命令不僅能提高工作效率,還能幫助用戶解決許多復(fù)雜的問(wèn)題。本系列文章將詳細(xì)介紹Windows操作系統(tǒng)的常用命令,幫助你成為Windows極客!
    的頭像 發(fā)表于 08-07 15:40 ?763次閱讀
    Windows操作系統(tǒng)<b class='flag-5'>中</b>的常用<b class='flag-5'>命令</b>

    深度解析FPGA時(shí)序約束

    建立時(shí)間和保持時(shí)間是FPGA時(shí)序約束兩個(gè)最基本的概念,同樣在芯片電路時(shí)序分析也存在。
    的頭像 發(fā)表于 08-06 11:40 ?835次閱讀
    深度解析FPGA<b class='flag-5'>中</b>的<b class='flag-5'>時(shí)序</b><b class='flag-5'>約束</b>

    SDRAM的active命令介紹

    在向SDRAM 的任何行發(fā)出 READ或 WRITE 命令之前,必須先打開(kāi)該行。這是通過(guò) ACTIVE 命令完成的。ACTIVE 命令的目的是打開(kāi)或者說(shuō)激活(active)bank
    的頭像 發(fā)表于 07-29 09:53 ?549次閱讀
    SDRAM<b class='flag-5'>中</b>的active<b class='flag-5'>命令</b>介紹

    FPGA 高級(jí)設(shè)計(jì):時(shí)序分析和收斂

    Static Timing Analysis,簡(jiǎn)稱 STA。它可以簡(jiǎn)單的定義為:設(shè)計(jì)者提出一些特定的時(shí)序要求(或者說(shuō)是添加特定的時(shí)序約束),套用特定的時(shí)序模型,針對(duì)特定的電路進(jìn)行分析。
    發(fā)表于 06-17 17:07

    Xilinx FPGA編程技巧之常用時(shí)序約束詳解

    今天給大俠帶來(lái)Xilinx FPGA編程技巧之常用時(shí)序約束詳解,話不多說(shuō),上貨。 基本的約束方法 為了保證成功的設(shè)計(jì),所有路徑的時(shí)序要求必須能夠讓執(zhí)行工具獲取。最普遍的三種路徑以及
    發(fā)表于 05-06 15:51

    FPGA工程的時(shí)序約束實(shí)踐案例

    詳細(xì)的原時(shí)鐘時(shí)序、數(shù)據(jù)路徑時(shí)序、目標(biāo)時(shí)鐘時(shí)序的各延遲數(shù)據(jù)如下圖所示。值得注意的是數(shù)據(jù)路徑信息,其中包括Tco延遲和布線延遲,各級(jí)累加之后得到總的延遲時(shí)間。
    發(fā)表于 04-29 10:39 ?950次閱讀
    FPGA工程的<b class='flag-5'>時(shí)序</b><b class='flag-5'>約束</b>實(shí)踐案例

    時(shí)序約束實(shí)操

    添加約束的目的是為了告訴FPGA你的設(shè)計(jì)指標(biāo)及運(yùn)行情況。在上面的生成約束之后,在Result àxx.sdc中提供約束參考(請(qǐng)注意該文件不能直接添加到工程,需要熱復(fù)制到別的指定目錄或
    的頭像 發(fā)表于 04-28 18:36 ?2440次閱讀
    <b class='flag-5'>時(shí)序</b><b class='flag-5'>約束</b>實(shí)操

    Xilinx FPGA編程技巧之常用時(shí)序約束詳解

    ,這一約束降低工具的布線難度而又不會(huì)影響時(shí)序性能。這種約束通常用在有時(shí)鐘使能控制的同步元件路徑。 必須說(shuō)明的是上圖Enable信號(hào)的產(chǎn)生周期必須大于等于n*PERIOD,且每
    發(fā)表于 04-12 17:39
    主站蜘蛛池模板: 69女porenhd | 99久久免费精品高清特色大片 | 久久国产香蕉一区精品 | 五月天婷婷在线观看视频 | 赛罗奥特曼银河帝国普通话免费版 | 亚洲黄色激情网 | 海棠高h粗暴调教双性男男 韩国韩宝贝2020vip福利视频 | 国产20岁美女一级毛片 | 男男浪荡双性受hplay | 久久精品女人天堂 | a欧美视频 | yy6080理aa级伦大片一级 | 中文永久免费看电视网站入口 | 一区二区三区免费精品视频 | 性夜黄a爽影免费看 | 亚洲人免费视频 | 亚洲伊人色一综合网 | 欧美三级在线免费观看 | 亚洲国产成人久久笫一页 | 日本69式xxx视频 | 黄色伊人| 99精品视频在线播放2 | 亚洲骚片 | 久久精品re| 国产一区二区三区在线观看影院 | 亚洲aaaa级特黄毛片 | 色欲情狂 | 手机看片www xiao2b cm | 最近国语剧情视频在线观看 | 国产精品国产三级国产在线观看 | 高清一区高清二区视频 | 黄色免费网站在线观看 | 丁香色婷婷 | 日韩免费一区 | 免费中国jlzzjlzz在线播放 | 黄网站色成年片大免费软件 | 五月激情综合丁香色婷婷 | 欧美天天射 | 一本到卡二卡三卡视频 | 在线精品91青草国产在线观看 | bl 高h文|