译码器实验报告记录

译码器实验报告记录
译码器实验报告记录

译码器实验报告记录

————————————————————————————————作者:————————————————————————————————日期:

深圳大学实验报告

实验课程名称:数字电路实验

实验项目名称:译码器

学院:信息工程学院

报告人:许泽鑫学号:2015130091 班级:2班同组人:

指导教师:张志朋老师

实验时间:2016-10-11

实验报告提交时间:2016-10-25

一、实验目的

1.了解和正确使用MSI组合逻辑部件;

2.掌握一般组合逻辑电路的特点及分析、设计方法;

3. 学会对所设计的电路进行逻辑测试的方法;

4. 观察组合逻辑电路的竞争冒险现象。

二、方法、步骤

1.实验仪器及材料

1. RXB-1B数字电路实验箱

2.器件

74LS00 四2输入与非门

74LS20 双4输入与非门

74LS138 3线—8线译码器

2.预习要求

(1)复习组合逻辑电路的分析与设计方法;

(2)根据任务要求设计电路,并拟定试验方法;

(3)熟悉所用芯片的逻辑功能、引脚功能和参数;

(4)了解组合逻辑电路中竞争冒险现象产生的原因及消除方法。

3.说明

译码器是组合逻辑电路的一部分。所谓译码就是不代码的特定含义“翻译”出来的过程,而实现译码操作的电路称为译码器。译码器分成三类:1.二进制译码器:把二进制代码的各种状态,按照其原意翻译成对应输出信号的电路。如中规模2线—4线译码器74LS139,3线—8线译码器74LS138等。

2.二—十进制译码器:把输入BCC码的十个代码译成十个高、低电平信号。

3.字符显示译码器:把数字、文字和符号的二进制编码翻译成人们习惯的形式并直观地显示出来的电路,如共阴极数码管译码驱动的74LS48(74LS248),共阳极数码管译码驱动的74LS49(74LS249)等。

三、实验任务、步骤

任务一:测试3线—8线译码器74LS138逻辑功能

将一片3线—8线译码器74LS138插入RXB-1B 数字电路实验箱的IC 空插座中,按图3-15接线。A0、A1、A2、STA 、STB 、STC 端是输入端,分别接至数字电路实验箱的任意6个电平开关。Y7、Y6、Y5、Y4、Y3、Y2、Y1、Y0输出端,分别接至数字电路实验箱的电平显示器的任意8个发光二极管的插孔8号引脚地接至RXB —IB 型数字电路实验箱的电源“⊥”,16号引脚+5V 接至RXB-1B 数字电路实验箱的电源“+5V ”。按表3-2中输入值设置电平开关状态,观察发光二极管(简称LED )的状态,并将结果填入表中。

根据实验数据归纳出74LS138芯片的功能。

表3-2 3线-8线译码器74LS138功能表

输入

输出

使能

选择

0Y 1

Y 2Y 3Y 4Y 5Y 6Y 7Y

A ST C

B ST SA +

A2 A1 A0

X 1 0 X 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 X X X X X X 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

图3-15 3线-8线译码器74LS138接线图

任务二:用3线—8线译码器74LS138和门电路产生如下多输出逻辑函数

021A A Z =,Z 2=A 2A 1A 0+A 2A 1A 0+A 2A 1,Z 3=A 2A 1+A 2A 1A 0

1. 设计方法提示

按题意把函数Z1、Z2、Z3写成最小项形式,译码器的输出 0Y ,1Y , 2Y , 3Y ,4Y ,5Y ,6Y ,7Y 是最小项的反函数形式,在附加与非

门的配合下,函数1Z 就可用译码器的输出来表达。

2. 实验方法提示

1 )根据设计方法提示把Z1写成用译码器输出0Y ~7Y 表示的函数表达式;

2 ) 根据函数表达式画出电路接线图并接好线,其中输入变量A 2、A 1、A 0接至数字电路实验箱的任意3个电平开关的插孔,输出函数Z 1、Z 2和Z 3分别接至数字电路实验箱电平显示器的任意3个LED 。

3 )自行设计的表格,记录所设计的电路的真值表。

4 )通过真值表推出函数表达式,验证所设计电路的正确性。

四、数据处理分析

任务一:测试3线—8线译码器74LS138逻辑功能

表3-2 3线-8线译码器74LS138功能表

输入

输出

使能

选择

0Y 1

Y 2Y 3Y 4Y 5Y 6Y 7Y

A ST C

B ST SA + A2 A1 A0

X 1 0 X 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 X X X X X X 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 实验结果分析:

由三位二进制译码器真值表得实验中3线-8线译码器74LS138实现了逻辑功能。

根据实验数据归纳出74LS138芯片的功能为:

输入端高电平有效,输出端低电平有效。74LS138有三个使能端A ST 、B ST 、C ST ,其中,只有当A ST =1且C B ST SA + =0时,译码器工作,否则,译码功能

被禁止。

当A ST =1,C B ST SA + =0时,输出逻辑表达式为: 000120120M m A A A A A A Y ===++= 101201211M m A A A A A A Y ===++= 220120122M m A A A A A A Y ===++= 330102321M m A A A A A A Y ===++= 440120124M m A A A A A A Y ===++= 550120125M m A A A A A A Y ===++= 660120126M m A A A A A A Y ===++= 770201271M m A A A A A A Y ===++=

任务二:用3线—8线译码器74LS138和门电路产生如下多输出逻辑函数

A2 A1 A0

Z1 Z2 Z3

0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

0 0 1 0 1 1 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 1 1

经过验证,所设计电路正确,函数表达式无误。

五、实验结论

1、实验成功,根据实验数据归纳出74LS138芯片的功能为:

输入端高电平有效,输出端低电平有效。74LS138有三个使能端A ST 、B ST 、C ST ,其中,只有当A ST =1且C B ST SA =0时,译码器工作,否则,译码功能

被禁止。

2、所设计的电路符合逻辑函数,真值表正确。

