关于EDA总结的课件_第1页
关于EDA总结的课件_第2页
关于EDA总结的课件_第3页
关于EDA总结的课件_第4页
关于EDA总结的课件_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、EDA技术及其应用目录1、第一章 EDA技术概述 2、第二章 QuarTusII设计向导 3、第三章 宏功能模块应用 4、第四章 应用VHDL设计数字系统 5、第五章 VHDL设计技术深入 6 第六章 实用状态机设计技术第一章 EDA技术概述第1节 EDA技术的发展过程 第2节 EDA技术主要内容 第3节 数字系统设计的基本流程 小 结 1.1 EDA技术的发展过程 电子设计自动化(Electronics Design Automation,简称EDA)技术是以计算机科学和微电子技术发展为先导,汇集了计算机图形学、拓扑逻辑学、微电子工艺与结构学和计算数学等多种计算机应用学科最新成果的先进技术,

2、它是在先进的计算机工作平台上开发出来的一整套电子系统设计的软件工具。 EDA技术伴随着计算机、集成电路、电子系统设计的发展,经历了计算机辅助设计(Computer Assist Design,简称一CAD)、计算机辅助工程设计(Computer AssistEngineering,简称CAE)和电子设计自动化(Electronic Design Automation,简称EDA)三个发展阶段。 1.1 EDA技术的发展过程20世纪70年代的计算机辅助设计(CAD)阶段20世纪80年代的计算机辅助工程设计(CAE)阶段20世纪90年代电子系统设计自动化(EDA )阶段 1.2 EDA技术主要内容

3、EDA技术内容丰富,涉及面广,但从教学和应用的角度出发,应了解和掌握印制电路板图设计、可编程逻辑器件的原理、结构及应用、EDA工具软件的使用、硬件描述语言(HDL),如VHDL。 其中,大规模可编程逻辑器件是利用EDA技术进行电子系统设计的载体,硬件描述语言是利用EDA技术进行电子系统设计的主要表达手段,软件开发工具是利用 EDA技术进行电子系统设计的智能化的自动化设计工具,实验开发系统则是利用EDA技术进行电子系统设计的下载工具及硬件验证工具。也就是说,设计师用硬件描述语言(HDL)描绘出硬件的结构和硬件的行为,用设计工具将这些描述综合映射成与半导体工艺有关的硬件工艺文件,半导体器件FPGA

4、,CPLD等则是这些硬件工艺文件的载体。 1.3 数字系统设计的基本流程1系统任务分析 4系统(或模块)逻辑描述2确定逻辑算法 5逻辑电路级设计3系统划分 6.验证(仿真)7物理实现 小 结电子设计自动化(Electronics Design Automation)简称EDA技术。EDA技术,经历了计算机辅助设计(CAD)、计算机辅助工程设计(CAE)和电子设计自动化(EDA)三个发展阶段。 本学期的EDA技术主要包括数字系统的设计流程、印制电路板图设计、可编程逻辑器件及设计方法、硬件描述语言VHDL、EDA开发工具及开发工具等内容。 数字系统设计的基本流程包括系统任务分析、确定逻辑算法、系统

5、划分、系统(或模块)逻辑描述、逻辑电路级设计、验证(仿真)、物理实现几部分。第二章 QuarTusII设计向导2.1原理图输入方法设计步骤2.2引脚设置和下载2.3层次化设计2.4八位十进制频率计设计原理图输入方法设计步骤:一、建立工作文件夹和编辑设计文件:(1)、新建一个工程文件夹 (2)、建立原理图源文件编辑窗 (3)、编辑构建原理图 (4)、文件存盘二、创建工程:(1)、打开建立新工程管理窗 (2)、将设计文件夹加入工程中 (3)、选择目标芯片 (4)、工具设设置(5)、结束设置三、功能分析及编译前设置:(1)、选择FPGA目标芯片 ( 3)、选择配置器件和编程方式(2)选择配置器件的工

