EDA实验报告
- 格式:doc
- 大小:48.00 KB
- 文档页数:3
目录第一部分实验开发系统概述及使用说明.............................................................. 1第一章EDA实验系统 ....................................................................................... 1第二章EDA/SOPC实验系统 ............................................................................ 7第二部分实验部分............................................................................................ 10实验一EDA工具基本操作与应用 ........................................................... 10实验二计数器设计..................................................................................... 24实验三串入/并出移位寄存器实现 ........................................................... 26实验四四人抢答器设计............................................................................. 28实验五序列检测器设计............................................................................. 29实验六DDS信号源的设计........................................................................ 30实验七交通灯控制器设计......................................................................... 31实验八数字钟设计..................................................................................... 32实验九出租车计费器设计......................................................................... 33实验十频率计的实现................................................................................. 34附录——FPGA接口对照表 ............................................................................ 35第一部分实验开发系统概述及使用说明第一章EDA实验系统一、实验系统概述此系列实验系统针对数字电路设计CPLD/FPGA及模拟电路设计技术有一总体上的概念。
7段数码显示译码器设计实验报告******班级:09级计科六班学号:*************一、实验目的1. 用QuartusII 完成基本组合电路的设计;2. 学习7段数码显示译码器设计;3.学习VHDL 的CASE 语句应用及多层次设计方法。
二、 实验原理1. 7段数码是纯组合电路,通常的小规模专用IC ,如74或4000系列的器件只能作十进制BCD 码译码,然而数字系统中的数据处理和运算都是二进制的,所以输出表达式都是十六进制的。
为了满足十六进制的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD 中来实现。
2. 对于7段译码器,输出信号LED7S 的7位分别接如图1所示数码管的7个段,高位在左,低位在右。
例如当LED7S 输出为“1101101”时,数码管的7个段:g 、f 、e 、d 、c 、b 、a 分别接1、1、0、1、1、0、1;接有高电平的段发亮,于是数码管显示“5”。
3. 4位译码选择信号A 、7位输出信号LED7S 与、数码管显示三者间的关系如表1所示。
图1 共阴数码管及其电路表1 7段数码管输入输出真值表 这里没有考虑表示小数点的发光管,如果要考虑,需要增加段h ,后述程序中的LED7S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0) 应改为 (7 DOWNTO 0) , 即输出信号由7位改为8位。
4位选择 信号A 7位输出信号LED7S数码管显示 0000 0111111 0 0001 0000110 1 0010 1011011 2 0011 1001111 3 0100 1100110 4 0101 1101101 5 0110 1111101 6 0111 0000111 7 1000 1111111 8 1001 1101111 9 1010 1110111 A 10111111100 B 11000111001 C 11011011110 D 11101111001 E 1111 1110001 F三、实验仪器1.PC机一台2.Quartus II 软件3.EDA实验箱四、实验内容1、实验内容一:说明例6-18中各语句的含义,以及该例的整体功能。
一、EDA技术的最新发展应用高度发达的信息化社会离不开电子产品的进步,实现这种进步的主要原因就是生产制造技术和电子设计技术的发展。
上世纪90 年代,科学家积极的探索着新的电子电路的设计方法,希望可以通过软件编程而对硬件结构和工作方式进行重构,从而使硬件设计可以如同软件设计那样方便快捷,正是这种理念促生了EDA 技术的出现。
具体的说EDA 技术就是以计算机为工具,在EDA 技术的平台上,用硬件描述语言VHDL 完成设计文件,然后由计算机自动完成逻辑编译,化简,分割,综合,优化,布局,布线和仿真,直到对于特定目标芯片的适配编译,逻辑映射和编程下载等工作。
这一技术用软件设计硬件,可以现场编程,在线升级,它的整个系统就集成在一个小小的芯片上,功耗低,可靠性高,使电路设计的效率得到了极大的提高,而且它有很好的移植性,非常适合分工设计和团体协作。
严格的说,EDA 技术是微电子技术和现代电子设计技术的结合, EDA 技术在硬件方面具体的应用体现在大规模集成电路制造技术ASIC测试和封装技术,IC 版图设计技术,FPGA/CPLD 编程下载技术以及自动测试技术等,而对于现代电学方向它也涵盖了电子线路设计的理论,设计数字信号处理的理论,数字系统建模及优化技术等理论。
有目共睹的是在现代技术中,电子技术始终处于所有科学技术发展的最前端,而EDA 技术表达和实现了现代电子理论设计,推动着科技的发展。
所以EDA 技术并不仅仅是一门学科分支,它其实更应该被称为一门综合性的学科,渗透到各个学科中消除了软硬件互不相通的障碍,成为新的电子技术和应用技术的发展方向。
EDA 技术最基本的特征,得从十年前开始,那时电子设计思路选用的是集成电路“自底向上”的构造系统,当人们探索出高层次设计的“自顶向下”的全新设计方法后,EDA 技术真正实现了革命,它将效率低,成本高且容易出错的旧设计方法,改良成为能够从顶层进行功能方框图的划分和结构设计,在高层次上进行主要的仿真和调试过程,大大节约了设计时间,提高了工作效率,避免了结构设计上的错误,提高了设计的成功率。
EDA实验报告班级:姓名:目录实验一:七段数码显示译码器设计 (1)摘要 (1)实验原理 (1)实验方案及仿真 (1)引脚下载 (2)实验结果与分析 (3)附录 (3)实验二:序列检测器设计 (6)摘要 (6)实验原理 (6)实现方案及仿真 (6)引脚下载 (7)实验结果与分析 (8)实验三:数控分频器的设计 (11)摘要 (11)实验原理 (11)方案的实现与仿真 (11)引脚下载 (12)实验结果及总结 (12)附录 (12)实验四:正弦信号发生器 (14)摘要 (14)实验原理 (14)实现方案与仿真 (14)嵌入式逻辑分析及管脚下载 (16)实验结果与分析 (17)附录 (18)实验一:七段数码显示译码器设计摘要:七段译码器是一种简单的组合电路,利用QuartusII的VHDL语言十分方便的设计出七段数码显示译码器。
将其生成原理图,再与四位二进制计数器组合而成的一个用数码管显示的十六位计数器。
整个设计过程完整的学习了QuartusII的整个设计流程。
实验原理:七段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用译码程序在FPGA\CPLD中来实现。
本实验作为7段译码器,输出信号LED7S的7位分别是g、f、e、d、c、b、a,高位在左,低位在右。
例如当LED7S 输出为“1101101”时,数码管的7个段g、f、e、d、c、b、a分别为1、1、0、1、1、1、0、1。
接有高电平段发亮,于是数码管显示“5”。
实验方案及仿真:I、七段数码显示管的设计实现利用VHDL描述语言进行FPGA上的编译实现七段数码显示译码器的设计。
运行QuartusII在G:\QuartusII\LED7S\下新建一个工程文件。
新建一个vhdl语言编译文件,编写七段数码显示管的程序见附录1-1。
实验一五人表决器设计一、实验目的1 加深对电路理论概念的理解3 加深计算机辅助分析及设计的概念4 了解及初步掌握对电路进行计算机辅助分析的过程二、实验要求制作一个五人表决器,共五个输入信号,一个输出信号。
若输入信号高电平数目多于低电平数目,则输出为高,否则为低。
三、实验原理根据设计要求可知,输入信号共有2^5=32种可能,然而输出为高则有15种可能。
对于本设计,只需一个模块就能完成任务,并采用列写真值表是最简单易懂的方法。
四、计算机辅助设计设A,B,C,D,E引脚为输入引脚,F为输出引脚。
则原理图如1所示图1.1 五人表决器原理图实验程序清单如下:MODULE VOTEA,B,C,D,E PIN;F PIN ISTYPE 'COM';TRUTH_TABLE([A,B,C,D,E]->[F])[0,0,1,1,1]->[1];[0,1,1,1,0]->[1];[0,1,0,1,1]->[1];[0,1,1,0,1]->[1];[1,0,1,1,1]->[1];[1,1,0,1,1]->[1];[1,1,1,0,1]->[1];[1,1,1,1,0]->[1];[1,1,1,0,0]->[1];[1,1,0,1,0]->[1];[1,1,1,1,1]->[1];[1,1,0,0,1]->[1];[1,0,0,1,1]->[1];[1,0,1,0,1]->[1];[1,0,1,1,0]->[1];END五、实验测试与仿真根据题目要求,可设输入分别为:0,0,0,0,0;1,1,1,1,1;1,0,1,0,0;0,1,0,1,1。
其测试程序如下所示:MODULE fivevoteA,B,C,D,E,F PIN;X=.X.;TEST_VECTORS([A,B,C,D,E]->[F])[0,0,0,0,0]->[X];[1,1,1,1,1]->[X];[1,0,1,0,0]->[X];[0,1,0,1,1]->[X];END测试仿真结果如图1.2所示:图1.2 五人表决器设计仿真图可知,设计基本符合题目要求。
实验一:五人表决器一、程序清单library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity vote5 isport(v_in:in std_logic_vector(4 downto 0);lock,clr:in std_logic;v_over:out std_logic_vector(2 downto 0);num_agr,num_opp:out std_logic_vector(3 downto 0);v_out:out std_logic_vector(4 downto 0);led_agr,led_opp:out std_logic);end entity vote5;architecture one of vote5 isbeginprocess(clr,v_in,lock)variable agr,opp: std_logic_vector(3 downto 0);beginif(clr='1')thenled_agr<='0';led_opp<='0';agr:="0000";opp:="0000";if agr="0000" thennum_agr<="0000";end if;if opp="0000"thennum_opp<="0000";end if;v_out<="00000";v_over<="000";elsif(lock'event and lock='1')thenv_out<=v_in;v_over<="111";agr:="0000";opp:="0000";for i in 0 to 4 loopif (v_in(i)<='0') then opp:=opp+1;end if;agr:=5-opp;end loop;num_agr<=agr;num_opp<=opp;if(agr>opp)thenled_agr<='1';led_opp<='0';elseled_agr<='0';led_opp<='1';end if;end if;end process;end architecture one;三.仿真1. 功能仿真波形2.时序仿真波形实验二:九九乘法表系统的设计一、程序清单library ieee;use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;entity multiply is --构造体描述4位乘法器port( clk:in std_logic;a,b:in std_logic_vector(3 downto 0);led_data:out std_logic_vector(7 downto 0);seg_sel:out std_logic_vector(2 downto 0) );end multiply;architecture rtl of multiply issignal led_data2,led_data1,led_data0: std_logic_vector(7 downto 0);--LED显示代码,寄存十位个位的数signal displayclk: std_logic;beginprocess(a,b)variable s: std_logic_vector(7 downto 0);--乘积variable bai,shiwei,gewei: std_logic_vector(3 downto 0);--乘积的十位个位begins(7 downto 0):=a(3 downto 0)*b(3 downto 0);if s>="11001000" then bai:="0010";s:=s-"11001000";elsif s>="01100100" then bai:="0001";s:=s-"01100100";else bai:="0000";end if;if s>="01011010" then shiwei:="1001";s:=s-"01011010";gewei:=s(3 downto 0);--90以上 elsif s>="01010000" then shiwei:="1000";s:=s-"01010000";gewei:=s(3 downto 0);--80以上 elsif s>="01000110" then shiwei:="0111";s:=s-"01000110";gewei:=s(3 downto 0); --70以上 elsif s>="00111100" then shiwei:="0110";s:=s-"00111100";gewei:=s(3 downto 0);--60以上 elsif s>="00110010" then shiwei:="0101";s:=s-"00110010";gewei:=s(3 downto 0);--50以上 elsif s>="00101000" then shiwei:="0100";s:=s-"00101000";gewei:=s(3 downto 0);--40以上 elsif s>="00011110" then shiwei:="0011";s:=s-"00011110";gewei:=s(3 downto 0);--30以上 elsif s>="00010100" then shiwei:="0010";s:=s-"00010100";gewei:=s(3 downto 0);--20以上 elsif s>="00001010" then shiwei:="0001";s:=s-"00001010";gewei:=s(3 downto 0);--10以上 else gewei:=s(3 downto 0);shiwei:="0000";end if;case bai iswhen "0001" => led_data2<="11111001";when "0010" => led_data2<="10100100";when others => led_data2<="11111111";end case;case shiwei iswhen "0000" => led_data1<="11000000";when "0001" => led_data1<="11111001";when "0010" => led_data1<="10100100";when "0011" => led_data1<="10110000";when "0100" => led_data1<="10011001";when "0101" => led_data1<="10010010";when "0110" => led_data1<="10000010";when "0111" => led_data1<="11111000";when "1000" => led_data1<="10000000";when "1001" => led_data1<="10010000";when others => led_data1<="11111111";end case;case gewei iswhen "0000" => led_data0<="11000000";when "0001" => led_data0<="11111001";when "0010" => led_data0<="10100100";when "0011" => led_data0<="10110000";when "0100" => led_data0<="10011001";when "0101" => led_data0<="10010010";when "0110" => led_data0<="10000010";when "0111" => led_data0<="11111000";when "1000" => led_data0<="10000000";when "1001" => led_data0<="10010000";when others => led_data0<="11111111";end case;end process;process(clk)variable cnt:integer range 0 to 20000; --1KHZ扫描显示时钟 beginif clk'event and clk='1' then cnt:=cnt+1;if cnt<10000 then displayclk<='1';elsif cnt<20000 then displayclk<='0';else cnt:=0;displayclk<='0';end if;end if;end process;process (displayclk) --显示两位variable cnt2: std_logic_vector(1 downto 0);beginif displayclk'event and displayclk='1' then cnt2:=cnt2+1;if cnt2="01" then seg_sel<="001";led_data<=led_data0;elsif cnt2="010" then seg_sel<="010";led_data<=led_data1;elsif cnt2="11" then cnt2:="00"; seg_sel<="100";led_data<=led_data2;end if;end if;end process;end rtl;二、仿真设计输入文件经maxplus软件开发系统编译、处理,由功能仿真器进行模拟,获得仿真波形如图6所示。
实验一单级放大电路的设计与仿真一、实验目的1.掌握放大电路静态工作点的调整与测试方法;2.掌握放大电路动态参数的测试方法;3.观察动态工作点的选择对输出波形及放大倍数的影响。
二、实验要求1.设计一个分压偏置的单管电压放大电路,要求信号源频率5kHz(峰值10mV) ,负载电阻5.1kΩ,电压增益大于50。
2.调节电路静态工作点(调节偏置电阻),观察电路出现饱和失真和截止失真的输出信号波形,并测试对应的静态工作点值。
3.调节电路静态工作点(调节偏置电阻),使电路输出信号不失真,并且幅度最大。
在此状态下测试:①电路静态工作点值;r、ce r值;②三极管的输入、输出特性曲线和 、be③电路的输入电阻、输出电阻和电压增益;f、H f值。
④电路的频率响应曲线和L三、实验步骤1.单级放大电路的原理图:2.a.电路的饱和失真:静态工作点参数:图表3 饱和失真时静态工作点参数数据分析:Ib=12.90259uA Ic=2.07754mA Uce=0.20717V此时电位器为0%,基极静态电流过大而导致三极管达到饱和,使得电路出现失真。
b.电路的截止失真:图表4 截止失真时输出电压波形图静态工作点参数:图表5 截止失真时静态工作点参数数据分析:Ib=3.87579uA Ic=834.27745uA Uce=6.07513V此时电位器为100%,使得基极电位减小,三极管截止导致电路出现失真。
c.电路的最大不失真输出:图表6 最大不失真时输出电压波形图静态工作点参数:图表7 最大不失真时输出时静态工作点参数数据分析:Ube=0.64415V IC=1.87602mA IB=9.05731uA Uce=1.23723V β=207 此时电位器为20%3.a.三极管的输入特性:图表8 输入特性测试电路图表9 最大不失真时输入特性曲线从上图数据可以得出rbe=2.8353kΩb.三极管的输出特性:电路图及曲线:图表10 输出特性测试电路图表11 最大不失真时输出特性曲线从上图数据可以得出rce=10.793kΩ4.输入电阻的测量:图表12 输入电阻测量电路及数据从上图数据可以得出测试输入电流i=3.864uA 电阻Ri=2.588kΩ理论输入电阻Ri=2.483 kΩ误差4.1%5.输出电阻的测量:图表13 输出电阻测量电路及数据从上图数据可以得出测试输出电阻Ro=2.097kΩ理论输出电阻Ro=2.030 kΩ误差3.2%6.电压增益:图表14 电压增益测量电路及数据Au=110.557.电路的频率特性:图表15 波特图及数据最大输出增益41.25dB图表15 波特图及数据fL=229Hz fH=14.470MHz四、实验小结从以上测量的数据与理论计算值比较可以发现存在一定的误差,误差产生的原因可能包括:a.本次试验中的器件均选用实际器件,它们自身存在随机误差,例如:实验所用三极管的输出特性曲线放大区并非理想的水平平行线,而是发散的,只就导致正常放大的波形出现不对称行,仿佛截止失真。
实验一:不同设计输入方式比较1、实验目的(1) 学习MAX+plus II软件的基本使用方法。
(2) 学习EDA实验开发系统的基本使用方法。
(3) 掌握VHDL程序的原理图和文本输入方式。
2、实验内容(1) 原理图输入(mux21.vhd) 方式的2选1多路选择器的设计(2) 文本编辑输入(mux41.vhd) 方式的4选1多路选择器的设计3、实验要求(1) MAX+plus II软件画出系统的原理框图,说明系统中各主要组成部分的功能。
(2) 编写VHDL源程序。
(3) 在MAX+plus II工具下编译、综合、适配、仿真、实验板上的硬件测试。
(4) 根据EDA实验开发装置编好用于硬件验证的管脚锁定文件。
(5) 记录系统仿真、硬件验证结果。
(6) 记录实验过程中出现的问题及解决办法。
4:实验步骤:程序编译过程:新建text文件→输入程序并保存其中保存名为实体名,并以vhd类型结尾→点击file下的project设定为current file点击maxplus 中的compiler按钮→显示无误后→点击新建按钮建立wave 文件→点击node 按钮添加管脚→保存并按text 的步骤检验wave 文件。
(1):用原理图法实现二选一多路选择器。
二选一选择器原理图其中B端为控制端,A,C为控制端(2):用文本输入法实现四选一多路选择器。
其文本程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUX41 ISPORT(INPUT:IN STD_LOGIC_VECTOR(3 DOWNTO 0);A,B:IN STD_LOGIC;Y:OUT STD_LOGIC);END MUX41;ARCHITECTURE BE_MUX41 OF MUX41 ISSIGNAL SEL:STD_LOGIC_VECTOR(1 DOWNTO 0); BEGINSEL<=A&B;PROCESS(INPUT,SEL)BEGINIF(SEL="00")THENY<=INPUT(0);ELSIF(SEL="01")THENY<=INPUT(1);ELSIF(SEL="10")THENY<=INPUT(2);ELSEY<=INPUT(3);END IF;END PROCESS;END BE_MUX41;实验二:VHDL语言编程—组合逻辑电路设计1、实验目的(1) 学习VHDL三种描述风格;(2) 学习元件例化语句的使用方法;(3) 学习VHDL程序层次化设计方法2、实验内容用元件例化语句方法和原理图方法设计四位全加器。
实验一QUARTUS II软件安装、基本界面及设计入门一、实验目的:QUARTUSII是Altera公司提供的EDA工具,是当今业界最优秀的EDA设计工具之一。
提供了一种与结构无关的设计环境,使得电子设计人员能够方便地进行设计输入、快速处理和器件编程。
通过本次实验使学生熟悉QUARTUSII软件的安装,基本界面及基本操作,并练习使用QUARTUS的图形编辑器绘制电路图。
二、实验内容:1、安装QUARTUSII软件;2、熟悉QUARTUSII基本界面及操作;3通过一个4位加法器的设计实例来熟悉采用图形输入方式进行简单逻辑设计的步骤。
三、实验仪器:1、PC机一台;2、QUARTUSII软件;3、EDA实验箱。
四、实验原理:4位加法器是一种可实现两个4位二进制数的加法操作的器件。
输入两个4位二进制的被加数A和B,以及输入进位Ci,输出为一个4位二进制和数D和输出进位数Co。
半加操作就是求两个加数A、B的和,输出本位和数S及进位数C。
全加器有3位输入,分别是加数A、B和一个进位Ci。
将这3个数相加,得出本位和数(全加和数)D和进位数Co。
全加器由两个半加器和一个或门组成。
五、实验步骤:安装QUARTUSII软件;因为实验时我的机器了已经有QUARTUSII软件,所以我并没有进行安装软件的操作。
设计半加器:在进行半加器模块逻辑设计时,采用由上至下的设计方法,在进行设计输入时,需要由下至上分级输入,使用QuartusIIGraphic Editor进行设计输入的步骤如下。
(1)、打开QUARTUSII软件,选择File-new project wizard…新建一个设计实体名为has的项目文件;(2)、新建文件,在block.bdf窗口下添加元件符号,并连接。
如下图:半加器原理图(3)、将此文件另存为has.gdf的文件。
(4)、在主菜单中选择Processing→Start Compilation命令,系统对设计进行编译,同时打开Compilation Report Flow Summary窗体,Status视图显示编译进程。
eda仿真实验报告EDA仿真实验报告一、引言EDA(Electronic Design Automation)是电子设计自动化的缩写,是指利用计算机技术对电子设计进行辅助、自动化的过程。
在现代电子设计中,EDA仿真是不可或缺的一环,它可以帮助工程师验证电路设计的正确性、性能和可靠性。
本篇报告将介绍我在EDA仿真实验中的经验和收获。
二、实验背景本次实验的目标是对一个数字电路进行仿真,该电路是一个4位加法器,用于将两个4位二进制数相加。
通过仿真,我们可以验证电路设计的正确性,并观察其在不同输入情况下的输出结果。
三、实验步骤1. 电路设计:首先,我们根据给定的要求和电路原理图进行电路设计。
在设计过程中,我们需要考虑电路的逻辑关系、时序要求以及输入输出端口的定义等。
2. 仿真环境搭建:接下来,我们需要选择合适的EDA仿真工具,并搭建仿真环境。
在本次实验中,我选择了Xilinx ISE Design Suite作为仿真工具,并创建了一个仿真项目。
3. 仿真测试向量生成:为了对电路进行全面的测试,我们需要生成一组合适的仿真测试向量。
这些测试向量应该覆盖了电路的所有可能输入情况,以验证电路的正确性。
4. 仿真运行:在仿真环境搭建完成后,我们可以开始进行仿真运行了。
通过加载测试向量,并观察仿真结果,我们可以判断电路在不同输入情况下的输出是否符合预期。
5. 仿真结果分析:仿真运行结束后,我们需要对仿真结果进行分析。
通过对比仿真输出和预期结果,可以判断电路设计的正确性。
如果有不符合预期的情况,我们还可以通过仿真波形分析,找出问题所在。
四、实验结果与讨论在本次实验中,我成功完成了4位加法器的仿真。
通过对比仿真输出和预期结果,我发现电路设计的正确性得到了验证。
无论是正常情况下的加法运算,还是特殊情况下的进位和溢出,电路都能够正确地输出结果。
在实验过程中,我还发现了一些有趣的现象。
例如,在输入两个相同的4位二进制数时,电路的输出结果与输入完全一致。
实验名称:组合逻辑VHDL 设计——门电路
班级:09东通信1 学号:09811106 姓名:顾礼萍
一、二选一门电路的VHDL 设计
1.
实体框图
2.程序设计
ENTITY MUX21A IS
PORT(A,B,S:IN BIT;
Y:OUT BIT);
END ENTITY MUX21A;
ARCHITECTURE ONE OF MUX21A IS
BEGIN
PROCESS(A,B,S)
BEGIN
If S=’1’ then Y<=B;
ElSE Y<=A;
END PROCESS; mux21a a
b s
y
END ARCHITECTURE ONE;
3.仿真波形图
4.仿真波形分析
仿真波形如上图所示,通过分析,当二选一选择器选择端s=0时,输出端输出y=a的波形,当二选一选择器选择端s=1时,输出端y=b的波形,可见,该电路产生的波形可实现二选一功能,所以该设计是正确的,符合设计要求。
二、程序设计
用VHDL设计一个3输入与非门
Entity NAND3A IS
PORT(A,B,C:IN BIT;
Y:OUT BIT);
END ENTITY NAND3A;
ARCHITECTURE ONE OF NAND3A IS
BEGIN
Y<=A NAND B NAND C;
END ARCHITECTURE ONE ;
用VHDL设计一个2输入异或门
ENTITY XOR2A IS
PORT (A,B:IN BIT;
Y:OUT BIT);
END ENTITY XOR2A;
ARCHITECTURE ONE OF XOR2A IS
BEGIN
Y<=A XOR B;
END ARCHITECTURE ONE;
(4)、用VHDL设计实验讲义中P10的程序
ENTITY AA IS
PORT(A,B,CI: IN BIT;
S,CO: OUT BIT);
END ENTITY AA;
ARCHITECTURE ONE OF AA IS
BEGIN
S<=NOT(((A XOR B)AND CI) NOR(A AND B)); END ARCHITECTURE ONE;。