亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

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

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

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

FPGA約束中的Tcl指令技術(shù)探討

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

掃碼添加小助手

加入工程師交流群

作者:貓叔 科學(xué)計(jì)算Tech微信公眾號(hào)

?在前面的章節(jié)中,我們用了很多Tcl的指令,但有些指令并沒(méi)有把所有的參數(shù)多列出來(lái)解釋?zhuān)@一節(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 *

# 獲取名稱(chēng)中包含data的端口
get_ports *data*

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

# 獲取所有輸入端口
all_inputs

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

# 獲取總線(xiàn)端口
get_ports -filter {BUS_NAME != ""}

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

get_cells的使用方法如下:

# 獲取頂層模塊
get_cells *

# 獲取名稱(chēng)中包含字符gen的模塊
get_cells *gen*

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

# 獲取觸發(fā)器為FDRE類(lèi)型且名稱(chēng)中包含字符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 *

# 獲取名稱(chēng)中包含字符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}

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

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

4. net
獲取pin的property,如下:

get_nets的使用方法如下:

# 獲取所有nets
get_nets *

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

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

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

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

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

?這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)線(xiàn)
get_nets -of [get_cells {clk_gen_i0/clk_core_i0}]

# 已知引腳名獲取與該引腳相連的網(wǎng)線(xiàn)
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]

需要注意的是:

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

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

