数字逻辑与系统设计第七次实验报告

时间:2025-07-08

数字逻辑实验

_____学院______________专业_____班________组、学号______ 姓名______________协作者______________教师评定_________________ 实验题目__第七次实验——基于Libero的数字逻辑设计仿真及验证实验__

1、 熟悉SmartDesign工具的使用

2、 组合逻辑电路综合实验的设计、仿真、程序烧录及验证 3、 时序电路的设计、仿真、程序烧录及验证

数字逻辑实验

实验报告

一、实验目的

1、了解基于Verilog的组合逻辑电路的设计及其验证。

2、熟悉利用EDA工具(特别是SmartDesign)进行设计及仿真的流程。 3、学习利用SmartDesign对全加器进行VerilogHDL设计的方法。 4、熟悉实验箱的使用和程序下载(烧录)及测试的方法。

二、实验环境

1、Libero仿真软件。

2、DIGILOGIC-2011数字逻辑及系统实验箱。

3、Actel Proasic3 A3P030 FPGA核心板及Flash Pro4烧录器。

三、实验内容

1、掌握Libero软件的使用方法。 2、参考教材中5.7.1中相应内容,使用半加器构造全加器,并完成相应的仿真实验。 3、提交相应的仿真结果并完成程序烧录及实验箱验证。 4、编码器扩展实验(利用SmartDesign来完成)

设计一个电路:当按下小于等于9的按键后,显示数码管显示数字,当按下大于9的按键后,显示数码管不显示数字。若同时按下几个按键,优先级别的顺序是9到0。

本实验需要两个编码器74HC148、一个数码显示译码器74HC4511、一个共阴极8段显示数码管LN3461Ax和一个数值比较器74HC85。

5、参考教材中相应章节的设计代码、测试平台代码(可自行编程),完成74HC74、74HC112、74HC161、74HC194相应的设计、综合及仿真。提交针对74HC74、74HC112、74HC161、74HC194(任选一个)的综合结果,以及相应的仿真结果。 ....

四、实验结果和数据处理

(一)全加器

1、SmartDesign连线效果截图

数字逻辑实验

2、模块及测试平台代码

// halfadder.v

module half_adder(S,C,A,B); input A,B; output S,C;

xor gate1 (S,A,B); and gate2 (C,A,B); endmodule

3、第一次仿真结果

4、综合结果

5、第二次仿真结果(综合后)。回答输出信号是否有延迟,延迟时间约为多少? 6、第三次仿真结果(布局布线后)。回答输出信号是否有延迟,延迟时间约为多少?分析是否有出现竞争冒险。

7、引脚分配表

数字逻辑实验

(二)编码器扩展实验 1、SmartDesign的连线图

2、功能仿真波形图

3、综合结果RTL图

4、引脚分配I/O Attribute Editor截图

5、记录实测结果

编码器扩展实验结果记录表

(三)时序电路

1、所有模块及测试平台代码清单

// halfadder.v

module half_adder(S,C,A,B); input A,B; output S,C;

数字逻辑实验

xor gate1 (S,A,B); and gate2 (C,A,B); endmodule

//74HC74代码

module d_ff_1(D,Clk,Q) input D,Clk;

output Q; reg Q;

always@(posedge Clk) Q<=D; endmodule;

//74HC74测试平台代码 `timescale 1ns/1ns module testbench reg D,Clk; wire Q;

parameter clock_period=20;

always#(clock_period/2)Clk=~Clk; initial begin D=0;Clk=0; repeat(20) #20 D=$random; end initial #300 $finish;

d_ff_1 testbench_d(D,Clk,Q); endmodule

//74HC112代码

module jk_ff( J,K,Clk,Q,Qn) input J,K,Clk; output Q,Qn; reg Q;

assign Qn=~Q;

always@(posedge Clk) case({J,K}) 2’b00:Q<=Q; 2’b01:Q<=1’b0; 2’b10:Q<=1’b1;

数字逻辑实验

2’b11:Q<=1’bx; endcase endmodule

//74HC112测试平台代码 `timescale 1ns/1ns module testbench reg J,K,Clk; wire Q,Qn;

parameter clock_period=20;

always#(clock_period/2)Clk=~Clk; initial begin J=0;Clk=0; repeat(20) #20 J=$random; end initial #300 $finish;

jk_ff testbench_jk(J,K,Clk,Q,Qn); endmodule

//74HC161代码

module HC161(CP,CEP,CET,MRN,PEN,Dn,Qn,TC); input CP;

input CEP,CET; output [3:0]Qn; input MRN,PEN; INPUT[3:0]Dn; output TC; reg[3:0] qaux; reg TC;

always@(posedge CP) begin if(!MRN) qaux<=4’b0000; else if(!PEN) qaux<=Dn;

else if(CEP&CET) qaux<=qaux+1; else qaux<=qaux; end

always@(posedge CP)

数字逻辑实验

begin if(qayx==4’b0000) TC=1’b1; else TC=1’b0; end

assign Qn = qaux; endmodule

//74HC161测试平台代码

//74HC194代码

//74HC194测试平台代码

2、第一次仿真结果(任选一个模块,请注明)

3、综合结果

数字逻辑实验

7

数字逻辑实验

8

数字逻辑实验

4、第二次仿真结果(综合后)

5、第三次仿真结果(布局布线后)

…… 此处隐藏:734字,全部文档内容请下载后查看。喜欢就下载吧 ……
数字逻辑与系统设计第七次实验报告.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219