get_pins -hier -filter {REF_PIN_NAME == led} # 获取时钟引脚 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 == I...
先是通过get_cells wbDataForInput_INUF_inst 找到图中IBUF这个cell,然后获得其pin:get_pins -of[get_cells wbDataForInput_INUF_inst] -filter{DIRECTION == OUT},注意这里有一个过滤条件,是通过cell找到pin,这个pin是输出的pin; 通过pin去找到net:get_nets -of[get_pins -of[get_cells wbDataForInput_IN...
在创建子程序时也常常用到-filter,例如下述get_p的子程序/过程就可以用来返回指定管脚的方向属性,告诉用户这是一个输入管脚还是一个输出管脚。 需要特别指出的是,通常在-filter后会使用 { } ,但此时需要对 $direction做变量替换,必须如下所示改用 " " Tcl在Vivado中的延伸应用 Tcl在Vivado中的应用还远不止上述...
get_pins-hier-filter{REF_PIN_NAME==led}# 获取时钟引脚 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/*/* ...
先是通过get_cells wbDataForInput_INUF_inst 找到图中IBUF这个cell,然后获得其pin:get_pins -of[get_cells wbDataForInput_INUF_inst] -filter{DIRECTION == OUT},注意这里有一个过滤条件,是通过cell找到pin,这个pin是输出的pin; 通过pin去找到net:get_nets -of[get_pins -of[get_cells wbDataForInput_IN...
在创建子程序时也常常用到-filter,例如下述 get_p 的子程序/过程就可以用来返回指定管脚的方向属性,告诉用户这是一个输入管脚还是一个输出管脚。需要特别指出的是,通常在-filter 后会使用{ },但此时需要对 $direction 做变量替换,必须如下所示改用" " 。
get_pins -filter {DIRECTION == OUT} IBUF_rst_i0/O IBUF_rxd_i0/O OBUF_dac_clr_n/O OBUF_dac_cs_n/O OBUF_led_i0/O OBUF_led_i1/O OBUF_led_i2/O 1 2 获取pin的属性 上面我们获得了时钟的pins,我们看看这个时钟PIN的属性:
get_ports -filter {DIRECTION == IN} *clk* 响应如下: clk_pin_n clk_pin_p 同理输出端口: get_ports -filter {DIRECTION == OUT} *clk* 响应如下: spi_clk_pin 结尾 内容很简单,总结起来就是: 1. 获取所有端口:get_ports 2. 所有输入端口:all_inputs ...
需要特别指出的是,通常在-filter 后会使用{ },但此时需要对 $direction 做变量替换,必须如下所示改...
get_ports-filter{DIRECTION==IN}*clk* 1. 响应如下: AI检测代码解析 clk_pin_nclk_pin_p 1. 同理输出端口: AI检测代码解析 get_ports-filter{DIRECTION==OUT}*clk* 1. 响应如下: AI检测代码解析 spi_clk_pin 1. 结尾 内容很简单,总结起来就是: ...