计算机组织体系结构
实 验 报 告
评 语:
成
绩
教 师:
年 月 日
班 级: ________
学 号: ____________
姓 名: ______
实验点: EⅡ区 311 _
实验时间: 第三批
实验 存储器实验
1.FPGA中LPM_ROM定制读出实验
.实验目
1掌握FPGA中lpm_ROM设置作读存储器ROM工作特性配置方法
2文编辑器编辑mif文件配置ROM学程序代码mif格式文件加载lpm_ROM中
3初始化存储器编辑窗口编辑mif文件配置ROM
4验证FPGA中mega_lpm_ROM功
二.实验原理
ALTERAFPGA中许调LPM (Library Parameterized Modules)参数化模块库构成lpm_romlpm_ram_iolpm_fifolpm_ram_dq存储器结构CPU中重部件RAMROM直接调构成FPGA中利嵌入式阵列块EAB构成种结构存储器lpm_ROM中种lpm_ROM5组信号:址信号address[ ]数信号q[ ]时钟信号inclockoutclock允许信号memenable参数设定ROM读存储器数口单输出端口ROM中数FPGA现场配置时通配置文件起写入存储单元图311中lpm_ROM3组信号:inclk——输入时钟脉q[230]——lpm_ROM24位数输出端a[50]——lpm_ROM6位读出址
实验中应掌握三方面容:
⑴ lpm_ROM参数设置
⑵ lpm_ROM中数写入LPM_FILE初始化文件编写
⑶ lpm_ROM实际应GW48_CP+实验台调试方法
三.实验步骤
(1)图形编辑进入mega_lpm元件库调lpm_rom元件设置址总线宽度address[]数总线宽度q[]分6位24位添加输入输出引脚图311设置连接
(2)设置图311工程
(3)设置lpm_rom数参数选择项lpm_file应窗口中(图312)键盘输入lpm_ROM配置文件路径(rom_amif)然设置系统ROMRAM读写允许便FPGA中ROM系统读写
(4) 初始化存储器编辑窗口编辑lpm_ROM配置文件(文件名mif)里预先出面微程序文件:rom_amif rom_amif中数微指令码(图313)
(5)全程编译
(6)载SOF文件FPGA改变lpm_ROM址a[50]外加读脉通实验台数码较读出数否初始化数(rom_amif中数)致
图311 lpm_ROM结构图
图312 设置系统ROMRAM读写允许
四实验结果
通电路板12键输入模式键选择进行操作验证
实验二 运算器实验
1.算术逻辑运算实验
.实验目
1 解简单运算器数传输通路
2 验证运算功发生器组合功
3 掌握算术逻辑运算加减工作原理
4 验证实验台运算8位加减直通功
5 定数完成种指定算术逻辑运算
二.实验容
1.实验原理
算术逻辑单元ALU数通路图21示中运算器ALU181根74LS181功VHDL硬件描述语言编辑成构成8位字长ALU参加运算两8位数分A[70]B[70]运算模式S[30]16种组合决定S[30]值4位2进制计数器LPM_COUNTER产生计数时钟Sclk(图21)外设M0选择算术运算M1逻辑运算CN低位进位位F[70]输出结果CO运算输出进位位两8位数总线IN[70]分通两电锁存器74373锁入ALU功表21示
表21 ALU181运算功
选择端
高电作数
S3 S2 S1 S0
MH
ML 算术操作
逻辑功
CnL(进位)
CnH(进位)
0 0 0 0
0 0 0 1
加1
0 0 1 0
+1
0 0 1 1
减1(2补码)
0 1 0 0
加1
0 1 0 1
加
加+1
0 1 1 0
0 1 1 1
1 0 0 0
加1
1 0 0 1
加1
1 0 1 0
加1
1 0 1 1
1 1 0 0
*
1 1 0 1
加1
1 1 1 0
加1
1 1 1 1
注1* 表示位移更高效位 +逻辑加算术加
注2位减法表达表21标准74181真值表略
三.实验步骤
(1)设计ALU元件
Quartus II 环境文输入编辑器Text Editor输入ALU181VHD算术逻辑单元文件编译VHDL文件ALU181VHD文件制作成调原理图元件
中VHDL语言:
LIBRARY IEEE
USE IEEESTD_LOGIC_1164ALL
USE IEEESTD_LOGIC_UNSIGNEDALL
ENTITY ALU181 IS
PORT (
S IN STD_LOGIC_VECTOR(3 DOWNTO 0 )
A IN STD_LOGIC_VECTOR(7 DOWNTO 0)
B IN STD_LOGIC_VECTOR(7 DOWNTO 0)
F OUT STD_LOGIC_VECTOR(7 DOWNTO 0)
M IN STD_LOGIC
CN IN STD_LOGIC
CO OUT STD_LOGIC )
END ALU181
ARCHITECTURE behav OF ALU181 IS
SIGNAL A9 STD_LOGIC_VECTOR(8 DOWNTO 0)
SIGNAL B9 STD_LOGIC_VECTOR(8 DOWNTO 0)
SIGNAL F9 STD_LOGIC_VECTOR(8 DOWNTO 0)
BEGIN
A9 < '0' & A B9 < '0' & B
PROCESS(MCNA9B9)
BEGIN
CASE S IS
WHEN 0000 > IF M'0' THEN F9
WHEN 0011 > IF M'0' THEN F9< 000000000 CN ELSE F9<000000000 END IF
WHEN 0100 > IF M'0' THEN F9
WHEN 1101 > IF M'0' THEN F9<(A9 or B9) + A9 + CN ELSE F9
END CASE
END PROCESS
F< F9(7 DOWNTO 0) CO < F9(8)
END behav
(2)原理图方式建立顶层文件工程
选择图形方式根图21输入实验电路图Quartus II基元件库中元件调入图形编辑窗口连线添加输入输出引脚
设计图形文件ALUbdf保存原先建立文件夹中前文件设置成工程文件操作前工程文件进行
(3)器件选择
选择Cyclone系列Devices中选择器件EP1C6QC240C8编译引脚锁定编译引脚锁定需次进行编译锁定信息确定时生成芯片编程配置需种文件
(4)芯片编程Programming(直接选择光盘中示例已完成设计进行验证实验)
开编程窗口配置文件ALUsof载进GW48系列现代计算机组成原理系统中FPGA中
(5)选择实验系统电路模式NO0验证ALU运算器算术运算逻辑运算功
根表21键盘输入数A[70]B[70]设置S[30]MCy验证ALU运算器算术运算逻辑运算功记录实验数
图21 算术逻辑单元ALU实验原理图
四.实验程
(1)图21示验证性示例中数选择开关(键3控制)高低电选择总线通道8位数进入应74373中首先键3输入高电键2键1分A[70] 置数01010101(55H)时数码43显示输入数(55H)然键3输入低电键2键1分B[70]置数10101010(AAH)时数码21显示输入数(AAH)时表示图21中两74373锁存器中分锁入加数55H加数AAH双击图21ALU181元件解VHDL描述
(2)设定键8低电M0(允许算术操作)键6控制时钟SCLK设置表21S[30]0 ~ F现连续动键6设置操作方式选择S[30]9(加法操作)数码8显示9验证ALU算术运算功: 键7设置cn0(低位进位)时数码7650FF(55H+AAH0FFH)
键7设置cn1(低位进位)时数码765100(55H+AAH+1100H)
(3)设定键8高电M1键KEY6控制时钟SCLK设置S[30]0~FKEY7设置cn0cn1验证ALU逻辑运算功记录实验数
(4) 验证ALU181算术运算逻辑运算功ALU181模块功参表21
五实验结果
表22
S3 S2 S1 S0
A[70]
B[70]
算术运算 M0
逻辑运算(M1)
cn0(进位)
cn1(进位)
0000
AA
55
F( AA )
F( AB )
F( 55 )
0001
AA
55
F( FF )
F( 00 )
F( 00 )
0010
AA
55
F( AA )
F( AB )
F( 55 )
0011
AA
55
F( 00 )
F( FF )
F( 00 )
0100
FF
01
F( FD )
F( FE )
F( FE )
0101
FF
01
F( FD )
F( FE )
F( FE )
0110
FF
01
F( FE )
F( FD )
F( FE )
0111
FF
01
F( FF )
F( FE )
F( FE )
1000
FF
FF
F( FE )
F( FF )
F( 00 )
1001
FF
FF
F( FE )
F( FF )
F( FF )
1010
FF
FF
F( FE)
F( FF )
F( FF )
1011
FF
FF
F( FF )
F( FE )
F( FF )
1100
55
01
F( AA )
F( AB )
F( 01 )
1101
55
01
F( AA )
F( AB )
F( FF )
1110
55
01
F( 54 )
F( 55 )
F( 55 )
1111
55
01
F( 55 )
F( 54 )
F( 55 )
六实验心
掌握运算器传输计算方法
实验三 时序数通路实验
节拍脉发生器时序电路实验
计算机中机器指令执行般分三阶段:取指令分析指令执行指令阶段执行需耗费定时间目前止采什样控制器结构(流水矩阵等)述三阶段完全行总定执行序控制序安排阶段执行时间决定时部件动作等等控制器中时序电路部件控制周复始条紊工作单元实验容设计控制器中时序电路部件
实验目
(1)掌握节拍脉发生器设计方法工作原理
(2)理解节拍脉发生器工作原理
二实验原理
单步节拍发生电路
图示单步运行电路该电路RST1出现负脉仅输出组T1T2T3T4节拍信号直RST1出现负脉波形图示
示例工程文件T5bdf硬件实验验证方法图示载T5SOF 文件选择实验模式1Clock0接4Hz(选择范围1Hz50MH)键8控制RST1出现负脉发光1234分显示T1T2T3T4输出电次
节拍脉发生器工作原理图
T1~T4CLK1 RST1工作波形图示例工程文件T4bdf硬件实验验证方法图411示选择实验模式1Clock0接4Hz键8控制RST1高电时发光1234分显示T1T2T3T4输出电
实验四 微控制器实验
程序计数器PC址寄存器AR实验
实验目
1掌握址单元工作原理
2掌握两种工作方式加1计数重装计数器初值实现方法
3掌握址寄存器程序计数器获数部总线获数实现方法
二实验原理
址单元三部分组成址寄存器路开关
程序计数器PC指出条指令存中存放址CPU正根PC容存取指令程序中指令序执行PC增功LDPC信号作预置计数器初值LDPC高电时计数器装入data[ ]端输入数aclr
计数器清0端高电效(高电清零)aclr低电时允许计数器正常计数
程序计数器电路图
址寄存器AR(74273)锁存访问存SRM址273中址两渠道程序
计数器PC输出通常条指令址二部数总线数通常访问操作数址实现两路输入数切换FPGA部通总线路开关BUSMUX进行选择LDAR路选择器sel相连LDAR低电选择程序计数器输出LDAR高电时选择部数总线数
程序计数器仿真波形
三实验步骤
1图4—21程序计数器原理图编辑输入电路实验台选择模式0输入原理图进行编译引脚锁定载实验台示例工程文件PC_unitbdf硬件实验方法实验验证
实验说明
(1)载pc_unitsof
(2)模式键选模式0次右侧复位键
(3)键2键1输入8位总线数B[70]CLR((键5)2次(0—10)产生正脉高电清零LDAR(键6)0时BUSMUX输出程序计数器PC值LDAR1时BUSMUX输出B[70]总线数LDPC(键7)程序计数器PC预置控制端LDPC1时B[70]总线数装入程序计数器PCLDPC0时程序计数器PC处计数激动工作状态T4进行计数T4(键8)程序计数器PC计数器PC计数时钟CLK键8动两次产生计数脉
2通B[70]设置程序计数器预加载数LDPC0时观察程序计数器动加1功LDPC1时观察程序计数器加载输出情况
示例操作
1 键置0键21输入A5键5→PC计数器清零(0→1→0)
2 连续动键8次数码87AR输出PC值
3 键6→’1’选通直接输出总线数A5作PC值键8产生脉升AR(显示数码87)输出A5
4 键60选通PC计数器输出时键21输入86键7产生升脉(0→1→0)LDPC86加载进PC计数器
连续动键8发现AR输出86累加输出:868788等
四实验结果
结果电路板调试观测
五实验心
次试验掌握节拍脉发生器设计方法工作原理理解节拍脉发生器工作原理掌握址单元工作原理两种工作方式加1计数重装计数器初值实现方法掌握址寄存器程序计数器获数部总线获数实现方法
实验五 总线控制器实验
.实验目
1.理解总线概念特性
2.掌握总线传输控制特性
二.实验原理
1.总线基概念
总线系统部件间进行数传输公通路构成计算机系统骨架助总线连接计算机系统部件间实现传送址数控制信息操作谓总线指功部件服务组公信息线
数输入开关
址寄存器
AR
存储器
RAM
数码
LED
寄存器
R0
SWB
LDAR
CS
WR
LEDB
WR
R0B
LDR0
总线
图51 总线实验传输框图
2.实验原理
实验总线实验传输框图图51示种设备挂总线存储器输入设备输出设备寄存器设备传统系统中需三态输出控制然FPGA部没三态输出控制结构必须采总线输出路开关结构加控制传输求恰序控制实现总线信息传输
三.实验容
(1)实验电路图52示总线连接基部件:输入设备input输入8位数数寄存器双端口SRAM存储器容量256×8B址寄存器AR输出寄存器out接LED数码
图52 总线控制实验线路图
写WE1允许写WE0禁止写允许读inclock数DATA锁存时钟图54总线控制时序仿真波形图
图53 总线控制时序仿真波形图
1.实验求
根挂总线基部件设计简单流程
(1)输入设备数送入寄存器R0
(2)输入设备数入址寄存器AR
(3)寄存器R0中数写前址存储器中
(4)前址存储器中数数码显示
2.实验步骤
(4)工程文件BUS4bdf载BUS4sof实验台FPGA中
(5)实验容1根图54完成实验操作:选择实验模式0次右侧复位键(接线实验板键9输入端插针适配板FPGA第P196针相连便键9控制OUT锁存器时钟):初始状态1键4键3控制设备选择端:sel[10]00(键4键300)2时键2键1输入数(26H显示数码21)直接进入BUS(数码87显示)键567低电3键81(允许RAM写入)完成图54示操作:4键5发正脉(010)数入寄存器R05键2键1输入数(37H)6键6发正脉(010)数入址寄存器AR7键2键1输入数(48H)8键7发正脉(010)数写入RAM(时必须键8输出1’注意时进入RAM数48H放址37H单元)9键2键1输入数(59H)10键9发正脉(010)数写入寄存器OUT(数码65显示数)11键4键3分选择sel[10]00011011数码87观察写入寄存器中数
(6)实验容2:先数28H写入RAM址(4AH)数1BH送进R0刚写入RAM中址(4AH)数读出送OUT口总线电路图53操作:
1接线实验板键9输入端插针适配板FPGA第P196针相连便键9控制OUT锁存器时钟键345678低电键4键300总线路选择器sel[10]00选择键2键1输入数4AH(址)直接进入BUS
2键6两次(010)产生正脉址数4AH(址)锁入址寄存器AR图53示数直接进入RAMaddress端
3键2键1输入数28H(数)时直接进入总线BUS进入RAMdata数端键81(RAM写允许)键7两次数28H写入RAM(址4AH)键80写禁止读允许
4键2键1输入数1BH键5两次(010)产生正脉数写入R0寄存器
5读RAM送OUT:键2键1输入数4AH键5两次4AH进入AR
6 键7两次RAM中4AH单元中数28H输出键4键310总线路选择器sel[10]10时RAM数口28H进入总线BUS(数码87)
7键9次(键单脉)RAM口28H锁入输出口OUT寄存器数码65显示具体操作参考图54
图54 总线数传输练操作步骤
3键盘显示定义详细说明:
1)键2键1输入D[70]输入数时显示数码2数码3
2)键4键3输入控制设备选择端sel[10]图54示键4键3控制总线路选择器选择设备数进入总线:sel[10] 00:
3)输入设备INPUT数进入总线BUS 01:寄存器R0中数进入总线BUS 11:址寄存器AR数进入总线BUS 10:存储器RAM数进入总线BUS
4)总线BUS输出数显示数码8数码7
5)键5控制寄存器R0输入选通锁存端
6)键6控制址寄存器AR输入选通锁存端
7)键7控制LPM_RAM数DATA输入锁存端
8)键8控制LPM_RAM写入允许WE端1效
9)键9控制输出设备OUTPUT输入选通端输出数显示数码6数码5求首先接线实验板键9输入端插针适配板FPGA第P196针相连
四实验结果
具体实验结果电路板进行操作
五实验心
总线更深理解实际操作锻炼
总实验心
通实验熟练掌握Quartus Ⅱ软件Quartus Ⅱ进行电路模拟仿真动手设计简单计算机逻辑部件然知识解少相信定熟练掌握
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档