数据通路实验
数据通路实验报告

数据通路实验报告一、实验目的本实验旨在通过设计与实现一个简单的数据通路,加深对数据通路的理解,并且通过实验验证所学知识的准确性和实用性。
二、实验器材和软件实验器材:计算机、VHDL开发板、配套接口线实验软件:Quartus II三、实验内容1.设计基本数据通路的单元模块,并对其进行仿真验证。
2.将各单元模块综合到一起,形成完整的数据通路,并对其进行逻辑分析和综合。
3.编写测试代码,对数据通路进行功能验证。
四、实验步骤1.设计基本数据通路的单元模块首先,根据实验要求,设计并实现各个基本数据通路的单元模块,如加法器、减法器、乘法器等。
根据需要,还可以设计其他辅助模块,如多路选择器、寄存器等。
在设计单元模块时,需要根据实验要求确定输入和输出信号的位数,并且保证设计的模块功能的准确性和完整性。
2.仿真验证单元模块利用Quartus II提供的ModelSim进行仿真验证。
将设计好的单元模块进行连接,并通过给定的测试向量,验证各个模块的功能是否符合预期。
3.综合设计数据通路将各个单元模块综合到一起,形成完整的数据通路。
在综合的过程中,需要注意各个模块之间的连接和信号的传递。
对综合后的数据通路进行逻辑分析和综合,检查是否存在逻辑错误,并根据需要进行优化处理。
4.编写测试代码根据数据通路的功能,编写相应的测试代码,对数据通路进行功能验证。
测试代码中应包含各种不同类型的测试用例,以确保数据通路的正确性。
五、实验结果分析经过各个步骤的设计与实验,我们成功实现了一个简单的数据通路,并且通过测试代码的运行,验证了数据通路的功能的正确性。
六、实验心得通过本次实验,我深入了解了数据通路的设计与实现过程,加深了对数据通路的理解。
通过实践操作,掌握了Quartus II软件的使用技巧,提高了自己的综合设计能力。
在实验过程中,我遇到了一些问题,通过与同学和老师的交流,顺利解决了这些问题。
通过自己的努力和团队合作,成功完成了本次实验,并且对数据通路有了更深入的认识。
实验四数据通路

一、实验目的 (1)将双端口通用寄存器堆和双端口
存储器模块联机; (2)进一步熟悉计算机的数据通路; (3)掌握数字逻辑电路中故障的一般
规律,以及排除故障的一般原则和方法; (4)锻炼分析问题与解决问题的能力,
在出现故障的情况下,独立分析故障现象, 并排除故障。
DBUS
数据指示灯
用同样的方法,依次将R1至R3中的数据写入RAM 中的0F0H、55H、0AAH单元。
(5)分别将RAM中0AAH单元的数据写入R0, 55H单元的数据写入R1,0F0H单元写入R2,0FH单 元写入R3。然后将R3、R2、R1、R0中的数据读出 到DBUS上,通过指示灯验证读出的数据是否正确, 并记录数据。
ALU_BUS S2 S1 S0
D7— D0
ALU
ISP1024
QD A7 QC A6 QB A5 QA A4 QD A3 QC A2 QB A1 QA A0
LDDR2 T3
。
M2 S DR2H 74HC298
DR2L
74HC298
。 RSO RS_BUS#
74HC244
LRW
。T3
。 。。 CEL# CEL# D7— D0 D7— D0 CER#
(6)进行RF并行输入输出试验。 1. 选择RS端口(B端口)对应R0,RD端口(A端口)对 应R1,WR端口对应R2,并使WRD=1,观察并行输入输 出的结果。选择RS端口对应R2,验证刚才的写入是否生效。 记录数据。
2.保持RS端口(B端口)和WR端口同时对应R2, WRD=1,而ER中置入新的数据,观察并行输入输出的结 果,RS端口输出的是旧的还是新的数据?
方法同前面的实验。 (2)用8位数据开关向RF中的四个通用寄存器分别置
实验三数据通路组成实验

