Vivado中Tri_mode_ethernet_mac的时序约束、分析、调整——(一)时序约束的基本概念

1、基本概念

推荐阅读,Ally Zhou编写的****《Vivado使用误区与进阶》**** 系列文章, 熟悉基本概念、tcl语句的使用。

《Vivado使用误区与进阶》电子书开放下载!!

2、Vivado中的语法例程

1)语法例程

约束的语句可以参考vivado中的,注意其中的rise_data是指由上升沿采样的数据,默认由fall发出。实际使用时也可以由rise发出rise_data,并由rise采样,比如以太网MAC IP中的用法。

2)input约束

input delay:外部时钟发送沿到数据头的最大/最小延时;

中心对齐DDR:

采样时,时钟沿直接采样自己下方的数据即可。由发送方调整好对齐关系。

Edge-Aligned(clock directly to FF)DDR

边沿对齐,时钟边沿和数据边沿同时变化(数据不是该时钟沿发出的,而是上一个沿发出的),采样时可对clk延时1/4周期时间完成中心对齐采样。

Edge-Aligned(clock with MMCM)DDR

++注意此处的MMCM是指phase shift mode 采用waveform ,而不是latency 模式。采用latency模式的时的约束同clock directly to FF。++

3)output约束

output delay:数据头到达采样沿的最大最小时间(这是下游器件对FPGA管脚处的时序要求)。不论是skew based还是setup/hold based,都是告知FPGA数据头/尾到采样沿需要的时间max/min。

3、时序分析

input,output中的-max用于分析setup,-min用于分析hold。vivado中对output做时序分析的点在FPGA的输出管脚端,即在此处比大小slack。

4、forwarded clock

源同步输出时的clock处理方式用ODDR转发,相位不翻转180°时用如下源语及约束,反相180时.D1(1'b0),.D2(1'b1),时钟约束中增加-invert。

ODDRE1 #(

.IS_C_INVERTED(1'b0), // Optional inversion for C

.IS_D1_INVERTED(1'b0), // Unsupported, do not use

.IS_D2_INVERTED(1'b0), // Unsupported, do not use

.SIM_DEVICE("ULTRASCALE_PLUS"), // Set the device version for simulation functionality (ULTRASCALE,

// ULTRASCALE_PLUS, ULTRASCALE_PLUS_ES1, ULTRASCALE_PLUS_ES2)

.SRVAL(1'b0) // Initializes the ODDRE1 Flip-Flops to the specified value (1'b0, 1'b1)

)

ODDRE1_clk (

.Q(O_src_clk), // 1-bit output: Data output to IOB

.C(W_rsc_clk), // 1-bit input: High-speed clock input

.D1(1'b1), // 1'b1 -same with clk,1'b0 -invert to clk

.D2(1'b0), // 1'b0 -same with clk,1'b1 -invert to clk

.SR(!I_rst_n) // 1-bit input: Active-High Async Reset

);
create_generated_clock -name O_src_clk -source [get_pins clk_wiz_0_inst/clk_out1] -multiply_by 1 [get_ports O_src_clk]

相关推荐
Terasic友晶科技5 小时前
第21篇 基于ARM A9处理器用汇编语言实现中断<三>
fpga开发·汇编语言·中断·de1-soc开发板
fei_sun5 小时前
【FPGA】时序约束与分析
fpga开发
贝塔实验室1 天前
宇航用VIRTEX5系列FPGA的动态刷新方法及实现
考研·fpga开发·硬件架构·硬件工程·学习方法·业界资讯·fpga
贝塔实验室1 天前
FPGA的 基本结构(Xilinx 公司Virtex-II 系列FPGA )
fpga开发·重构·硬件架构·硬件工程·创业创新·fpga·程序员创富
爱思考的发菜_汽车网络信息安全1 天前
芯片详细讲解,从而区分CPU、MPU、DSP、GPU、FPGA、MCU、SOC、ECU
fpga开发·芯片
起床学FPGA1 天前
vivado时序约束和优化
fpga开发
博览鸿蒙2 天前
FPGA设计:入行芯片领域的理想起点
fpga开发
ThreeYear_s2 天前
基于FPGA的出租车里程时间计费器
fpga开发
ThreeYear_s2 天前
基于FPGA的洗衣机控制器电子定时器
fpga开发