实验二 寄存器(2)+ALU

合集下载

实验报告_运算器实验

实验报告_运算器实验

实验报告_运算器实验一、实验目的本次运算器实验的主要目的是深入了解运算器的工作原理和功能,通过实际操作和观察,掌握其基本运算逻辑和数据处理过程,培养对计算机硬件系统的理解和实践能力。

二、实验设备本次实验所使用的设备包括计算机一台、相关的实验软件以及连接线路等。

三、实验原理运算器是计算机的核心部件之一,它负责执行各种算术和逻辑运算。

其基本组成包括算术逻辑单元(ALU)、寄存器、数据总线等。

算术逻辑单元(ALU)是运算器的核心,能够进行加法、减法、乘法、除法等算术运算,以及与、或、非等逻辑运算。

寄存器用于暂时存储参与运算的数据和运算结果。

数据总线则用于在各个部件之间传输数据。

在运算过程中,数据从寄存器通过数据总线传输到ALU 进行运算,运算结果再通过数据总线存储回寄存器或传输到其他部件。

四、实验内容与步骤(一)实验内容1、进行简单的算术运算,如加法、减法、乘法和除法。

2、执行逻辑运算,包括与、或、非操作。

3、观察运算结果在寄存器和数据总线上的传输和存储过程。

(二)实验步骤1、打开实验软件,连接好实验设备。

2、选择要进行的运算类型,如加法运算。

3、在相应的输入框中输入两个操作数。

4、点击“计算”按钮,观察运算结果在寄存器中的显示。

5、重复上述步骤,进行其他类型的运算。

五、实验结果与分析(一)实验结果1、加法运算:当输入操作数分别为 5 和 3 时,运算结果为 8,准确无误。

2、减法运算:输入 8 和 3,结果为 5,符合预期。

3、乘法运算:输入 2 和 4,得到结果 8,正确。

4、除法运算:输入 10 和 2,结果为 5,无差错。

5、逻辑运算:与运算:输入 1010 和 1100,结果为 1000。

或运算:输入 0101 和 1010,结果为 1111。

非运算:输入 1010,结果为 0101。

(二)结果分析通过对实验结果的观察和分析,可以得出以下结论:1、运算器能够准确地执行各种算术和逻辑运算,结果符合预期。

计算机寄存器实验报告

计算机寄存器实验报告

一、实验目的1. 理解计算机寄存器的概念、作用和分类;2. 掌握寄存器在计算机系统中的基本操作;3. 熟悉寄存器的控制信号及其工作原理;4. 培养实验操作能力和分析问题能力。

二、实验环境1. 实验设备:计算机组成原理实验箱、计算机、Proteus仿真软件;2. 实验软件:Proteus仿真软件、模型机仿真软件;3. 实验环境:实验室。

三、实验内容1. 寄存器基本概念及分类;2. 寄存器操作实验;3. 寄存器控制信号实验;4. 寄存器在计算机系统中的应用实验。

四、实验步骤1. 寄存器基本概念及分类实验(1)打开Proteus仿真软件,创建一个新的项目;(2)在项目中选择计算机组成原理实验箱中的寄存器模块;(3)观察寄存器的结构,了解寄存器的分类(如累加器、寄存器组、地址寄存器等);(4)总结寄存器的作用,如暂存数据、控制指令等。

2. 寄存器操作实验(1)在Proteus仿真软件中,搭建一个简单的寄存器操作电路;(2)设置输入数据,观察寄存器的输出;(3)通过改变输入数据,验证寄存器的存储功能;(4)总结寄存器操作的基本步骤。

3. 寄存器控制信号实验(1)在Proteus仿真软件中,搭建一个包含控制信号的寄存器电路;(2)观察控制信号对寄存器操作的影响;(3)通过改变控制信号,验证寄存器的读写功能;(4)总结寄存器控制信号的作用和意义。

4. 寄存器在计算机系统中的应用实验(1)在Proteus仿真软件中,搭建一个简单的计算机系统电路;(2)观察寄存器在计算机系统中的操作过程;(3)分析寄存器在计算机系统中的作用,如数据暂存、指令控制等;(4)总结寄存器在计算机系统中的应用。

五、实验结果与分析1. 通过实验,掌握了寄存器的基本概念、作用和分类;2. 熟悉了寄存器的操作过程,包括输入、输出、读写等;3. 了解寄存器控制信号的作用,以及它们对寄存器操作的影响;4. 分析了寄存器在计算机系统中的应用,如数据暂存、指令控制等。

寄存器的多功能性能实验

寄存器的多功能性能实验

寄存器的多功能性能实验寄存器是计算机中非常重要的组成部分,它们具有多种功能,能够满足不同的需求。

本文将对寄存器的多功能性能进行实验探究,通过实验结果来验证其功能和性能。

一、引言在计算机系统中,寄存器是一种数据存储器件,用于存储指令、数据和地址等信息。

寄存器具有快速读写速度和存储容量有限等特点,但同时也具备多种功能。

本次实验将通过具体的测试来了解和验证寄存器的多种功能。

二、寄存器的存储功能实验1. 实验目的通过本次实验,我们将了解寄存器的存储功能,并验证其存储容量与读写速度。

2. 实验步骤(1)选择一块适用的寄存器芯片,并准备连接线路。

(2)编写测试程序,在寄存器中存储一定数量的数据。

