多思计组实验3---总线实验(含文件~)
Posted 菜的不谈
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多思计组实验3---总线实验(含文件~)相关的知识,希望对你有一定的参考价值。
实验3 总线实验
写在前面:给出的text文件线连接正确,排版较乱,需要自己放置到适当的位置。(在文章末)
食用方法:复制到text文件中,再到多思平台打开该text即可。
1.1 实验目的
1)理解总线的概念和作用。
2)连接运算器和存储器,熟悉计算机的数据通路。
1.2 实验要求
1)做好实验预习。
2)根据实验1运算器实验和实验2存储器实验所掌握内容,将运算器、存储器与总线连接起来,完成给定数据的读写和运算,熟悉其他元器件的功能特性和使用方法,认真仔细地完成实验(分组完成,每组2-3人)。
学号 | 姓名 | 得分 |
3)写出实验报告。
1.3 实验电路
本实验用到的主要数字功能器件有:4位的74LS181(2片)构成了8位字长的ALU,2K*8位静态随机存储器6116(1片),8位数据锁存器74LS273(本实验用作地址寄存器AR和数据寄存器DR,数量3),三态输出的8组总线收发器74LS245(数量1),其他各种门电路、开关、数据显示灯若干。芯片详细说明请见芯片数据手册。
本实验所用实验电路中涉及的控制信号见实验1和实验2。
1.4 实验原理
实验电路中,数据开关、数据显示灯、运算器、存储器通过总线相连。数据开关(SW7~SW0)用于设置数据或地址,经三态门发送至总线。DR1、DR2从总线上接受数据并传递到ALU进行计算,运算结果经三态门送回到总线。地址寄存器AR从总线上获取地址并送至存储器,存储器按地址进行读写,将读出的数据发送至总线,或者从总线输入数据并写入。数据显示灯与总线相连,流经总线的所有数据和地址都将在数据灯上显示。
1.5 实验内容与步骤
1)运行虚拟实验系统,根据实验原理和提供的元器件,设计并画出存储器实验电路图3.1,要求设计的电路图中有一组灯,用于显示各种状态下的地址和数据:
图3.1运算器虚拟实验电路
- 在下表中填入存储单元地址、参与ALU运算的数据、运算的种类及运算结果,要求将初始数据写入ALU中进行相关运算,并将结果通过总线写入下表给出的存储单元中。以上每一步均给出截图。
存储单元地址 | 11100011 | 00010000 | 10101000 | |||
初始数据 | 11110000 | 00000011 | 00000011 | 00001000 | 11000000 | 00011000 |
运算 | 加法运算 | 乘法 | 减法 | |||
运算结果 | 11110011 | 00011000 | 10101000 |
- 将数据传入MDR1(左下角74LS273(左))
1、将三态门74LS245的MR置高电平(即打开输入通道),将A7~A0依次设置为11110000。
2、置74LS273的MR为1(即打开输入通道),点击74LS273的单脉冲信号,将数据打入MDR1。(结果如下图所示,连接Q7~Q0的的灯泡亮灯显示为11110000,验证数据输入完成)。
- 将数据传入MDR2(左下角74LS273(右))
流程与上步骤类似,在此不做详解。
2.ALU(2*74LS181)运算且将结果置入SRAM(RAM6116)
- 将74LS245的S3~S0分别设置为1110表示加法运算,且CN设置为1表示进位。
- 将下方的74LS245的E置0阻断switch的输入;将上访74LS245置1启用三态门输入。
- 此时三态门将ALU的的结果输入总线BUS。并由总线传入RAM6116的IO7~IO1。
- 将RAM6116的WE置0以启用“写”工作,将CE所设置的与非门中的switch置1,点击单脉冲信号将数据写入RAM6116。(此时与IO7~IO1相连的七盏灯泡显示11110011,正是MDR1与MDR2相加的结果,证明正确)
3.MAR的置数以及RAM6116的读操作
- 将上方的74LS245关闭输入,下方的74LS245打开输入(操作如上)。
- 对下方的74LS245输入11100011,且输入至左侧中间的74LS273(用作地址寄存器MAR)。
- MAR的输出端口指向RAM6116的A7~A0,将WE置为1表示进入只读状态。点击单脉冲信号将数据读入。(右侧灯泡显示11100011,表明我们正确地读取了数据)
1.6 思考与分析
1)多总线结构相对于单总线结构有什么优势?
将较低的I/O设备从单总线上分离出来,实现存储总线和I/O总线分离。提高了I/O设备的性能,使其更快地响应命令,提高系统吞吐量。
2)实验过程中遇到何种问题?试分析原因并给出解决方案。
- 在第一次实验中,仅仅使用一个74LS245,即将下方的8个switch与ALU的输出均连接置74LS245的输入端。在此方案中会有输出与预期不匹配的现象(以下均为对某一确定输入点而言,为简单起见,不妨对A7进行研究):
- 当switch输入1,而ALU输入1时,首次输出为1,是正确的。而将switch置为0时,输出更随着转变为了0,然而由于ALU输入的是1,理论上输出应该依旧是1,发生错误。
- 初次考虑将ALU与switch通过一个或门连接到输入端,然而发现仍然会有错误,可能是该软件编写时的逻辑错误。
- 考虑使用两个74LS245,将ALU通过另一个三态门连接至总线,通过输入阻断来控制输入到总线上的数据。代价是增加了一个芯片,优点是逻辑清晰,方便管理。
74LS181,457px,319px,CP4$74LS181,544px,242px,CP5$74LS273,323px,417px,CP7$74LS273,327px,222px,CP8$74LS273,502px,414px,CP9$Switch,741px,619px,CP10$Switch,756px,618px,CP11$Switch,831px,622px,CP12$Switch,812px,620px,CP13$Switch,795px,619px,CP14$Switch,777px,620px,CP15$Switch,718px,618px,CP16$Switch,849px,620px,CP17$BUS,394px,104px,CP18$Switch,332px,301px,CP19$Switch,308px,504px,CP20$Switch,507px,503px,CP21$SinglePulse,248px,458px,CP22$SinglePulse,688px,444px,CP23$SinglePulse,289px,238px,CP24$74LS245,727px,508px,CP25$Led,821px,50px,CP26$Led,854px,49px,CP27$Led,883px,51px,CP28$Led,911px,53px,CP29$Led,896px,54px,CP30$Led,869px,50px,CP31$Led,838px,51px,CP32$Led,802px,49px,CP33$Switch,1201px,266px,CP34$Switch,1219px,266px,CP35$Switch,1181px,265px,CP36$Switch,1241px,265px,CP37$Switch,671px,527px,CP38$Switch,1042px,263px,CP40$Switch,1327px,178px,CP41$Led,1295px,330px,CP46$Led,1314px,330px,CP47$Led,1374px,329px,CP48$Led,1411px,330px,CP49$Led,1395px,330px,CP50$Led,1354px,331px,CP51$Led,1332px,331px,CP52$Led,1272px,331px,CP53$Switch,1296px,468px,CP61$Led,333px,565px,CP70$Led,397px,557px,CP71$Led,542px,554px,CP72$Led,467px,555px,CP73$Led,449px,555px,CP74$Led,644px,554px,CP75$Led,609px,551px,CP76$Led,433px,557px,CP77$Led,523px,553px,CP78$Led,557px,554px,CP79$Led,624px,552px,CP80$Led,590px,550px,CP81$Led,571px,549px,CP82$Led,415px,556px,CP83$Led,382px,558px,CP84$Led,362px,557px,CP85$RAM6116,693px,394px,CP86$SinglePulse,1178px,512px,CP88$Switch,1215px,512px,CP89$NANDgate,1189px,473px,CP90$74LS245,670px,318px,CP91$Switch,698px,174px,CP92$&CP4Pin13ToCP91Pin4,CP4Pin14ToCP91Pin3,CP4Pin15ToCP91Pin2,CP4Pin16ToCP91Pin1,CP5Pin13ToCP91Pin8,CP5Pin14ToCP91Pin7,CP5Pin15ToCP91Pin6,CP5Pin16ToCP91Pin5,CP5Pin19ToCP4Pin21,CP7Pin11ToCP4Pin7,CP7Pin11ToCP73Pin0,CP7Pin12ToCP4Pin6,CP7Pin12ToCP74Pin0,CP7Pin13ToCP4Pin5,CP7Pin13ToCP77Pin0,CP7Pin14ToCP4Pin4,CP7Pin14ToCP83Pin0,CP7Pin15ToCP4Pin3,CP7Pin15ToCP71Pin0,CP7Pin16ToCP4Pin2,CP7Pin16ToCP84Pin0,CP7Pin17ToCP4Pin1,CP7Pin17ToCP85Pin0,CP7Pin18ToCP4Pin0,CP7Pin18ToCP70Pin0,CP8Pin11ToCP86Pin7,CP8Pin12ToCP86Pin6,CP8Pin13ToCP86Pin5,CP8Pin14ToCP86Pin4,CP8Pin15ToCP86Pin3,CP8Pin16ToCP86Pin2,CP8Pin17ToCP86Pin1,CP8Pin18ToCP86Pin0,CP9Pin11ToCP5Pin7,CP9Pin11ToCP75Pin0,CP9Pin12ToCP5Pin6,CP9Pin12ToCP80Pin0,CP9Pin13ToCP5Pin5,CP9Pin13ToCP76Pin0,CP9Pin14ToCP5Pin4,CP9Pin14ToCP81Pin0,CP9Pin15ToCP5Pin3,CP9Pin15ToCP82Pin0,CP9Pin16ToCP5Pin2,CP9Pin16ToCP79Pin0,CP9Pin17ToCP5Pin1,CP9Pin17ToCP72Pin0,CP9Pin18ToCP5Pin0,CP9Pin18ToCP78Pin0,CP10Pin0ToCP25Pin2,CP11Pin0ToCP25Pin3,CP12Pin0ToCP25Pin7,CP13Pin0ToCP25Pin6,CP14Pin0ToCP25Pin5,CP15Pin0ToCP25Pin4,CP16Pin0ToCP25Pin1,CP17Pin0ToCP25Pin8,CP18Pin40ToCP86Pin19,CP18Pin41ToCP86Pin18,CP18Pin42ToCP86Pin17,CP18Pin43ToCP86Pin16,CP18Pin44ToCP86Pin15,CP18Pin45ToCP86Pin14,CP18Pin46ToCP86Pin13,CP18Pin47ToCP86Pin12,CP18Pin96ToCP29Pin0,CP18Pin97ToCP30Pin0,CP18Pin98ToCP28Pin0,CP18Pin99ToCP31Pin0,CP18Pin100ToCP27Pin0,CP18Pin101ToCP32Pin0,CP18Pin102ToCP26Pin0,CP18Pin103ToCP33Pin0,CP18Pin104ToCP8Pin8,CP18Pin105ToCP8Pin7,CP18Pin106ToCP8Pin6,CP18Pin107ToCP8Pin5,CP18Pin108ToCP8Pin4,CP18Pin109ToCP8Pin3,CP18Pin110ToCP8Pin2,CP18Pin111ToCP8Pin1,CP18Pin112ToCP9Pin8,CP18Pin113ToCP9Pin7,CP18Pin114ToCP9Pin6,CP18Pin115ToCP9Pin5,CP18Pin116ToCP9Pin4,CP18Pin117ToCP9Pin3,CP18Pin118ToCP9Pin2,CP18Pin119ToCP9Pin1,CP18Pin120ToCP7Pin8,CP18Pin121ToCP7Pin7,CP18Pin122ToCP7Pin6,CP18Pin123ToCP7Pin5,CP18Pin124ToCP7Pin4,CP18Pin125ToCP7Pin3,CP18Pin126ToCP7Pin2,CP18Pin127ToCP7Pin1,CP19Pin0ToCP8Pin0,CP20Pin0ToCP7Pin0,CP21Pin0ToCP9Pin0,CP22Pin0ToCP7Pin10,CP23Pin0ToCP9Pin10,CP24Pin0ToCP8Pin10,CP25Pin10ToCP18Pin7,CP25Pin11ToCP18Pin6,CP25Pin12ToCP18Pin5,CP25Pin13ToCP18Pin4,CP25Pin14ToCP18Pin3,CP25Pin15ToCP18Pin2,CP25Pin16ToCP18Pin1,CP25Pin17ToCP18Pin0,CP34Pin0ToCP5Pin9,CP34Pin0ToCP4Pin9,CP35Pin0ToCP5Pin10,CP35Pin0ToCP4Pin10,CP36Pin0ToCP5Pin8,CP36Pin0ToCP4Pin8,CP37Pin0ToCP4Pin12,CP37Pin0ToCP5Pin12,CP38Pin0ToCP25Pin18,CP40Pin0ToCP5Pin21,CP41Pin0ToCP5Pin22,CP41Pin0ToCP4Pin22,CP61Pin0ToCP86Pin8,CP86Pin12ToCP49Pin0,CP86Pin13ToCP50Pin0,CP86Pin14ToCP48Pin0,CP86Pin15ToCP51Pin0,CP86Pin16ToCP52Pin0,CP86Pin17ToCP47Pin0,CP86Pin18ToCP46Pin0,CP86Pin19ToCP53Pin0,CP88Pin0ToCP90Pin0,CP89Pin0ToCP90Pin1,CP90Pin2ToCP86Pin10,CP91Pin10ToCP18Pin31,CP91Pin11ToCP18Pin30,CP91Pin12ToCP18Pin29,CP91Pin13ToCP18Pin28,CP91Pin14ToCP18Pin27,CP91Pin15ToCP18Pin26,CP91Pin16ToCP18Pin25,CP91Pin17ToCP18Pin24,CP92Pin0ToCP91Pin18,@93
以上是关于多思计组实验3---总线实验(含文件~)的主要内容,如果未能解决你的问题,请参考以下文章