6、作方式 (4)、选择输出设置(5)、选择目标器件闲置引脚的状态四、全程编译及功能测试:(1)、打开波形编辑器 (2)、设置仿真时间区域(3)、波形文件存盘 (4)、将工程CNT10的端口信号名选入波形编辑器中(5)、编辑输入波形 (6)、总线数据格式设置(7)、仿真参数设置 (8)、启动仿真器二位十进制计数器电路图八位十进制频率计顶层设计原理图第三章 宏功能模块应用3.1 流水线乘法累加器设计3.2 逻辑数据采样电路设计 3.3简易存储示波器设计 一、实验目的:进一步熟悉QuartusII及其LPM模块与FPGA其他硬件子牙under使用方法。二、实验任务:设计一个流水线乘法累加器,完成验证性

7、实验。包括创建工程、元件调用、电路编辑、全程编译、时序仿真、引脚锁定、FPGA硬件测试、逻辑分析仪时序测试和配置器件编程等设计环节。3.1 流水线乘法累加器设计3.2逻辑数据采样电路设计一、实验目的:熟悉LPM_RAM模块的使用方法二、实验任务:设计一个逻辑数据采样电路,完成验证性实验。包括创建工程、元件调用、电路编辑、全程编译、时序仿真、引脚锁定、FPGA硬件测试。第四章 应用VHDL设计数字系统以关键词ENTITY引导,END ENTITY e_name结尾的语句部分,称为实体。以关键词ARCHITECTURE 引导,END ARCHITECTURE arch_name结尾的语句部分称为结

8、构体。VHDL程序至少由实体(entity)和结构体(architecture)两部分组成。实体表达 根据IEEE标准,一个基本单元实体结构定义如下: ENTITY e_name IS PORT(p_name : por_m data_type; . p_namei : port_mi datd_type); END ENTITY e_name;其中,ENTITY、IS、PORT、和END ENTITY都是描述实体的关键词,在实体描述中必须包含这些关键词,在编译中关键词不分大小写。VHDL源程序 LIBRARY IEEE;-库语句申明USE IEEESTD_LOGIC_1164ALL;-程序包