指导教师批阅意见:

成绩评定:

指导教师签字:

年月日备注:

注:1、报告内的项目或内容设置,可根据实际情况加以调整和补充。

2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内。

单片机原理及接口技术实验报告

单片机原理及接口技术 实验报告 任课教师 班级 姓名 日期

实验一构建单片机最小系统和实验环境熟悉 一、单片机最小系统的组成原理图 二、单片机的工作原理: 1.运算器 运算器包括算术逻辑运算单元ALU、累加器ACC、寄存器B、暂存器TMP、程序状态字寄存器PSW、十进制调整电路等。它能实现数据的算术逻辑运算、位变量处理和数据传送操作。 (1)算术逻辑单元ALU ALU在控制器根据指令发出的内部信号控制下,对8位二进制数据进行加、减、乘、除运算和逻辑与、或、非、异或、清零等运算。它具有很强的判跳、转移、丰富的数据传送、提供存放中间结果以及常用数据寄存器的功能。MCS-51中位处理具有位处理功能,特别适

用于实时逻辑控制。 (2)累加器ACC 累加器ACC是8位寄存器,是最常用的专用寄存器,它既可存放操作数,又可存放运算的中间结果。MCS—51系列单片机中许多指令的操作数来自累加器ACC。累加器非常繁忙,在与外部存储器或I/O接口进行数据传送时,都要经过A来完成。 (3)寄存器B 寄存器B是8位寄存器,主要用于乘、除运算。乘法运算时,B中存放乘数,乘法操作后,高8位结果存于B寄存器中。除法运算时,B中存放除数,除法操作后,余数存于寄存器B中。寄存器B也可作为一般的寄存器用。 (4)程序状态字PSW 程序状态字是8位寄存器,用于指示程序运行状态信息。其中有些位是根据程序执行结果由硬件自动设置的,而有些位可由用户通过指令方法设定。PSW中各标志位名称及定义如下: CY():进(借)位标志位,也是位处理器的位累加器C。在加减运算中,若操作结果的最高位有进位或有借位时,CY由硬件自动置1,否则清“0”。在位操作中,CY作为位累加器C 使用,参于进行位传送、位与、位或等位操作。另外某些控制转移类指令也会影响CY位状态(第三章讨论)。 AC():辅助进(借)位标志位。在加减运算中,当操作结果的低四位向高四位进位或借位时此标志位由硬件自动置1,否则清“0”。 F0():用户标志位,由用户通过软件设定,决定程序的执行方式。 RS1(),RS0():寄存器组选择位。用于设定当前通用寄存器组的组,其对应关系如下:

译码器实验报告

译码器实验报告 一、实验目的 1、掌握中规模集成译码器的逻辑功能和使用方法 2、熟悉数码管的使用 二、实验原理 译码器是一个多输入、多输出的组合逻辑电路。它的作用是把给定的代码进行“翻译”,变成相应的状态,使输出通道中相应的一路有信号输出。译码器在数字系统中有广泛的用途,不仅用于代码的转换、终端的数字显示,还用于数据分配,存贮器寻址和组合控制信号等。不同的功能可选用不同种类的译码器。 译码器可分为通用译码器和显示译码器两大类。前者又分为变量译码器和代码变换译码器。 变量译码器(又称二进制译码器),用以表示输入变量的状态,如2线-4线、3线-8线和4线-16线译码器。若有n个输入变量,则有2n个不同的组合状态,就有2n个输出端供其使用。而每一个输出所

代表的函数对应于n个输入变量的最小项。 三、实验设备与器件 1.+5V直流电源 2.单次脉冲源 3.逻辑电平开关 4.74LS138 四、实验内容及步骤 1.74LS138译码器逻辑功能测试 将译码器使能端STA、STB、STC与地址端A2、A1、A0分别接到逻辑电平开关输入口,八个输出端Y7…Y0依次连接在十六位逻辑电平显示上,拨动逻辑电平开关,逐项测试74LS138的逻辑功能。2.实验箱电源连接正确,电路自查确定无误后,电路验证还是不正确的情况下进行下面的排错检查:

1)检查芯片的电源和地的电平是否正确。 2)芯片的使能端连接的电平正确。 3)从逻辑电平开关输入信号是否正确。 4)从输出端按逻辑功能状态往前一步一步排查。 3.两片3线-8线译码器74LS138扩展为4线-16线译码器 用两片74LS138组合成一个四线-十六线译码器进行实验,并分析逻辑功能。

微机原理简单输入输出实验报告

东南大学 《微机实验及课程设计》 实验报告 实验四(1)简单输入输出 一. 实验目的与内容 (一)实验目的 1)进一步掌握TPC实验装置的基本原理和组成结构; 2)掌握利用I/O指令单步调试检查硬件接口功能,学会利用示波器检测I/O指令执行时总线情况; 3)掌握简单并行输入输出接口的工作原理及使用方法,进一步熟悉掌握输入输出单元的功能

和使用。 (二)实验内容及要求 1、输出接口输出,根据8个发光二极管发光的情况验证编程从键盘输入一个字符或数字,将其ASCII码通过正确性。(输出端口实验必做) 2、用逻辑电平开关预置某个字母的ASCII码,编程输入这个ASCII码,并将其对应字母在屏幕上显示出来。(输入端口实验必做) 3、利用基本实验(1)中的输出锁存电路,设计L0~L7为流水灯,流水间隔时间由软件产生。(输出端口实验) 4、利用基本实验(2)中的输入电路,监测逻辑电平开关K0~K7的变换,当开关状态为全开时,在屏幕上显示提示信息并结束程序。(输入端口实验) 要求: 1、输入输出端口应该可以响应外设的连续变化。 2、输出按ESC键退出;输入按任意键退出。 3、内容3、4比做一题,选做一题 二. 实验基本原理 (一)基本原理 简单并行输出实验:八D触发器74LS273的八个输入端接数据总线D0~D7,从键盘输入一个字符或数字,通过2A8H~输出接口输出该字符或者数字代表的ASCII码,再通过8个发光二极管发光显示二进制数码,从而验证编程以及电路的正确性。 简单并行输入实验:八缓冲器74LS244的八个输出端接数据总线D0~D7,8个输入端分别接逻辑电平开关K0~K7,在逻辑电平开关上预置任意字符的ASCII码,编程将此ASCII码通过2A0H~输入,ASCII码对应字符显示在屏幕上,从而验证编程及电路的正确性。 (二)实验接线图

