译码器的设计实验报告(共4页).doc
精选优质文档-倾情为你奉上EDA实验报告书 姓名 xxx 学号 xxxxxxx 实验时间 课题名称 3-8译码器的设计实验目的1、通过一个简单的38译码器的设计,让学生掌握组合逻辑电路的设计方法。2、初步掌握VHDL语言的常用语句。3、掌握VHDL语言的基本语句及文本输入的EDA设计方法。设计要求设计一个38译码器使其满足如下真值表:3-8译码器真值表选通输入二进制输入译码输出S0S1S2ABCY0Y1Y2Y3Y4Y5Y6Y7X1XXXX11111111XX1XXX111111110XXXXX1111111110000001111111100001101111111000101101111110001111101111100100111101111001011111101110011011111101100111111111101.采用原理图输入法利用门电路进行设计并实现仿真、下载。2.利用VHDL语言输入进行设计并进行仿真。设计思路1、根据74138的功能,当S0=1,S1=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 ISBEGINPROCESS(D,S0,S1,S2)BEGIN IF (S0='0')THEN Y<="" ELSIF(S0='1' AND S1='0' AND S2='0')THEN IF (D(2)='0' AND D(1)='0' AND D(0)='0')THEN Y<="" ELSIF (D(2)='0' AND D(1)='0' AND D(0)='1')THEN Y<="" ELSIF (D(2)='0' AND D(1)='1' AND D(0)='0')THEN Y<="" ELSIF (D(2)='0' AND D(1)='1' AND D(0)='1')THEN Y<="" ELSIF (D(2)='1' AND D(1)='0' AND D(0)='0')THEN Y<="" ELSIF (D(2)='1' AND D(1)='0' AND D(0)='1')THEN Y<="" ELSIF (D(2)='1' AND D(1)='1' AND D(0)='0')THEN Y<="" ELSIF (D(2)='1' AND D(1)='1' AND D(0)='1')THEN Y<="" ELSE Y<="ZZZZZZZZ" END IF;ELSE Y<="ZZZZZZZZ" END IF;END PROCESS;END;仿真波形图实验结果问题讨论比较此实验中两种输入法哪种要好一些,好在哪里?答:使用与非门设计电路对应延时比使用程序对应延时时间短,原因是程序的每步执行都需要一定的时间,其时间比调用库中的与非门所需时间长。使用VHDL语言,设计描述与硬件无关,具有强大的硬件描述能力,设计方式多种多样。教师评分操作成绩报告成绩 教师签名 日 期 专心-专注-专业