create_generated_clock使用-invert/-preinvert选项都表明generated clock与master clock相位相反,但这两个选项的区别是: preinvert : Creates a generated clock based on the inverted sense of the master clock. invert : Creates an inverted generated clock based on the non-inverted sense of the master cloc...
create_generated_clock命令格式如下,主要是定义generated clock和master clock的关系: 登录后复制create_generated_clock[-name clock_name]\\-sourcemaster_pin\\[-master_clock clock]\\[-edge edge_list]\\[-edge_shift shift_list]\\[-divide_by factor]\\[-multiply_by factor]\\[-duty_cycle percent]...
create_generated_clock –divide_by 2 –source [get_ports {CLK}] U1/reg1:QThe following example creates a generated clock at the primary output of myPLL with a period ¾ of the period at the reference pin clkcreate_generated_clock –divide_by 3 –multiply_by 4 -source clk [get_pins...
create_generated_clock [-name clock_name] : 当不起名时,默认使用source第一port或pin做名字 [-add]:当同一个Port或pin需要增加两个时钟源时 port_pin_list: 此clock扇出的port pin -source master_pin : 相当于generated clock的input clock [-master_clock clock]: 当这个generated clock有多个时钟扇入时,...
一般我们把时钟的源头会定义成create_clock,而分频时钟则会定义为create_generated_clock. 两者的主要区别在于CTS步骤,generated clock并不会产生新的clock domain, 而且定义generated clock后,clock path的起点始终位于master clock, 这样source latency并不会重新的计算。这是定义generated clock的优点所在。
通过SDC命令 create_generated_clock 来定义生成时钟: 代码语言:javascript 代码运行次数:0 运行 AI代码解释 create_generated_clock-name clk_gen-source[get_portsCLK][get_pins{DFF/Q}]-divide_by3 -source 设定生成时钟的源引脚 divide_by 3 :3分频 ...
create_generated_clock 需要指定源时钟(master clock)的master_pin,在CTS时,默认会去balance这两个时钟(即generated clock 和 master clock),让skew尽可能小。而且在计算generated clock的clock latency时,会把从master clock pin 到generated clock pin之间的delay也考虑在内。在工具中report_timing的时候,通过选项-...
derive_pll_clocks: 因为所有的时钟节点都需要创建一个时钟,故PLL的输出也需要一个时钟。可以通过create_generated_clock命令手动为每个PLL输出创建一个时钟,也可以使用derive_pll_clocks命令自动地搜索timing netlist,为每个PLL的输出创建时钟约束。 命令格式: ...
通过SDC命令 create_generated_clock 来定义生成时钟: create_generated_clock-nameclk_gen-source[get_portsCLK][get_pins{DFF/Q}]-divide_by3 -source 设定生成时钟的源引脚 divide_by 3 :3分频 divide_by:表示生成时钟通过分频生成; multiply_by :表示生成时钟通过倍频生成; ...
先解决第一个问题,都知道派生时钟用create_generated_clock命令去做,但这里的问题就是怎么和RTL代码结合起来,将时钟约束到哪个pin上。一个新手的常见误区是会去写一个计数器分频的模块,产生好分频后的时钟后,直接将时钟约束到模块的port上。我最早也是这么做的,然后就被后端怼了,这里的问题就是往往工具会在模块内部...