计算机组成原理实验报告

《计算机组成原理》 实验报告 实验室名称:S402 任课教师:邹洋 小组成员:王娜任芬 学号:2010212121 2010212119

实验一_HAMMING码 (2) 实验二_乘法器 (7) 实验三_时序部件 (16) 实验四_CPU__算术逻辑单元实验 (24) 实验五_CPU__指令译码器实验 (32) 实验六_CPU_微程序控制器实验1 (43) 实验七_八_CPU实验 (59)

1 编码实验:Hamming码 1.1、实验目的 1、对容错技术有初步了解,理解掌握海明码的原理 2、掌握海明码的编码以及校验方法 1.2、实验原理 海明码是由Richard Hamming于1950年提出的,目前是被广泛采用的很有效的校验编码。它的特点是只要增加少数几个校验位,就能检测出多位出错,并能自动纠错。 Hamming码的实现原理是在数据中加入几个校验位,将数据代码的码距比较均匀的拉大,并把数据的每一个二进制位分配在几个奇偶校验组中。当某一位出错后,就会引起有关的几个校验位的值发生变化。这不但可以发现出错,还能指出是哪一位出错,为进一步自动纠错提供了依据。 假设校验位的个数为r,则它能表示2r个信息,用其中的一个信息指出“没有错误”,其余的2r-1个信息指出错误发生在哪一位。然而错误也可能发生在校验位,因此只有k=2r-1-r个信息能用于纠正被传送数据的位数,也就是说要满足关系: 2r≥k+r+1 若要能检测与自动校正一位错,并能发现两位错,此时校验位的位数r和数据位的位数k应满足下述关系:2r-1≥k+r 按上述不等式,可计算出数据位k与校验位r的对应关系,如表1.1所示: 表1.1 数据位k与校验位r的对应关系 k值最小的r值 1~3 4 4~10 5 11~25 6 26~56 7 57~119 8 若海明码的最高位号为m,最低位号为1,即H m H m-1…H2H1,则此海明码的编码规律通常是 1)校验位与数据位之和为m,每个校验位P i在海明码中被分在位号为2i-1的位置上,其余各位为数据位,并按从低向高逐位依次排列的关系分配各数据位。 2)海明码的每一位码H i(包括数据位和校验位本身)由多个校验位校验,其关系是被校验的每一位位号等于校验它的各校验位的位号之和。 3)在增大合法码的码距时,所有码的码距应尽量均匀增大,以保证对所有码的检错能力平衡提高。 下面具体看一下对一个字节进行海明编码的实现过程。 只实现一位纠错两位检错,由前面的表可以看出,8位数据位需要5位校验位,可表示为H13H12…H2H1。 五个校验位P5~P1对应的海明码位号分别为H13、H8、H4、H2和H1。P5只能放在H13位

编码器和译码器实验报告

译码器、编码器及其应用 一、实验目的 (1) 掌握中规模集成译码器的逻辑功能和使用方法; (2) 熟悉掌握集成译码器和编码器的应用; (3) 掌握集成译码器的扩展方法。 二、实验设备 数字电路实验箱,74LS20,74LS138。 三、实验内容 (1) 74LS138译码器逻辑功能的测试。将74LS138输出??接数字实验箱LED 管,地址输入接实验箱开关,使能端接固定电平(或GND)。电路图如Figure 1所示: Figure 2 ??????????????时,任意拨动开关,观察LED显示状态,记录观察结果。 ??????????????时,按二进制顺序拨动开关,观察LED显示状态,并与功能表对照,记录观察结果。 用Multisim进行仿真,电路如Figure 3所示。将结果与上面实验结果对照。

Figure 4 (2) 利用3-8译码器74LS138和与非门74LS20实现函数: ?? 四输入与非门74LS20的管脚图如下: 对函数表达式进行化简: ?? ?? A ? ??????????? ???? 按Figure 5所示的电路连接。并用Multisim进行仿真,将结果对比。 Figure 6

(3) 用两片74LS138组成4-16线译码器。 因为要用两片3-8实现4-16译码器,输出端子数目刚好够用。 而输入端只有 A、、三个,故要另用使能端进行片选使两片138译码器 进行分时工作。而实验台上的小灯泡不够用,故只用一个灯泡,而用连接灯泡的导线测试?,在各端子上移动即可。在multisim中仿真电路连接如Figure 7所示(实验台上的电路没有接下面的两个8灯LED): Figure 8 四、实验结果 (1) 74LS138译码器逻辑功能的测试。 当输入 A时,应该是输出低电平,故应该第一个小灯亮。实际用实验台测试时,LE0灯显示如Figure 9所示。当输入 A时,应该是输出低电平,故理论上应该第二个小灯亮。实际用实验台测试时,LE0灯显示如Figure 6所示。 Figure 10

计算机组成原理实验报告 指令译码器

河北大学计算机组成原理实验报告 实验项目指令译码器成绩 一、实验目的: (1)理解指令译码器的作用和重要性。 (2)学习设计指令译码器。 二、实验原理: 指令译码器是计算机控制器中最重要的部分。所谓组合逻辑控制器就是指指令译码电路是由组合逻辑实现的。 组合逻辑控制器又称硬连线控制器,是设计计算机的一种方法。这种控制器中的控制信号直接由各种类型的逻辑门和触发器等构成。这样,一旦控制部件构成后,除非重新设计和物理上对它重新连线,否则要想增加新的功能是不可能的。结构上这种缺陷使得硬连线控制器的设计和调试变得非常复杂而且代价很大。所以,硬连线控制器曾一度被微程序控制器所取代。但是随着新一代及其及VLSI技术的发展,这种控制器又得到了广泛重视,如RISC机广泛使用这种控制器。 图6-42是组合逻辑控制器的方框图。逻辑网络的输入信号来源有3个:①指令操作码译 码器的输出I n ;②来自时序发生器的节拍电位信号T k ;③来自执行部件的反馈信号B j 。逻辑网 络的输出信号就是微操作控制信号,用来对执行部件进行控制。