(3)观察并记录存储数据的过程,包括写入时间和写入结果。

(4)使用读取操作读取寄存器中的数据,并记录读出时间和读出结果。

3. 实验结果经过实验测试,我们得到了以下结果:(1)写入时间:在一定数据量条件下,寄存器的写入时间基本稳定,能够实时完成数据写入。

(2)写入结果:寄存器按照设定的地址顺序存储数据,写入准确无误。

(3)读取时间:寄存器的读取操作非常迅速,几乎可以实时返回读取结果。

(4)读取结果:通过读取操作,我们能够准确读取到寄存器中存储的数据。

4. 结论通过上述实验,我们验证了寄存器的存储功能,能够按照指定地址存储和读取数据,并具备较快的读写速度。

三、寄存器的状态存储功能实验1. 实验目的通过本次实验,我们将了解寄存器的状态存储功能,并验证其能够保存和传递计算结果。

2. 实验步骤(1)选择适合的寄存器,并准备相应的测试电路。

(2)编写测试程序,将计算结果存储到寄存器中。

(3)观察并记录存储数据的过程,包括写入时间和写入结果。

(4)通过其他计算操作,读取寄存器中的数据,并验证结果的准确性。

3. 实验结果经过实验测试,我们得到了以下结果:(1)写入时间:寄存器的写入时间非常短,几乎可以忽略不计。

(2)写入结果:寄存器能够准确地存储计算结果,并能够在读取时传递给其他部件使用。

ALU实验报告

ALU实验报告

算术逻辑单元实验报告一、实验目的1、掌握运算器的工作原理。

2、验证运算器的功能。

二、实验原理算术逻辑单元的主要功能是对二进制数据进行定点算术运算、逻辑运算和各种移位操作。

算术运算包括定点加减乘除运算;逻辑运算主要有逻辑与、逻辑或、逻辑异或和逻辑非操作。

ALU通常有两个数据输入端A和B,一个数据输出端Y 以及标志位等。

三、实验要求1、实验设计目标设计一个16位算术逻辑单元,满足以下要求。

(1)16位算术逻辑单元能够进行下列运算:加法、减法、加1、减1、与、或、非和传送。

用3位运算操作码OP[2..0]进行运算,控制方式如下表所示。

(2)设立两个标志寄存器Z和C。

当复位信号reset为低电平时,将这两个标志寄存器清零。

当运算结束后,在时钟clk的上升沿改变标志寄存器Z和C的值。

运算结果改变标志寄存器C、Z的情况如下:加法、减法、加1、减1运算改变Z、C;与、或、非运算改变Z,C保不变;传送操作保持Z、C不变。

因此在运算结束Z、C需要两个D触发器保存。

(3)为了保存操作数A和B,设计两个16位寄存器A和B。

当寄存器选择信号sel=0时,如果允许写信号write=1.,则在诗中clk的上升沿将数据输入dinput送入A 寄存器;当寄存器选择信号sel=1时,如果允许写信号write=1.,则在诗中clk的上升沿将数据输入dinput送入B寄存器。

(4)算术逻辑单元用一个设计实体完成。

2.顶层设计实体的引脚要求(1)clk对应试验台上的时钟(单脉冲)。

(2)reset对应实验台上的CPU复位信号CPU-RST。

(3)数据输入dinput对应试验台开关SD15~SD0。

(4)允许写信号write对应试验台开关SA5.(5)OP[2..0]对应试验台开关SA2~SA0.(6)寄存器选择信号sel对应试验台开关SA4.(7)16为运算结果result对应实验台上的指示灯A15~A0.(8)Z、C标志位对应试验台上的Z、C指示灯。

寄存器实验实验报告

寄存器实验实验报告

寄存器实验实验报告寄存器实验实验报告一、引言寄存器是计算机中一种重要的数据存储器件,用于暂时存储和传输数据。

在计算机系统中,寄存器扮演着关键的角色,能够提高计算机的运算速度和效率。

本实验旨在通过实际操作,深入了解寄存器的工作原理和应用。

二、实验目的1. 理解寄存器的概念和作用;2. 掌握寄存器的基本操作方法;3. 学习寄存器在计算机系统中的应用。

三、实验器材和方法1. 实验器材:计算机、开发板、示波器等;2. 实验方法:通过编程控制,利用开发板上的寄存器进行数据存储和传输。

四、实验步骤1. 连接开发板和计算机,并进行相应的驱动安装;2. 打开开发板的开发环境,编写程序代码;3. 设置寄存器的初始值,并将数据存入寄存器;4. 通过编程控制,将寄存器中的数据传输到其他设备或存储器;5. 进行数据读取和验证,确保寄存器的正常工作。

五、实验结果与分析经过实验,我们成功地使用寄存器进行了数据存储和传输,并通过读取数据进行了验证。

寄存器在计算机系统中起到了至关重要的作用,它可以快速暂存数据,提高计算机的运算效率。

在实际应用中,寄存器广泛用于存储指令、地址和数据等信息。

六、实验总结通过本次实验,我们深入了解了寄存器的工作原理和应用。

寄存器作为计算机系统中的重要组成部分,对于提高计算机的运算速度和效率起到了关键的作用。

掌握寄存器的基本操作方法,对于编程和计算机系统的理解都具有重要意义。

