实验四:模型机时序部件的实现

本文详述了使用VHDL设计和仿真模型机中的时序部件,包括状态机SM、8位指令计数器PC、3个8位寄存器组成的寄存器组以及256*8的RAM。通过实验步骤,展示了从新建工程、编写源代码到波形仿真的全过程,验证了各部件的功能正确性。实验强调了VHDL语言在数字逻辑电路设计中的应用,并探讨了SM、PC、寄存器和RAM在模型机中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 实验目的

1.熟悉计数器、寄存器和 RAM 的工作原理。

2.了解模型机中 SM 的作用。

3.学会使用 VHDL 语言设计时序电路。

  • 实验内容

1.用 VHDL 语言设计 SM;

2.用 VHDL 语言设计一个 8 位的指令计数器 PC;

3.用 VHDL 语言设计 3 个 8 位寄存器组成的寄存器组,实现读写操作。

4.用 LPM_RAM_IO 定制一个 256*8 的 RAM,实现对 RAM 的读写操作;

实验方法

采用基于FPGA进行数字逻辑电路设计的方法。

采用的软件工具是QuartusII软件仿真平台。

  • 实验步骤

1、  新建,编写源代码。

(1).选择保存项和芯片类型:【File】-【new project wizard】-【next】(设置文件路径+设置project name)-【next】(设置文件名【add】-【properties】(type=AHDL)-【next】-【next】-【finish】

(2).新建:【file】-【new】(第二个AHDL File)-【OK】

2、写好源代码,保存文件。

3、编译与调试。确定源代码文件为当前工程文件,点击【processing】-【start compilation】进行文件编译,编译成功。

4、波形仿真及验证。新建一个vector waveform file。按照程序所述插入节点。(操作为:右击 -【insert】-【insert node or bus】-【node finder】(pins=all;【list】)-【>>】-【ok】-【ok】)。任意设置的输入波形…点击保存按钮保存。(操作为:点击name(如:A))-右击-【value】-【clock】(如设置period=200;offset=0),同理设置name B(如120,,60),保存)。然后【start simulation】,出name C的输出图。

5、时序仿真或功能仿真。

6、查看RTL Viewer:【Tools】-【netlist viewer】-【RTL viewer】。

A.   SM

代码实现:

(1) 新建一个工程命名为SM,用来实现SM原件;

(2) 建立一个vhd文件,定义顶层实体并实现SM原件;

(3) 建立一个vwf文件,对实现的原件进行波形仿真,验证波形输入。

B.   8位的指令计数器PC

代码实现:

(1) 新建一个工程命名为PC,用来实现PC原件;

(2) 建立一个vhd文件,定义顶层实体并实现PC原件;

(3) 建立一个vwf文件,对实现的原件进行波形仿真,验证波形输入。

C.   包含3个8位寄存器的寄存器组

代码实现:

(1) 新建一个工程命名为register_team用来通过vhdl语言实现包含3个8位寄存器的寄存器组;

(2) 建立一个vhd文件,用来定义顶层实体实现包含3个8位寄存器的寄存器组;

(3) 建立一个vwf文件,对实现的原件进行波形仿真,验证波形输入。

D.   256*8 的RAM

画图实现:

(1) 新建一个工程命名为RAM,用来通过逻辑图实现256*8的RAM;

(2) 建立一个bdf文件,调用8位寄存器原件LPM_RAM_IO绘制RAM的逻辑图;

(3) 建立一个vwf文件,对实现的原件进行波形仿真,验证波形输入。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值