基于Libero的数字逻辑设计仿真实验实验报告实验5到8

上传人:桔**** 文档编号:507623357 上传时间:2023-01-30 格式:DOC 页数:14 大小:914.50KB
返回 下载 相关 举报
基于Libero的数字逻辑设计仿真实验实验报告实验5到8_第1页
第1页 / 共14页
基于Libero的数字逻辑设计仿真实验实验报告实验5到8_第2页
第2页 / 共14页
基于Libero的数字逻辑设计仿真实验实验报告实验5到8_第3页
第3页 / 共14页
基于Libero的数字逻辑设计仿真实验实验报告实验5到8_第4页
第4页 / 共14页
基于Libero的数字逻辑设计仿真实验实验报告实验5到8_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《基于Libero的数字逻辑设计仿真实验实验报告实验5到8》由会员分享,可在线阅读,更多相关《基于Libero的数字逻辑设计仿真实验实验报告实验5到8(14页珍藏版)》请在金锄头文库上搜索。

1、 实验题目_基于Libero的数字逻辑设计仿真实验_1. 基本门电路2. 组合逻辑电路3. 时序逻辑电路4. 补充实验不要求全部同学都做,但做了可加分。(选做)实验报告基本门电路一、实验目的1、了解基于Verilog的基本门电路的设计及其验证。2、熟悉利用EDA工具进行设计及仿真的流程。二、实验环境Libero仿真软件(参考附录C)。三、实验内容1、参考附录C掌握Libero软件的使用方法。2、参考附录C中“一个完整的例子”,进行针对74系列基本门电路的设计,并完成相应的仿真实验。3、参考附录D的设计代码、测试平台代码(可自行编程)及附录C的步骤,完成74HC00、74HC02、74HC04、

2、74HC08、74HC32、74HC86相应的设计、综合及仿真。4、提交针对74HC00、74HC02、74HC04、74HC08、74HC32、74HC86(任选一个)的综合结果,以及相应的功能仿真结果。四、实验结果和数据处理1、模块及测试平台代码清单 / 文档可自由编辑打印module HC00(A,B,Y);input 4:1A,B;output4:1Y;assign Y=(A&B);endmoduletimescale 1ns/1nsmodule testbench;reg a,b;wire y;HC00 test(a,b,y);initialbegina=0;b=0;#5 a=1;#

3、5 b=1;#5 a=0;#5 b=0;endendmodule2、第一次仿真结果。(将相关窗口调至合适大小,使波形能完整显示,对窗口截图。后面实验中的仿真使用相同方法处理)3、综合结果。(将相关窗口调至合适大小,使RTL图能完整显示,对窗口截图,后面实验中的综合使用相同方法处理)4、第二次仿真结果(综合后)。回答输出信号是否有延迟,延迟时间约为多少?有时间延迟,时间大约为300ps。5、第三次仿真结果(布局布线后)。回答输出信号是否有延迟,延迟时间约为多少?分析是否有出现竞争冒险。有时间延迟,时间大约为500ps。五、基于实验箱的数字逻辑设计实验参考附录F.1的门电路核心板引脚对应表,在FP

4、GA板上验证设计结果。组合逻辑电路一、实验目的1、了解基于Verilog的组合逻辑电路的设计及其验证。2、熟悉利用EDA工具进行设计及仿真的流程。二、实验环境Libero仿真软件(参考附录C)。三、实验内容1、参考附录C掌握Libero软件的使用方法。2、参考附录C中“一个完整的例子”,进行针对74系列组合逻辑电路的设计,并完成相应的仿真实验。3、参考附录D的设计代码、测试平台代码(可自行编程)及附录F的步骤,完成74HC283、74HC85、74HC138、74HC148、74HC153相应的设计、综合及仿真。4、记录74HC85的综合结果,以及相应的功能仿真结果。测试平台的测试数据要求:进

5、行比较的A、B两数,分别为本人学号的末两位,如“89”,则A数为“1000”,B数为“1001”。若两数相等,需考虑级联输入(级联输入的各种取值情况均需包括);若两数不等,则需增加一对取值情况,验证A、B相等时的比较结果。四、实验结果和数据处理1、模块及测试平台代码清单/ HC85.vmodule hc_85(A3,A2,A1,A0,B3,B2,B1,B0,QAGB,QASB,QAEB,IAGB,IASB,IAEB); input A3,A2,A1,A0,B3,B2,B1,B0,IAGB,IASB,IAEB; output QAGB,QASB,QAEB; reg QAGB,QASB,QAEB;