在今后的学习和工作中,我们将继续深入研究寄存器的相关知识,不断提升自己的技术水平。

七、参考文献[1] 计算机原理与接口技术. 李春葆, 刘燕, 张洪岩. 清华大学出版社, 2019.[2] 计算机组成与设计:硬件/软件接口. David A. Patterson, John L. Hennessy. 机械工业出版社, 2016.以上就是本次寄存器实验的实验报告,通过实际操作和实验结果的分析,我们对寄存器的工作原理和应用有了更深入的了解。

二进制计算机采用的主要逻辑元件

二进制计算机采用的主要逻辑元件

主题:二进制计算机的主要逻辑元件一、概述二进制计算机是当今世界上最广泛使用的计算机系统。

它们采用二进制系统来表示和处理数据和指令。

在二进制计算机中,存在着一些主要的逻辑元件,它们在计算机的运行中起着至关重要的作用。

二、主要逻辑元件1. 逻辑门逻辑门是构成计算机的基本逻辑元件。

它们能够执行基本的逻辑运算,如与、或、非等。

常见的逻辑门有与门、或门、非门等。

在计算机中,逻辑门被组合成各种复杂的逻辑电路,用来实现各种功能。

2. 寄存器寄存器是一种用来存储数据的元件。

在计算机中,寄存器通常用来存储临时数据、位置区域或指令。

寄存器的大小通常是以位(bit)来表示的,如8位寄存器、16位寄存器等。

3. 存储器存储器是计算机中用来存储数据和指令的元件。

存储器分为内存和外存,内存通常指的是随机存取存储器(RAM),它用来存储正在运行的程序和数据;外存通常指的是磁盘或固态硬盘,它用来存储长期的数据和程序。

4. ALU(算术逻辑单元)ALU是计算机中用来执行算术和逻辑运算的部件。

它能够执行加、减、乘、除等算术运算,也能够执行与、或、非等逻辑运算。

5. 控制单元控制单元是计算机中用来控制指令执行顺序的部件。

它能够从存储器中取出指令,解码指令,并且控制各个部件的工作。

6. 时钟时钟是计算机中用来同步各个部件工作的部件。

它能够在一个固定的时间间隔内发出脉冲信号,使得各个部件按照统一的节拍工作。

7. 数据总线数据总线是计算机中用来传输数据的通道。

它能够同时传输多位数据,如8位、16位、32位等。

8. 位置区域总线位置区域总线是计算机中用来传输位置区域信息的通道。

它能够指示存储器中的特定位置。

9. 控制总线控制总线是计算机中用来传输控制信号的通道。

它能够传输各种控制信号,如读写信号、中断信号等。

三、总结二进制计算机中的主要逻辑元件包括逻辑门、寄存器、存储器、ALU、控制单元、时钟、数据总线、位置区域总线和控制总线。

它们共同构成了计算机的基本操作和功能。

计组实验报告

计组实验报告

计算机组成原理实验报告实验一寄存器组成实验一、实验目的(1)熟悉D触发器的功能及使用方法。

(2)掌握寄存器文件的逻辑组成及使用方法。

二、实验内容(1)掌握Quartus II的使用方法,能够进行数字电路的设计及仿真。

(2)验证Quartus II所提供D触发器的功能及使用方法。

(3)设计具有1个读端口、1个写端口的寄存器文件,并进行存取操作仿真/验证。

三、实验原理及方案Quartus II提供了多种类型的触发器模块,如D触发器、T触发器等。

固定特性的触发器模块有不同的型号,参数化的触发器模块有lpm_ff、lpm_dff、lpm_tff等。

D触发器常来构建寄存器。

本次实验我们用Quartus II中提供的8为D触发器模块,实现了一个8×8bits 的寄存器组,因此,操作地址均为3位,数据均为8位。

由于要求读写端口分离,因此,读操作的相关引脚有地址raddr[2..0]、数据输出q[7..0],写操作的相关引脚有地址waddr[2..0]、数据输入data[7..0]、写使能wen。

其中,省略读使能信号可以简化控制,即数据输出不受限制。

寄存器文件通过写地址waddr[2..0]、写使能wen信号来实现触发器的写入控制,通过读地址raddr[2..0]信号来控制触发器的数据输出选择。

其连接电路原理如图所示。

寄存器文件的组成则由此,可在Quartus II中连接原理图:四、实验结果仿真波形如下:五、小结通过此次实验,我们学会了Quartus II的原理图的构造方法,以及仿真方法,并且使用lpm_dff作为三态门,控制数据的输入,并且在输出时,用lpm_mux选择每个寄存器的数据输出。

最后,在本次实验中,我们重新巩固了课堂学习的内容,也对寄存器加深了了解,相信我们会通过实验在计组的学习道路上越走越远。

实验二运算器组成实验一、实验目的(1)熟悉加/减法器的功能及使用方法。

(2)掌握算术逻辑部件(ALU)的功能及其逻辑组成。

计算机组成原理实验报告-寄存器实验

计算机组成原理实验报告-寄存器实验

千里之行,始于足下。

计算机组成原理实验报告-寄存器实验计算机组成原理实验报告-寄存器实验》一、实验目的本次实验旨在通过设计和实现一个基本的寄存器,加深对计算机组成原理中寄存器的理解,并掌握寄存器在计算机中的应用。