3. -filter中的屬性為:“==”(相等)、“!=”(不相等)、"=~"(匹配)、"!~"(不匹配),若有多個(gè)表達(dá)式,其返回值為bool類(lèi)型時(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)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1652

    文章

    22238

    瀏覽量

    628708
  • TCL
    TCL
    +關(guān)注

    關(guān)注

    11

    文章

    1794

    瀏覽量

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

    關(guān)注

    1

    文章

    118

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    開(kāi)源RISC-V處理器(蜂鳥(niǎo)E203)學(xué)習(xí)(二)修改FPGA綜合環(huán)境(移植到自己的Xilinx FPGA板卡)

    文件的外設(shè),可以將其注釋掉,比如我將RGB LED和GPIO注釋掉。當(dāng)然后面就需要修改FPGA頂層文件,這個(gè)后面會(huì)說(shuō)。但是板卡有相應(yīng)外設(shè),自己修改管腳號(hào)就可以了 4)修改時(shí)鐘 其次就是時(shí)鐘,我
    發(fā)表于 10-31 08:46

    在Windows10上運(yùn)行vivado使用tcl文件創(chuàng)建E203項(xiàng)目路徑錯(cuò)誤的問(wèn)題

    先按照官方給的開(kāi)源項(xiàng)目,e203_hbirdv2-masterfpgamcu200t目錄下的Makefile內(nèi)容手動(dòng)創(chuàng)建vivado工程。 在調(diào)用.tcl文件的過(guò)程,每次進(jìn)行到
    發(fā)表于 10-28 07:19

    win10環(huán)境下使用vivado生成.bit與.mcs文件

    到工程。 5.添加約束文件。將fpga目錄下的constrs文件夾復(fù)制到工程,然后添加約束文件。 6.將
    發(fā)表于 10-27 08:25

    蜂鳥(niǎo)e203移植fpga上如何修改約束文件

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

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

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

    云知聲攜手TCL空調(diào)煥新智能家電體驗(yàn)

    “空調(diào)開(kāi)24度,新風(fēng)打開(kāi)”——?jiǎng)偞蛲昊@球的小濤對(duì)著客廳遠(yuǎn)處的TCL空調(diào)發(fā)出指令,而空調(diào)無(wú)需聯(lián)網(wǎng)仍精準(zhǔn)執(zhí)行操作。這一離線(xiàn)狀態(tài)下的智能響應(yīng)場(chǎng)景,正是TCL空調(diào)與云知聲聯(lián)手研發(fā)的“基于端云協(xié)同的空調(diào)器語(yǔ)音自由交互關(guān)鍵
    的頭像 發(fā)表于 08-25 13:53 ?782次閱讀

    圖解環(huán)路設(shè)計(jì)及控制技術(shù)探討

    由于之前缺乏控制理論方面的知識(shí)在剛接觸反饋環(huán)路的時(shí)候?qū)ζ渲械暮芏嗝~不是很明白,這次準(zhǔn)備采用圖解的方法逐一的搞清楚這些名詞并且試圖找出一種便捷的設(shè)置零、極點(diǎn)的方法。最后準(zhǔn)備再探討一下關(guān)于控制技術(shù)
    發(fā)表于 08-22 17:39

    技術(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 ?787次閱讀
    <b class='flag-5'>技術(shù)</b>資訊 I 圖文詳解<b class='flag-5'>約束</b>管理器-差分對(duì)規(guī)則<b class='flag-5'>約束</b>

    PLL技術(shù)FPGA的動(dòng)態(tài)調(diào)頻與展頻功能應(yīng)用

    隨著現(xiàn)代電子系統(tǒng)的不斷發(fā)展,時(shí)鐘管理成為影響系統(tǒng)性能、穩(wěn)定性和電磁兼容性(EMI)的關(guān)鍵因素之一。在FPGA設(shè)計(jì),PLL因其高精度、靈活性和可編程性而得到廣泛應(yīng)用,本文將深入探討PLL技術(shù)
    的頭像 發(fā)表于 06-20 11:51 ?2067次閱讀
    PLL<b class='flag-5'>技術(shù)</b>在<b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的動(dòng)態(tài)調(diào)頻與展頻功能應(yīng)用

    電機(jī)繞組滾動(dòng)烘干爐防爆安全技術(shù)探討

    電機(jī)繞組滾動(dòng)烘干工藝在電機(jī)行業(yè)逐步推廣應(yīng)用,但該防爆滾動(dòng)烘干設(shè)備的制造卻仍沒(méi)有統(tǒng)一的標(biāo)準(zhǔn),這就為設(shè)備的制造、使用、維修、保養(yǎng)埋下了隱患。文章主要探討了防爆滾動(dòng)烘干爐的防爆技術(shù),以期引起同行對(duì)防爆
    發(fā)表于 04-27 19:28

    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 ?870次閱讀
    <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 ?4248次閱讀
    一文詳解Vivado時(shí)序<b class='flag-5'>約束</b>

    xilinx FPGA IOB約束使用以及注意事項(xiàng)

    xilinx FPGA IOB約束使用以及注意事項(xiàng) 一、什么是IOB約束 在xilinx FPGA,IOB是位于IO附近的寄存器,是
    的頭像 發(fā)表于 01-16 11:02 ?1407次閱讀
    xilinx <b class='flag-5'>FPGA</b> IOB<b class='flag-5'>約束</b>使用以及注意事項(xiàng)

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

    一、主時(shí)鐘create_clock 1.1 定義 主時(shí)鐘是來(lái)自FPGA芯片外部的時(shí)鐘,通過(guò)時(shí)鐘輸入端口或高速收發(fā)器GT的輸出引腳進(jìn)入FPGA內(nèi)部。對(duì)于賽靈思7系列的器件,主時(shí)鐘必須手動(dòng)定義到GT
    的頭像 發(fā)表于 11-29 11:03 ?2070次閱讀
    時(shí)序<b class='flag-5'>約束</b>一主時(shí)鐘與生成時(shí)鐘

    TCL華星發(fā)布新技術(shù)品牌APEX

    TCL華星近日宣布了一項(xiàng)重大突破,其印刷OLED技術(shù)已實(shí)現(xiàn)量產(chǎn),并同步發(fā)布了全新的技術(shù)品牌——APEX。APEX品牌的推出,標(biāo)志著TCL華星在顯示
    的頭像 發(fā)表于 11-19 17:32 ?1228次閱讀