图6-42 组合逻辑控制器的结构方框图 组合逻辑控制器的基本原理可描述位:某一微操作控制信号C m 是指令操作码译码器的输出I n 、时序信号(节拍电位信号T k )和状态条件信号B j 的逻辑函数。即 C m =f(I n ,T k ,B j ) 用这种方法设计控制器,需要根据每条指令的要求,让节拍电位和时序脉冲有步骤地去控制机器的各有关部分,一步一步地执行指令所规定的微操作,从而在一个指令周期内完成一条指令所规定的全部操作。 三、实验步骤: (1)将试验台设置成FPGA-CPU 独立调试模式,REGSEL=0、CLKSEL=1、FDSEL=0。使用试验台上的单脉冲,即STEP_CLK 短路子短接,短路子RUN_CLK 断开。 (2)将设计在QuartusII 下输入,变异后下载到TEC-CA 上的FPGA 中。 (3)拨动试验台上的开关SD 5~SD 0,改变IR[15..12]、进位标志C 和结果为0标志Z ,观察指示灯R 10~R 0显示的控制信号,并填写表6-28。 四、实验现象及分析:

哈夫曼编码译码器实验报告免费

哈夫曼编码译码器实验报告(免费)

————————————————————————————————作者:————————————————————————————————日期:

问题解析与解题方法 问题分析: 设计一个哈夫曼编码、译码系统。对一个ASCII编码的文本文件中的字符进行哈夫曼编码,生成编码文件;反过来,可将编码文件译码还原为一个文本文件。 (1)从文件中读入任意一篇英文短文(文件为ASCII编码,扩展名为txt); (2)统计并输出不同字符在文章中出现的频率(空格、换行、标点等也按字符处理);(3)根据字符频率构造哈夫曼树,并给出每个字符的哈夫曼编码; (4)将文本文件利用哈夫曼树进行编码,存储成压缩文件(编码文件后缀名.huf)(5)用哈夫曼编码来存储文件,并和输入文本文件大小进行比较,计算文件压缩率;(6)进行译码,将huf文件译码为ASCII编码的txt文件,与原txt文件进行比较。 根据上述过程可以知道该编码译码器的关键在于字符统计和哈夫曼树的创建以及解码。 哈夫曼树的理论创建过程如下: 一、构成初始集合 对给定的n个权值{W1,W2,W3,...,Wi,...,Wn}构成n棵二叉树的初始集合 F={T1,T2,T3,...,Ti,...,Tn},其中每棵二叉树Ti中只有一个权值为Wi的根结 点,它的左右子树均为空。 二、选取左右子树 在F中选取两棵根结点权值最小的树作为新构造的二叉树的左右子树,新二 叉树的根结点的权值为其左右子树的根结点的权值之和。 三、删除左右子树 从F中删除这两棵树,并把这棵新的二叉树同样以升序排列加入到集合F中。 四、重复二和三两步, 重复二和三两步,直到集合F中只有一棵二叉树为止。 因此,有如下分析: 1.我们需要一个功能函数对ASCII码的初始化并需要一个数组来保存它们; 2.定义代表森林的数组,在创建哈夫曼树的过程当中保存被选中的字符,即给定报文 中出现的字符,模拟哈夫曼树选取和删除左右子树的过程; 3.自底而上地创建哈夫曼树,保存根的地址和每个叶节点的地址,即字符的地址,然 后自底而上检索,首尾对换调整为哈夫曼树实现哈弗曼编码; 4.从哈弗曼编码文件当中读入字符,根据当前字符为0或者1的状况访问左子树或者 右孩子,实现解码; 5.使用文件读写操作哈夫曼编码和解码结果的写入; 解题方法: 结构体、数组、类的定义: 1.定义结构体类型的signode 作为哈夫曼树的节点,定义结构体类型的hufnode 作为

74LS181实验报告

学生实验报告 实验名称用Verilog HDL语句实现74LS181的功能 实验日期2013 年10月19号 学号 姓名 班级计算机科学与技术一班 一、实验目的与要求 1、了解运算器的组成结构; 2、掌握算术逻辑运算器的工作原理; 3、掌握简单运算器的数据传送通道 4、掌握用Verilog HDL实现简单运算器的设计 二、实验原理 74LS181的逻辑功能表 图中,S0到S3是四个控制端,用于选择进行何种运算。M用于控制ALU进行算术

