数据通路实验报告
数据通路实验报告
数据通路实验报告一、实验目的本实验旨在通过设计与实现一个简单的数据通路,加深对数据通路的理解,并且通过实验验证所学知识的准确性和实用性。
二、实验器材和软件实验器材:计算机、VHDL开发板、配套接口线实验软件:Quartus II三、实验内容1.设计基本数据通路的单元模块,并对其进行仿真验证。
2.将各单元模块综合到一起,形成完整的数据通路,并对其进行逻辑分析和综合。
3.编写测试代码,对数据通路进行功能验证。
四、实验步骤1.设计基本数据通路的单元模块首先,根据实验要求,设计并实现各个基本数据通路的单元模块,如加法器、减法器、乘法器等。
根据需要,还可以设计其他辅助模块,如多路选择器、寄存器等。
在设计单元模块时,需要根据实验要求确定输入和输出信号的位数,并且保证设计的模块功能的准确性和完整性。
2.仿真验证单元模块利用Quartus II提供的ModelSim进行仿真验证。
将设计好的单元模块进行连接,并通过给定的测试向量,验证各个模块的功能是否符合预期。
3.综合设计数据通路将各个单元模块综合到一起,形成完整的数据通路。
在综合的过程中,需要注意各个模块之间的连接和信号的传递。
对综合后的数据通路进行逻辑分析和综合,检查是否存在逻辑错误,并根据需要进行优化处理。
4.编写测试代码根据数据通路的功能,编写相应的测试代码,对数据通路进行功能验证。
测试代码中应包含各种不同类型的测试用例,以确保数据通路的正确性。
五、实验结果分析经过各个步骤的设计与实验,我们成功实现了一个简单的数据通路,并且通过测试代码的运行,验证了数据通路的功能的正确性。
六、实验心得通过本次实验,我深入了解了数据通路的设计与实现过程,加深了对数据通路的理解。
通过实践操作,掌握了Quartus II软件的使用技巧,提高了自己的综合设计能力。
在实验过程中,我遇到了一些问题,通过与同学和老师的交流,顺利解决了这些问题。
通过自己的努力和团队合作,成功完成了本次实验,并且对数据通路有了更深入的认识。
实验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实验目的和要求在JYS-4实验装置上模拟计算机最基本的工作过程,打通“键盘”、“CPU”、“RAM”之间的数据通路,掌握计算机的数据通路组成及其工作原理。
2 实验设备JYS-4计算机组成原理教学实验装置及导线若干。
3实验内容及步骤1)实验原理该实验实际是前三个实验的综合,就是把JYS-4实验装置上的INPUT DEVICE(输入设备—键盘)、SWITCH UNIT(开关单元—控制器)、SIGNAL UNIT(信号单元—时钟)、STATE UNIT(时序单元)、ALU UNIT(算术逻辑单元—运算器)、MAIN MEM(主存储器—内存)、ADDRESS UNIT(地址单元)、BUS UNIT(总线单元)、W/R UNIT(写/读单元)、OUTPUT DEVICE(输出设备)等单元电路连接起来,构成一个最基本的计算机系统,以模拟计算机的实际工作过程。
电路构成也是运算器实验和存储器实验电路的综合,如实验指导书图4-1。
2)实验步骤①接线前的准备、实验电路的接线程序参见实验一和实验三。
②从输入单元电路输入四个八位二进制数据,并存入存储器单元(四个数据及四个存放数据的内存单元地址由各组定义,但要求不能与其它组定义的数据相同)。
③从内存单元取出两组八位二进制分别送入DR1和DR2,并进行四种不同的算术运算,并把不同的算术运算的结果保存在存储器单元里(四种不同的算术运算及其结果的存放地址由各组自行规定)。
④再从内存单元里取出剩下的两个原始数据分别送入DR1和DR2,并进行四种不同的逻辑运算,并把不同的逻辑运算结果存入存储器单元里(要求同3)。
⑤分别从存储器单元读出算术运算和逻辑运算的结果,并进行理论分析其正确性。
图4-1 JYS-4装置的数据通路组成原理数据通路实验数据记录表4 实验数据记录与分析数据通路实验数据记录表验证分析:实验结果与理论分析相符;5注意事项实验中, LDDR1与CE、LDDR2与WE分别共用一个控制开关,在上述两个实验分别做的时候,这两个开关要么用于产生LDDR1和LDDR2(做运算器实验时)这两个控制信号,要么用于产生CE和WE(做存储器实验时)这两个控制信号,所以是不矛盾的。
运算器数据通路实验报告
运算器数据通路实验设计报告学号:姓名:成绩:学号:姓名:成绩:总线、半导体静态存储器实验二、实验目的.1.熟悉函数功能发生器的功能、使用方法。
2.熟悉运算器的数据传送通路。
3.完成几种算逻运算操作,加深对运算器工作原理的理解。
三、实验原理运算器是计算机中对数据进行运算操作的重要部件,它的核心是ALU 函数功能发生器(由EPM7064S 构成),其次还要有存放操作数和运算的中间结果之寄存器以及传送数据的总线等部分。
选用不同的控制信号,运算器可以完成不同的运算功能。
1.函数功能发生器(ALU)的功能。
该函数功能发生器(ALU),当输入为Aj、Bj,对应输出为Fj(j=0,1,2,3,4,5,6,7),它可实现8 种不同的算术运算和逻辑算,而且通过对控制参数SEL2~SEL0S0 来选择。
2.数据传送通路实验电路方案实验方案框图见图2—5 所示。
图中SA、SB 为存放两个现行操作的缓冲寄存器,其中SA 兼作存放中间结果的累加器,并且可以通过SA 所连接的八个数据灯显示。
SA、SB 接收来自总线的数据信息送入ALU 进行算术或逻辑操作。
通过移位门将运算操作结果送到总线。
并且ALU 和总线之间需用三态门隔离(采用74LS245)。
1.按照实验电路方案框图,设计一个能完成下列八种补码运算指令的八位运算器。
该运算器实现的八种功能如表2—1 所示。
表2—1:2.根据运算器设计,选择所需元器件,画出实验电路的详细逻辑图,对开关,单脉冲等定义。
因为和上次实验类似,也是绝大多数的器件在“数据通路”中已安排好,只要控制各个控制点即可,除了开关组通过三态传输门(74LS245)的接法和实验一一样外,设置一个指令寄存器(IR),用74LS573 担当IR。
通过八根连接线和“数据通路”中的八位总线连接起来。
存放ALU 的控制信息SEL2~SEL0。
为了便于观察IR 中内容,可以在IR 的输出端同时接上三个电平显示灯。
有的同学如用三个电平开关设置SEL2~SLE0。
实验三 数据通路总线实验
. .. .实验三数据通路(总线)实验一、实验目的(1)将双端口通用寄存器堆和双端口存储器模块联机;(2)进一步熟悉计算机的数据通路;(3)掌握数字逻辑电路中故障的一般规律,以及排除故障的一般原则和方法;(4)锻炼分析问题与解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障。
二、实验电路图8示出了数据通路实验电路图,它是将双端口存储器实验模块和一个双端口通用寄存器堆模块(RF)连接在一起形成的。
双端口存储器的指令端口不参与本次实验。
通用寄存器堆连接运算器模块,本实验涉及其中的操作数寄存器DR2。
由于双端口存储器RAM是三态输出,因而可以将它直接连接到数据总线DBUS上。
此外,DBUS上还连接着双端口通用寄存器堆。
这样,写入存储器的数据可由通用寄存器提供,而从存储器RAM读出的数据也可送到通用寄存器堆保存。
双端口存储器RAM已在存储器原理实验中做过介绍,DR2运算器实验中使用过。
通用寄存器堆RF(U32)由一个ISP1016实现,功能上与两个4位的MC14580并联构成的寄存器堆类似。
RF含四个8位的通用寄存器R0、RI、R2、R3,带有一个写入端口和两个输出端口,从而可以同时写入一路数据,读出两路数据。
写入端口取名为WR端口,连接一个8位的暂存寄存器(U14)ER,这是一个74HC374。
输出端口取名为RS端口(B端口)、RD端口(A端口),连接运算器模块的两个操作数寄存器DR1、DR2。
RS端口(B端口)的数据输出还可通过一个8位的三态门RS0(U15)直接向DBUS输出。
双端口通用寄存器堆模块的控制信号中,RS1、RS0用于选择从RS端口(B 端口)读出的通用寄存器,RD1、RD0用于选择从RD端口(A端口)读出的通用寄存器。
而WR1、WR0则用于选择从WR端口写入的通用寄存器。
WRD是写入控制信号,当WRD=1时,在T2上升沿的时刻,将暂存寄存器ER中的数据写入通用寄存器堆中由WR1、WR0选中的寄存器;当WRD=0时,ER中的数据不写入通用寄存器中。
数据通路实验实验报告
一、实验概述实验名称:数据通路实验实验目的:1. 理解数据通路的基本概念和组成;2. 掌握数据通路中各个模块的功能和相互关系;3. 学会搭建简单的数据通路实验电路;4. 通过实验验证数据通路在实际应用中的正确性。
实验时间:2023年10月26日实验地点:计算机组成原理实验室实验设备:数据通路实验箱、示波器、万用表、连接线等。
二、实验原理数据通路是计算机中用于数据传输的路径,它由一系列的模块组成,包括输入模块、处理模块、输出模块和存储模块等。
数据通路的主要功能是将数据从输入模块传输到处理模块,经过处理后,再将结果传输到输出模块和存储模块。
在本次实验中,我们将搭建一个简单的数据通路实验电路,包括以下几个模块:1. 输入模块:用于接收外部数据,如按键输入、串口通信等;2. 处理模块:对输入的数据进行运算或逻辑处理,如加法、减法、逻辑运算等;3. 输出模块:将处理后的数据输出到外部设备,如显示器、打印机等;4. 存储模块:用于存储数据,如RAM、ROM等。
三、实验步骤1. 搭建实验电路根据实验箱提供的原理图,将各个模块按照要求连接起来。
具体步骤如下:(1)将输入模块的输出端连接到处理模块的输入端;(2)将处理模块的输出端连接到输出模块的输入端;(3)将存储模块的输出端连接到处理模块的输入端;(4)将各个模块的电源和地线连接好。
2. 设置实验参数根据实验要求,设置各个模块的参数,如输入模块的按键输入、处理模块的运算类型、输出模块的显示格式等。
3. 运行实验启动实验程序,观察各个模块的运行情况,记录实验数据。
4. 分析实验结果根据实验数据,分析各个模块的运行情况,验证数据通路在实际应用中的正确性。
四、实验结果与分析1. 实验结果本次实验中,我们搭建了一个简单的数据通路实验电路,实现了数据的输入、处理、输出和存储。
在实验过程中,我们观察到各个模块的运行情况良好,数据传输过程稳定。
2. 实验分析通过本次实验,我们掌握了数据通路的基本概念和组成,了解了各个模块的功能和相互关系。
计算机组成原理数据通路实验报告
计算机组成原理数据通路实验报告计算机组成原理实验报告计算机组成原理实验报告实验一基本运算器实验一、实验目的1. 了解运算器的组成结构2. 掌握运算器的工作原理3. 深刻理解运算器的控制信号二、实验设备PC机一台、TD-CMA实验系统一套三、实验原理1. (思考题)运算器的组成包括算数逻辑运算单元ALU(Arithmetic and Logic Unit)、浮点运算单元FPU(Floating Point Unit)、通用寄存器组、专用寄存器组。
①算术逻辑运算单元ALU (Arithmetic and Logic Unit)ALU主要完成对二进制数据的定点算术运算(加减乘除)、逻辑运算(与或非异或)以及移位操作。
在某些CPU中还有专门用于处理移位操作的移位器。
通常ALU由两个输入端和一个输出端。
整数单元有时也称为IEU(IntegerExecution Unit)。
我们通常所说的“CPU 是XX位的”就是指ALU所能处理的数据的位数。
②浮点运算单元FPU(Floating Point Unit)FPU主要负责浮点运算和高精度整数运算。
有些FPU还具有向量运算的功能,另外一些则有专门的向量处理单元。
③通用寄存器组通用寄存器组是一组最快的存储器,用来保存参加运算的操作数和中间结果。
④专用寄存器专用寄存器通常是一些状态寄存器,不能通过程序改变,由CPU自己控制,表明某种状态。
而运算器内部有三个独立运算部件,分别为算术、逻辑和移位运算部件,逻辑运算部件由逻辑门构成,而后面又有专门的算术运算部件设计实验。
下图为运算器内部原理构造图2. 运算器的控制信号实验箱中所有单元的T1、T2、T3、T4都连接至控制总线单元的T1、T2、T3、T4,CLR都连接至CON单元的CLR按钮。
T4由时序单元的TS4提供(脉冲信号),其余控制信号均由CON单元的二进制数据开关模拟给出。
控制信号中除T4为脉冲信号外,其余均为电平信号,其中ALU_B为低有效,其余为高有效。
数据通路组成实验实验报告
数据通路组成实验实验报告数据通路组成实验实验报告一、引言数据通路是计算机系统中的重要组成部分,它负责处理和传输数据,实现各个功能模块之间的协调和通信。
本实验旨在通过构建一个简单的数据通路,探索数据通路的组成和工作原理。
二、实验目的1. 理解数据通路的基本概念和功能;2. 掌握数据通路的组成和工作原理;3. 实践数据通路的设计和实现。
三、实验设备和材料1. 计算机;2. Verilog HDL开发环境;3. 开发板;4. 连接线。
四、实验步骤1. 设计数据通路的功能模块:包括输入模块、输出模块、运算模块等;2. 使用Verilog HDL语言编写各个功能模块的代码;3. 将各个功能模块进行连接,形成完整的数据通路;4. 在开发板上下载并运行数据通路的代码;5. 输入测试数据,观察数据通路的运行情况。
五、实验结果与分析在实验过程中,我们成功地设计并实现了一个简单的数据通路。
通过输入测试数据,我们观察到数据在各个功能模块之间的传输和处理过程。
数据通路能够正确地完成各个功能模块的任务,并将最终结果输出。
六、实验总结通过本次实验,我们深入了解了数据通路的组成和工作原理。
数据通路在计算机系统中起着至关重要的作用,它负责处理和传输数据,保证各个功能模块的正常运行。
通过实践,我们掌握了数据通路的设计和实现方法,提高了我们的计算机系统设计能力。
七、实验心得本次实验让我对数据通路有了更深入的了解。
通过实践,我不仅掌握了数据通路的组成和工作原理,还学会了使用Verilog HDL语言进行代码编写和调试。
这对我的计算机系统设计能力的提升具有重要意义。
八、参考文献[1] 《计算机组成与设计:硬件/软件接口》- David A. Patterson, John L. Hennessy[2] 《数字系统设计与Verilog HDL》- Mark Zwolinski九、附录实验代码和测试数据见附件。
以上为数据通路组成实验实验报告的简要内容。
运算数据通路实验报告
运算数据通路实验报告1.按照实验电路方案框图,设计一个能完成下列八种补码运算指令的八位运算器。
该运算器实现的八种功能如表2—1 所示。
表2—1:2.根据运算器设计,选择所需元器件,画出实验电路的详细逻辑图,对开关,单脉冲等定义。
因为和上次实验类似,也是绝大多数的器件在“数据通路”中已安排好,只要控制各个控制点即可,除了开关组通过三态传输门(74LS245)的接法和实验一一样外,设置一个指令寄存器(IR),用74LS573 担当IR。
通过八根连接线和“数据通路”中的八位总线连接起来。
存放ALU 的控制信息SEL2~SEL0。
为了便于观察IR 中内容,可以在IR 的输出端同时接上三个电平显示灯。
有的同学如用三个电平开关设置SEL2~SLE0。
当然可以得出结果,但是由于IR 是一个不可缺少的计算机部件,为了达到完整熟悉计算机各组成部分的目的,这里专门设置了指令寄存器IR。
3.在电路上进行表2—1 所列的八种指令的手动操作,每次一条指令。
实验时可由数据开关输入指令码及操作数,予以功能的验证。
4. 本实验应实现的操作K→SA (开关输入的第一个操作数置入SA,LED 显示)K→SB (开关输入的第二个操作数置入SB,无显示)K→IR (开关输入的ALU 控制代码置入IR)ALU 运算结果通过ALU-244→SA(将运算结果送SA 显示)具体实验过程(仅仅作为参考)如下:1)从输入设备(八个钮子开关)置入第一个数据,74LS245 的E=0,74LS573 的C由“0”变为“1”(锁存)后再变为“0”(保持);送入Sa(该寄存器接有LED 显示); 2)从输入设备(八个钮子开关)置入第一个数据,74LS245 的E=0,74LS573 的C由“0”变为“1”(锁存)后再变为“0”(保持);送入Sb(该寄存器没有接LED 显示); 3)从输入设备(八个钮子开关)将需要进行运算操作(如加法操作)的控制代码(具体内容可见表3-4)置入到IR,74LS245 的E=0,74LS573 的C 由“0”变为“1”(锁存)后再变为“0”(保持);4)控制接通ALU-244,使运算结果上总线;5)将结果置入Sa,并通过所接的LED 将结果显示出来。
计算机组织与结构实验报告四
计算机组织与结构实验报告四实验四、数据通路实验一、实验目的及要求1.进一步熟识tec-8中各掌控信号的促进作用和用法。
2.介绍tec-8的数据通路结构。
3.了解数据通路中数据流动的路径。
4.将双端口数据存储器堆上和双端口存储器模块联机。
二、实验连线及表明数据通路实验中实现三种类型的操作:(1)alu运算结果载入制订寄存器(r0~r3)。
(2)alu运算结果载入制订存储单元。
(3)将制定存储单元的内容写入指定存储器(r0~r3)。
实验连线:三、实验任务本次实验是前两次实验的综合,同学们应根据实验的具体内容设计必要的步骤,给出各步操作应有的控制信号状态。
1.r0=45h,r2=49h,将r0+r2的结果取走11h单元,r0-r2的结果取走22h单元2.将12h载入33h,8ch载入44h单元,同时实现33h单元的内容与44h单元的内容相乘,结果载入r1。
3.实现r3=r0|r2,r0=r1+r2。
四、实验内容1.r0=45h:rd0和rd1用为00,sd7~sd0用为01000101,sbus复置1,drw复置1,按动qd产生t3。
r2=49h:rd0和rd1置为10,sd7~sd0置为01001001,sbus置1,drw置1,按动qd产生t3。
11h载入地址寄存器ar:drw复置0,sd0~sd7用为00010001,sbus复置1,lar复置1,按动qd。
r0+r2:s3~s0置为1001,m置0,sbus置0,abus置1,rd0、rd1置为00,rs0、rs1置为10(与实际操作视角顺序相反),按动qd结果写入数据总线。
abus置0,memw置1,按动qd,结果写入11h单元。
22h载入地址寄存器ar:drw复置0,sd0~sd7用为00100010,sbus复置1,lar复置1,按动qd。
r0-r2:s3~s0置为0110(结果还要加1),m置0,sbus置0,abus置1,rd0、rd1置为00,rs0、rs1置为10,按动qd结果写入数据总线。
数据通路组成实验剖析
实验名称数据通路组成实验___________________________________ 成绩 ____________实验日期2014.11.14 ____________ 第3 次试验指导老师陈国平专业__________ 班号1202 ______________ 组别_______________________ 学生姓名唐海军047 同组学生________________________________________实验报告内容:一、实验目的1.进一步熟悉计算机的数据通路。
2.将双端口通用寄存器堆和双端口存储器模块连接,构成新的数据通路。
3.掌握数字逻辑电路中的一般规律,以及排除故障的一般原则和方法。
4.锻炼分析问题和解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障。
二、实验设备1.TEC-5计算机组成原理实验系统1台2.逻辑测试笔一支(在TEC-5实验台上)3.双踪示波器一台(公用)4.万用表一只(公用)三、实验电路数据通路实验电路图如图 3.3所示。
它是将双端口存储器模块和双端口通用寄存器堆模块连接在一起形成的。
存储器的指令端口(右端口)不参与本次实验。
通用寄存器堆连接运算器模块,本次实验涉及其中的DR1。
由于双端口存储器是三态输出,因而可以直接连接到DBUS上。
此外,DBUS还连接着通用寄存器堆。
这样,写入存储器的数据由通用寄存器提供,从RAM中读出的数据也可以放到通用寄存器堆中保存。
本实验的各模块在以前的实验中都已介绍,请参阅前面相关章节。
注意实验中的控制信号与模拟它们的二进制开关的连接。
数据显示灯四、故障的分析与排除数字电路中难免要出现这样或那样的故障。
有了故障迅速加以诊断并排除,使电路能正常运行,这是实际工作中经常遇到的事。
因此,学会分析电路故障,提高排除故障的能力,是很有必要的。
就数字电路的故障性质而言,大体有两大类:一类是设计中的错误或不当造成的故障;另一类是元件损坏或性能不良造成的。
《计算机组成原理数据通路实验
《计算机组成原理数据通路实验这是一个关于计算机组成原理数据通路的实验,旨在帮助学生学习数据通路的实现原理和设计方法。
实验内容:1. 实现一个简单的数据通路,包括加法器、移位器、选择器等基本模块。
2. 利用数据通路实现一个ALU(算术逻辑单元),能够进行基本的算术和逻辑运算。
3. 实现一个简单的CPU(中央处理单元),包括指令寄存器、程序计数器、控制信号产生器、数据通路等模块。
4. 编写一些简单的汇编程序,测试CPU 的正确性和性能。
实验设备:1. 一个可编程逻辑器件(FPGA)开发板,用于实现电路的硬件化。
2. 一个集成开发环境(IDE),用于编写和调试程序。
实验步骤:1. 学习数据通路的基本实现原理和设计方法。
2. 设计并实现一个简单的数据通路,包括加法器、移位器、选择器等基本模块。
3. 利用数据通路实现一个ALU(算术逻辑单元),能够进行基本的算术和逻辑运算。
4. 实现一个简单的CPU(中央处理单元),包括指令寄存器、程序计数器、控制信号产生器、数据通路等模块。
5. 编写一些简单的汇编程序,测试CPU 的正确性和性能。
6. 考虑优化CPU 的设计,提高性能和可扩展性。
7. 结合实际应用场景,设计和实现更复杂的数据通路和CPU,提高实验难度和实用性。
实验目的:1. 掌握计算机组成原理的基本知识和实现方法。
2. 熟悉数据通路和CPU 的设计原理和流程。
3. 培养创新能力和解决问题的能力。
4. 提高学生理论与实践相结合的能力。
5. 培养学生合作和交流的能力。
6. 实现自己的创意和想法,提高实验的趣味性和挑战性。
实验三 数据通路(总线)实验
.实验三数据通路(总线)实验一、实验目的(1)将双端口通用寄存器堆和双端口存储器模块联机;(2)进一步熟悉计算机的数据通路;(3)掌握数字逻辑电路中故障的一般规律,以及排除故障的一般原则和方法;(4)锻炼分析问题与解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障。
二、实验电路图8示出了数据通路实验电路图,它是将双端口存储器实验模块和一个双端口通用寄存器堆模块(RF)连接在一起形成的。
双端口存储器的指令端口不参与本次实验。
通用寄存器堆连接运算器模块,本实验涉及其中的操作数寄存器DR2。
由于双端口存储器RAM是三态输出,因而可以将它直接连接到数据总线DBUS上。
此外,DBUS上还连接着双端口通用寄存器堆。
这样,写入存储器的数据可由通用寄存器提供,而从存储器RAM读出的数据也可送到通用寄存器堆保存。
双端口存储器RAM已在存储器原理实验中做过介绍,DR2运算器实验中使用过。
通用寄存器堆RF(U32)由一个ISP1016实现,功能上与两个4位的MC14580并联构成的寄存器堆类似。
RF内含四个8位的通用寄存器R0、RI、R2、R3,带有一个写入端口和两个输出端口,从而可以同时写入一路数据,读出两路数据。
写入端口取名为WR端口,连接一个8位的暂存寄存器(U14)ER,这是一个74HC374。
输出端口取名为RS端口(B端口)、RD端口(A端口),连接运算器模块的两个操作数寄存器DR1、DR2。
RS端口(B端口)的数据输出还可通过一个8位的三态门RS0(U15)直接向DBUS输出。
双端口通用寄存器堆模块的控制信号中,RS1、RS0用于选择从RS端口(B 端口)读出的通用寄存器,RD1、RD0用于选择从RD端口(A端口)读出的通用寄存器。
而WR1、WR0则用于选择从WR端口写入的通用寄存器。
WRD是写入控制信号,当WRD=1时,在T2上升沿的时刻,将暂存寄存器ER中的数据写入通用寄存器堆中由WR1、WR0选中的寄存器;当WRD=0时,ER中的数据不写入通用寄存器中。
数据通路设计实验报告
数据通路设计实验报告1. 引言数据通路是计算机中的核心部分,负责处理和传输数据。
在本次实验中,我们设计了一个简单的数据通路来实现特定的功能。
本报告将介绍实验设计的目标、方法和实验结果,并进行讨论和总结。
2. 实验目标本次实验的目标是设计一个数据通路,该数据通路能够执行数据输入、运算和输出的功能。
具体而言,我们需要设计以下模块:1. 输入模块:从外部读取输入数据;2. 运算模块:对输入数据进行运算;3. 输出模块:将运算结果输出到外部。
3. 实验方法为了实现上述目标,我们采用了以下步骤和方法:3.1 模块划分首先,我们将整个数据通路划分为三个模块:输入模块、运算模块和输出模块。
这样的划分既便于理解,又便于设计和实现。
3.2 模块设计接下来,我们对每个模块进行详细的设计。
具体而言,我们需要设计以下部分:3.2.1 输入模块输入模块负责从外部读取输入数据。
我们设计了一个输入寄存器,用于存储输入数据。
输入模块通过读取输入寄存器的内容,将数据传输到运算模块。
3.2.2 运算模块运算模块是整个数据通路的核心部分,负责对输入数据进行运算。
我们设计了一个加法器和一个乘法器来执行相应的运算。
运算模块从输入模块读取数据,并将计算结果存储到输出寄存器中。
3.2.3 输出模块输出模块将运算结果输出到外部。
我们设计了一个输出寄存器,用于存储运算结果。
输出模块从运算模块读取结果,并将其传输到外部。
3.3 数据通路连接最后,我们将各个模块连接起来,形成完整的数据通路。
具体而言,我们将输入模块与运算模块连接,将运算模块与输出模块连接,从而实现数据的输入、运算和输出。
4. 实验结果经过设计和实现,我们成功完成了数据通路的构建。
经过测试,数据通路能够正确地执行输入、运算和输出功能。
具体而言,我们测试了不同的输入数据和运算操作,并验证了结果的正确性。
5. 讨论在实验过程中,我们遇到了一些困难和挑战。
首先,我们在模块设计和连接中需要考虑各个模块之间的数据传输和时序管理。
数据通路实验实训报告
一、实验目的本次数据通路实验实训旨在通过实际操作,加深对计算机系统数据通路组成、工作原理及性能分析的理解。
通过实验,使学生掌握数据通路的基本结构、信号流程、时序关系以及数据通路性能的测试方法。
同时,培养学生独立分析问题、解决问题的能力,提高动手实践能力。
二、实验环境1. 硬件环境:- 计算机一台,配置符合实验要求。
- 实验箱一套,包含数据通路实验模块、测试模块、示波器等。
2. 软件环境:- 操作系统:Windows 10- 软件工具:数据通路实验软件、示波器软件等。
三、实验原理数据通路是计算机系统的重要组成部分,主要负责数据的传输和处理。
本实验主要研究以下内容:1. 数据通路的基本结构:包括数据总线、地址总线、控制总线、运算器、存储器等。
2. 数据通路的信号流程:从输入数据到输出结果的过程。
3. 数据通路的时序关系:各模块之间的时间配合和协调。
4. 数据通路性能的测试方法:通过实验测试数据通路的带宽、延迟等性能指标。
四、实验内容1. 数据通路结构认识:- 观察实验箱各模块的连接方式,了解数据通路的基本结构。
- 分析各模块的功能和作用。
2. 数据通路信号流程分析:- 通过实验软件,模拟数据通路中的信号流程。
- 分析信号在数据通路中的传输路径和时序关系。
3. 数据通路时序关系分析:- 观察实验箱中各模块的时钟信号,分析时序关系。
- 通过实验软件,调整时序参数,观察对数据通路性能的影响。
4. 数据通路性能测试:- 使用示波器测量数据通路中的信号波形,分析信号延迟等性能指标。
- 通过实验软件,模拟不同负载下的数据通路性能,分析其带宽、延迟等指标。
五、实验过程1. 数据通路结构认识:- 打开实验箱,观察各模块的连接方式,了解数据通路的基本结构。
- 通过实验指导书,分析各模块的功能和作用。
2. 数据通路信号流程分析:- 启动实验软件,设置输入数据。
- 观察信号在数据通路中的传输路径和时序关系。
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,总线上无数据,呈高阻态。
数据通路实验
实验五数据通路实验一、实验目的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、实验步骤实验可按照自己设计的电路或参考电路按照搭积木的方式进行。
先完成运算器的数据通路部分,在运算器部分能够正确完成各类运算的基础上,再增加存储器通路,并能通过带三态控制的数据开关,存入要用的初始数据。
最终的结果能够在指示灯上显示,并再回写入存储器中。
实验三 数据通路
计算机组成原理实验报告实验三数据通路实验学院:计算机学院班级:2010211306学号:10211309号姓名:朱璇一实验目的1.进一步熟悉计算机的数据通路2.将双端口通用寄存器堆和双端口存储器模块连接,构成新的数据通路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中的数据读出,验证数据的正确性,并记录数据.5.校验结果四.实验步骤(一)实验连线数据通路RS0 RS1 RD0 RD1 WR0 WR1 LDRi LDDR1 模拟开关K0 K1 K2 K3 K4 K5 K6 K7数据通路RS_BUS# SW_BUS# ALU_BUS# RAM_BUS# LR/W# CEL# LDAR# 模拟开关K8 K9 K10 K11 K12 K13 K14数据通路AR+1 CER# Cn# M S0 S1 S2 S3模拟开关地VCC VCC 地地地地地(二)向双端口寄存器RF中写入数据1.令K4(WR0)=0, K5(WR1)=0, K6(LDRi)=1, K8(RS_BUS#)=1, K9(SW_BUS#)=0,K10(ALU_BUS#)=1, K11(RAM_BUS#)=1, K13(CEL#)=1.置SW7-SW0=0FH, 按QD按钮,将0FH写入R0.2.改变K4(WR0)=1, K5(WR1)=0,置SW7-SW0=FOH, 按QD按钮,将FOH写入R1.3.改变K4(WR0)=0, K5(WR1)=1,置SW7-SW0=55H, 按QD按钮,将55H写入R2.4.改变K4(WR0)=1, K5(WR1)=1,置SW7-SW0=AAH, 按QD按钮,将AAH写入R2.(三)用8位数据开关向AR送入地址0FH,然后将R0中的数据0FH写入双端口存储器中.1.令K6(LDRi)=0, K8(RS_BUS#)=1, K9(SW_BUS#)=0, K10(ALU_BUS#)=1, K11(RAM_BUS#)=1,K13(CEL#)=1,K12(LDAR#)=0.置SW7-SW0=0FH, 按QD按钮, 将0FH写入地址寄存器AR.K2(RD0)=0, K3(RD1)=0, K6(LDRi)=0, K7(LDDR1)=1, K8(RS_BUS#)=1, K9(SW_BUS#)=1, K10(ALU_BUS#)=0,K11(RAM_BUS#)=1, K14(LDAR#)=1, K13(CEL#)=1. 按QD按钮,将R0的数据送入DR1,DR1中的数据通路通过运算器和ALU_BUS三态门送入数据总线DBUS, DBUS应显示0FH.令K6(LDRi)=0, K7(LDDR1)=0, K8(RS_BUS#)=1, K9(SW_BUS#)=1, K10(ALU_BUS#)=0,K11(RAM_BUS#)=1,K12(LR/W#)=0, K14(LDAR#)=1, K13(CEL#)=0. 按QD按钮,将DBUS上的数据0FH写入AR指定的存储单元0FH.2用同样的方法操作R1,R2,R3(四):分别将RAM的0AAH单元数据写入R0, 55H单元数据写入R1,0F0H单元数据写入R2, 0FH单元数据写入R3.1.令K6(LDRi)=0, K8(RS_BUS#)=1, K9(SW_BUS#)=0, K10(ALU_BUS#)=1, K11(RAM_BUS#)=1, K13(CEL#)=1,K14(LDAR#)=0.置SW7-SW0=0AAH, 按QD按钮, 将0AAH写入地址寄存器AR.令K4(WR0)=0, K5(WR1)=0,K6(LDRi)=1,K8(RS_BUS#)=1,K9(SW_BUS#)=1,K10(ALU_BUS#)=1, K11(RAM_BUS#)=0,K12(LR/W#)=1, K13(CEL#)=0, K14(LDAR#)=1. 按QD按钮, 将AR指定的存储器地址0AAH单元的内容0AAH读出,然后写入寄存器R0.2.用同样的方法来操作R1,R2,R3五.实验结论这个实验结合了实验一和实验二,同时也将数据通路的运作过程告诉了我们。
数据通路的实验报告
数据通路实验报告数据通路实验报告一.实验概述。
1.数据通路的设计原则。
数据通路的设计直接影响到控制器的设计,同时也影响到数字系统的速度指标和成本。
一般来说,处理速度快的数字系统,其中独立传递信息的通路较多。
当然,独立数据传送通路的数量增加势必提高控制器设计复杂度。
因此,在满足速度指标的前提下,为使数字系统结构尽量简单,一般小型系统中多采用单一总线结构。
在较大系统中可采用双总线结构或者三线结构。
2.数据通路的结构。
① 算术逻辑单元 ALU:有 S3,S2,S1,S0,M,CN 等 6个控制端,用于选择运算类型。
② 暂存器 A 和 B:保存通用寄存器组读出的数据或BUS 上来的数据。
数据通路实验报告③ 通用寄存器组 R:暂时保存运算器单元ALU 算出的结果。
④ 寄存器 C:保存 ALU 运算产生的进位信号。
⑤ RAM 随机读写存储器:受读/写操作以及时钟信号等控制。
⑥ MAR:RAM 的专用地址寄存器,寄存器的长度决定 RAM 的容量。
⑦ IR:专用寄存器,可存放由 RAM 读出的一个特殊数据。
⑧ 控制器:用来产生数据通路中的所有控制信号,它们与各个子系统上的使能控制信号一一对应。
⑨ BUS:单一数据总线,通过三态门与有关子系统进行连接。
二.实验设计及其仿真检测。
一,运算器。
8 位运算器VHDL波形仿真二,存储器。
顶层设计:其中sw_pc_ar 的VHDL 语言描述:波形仿真三,原仿真实验电路。
仿真结果:四,修改电路。
因为此次实验结果需要下载到FPGA 板中进行操作及观察,而原始电路中,需要输入的变量数量过多,导致电板中的输入按键不够用,所以需要对电路进行修改。
此时我们引入一个计数器PC 来代替需要手动输入的指令alu_sel[5..0]以及数据d[7...0]。
同时还需要引入数码管的位选信号译码器 choose 和段选信号译码器xianshi。
计数器 PC 的VHDL 语言描述位选信号译码器 choose 的 VHDL 语言描述段选信号译码器的VHDL 语言描述经过修改和完善以后的电路图为完善后的电路的引脚分配情况三.实验过程。
- 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]?
答:如图:
输入放在运算器部分,存储器部分无输入,存储器部分的数据要么来自总线传输,要么从mif文件中读取.
实验中遇到的问题:
1.把之前的alu和ram的原理图拷到了当前工程下面。
直接生成该工程的符号文件,连接起来,但是仿真有问题。
几乎是在每一次和总线交换数据的时候都得不到正确的值。
下面是解决的过程:
我怀疑是两个模块之间通过总线传输的数据没有传输成功,于是把alu模块的d引了一个输出端口d_alu,从ram模块的d引出了一个输出端口d_ram,在仿真波形图上,然后就可以看到了数据到达总线上了,而且这个时候d的值也能看到了,只是后面的最后一个读操作出来的数据不对,本来应该是写进去的07,但现在是17,再仿真就会变成别的数据。
2.在连接电路图的时候,我以为存储器部分的sw_bus连在高电平上是错的,然后又连到了bus_sel[4],所以得到了上一个部分的仿真结果,后来不研究了一下那个高电平,发现是用来处理单一总线问题的,就改成了与书上一样的图,我以为上面出现的错误结果和这个有关,改了
之后波形图有变化,但是,还是是错误的.
但是在两种情况下功能仿真的结果都是正确的:
问题解决了~
原因是周期太短,计算结果还来不及存入到内存单元中,把写入内存的时间周期延长一个周期结果就出来了。
电路本身没有问题。
实验心得:。