实验三数据通路组成实验一实验目的1.进一步熟悉计算机的数据通路2.将双端口通用寄存器堆和双端口存储器模块连接,构成新的数据通路3.掌握数字逻辑电路中的一般规律,以及排除故障的一般原则和方法4.锻炼分析问题和解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障.二实验电路数据通路实验电路图如图所示。
它是将双端口存储器模块和双端口通用寄存器堆模块连接在一起形成的。
存储器的指令端口(右端口)不参与本次实验。
通用寄存器堆连接运算器模块,本次实验涉及其中的DRl。
由于双端口存储器是三态输出,因而可以直接连接到DBUS上。
此外,DBUS还连接着通用寄存器堆。
这样,写入存储器的数据由通用寄存器提供,从RAM中读出的数据也可以放到通用寄存器堆中保存。
本实验的各模块在以前的实验中都已介绍,请参阅前面相关章节。
注意实验中的控制信号与模拟它们的二进制开关的连接。
三、实验设备1. TEC-5计算机组成原理实验系统1台2.逻辑测试笔一支(在TEC-5实验台上)3.双踪示波器一台(公用)4.万用表一只(公用)四、实验任务1.将实验电路与控制台的有关信号进行连接。
2.用8位数据开关SW7-SW0向RF中的四个通用寄存器分别置入以下数据:R0=OFH,R1=0F0H,R2=55H,R3=0AAH.3.用8位数据开关向AR送入地址0FH,然后将R0中的数据0FH写入双端口存储器中.用同样的方法,依次将R1,R2,R3中的数据分别置入RAM的0F0H,55H,0AAH单元.4.分别将RAM的0AAH单元数据写入R0,55H单元数据写入R1,0F0H单元数据写入R2,0FH单元数据写入R3.然后将R0-R3中的数据读出,验证数据的正确性,并记录数据.五、实验要求1.做好实验预习,掌握实验电路的数据通路特点和通用寄存器堆的功能特性和使用方法。
2.写出实验报告,内容是:(1)实验目的。
(2)写出详细的实验步骤、记录实验数据及校验结果。
实验03 数据通路实验

实验三数据通路实验一、实验目的1、通过实验进一步熟悉运算器与存储器之间的数据通路的组成结构。
2、通过实验理解顺序节拍发生器的应用和设计方法。
3、通过实验理解系统总线的设计方法。
二、实验步骤1、打开已有的实验工程目录:“DATAPATH”。
通过双击目录中的Quartus II工程文件“DATAPATH.qpf”,利用Quartus II软件打开已经建好的实验工程。
图1打开Quartus II工程2、打开工程后,Quartus II软件的界面如图2所示。
在软件窗口的左边区域的“Project Navigator”列表栏中,选择“files”选项卡,我们可以看到列表栏中列出了这个工程中的设计文件。
本工程的设计文件说明在表1中列举出来。
表1工程设计文件说明表设计文件说明对应组件文件ALU.vhd VHDL设计文件,设计一个四位ALU ALU.bsfMEM.vhd VHDL设计文件,设计一个16*4的ROM存储器用来模拟主存MEM.bsfREG.vhd VHDL设计文件,设计一个带锁存和清零功能的四位寄存器REG.bsf PULSEGEN.vhd VHDL设计文件,设计一个顺序节拍发生器PULSEGEN.bsf DATAPATH.bdf数据通路设计文件其中,设计文件“DATAPATH.bdf”完成了基本功能,实验者首先对其进行验证,需要由实验者在原有设计基础上添加合理设计,完成数据通路时序控制的设计。
图2工程界面图3、如图3上所示,“数据通路”构建在DATAPATH.bdf的设计文件中,除去几个寄存器的脉冲信号,其它模块已经实现连接。
图3数据通路设计图数据通路是数据信号在各个寄存器和存储器之间的传输过程。
这里的设计文件模拟了最简单的数据通路模型。
图3中的“MEM”单元是一个用VHDL语言设计的16*4存储器,为了实验的简便,这里将它设计为ROM,而且从地址0000~1111依次存储的数据也是0~15(比如:地址为0011的存储单元存储的数据也是3)。
数据通路实验