运算还是逻辑运算。 当M=0时,M 对进位信号没有任何影响,Fi 值与操作数Ai ,Bi 以及地位向本位进位Cn+1有关,所以M=0时进行算术运算。操作数用补码表示,“加”只算术加,运算时考虑进位;“+”指逻辑加,不考虑进位;减法运算时,减法取反码运算后用加法器实现,结果输出为A 减B 减1在最末位产生一个强迫进位(加1),以得到A 减B 的结果。 当M=1时,封锁了各位的进位输出Cn+i=0,因此各位的运算结果Fi 仅与操作数Ai ,Bi 有关,此时进行逻辑运算。 三、实验内容与步骤 1.根据书85面的逻辑功能表编写Verilog HDL 语句,编译,仿真等步骤。 2.按照模式一电路图结构图设置对应的引脚参数。确认无误后,配置文件下载。 CLOCK9CLOCK5CLOCK2 CLOCK0 SPEAKER 扬声器 NO.1 PIO11-PIO8PIO15-PIO12PIO48 PIO49D15 D16HEX HEX PIO32 PIO33 PIO34 PIO35 PIO36 PIO37 PIO38 PIO39 D1D2D3D4D5D6D7D8实验电路结构图 译码器 译码器 译码器 译码器 FPGA/CPLD 目标芯片1 2 3 4 5 6 7 8 PIO3-PIO0 PIO7-PIO4HEX HEX 键1 键2 键3 键4 键5 键6 键7 键8 PIO39-PIO32PIO31-PIO28 PIO27-PIO24PIO23-PIO20PIO19-PIO16 3.连接试验箱,开通电源,进行验证。 五、实验环境与设备 实验软件:Quartus ii 软件 实验设备:实验室试验箱 六、实验代码设计(含符号说明) module NS74181(A,B,F,S,CN,CO,M); //端口名 input[3:0] A,B; input[3:0] S; input M,CN; output CO; output[3:0] F; reg[3:0] F; reg[3:0] ta,tb; //用ta,tb 代替~A 和~B reg CO; //进位 always @(S) begin ta=~A; tb=~B; case(S) 'b0000: begin

实验三---译码器及其应用实验报告

实验三译码器及其应用 一、实验目的 (1) 掌握中规模集成译码器的逻辑功能和使用方法; (2) 熟悉掌握集成译码器的应用; (3) 掌握集成译码器的扩展方法。 二、实验设备 数字电路实验箱,电脑一台,74LS20,74LS138。 三、实验内容 (1)利用3-8译码器74LS138和与非门74LS20实现函数: 四输入与非门74LS20的管脚图如下: 对函数表达式进行化简: 按Figure 1所示的电路连接。并用Multisim进行仿真,将结果对比。

Figure 1 (2) 用两片74LS138组成4-16线译码器。 因为要用两片3-8实现4-16译码器,输出端子数目刚好够用。 导线测试,在各端子上移动即可。在multisim中仿真电路连接如Figure 2所示(实 验台上的电路没有接下面的两个8灯LED): Figure 2 四、实验结果 (1) 利用3-8译码器74LS138和与非门74LS20实现函数。

输入,由可知,小灯应该亮。测试结果如Figure 1所示。输入,分析知小灯应该灭,测试结果如Figure 2所示。输入 ,分析知小灯应该亮,测试结果如Figure 3所示。 Figure 4 Figure 5

Figure 6 同理测试,得到结果列为下面的真值表: A B C Y 0 0 0 1 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 与所要实现的逻辑功能相一致。 (2) 用两片74LS138组成4-16线译码器。 进行测试,得到的结果列为真值表如下: G1 A B C 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1

PL 0 语言编译器分析实验报告

PL/0 语言编译器分析实验 一、实验目的 通过阅读与解析一个实际编译器(PL/0语言编译器)的源代码,加深对编译阶段(包括词法分析、语法分析、语义分析、中间代码生成等)和编译系统软件结构的理解,并达到提高学生学习兴趣的目的。 二、实验要求 (1)要求掌握基本的程序设计技巧(C语言)和阅读较大规模程序源代码的能力; (2)理解并掌握编译过程的逻辑阶段及各逻辑阶段的功能; (3)要求能把握整个系统(PL/0语言编译器)的体系结构,各功能模块的功能,各模块之间的接口; (4)要求能总结出实现编译过程各逻辑阶段功能采用的具体算法与技 三、实验报告 pl/0语言是pascal语言的一个子集,我们这里分析的pl/0的编译程序包括了对pl/0语言源程序进行分析处理、编译生成类pcode代码,并在虚拟机上解释运行生成的类pcode代码的功能。 pl/0语言编译程序采用以语法分析为核心、一遍扫描的编译方法。词法分析和代码生成作为独立的子程序供语法分析程序调用。语法分析的同时,提供了出错报告和出错恢复的功能。在源程序没有错误编译通过的情况下,调用类pcode 解释程序解释执行生成的类pcode代码。 词法分析子程序分析: 词法分析子程序名为getsym,功能是从源程序中读出一个单词符号(token),把它的信息放入全局变量sym、id和num中,语法分析器需要单词时,直接从这三个变量中获得。(注意!语法分析器每次用完这三个变量的值就立即调用getsym 子程序获取新的单词供下一次使用。而不是在需要新单词时才调用getsym过程。)getsym过程通过反复调用getch子过程从源程序过获取字符,并把它们拼成单词。getch过程中使用了行缓冲区技术以提高程序运行效率。 词法分析器的分析过程: 调用getsym时,它通过getch过程从源程序中获得一个字符。如果这个字符是字母,则继续获取字符或数字,最终可以拼成一个单词,查保留字表,如果查到为保留字,则把sym变量赋成相应的保留字类型值;如果没有查到,则这个单词应是一个用户自定义的标识符(可能是变量名、常量名或是过程的名字),把sym 置为ident,把这个单词存入id变量。查保留字表时使用了二分法查找以提高效率。如果getch获得的字符是数字,则继续用getch获取数字,并把它们拼成一个整数,然后把sym置为number,并把拼成的数值放入num变量。如果识别出其它合

数字电子线路实验报告_译码器及其应用

数电实验报告 实验三译码器及其应用 一、实验目的 1、掌握译码器的测试方法。 2、了解中规模集成译码器的功能,管脚分布,掌握其逻辑功能。 3、掌握用译码器构成组合电路的方法。 4、学习译码器的扩展。 二、实验仪器 1、数字逻辑电路实验板 1块 2、74HC138 3-8线译码器 2片 3、74HC20 双4输入与非门 1片 三、实验原理 1、中规模集成译码器74HC138 74HC138是集成3线-8线译码器,在数字系统中应用比较广泛。图3-1是其引脚排列。 其中 A2 、A1 、A0 为地址输入端, 0Y~ 7Y为译码输出端,S1、2S、3S为使能端。74HC138真值表如下: 74HC138引脚图为:

74HC138工作原理为:当S1=1,S2+S3=0时,电路完成译码功能,输出低电平有效。其中: 2、译码器应用 因为74HC138 三-八线译码器的输出包括了三变量数字信号的全部八种组合,每一个输 出端表示一个最小项,因此可以利用八条输出线组合构成三变量的任意组合电路。 四、实验内容 1、译码器74HC138 逻辑功能测试 (1)控制端功能测试 测试电路如图:

按上表所示条件输入开关状态。观察并记录译码器输出状态。 LED指示灯亮为0,灯不亮为1。 (2)逻辑功能测试 将译码器使能端S1、2S、3S及地址端A2、A1、A0 分别接至逻辑电平开关输出口,八个 输出端Y7 Y0依次连接在逻辑电平显示器的八个输入口上,拨动逻辑电平开关,按下表逐项测试74HC138的逻辑功能。 2、用74HC138实现逻辑函数 Y=AB+BC+CA 如果设A2=A,A1=B,A0=C,则函数Y的逻辑图如上所示。用74HC138和74HC20各一块在实验箱上连接下图线路。并将测试结果下面的记录表中。

cpu实验报告

简易计算机系统综合设计设计报告 班级姓名学号 一、设计目的 连贯运用《数字逻辑》所学到的知识,熟练掌握EDA工具的使用方法,为学习好后续《计算机原理》课程做铺垫。 二、设计内容 ①按给定的数据格式和指令系统,使用EDA工具设计一台用硬连线逻辑控制的简易计算机系统; ②要求灵活运用各方面知识,使得所设计的计算机系统具有较佳的性能; ③对所做设计的性能指标进行分析,整理出设计报告。 三、详细设计 3.1设计的整体架构 控制信号

3.2各模块的具体实现 1.指令计数器(zhiling_PC) 元件: 输入端口:CLK,RESET,EN; 输出端口:PC[3..0]; CLK:时钟信号; RESET:复位信号; EN:计数器控制信号,为1的时候加一; PC[3..0]:地址输出信号; 代码:

波形图: 总共有九条指令,指令计数器从0000到1000;功能: 实现指令地址的输出; 2.存储器(RAM) 元件: 输入端口:PC[3..0],CLK; 输出端口:zhiling[7..0]; CLK:时钟信号; PC[3..0]:指令地址信号; zhiling[7..0]:指令输出信号; 代码:

波形图: 功能: 根据输入的地址输出相应的指令; 3.指令译码器(zlymq) 元件: 输入端口:zhiling[7..0]; 输出端口:R1[1..0],R2[1..0],M[3..0];zhiling[7..0]:指令信号; R1:目标寄存器地址; R2:源寄存器地址; M[3..0]:指令所代表的操作编号; 代码:

波形图:

功能: 实现指令的操作译码,同时提取出目标寄存器和源寄存器的地址; 4.算术逻辑运算器(ALU) 元件: 输入端口:EN_ALU,a[7..0],b[7..0],M[3..0]; 输出端口:c[7..0],z; EN_ALU:运算器的使能端; a[7..0]:目标寄存器R1的值; b[7..0]:源寄存器R2的值; M[3..0]:指令所代表的操作编号; c[7..0]:运算结果; z:运算完成的信号; 代码:

译码器实验报告

译码器实验报告 译码器(decoder)是一类多输入多输出组合逻辑电路器件,其可以分为:变量译码和显示译码两类。变量译码器一般是一种较少输入变为较多输出的器件,常见的有n线-2^n线译码和8421BCD 码译码两类;显示译码器用来将二进制数转换成对应的七段码,一般其可分为驱动LED和驱动LCD两类。 译码器是一种具有“翻译”功能的逻辑电路,这种电路能将输入二进制代码的各种状态,按照其原意翻译成对应的输出信号。有一些译码器设有一个和多个使能控制输入端,又成为片选端,用来控制允许译码或禁止译码。 在图1中,74138是一种3线—8线译码器,三个输入端CBA共有8种状态组合(000—111),可译出8个输出信号Y0—Y7。这种译码器设有三个使能输入端,当G2A与G2B均为0,且G1为1时,译码器处于工作状态,输出低电平。当译码器被禁止时,输出高电平。 图2时检测74ls138译码器时间波形的电路,使用的虚拟仪器为数字信号发生器和逻辑分析仪。数字信号发生器在一个周期内按顺序送出两组000—111的方波信号。

图3表明如何将两片3线—8线译码器连接成4线—16线译码器。其中第二片74138的使能端G1和第一片的使能端G2A接成D输入端。当D=0时,第一片74138工作,对0000—0111的输入信号进行译码输出。当D=1时,第二片74138工作,对1000—1111的输入信号进行译码输出。 在图4中,7442为二—十进制译码器,具有4个输入端和10个输出端。输入信号采用8421BCD码,二进制数0000—1001与十进制数0—9对应。当输入超过这个范围是无效,10个输出端均为高电平。7442电路没有使能端,因此只要输入在规定范围内,就会有一个输出端为低电平。 图5位BCD—七段显示译码器电路,LED数码管将显示与BCD码对应的十进制数0—9。因为显示译码器电路输出高电平,所以应该采用共阴极LED数码管。 编码与译码的过程刚好相反。通过编码器可对一个有效输入信号生成一组二进制代码。有的编码器设有使能端,用来控制允许编码或禁止编码。 优先编码器的功能是允许同时在几个输入端有输入信号,编码器按输入信号排定的优先顺序,只对同时输入的几个信号中优先权最

实验一 IO地址译码 实验报告

