Verilog@(posedge clk)的VHDL等效语言
我不熟悉verilog。我尽了最大的努力去改变它 当模拟时钟从“0”到“x”时,这很奇怪。 我怀疑这部分是问题所在Verilog@(posedge clk)的VHDL等效语言,vhdl,verilog,fpga,Vhdl,Verilog,Fpga,我不熟悉verilog。我尽了最大的努力去改变它 当模拟时钟从“0”到“x”时,这很奇怪。 我怀疑这部分是问题所在 repeat(9) @(posedge clk); DataIn_i <= 1'b1; DataIn_q <= 1'b1; @(posedge clk); FillSel <= 1'b0; DataIn_i <= 1'b0; DataIn_q <= 1'b0; 重复(9)@(posedge clk); 将Verilog的@po
repeat(9) @(posedge clk);
DataIn_i <= 1'b1;
DataIn_q <= 1'b1;
@(posedge clk);
FillSel <= 1'b0;
DataIn_i <= 1'b0;
DataIn_q <= 1'b0;
重复(9)@(posedge clk);
将Verilog的@posedge clk)
转换为VHDL的数据取决于它在always或初始块中的位置。如果它是块的第一个构造,您可以
Verilog:
always @(posedge signal)
begin
...
end
VHDL:
嵌入到块中时,使用等待
语句:
Verilog: @(posedge clk);
VHDL: wait until rising_edge(signal);
Verilog: forever ...
VHDL: loop ... end loop
Verilog: repeat(n) ...
VHDL: for i in 1 to n loop ... end loop;
请注意,当我写。。。对于Verilog,这是针对后面的单个语句,或后面的单个开始/结束块。删除在@(posedge-clk)
之后编码>这很有帮助。关于时钟问题有什么见解吗?假设你知道VHDL,你的clk_进程应该以你编写它的方式做什么?
Verilog: @(posedge clk);
VHDL: wait until rising_edge(signal);
Verilog: forever ...
VHDL: loop ... end loop
Verilog: repeat(n) ...
VHDL: for i in 1 to n loop ... end loop;