系统芯片ZSU32在SoC芯片设计中的应用
#设置一个2倍频时钟clk_main,
#其源时钟是pll_clk_i
create_generated_clock -name clk_main
-multiply_by 2 -sour绕行电感器ce pll_clk_i;
3.3.2 多时钟域约束
时序检查默认以一个时钟周期为界,但对于ZSU32系统芯片,存在着一些多周期路径,在这些路径上,数据不需要在单时钟周期内到达终点。差模电感器例如,clk30mhz和clk10mhz是同源的同步时钟,前者频率是后者的3倍,对从clk10mhz时钟域向clk30mhz时钟域传输数据的路径,采用如下命令:
#按照3个周期(clk30mhz)进行
#建立时间约束
set_multicycle_path 3振荡电感器 -setup -start
-from clk10mhz -to clk30mhz;
对于异步时钟域之间的路径,不用进行同步的时序检验,应该将其定义为伪路径(false path),这样在逻辑综合时就不必浪费资源去优化。
#将异步时钟e_clk和p_clk 之间的路径设置为伪路径
set_false_path -from e_clk –to p_clk;
set_false_path -from p_clk -to e_clk;
3.3.3 时钟偏移
芯片中时钟经过不同的传输路径,由于每条路经延时不一,导致从时钟源到达各个寄存器的始终输入端的相位差。这种由于空间分布而产生的偏差叫做时钟倾斜(clock skew)。此外,由于温漂、电子漂移的随机性,使时钟信号的边沿可能超前也可能滞后。这种具有时间不确定性的偏移称为时钟抖动(clock jitter)。偏移导致时钟信号到达各个触发器的时钟引脚的时间不一致,需要给予约束。
#设置时钟偏移为0.4 ns
set_clock_uncertainty 0.4 [all_clocks];
3.4 端口约束
SoC芯片通过大量输入和输出端口与外界进行信息的传输,端口约束主要用于约束顶层端口相连的片内组合逻辑,包括确定输入延时、输出延时、输出负载、输出扇出负载、输入信号跃迁时间等。
3.4.1 端口延时
输入延时是指外部逻辑到电路输入端口的路径延时。输出延时是指输出端口到外部寄存器的路径延时。
设置范例如下:
#设置端口pci_ad13的输入延时为4.8 ns
set_input_delay 4.8塑封电感 -clock clk_main
[get_ports {pci_ad13}];
#设置端口pci_ad16的输出延时为3.6 ns
set_output_delay 3.6 -clock clk_ma电感器生产厂家in
[get_ports{pci_ad16};
3.4.2 端口的驱动与负载
端口的驱动和负载特性通过设置输入驱动单元、输入输出负载值以及信号跃迁时间等来描述。范例如下:
#设置端口a7的驱动单元是BUFX2
set_drive_cell -lib_cell BUFX2 -pin
[get_ports {a7}];
#设置端口d17的负载值为20 pf
set_load -pin_load 20 [get_ports {d17}];
#设置端口d0的输入信号上升时间是0.5 ns
set_input_transition -rise -min 0.5
[get_ports {d0}];
3.5 面积和功耗约束
Design Compiler的综合以时序优先,即优化完约束后才根据约束优化面积和功耗。初次综合时很难对面积进行评估,所以在第一次综合时设置优化目标为0,表示在满足时序约束的情况下最大努力地减小面积。待综合报告出来之后,根据初步的面积和功耗报告,修改数值,从而进一步优化。
#面积设置
set_max_area 0;
#功耗的约束做类似的处理:
set_max_total_power 0;
平面变压器厂家 | 平面电感厂家[稳压电源]全面自动化(本文转载于欧时电子)自动化在生活中所占的比重比您想象的要大得多。
您每天使用的许多产品都是通过自动化流程生产的,自动化流程使您可以连接到因特网、查看电子邮件并且可以
智能防盗防火及照明控制系统的实现随着经济的快速发展及社会的进步, 人们出差及在外工作的时间逐渐增长,当家里、商场、机房或实验室等公共场所空无一人时,最令人担心的可能是安全问题,比如是否会有小偷破门而入, 是否因为各种电源线路由于长时
极低超低纹波噪声电源模块寻找一款极低超低纹波噪声DC-DC电源模块,输入5V输出正负5V,2~5W,要求极低的纹波噪声,是否有人可以推荐一下,另外,当然也可以是有输入5V,输出5V和输入5V,输出-5V的两片DC-DC模块来实