您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > Verilog—大小比较器
西安邮电學院基于Verilog的HDL设计基础实验报告系部名称:通信与信息工程学院学生姓名:专业名称:通信工程班级:学号:时间:2010年12月11日实验题目大小比较器一、实验内容大小比较器的功能是比较两个数之间的关系:大于、小于或等于。对其进行设计与验证;再对其进行综合生成网表文件;然后进行后仿真。二、技术规范输入引脚:A,B;输出引脚:A_gt_B,A_lt_B和A_eq_B。写出模块magnitude_comparator的Verilog描述。写出激励模块并在模块中实例引用magnitude_comparator模块。选择A和B的几种组合,对模块的功能进行测试。三、实验步骤1、在modulesim软件中进行JK主从触发器来设计的同步计数器的设计与验证,直到运行结果全部正确;2、在Quartus软件中对刚刚完成的计数器进行综合,生成网表文件;3、在modulesim软件中对计数器进行进行后仿真。四、源代码1:设计模块:modulemagnitude_comparator(A,B,A_gt_B,A_lt_B,A_eq_B);input[3:0]A,B;outputA_gt_B,A_lt_B,A_eq_B;wirex0,x1,x2,x3;assignx0=((A[0])&(B[0]))||((!A[0])&(!B[0]));assignx1=((A[1])&(B[1]))||((!A[1])&(!B[1]));assignx2=((A[2])&(B[2]))||((!A[2])&(!B[2]));assignx3=((A[3])&(B[3]))||((!A[3])&(!B[3]));assignA_gt_B=(A[3]&(!B[3]))||(x3&A[2]&(!B[2]))||(x3&x2&A[1]&(!B[1]))||(x3&x2&x1&A[0]&(!B[0])),A_lt_B=((!A[3])&B[3])||(x3&(!A[2])&B[2])||(x3&x2&(!A[1])&B[1])||(x3&x2&x1&(!A[0])&B[0]),A_eq_B=x3&x2&x1&x0;endmodule2:激励模块modulestimulus;reg[3:0]A_out,B_out;wireF1,F2,F3;magnitude_comparator(A_out,B_out,F1,F2,F3);initialbegin#0A_out=4'd0;B_out=4'd1;#10A_out=4'd2;B_out=4'd2;#10A_out=4'd5;B_out=4'd1;#10A_out=4'd15;B_out=4'd10;#10A_out=4'd10;B_out=4'd3;#10A_out=4'd6;B_out=4'd6;#10A_out=4'd8;B_out=4'd14;#10A_out=4'd12;B_out=4'd12;#20$finish;endinitialbegin$monitor($time,A=%b,B=%b,A_gt_B=%d,A_it_B=%d,A_eq_B=%d,A_out,B_out,F1,F2,F3);endendmodule五、仿真结果及分析五、调试情况,设计技巧及体会1、程序调试:程序一开始设计完毕时出现错误,检查到小问题修改后,运行成功。之后进行前仿真和形成网表。最后进行在modulesim软件中对计数器进行进行后仿真2、后仿真:后防真时要注意文件的扩展名及储存路径。尽量保持存储文件名一致。3、综合:在进行综合生成网表前一定要熟悉掌握每一个选项和步骤。不会的查书看后最终完成了。
本文标题:Verilog—大小比较器
链接地址:https://www.777doc.com/doc-2342437 .html