数据通路实验预习报告1数据通路中运算器与存储器协调工作原理是什么?各个数据经过总线连接传输到运算器及存储器,并将运算结果通过数据通路传递到存储器,期间通过每个存储器及运算器的bus输出控制进行协调工作,使得数据不会在总线上冲突。
2、数据及地址在数据通路上传输方法。
通过不同数据控制信号进行传送。
地址信号及数据信号存储地方不同而且控制信号要求不同,通过这样的方法使得总线上数据不会冲突从而达到地址和数据在数据通路上的传输。
3、数据通路中需要注意各种控制信号的作用和设定值,否则不能仿真出正确的波形。
思考题:1、电路的初始状态怎么设置?有几个器件能够发送数据到总线,它们的控制信号是什么?(1)、令bus_sel全部为1,即令输出到总线的所有控制信号无效。
同时运算模块m|cn|s3|s2|s1|s0为000000,lddr信号都为无效,k输入数据为0。
(2)、能够发送数据到总线的器件为PC,R4,R5,,74244,ALU运算单元,RAM存储器单元。
其控制信号分别为PC_BUS,LDDR4,LDDR5,ALU_BUS,RD,WE。
2、画数据通路电路图时,如何连结单一总线?只需将标号标志为相同引脚即可实验数据在总线上的传送。
得到单一总线连接的数据通路电路图3、如何统一两个模块的总线数据输入端k[7..0]及inputd[7..0]?Inputd[7..0]可以不使用,直接将运算模块数据连入到存储器模块的双向输入输出部分,即可将数据送入到存储模块。
实验日志10月5日问题:RAM模块sw_bus为什么没有连接输入端?解决:发现RAM模块的sw_bus是控制inptud输出的信号线,不进行连接一样可以进行总线数据上的传送,其信号线不影响实验结果。
10月9日问题:为何资料上的波形图中ar地址显示与pc地址显示相差一个时间差?解决:通过分析数据通路的电路,发现pc的数据在更新时其之前的地址值已经传送到ar中,因此ar所得到的地址并非pc当时得到的。
实验二数据通路实验

实验二数据通路实验
一、实验目的
1.了解运算模块与存储器模块如何连接;
2.了解各寄存器控制信号作用;
3.掌握数据通路实验的设计方法。
二、实验仪器
COP2000实验仪。
三、实验原理
数据通路实验是将前面进行过的运算器实验模块和存储器实验模块两部分电路连在一起组成的。
数据通路指CPU中各个寄存器之间信息传递的通路,建立数据通路的方法,例如:寄存器X输出控制信号有效,寄存器Y输入控制信号有效,就建立了X—>Y的数据通路。
寄存器部分控制信号:
寄存器选择信号:输出寄存器选择信号:
四、实验内容及步骤
1.自行设计一个寄存器间进行数据传送的实验,并且完成,写明操作步骤和所用到的控制信号状态。
2.下面给出一个例子。
完成R1+R2=R0的实验。
填写表2-1。
表2-1 数据通路实验结果记录表
3.自己设计操作骤,完成A=(B*2+C)/2-D,并设计表格2-2记录操作步骤和实验结果。
其中:A,B分别为存储单元,C、D为寄存器,B、C、D的内容事先自行写入。
五、实验报告要求
1.自己设计例子或使用上面的例子,写在实验报告上。
2.按实验报告上要求,完成实验报告。
六、思考题
将存储单元的内容送入寄存器R?,需用到哪些控制信号?。
数据通路实验实验报告