9、 ENTITY sevenBCD IS实体定义 PORT(D:IN STD_LOGIC_VECTOR(3 DOWNTO 0);-端口定义、端口模式与数据类型 S :OUT STD_LOGIC_VECTOR(6 DOWNTO 0); END sevenBCD; ARCHITECTURE a OF sevenBCD IS结构体 BEGIN PROCESS (D)进程 BEGIN3.3简易存储示波器设计 一、实验目的:掌握LPM_RAM模块定制、调用和使用方法;熟悉A/D和D/A与FPGA接口电路设计。二、实验原理:ADINT是外部ADC的控制模块,ADC负责对外部模拟信号采样,RAM2是ADC转换

10、数据的存储器,器数据输出Q【7.0】接外部DAC。三、实验任务:完成电路编辑和设计,根据电路的功能和控制信号完成时序仿真测试。 CASE D IS顺序语句之CASE语句 WHEN 0000=SSSSSSSSSSS=“111111l”; END CASE; END PROCESS;END a;IEEE库IEEE库是被IEEE国际标准化组织认可的,是最常用的资源库,IEEE库中含有的程序包及内容说明如下: STD_LOGIC_1164:定义了STD_LOGIC、STD_LOGIC_VECTOR等常用的数据类型和函数。 NUMERIC_BIT:含有用于综合的数值类型和算术函数。 NUMERIC_ST

11、D:定义了一组基于STD_LOGIC_1164中定义的类型的算术运算。 STD_LOGIC_ARITH:定义了有符号和无符号数据类型及基于这些类型的算术运算。 STD_LOGIC_SIGNED:定义了基于STD_LOGIC、STD_LOGIC_VECTOR类型的有符号运算。程序包:程序包由常数说明、VHDL数据类型说明、元件定义、子程序四种或至少一种组成。定义程序包的语句结构: PACKAGE 程序包名 Is 一程序包首 程序包首说明部分 END 程序包名; PACKAGE BODY 程序包名 Is - 程序包体 程序包体说明部分 END 程序包名;程序包首:程序包首的说明部分可收集多个不同V

12、HDL设计所需的公共信息,其中包括数据类型说明、信号说明、子程序说明及元件说明等。所有这些信息虽然也可以在每一个设计实体中进行逐一单独定义和说明结构体表达 结构体的一般表达如下:ARCHITECTURE arch_name OF e_name 说明语句BEGIN(功能描述语句)END ARCHITECTURE arch_name;赋值符号和数据比较符号,表达式=表示输入端口的数据向输出端传输,但也可以理解为信号向信号赋值。VHDL中要求赋值符“=”两边的数据类型必须一致。逻辑操作符VHDL中共有七种基本逻辑操作符,他们是AND(与)、OR(或)、NAND(与非)、NOR(或非)、XOR(异或)

13、、XNOR(同或)、和NOT(非). 逻辑操作符所要求的操作数(操作对象)的数据类型有三种即BIT、BOOLEAN 和STD_LOGIC继而实体名: 实体表达中e-name是实体名,是标识符,具体取名有设计者自定 。端口语句和端口信号名:描述电路的端口及其端口信号必须用端口语句PORT()引导,并在语句结尾处加英文分号“;”。端口模式:端口模式用来说明数据、信号通过该端口的方向。vhdl中端口模式有以下四种IN:输入端口,定义的通道为单向只读模式。OUT: 输出端口,定义的通道为单向输出模式。INOUT: 定义的通道确定为输入输出双向端口。BUFFER;缓冲端口,其功能与INOUT类似。数据类

14、型:实体表达中的data_type是数据类型名。相关的数据类型名有INTEGER类型、BOOLEAN类型、STD_LOGIC类型和BIT类型等。 ELSEIF 条件句 then 顺序语句 . ELSE 顺序语句 END IF;WHEN_ELSE条件信号赋值语句 其表达式如下 赋值目标=表达式 WHEN 赋值条件 ELSE 表达式 WHEN 赋值条件 ELSE. . 表达式在结构体中的条件信号赋值语句的功能与进程中的IF语句相同,在执行条件信号语句时,每一“赋值条件” 是按书写的先后关系随项测定的,一旦发现“赋值条件=TURE”,立即将“表达式”的赋值给“赋值目标”信号。敏感信号表 PROCES

15、S旁的(a,b,s)称为进程的敏感信号表,VHDL中要求在敏感信号参数表中列出本进程的所有输入信号名。文件名 在保存文件时,必须赋给一个正确的文件名,但文件后缀扩展名必须是.VHD,并建议程序的文件名尽可能与该程序的实体名一致。设计库和标准程序包 使用库和程序包的一般定义表达式是: LIBRARY; USE .ALL; 如:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.AL数据对象:数据对象有三类,即信号(SIGNAL)、变量(VARIABLE)和常量(CONSTANT)。上升沿检测表式和信号属性函数EVENT 条件语句的判断表达式“CLKEVENT AND CL

16、K=1”是用于检测时钟信号CLK的上升沿的,即如果检测到CLK的上升沿,此表达式将输出“TURE”CASE语句 CASE语句属于顺序语句,因此必须放在进程中使用,CASE语句的一般表达式为: CASEIS WHEN=;.; WHEN=;.; . WHEN OTHERS=; END CASE;条件语句 if语句作为一种条件语句,他根据语句中设置的一种或多种条件,有选择的执行指定的顺序语句,IF语句的语句结构有以下四种:(1) IF 条件句 then 顺序语句 END IF;(2) IF 条件句 then 顺序语句 ELSE 顺序语句 END IF;(3) IF 条件句 then IF 条件句 t

17、hen . END IF; END IF;(4) IF 条件句 then 顺序语句 第五章 VHDL设计技术深入在VHDL中,数据对象有三类,即信号(SIGNAL)、变量(VARIABLE)和常量(CONSTANT)。 常量 CONSTANT 常量名:数据类型:=表达式;例如 CONSTAN FBT : STD_LOGIC_VECTOR :=010110; CONSTANT DATAIN : INTEGER : =15;变量 varinble 变量名 : 数据类型 : = 初始值;例如 VARIABLE a : INTEGER RENGE 0TO 15; VARIABLE d : STD_LO

18、GIC : = 1;信号 SIGNAL 信号名 : 数据类型 : = 初始值 ;时钟信号的边沿描述时钟信号上升沿VHDL描述如下:IF (clk event and clk=1)或WAIT UNTIL RISING_EDGE(clk);时钟信号下降沿VHDL描述如下:IF (clk event and clk=0)或WAIT UNTIL FALLING_EDGE(clk);清零信号(1) 同步清零 同步清零是指,当时钟边沿有效且清零信号有效时,时序电路清零。同步信号清零的VHDL描述如下:PROCESS(时钟信号名)IF (时钟信号变化条件) THEN IF (清零信号变化条件) THEN 清

19、零语句; ELSE 顺序语句; END IF;END IF;END PROCESS;(2)异步清零异步清零指的是,只要清零信号有效,时序电路就被清零,清零信号与时钟信号无关。异步信号清零的VHDL描述如下:PROCESS(时钟信号名)IF (清零信号变化条件) THEN 清零语句; ELSIF(时钟信号变化条件) THEN 顺序语句; END IF;END PROCESS; 固有延时:也称惯性延时是任何电子器件都存在的一种延时特性。固有延时的主要物理机制是分布电容效应。分布电容产生的因素很多。分布电容具有吸收脉冲能量的效应。当输入器件的信号脉冲宽度小于器件输入端的分布电容对应的时间常数时。或者

20、说小于器件的惯性延时,即使脉冲有足够高的电平,也无法突破数字器件的值电平实现信号输出的目的,从而在输出端不会产生任何变化。进程结构组成 : PROCESS语句结构是由三部分组成,即进程说明部分、顺序描述语句部分和敏感信号参数表。第六章实用状态机设计技术状态机及其设计技术是实用数字系统设计中的重要组成部分,也是实现效率高可靠逻辑控制的重要途径。除了一些标准的预定义类型外,如整数类型、BOOLEAN类型、标准逻辑位类型STD_LOGIC等,VHDL还允许用户自定义新的数据类型,由用户定义的数据类型可以有多种,如枚举类型(Enumeration)、整数类型(integer types)记录类型(Re

21、cord types)、时间类型(Time types)等 自定义数据类型是用类型定义语句TYPE和子类型定义语句SUBTYPE实现的,TYPE语法的用法如下: TYPE 数据类型名 IS 数据类型定义 OF 基本数据类型或 type数据类型名 IS 数据类型定义一般有限状态机的结构 用VHDL设计的状态机有多种形式,从状态机的信号输出方式上分有Mealy型和Moore型两种状态机;除此之外还用很多种,然而最一般最常用的状态机通常都包含说明部分、主控时序进程、主控组合进程、辅助进程等几个部分。多进程有限状态为了便于说明和实验,以下以ADC0809为例,说明采样控制状态机的设计方实验目的:1,了

22、解使用计算机接口芯片ADC0809与PLD构筑系统。2,了解ADC0809转换时的工作时序实验原理实验说明CS、RD、WR,EOC:ADC0809的控制信号;DIN(0)-DIN(7):转换结果送CPLD;NINTR:转换结束标志;RST:系统复位;SELOUT(0)-SELOUT(1):位选择;SEGOUT(0)-SEGOUT(7):段码;程序: library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity adc0809 is port

23、( din:in std_logic_vector(7 downto 0); selout:out std_logic_vector(1 downto 0); segout:out std_logic_vector(7 downto 0); cp:in std_logic; rst:in std_logic; cs,wr,rd:out std_logic; nintr:in std_logic);end;architecture arth of adc0809 is type state_type is (s0,s1,s2,s3); signal state:state_type:=s0; s

24、ignal ec,nin:std_logic; signal d:std_logic_vector(7 downto 0); signal sel,count:std_logic_vector(1 downto 0); signal num:std_logic_vector(7 downto 0); signal temp:std_logic_vector(3 downto 0);beginsystemconnection:blockbegin nin=nintr; segout=num; selout=sel;end block systemconnection;statechange:bl

25、ockbegin process(cp) begin if(cpevent and cp=1) then if(count=01)then count=01; else count=count+1; end if;end if;end process; process(cp,rst) begin if rst=1 then cs=1; wr=1; rd=1; ec=0; state cs=0; wr=0; rd=1; ec=0; state cs=1; wr=1; rd=1; ec=0; if nIN=1 then state cs=0; wr=1; rd=0; ec=1; state cs=1; wr=1; rd=1; ec=0; state state=s0; end case; end if; end process;end block statechange;readdata: blockbegin process(cp) begin if cpevent and cp=1 then if ec=1 then d=din; end if; end if; end process;end block readdata;sel=01 when count=00 else 10 when c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论