数据通路实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验3
存储器实验
预习实验报告
疑问:
1、数据通路是干嘛的?
2、数据通路如何实现其功能?
3、实验书上的存储器部分总线开关接在高电平上,是不是错了?
实验报告
一、波形图:
参数设置:
Endtime:2.0us Gridsize:100.0ns
信号设置:
clk:时钟信号,设置周期为100ns占空比为50%。
bus_sel: sw|r4|r5|alu|pc_bus的组合,分别代表的是总线(sw_bus)开关,将
存储器r4的数据显示到总线上,将存储器r5的数据显示到总线上,
将alu的运算结果显示到总线上,将pc的数据打入AR中二进制
输入,低电平有效。
alu_sel:m|cn|s[3..0]的组合,代表运算器的运算符号选择,二进制输入,高
电平有效。
ld_reg:lddr1|lddr2|ldr4|ldr5|ld_ar的组合,分别表示将总线数据载入寄存器
r1,r2,r4, r5或AR中,二进制输入,高电平有效。
pc_sel: pc_clr|ld|en的组合,分别代表地址计数器PC的清零(pc_clr)、装
载(pc_ld)和计数使能信号(pc_en),二进制输入,低电平有效。we_rd:信号we和rd的组合,分别代表对ram的读(we)与写(rd)的操作,
二进制输入,高电平有效
k:k [7]~ k [0],数据输入端信号,十六进制输入。
d: d[7]~d[0],数据输出中间信号,十六进制双向信号。
d~result: d [7] result ~d[0] result,最终的数据输出信号,十六进制输出。ar: ar[7]~ ar[0],地址寄存器AR的输出结果,十六进制输出。
pc: pc [7]~ pc [0],地址计数器PC的输出结果,十六进制输出。
仿真波形
以在01H单元中写入05H、02H单元中写入0AH并进行【(A加B)减(非A与B)加B】为例:
1)初始状态:bus_sel=11111,alu_sel=00000,ld_reg=00000,pc_sel=100,we_rd=00,k=00H,总线
上无数据,呈高阻态。
2)读取01H单元的05A:
①置数法PC=01H:bus_sel=01111,pc_sel=101
②PC->AR:bus_sel=11110,ld_reg=00001
③读01H单元的数据放入R1中:bus_sel=11111,ld_reg=10000,we_rd=01
3)读取02H单元的0AH:
①PC+1,PC->AR:bus_sel=11110,ld_reg=00001,pc_sel=111
②读01H单元的数据放入R2中:bus_sel=11111,ld_reg=01000,we_rd=01
4)将地址加到03H :bus_sel=11110,ld_reg=00001,pc_sel=111
5)验证数据并运算:
bus_sel=11101
①读取R1中的数据:alu_sel=010000,得到R1=05H
②读取R2中的数据:alu_sel=101010,得到R2=0AH
③计算(A加B)结果存于R4中:alu_sel=011001,ld_reg=00100,结果为0FH
④计算(非A与B)结果存于03H单元中:alu_sel=100010,we_rd=10,结果为0AH
⑤计算((A加B)加B)结果存于04H单元中:
●R4->R1:bus_sel=10111,ld_reg=10000
●PC+1,PC->AR:bus_sel=11110,ld_reg=00001,pc_sel=111
●计算((A加B)加B)结果存于04H单元中:bus_sel=11101,alu_sel=011001,
we_rd=10
⑥计算(((A加B)加B)减(非A与B))结果存于05H中:
●((A加B)加B)->R1:bus_sel=11111,ld_reg=10000,we_rd=01
●(非A与B)->R2:
PC=03H:k=03H,bus_sel=01111,pc_sel=101
PC->AR:bus_sel=11110,ld_reg=00001
(非A与B)->R2:bus_sel=11111,ld_reg=01000,we_rd=01
●PC=05H:
PC=05H:k=03H,bus_sel=01111,pc_sel=101
PC->AR:bus_sel=11110,ld_reg=00001
●
●(((A加B)加B)减(非A与B))结果存于05H中:bus_sel=11101,alu_sel=000110,
we_rd=10
最后结果为0FH。
结论:
本实验的设计能结合了运算器和存储器,能实现在mif文件中进行初始化,将固定地址单元中存储的数据读取到运算器中进行(((A加B)加B)减(非A与B))的运算并将结果存于指定的内存单元中,与实验要求一致,故电路设计正确。
二、实验日志
预习疑问解答:
1.通路是干嘛的?
在数字系统中,各个子系统通过数据总线连接形成的数据传送路径称为数据通路.
2.通路如何实现其功能?
在这次的实验中,数据通路主要是由运算器部分和存储器部分组成的,通过运算器的运算结合存储器在mif文件的中的操作进行数据的传输与存储,从而构成一个数据通路.
错
3.书上的存储器部分总线开关接在高电平上,是不是错了?
事实证明没有接错.
思考题:
1.画数据通路电路图时,如何连结单一总线?
如图:
ALU模块的sw_bus依然连接bus_sel,存储器部分的sw_bus连接高电平.
2.如何统一两个模块的总线输入端k[7..0]及inputd[7..0]?