一、实验概述实验名称:数据通路实验实验目的:1. 理解数据通路的基本概念和组成;2. 掌握数据通路中各个模块的功能和相互关系;3. 学会搭建简单的数据通路实验电路;4. 通过实验验证数据通路在实际应用中的正确性。
实验时间:2023年10月26日实验地点:计算机组成原理实验室实验设备:数据通路实验箱、示波器、万用表、连接线等。
二、实验原理数据通路是计算机中用于数据传输的路径,它由一系列的模块组成,包括输入模块、处理模块、输出模块和存储模块等。
数据通路的主要功能是将数据从输入模块传输到处理模块,经过处理后,再将结果传输到输出模块和存储模块。
在本次实验中,我们将搭建一个简单的数据通路实验电路,包括以下几个模块:1. 输入模块:用于接收外部数据,如按键输入、串口通信等;2. 处理模块:对输入的数据进行运算或逻辑处理,如加法、减法、逻辑运算等;3. 输出模块:将处理后的数据输出到外部设备,如显示器、打印机等;4. 存储模块:用于存储数据,如RAM、ROM等。
三、实验步骤1. 搭建实验电路根据实验箱提供的原理图,将各个模块按照要求连接起来。
具体步骤如下:(1)将输入模块的输出端连接到处理模块的输入端;(2)将处理模块的输出端连接到输出模块的输入端;(3)将存储模块的输出端连接到处理模块的输入端;(4)将各个模块的电源和地线连接好。
2. 设置实验参数根据实验要求,设置各个模块的参数,如输入模块的按键输入、处理模块的运算类型、输出模块的显示格式等。
3. 运行实验启动实验程序,观察各个模块的运行情况,记录实验数据。
4. 分析实验结果根据实验数据,分析各个模块的运行情况,验证数据通路在实际应用中的正确性。
四、实验结果与分析1. 实验结果本次实验中,我们搭建了一个简单的数据通路实验电路,实现了数据的输入、处理、输出和存储。
在实验过程中,我们观察到各个模块的运行情况良好,数据传输过程稳定。
2. 实验分析通过本次实验,我们掌握了数据通路的基本概念和组成,了解了各个模块的功能和相互关系。
实验六 运算器数据通路