二、实验设备及软件1. 实验设备:计算机2. 实验软件:模拟器软件Mars3. 实验材料:电路图、线缆、元器件三、实验原理寄存器是计算机的一种重要组成部分,用于存储数据和指令。

一个基本的寄存器通常由一组触发器组成,可以存储多个位的信息。

本实验中,我们需要设计一个16位的寄存器。

四、实验步骤1. 确定寄存器的结构和位数:根据实验要求,我们需要设计一个16位的寄存器。

根据设计要求,选择合适的触发器和其他元器件。

2. 组装寄存器电路:根据电路图,将选择好的元器件按照电路图连接起来。

3. 连接电路与计算机:使用线缆将寄存器电路连接到计算机的相应接口上。

4. 编写程序:打开Mars模拟器软件,编写程序来测试寄存器的功能。

可以编写一段简单的程序,将数据写入寄存器并读取出来,以验证寄存器的正确性。

5. 运行程序并测试:将编写好的程序加载到Mars模拟器中,并运行程序,观察寄存器的输出和模拟器的运行结果。

第1页/共3页锲而不舍,金石可镂。

五、实验结果在本次实验中,我们成功设计和实现了一个16位的寄存器,并进行了相关测试。

经过多次测试,寄存器的功能和性能良好,能够准确地存储和读取数据。

六、实验心得通过本次实验,我对寄存器的结构和工作原理有了更深入的了解。

寄存器作为计算机的一种重要组成部分,起着存储和传输数据的作用。

通过实际操作和测试,我更加清楚了寄存器在计算机中的应用和重要性。

在实验过程中,我遇到了一些问题,如电路连接不稳定、程序错误等,但通过仔细检查和调试,最终解决了这些问题。

这次实验也让我深刻体会到了学习计算机组成原理的重要性,只有深入理解原理并通过实践运用,才能真正掌握计算机的工作原理和能力。

通过这个实验,我有了更深入的认识和理解,对计算机组成原理的学习也更加系统和完整。

寄存器实验实验报告

寄存器实验实验报告

寄存器实验实验报告一. 引言寄存器是计算机中重要的数据存储器件之一,用于存储和传输数据。

通过对寄存器进行实验,我们可以更好地理解寄存器的工作原理和应用。

本实验旨在通过设计和测试不同类型的寄存器,深入掌握寄存器的各种功能和操作。

二. 实验设计本实验设计了两个寄存器的实验,分别为移位寄存器和计数器寄存器。

1. 移位寄存器实验移位寄存器是一种特殊的串行寄存器,它能够实现对数据位的移位操作。

本实验设计了一个4位的移位寄存器,分别使用D触发器和JK触发器实现。

实验步骤如下:1) 首先,根据设计要求将4个D或JK触发器连接成移位寄存器电路。

2) 确定输入和输出端口,将输入数据连接到移位寄存器的输入端口。

3) 设计测试用例,输入测试数据并观察输出结果。

4) 分析实验结果,比较不同触发器类型的移位寄存器的性能差异。

2. 计数器寄存器实验计数器寄存器是一种能够实现计数功能的寄存器。

本实验设计了一个二进制计数器,使用T触发器实现。

实验步骤如下:1) 根据设计要求将多个T触发器连接成二进制计数器电路。

2) 设计测试用例,输入计数开始值,并观察输出结果。

3) 测试计数的溢出和循环功能,观察计数器的行为。

4) 分析实验结果,比较不同计数器位数的性能差异。

三. 实验结果与分析在实验过程中,我们完成了移位寄存器和计数器寄存器的设计和测试。

通过观察实验结果,可以得出以下结论:1. 移位寄存器实验中,无论是使用D触发器还是JK触发器,移位寄存器都能够正确地实现数据位的移位操作。

而使用JK触发器的移位寄存器在性能上更加优越,能够实现更复杂的数据操作。

2. 计数器寄存器实验中,二进制计数器能够准确地实现计数功能。

通过设计不同位数的计数器,我们发现位数越多,计数范围越大。

综上所述,寄存器是计算机中重要的存储器件,通过实验我们深入了解了寄存器的工作原理和应用。

移位寄存器和计数器寄存器都具有广泛的应用领域,在数字电路设计和计算机系统中起到了重要作用。

寄存器实验报告

寄存器实验报告

一、实验目的1. 理解寄存器在计算机系统中的作用和重要性。

2. 掌握通用寄存器组的设计方法和应用。

3. 通过实验,加深对寄存器读写操作的理解。

二、实验原理寄存器是计算机中用于临时存储数据和指令的存储单元,它具有数据存取速度快、容量小、易于控制等特点。

在计算机系统中,寄存器用于存放指令、数据、地址等,是CPU执行指令的重要基础。

三、实验内容1. 通用寄存器组实验(1)实验目的:了解通用寄存器组的用途、结构和工作原理。

(2)实验内容:- 观察通用寄存器组(如AX、BX、CX、DX等)的内部结构;- 学习寄存器读写操作的基本指令(如MOV、ADD、SUB等);- 通过编程,实现寄存器之间的数据交换和运算。

(3)实验步骤:- 使用C语言编写程序,实现寄存器之间的数据交换和运算;- 在计算机上编译并运行程序,观察实验结果。

2. 移位寄存器实验(1)实验目的:了解移位寄存器的结构、工作原理和应用。

