实验课程

THIS NAME

实验课程

当前位置: 首页 >> 实验课程 >> 正文

Verilog HDL硬件描述语言-行为级电路设计

发布日期:2024-08-19    作者:张尔东     来源:     点击:

一、实验目的

1、掌握行为级建模方式的Verilog HDL语言的编程方法

2、掌握行为级建模中过程语句、块语句、条件语句、赋值等语句的应用;

3、应用行为级建模方式设计十进制计数器

二、实验内容

1、掌握行为级建模方式的Verilog HDL语言的编程方法

2、利用数字电路中74LS160功能,基于Verilog HDL利用行为级建模方式实现一个带有复位、置数功能的十进制计数器。

三、实验原理

十进制计数器74LS160,当异步清零端口为低电平时,计数器输出为零;当同步预置数端口为低电平时,计数器输出端Q=D;当==1EP=ET=1时,每次时钟上升沿到来时开始计数。


74LS160计数器引脚图

                     74LS160计数器功能表


       74LS160状态转换图

四、实验设备与器件

安装Quartus II软件的PC

五、实验步骤

1设计编写功能模块

File→New Verilog HDL file输入编写好的程序另存为选择存储路径(注意路径不要含有中文)


1  File→New Verilog HDL file建立新程序编写文件

34D11


2  输入编写好的程序

2D5D9


3  另存为选择存储路径(注意路径不要含有中文,文件名一定要与模块名一致)

参考程序:

module counter160(clock,reset,load,en,D,Q,C);

input clock,reset,load,en;

input [3:0] D;

output C;

output [3:0] Q;

reg [3:0] Q;

always @(posedge clock ,posedge reset)

begin

 if(reset==1)

    Q<=4'd0;

 else if(load==1)

    Q<=D;

 else if(en)

    Q<=Q;

 else if(Q==9)

    Q<=0;

 else

    Q<=Q+1;

end

assign C=(Q==9);

endmodule

2建工程文件

保存后弹出对话框Do you want to create a new project with this file” →点击“是”Next设置路径、项目及顶层模块名称Next在弹出的对话框中单击File栏后的按钮,将编写好的Verilog程序加入此工程Next选择目标芯片(例:CycloneⅢ系列Ep3C55F4884C8NextEDA工具设置窗口Nextfinish


4  建立本设计项目工程文件next项目工程信息next


5  设置路径、项目及顶层模块名称Next  6  单击File栏后的按钮,添加Verilog程序Next


7  点击add按键将add.v文件添加入下面对话框中Next

 

8  选择目标芯片NextEDA工具设置窗口Nextfinish

3、编译验证(验证程序编写是否有错误)


9  点击编译按键进行编译

4、功能仿File→New vector waveform file保存


10  点击File→New vector waveform file保存,建立波形仿真文件


11  双击Name下方空白处弹出Insert Node or Bus对话框,点击Node Finder



12  点击List加载模块输入输出引脚OK


13  点击OK添加输入信号信息

5、添加输入信号信息


14  点击左侧工具栏添加输入信号信息


15  点击AssignmentsSettings…→Timing改成Functional


15  点击ProcessingGenerate Functional Simulation Netlist网表文件生成成功


16  点击波形仿真按钮进行仿真

6、产生功能波形(参考波形如下)

①当en=0load=0reset=1时,输出端从0开始重新计数。


②当en=0reset =0load =1时,输出端从输入端D的值开始重新计数。


③当reset =0load =0 en=1时,输出端保持状态不变。


④当reset =0load =0 en=0时,输出从0计数到9后开始新的周期循环计数。



上一条:嵌入式Cortex-M应用-STM32的温室大棚系统实现 下一条:Verilog HDL硬件描述语言-数据流级电路设计

关闭