实验六 运算器数据通路一、实验目的1、熟悉74LS181函数功能发生器的功能,提高器件在系统中应用的能力2、熟悉运算器的数据传送通路3、完成几种算逻运算操作,加深对运算器工作原理的理解 二、实验内容按图6-1所示参考框图自行设计一个能完成表6-1所列补码运算指令的运算器(为简单化电路,进位和结果触发器可以不设置)。
选择适当元件,画出详细实验电路逻辑图(包括对开关的定义),并组装成电路。
表6-1:在电路上进行表6-1中指令的手动单指令操作(操作数、指令码由数据开关输入)。
设计提示:1、运算器的输入缓存器A S 、B S 分别用一片74LS161来实现,但只用到74LS161的置数功能,禁止其计数功能。
2、用一片74LS273作为运算器操作指令寄存器,只用到6位。
3、用一片74LS244控制运算器的运算结果能否送总线。
三、实验仪器及器材1、实验台和+5V 直流稳压电源各一台。
2、器件由附录A “集成电路清单”内选用。
四、实验电路原理(实验电路原理图)1、四位函数功能发生器(ALU )74LS181的功能74LS181通过“控制参数”3S ~0S 和“模式控制”M ,可对两个输入操作数完成32种算、逻运算,并可以工作于正逻辑输入输出或负逻辑输入输出方式(本实验为正逻辑方式)。
控制端0M =时,属算术运算;1M =时,属逻辑运算。
进位采用补码形式输入输出,电路亦可进行数的比较运算。
其操作功能可查阅实验五中的功能表。
2、数据传送通路实验电路方案运算器是计算机对数据进行运算的重要部件,它的核心是ALU 函数功能发生器,其次还要有存放操作数和运算中间结果的寄存器、移位门、传送数据的总线等部件,在不同的控制信号下,运算器完成不同的运算功能。
如图6-1所示。
图6-1 运算器数据通路框图在图6-1中,A S 、B S 为存放两个现行操作数的缓冲寄存器。
其中A S 兼作存放中间结果的累加器,并给予显示。
它们仅接收来自总线的数据信息,送入ALU 进行算、逻运算。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机组成原理实验报告数据通路实验
学生院系:计算机科学与技术0907班
学生姓名:刘珂男
学生学号:U200915075
一、实验目的
1、由运算器实验与存储器实验原理的基础上,掌握组成计算机的数据通路,熟悉地址和数据在道路上的传输。
2、要求运算结果能够回写到存储器里存储并读出显示。
3、了解怎样将运算器和存储器两个模块连接起来。
4、地址设计为4位,数据设计为8位。
5、能够对运算的结果进行一位或多位移位处理,并再次参加运算
二.实验设备及器件
JZYL—Ⅱ型计算机组成原理教学实验仪一台;
芯片:74LSl81:运算器芯片2片
74LS373:八D锁存器3~4片
74LS244:数据开关2片
74LSl61:同步4位计数器1片
6116存储器或2114存储器1~2片
三、实验任务
自己设计一个电路和利用实验参考电路进行实验,实验要求先将多个运算数据事先存入存储器中,再由地址选中,选择不同的运算指令,进行运算,并将结果显示,还可以进行连续运算和移位,最后将最终结果回写入存储器中。
复习前两个实验电路中各个信号的含义和作用,重点是运算与存储器之间的数据通路。
四.实验电路
1.自己设计电路:可以自由设计,位数任意。
2.给出的参考电路:(按8位设计)数据通路参考电路分别如图
3.13和3.15所示。
五.实验要求及步骤
1、实验前的准备
1)复习有关运算器和存储器的内容:复习《计算机组成原理》中有关数据通路的章节内容。
对数据通路的构成、数据在数据通路中的流动及控制方法有基本的了解。
2)熟悉电路中各部分的关系及信号间的逻辑关系
3)参考芯片手册,自己设计实验电路,画出芯片间管脚的连线图,标上引脚号,节省实验的时间。
4)对所设计的电路进行检查,重点是检查能否控制数据在电路中不同部件之间的传输。
2、实验步骤
实验可按照自己设计的电路或参考电路按照搭积木的方式进行。
先完成运算器的数据通路部分,在运算器部分能够正确完成各类运算的基础上,再增加存储器通路,并能通过带三态控制的数据开关,存入要用的初始数据。
最终的结果能够在指示灯上显示,并再回写入存储器中。
再通过地址计数器,选择结果地址输出。
3、实验报告要求
1) 实验目的;
2) 各模块的设计电路和系统的整体电路,多设计进行详细的分析与说明;
3) 实验结果的记录与分析:给出某个地址对应的数据及结果(列表显示);
4) 画出实验电路,并标上引脚号;
5) 列出操作步骤及顺序;标出重要的开关控制端;
6) 实验收获和体会;
7) 实验中碰到的问题和解决的方法。
关于实验的几点说明:
1)图3.13所示电路中,由于395寄存器接在74181的B操作数上,故不能做连续运算[(A加B)减C乘2] ,只有累加器AC接在74181芯片的A操作数上,才能进行累加运算。
2)对计算机组成原理CPU的设计,数据通路设计是否合理将直接影响到整个系统的设计以及微指令的设计,为便于课程设计中整机系统的设计,同时也便于指令和微指令的设计,给出了两套“数据通路”参考方案,分别如图3.13和图3.15所示。
请同学们自己比较分析图3.13和3.15所示两套数据通路方案的特点。
六、完成情况
实验人员:本人和搭档陈克;
试验时间:为周三的上午这一次;
完成内容:为实验1、2、4三个部分,3未做。
七、实验过程与结果分析
1、实验电路接线图如下所示 指示灯
开关
开关控制端
Cp 1 14 13 12 11
19 1 3 5 7 9 12 14 16 18
244芯片
17 15 13 11 8 6 4 2
21 18 17 16 15 14 13 11 10 9
6116芯片
1 2 3 4 5 6 7 8
3 4 5 6 8 16 7 13 11 10 9
181芯片
19 21 23 2 18 20 22 1
1 11 19 16 15 1
2 9 6 5 2
373芯片
18 17 14 13 8 7 4 3
161计数器
3 4 5 6 8 16 7 13 11 10 9 181芯片
19 21 23 2 18 20 22 1
17 15 13 11 8 6 4 2
244芯片
19 1 3 5 7 9 12 14 16 18
18 17 14 13 8 7 4 3
373芯片
1 11 19 16 15 1
2 9 6 5 2
以上即为完整的芯片连接电路。
2、存储5~10个数据
将0到15依次存入地址0~15中,存储时,将6116先置为读,373芯片的使能开关全部关闭。
用数据开关输入数据,然后用cp脉冲和计数器依次选择地址,存储时将6116改为写状态写完后再置为读,依次操作,直至将16个数全部完成写入,写完后将与数据开关的244芯片打到高阻状态,以免发生信号冲撞。
检验输入的数据是否正确存储时,只需用CP脉冲依次读取地址即可检验。
2、实现各种运算
利用之前存储的地址进行计算,首先把与181输入端相连的373使能开关关闭,打开与181输出开关相连的使能开关,用cp读取第一个操作数,传送给B,然后用指令操作,是输出的F等于B,然后将与181输出相连的373芯片使能端关闭,打开与181芯片输入相连的373芯片的使能开关,将输入写入A中进行保存,再关闭其使能端。
然后再读第二个操作数进入B中,用开关S0~S3和M,及Cn选择进行的操作,打开与181输出相连的373芯片的使能端,得到F,再用同样的方法写入A中,即用A来保存之前的操作结果,B 来获取新的操作数。
如计算下列表达式:
[(9+5) 异或5-4]同或10
首次,将控制cp将地址调为1001,将其传给B,然后将M打到1,开关依次为1010,使得F=B,然后将其存入A中;然后将0101写入B中,将M打到0,Cn打到1,开关依
次为1001,实现加法操作,输入F为1110,并将其写入A中保存;之后将0101读入B 中,M打到0,开关依次为0110,实现异或功能,得到为1011,写入A中保存,然后将0100写入B中,因为要实现减法,而操作只有A-B-1,所以开关Cn打到0来补1,M打到0,做减法,得到F为0111,将其写入A中保存;然后将1010写入B中,M置为1,开关依次为1001实现同或功能,得到F为11110010,检验可知以上结果均正确。
3、实现移位功能
未实现
4、实现数据的回写
为实现回写功能仅需再与输出端相连的373和6116之间加入一片244芯片,当需要进行回写时将其不置于高阻,并将6116置于写状态即可,一般情况下为了避免数据冲撞要将该244的高阻开关置于高阻台。
然后用CP控制地址即可进行检验结果正确与否。
八、实验体会
这是最本学期后一次组成原理实验,时间安排的有点紧,但是同时难度也是相对降低了,这次的数据通路实验也就是第一次的运算电路和第二次的存储器的整合,并且老师给出了基本的连线电路,也做出了一些解释声明,因此我们完成的也算是比较顺利的。
首先完成存储部分,按老师的要求,利用脉冲信号的计数器进行了检验,确定没问题后存储了部分数据;再接着连运算部分和控制读写部分,因为有了前两次的经验,连线相对也是很顺利的,当基本电路连好后发现了一个比较郁闷的问题,无法实现锁存,即使将373的使能开关全部关闭,只要改变地址,读取不同的数据,信号灯还是会发生变化,为了解决这个问题,我和搭档开始了对电路的检测,确定了芯片没问题,连线也没有发生错误的情况后,于是开始调整开关,在更换开关后发现问题消失了,果然,开关接触不良……之后也没有发生类似的问题了,并且很顺利额完成了试验的1、2部分。
因为考虑到试验时间和第三部分的意义不大大,我们直接跳转到第4部分,即实现数据的回写,就在6116与数据灯之间利用加入一个244芯片来实现回写,且为了不引起数据冲突,当输入数据时,该244打到高阻。
当回写数据时打开并且另一244芯片置于高阻状态。
这样,回写的功能也就完成了,总而言之,这次的实验老师确实没有出太难的问题,只要前两次实验有认真完成,这次便根本是小事一桩。
虽然这学期的组成原理实验结束了,但经过这三次的实验,我觉得我也对组原实验有了一定的兴趣,在这之中我也觉的自己对几个实验有了较深的理解,同时动手能力也有了进一步的提高,希望在最后的课程设计中能有用处,最后也感谢实验老师们的辛苦指导。