在 BASYS 3 上使用时钟
Using the clock on BASYS 3
我想在我的项目中使用 BASYS 3 的时钟。当我搜索项目的约束时,我发现了以下代码:
set_property PACKAGE_PIN W5 [get_ports clk]
set_property IOSTANDARD LVCMOS33 [get_ports clk]
create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports clk]
有人能给我解释一下吗?我知道 clk
是时钟的输入,但在最后一行我该怎么办?我应该改变什么吗?还有什么时期 10.00 和 waveform{0 5}
是什么意思?你能帮帮我吗?
这些行是 Xilinx 设计约束 (XDC),是 Synopsys 设计约束 (SDC) 的一种。
首先你要区分物理约束(第 1-2 行)和时序约束(第 3 行)。这些在设计流程的不同步骤中都是必需的。
set_property PACKAGE_PIN W5 [get_ports clk]
此行将您的顶级端口 clk
连接到引脚 W5
。
set_property IOSTANDARD LVCMOS33 [get_ports clk]
此行设置了时序分析所需的 I/O 标准,用于引脚的上升和下降时间,导致 setup/hold 时间 window
create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports clk]
这为导线 clk
定义了一个 100 MHz 的时钟信号,占空比为 50%。如果你需要在另一个语句中引用这个时钟,你可以使用名称 sys_clk_pin
.
我想在我的项目中使用 BASYS 3 的时钟。当我搜索项目的约束时,我发现了以下代码:
set_property PACKAGE_PIN W5 [get_ports clk]
set_property IOSTANDARD LVCMOS33 [get_ports clk]
create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports clk]
有人能给我解释一下吗?我知道 clk
是时钟的输入,但在最后一行我该怎么办?我应该改变什么吗?还有什么时期 10.00 和 waveform{0 5}
是什么意思?你能帮帮我吗?
这些行是 Xilinx 设计约束 (XDC),是 Synopsys 设计约束 (SDC) 的一种。
首先你要区分物理约束(第 1-2 行)和时序约束(第 3 行)。这些在设计流程的不同步骤中都是必需的。
set_property PACKAGE_PIN W5 [get_ports clk]
此行将您的顶级端口 clk
连接到引脚 W5
。
set_property IOSTANDARD LVCMOS33 [get_ports clk]
此行设置了时序分析所需的 I/O 标准,用于引脚的上升和下降时间,导致 setup/hold 时间 window
create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports clk]
这为导线 clk
定义了一个 100 MHz 的时钟信号,占空比为 50%。如果你需要在另一个语句中引用这个时钟,你可以使用名称 sys_clk_pin
.