数据通路实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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]?

相关文档
最新文档