(2)实验内容:- 观察移位寄存器(如74LS194)的内部结构;- 学习移位操作指令(如SHL、SHR等);- 通过编程,实现数据的串行/并行转换和构成环形计数器。

(3)实验步骤:- 使用C语言编写程序,实现数据的串行/并行转换和构成环形计数器;- 在计算机上编译并运行程序,观察实验结果。

3. 寄存器仿真实验(1)实验目的:通过仿真软件,加深对寄存器读写操作的理解。

(2)实验内容:- 使用Proteus仿真软件,搭建寄存器实验电路;- 观察寄存器读写操作时,内部信号的变化;- 分析实验结果,验证寄存器读写操作的正确性。

(3)实验步骤:- 在Proteus软件中搭建寄存器实验电路;- 编写测试程序,观察寄存器读写操作时,内部信号的变化;- 分析实验结果,验证寄存器读写操作的正确性。

四、实验结果与分析1. 通用寄存器组实验通过实验,我们了解了通用寄存器组的结构和工作原理,掌握了寄存器读写操作的基本指令。

实验结果表明,寄存器读写操作可以有效地提高程序执行速度。

寄存器的使用实验报告

寄存器的使用实验报告

一、实验目的1. 理解寄存器的概念和功能。

2. 掌握寄存器的使用方法和操作步骤。

3. 熟悉寄存器在实际应用中的重要作用。

4. 通过实验加深对寄存器原理的理解。

二、实验原理寄存器是一种用于存储和传输数据的基本电子元件,它由触发器组成,具有存储、读取、传输等基本功能。

寄存器在数字电路和计算机系统中起着至关重要的作用,广泛应用于数据处理、指令执行、地址寻址、数据传输等方面。

寄存器按功能可分为以下几种类型:1. 数据寄存器:用于暂存数据,如累加器、数据寄存器等。

2. 地址寄存器:用于存储指令或数据的地址,如程序计数器、基地址寄存器等。

3. 控制寄存器:用于存储控制信息,如指令寄存器、状态寄存器等。

4. 程序状态字寄存器:用于存储程序运行状态,如标志寄存器等。

本实验主要涉及数据寄存器的使用。

三、实验设备与器件1. 实验箱2. 74LS74 D触发器3. 74LS153 3-8译码器4. 74LS74 4位双向移位寄存器5. 74LS02 与非门6. 74LS08 与门7. 电源8. 接线端子9. 逻辑测试仪四、实验内容与步骤1. 实验一:数据寄存器的读写操作(1)搭建实验电路:根据实验原理图,连接74LS74 D触发器、74LS153 3-8译码器、74LS74 4位双向移位寄存器、74LS02 与非门、74LS08 与门等器件。

(2)设置初始状态:将74LS74 D触发器的Q端连接到74LS74 4位双向移位寄存器的并行输入端,将74LS153 3-8译码器的输出端连接到74LS74 4位双向移位寄存器的并行输出端。

(3)编写测试程序:编写程序,对74LS74 D触发器进行初始化,使数据寄存器中的数据为0。

(4)执行测试程序:运行测试程序,观察数据寄存器的读写操作是否正确。

2. 实验二:数据寄存器的移位操作(1)搭建实验电路:根据实验原理图,连接74LS74 D触发器、74LS74 4位双向移位寄存器、74LS02 与非门、74LS08 与门等器件。

寄存器实验报告

寄存器实验报告

寄存器实验报告实验目的:本实验旨在通过对寄存器的学习和实验操作,了解寄存器的基本概念、功能以及应用。

实验设备:1. 计算机2. 开发板3. 指示灯4. 连接线实验步骤:一、寄存器简介寄存器是计算机中的一种重要的存储器件,用于存储和传送数据。

它采用二进制编码进行操作,并且能够以不同的形式存在于各种计算机中。

寄存器通常由多个触发器级联实现,其中每个触发器能够存储一个二进制位。

根据其功能和结构的不同,寄存器可以分为通用寄存器、特殊功能寄存器等。

二、实验设备连接1. 将开发板与计算机通过连接线进行连接。

2. 将指示灯插入开发板上的相应引脚。

三、数据输入与显示1. 在计算机上编写相应的程序,通过控制寄存器将数据输入到开发板中。

2. 通过观察指示灯的状态,验证数据是否被正确地存储到寄存器中。

3. 修改输入的数据,观察指示灯是否能正确反映修改后的数据。

四、数据传送与处理1. 编写程序,将寄存器中的数据传送到其他相关设备中。

2. 通过观察设备的工作状态,验证数据是否能正确地传送和处理。

五、寄存器的运算1. 编写程序,对寄存器中的数据进行相应的运算操作,如加法、减法等。

2. 通过观察计算结果的正确性,验证寄存器的运算功能是否正常。

六、数据存储与读取1. 编写程序,将计算结果存储到寄存器中。

2. 通过读取寄存器中的数据,验证存储功能是否正常。

实验结果与分析:通过以上实验操作,我们成功地对寄存器的功能和应用进行了探究和验证。

通过数据的输入、传输、运算和存储等操作,我们可以清楚地认识到寄存器在计算机中的作用和重要性。

同时,我们也发现了寄存器在数据存储和传送过程中的高效性和可靠性。

结论:寄存器作为计算机中的重要存储器件,在数据的存储和传送方面发挥着重要的作用。

通过本次实验,我们对寄存器的基本概念、功能和运作原理有了深入的了解。

