湘潭大学计算机原理实验二ROM存储器与RAM存储器实验报告.docx
《湘潭大学计算机原理实验二ROM存储器与RAM存储器实验报告.docx》由会员分享,可在线阅读,更多相关《湘潭大学计算机原理实验二ROM存储器与RAM存储器实验报告.docx(11页珍藏版)》请在冰豆网上搜索。
![湘潭大学计算机原理实验二ROM存储器与RAM存储器实验报告.docx](https://file1.bdocx.com/fileroot1/2023-2/5/e11adaf3-7a86-449d-98df-950916725dea/e11adaf3-7a86-449d-98df-950916725dea1.gif)
湘潭大学计算机原理实验二ROM存储器与RAM存储器实验报告
湘潭大学计算机原理实验二ROM存储器与RAM存储器实验报告
计算机原理与设计
实验报告
实验二存储器实验
姓名:
XXX
学号:
28
班级:
13级软件工程2班
实验日期:
2014年10月29日
实验地点
信息楼605
硬件环境
Intel(R)Core™i3-3240,
系统环境
WindowsXPSP3
设计软件
QuartusII
器件型号
EP1C12QC240C8
中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)新建工程。
工程名是。
(2)用初始化存储器编辑窗口编辑ROM配置文件(文件名.mif)。
这里预先给出后面将要用到的指令存储器初始化文件:
。
如下图,中的数据是机器指令代码。
中的数据
(3)模块设计。
用图形编辑,使用工具MegaWizardPlug-InManager,定制指令存储器rom宏功能块。
设置地址总线宽度address[]和数据总线宽度q[],分别为5位和32位,并添加输入输出引脚,如图设置和连接。
ROM的结构图
在设置rom数据参数选择项file的对应窗口中(下图),用键盘输入ROM配置文件的路径(),然后设置在系统ROM/RAM读写允许,以便能对FPGA中的ROM在系统读写。
设置在系统ROM/RAM读写允许
(4)全程编译。
(5)画波形文件并进行功能仿真。
波形如上图。
(6)引脚锁定。
引脚分配如下表:
NodeName
Location
clk
PIN_240
a[4]
PIN_6
a[3]
PIN_4
a[2]
PIN_3
a[1]
PIN_2
a[0]
PIN_1
instruction[31]
PIN_168
instruction[30]
PIN_167
instruction[29]
PIN_166
instruction[28]
PIN_165
instruction[27]
PIN_164
instruction[26]
PIN_163
instruction[25]
PIN_162
instruction[24]
PIN_161
instruction[23]
PIN_160
instruction[22]
PIN_159
instruction[21]
PIN_158
instruction[20]
PIN_141
instruction[19]
PIN_140
instruction[18]
PIN_139
instruction[17]
PIN_138
instruction[16]
PIN_137
instruction[15]
PIN_136
instruction[14]
PIN_135
instruction[13]
PIN_134
instruction[12]
PIN_133
instruction[11]
PIN_132
instruction[10]
PIN_128
instruction[9]
PIN_41
instruction[8]
PIN_21
instruction[7]
PIN_20
instruction[6]
PIN_19
instruction[5]
PIN_18
instruction[4]
PIN_17
instruction[3]
PIN_16
instruction[2]
PIN_15
instruction[1]
PIN_14
instruction[0]
PIN_13
(7)全程编译。
(8)编程下载。
下载SOF文件至FPGA,改变ROM的地址a[4..0],外加读脉冲,通过实验台上的数码管比较读出的数据是否与初始化数据中的数据)一致。
注,工程名是,下载示例文件至实验台上的FPGA,选择实验电路模式仍为,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-systemMomery_ContentEditor,了解FPGA中ROM中的数据,并对其进行在系统写操作(下图)。
在系统存储模块读写
(10)实验数据记录
实验数据如下表:
a
2
4
5
7
17
instruction
AC82000
8C890000
8000017
2.FPGA中RAM读写实验
一.实验目的
1、了解FPGA中RAM模块ram的功能
2、掌握ram的参数设置和使用方法
3、掌握ram作为随机存储器RAM的工作特性和读写方法。
二.实验原理
在FPGA中利用嵌入式阵列块EAB可以构成存储器,ram的结构如下图。
从DATAIN[7..0]输入的低8位数据由进行零扩展为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基本相同,实验步骤也类似。
按图输入电路图,同样使用工具MegaWizardPlug-InManager。
设置地址总线宽度address[]和数据总线宽度q[],分别为5位和32位,并进行编译、仿真、引脚锁定、FPGA配置。
(2)注意,RAM也能加入初始化文件(数据存储器的初始化文件),注意此文件加入的路径表达和文件表达(下图):
(后缀mif要小写);同时择在系统读写RAM功能,RAM的ID名取为:
ram2。
RAM加入初始化文件和选择在系统读写RAM功能
(3)波形仿真
波形仿真结果如下:
(4)引脚分配
引脚分配图下表:
NodeName
Location
address[4]
PIN_6
address[3]
PIN_4
address[2]
PIN_3
address[1]
PIN_2
address[0]
PIN_1
clk
PIN_169
DATAIN[7]
PIN_240
DATAIN[6]
PIN_239
DATAIN[5]
PIN_238
DATAIN[4]
PIN_237
DATAIN[3]
PIN_236
DATAIN[2]
PIN_235
DATAIN[1]
PIN_234
DATAIN[0]
PIN_233
out[15]
PIN_136
out[14]
PIN_135
out[13]
PIN_134
out[12]
PIN_133
out[11]
PIN_132
out[10]
PIN_128
out[9]
PIN_41
out[8]
PIN_21
out[7]
PIN_20
out[6]
PIN_19
out[5]
PIN_18
out[4]
PIN_17
out[3]
PIN_16
out[2]
PIN_15
out[1]
PIN_14
out[0]
PIN_13
wren
PIN_173
(5)通过键1、键2输入RAM的低8位数据(选择实验电路模式1),键3、键4输入存储器的5位地址。
键8控制读/写允许,低电平时读允许,高电平时写允许;键7(CLK0)产生读/写时钟脉冲,即生成写地址锁存脉冲,对ram进行写/读操作。
注,工程名是,下载至实验台上的FPGA,选择实验电路模式为,按以上方式首先进行验证实验。
首先控制读出初始化数据,与载入的初始化文件中的数据进行比较,然后控制写入一些数据,再读出比较。
使用在系统读写RAM的工具对其中的数据进行读写操作(下图),设置成连续读模式,将在系统读写工具窗口的数据与实验箱上数码管上显示的数据对照起来看。
使用在系统读写工具对RAM中的数据进行读写操作
(6)实验数据
实验数据如下表:
wren
1
0
1
0
1
0
address
1
1
3
4
4
3
DATAIN
12
12
24
24
23
23
out
0050
1212
2424
0000
2323
2424
3.实验心得
这次实验我掌握ROM与RAM存储器的设置,作为只读存储器ROM和随机存取存储器RAM的工作特性和配置方法。
对存储器的工作原理和解后也有了进一步的认识,为以后的学习和试验打下了坚实的基础。