信息学院 《汇编语言与接口技术》上机实验报告 学号:104100197 姓名:王飞班级:计科10C 课程名称:汇编语言与接口技术上机内容I/O地址译码 实验性质:□综合性实验□设计性实验■验证实验 实验时间: 2012年 5 月11 日实验地点:睿智4号102室实验设备TPC—2003A微机实验箱 实验报告:(包括目的、方法、原理、结果或实验小节等)。 一、实验目的 掌握I/O地址译码电路的工作原理。 二、实验原理和内容 实验电路如下图所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D 触发器,74LS138为地址译码器。译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每 个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/ O指令且地 址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。 三、实验中使用的程序 stack1 segment stack 'stack' dw 32 dup(0) stack1 ends data segment baseport equ 0ec00h-280h;实际基址 port1 equ baseport+2a0h;基址+偏移地址 port2 equ baseport+2a8h;基址+偏移地址 data ends code segment

assume ss:stack1,ds:data,cs:code start: mov ax,data mov ds,ax again: mov dx, port1 in al, dx call delay ;调用延时程序 mov dx, port2 in al, dx call delay jmp again delay proc push bx push cx mov bx, 5000 wait2: mov cx,0 wait1: loop wait1 dec bx jnz wait2 pop cx pop bx ret delay endp;延时程序 mov ah, 4ch int 21h code ends end start 四、实验小结 通过本次实验,基本掌握I/O地址译码电路的工作原理。会写延时程序。在实验中达到了预期灯泡一亮一灭的效果。自己可以控制灯泡亮灭的速度。 任课教师评语: 教师签字:年月日注:每学期至少有一次设计性实验。每学期结束请任课教师按时按量统一交到教学秘书处。

译码器实验报告

译码器: 译码器是一类多输入多输出组合逻辑电路器件,其可以分为:变量译码和显示译码两类。 概述: 译码是编码的逆过程,在编码时,每一种二进制代码,都赋予了特定的含义,即都表示了一个确定的信号或者对象。把代码状态的特定含义“翻译”出来的过程叫做译码,实现译码操作的电路称为译码器。或者说,译码器是可以将输入二进制代码的状态翻译成输出信号,以表示其原来含义的电路。 根据需要,输出信号可以是脉冲,也可以是高电平或者低电平。 分类: 二进制码译码器,也称最小项译码器,N中取一译码器,最小项译码器一般是将二进制码译为十进制码; 代码转换译码器,是从一种编码转换为另一种编码; 显示译码器,一般是将一种编码译成十进制码或特定的编码,并通过显示器件将译码器的状态显示出来。 变量译码: 变量译码器是一个将n个输入变为2^n个输出的多输出端的组合逻辑电路。其模型可用下图来表示,其中输入变化的所有组合中,每个输出为1的情况仅一次,由于最小项在真值表中仅有一次为1,所以输出端为输入变量的最小项的组合。故译码器又可以称为最小项发生器电路。

工作原理: 译码器是一种具有“翻译”功能的逻辑电路,这种电路能将输入二进制代码的各种状态,按照其原意翻译成对应的输出信号。有一些译码器设有一个和多个使能控制输入端,又成为片选端,用来控制允许译码或禁止译码。 在图1中,74138是一种3线—8线译码器,三个输入端CBA 共有8种状态组合(000—111),可译出8个输出信号Y0—Y7。这种译码器设有三个使能输入端,当G2A与G2B均为0,且G1为1时,译码器处于工作状态,输出低电平。当译码器被禁止时,输出高电平。 图2时检测74ls138译码器时间波形的电路,使用的虚拟仪器为数字信号发生器和逻辑分析仪。数字信号发生器在一个周期内按顺序送出两组000—111的方波信号。 图3表明如何将两片3线—8线译码器连接成4线—16线译码器。其中第二片74138的使能端G1和第一片的使能端G2A接成D 输入端。当D=0时,第一片74138工作,对0000—0111的输入信号进行译码输出。当D=1时,第二片74138工作,对1000—1111的输入信号进行译码输出。 在图4中,7442为二—十进制译码器,具有4个输入端和10个输出端。输入信号采用8421BCD码,二进制数0000—1001与十进制数0—9对应。当输入超过这个范围是无效,10个输出端均

计算机组成原理与汇编实验报告

计算机组成原理与汇编 实验报告 Company Document number:WUUT-WUUY-WBBGB-BWYTT-1982GT

计算机组成原理与汇编课程设计 实验报告 目录 一、课程设计目标 (3) 二、课程设计基本要求 (3) 三、课程设计的内容 (3) 四、课程设计的要求 (5) 五、实验详细设计 (5) 1.统计文件中各字母出现的频率 (5) 2.用递归计算50以内Fibonacci 数, 以十进制数输出 (9) 3.虚拟平台模拟机实验 (11) 六、使用说明 (19) 七、总结与心得体会 (19) 八、参考文献 (20) 九、附录 (20) 1.字符统计.asm (20) 2.斐波那契数(小于50).asm (29) 一、课程设计目标 通过课程设计使学生综合运用所学过的计算机原理与汇编知识,增强解决实际问题的能力,加深对所学知识的理解与掌握,提高软硬件开发水平,为今后打下基础。 课程设计的目的和要求: 1、使学生巩固和加强《计算机原理与汇编语言》课程的基本理论知识。

2、使学生掌握汇编语言程序设计的方法及编程技巧,正确编写程序。 3、使学生养成良好的编程习惯并掌握调试程序的基本方法。 4、使学生养成规范书写报告文档的能力,撰写课程设计总结报告。 5、通过查阅手册和文献资料,培养学生独立分析问题和解决问题的能力。 二、课程设计的基本要求 1、认真查阅资料,独立完成设计任务,每道题都必须上机通过。 2、编写预习报告,写好代码,上机调试。 3、独立思考,培养综合分析问题解决问题和调试程序的能力。 4、按时完成课程设计,写出课程设计报告。 三、课程设计的内容 1、给定一个英文ASCII码文件,统计文件中英文字母的频率,以十进制形式输出。 2、用递归计算50以内Fibonacci 数, 以十进制数输出. 3、虚拟平台的模型机实验,具体要求如下: 1)选择实验设备,将所需要的组件从组件列表中拖到实验设计流程栏中 2)搭建实验流程:根据原理图1和电路图(见附件),将已选择的组件进行连线。 3)输入机器指令:选择菜单中的“工具”,再选择“模型机调试”,在指令输入窗 口中输入如下指令: 00000000 00010000 00001001 00100000 00001011 00110000 00001011 01000000 00000000 00000001 本实验设计机器指令程序如下:

3-8译码器的设计实验报告

EDA实验报告书

1根据74138的功能,当S0=1, S 仁0, S2=0时译码器处于工作状态。否则 译码器被禁止,所有输出端被封锁在高电平。由真值表画出卡诺图,再写出对 应表达式,再画出电路。 2、使用VHDL 语言时,应注意头文件以及各种输入的格式,使用 IF 语句, CASE 语句设计电路,最后再用 END 语句结束程序。 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY SA IS PORT( D:IN STD_LOGIC_VECTOR(2 DOWNTO 0); S0,S1,S2:IN STD_LOGIC; Y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0) ); END ; ARCHITECTURE XIANI OF SA IS BEGIN PROCESS(D,S0,S1,S2) BEGIN IF (S0='0')THEN Y<="11111111"; ELSIF(S0='1' AND S1='0' AND S2='0')THEN IF (D(2)='0' AND D(1)='0' AND D(0)='0')THEN Y<="01111111"; ELSIF (D(2)='0' AND D(1)='0' AND D(0)='1')THEN Y<="10111111"; ELSIF (D(2)='0' AND D(1)='1' AND D(0)='0')THEN Y<="11011111"; ELSIF (D(2)='0' AND D(1)='1' AND D(0)='1')THEN Y<="11101111"; ELSIF (D(2)='1' AND D(1)='0' AND D(0)='0')THEN Y<="11110111"; ELSIF (D(2)='1' AND D(1)='0' AND D(0)='1')THEN Y<="11111011"; ELSIF (D(2)='1' AND D(1)='1' AND D(0)='0')THEN Y<="11111101"; ELSIF (D(2)='1' AND D(1)='1' AND D(0)='1')THEN Y<="11111110"; 设 计 思 路 设 计 原 理 图 及 源 程 序

北航verilog实验报告(全)

目录 实验一 (2) 实验二 (8) 实验三 (14) 实验四 (27)

实验一 实验目的:熟悉硬件开发流程,掌握Modelsim设计与仿真环境,学会简单组合逻辑电路、简单时序逻辑电路设计,不要求掌握综合和综合后仿真。 实验内容:必做实验:练习一、简单的组合逻辑设计 练习二、简单分频时序逻辑电路的设计 选做实验:选做一、练习一的练习题 选做二、7段数码管译码电路 练习一、简单的组合逻辑设计 描述一个可综合的数据比较器,比较数据a 、b的大小,若相同,则给出结果1,否则给出结果0。 实验代码: 模块源代码: module compare(equal,a,b); input a,b; output equal; assign equal=(a==b)?1:0; endmodule 测试模块源代码: `timescale 1ns/1ns `include "./compare.v" module t; reg a,b; wire equal; initial begin a=0; b=0; #100 a=0;b=1; #100 a=1;b=1; #100 a=1;b=0; #100 a=0;b=0; #100 $stop; end compare m(.equal(equal),.a(a),.b(b)); endmodule 实验波形

练习二、简单分频时序逻辑电路的设计 用always块和@(posedge clk)或@(negedge clk)的结构表述一个1/2分频器的可综合模型,观察时序仿真结果。 实验代码: 模块源代码: module halfclk(reset,clkin,clkout); input clkin,reset; output clkout; reg clkout; always@(posedge clkin) begin if(!reset) clkout=0; else clkout=~clkout; end endmodule 测试模块源代码: `timescale 1ns/100ps `define clkcycle 50 module tt; reg clkin,reset; wire clkout; always#`clkcycle clkin=~clkin; initial begin clkin=0; reset=1; #10 reset=0; #110 reset=1; #100000 $stop; end halfclk m0(.reset(reset),.clkin(clkin),.clkout(clkout)); endmodule

计算机接口实验报告

计算机接口技术实验 电子与信息工程 班级:电子0911 姓名: 学号: 2012年5月9日

实验一、I/O地址译码 一、实验目的 掌握I/O地址译码电路的工作原理。 二、实验原理和内容 实验电路如图1-1所示,图中线路两端有节点的信号线需要用户用实验导线连接起来。其中74LS74为D触发器,可直接使用实验台上部系统板上的D触发器。74LS138为地址译码器。译码输出端Y0~Y7在实验台中间系统板上引出,每个输出端包含8个地址,即: Y0:280H~287H;Y4:2A0H~2A7H; Y1:288H~28FH;Y5:2A8H~2AFH; Y2:290H~297H;Y6:2B0H~2B7H; Y3:298H~29FH;Y7:2B8H~2BFH; 当CPU执行I/ O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令,对应的译码输出脚输出一个负脉冲。 MOV DX,PORT1 OUT DX,AL(或IN AL,DX) 执行下面两条指令,对应的译码输出脚输出一个负脉冲。 MOV DX,PORT2 OUT DX,AL(或IN AL,DX) 利用这个负脉冲控制发光二极管L0闪烁发光(亮灭循环),时间间隔通过软件延时实现。 注意:命令中的端口地址PORT1、PORT2 是根据DVCC卡的I/O基址再加上偏移量计算出来的,不同的微机DVCC卡的I/O基址可能不同,需要事先查找出来,详细见《用户手册》第五章节5.3中第10~12点介绍的查找方法。计算公式如下: PORT1 = 查找出的DVCC卡的I/O基址 + 偏移量 其中:偏移量 = Y0~Y7中所选定的任意一个译码地址值-280H。下面的程序用到Y4,即2A0H。假设DVCC卡的I/O基地址=0C400H,经计算PORT1= 0C420H。 三、编程提示 1.实验电路中D触发器的CLK 端输入脉冲时,上升沿使Q端输出高电平,L0发光,CLR端加低电平L0灭。 四、原理图

相关文档
最新文档