通过学习和实践,我们进一步增强了对计算机硬件和数据处理的认识,为今后的学习和研究打下了坚实的基础。

实验二-算术逻辑单元实验

实验二-算术逻辑单元实验

实验二算术逻辑单元(ALU)的设计与实现实验目的1.认识算术逻辑单元的功能及意义2.掌握算术逻辑单元的结构与实现3.进一步熟练Modelsim、Vivado软件和Verilog硬件描述语言的使用4.理解Digilent N4 DDR FPGA开发板上数码管显示原理实验原理1.ALU算术逻辑单元(Arithmetic/Logic Unit , ALU)是现代计算机的核心部件之一。

其内部由算术和逻辑操作部件组合而成,可以实现整数加、减等算术运算和与、或等逻辑运算。

一个典型的算术逻辑单元由两路N位输入、一路N位输出、一组功能选择信号和一些标志位(flag)组成。

两路N位输入数据作为参与运算的两个操作数,输入到ALU中,通过改变功能选择信号,控制ALU对两操作数进行不同的算术或逻辑运算操作,并将N位的结果输出,与结果一同输出的还有运算产生的标志位,例如运算结果为零的标记信号Z(zero)与运算结果溢出的标记信号O(over)、进位标志C(CY)、符号位S(SF)等,如图2-1所示。

图2- 1ALU模块示意图在本次实验中,我们把输入和输出的数据长度定为4位,数据输入命名为A、B,数据输出为F,功能控制信号输入为opcode,进位输入为C n,只产生结果为零的zero标志位。

功能控制信号opcode的定义如表2-1所示。

例如:opcode=0001,运算器实现加法运算。

2.数码管显示关于N4 DDR开发板上数码管的显示原理,参见前面的实验准备部分内容。

实验内容1.基础实验。

用实验调试软件验证ALU的功能,并操作分析、记录结果。

图2- 2 ALU虚拟实验示意图(1)运算功能和控制信号①输入输出对于的开关指示灯分配如下:输入信号A:SW(4-7) B:SW(3-0) Cn:SW8 opcode:SW(12-9)输出信号F:LD(12-15) 标志位S :LD(3) Z LD(2) O: LD(1) C: LD(0)②各种运算对应的控制信号及功能,如下表。

实验2运算器ALU实验

实验2运算器ALU实验

实验2 运算器ALU实验运算器ALU是CPU的主要部件,数据处理的中心。

ALU可以实现算术加减运算和逻辑“与”、“或”、“非”运算,本实验设计8位ALU,为完成8为ALU,我们从1位全加器设计开始,经1位加法器,4位加法器,4位加减法器,到4位算术逻辑运算器ALU;再由4位ALU到8位ALU。

2.1 1位加法器设计1位加法器是构成多位加法器的基础,通过1位加法器可以组成4位加法器,4位减法器。

因此,本实验首先从1位全加器开始。

2.1.1 实验题目1位全加器。

2.1.2 实验内容设计1位全加器,并通过输入波形图验证。

2.1.3 实验目的与要求通过本实验使学生进一步掌握电子电路的设计方法,熟悉CAD软件QuartusII的使用,掌握使用QuartusII仿真来验证电路设计正确性的方法。

2.1.4 实验步骤设置本实验的项目所在路径,命名项目的名称为1ALU,顶层文件的名称也自动命名为1ALU。

如在文件夹C:\eda\ALU下新建工程1ALU,如图2-1 新建工程1ALU所示。

图2-1 新建工程1ALU直接点击next,直到器件选择对话框,如图2-2所示。

这里根据最终使用的FPGA器件选择一种器件,如Cyclone下的EP1C3T144C8,如果不下载到FPGA上进行实验,选择哪一种器件都无所谓。

图2-2 实现器件选择指定设计、仿真和时序验证工具,如图2-3所示,点击next,完成工程建立。

图2-3 工具选择设计1位全加器FA1位全加器是指可以实现两个1位二进制数和低位进位的加法运算逻辑电路(半加器不包括低位进位C i-1)。

它依据的逻辑表达式是:进位C i=A i B i+A i C i-1+B i C i-1,和S i=A i⊕B i⊕C i-1(本算式推导过程可以在教材中找到)。

其中A i和B i是两个1位二进制数,C i代表向高位的进位,C i-1代表低位来的进位,S i代表本位和。

依据上述逻辑表达式,设计实现1位全加的电路图。

实验二通用寄存器单元实验

实验二通用寄存器单元实验

实验二通用寄存器单元实验2014.4.29班级12级物联网工程(1)班学号姓名【实验目的】1.了解通用寄存器的组成和硬件电路。

2.利用通用寄存器实现数据的置数、左移、右移等功能。

【实验要求】1.按照实验步骤完成实验项目,实现通用寄存器移位操作。

2.了解通用寄存器单元的工作原理运用。

【实验过程】实验2.1 数据输入通用寄存器(1).把RA-IN(8芯的盒型插座)与CPT-B板上的二进制开关单元中J01插座相连(对应二进制开关H16~H23),把RA-OUT(8芯的盒型插座)与数据总线上的DJ6相连。

(2).把RACK连到脉冲单元的PLS1,把ERA、X0、X1、RA-O、M接入二进制拨动开关。

(请按下表接线)。

