西电电院EDA实验报告
西安电子科技大学EDA实验报告
EDA大作业及实验报告实验一:QUARTUS Ⅱ软件使用及组合电路设计仿真实验目的:学习QUARTUS Ⅱ软件的使用,掌握软件工程的建立,VHDL源文件的设计和波形仿真等基本内容;实验内容:1.四选一多路选择器的设计首先利用QuartusⅡ完成4选1多路选择器的文本编辑输入(mux41a.vhd)和仿真测试等步骤,给出仿真波形。
步骤:(1)建立工作库文件夹和编辑设计文件;(2)创建工程;(3)编译前设置;(4)全程编译;(5)时序仿真;(6)应用RTL电路图观测器(可选择)实验程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux41 ISPORT(S10:IN STD_LOGIC_VECTOR(1 DOWNTO 0);A,B,C,D:IN STD_LOGIC;Q:OUT STD_LOGIC);END ENTITY mux41;ARCHITECTURE bhv OF mux41 ISBEGINPROCESS(A,B,C,D,S10)BEGINIF S10="00" THENQ<=A;ELSIF S10="01" THENQ<=B;ELSIF S10="10" THENQ<=C;ELSEQ<=D;END IF;END PROCESS;END bhv;波形仿真如图:其中,分别设置A,B,C,D四个输入都为10.0ns的方波,其占空比分别为25%,50%,75%,90%以作为四种输入的区分,使能端s10以此输入00(即[0]),01(即[1]),10(即[2]),11(即[3]),可以观察到输出端Q依次输出分别为A,B,C,D。
试验成功。
其RTL电路图为:2.七段译码器程序设计仿真2.1 原理:7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD中实现。
EDA实验报告
EDA实验报告一、实验目的本实验旨在通过使用EDA(数据探索性分析)技术,进一步了解和分析所研究数据的特征、分布、关系以及可能存在的异常值等,从而为后续的数据建模和决策提供更加准确的依据。
二、实验步骤1. 数据收集与加载从数据源中获取所需数据集,并使用相应的数据加载工具将数据集导入到实验环境中。
多种数据源包括文件、数据库、API请求等方式均可。
2. 数据检查与预处理对导入的数据进行初步检查,包括数据类型、缺失值、异常值等方面的处理。
根据具体需求,对缺失值可以进行填充或删除操作,对异常值可以通过替换、删除或者修复的方式进行处理。
3. 数据探索性分析a) 描述性统计分析对各个变量进行描述性统计,包括计算均值、中位数、标准差等指标,以直观地了解数据的分布和变异程度。
b) 单变量分析对每个变量进行分析和探索,绘制直方图、箱线图、概率密度图等,以帮助我们了解变量的分布情况、异常值等。
c) 多变量分析使用散点图、柱状图、热力图等方式,对不同变量之间的关系进行分析。
可以通过相关性分析、协方差矩阵等方法来探索变量之间的线性关系。
4. 结果可视化在数据分析过程中,可以使用适当的可视化方法将分析结果直观地展示出来,如绘制折线图、散点图、热力图等。
可视化可以更好地理解数据的特征和趋势。
5. 异常检测与处理在探索性分析过程中,发现异常值后,需要进一步分析和决定如何处理它们。
可以采用剔除、修复等方式,使得数据能够更加符合实际情况。
6. 相关性分析对于关键变量之间的相互关系,可以使用相关性分析等统计方法来衡量它们的相关程度。
这可以帮助我们理解变量之间的影响和作用,以及它们与问题或目标变量之间的关系。
三、实验结果通过对所研究数据集的EDA实验,我们得出以下结论:1. 数据集的缺失值情况较为严重,需要进行适当的处理,以避免因缺失数据引起的结果不准确或失真的问题。
2. 变量A和变量B之间存在较强的正相关关系,即当A增加时,B 也会相应地增加;变量C则与变量A和B之间的关系较弱。
EDA实验报告完结版
EDA实验报告完结版一、实验目的本次 EDA 实验的主要目的是通过实际操作和设计,深入理解和掌握电子设计自动化(EDA)技术的基本原理和应用。
具体而言,包括熟悉 EDA 工具的使用方法,学会运用硬件描述语言(HDL)进行逻辑电路的设计与描述,以及通过综合、仿真和实现等流程,将设计转化为实际的硬件电路,并对其性能进行评估和优化。
二、实验环境本次实验所使用的 EDA 工具为_____,该工具提供了丰富的功能模块和强大的设计支持,包括原理图编辑、HDL 代码编写、综合、仿真和下载等。
实验所使用的硬件平台为_____开发板,其具备多种接口和资源,便于对设计的电路进行实际验证和测试。
三、实验内容1、基本逻辑门电路的设计与实现使用 HDL 语言(如 Verilog 或 VHDL)设计常见的基本逻辑门电路,如与门、或门、非门等。
通过编写代码,对逻辑门的输入输出关系进行描述,并进行综合和仿真,验证设计的正确性。
2、组合逻辑电路的设计与实现设计并实现较为复杂的组合逻辑电路,如加法器、减法器、编码器、译码器等。
运用 HDL 语言描述电路的功能,进行综合和仿真,确保电路在各种输入情况下的输出结果符合预期。
3、时序逻辑电路的设计与实现设计常见的时序逻辑电路,如计数器、寄存器、移位寄存器等。
在设计过程中,考虑时钟信号、同步复位和异步复位等因素,通过仿真验证时序逻辑的正确性,并对电路的性能进行分析。
4、有限状态机(FSM)的设计与实现设计一个有限状态机,实现特定的功能,如交通信号灯控制器、数字密码锁等。
明确状态转移条件和输出逻辑,通过编写 HDL 代码实现状态机,并进行综合和仿真,验证其功能的准确性。
5、综合与优化对设计的电路进行综合,生成门级网表,并通过优化工具对电路进行面积、速度等方面的优化,以满足特定的设计要求。
6、硬件实现与测试将综合后的设计下载到硬件开发板上,通过实际的输入输出信号,对电路的功能进行测试和验证。
观察电路在实际运行中的表现,对出现的问题进行分析和解决。
EDA实验报告范例
EDA技术的相关网址:
• END F_ADDER_1;
• ARCHITECTURE a OF F_ADDER_1 IS • COMPONENT XOR_1 • PORT (A1,B1:IN std_logic; • C1: OUT std_logic); • END COMPONENT; • COMPONENT NAND_2 • PORT (A1,B1:IN std_logic; • C1: OUT std_logic); • END COMPONENT; • SIGNAL S1,S2,S3: std_logic ; • BEGIN
• 三、 实验条件
• (1) 电脑。 • (2) 开发软件: QuartusII 。 • (3) 实验设备: EL- EDA-V型 • EDA 实 验 开 发 系 统。 • (3) 拟用芯片: ACEX1K: • EP1K100QC2083。
•
四、 实验设计
1)全加器的逻辑图
由异或门和二输入端与非门构 成的1位二进制全加器如图所示。
实验教学目的:
了解一类可编程逻辑器件,掌握一门硬件描述 语言,熟悉使用一种EDA设计工具,设计自己的芯片。
教材及参考资料
教材:
《EDA技术及应用》谭会生、张昌凡 编著 西安电子科技大学出版社
参考资料:
《CPLD技术及其应用》宋万杰 等编著 西安电子科大出版社出版 《VHDL硬件描述语言与数字逻辑电路设计》 侯伯亨 顾新 等编著 西安电子科技大学出版社 《CPLD/FPGA的开发和应用》徐光辉 等编著 电子工业出版社出版
• --与非门的VHDL描述
• • • • • • • • • • LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY NAND_2 IS PORT( A1,B1: IN std_logic; C1: OUT std_logic); END NAND_2; ARCHITECTURE c OF NAND_2 IS BEGIN C1<=A1 NAND B1; END c;
西电EDA实验报告
西电EDA实验报告交通灯控制器设计报告交通控制器一.选题目的尝试用所学eda和vhdl编程知识,解决生活中常见的问题。
做到学而时习之。
二.设计目标(课题内容)设计一个十字路口交通控制系统,其东西,南北两个方向除了有红、黄、绿灯指示是否允许通行外,还设有时钟,以倒计时方式显示每一路允许通行的时间,绿灯,黄灯,红灯的持续时间分别是40、5和45秒。
当东西或南北两路中任一道上出现特殊情况,例如有消防车,警车要去执行任务,此时交通控制系统应可由交警手动控制立即进入特殊运行状态,即两条道上的所有车辆皆停止通行,红灯全亮,时钟停止计时,且其数字在闪烁。
当特殊运行状态结束后,管理系统恢复原来的状态,继续正常运行。
三.实现方案(包括原理框图和hdl设计流程图)1原理框图从题目中计数值与交通灯的亮灭的关系如图(1)所示1.交通灯的显示状况:东西南北图(1)计数值与交通灯亮灭的关系2.交通等的原理示意图如图(2)图(2)交通灯的示意图3.hdl设计流程图如图(3):四.设计过程(包括关键模块的仿真结果)1.总体思路第一部分:clk时钟秒脉冲发生电路在红绿灯交通信号系统中,大多数情况是通过自动控制的方式指挥交通的。
因此为了避免意外事件的发生,电路必须给一个稳定的时钟(clock)才能让系统正常运作。
模块说明:系统输入信号:clk: 由外接信号发生器提供10hz的时钟信号;系统输出信号:clk_out:产生每秒一个脉冲的信号;第二部分:计数秒数选择电路计数电路最主要的功能就是记数负责显示倒数的计数值,对下一个模块提供状态转换信号。
模块说明:系统输入:clk_out: 接收由clk电路的提供的1hz的时钟脉冲信号;系统输出信号:countnum:倒计数值;第三部分:红绿灯状态转换电路本电路负责红绿灯的转换。
模块说明:系统输入信号:clock,hold,countnum;系统输出信号:numa,numb: 接收计数秒数选择电路状态转换信号;reda,greena,yellowa,redb,greenb,yellowb :负责红绿灯的状态显示。
EDA实验报告 (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技术实验报告(1)
实验一利用原理图输入法设计4位全加器一、实验目的:掌握利用原理图输入法设计简单组合电路的方法,掌握MAX+plusII的层次化设计方法。
通过一个4位全加器的设计,熟悉用EDA软件进行电路设计的详细流程。
二、实验原理:一个4位全加器可以由4个一位全加器构成,全加器的进位以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的低位进位输入信号cin相接。
1位全加器f-adder由2个半加器h-adder和一个或门按照下列电路来实现。
半加器h-adder由与门、同或门和非门构成。
四位加法器由4个全加器构成1234三、实验内容:1. 熟悉QuartusII软件界面,掌握利用原理图进行电路模块设计的方法。
QuartusII设计流程见教材第五章:QuartusII应用向导。
2.设计1位全加器原理图(1)生成一个新的图形文件(file->new->graphic editor)(2)按照给定的原理图输入逻辑门(symbol->enter symbol)(3)根据原理图连接所有逻辑门的端口,并添加输入/输出端口(4)为管脚和节点命名:在管脚上的PIN_NAME处双击鼠标左键,然后输入名字;选中需命名的线,然后输入名字。
(5)创建缺省(Default)符号:在File菜单中选择Create Symbol Files for Current File项,即可创建一个设计的符号,该符号可被高层设计调用。
3.利用层次化原理图方法设计4位全加器(1)生成新的空白原理图,作为4位全加器设计输入(2)利用已经生成的1位全加器的缺省符号作为电路单元,设计4位全加器的原理图.4.新建波形文件(file->new->Other Files->Vector Waveform File),保存后进行仿真(Processing ->Start Simulation),对4位全加器进行时序仿真。
eda实验报告
eda实验报告
1. 实验目的
通过本次实验,了解EDA(Electronic Design Automation)的基本概念和应用模式,并通过实际操作掌握EDA工具的使用方法和流程。
2. 实验原理
EDA是电子设计自动化的缩写,是指通过计算机技术来实现电子系统设计的各个环节的自动化。
常用的EDA工具有电路仿真、电路布局、原理图设计、印刷电路板设计等。
3. 实验步骤
3.1 电路仿真
首先,我们需打开EDA工具,并导入所需的仿真器和电路元件库。
其次,我们需绘制电路图并进行仿真,根据仿真结果进一步分析和改进电路设计。
3.2 电路布局
在电路设计完成后,我们需进行电路布局,以便更精确地计算
电路性能和参数。
在布局过程中,我们需根据电路设计需求进行
元件排布,并考虑布局紧凑性和功耗等因素。
3.3 原理图设计
电路图设计是EDA工具中非常重要的一个环节,它可以帮助
我们全面了解电路设计的各个细节,确定电路元件的类型和参数,以及进一步优化电路性能。
3.4 印刷电路板设计
在进行电路仿真、布局、原理图设计后,我们需将电路设计转
化为印刷电路板(PCB)的形式。
在进行印刷电路板设计前,我
们需考虑各个细节,在选择印刷方式、器件布局、线路距离、阻
抗匹配等方面进行优化和调整。
4. 实验结论
通过本次实验,我深刻认识到EDA工具在电子设计中的应用
和重要性,并掌握了EDA工具的基本操作方法和流程。
此外,我
了解了EDA工具在电子设计和生产中的优势和局限性,对于今后
电子设计工作的开展和优化有很大的指导意义。
EDA技术实验报告(1)
实验一利用原理图输入法设计4位全加器一、实验目的:掌握利用原理图输入法设计简单组合电路的方法,掌握MAX+plusII的层次化设计方法。
通过一个4位全加器的设计,熟悉用EDA软件进行电路设计的详细流程。
二、实验原理:一个4位全加器可以由4个一位全加器构成,全加器的进位以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的低位进位输入信号cin相接。
1位全加器f-adder由2个半加器h-adder和一个或门按照下列电路来实现。
半加器h-adder由与门、同或门和非门构成。
四位加法器由4个全加器构成1234三、实验内容:1. 熟悉QuartusII软件界面,掌握利用原理图进行电路模块设计的方法。
QuartusII设计流程见教材第五章:QuartusII应用向导。
2.设计1位全加器原理图(1)生成一个新的图形文件(file->new->graphic editor)(2)按照给定的原理图输入逻辑门(symbol->enter symbol)(3)根据原理图连接所有逻辑门的端口,并添加输入/输出端口(4)为管脚和节点命名:在管脚上的PIN_NAME处双击鼠标左键,然后输入名字;选中需命名的线,然后输入名字。
(5)创建缺省(Default)符号:在File菜单中选择Create Symbol Files for Current File项,即可创建一个设计的符号,该符号可被高层设计调用。
3.利用层次化原理图方法设计4位全加器(1)生成新的空白原理图,作为4位全加器设计输入(2)利用已经生成的1位全加器的缺省符号作为电路单元,设计4位全加器的原理图.4.新建波形文件(file->new->Other Files->Vector Waveform File),保存后进行仿真(Processing ->Start Simulation),对4位全加器进行时序仿真。
《EDA技术》实验报告
《EDA技术》实验报告
本次实验报告是关于EDA技术的研究和应用。
EDA技术全称电子设计自动化技术,能
够实现电子设计的自动化和优化。
首先,我们讨论了EDA技术的应用范围。
EDA技术主要应用于现代集成电路的设计和
制造,目的是提高电路的性能,并减少设计和制造的成本和时间。
EDA技术可用于设计各
种电路,包括数字电路、模拟电路、混合信号电路和射频电路等。
其次,我们介绍了EDA技术的主要工具。
EDA技术工具包括原理图编辑器、电路模拟器、布局编辑器和综合工具等。
这些工具可以协同工作,在电路设计的不同阶段对电路进
行分析和优化。
接着,我们描述了EDA技术的设计流程。
EDA技术的设计流程分为四个主要阶段:设计,模拟,综合和布局。
在设计阶段,设计师使用原理图编辑器和其他工具来设计电路。
在模拟阶段,设计师将电路模型装入电路模拟器中,并进行仿真以验证电路的功能和性能。
在综合阶段,设计师使用综合工具将电路转换为特定的逻辑网表文件。
在布局阶段,设计
人员使用布局编辑器来设置电路的物理布局。
最后,我们讨论了EDA技术的优缺点。
EDA技术的主要优点是提高电路设计的效率和
准确性,并减少了设计和制造的成本和时间。
然而,EDA技术也存在一些缺点,例如,设
计人员需要具备高水平的技术和知识,否则可能出现算法错误或设计缺陷。
综上所述,EDA技术在现代电子设备设计和制造中起着非常重要的作用,技术的发展
将会极大程度上促进电子设备的设计和制造的进步和发展。
EDA实验报告xianxi
数字电路EDA可编程逻辑实验报告学院:电子工程学院班级:学号:姓名:西安邮电大学电子工程学院电工电子实验教学部实验二:用原理图输入法设计门电路实验目的:1.进一步掌握PLD芯片的基本使用方法,熟悉EDA软件MAX+plus的操作。
2.学会利用软件仿真和实现用硬件对数字电路的逻辑功能进行验证和分析。
3.学习初步的VHDL程序设计方法。
器材:PC实验内容:实现1、F=a∙b2、F=a b3、F=A⊕B4、F=abc d实验结果:1、F=a∙b源程序:library ieee;use ieee.std_logic_1164.all;entity and2 isport(a,b:in std_logic;y:out std_logic);end;architecture rel_1 of and2 isbeginy<=a and b;end;仿真结果:2、F=a b源程序:library ieee;use ieee.std_logic_1164.all; entity nand2 isport(a,b:in std_logic;y:out std_logic); end;architecture rel_1 of nand2 is beginy<=a nand b;end;仿真结果:3、F=A⊕B源程序:library ieee;use ieee.std_logic_1164.all; entity xor2 isport(a,b:in std_logic;y:out std_logic); end;architecture rel_1 of xor2 is beginy<=a xor b;end;仿真结果:4、F=abc d源程序:library ieee;use ieee.std_logic_1164.all; entity yhf isport(a,b,c,d:in std_logic;F:out std_logic); end;architecture rel_1 of yhf is signal g,h,y:std_logic; beging<=not a and b and c;h<=not d;y<=g or h;F<=y;end;仿真结果:实验小结:本实验为第一次EDA实验,不免有些兴奋和好奇,加之老师讲的比较好,所以基本上没有遇到什么问题。
eda实验报告完整版
EDA实验报告焦中毅201300121069实验1 4选1数据选择器的设计一、实验目的1.学习EDA软件的基本操作。
2.学习使用原理图进行设计输入。
3.初步掌握器件设计输入、编译、仿真和编程的过程。
4.学习实验开发系统的使用方法。
二、实验仪器与器材1.EDA开发软件一套2.微机一台3.实验开发系统一台4.打印机一台三、实验说明本实验通过使用基本门电路完成4选1数据选择器的设计,初步掌握EDA设计方法中的设计输入、编译、综合、仿真和编程的过程。
实验结果可通过实验开发系统验证,在实验开发系统上选择高、低电平开关作为输入,选择发光二极管显示输出电平值。
本实验使用Quartus II 软件作为设计工具,要求熟悉Quartus II 软件的使用环境和基本操作,如设计输入、编译和适配的过程等。
实验中的设计文件要求用原理图方法输入,实验时,注意原理图编辑器的使用方法。
例如,元件、连线、网络名的放置方法和放大、缩小、存盘、退出等命令的使用。
学会管脚锁定以及编程下载的方法等。
四、实验要求1.完成4选1数据选择器的原理图输入并进行编译;2.对设计的电路进行仿真验证;3.编程下载并在实验开发系统上验证设计结果。
五、实验结果4选1数据选择器的原理图:仿真波形图:管脚分配:实验2 四位比较器一、实验目的1.设计四位二进制码比较器,并在实验开发系统上验证。
2.学习层次化设计方法。
二、实验仪器与器材1.EDA 开发软件 一套 2.微机 一台 3.实验开发系统 一台 4.打印机 一台 5.其它器件与材料 若干 三、实验说明本实验实现两个4位二进制码的比较器,输入为两个4位二进制码0123A A A A 和0123B B B B ,输出为M (A=B ),G (A>B )和L (A<B )(如图所示)。
用高低电平开关作为输入,发光二极管作为输出,具体管脚安排可根据试验系统的实际情况自行定义。
四、实验要求1.用硬件描述语言编写四位二进制码 比较器的源文件; 2.对设计进行仿真验证; 3.编程下载并在实验开发系统上进行 硬件验证。
西电电院EDA实验报告
EDA实验报告老师:杨明磊姓名:同作者:学号:学院:电子工程学院实验一:QUARTUS II软件使用及组合电路设计仿真一、实验目的:学习QUARTUS II软件的使用,掌握软件工程的建立、VHDL源文件的设计和波形仿真等基本内容;二、实验内容:1.四选一多路选择器的设计首先利用QuartusⅡ完成4选1多路选择器的文本编辑输入和仿真测试等步骤,给出仿真波形。
1.、功能及原理原理:数据选择器又称为多路转换器或多路开关,它是数字系统中常用的一种典型电路。
其主要功能是从多路数据中选择其中一路信号发送出去。
所以它是一个多输入、单输出的组合逻辑电路。
功能:当选择控制端s10=00时,输出;s10=01时,输出;s10=10时,输出;s10=11时,输出。
2.、逻辑器件符号3.、VHDL语言4.、波形仿真5.、仿真分析由波形可知:当s10=00时,y的波形与a相同;当s10=01时,y的波形与b相同;当s10=10时,y的波形与c相同;当s10=11时,y的波形与d相同;与所要实现的功能相符,源程序正确。
2.七段译码器程序设计仿真1.、功能及原理7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD中实现。
实验中的数码管为共阳极,接有低电平的段发亮。
例如当LED7S输出为"0010010" 时,数码管的7个段:g、f、e、d、c、b、a分别接0、0、1、0、0、1、0,于是数码管显示“5”。
2.、逻辑器件符号3.、VHDL语言4.、波形仿真5.、仿真分析由仿真波形可以直观看到,当A=“0000”时,led7s=1000000,数码管显示为0;A=“0001”时,led7s=1111001,数码管显示为1;....依此可验证波形仿真结果完全符合预期,源程序正确。
eda实验报告完整版
eda实验报告完整版EDA实验报告一、文献综述EDA,全称为Exploratory Data Analysis,是一种数据探索性分析方法。
EDA通过多种可视化工具和数据分析技术快速探索数据集的特征和结构,从而发现其中的规律和异常,确定数据的可靠性和种类。
EDA的主要目的在于对数据进行全面的分析和理解,为后续的数据处理和建模提供参考。
EDA作为数据预处理的重要步骤,在数据分析和建模中占据着重要的地位。
目前,随着数据收集、存储和分析技术的快速发展,EDA正在成为数据分析中不可缺少的部分。
在大数据时代,EDA的发展已经超越了其传统的数据探索性分析功能,成为了快速调试和优化模型的重要手段。
二、实验目的本次实验旨在掌握EDA技术方法和可视化工具,在实际数据集中进行数据预处理和探索性分析。
主要目标包括:1.掌握常用的EDA方法和可视化工具。
2.通过对实际数据集处理和分析,了解数据的特征和结构。
3.确定数据集的质量、可靠性和种类。
4.为后续的数据处理和建模提供参考。
三、实验流程1.数据集的加载和清洗本次实验选用的数据集为Iris数据集,包含了鸢尾花的三个品种(Setosa、Versicolour、Virginica)的四个特征(sepal length、sepal width、petal length、petal width)共150个样本。
由于Iris数据集已经经过处理,因此不需要进行特殊的预处理。
为了更好地探索Iris数据集,我们将其存储为dataframe格式,以方便进行数据的各类统计和可视化。
2.数据特征的可视化在数据特征的可视化中,我们使用了多种可视化工具包括:ggplot2和ggpubr。
下面是我们在R语言环境下所使用的代码。
# 加载ggplot2和ggpubrlibrary(ggplot2)library(ggpubr)#加载Iris数据集data("iris")df = iris# 1.绘制直方图hist <- ggplot(df, aes(x = Sepal.Length)) +geom_histogram(fill = "blue", alpha = .5, bins = 30) +ggtitle("Distribution of Sepal.Length")# 2.绘制密度图density <- ggplot(df, aes(x = Sepal.Width, fill = Species)) +geom_density(alpha = .5) +scale_fill_manual(values = c("#00AFBB", "#E7B800", "#FC4E07")) +ggtitle("Density plot of Sepal.Width")# 5.绘制箱线图boxplot <- ggplot(df, aes(x = Species, y = Sepal.Length, fill = Species)) + geom_boxplot() +ggtitle("Boxplot of Sepal.Length by Species")上述代码会生成6个图表,分别为直方图、密度图、散点图、热力图、箱线图和柱状图。
EDA实验报告
EDA课程实践感悟EDA是电子设计自动化(Electronic Design Automation)的英文缩写,是随着集成电路和计算机技术飞速发展应运而生的一种快速、有效、高级的电子设计自动化工具。
这次学校为我们安排的EDA 课程包括了课堂讲授、课后自修以及课程实验三个环节,从这次课程当中我学习到了很多关于电子设计自动化的基础知识,锻炼提高了多方面的综合能力。
一自己对EDA的了解通过课堂老师的讲述和课后对书本的自习,我初步了解了EDA的特征和优势,目标和流程并知道了一些EDA公司和工具,并学习了可编程逻辑器件基础。
1 EDA的特征和优势在现代电子设计中,几乎所有的设计工作都需要在计算机上进行。
,设计者只需完成对系统功能的描述,就可以由计算机软件进行处理得到设计结果。
EDA以硬件描述语言(Hardware Description Language)为系统逻辑描述手段完成的设计文件可以自动完成逻辑编译、逻辑化简、逻辑分割、逻辑综合、布局布线和仿真测试,直至实现既定的电子线路系统功能。
飞速发展EDA 技术使得“自定而下”的设计方法被广泛使用。
在这种新的设计方法中,由用户也对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路ASIC来实现。
用户首先从系统级设计入手,在顶层进行功能方框图的划分和结构设计;在方框图以及进行仿真、纠错看,并用硬件描述语言对高层次的系统行为进行描述;用逻辑综合优化工具生成具体的门级逻辑电路的网表,其对应的物理实现可以是印制电路板或专用集成电路。
EDA技术便利了复杂系统的设计,为用户提供了强大的系统建模和电路仿真功能,全方位地利用计算机和自动设计、仿真和测试技术,降低了设计者的硬件知识和硬件经验的要求。
2 EDA的设计流程一个典型的EDA 设计流程主要包括设计准备,设计输入、设计处理、器件变成和设计验证等五个基本步骤。
设计输入有多种方式,包括采用硬件描述语言进行设计的文本输入方式、图形输入方式和波形输入方式,或者采用文本、图形两者混合的设计输入方式,也可以采用“自顶向下”的层次设计方法,将多个输入和并为一个设计文件。
EDA实验报告
EDA实验报告一、实验目的本次 EDA 实验的主要目的是熟悉电子设计自动化(EDA)软件的使用,掌握数字电路的设计、仿真和实现流程,提高对数字逻辑电路的理解和设计能力。
二、实验设备与环境1、计算机一台2、 EDA 软件(如 Quartus II 等)三、实验原理1、数字逻辑基础数字电路中的基本逻辑门包括与门、或门、非门、与非门、或非门等。
通过这些基本逻辑门的组合,可以实现各种复杂的数字逻辑功能。
2、组合逻辑电路组合逻辑电路的输出仅取决于当前的输入,不存在存储单元。
常见的组合逻辑电路有加法器、编码器、译码器等。
3、时序逻辑电路时序逻辑电路的输出不仅取决于当前的输入,还与电路的过去状态有关。
常见的时序逻辑电路有计数器、寄存器等。
四、实验内容1、设计一个简单的加法器使用基本逻辑门设计一个两位加法器,输入为两个两位的二进制数A 和 B,输出为它们的和 S 以及进位 C。
2、设计一个 4 位计数器实现一个 4 位的计数器,能够在时钟信号的上升沿进行计数,计数范围为 0 到 15。
3、设计一个数码管显示译码器将输入的 4 位二进制数转换为数码管的 7 段显示编码,实现数字 0 到 9 的显示。
五、实验步骤1、加法器设计(1)打开 EDA 软件,创建一个新的项目。
(2)使用原理图输入方式,绘制出加法器的逻辑电路图,包括两个半加器和一个或门。
(3)对设计进行编译,检查是否存在语法错误。
(4)创建仿真文件,设置输入信号的激励,进行功能仿真,观察输出结果是否符合预期。
2、计数器设计(1)在项目中新建一个模块,使用 Verilog HDL 语言描述计数器的功能。
(2)编写测试代码,对计数器进行仿真验证。
(3)将计数器下载到硬件开发板上,通过观察实际的输出结果验证其功能。
3、数码管显示译码器设计(1)同样使用原理图输入方式,设计数码管显示译码器的逻辑电路。
(2)进行编译和仿真,确保译码器的功能正确。
(3)将译码器与计数器连接起来,实现数码管的动态显示。
西电EDA报告
8位移向相加乘法器1.乘法器原理8位乘法器可用移位和加法来实现,两个8位数相乘,总共需要执行8次加法运算和8次移位运算,由乘数的末位值确定被乘数是否与原部分积相加,从乘数的最低位开始,若乘数为1,加被乘数,然后右移一位,形成新的部分积,乘数同时右移一位;若乘数为0,加上零值,然后右移一位,形成新的部分积,乘数同时右移一位,直到乘数的最高位为止,从而得出最终的乘积结果。
实现原码一位乘法的硬件逻辑结构图如下图所示。
用寄存器R0存放部分积;R0存放乘数Y,并且最低位Yn作判断为;R0和R1都具有右移功能并且是连通的;寄存器R2存放被乘数X,加法器完成部分积与位积求和,计数器记录相加移位的操作次数。
8位乘法器的顶层设计主要分成四大功能模块,并可根据分解的层次进行设计,各个功能模块作用介绍如下:1)右移寄存器模块:是指寄存器中所存的代码能够在移位脉冲的作用下依次左移或右移,本设计采用的一个8位寄存器,能存放8位二进制代码,需用8个触发器来构成,它可将乘法运算中的被乘数加载于其中,同时进行乘法运算的移位操作。
2)加法器:本设计用到一个8位加法器,主要进行操作数的加法运算。
3)乘1模块:主要实现8位与1位的乘法运算。
4)锁存器:它所实现的功能是把当前的状态锁存起来,使CPU送出的数据在接口电路的输出端保持一段时间锁存后状态不再发生变化,直到解除锁定。
本次设计采用16位锁存器,同时也是一个右移寄存器,在时钟信号作用下,进行输入值的移位与锁存。
2.乘法器设计流程本设计采用移位和加法来实现两个8位二进制数相乘。
由乘数的末尾值来确定被乘数是否与原部分积相加,然后右移一位,形成新的部分积;同时,乘数也右移一位,由次低位作新的末位,空出最高位放部分积的最高位。
例如被乘数为00000101,乘数为01101111,初始条件下,部分积为0,乘数最低位为1,加被乘数,和为00000101,使其右移一位,形成新的部分积为00000010,乘数同时右移一位,原和最低位1被放到乘数的最高位,此时,乘数最低位为1,加00000101,和为00000111,使其右移一位,形成新的部分积为0000011,依次类推,循环8次,总共需要进行8次相加和8次移位操作,最终得出乘积结果。
EDA实验报告一
EDA实验报告| 实验一:全加器设计一.实验目的:1.通过实验初步了解EDA的基本概念;2.初步掌握用VHDL语言及原理图进行单元设计的方法;3.初步了解层次设计法;4.熟悉EDA开发软件的操作。
二.实验内容设计一个两位全加器,并用发光二极管显示结果。
三.实验要求全加器的三个输入(二个数字输入,一个进位输入)用实验箱中W1,SW2,SW3控制,二个输出用发光管LED1,LED2显示。
整个设计采用层次设计方法,顶层文件采用原理图输入法。
整个电路设计思路分三部分:1半加器电路设计;2.全加器电路设计,是在半加器的基础上设计的;3.数据输入,输出电路设计。
四.实验步骤1.半加器设计:编写halfaddr.vhd(编辑、设为当前项目、选择器件、编译、仿真无误)2.全加器设计:编写addr.vhd(用结构描述方法的方法、用COMPONENT halfaddr作两次半加构成全加器;编辑、设为当前项目、选择器件、编译、仿真无误)3.顶层文件设计:编辑好endaddr.gdf(用原理图输入设计方法、全加器符号、输入输出端口信号、设为当前项目、选择器件、编译、仿真无误),并观察系统设计的层次结构4.管脚锁定:根据EPF10K10引脚对应表分配好管脚,并进行定时分析6.实验编程下载:确认管脚分配正确,跳线正确,下载程序到芯片。
观察实验现象SW1(a30) LED1(s16) LED2(co17)0 1 0 ▲1 0 0 ▲1 1 0 ▲0 0 1 ▲0 1 1 ▲1 0 1 ▲1 1 1 ▲▲(其中▲代表LED灯亮)五.思考题参考以上方法产生的一位全加器endaddr.gdf:设计出二位全加器。
以下是2endaddr.gdf:经老师验证,结果正确。
六.实验心得:首先谢谢赵老师的细心和悉心帮助。
虽然先前有先使用过软件,但没琢磨透,因此第一次实验都是在尽量学会使用这个软件^_^ 如今基本掌握做实验可以把自己的思路和课本的理论结合起来,受益匪浅;而能把实验正确结果做出来又是很快意的。
eda课程设计实验报告
eda课程设计实验报告一、课程目标知识目标:1. 学生能理解EDA(电子设计自动化)的基本概念,掌握EDA工具的使用方法。
2. 学生能运用所学知识,设计并实现基本的数字电路。
3. 学生了解数字电路的设计流程,掌握设计规范,具备初步的电路分析能力。
技能目标:1. 学生能独立操作EDA软件,完成电路的原理图绘制、仿真和布局布线。
2. 学生通过实验报告的撰写,提高实验数据分析、总结归纳的能力。
3. 学生在小组合作中,提高沟通协调能力和团队协作能力。
情感态度价值观目标:1. 学生培养对电子科学的兴趣,激发创新意识,增强实践能力。
2. 学生在实验过程中,形成严谨的科学态度,提高问题解决能力。
3. 学生通过课程学习,认识到科技发展对国家和社会的重要性,增强社会责任感。
课程性质:本课程为实践性较强的电子设计课程,旨在培养学生的实际操作能力、创新意识和团队合作精神。
学生特点:六年级学生具有一定的电子知识基础,好奇心强,喜欢动手实践,但需加强对理论知识的理解和应用。
教学要求:结合学生特点,注重理论与实践相结合,充分调动学生的积极性,提高学生的实践能力和创新能力。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容根据课程目标,本章节教学内容主要包括以下几部分:1. EDA基本概念与工具介绍- 电子设计自动化原理简介- 常用EDA软件功能与操作方法2. 数字电路设计基础- 数字电路基本元件及功能- 原理图绘制与仿真分析3. 布局布线与PCB设计- PCB设计流程与方法- 布局布线技巧与规范4. 实验报告撰写- 实验数据整理与分析- 实验总结与反思教学大纲安排如下:第一周:- EDA基本概念与工具介绍- 数字电路基本元件及功能第二周:- 原理图绘制与仿真分析第三周:- 布局布线与PCB设计第四周:- 实验报告撰写教学内容与教材关联性:本教学内容与教材《电子技术基础与实践》第六章“电子设计自动化”相关章节紧密相连,确保了教学内容的科学性和系统性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EDA实验报告老师:杨明磊姓名:同作者:学号:学院:电子工程学院实验一:QUARTUS II软件使用及组合电路设计仿真一、实验目的:学习QUARTUS II软件的使用,掌握软件工程的建立、VHDL源文件的设计和波形仿真等基本内容;二、实验内容:1.四选一多路选择器的设计首先利用QuartusⅡ完成4选1多路选择器的文本编辑输入(mux41a.vhd)和仿真测试等步骤,给出仿真波形。
1.、功能及原理原理:数据选择器又称为多路转换器或多路开关,它是数字系统中常用的一种典型电路。
其主要功能是从多路数据中选择其中一路信号发送出去。
所以它是一个多输入、单输出的组合逻辑电路。
功能:当选择控制端s10=00时,输出;s10=01时,输出;s10=10时,输出;s10=11时,输出。
2.、逻辑器件符号3.、VHDL语言4.、波形仿真5.、仿真分析由波形可知:当s10=00时,y的波形与a相同;当s10=01时,y的波形与b相同;当s10=10时,y的波形与c相同;当s10=11时,y的波形与d相同;与所要实现的功能相符,源程序正确。
2.七段译码器程序设计仿真1.、功能及原理7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD中实现。
实验中的数码管为共阳极,接有低电平的段发亮。
例如当LED7S输出为 "0010010" 时,数码管的7个段:g、f、e、d、c、b、a分别接0、0、1、0、0、1、0,于是数码管显示“5”。
2.、逻辑器件符号3.、VHDL语言4.、波形仿真5.、仿真分析由仿真波形可以直观看到,当A=“0000”时,led7s=1000000,数码管显示为0;A=“0001”时,led7s=1111001,数码管显示为1;....依此可验证波形仿真结果完全符合预期,源程序正确。
三.实验心得在第一次上机实验中,我们通过对EDA设计软件QuartusⅡ使用,初步学会了它的使用方法。
在实验中我们编写程序,编译,进行时序仿真以验证程序对错等。
在完成VHDL的编辑以后,进行编译,结果出现了很多错误,在细心的检查之下,最终将VHDL描述修改成功并且通过了编译,在编译过程中我了解到很多在书本上没有理解的知识。
总的来说,通过上机实验,我激发了对EDA学习的兴趣,也对这门课程有了更深的理解,对EDA设计软件Quarter Ⅱ的使用也更加熟练。
实验二计数器设计与显示一、实验目的(1)、熟悉利用QUARTUS II中的原理图输入法设计组合电路,掌握层次化设计的方法;(2)、学习计数器设计、多层次设计方法和总线数据输入方式的仿真,并进行电路板下载演示验证。
二、实验内容1、完成计数器设计(4位二进制加减可控计数器)(1)、功能及原理含有异步清零和计数使能的4位二进制加减可控计数器:清零端reset:低电平有效,异步清零,即reset=0时,无论时钟处于什么状态,输出立即置零。
使能端enable:高电平有效,即enable=1时,计数器开始计数;enable=0时,计数器停止计数。
加减控制端updown:当updown=0时,为减法计数器;当updown=1时,为加法计数器。
2.、逻辑器件符号3.、VHDL语言4.、波形仿真updown=1时,为加法计数:updown=0时,为减法计数:5.、仿真分析由以上两个波形很容易看出,enable=1时,计数器开始计数;reset=0时,计数器置零;updown=0时,减法计数;updown=1时,加法计数;co为进位端。
符合设计初衷。
2、50M分频器的设计(1)、功能及原理50M分频器的作用主要是控制后面的数码管显示的快慢。
即一个模为50M的计数器,由时钟控制,分频器的基本原理与上述计数器基本相同。
分频器的进位端co用来控制加减计数器的时钟,将两个器件连接起来。
(2)、逻辑器件符号(3)、VHDL语言(4)、波形仿真(5)、仿真分析由波形仿真可以看出,enable=1时,由0开始计数,由于计数器模值较大,故只显示了一部分波形,计数范围由0到50M。
3、七段译码器程序设计在实验一中已给出具体程序及仿真结果,不再赘述。
4、计数器显示译码设计与下载以前面设计的七段译码器decl7s和计数器为底层元件,完成“计数器显示译码”的顶层文件设计。
计数器和译码器连接电路的顶层文件原理图如下:原理图连接好之后就可以进行引脚的锁定,然后将整个程序下载到已经安装好的电路板上,即可进行仿真演示。
三.实验心得实验三:大作业设计(循环彩灯)一、实验目的:综合应用数字电路的各种设计方法,完成一个较为复杂的电路设计;二.设计目标设计一个循环彩灯控制器,该控制器可控制10个发光二极管循环点亮、间隔点亮或者闪烁等花型。
要求至少设计三种以上花型,用按键控制花型之间的—转换,并用数码管显示当前花型。
三.实验分工陈硕负责代码搜查与编写,王卓负责电路连接与引脚编写四.设计流程1、分频器的设计所用50M分频器在实验二中已有具体说明,不再赘述。
2.彩灯控制器的设计1.、功能及原理清零端reset:高电平有效,异步清零。
即当reset=1时,灯全灭。
使能端enable:enable=1时,彩灯工作。
花样控制端s10:s10取不同的值来控制花样的转换。
led10s:控制10个led灯的亮灭。
(2)、逻辑器件符号(3)、VHDL语言3.七段译码器设计(1)、功能原理原理在实验一中已详细说明,功能是显示花样序号。
(2)、VHDL语言4.顶层文件原理图如下:5.仿真波形第一种波形:(从左到右依次点亮,再从右到左依次点亮)第二种波形:(从左到右依次两两点亮,再从右到左依次两两点亮)第三种波形:(从内到外顺次展开点亮)第四种波形:(闪烁点亮)6.仿真分析由波形仿真结果可知,源程序正确。
五.实验心得这次实验在参考资料的基础上,加以修改,使程序满足设计要求。
因为本次实验完全靠独立完成,在设计过程中出现了很多问题,编译和波形仿真的过程中都不顺利,在和同学交流探讨的过程中,一一将这些问题解决,最终成功设计出了四种花型。
通过这次实验,我真正体会到了EDA 这门课的乐趣,提高了自身的能力。
课后习题Ex1: 三态缓冲器:2选1多路选择器:Ex2:ENTITY mux4 ISPORT (A ,B,C ,D :INBit; S :INBit_Vector (3 DOWNTO0); Y:OUTBit);Input output enableselI n0 In1outputEND mux4;ARCHITECTURE behav1 OF mux4 ISBEGINmux4_p1:PROCESS(A,B,C,D,S) BEGINIF S = ″1110″THEN Y <= A; ELSIF S = ″1101″THEN Y <= B; ELSIF S = ″1011″THEN Y <= C;ELSE S = "0111" THEN Y <= D;ELSE Y <= '1';END IF;END PROCESS mux4_p1;END behav1;ARCHITECTURE behav2 OF mux4 IS BEGINY <= A WHEN S = ″1110″ELSEB WHEN S = ″1101″ELSEC WHEN S = ″1011″ELSED WHEN S = "0111" ELSE '1';END behav2;ARCHITECTURE behav3 OF mux4 IS BEGINmux4_p2:PROCESS(A,B,C,D,S) BEGINCASE S IS WHEN ″1110″=> Y <= A; WHEN ″1101″=> Y <= B; WHEN ″1011″=> Y <= C; WHEN "0111" => Y <= D; WHEN OTHERS => Y <= "1"; END CASE; END PROCESS mux4_p2;END behav3;Ex3:library ieee;use ieee.std_logic_1164.all;entity muxk isport ( a1,a2,a3:in std_logic; --待选择变量 temp:buffer std_logic; --中间信号s1,s0:in std_logic; --控制端output:out std_logic); --输出结果end muxk;architecture pr1 of muxk isbeginprocess(a2,a3,s0) --process1begincase s0 is --使用case语句when '0'=> temp<=a2;when '1'=> temp<=a3;end case;end process;process(a1,temp,s1) --process2begincase s1 iswhen '0'=> output<=a1;when '1'=> output<=temp;end case;end process;end pr1;Ex4:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MULTI ISPORT(CL:IN STD_LOGIC; --输入选择信号CLK0:IN STD_LOGIC; --输入信号OUT1:OUT STD_LOGIC);--输出端END ENTITY;ARCHITECTURE ONE OF MULTI ISSIGNAL Q : STD_LOGIC;BEGINPR01: PROCESS(CLK0)BEGINIF CLK ‘EVENT AND CLK=’1’THEN Q<=NOT(CL OR Q);ELSEEND IF;END PROCESS;PR02: PROCESS(CLK0)BEGIN—OUT1<=Q;END PROCESS;END ARCHITECTURE ONE;END PROCESS; Ex5:library ieee;use ieee.std_logic_1164.all;entity h_sub isport(x,y:in std_logic;diff,s_out:out std_logic);end h_sub;architecture one of h_sub isbegindiff<=x xor y;s_out<=(not x) and y;end one;library ieee;use ieee.std_logic_1164.all;entity or_2 isport(a,b:in std_logic;q:out std_logic);end or_2;architecture one of or_2 isbeginq<=a or b;end one;library ieee;use ieee.std_logic_1164.all;entity f_sub isport(x,y,sub_in:in std_logic;diff,s_out:out std_logic);end f_sub;architecture one of f_sub iscomponent h_subport(x,y:in std_logic;diff,s_out:out std_logic);end component;component or_2port(a,b:in std_logic;q:out std_logic);end component;signal e,f,g:std_logic;beginh_suber1:h_sub port map(x=>x,y=>y,diff=>e,s_out=>f);h_suber2:h_sub port map(x=>e,y=>sub_in,diff=>diff,s_out=>g);or21:or_2 port map(a=>g,b=>f,q=>s_out);end one;library ieee;use ieee.std_logic_1164.all;entity f_sub8 isport(x,y:in std_logic_vector(7 downto 0);sub_in:in std_logic;diff:out std_logic_vector(7 downto 0);s_out:out std_logic);end f_sub8;architecture one of f_sub8 iscomponent f_subport(x,y,sub_in:in std_logic;diff,s_out:out std_logic);end component;signal e:std_logic_vector(6 downto 0);beginh_suber1:f_sub portmap(x=>x(0),y=>y(0),sub_in=>sub_in,diff=>diff(0),s_out=>e(0));h_suber2:f_sub port map(x=>x(1),y=>y(1),sub_in=>e(0),diff=>diff(1),s_out=>e(1)); h_suber3:f_sub port map(x=>x(2),y=>y(2),sub_in=>e(1),diff=>diff(2),s_out=>e(2)); h_suber4:f_sub port map(x=>x(3),y=>y(3),sub_in=>e(2),diff=>diff(3),s_out=>e(3)); h_suber5:f_sub port map(x=>x(4),y=>y(4),sub_in=>e(3),diff=>diff(4),s_out=>e(4)); h_suber6:f_sub port map(x=>x(5),y=>y(5),sub_in=>e(4),diff=>diff(5),s_out=>e(5)); h_suber7:f_sub port map(x=>x(6),y=>y(6),sub_in=>e(5),diff=>diff(6),s_out=>e(6)); h_suber8:f_sub port map(x=>x(7),y=>y(7),sub_in=>e(6),diff=>diff(7),s_out=>s_out); end one;library ieee;use ieee.std_logic_1164.all;entity f_sub81 isport(x,y:in std_logic_vector(7 downto 0);sub_in:in std_logic;diff:out std_logic_vector(7 downto 0);s_out:out std_logic);end f_sub81;architecture one of f_sub81 iscomponent f_subport(x,y,sub_in:in std_logic;diff,s_out:out std_logic);end component;signal e:std_logic_vector(8 downto 0);begine(0)<=sub_in;s_out<=e(8);q1:for i in 0 to 7 generateh_suber1:f_sub port map(x=>x(i),y=>y(i),sub_in=>e(i),diff=>diff(i),s_out=>e(i+1)); end generate q1;end one;Ex6:设计框图为:(1)程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cnt16 ISPORT(EN,RST,UPD,CLK : IN STD_LOGIC; OUT1: OUT STD_LOGIC_VEC TOR(15 DOWNTO 0));END cnt16;ARCHITECTURE bhv OF cnt16 ISSIGNAL QQ:STD_LOGIC_VECTOR(15 DOWNTO 0);BEGINPROCESS(EN,RST,UPD)BEGINIF RST='1' THENQQ<=(OTHERS=>'0'); --有复位信号零ELSIF EN='1' THEN --EN位高电平开始计数IF CLK'EVENT AND CLK='1' THENIF UPD='1' THEN --当UDP为1加计数QQ<=QQ+1;ELSE --当UDP不为1减计数IF QQ > "0" THEN --当减到0时QQ<=QQ-1; --给QQ全1ELSEQQ<=(OTHERS=>'1');END IF;END IF;END IF;END IF;END PROCESS;OUT1<=QQ;END bhv;—欢迎下载21。