6、 wire3:0DataA,DataB; assign DataA0=A0; assign DataA1=A1; assign DataA2=A2; assign DataA3=A3; assign DataB0=B0; assign DataB1=B1; assign DataB2=B2; assign DataB3=B3; always(DataADataB) begin if(DataADataB) begin QAGB=1;QASB=0;QAEB=0; end else if(DataADataB) begin QAGB=0;QASB=1;QAEB=0; end else if(IAG

7、B&!IASB&!IAEB) begin QAGB=1;QASB=0;QAEB=0; end else if(!IAGB&IASB&!IAEB) begin QAGB=0;QASB=1;QAEB=0; end else if(IAEB) begin QAGB=0;QASB=0;QAEB=1; end begin if(DataA=DataB) if(IAGB&IASB&!IAEB) begin QAGB=0;QASB=0;QAEB=0; end if(!IAGB&!IASB&!IAEB) begin QAGB=1;QASB=1;QAEB=0; end end endendmodule/ tes

8、tbench.vtimescale 1ns/1nsmodule test_hc_85;reg A3,A2,A1,A0,B3,B2,B1,B0;reg IAGB,IASB,IAEB;wire QAGB,QASB,QAEB;initial begin A3=0; repeat(20) #20 A3=$random;endinitial begin A2=0; repeat(20) #20 A2=$random;endinitial begin A1=0; repeat(20) #20 A1=$random;endinitial begin A0=0; repeat(20) #20 A0=$rand

9、om;endinitial begin B3=0; repeat(20) #20 B3=$random;endinitial begin B2=0; repeat(20) #20 B2=$random;endinitial begin B1=0; repeat(20) #20 B1=$random;endinitial begin B0=0; repeat(20) #20 B0=$random;endinitial begin IAGB=0; repeat(10) #40 IAGB=$random;endinitial begin IASB=0; repeat(10) #40 IASB=$ra

10、ndom;endinitial begin IAEB=0; repeat(10) #40 IAEB=$random;endhc_85 testhc85(.A3 (A3), .A2 (A2), .A1 (A1), .A0 (A0), .B3 (B3), .B2 (B2), .B1 (B1), .B0 (B0), .IAGB (IAGB), .IASB (IASB), .IAEB (IAEB), .QAGB (QAGB), .QASB (QASB), .QAEB (QAEB),);initial begin #400$finish;endendmodule2、第一次仿真结果3、综合结果4、第二次仿

11、真结果(综合后)。回答输出信号是否有延迟,延迟时间约为多少?有时间延迟,时间大约为400-600ps。5、第三次仿真结果(布局布线后)。回答输出信号是否有延迟,延迟时间约为多少?分析是否有出现竞争冒险。存在竞争冒险,有延迟时间,时间约为500ps。五、基于实验箱的数字逻辑设计实验参考附录F.2的组合电路核心板引脚对应表,在FPGA板上验证设计结果。时序逻辑电路一、实验目的1、了解基于Verilog的时序逻辑电路的设计及其验证。2、熟悉利用EDA工具进行设计及仿真的流程。二、实验环境Libero仿真软件(参考附录C)。三、实验内容1、参考附录C掌握Libero软件的使用方法。2、参考附录C中“一

12、个完整的例子”,进行针对74系列时序逻辑电路的设计,并完成相应的仿真实验。3、参考附录D的设计代码、测试平台代码(可自行编程)及附录F的步骤,完成74HC74、74HC112、74HC161、74HC194相应的设计、综合及仿真。4、选择讲义7.6中任意一个实例,在Libero中实现一遍并记录结果。四、实验结果和数据处理1、模块及测试平台代码清单/ 74HC74.vmodule HC74(D1,D2,CP1,CP2,RD1N,RD2N,SD1N,SD2N,Q1,Q2,Q1N,Q2N);input D1,D2;input RD1N,SD1N,CP1;input RD2N,SD2N,CP2;out

13、put Q1,Q1N,Q2,Q2N;reg Q1,Q2;assign Q1N=Q1;assign Q2N=Q2;always (posedge CP1) beginif (!RD1N) Q1=0;else if (!SD1N) Q1=1;else Q1=D1;endalways (posedge CP2) beginif (!RD2N) Q2=0;else if (!SD2N) Q2=1;else Q2=D2;endendmodule/ testbench_74HC74.vtimescale 1ns/1ns module testbench_74HC74; reg D1,D2,RD1N,RD2N,CP1,CP2,SD1N,SD2N;wire Q1,Q2,Q1N,Q2N;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号