(3).二进制开关H16~H23作为数据输入,置42H(对应开关如下表)。

置各控制信号如下:(4).按启停单元中的运行按钮,置平台为运行状态。

(5).按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,把42H打入通用寄存器。

(6).此时数据总线上的指示灯IDB0~IDB7 应该显示为42H。

由于通用寄存器内容不为0,所以LED(ZD)灯灭。

实验2.2 寄存器内容无进位位左移实验(1)按照实验1数据输入的方法把数据42H打入通用寄存器中,数据总线上显示42H。

(2)实现左移功能,置各控制信号如下:(3)按启停单元中的运行按钮,置实验平台为运行状态。

(4)按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,使通用寄存器中的值左移。

(5)此时数据总线上的LED指示灯IDB0~IDB7 应该显示为84H。

由于通用寄存器内容不为0,所以ZD(LED)灯灭。

(6)按脉冲单元中的PLS1脉冲按键,使通用寄存器中的值左移,此时数据总线上的LED指示灯IDB0~IDB7应该显示为09H。

若一直按PLS1,在总线上将看见数据循环左移的现象。

实验2.3 寄存器内容无进位位右移实验(1)按照实验1数据输入的方法把数据42H打入通用寄存器中,数据总线上显示42H。

ALU实验报告

ALU实验报告

算术逻辑部件ALU实验报告一、实验目的(1)熟悉硬件描述语言及开发环境,了解硬件系统开发的基本过程。

(2)掌握 ALU基本设计方法和简单运算器的数据传送通路。

(3)验证 ALU的功能。

二、实验环境( 1)硬件环境:安装有 Windows7 或以上操作系统的PC,THINPAD教学计算机。

( 2)软件开发: FPGA开发工具软件 Xilinx ISE 12.3或以上。

三、实验内容(1)根据实验原理中的要求,用 VHDL语言实现一个简单的 ALU。

(2)在教学计算机 THINPAD上验证实现的 ALU的功能。

四、实验原理算术逻辑部件 ALU的主要功能是对二进制数据进行定点算术运算、逻辑运算和各种移位操作等。

算术运算包括定点加减乘除运算,逻辑运算主要用逻辑与、逻辑或、逻辑异或和逻辑非等操作。

ALU通常有两个数据输入端A 和B 输出操作数,一个数据输出端Y 以及标志位输出结果,通过输入操作码op 来确定所要进行的操作,本实验通过实现一个状态机,根据状态机状态的变化来输人操作数及操作码,并最终实现不同的运算,将结果和标志位呈现出来。

本实验中的 ALU要求实现基本的算术运算、逻辑运算、移位运算等,具体功能如下:操作码功能描述ADD A+B加法SUB A-B减法AND A and B与OR A or B或XOR A xor B异或NOT not A取非SLL A sll B逻辑左移 B 位SRL A srl B逻辑右移 B 位SRA A sra B算术右移 B 位ROL A rol B循环左移 B 位ALU的输入数据为 16 位,操作码 op 为 4 位,算术运算时数据用补码表示。

五、实验步骤本实验通过 VHDL语言实现一个比较简单的ALU模块。

(1)用 VHDL语言编写 ALU 功能代码,并用状态机对其进行控制,使其完成实验要求的操作。

操作码和操作数的输入用微型开关 SW0~SW15,计算结果的输出用数字机上的 LED灯来展示。

实验2 ALU 实验要求

实验2 ALU 实验要求

实验2 n位ALU的设计与VHDL实现《计算机组成原理》课程(一)实验类型:简单设计,在理解的基础上修改设计(二)实验类别:基础实验(三)实验学时数:2学时(四)实验目的在加法器的基础上,设计一个简单的ALU,能执行简单的n位(如n=6、7或8)算术/逻辑运算,并实现一些基本的PSW标志位。

(五)实验内容设计一个具有8种操作的ALU,其中逻辑运算和算术运算各4种,并测试其结果。

(六)实验要求(1)按照实验要求设计简单ALU,能执行8种操作,分别为:1)加、减、增1、减1等4种n位算术运算;2)与、或、非、异或等4种n位逻辑运算。

参照教材设计ALU的思路,用一位M 作为进行算术运算或逻辑运算的控制位,M=0 时进行算术运算,M=1 时进行逻辑运算。

另外用2位控制变量来表示4种操作。

(2)实现一些基本的PSW标志位:1)进位/借位的输出标志位C;2) 运算结果为零的输出标志位Z;3) 运算结果为溢出的输出标志位V;4) 运算结果为负数的输出标志位N。

(3)加减必须用最基本的1位全加器fa作为基础,可以采用直接由n次1位运算得到n 位的操作。

当n=8时,可以先构造4位加法器,再进一步实现8位加减运算。

注意:算术运算的两个操作数要求都是带符号数,即1位符号位和n-1位数据位。

(4)在实验平台上实现并测试其正确性。

首先构造实验用例,然后自己用笔算结果,接着再对比试验平台上的实验结果,看两者是否吻合。

(七)实验设备TEC-CA组成原理实验箱。

(八)实验课承担单位:信息学院计算机科学与技术系(九)实验步骤建议为便于大家抓住实验设计的思路,掌握基于VHDL设计的方法,对上述的实验内容,建议采用下列的实验步骤。

这实质上就是一种系统设计的思路和方法,也是自顶向下系统设计的常用技巧,不论是软件还是硬件工程都是类似的。

