创建Vivado工程
3.1 首先建立按键的测试工程,添加verilog测试代码,完成编译分配管脚等流程。
![](https://img-blog.csdnimg.cn/img_convert/2c30d04ab5ce77883bb455b391aa5d87.png)
`timescale1ns/1ps
modulekey_test
(
inputclk,//systemclock25Mhzonboard
input[3:0]key,//inputfourkeysignal,whenthekeydown,thevalueis0
output[3:0]led//LEDdisplay,whenthesiganllow,LEDlighten
);
reg[3:0]led_r;//definethefirststageregister,generatefourDFlip-flop
reg[3:0]led_r1;//definethesecondstageregister,generatefourDFlip-flop
always@(posedgeclk)
begin
led_r《=key;//firststagelatcheddata
end
always@(posedgeclk)
begin
led_r1《=led_r;//secondstagelatcheddata
end
assignled=led_r1;
endmodule
3.2 我们可以使用RTL ANALYSIS工具查看设计
![](https://img-blog.csdnimg.cn/img_convert/586e53cfbf53adaa0138cbc5d96783fc.png)
3.3 分析RTL图,可以看出两级D触发器,和预期设计一致。
![](https://img-blog.csdnimg.cn/img_convert/aa0e380f4ade5e1b788bfe6ad9bbd3db.png)
创建Vivado工程
3.1 首先建立按键的测试工程,添加verilog测试代码,完成编译分配管脚等流程。
![](https://img-blog.csdnimg.cn/img_convert/2c30d04ab5ce77883bb455b391aa5d87.png)
`timescale1ns/1ps
modulekey_test
(
inputclk,//systemclock25Mhzonboard
input[3:0]key,//inputfourkeysignal,whenthekeydown,thevalueis0
output[3:0]led//LEDdisplay,whenthesiganllow,LEDlighten
);
reg[3:0]led_r;//definethefirststageregister,generatefourDFlip-flop
reg[3:0]led_r1;//definethesecondstageregister,generatefourDFlip-flop
always@(posedgeclk)
begin
led_r《=key;//firststagelatcheddata
end
always@(posedgeclk)
begin
led_r1《=led_r;//secondstagelatcheddata
end
assignled=led_r1;
endmodule
3.2 我们可以使用RTL ANALYSIS工具查看设计
![](https://img-blog.csdnimg.cn/img_convert/586e53cfbf53adaa0138cbc5d96783fc.png)
3.3 分析RTL图,可以看出两级D触发器,和预期设计一致。
![](https://img-blog.csdnimg.cn/img_convert/aa0e380f4ade5e1b788bfe6ad9bbd3db.png)
举报