湘潭大学计算机原理 实验二 ROM存储器与RAM存储器实验报告教材

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机原理与设计

实验报告

实验二存储器实验

姓名: XXX

学号: 2013551728

班级: 13级软件工程2班

实验日期: 2014年 10 月29 日

1.FPGA中ROM定制与读出实验

一.实验目的

1、掌握FPGA中ROM的设置,作为只读存储器ROM的工作特性和配置方法。

2、用文本编辑器编辑mif文件配置ROM,学习将程序代码以mif格式文件加载于ROM中;

3、在初始化存储器编辑窗口编辑mif文件配置ROM;

4、验证FPGA中ROM的功能。

二.实验原理

ALTERA的FPGA中有许多可调用的模块库,可构成如rom、ram、fifo等存储器结构。CPU 中的重要部件,如RAM、ROM可直接调用他们构成,因此在FPGA中利用嵌入式阵列块EAB可以构成各种结构的存储器,ROM是其中的一种。ROM有5组信号:地址信号address[ ]、数据信号q[ ]、时钟信号inclock、outclock、允许信号memenable,其参数都是可以设定的。由于ROM是只读存储器,所以它的数据口是单向的输出端口,ROM中的数据是在对FPGA现场配置时,通过配置文件一起写入存储单元的。图2-1-1中的ROM有3组信号:inclk——输入时钟脉冲;instruction[31..0]——lpm_ROM的32位数据输出端;a[4..0]——lpm_ROM的5位读出地址。

实验中主要应掌握以下三方面的内容:

(1)ROM的参数设置;

(2)ROM中数据的写入,即FILE初始化文件的编写;

(3)ROM的实际应用,在GW48_CP+实验台上的调试方法。

三.实验步骤

(1)新建工程。工程名是scinstmem.qpf。

(2)用初始化存储器编辑窗口编辑ROM配置文件(文件名.mif)。这里预先给出后面将要用到的指令存储器初始化文件:scinstmem.mif 。如下图,scinstmem.mif中的数据是机器指令代码。

scinstmem.mif中的数据

(3)模块设计。用图形编辑,使用工具Mega Wizard Plug-In Manager,定制指令存储器rom 宏功能块。设置地址总线宽度address[]和数据总线宽度q[],分别为5位和32位,并添加输入输出引脚,如图设置和连接。

ROM的结构图

在设置rom数据参数选择项file的对应窗口中(下图),用键盘输入ROM配置文件的路径(scinstmem.mif),然后设置在系统ROM/RAM读写允许,以便能对FPGA中的ROM在系统读写。

设置在系统ROM/RAM读写允许

(4)全程编译。

(5)画波形文件并进行功能仿真。

波形如上图。(6)引脚锁定。引脚分配如下表:

(7)全程编译。

(8)编程下载。下载SOF文件至FPGA,改变ROM的地址a[4..0],外加读脉冲,通过实验台上的数码管比较读出的数据是否与初始化数据(scinstmem.mif中的数据)一致。

注,工程名是scinstmem.qpf,下载scinstmem.sof示例文件至实验台上的FPGA,选择实验电路模式仍为NO.0,32位数据输出由数码8至数码1显示,5位地址由键2、键1输入,键1负责低4位,地址锁存时钟CLK由键8控制,每一次上升沿,将地址锁入,数码管8/7/6/5/4/3/2/1将显示ROM中输出的数据。发光管8至1显示输入的5位地址值。

(9)在系统读写。打开QuartusII的在系统存储模块读写工具In-system Momery_Content Editor,了解FPGA中ROM中的数据,并对其进行在系统写操作(下图)。

在系统存储模块读写

(10)实验数据记录

2.FPGA中RAM读写实验

一.实验目的

1、了解FPGA中RAM模块ram的功能

2、掌握ram的参数设置和使用方法

3、掌握ram作为随机存储器RAM的工作特性和读写方法。

二.实验原理

在FPGA中利用嵌入式阵列块EAB可以构成存储器,ram的结构如下图。从DATAIN[7..0]

输入的低8位数据由ext8to32.v进行零扩展为32位输入数据后,送入ram的左边data[31..0]输入,从右边out[31..0]输出,wren——为读/写控制信号端。数据的写入:当输入数据和地址准备好以后,clk是地址锁存时钟,当信号上升沿到来时,地址被锁存,数据写入存储单元。

数据的读出:从address[4..0]输入存储单元地址,在clk信号上升沿到来时,该单元数据从out[31..0]输出。

wren——读/写控制端,低电平时进行读操作,高电平时进行写操作;

clk——读/写时钟脉冲;DATAIN[7..0] ——低8位数据输入端;

data[31..0]——RAM的32位数据输入端;address[4..0]——RAM的读出和写入地址;

out[31..0]——RAM的32位数据输出端。

lpm_ram_dp实验电路图

三.实验步骤

(1)RAM定制与ROM基本相同,实验步骤也类似。按图输入电路图,同样使用工具Mega Wizard Plug-In Manager。设置地址总线宽度address[]和数据总线宽度q[],分别为5位和32位,并进行编译、仿真、引脚锁定、FPGA配置。

(2)注意,RAM也能加入初始化文件scdatamem.mif (数据存储器的初始化文件),注意此文件加入的路径表达和文件表达(下图):scdatamem.mif ,(后缀mif要小写);同时择在系统读写RAM功能,RAM的ID名取为:ram2。

RAM加入初始化文件和选择在系统读写RAM功能

(3)波形仿真

相关文档
最新文档