电子信息学院
实验报告书
课程名:《电子综合设计EDA》
题 目: 实验3 简单组合时序电路设计2
实验类别 【设计】
班 级:
学 号:
姓 名:
1、 实验目的
(1) 通过实验掌握信号赋值和变量赋值、顺序和并行语句、不完整条件语句的要点和特点
(2) 掌握串并转换电路的设计方法
2、 实验内容、要求
要求: 完成5位并进串出型转换电路的Verilog设计,并且设计一个仿真测试用的Verilog程序,从时序上验证并串转换电路模块的正确性。
3、 实验步骤和程序
4、 `timescale 1ns / 1ps
5、 module sy03(CLK,LOAD,DIN,QB);
6、 input CLK,LOAD;
7、 input [4:0] DIN;
8、 output QB;
9、 reg [4:0] REG5;
10、 always @ (posedge CLK) begin
11、 if(LOAD) REG5<=DIN;
12、 else REG5[3:0]<=REG5[4:1]; end
13、 assign QB = REG5[0];
14、 endmodule
15、
16、
17、
18、
19、 test file:
20、 `timescale 1ns / 1ps
21、 module test02; // 这是sy03的测试文件,test02只是个名称
22、
23、 // Inputs
24、 reg CLK;
25、 reg LOAD;
26、 reg [4:0] DIN;
27、
28、 // Outputs
29、 wire QB;
30、
31、 // Instantiate the Unit Under Test (UUT)
32、 sy03 uut (
33、 .CLK(CLK),
34、 .LOAD(LOAD),
35、 .DIN(DIN),
36、 .QB(QB)
37、 );
38、 always #10 CLK=~CLK;
39、 initial begin
40、 // Initialize Inputs
41、 CLK = 0;
42、 LOAD = 0;
43、 #25 LOAD=1;
44、 #4 DIN=5'b10110;
45、 #6 LOAD=0;
46、 // Wait 100 ns for global reset to finish
47、 #210 LOAD=1;
48、 #4 DIN=5'b10010;
49、 #6 LOAD=0;
50、 // Add stimulus here
51、 #230 LOAD=1;
52、 #4 DIN=5'b10011;
53、 #6 LOAD=0;
54、 end
55、
56、 endmodule
57、
58、
59、 测试数据记录和结果分析
60、 实验结论和体会
注意事项:
1.请独立完成实验和报告,纸质报告每周交一次。
2.每次实验时请在C盘根目录中创建一个以本人班级学号如BX10040322命名的文件夹,在这文件夹下创建工程,最后压缩这个文件夹并上传后删除。
3.实验成绩分为两部分:一为实验现场操作分(包括程序编写、得出结论等),二为报告分。
4.实验步骤和程序分为三部分:一为基本步骤,二为程序流程图(也可以为算法的文字或公式说明)或状态图,三为程序源代码(可以不用全写,只写出关键部分的程序)及其说明。
5.实验结论和体会:一为实验结论,二为讨论当前设计的不足及其改进设想。
6.测试数据记录和结果分析:Verilog程序综合出来的RTL图(电路很复杂时不做要求);时序仿真结果(必备),可以抓图后打印出来贴在报告上,但必须对图里的结果有详细的文字说明。可参考以下案例格式写
图1比较器模块RTL图
图1为程序综合出来的四个比较器的RTL图,当计数值小于ROM数据时,比较器输出高电平;当计数值大于ROM数据时,比较器则输出低电平。比较器的输出为步进的四相输入端提供PWM波形,从而达到PWM控制。
比较器的输入端:
a:对应PWM _ROM模块的输出信号。
b:对应十六进制计数器(PWM计数器)的输出信号。
比较器的输出端:
agb:输出a端信号与b端信号的比较值。
图2比较器模块仿真波形图
仿真结果说明:
当a端信号大于b端信号时,比如a为15而b为0流程图转换为ns图时,输出端agb输出高电平信号“1”;反之,输出端agb输出低电平信号“0”。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论