具体如下。

1. 要完成上述的实验,在理解实验所需功能的基础上,画出ALU的方框图,即画出其输入和输出引脚,并标注输入输出引脚的位数;2. 用VHDL实体描述语句对ALU的输入和输出引脚进行描述;3. 考虑ALU的功能的具体实现,利用VHDL的结构体来实现。

计算机组成原理通用寄存器实验

计算机组成原理通用寄存器实验
) LDR0=0 LDR1=1 LDR2=0
LDR1 是寄存器 R1 的控制端, 此时 LDR1 的灯亮,表明要将 数据总线上的数据送到寄存 器 R1 中,按单步键后,寄存 器组的 R1 位置显示数据开
关输入的数据 80
2、通用寄存器的读出
置 CBA=100,由表 7-2-1 知,数据总线单元显示 R0 中的数据,CBA=101 时,数据总线单元 显示 R1 中的数据,CBA=110 时,数据总线单元显示 R2 中的数据是随机的,因为之前并未 向 R2 中置数
指令寄存器、指令择码器、微代码控制寄存器及其 26 位二进制控制模拟开关、逻辑译码单元、时序电路、 启停电路、单脉冲电路、脉冲源、中断控制 SRAM6116 开关、显示灯、8 位 LED 显示、16 个数字键、16 个命 令键,每个部件都有双位显示器 2 路逻辑信号 PC 示波器、信号测试 控制单片机、MACH、RS-232-C 串口等 高性能开关电源、输出为+5V/3A 2 个 IC-40/28 芯通用型锁紧式扩展插座 2 个 PLCC 扩展方插座
线
寄存器 R0 (00000001) LDR0=1 LDR1=0 LDR2=0
LDR0 是寄存器 R0 的控制 端,此时 LDR0 的灯亮, 表明要将数据总线上的 数据送到寄存器 R0 中, 按单步键后,寄存器组 的 R0 位置显示数据开关
输入的数据 01
数据开关 (10000000) 在缓冲输入 单元拨动数 据开关,相应 的灯亮,向相 应单元置入 此数据,数据 总线显示输 入的数据 80
图案的插孔(注:Dais-CMH 的时钟信号已作内部连接)。
四、实验内容及结果分析
(一)通用寄存器的写入 拨动二进制数据开关向 R0 和 R1 寄存器置数,具体操作步骤如下:
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验二寄存器(二)+ALU
2.1寄存器(二)实验
(MAR地址寄存器,ST 堆栈寄存器,OUT输出寄存器)
一.原理图
1. MAR地址寄存器
2. ST 堆栈寄存器
3. OUT输出寄存器
二.连接线表
三.写寄存器
1.将12H写入MAR寄存器
步骤:
(1)二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据12H
(2) 置控制信号为:
按住STEP脉冲键,CK由高变低,这时寄存器MAR的黄色选择指示灯亮,表明选择MAR寄存器。

放开STEP键,CK由低变高,产生一个上升沿,数据12H被写入MAR寄存器。

K14(MAROE)为0,MAR寄存器中的地址输出,MAR 红色输出指示灯亮。

将K14(MAROE)置为1,关闭MAR输出。

2. 将34H写入ST寄存器
步骤:
(1)二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据34H
(2)置控制信号为:
按住STEP 脉冲键,CK 由高变低,这时寄存器ST 的黄色选择指示灯亮,表明选择ST 寄存器。

放开STEP键,CK由低变高,产生一个上升沿,数据34H被写入ST 寄存器。

3. 将56H写入OUT寄存器
步骤:
(1)二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据56H
(2)置控制信号为:
按住STEP 脉冲键,CK 由高变低,这时寄存器OUT 的黄色选择指示灯亮,表明选择OUT 寄存器。

放开STEP 键,CK 由低变高,产生一个上升沿,数据56H 被写入OUT寄存器。

2.2 运算器实验
实验要求:利用CPTH 实验仪的K16..K23 开关做为DBUS 数据,其它开关做为控制信号,将数据写累加器A和工作寄存器W,并用开关控制ALU的运算方式,实现运算器的功能。

实验目的:了解模型机中算术、逻辑运算单元的控制方法。

实验电路:CPTH 中的运算器由一片CPLD实现,有8 种运算,通过S2,S1,S0 来选择,运算数据由寄存器A及寄存器W 给出,运算结果输出到直通门D。

一.功能描述
二.连接线表
三.实验流程
1. 将55H写入A寄存器
步骤:
(1)二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据55H
(2)置控制信号为:
按住STEP脉冲键,CK由高变低,这时寄存器A的黄色选择指示灯亮,表明选择A寄存器。

放开STEP键,CK由低变高,产生一个上升沿,数据55H被写入A寄存器。

2. 将33H写入W寄存器
步骤:
(1)二进制开关K23-K16用于DBUS[7:0]的数据输入,置数据33H
(2)置控制信号为:
按住STEP脉冲键,CK由高变低,这时寄存器W 的黄色选择指示灯亮,表明选择W 寄存器。

放开STEP 键,CK 由低变高,产生一个上升沿,数据33H 被写入W 寄存器。

3. 置下表的控制信号,检验运算器的运算结果
注意观察:
运算器在加上控制信号及数据(A,W)后,立刻给出结果,不须时钟。

相关文档
最新文档