《EDA技术与VHDL》学习课程学习笔记_第1页
《EDA技术与VHDL》学习课程学习笔记_第2页
《EDA技术与VHDL》学习课程学习笔记_第3页
《EDA技术与VHDL》学习课程学习笔记_第4页
《EDA技术与VHDL》学习课程学习笔记_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、姓名:胡海侠学号: 200920212036 班级: SJ0931 EDA 技术与 VHDL 课程学习笔记在学习本课程之前,我了解到这门课程是与数字电路有关,考虑到数字电路方面的知识已经忘得差不多了,再加上大学学习时候基础本来就不牢靠,所以就恶补了一下数字电路方面的知识。通过对数字电路的学习,我能够基本上回想起老师上课讲的内容,对数字电路方面有了一个系统的认识,尽管还不是尽善尽美,但是对后期课程的学习已经没有什么障碍了。那么经过不到一个星期的复习,我基本掌握了以下内容:1:逻辑代数的基本公式和定理,逻辑函数的化简方法和逻辑函数的基本表示方法( 1 ) 逻辑函数的基本公式和定理是进行公式化简的依

2、据( 2) 逻辑函数的基本化简方法是公式化简法和图形化简法,其中图形化简方法中主要应用卡诺图化简的方法。化简的结果通常为标准与或式( 3) 逻辑函数的基本表示方法有六种:真值表,卡诺图,函数式,逻辑图,波形图和VHDL 描述2:半导体二极管,三极管和MOS 管是数字电路中的基本开关元件,半导体二极管是不可控的;半导体三极管是一种电流控制且具有放大特性的开关元件;MOS 管是用电压进行控制的,也具有放大功能。了解了CMOS 和 TTL 集成门电路的外部特征逻辑特性和电器特性。逻辑特性即逻辑功能,如与门,或门,非门,与非门,或非门,与或非门等;电器特性有静态特性(主要是输入特性和输出特性)和动态特

3、性(主要是传输延迟时间)。3:通过对组合逻辑电路的学习,我知道组合逻辑电路是输出信号仅取决于当时的输入信号,而与原来所处的状态无关。了解了组合逻辑电路的分析设计的方法。并通过对加法器,数值比较器,译码器,数据选择器和分配器,只读存储器的学习,对设计过程有了更深的了解。4:触发器的学习( 1 ) 基本触发器:把两个与非门或者或非门交叉连接起来,边构成了基本触发器( 2) 同步触发器:在基本触发器基础上,增加两个控制门和一个控制信号,就构成了同步触发器。他的显著特征就是时钟电平直接控制( 3) 边沿触发器:把两个D 触发器级联起来,便构成边沿D 触发器,再加以改进就可以得到边沿JK 触发器。他们最

4、显著的特征就是边沿控制 CP 上升沿(或下降沿)触发。( 4) 边沿触发器的功能分类:按照在时钟脉冲操作下逻辑功能不同,可把边沿触发器非为:JK型,D型,T型,丁型。5:时序电路的学习整个数字电路可以分成两大类:组合电路(基础是逻辑代数和门电路),时序电路(基础主要是逻辑代数和触发器)。时序电路的地位更突出,更重要,更具代表性。时序电路不仅与输入有关,而且还决定于电路原来所处的状态,而电路状态又是构成时序电路的触发器来记忆和表示的。通过对计数器,寄存器,读写存储器,顺序脉冲发生器等典型的电路的学习,对时序电路的概念及分析方法有了比较深刻的理解。6:最后了解了一些常用的矩形脉冲电路:555 集成

5、定时器,施密特电路和单稳态触发器,以及多谐振荡器。也理解了一些常用的A/D 和 D/A 转换器的基本工作原理,输出量和输入量之间的定量关系,主要特点,以及转换精度和转换速度的概念和表示方法。第一部分:背景知识学习篇主要学习了电子自动化技术的发展,电子设计自动化的应用领域,EDA 优势以及面向FPGA 的开发流程等。1: EDA 技术的发展大致可以分为三个阶段( 1 ):20 世纪70 年代,在集成电路制作方面,MOS 工艺得到广泛的应用;可编程逻辑技术及其器件问世,计算机作为一种运算工具在科研领域得到了广泛的应用。( 2):20 世纪80 年代,集成电路设计进入了CMOS 时代,复杂可编程逻辑

6、器件进入商业应用,相应的辅助设计软件投入使用;80 年代末,出现FPGA; CAE 和 CAD 技术应用更为广泛( 3):20 世纪 90 年代,随着硬件语言的标准化进一步确立,计算机辅助工程,辅助分析和辅助设计在电子技术领域获得更广泛的应用。( 4):进入21 世纪 EDA 技术得到了更大的发展在 FPGA 上实现 DSP 应用成为可能嵌入式处理器软核的成熟,使得 SOPC 步入大规模应用阶段在仿真和设计方面支持标准硬件语言的功能强大的 EDA 软件不断推出 EDA 使得电子领域各学科的界限更加模糊基于EDA的用于ASIC设计的标准单元已经涵盖大规模电子系统及复杂IP核模块软硬IP 核在电子

7、行业的产业领域广泛应用 SOC 高效低成本设计技术的成熟系统级,行为验证硬件语言的出现,是复杂电子系统的设计和验证趋于简单2:电子设计自动化应用对象 全制定或半制定 ASIC FPGA/COLD开发应用 PCB3:VHDL 的英文全名是VHSIC ( very high speed integrated circuit ),是硬件描述语言的业界标准之一。VHDL 具有与硬件电路无关和设计平台无关的特性,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化,结构化设计方面,表现了强大生命力和应用能力。VHDL 支持各种模式的设计方法,如自顶向下与自底向上或混合方法。4: EDA 的

8、优势 降低设计成本,缩短设计周期 EDA 工具之所以能够完成各种自动化设计过程,关键是各种库的支持,而这些库的设计是 EDA 公司与半导体生产厂商合作共同开发的 简化了设计文档管理 完全的自主权 提高了电子设计自动化程度 能够将使用环节纳入统一的自顶向下设计方案中 可以利用计算机对硬件进行测试5:面向FPGA 的开发流程电路的设计与输入(HDL描述和原理如图输入方法)功能仿真(前仿真:检查所设计的电路是否满足预先设想的功能需求)综合优化(把 RTL级描述和原理图描述变成门级网表描述)综合后仿真(检查综合后的结果是否和预想的设计一致)布局布线(布局:把门级网表中各个基本硬件单元适配到FPGAM体

9、的硬件电路上 ;根据布局的拓扑结构和 FPGA的连线资源,把这些基本硬件单元合理的连接起来)FPGA勺实际工作情Io时序仿真与验证(后仿真:包含门延迟和传输线的延迟,能真是反应况,确保设计的稳定性和可靠性)调试与加载配置6: Quartus n软件的简单了解Quartus n是Altera提供的FPGA/CPLM发集成环境,Altera是世界最大的可编程逻辑器 件供应商之一。Quartus n提供了完整的多平台设计环境,能满足各种特定设计的需要, 也是单芯片可编程系统(SOPC设计的综合性环境和SOPCW发的基本设计工具,并为Altera DSP开发包进行系统模型设计提供了集成综合环境。Qua

10、rtus n设计工具完全支持VHDL Verilog的设计流程,其内部嵌有 VHDL Verilog 逻辑综合器。Quartus n也可以利 用第三方的综合工具,如 Leonardo Spectrum , Synplify Pro , FPGA Compiler n ,并能直 接调用这些工具。同样 Quartus n具备仿真功能,同时也支持第三方的仿真工具,如 ModelSim。此外 Quartus n与MATLAB和DSP Builder结合,可以进行基于 FPGA勺DSP系 统开发和数字通信模块的开发。7:IP 核IP就是知识产权或知识产权模块的意思。在EDA技术和开发中具有十分重要的地位

11、。第二部分:CPLDF口 FPG双辑器件的简单了解1:低密度PLD可编程的原理简单的PLD是早期出现的可编程的逻辑器件,它的逻辑规模都比较小,只能实现通用的数字逻辑电路的一些功能,在结构上是由简单的“与-或”门阵列和输入输出单元组成。常见的 PLD有 PROM PLA PAL, GAL等。(1) :PROMPROM的与阵列为全译码阵列,器件的规模将随着输入信号数量n的增加成指数级增长。因此PROM一般只用于数据存储器,不适于实现逻辑函数。PROM的或阵列为可编程的阵列,用来选取需要的最小项。下图是 PROME示的PLD车列图。二 Oi Oo与阵列f固定)PROM!示的PLD阵列图(2) :PL

12、APLA在简单PLD中,PLA的内部结构灵活性最高。编程控制复杂,其开发工具也较难设计。未得到普遍推广应用。下图是 PLA勺逻辑阵列示意图11F南在或附列(可编程)04DD-与附列L可编程.)9 9 yOqo2PLA逻辑阵列示意图(3) : PAL是一种与阵列可编程、或阵列固定的器件。与阵列可编程使输入项增多,或阵列固定使器件简化。器件编程的灵活性不够。下图是PAL吉构图X共米T或阵列(固定)Bi D D D O与阵列(川编程)0 9O2 Oi OqPAL吉构(4) :GAL美国Lattice公司在PA曜件与或门阵列的基础上于 1985年推出了另一种高性能、高应用灵 活性的可编程逻辑器件 一通

13、用阵列逻辑GAL GA曜件采用了浮栅存储 E2CMOS艺,具有电 擦写反复编程的特性。GAL勺基本逻辑部分与PAL1同,也是与阵列可编程、或阵列固定的PAL吉构,(!它与PAL勺不同之处是在其输出端设置了可编程的输出逻辑宏单元OLMC(Output Logic Macro Cell) 。通过编程写入,用户可将 OLMC:置为不同的工作状态,这样 一种型号的GA解件就能具备PA器件先前讨论过的全部四种输出模式及其派生类型,这就 为实现组合逻辑电路和时序逻辑电路的分块设计提供了方便,从而显著的增强了器件的通 用性。因而GA改称为通用可编程逻辑器件。2: CPLD吉构和可编程原理CPLD结构逻辑块(

14、LB)也称逻辑阵列块(LAB)是PLD的基础,由它来实现基本的逻辑功 能。一个逻辑块LB 一般由多个(816个)逻辑宏单元构成(MAX7000系列)。不同厂 家、不同系列的产品结构略有差异。可编程连线PI负责信号传递,连接所有的逻辑宏单元,或I/O与宏单元的连接。I/O控制块(IOB)负责输入输出引脚的电气特性控制,比如可 以设定集电极开路输出,摆率控制,三态输出等。下图是 Altera公司的MAX7000的结构图L A B - -L og Ie Array B Oa £ kp hat 1 6 m eroe ells(3)可编程 互连阵列0 1 991 Altc-rj C OFpff

15、 rationMAX7000S勺结构图CPLD1基于乘积项的,乘积项阵列是一个与阵列,每一个交叉点都是一个可编程 点,通过与阵列产生乘积项。后面的或门把按要求产生的乘积项加起来,得到需 要的暑促逻辑函数。CPLD的性能特点可多次编程、改写和擦除。高速度、高采用CMOS EPROMEEPROMFlash Memory和SRA晞编程技术,具有高密度、 可靠性和低功耗。 I/O端数和内含触发器可多达数百个,集成度远远高于PA闲GAL有灵活多样的逻辑结构,可满足各种数字电路系统设计的需要。内部时间延迟与器件结构及逻辑连接等无关,可预测,易消除竞争冒险。有多位加密位,且器件等效数千个逻辑门以上,因此可杜

16、绝编程数据的非法抄袭。3: FPGA勺结构及工作原理FPGA都采用查找表(Look-Up-Table,LUT) 来实现逻辑函数。如 Altera的FLEX/ACEX/APEX 系列器件和Xilinx的多数器件。FPGA的编程配置元件都是 SRAM 。由于SRAM较易制造,且其可重复编程使用的次数几乎无限,所以目前高集成度的可编程逻辑器件几乎都是FPGA。与CPLD相比,FPGA具有更高的集成度、更强的逻辑功能更大的灵活性。下图是Xilinx公司FPGAi本的组成结构冷 第I 乘码-n-t rffnO O D 口111HranEISI口O口 口 口 口口 口Xilinx公司FPG廛本的组成结构查

17、找表(LUT)就是一个有 N艮,一般是4根地址线的16x1的RA丽储器。(存储容量取决于 输入数量,N个输入的逻辑函数,需要 2矫量的SRA陈实现。)工作原理:当用户通过原理 图或HDL语言描述了一个4输入的逻辑电路后,ED做件就会按设计要求自动计算逻辑电路 的所有可能的结果,并把该结果事先写入这个RA丽储器。这样,当输入变量作为RAM勺地址信号输入时,预期的结果(输出逻辑函数)就作为RAMH1存储数据输出了。(查找表存储组合逻辑值) FPGA的性能特点采用SRA端程技术,具有高密度、高速度、高可靠性和低功耗。丰富的I/O端数和触发器,集成度远远高于PAISGAL结构灵活,内部的 CLB IO

18、*口 PI均可编程;强有力的组合逻辑函数发生器,可实现多个 变量的任意逻辑。可满足各种数字电路系统设计的需要。某些FPGAE提供片内高速 RAM可用于FIFO等的设计。每次上电时需进行数据配置;断电后,配置数据自动丢失。内部时间延迟与器件结构及逻辑连接等有关,故信号传输时延不可测4:世界上有多家公司生产 CPLD/FPGA ,主要的生产厂商有: Altera公司,主要的CPLD生产厂商 Xilinx公司,主要的FPGA生产厂商 Lattice公司,著名的CPLD生产厂商 ACTEL公司,著名的CPLD生产厂商 Cypress公司,著名的CPLD生产厂商 Atemal公司,著名的IC/MCU公司

19、,也设计生产PLD产品. Luccent 公司,著名的通讯企业,也设计生产PLD 产品第三部分:VHD晤言基础学习通过这部分的学习,基本上掌握的VHD晤言现象和语句的规则。1: VHDL( VHSIC, hardware description language , very high speed integratedcircuit )是一种标准的硬件描述语言,中文就是超高速集成电路硬件描述语言。使用VHDL不仅可以快速地描述和综合FPG股计,还可以提高以下性能 功能与灵活性 不依赖于器件的设计 可移植性 性能评估的能力 上市时间快,成本低2: 一个完整的VHD晤言程序通常包括实体(entit

20、y ),结构体(architecture ),配置 (configuration ),包集合(package)和库(library )五个音B分。 实体说明Entity 的结构如下Entity <entity_name> isGeneric declarationsPort declarationsEnd <entity_name>实体的设计说明以Entity <entity_name> is 开始,以end <entity_name> 结束。<entity_name>为实体的名字。在VHD晤言中式不区分大小写的。Generic 语句

21、成为类属说明语句,用于向模块传递参数。语句语法为:Generic (_parameter_name:string:=_default_value 。_parameter_name:integer:=_default_value) 。其中 _parameter_name 是参数名,string 和 integer 是参数类型,_default_value 是初始化值,即传递给模型的参数。端口说明是对基本设计实体与外部接口的描述,也可以说是对外部引脚信号的名称,以及数据类型和输入,输出类型的描述。端口的方向可以分为四种:in , out , inout ,buffer。In表示信号只能输入,不能输

22、出; out表示信号只能输出,不能输入; inout则既 能输入又能输出;buffer类似于但信号可被 ASIC内部利用。结构体architecture 是一个基本设计单元的主体,它具体定义了设计单元的功能。构造体对基本设计单元的描述方式可以分为三种:行为描述,结构描述和以上两种方法的混合。构造体的具体结构如下:Architecture <identifier> of _entity_name isSignal _signal_name:std_logic 。Signal _signal-name:stdlogic 。Beginprocess statementconcurrent

23、 procedure callconcurrent signal assignmentselected signal assignmentcomponent instantiation statementgenerate statementend <identifier> 。定义语句位于Architecture 和 begin 之间,用于对结构体内部所使用的信号,常数,数据类型和函数进行定义。并行处理语句位于begin和end之间,这些语句具体描述了结构体的行为及其连接关系。并行语句是并行执行的,其书写顺序是不分顺序的Process 语句是并行处理语句的一种,一个结构体可以有多个p

24、rocess 语句,这些进程之间是并行执行的,但是在process 语句内部语句是顺序执行的。大多数process 语句的执行时由敏感信号触发的,但是有些process 是没有敏感信号的,执行进程语句要有wait 。库库是经过编译后的的数据集合,它存放包集合定义,实体定义,结构体定义和配置定义。在VHD匿言中,库的什么总是放在设计单元的最前面。库的好处就在于可以使设计者共享已经编译好过的设计结果。使用库的语法为:Library library_name 。Use library_name.package_ 。IEEE库中包括四个包集合Std_logic_1164(

25、标准逻辑类型和相应函数)Std_logic_arith( 数学函数)Std_logic_signed( 有符号数学函数)Std_logic_unsigned( 无符号数学函数)用户自定义的包集合都放在work库中,使用方法如下。Library work 。Use work.<package name>.all主意:库说明语句的作用范围从一个实体说明开始到它所属的结构体,配置为止。当一个源程序中出现两个以上的实体时,每个实体前都要有相应的库说明。 包集合包集合来定义VHD用言中所要用到的信号定义,常数定义,数据类型,元件语句,函数定义和过程定义等,它是一个可编译的单元,也是库中的一个

26、层次。如果要使用一个包集合,在程序开始需要加上如下语句:Use library_name.package_name.all 。其中library_name 是所在的库文件名称,package_name是包集合名称,而 use和all则是关键字。例如:Use ieee.std_logic_1164.all 。表示在VHD程序中要使用ieee库中的名为std_logic_1164 的包集合中的定义。 配置描述层与层之间的联系关系,以及实体与结构体之间的联系关系。可以利用这种配置语句来选择不同的结构体,使其与要设计的实体相对于,也可以使元件与实体结构体相对应。配置语句被广泛应用于仿真,它提供了一个可

27、变的,快速的交互设计的方式,但在综合时,该语句不被支持。配置语句的语法如下:Configuration <identifier> of <entity_name> isFor <architecture_name>End for 。End <identifier> 。3:VHDL的数据对象在VHDLK数据对象有三类,即变量( VARIABLE ,常量(CONSTANT和信号(SIGNAL.)数据对象类似于一种容器,它接受不同数据类型的赋值。常数常数的定义和设置主要是为了使程序容易阅读和修改。常量是一个恒定不定的值,一旦做 了数据类型和赋值定义后,

28、在程序中就不能再改变,因而具有全局性的意义。常数定义的 一般表达式为:constant常数名:数据类型:=表达式。常数定义语句所允许的设计单元有实体,结构体,程序包,块,进程和子程序。常数的可 见性是指常数的使用范围取决于他被定义的位置。变量在VHD匿法规则中,变量是一个局部量,只能在进程和子程序中使用。变量不能将信息带 出对它作出定义的当前结构。变量的赋值是一种理想化的数据传输,是立即发生的,不存 在任何的延时行为。变量的主要作用是在进程中最为临时的数据存储单元。变量的定义一 般表示如下:VARIABLE变量名:数据类型:=初始值。例如:VARIABLE a:INTEGER RANG 0 t

29、o 15 。变量a定义为常数,取值范围是 015;VARIABLE d:STD_LOGIC:='1'。变量d定义为标准逻辑位数据类型,初始值为1信号信号的性质类似于连接线,信号最为一种数值容器,不但可以容纳当前值,也可以保持历 史值。信号的定义格式为:SIGNAL信号名:数据类型:=初始值。信号具有全局的特征,信号的使用范围是实体,结构体和程序包。在进程和子程序的顺序 语句中不允许定义信号。此外在进程中只能将信号列入信号敏感表,而不能将变量列入敏 感表。可见,进程只对信号敏感,而对变量不敏感。这是因为只有信号才能把进程外的信 息带入进程内部。信号的赋值语句表示如下:目标信号技达

30、式AFTER时间量;表达式可以是一个运算表达式,也可以是数据对象。数据信息的传入可以设置延时量。信 号的赋值可以出现在一个进程中,也可以直接出现在结构体的并行语句结构中。进程与变量赋值语句功能的比较比较对象信号SIGNAL变量 VARIABLE基本用法用于作为电平中的信号连线用于作为进程中局部数据存储单兀适用范围在整个结构体内的任何地方都能 适用只能在所定义的进程中使用行为特征:在进程的最后才对信号赋值立即赋值4:数据类型(1) 预定义的数据类型 位 bit在数据系统中,信号值通常用一位表示,为允许的数值为0'或1' 布尔量boolean一个布尔量只有true和false两种状

31、态:真或假。布尔量不能进行数据运算,只能 进行关系运算。 字符 character字符允许的数据内容为128个标准ASCH字符,字符量通常用单引号引起来。 字符串string字符串由一串字符构成。例如Signal ksut:string(1 to 9):=kung-shan。 标准逻辑std_logicstd_logic 数据类型定义type std_logic is ( U, X, 0, 1, Z, W, L, H, -)。U:未初始化;X':强未知的;0':强逻辑0;1':强逻辑1;Z':高阻态;W:弱未知的;L:弱逻辑0; H 弱逻辑 1; - :忽略。

32、标准逻辑矢量std_logic_vertor 整数 integer整数与数学中整数定义相同,整数的表示范围为-21474836482147483647 。编译器将整数型操作数的位宽设为32位。( 2) 用户自定义数据类型用户自定义数据类型是基本数据类型为基础而定义的数据类型。用户定义的数据类型的书写格式是:Type 数据类型名, 数据类型名 数据类型定义。( 3) 运算操作符 逻辑运算符逻辑运算符有and, or, nand, nor , xor等,逻辑运算符只能用于bit , boolean及std_logic 三种类型的数据,“not ”的优先级最高。 算术运算符算术运算符有abs, +,

33、 -, *,/, mod!?。“+”及“-”为传统的整数加减法,必须调用算术程序包(bit arith package )才能运算。 关系运算符关系运算符有=, /= , <, <=,>, >=。关系运算的结果为布尔量。 赋值运算符赋值运算符原来给信号赋值,可以出现在任何地方,信号赋值符号位=>;如果要给变量赋值,只能在进程中进行,变量的赋值符号位:= 。 并置运算符并置运算符“&”用于位连接。 连接运算符在调用集成电路组件时,必须使用连接的方式来指定该电路组件引脚与其对应的端口信号的练接通路。最常用的方法是通过引脚图(port map )或属性图(gen

34、eric map )连接。例如:Sto : dsrff port map (d=>data,s=>set,r=>rst,clk=>clk,q=>qout)。此例将 M触发器的所有引脚d, s, r, clk及q指定连接到目的程序中所定义的实体的信号端 data , set , rst , clk 及 qout 。5: VHDL顶序语句与并发语句( 1 )顺序语句顺序语句只能出现在过程,进程及函数中,其中所以的命令语句是按顺序执行的。 IF THEN 语句此种 IF 语句的语法为:IF < 条件 > THEN顺序执行语句END IF。 IF THEN E

35、LSE 语句此种 IF 语句的语法为:IF < 条件 > THEN顺序执行语句ELSE顺序执行语句END IF。 IF THEN ELSIF 语句此种 IF 语句的语法为IF < 条件 1> THEN顺序执行语句ELSEIF <条件 2> THEN顺序执行语句ELSE顺序执行语句END IF。 选择语句CAS晤句原来从许多不同的语句之中选择其一执行,CAS晤句书写格式如下:CASE _EXPRESSION ISWHEN _CONSTANT_VALUE =>_STATEMEN。 TWHEN OTHERS =>_STATEMEN。 TEND CASE

36、。 等待语句WAIT语句使程序产生等待,直到条件满足再执行。WAIT语句可以设置4种不同条件:无限等待,时间到,条件满足及敏感信号量变化。其书写格式如下:WAIT - 无限等待WAIT ON - 敏感信号量变化WAIT UNTIL -条件满足WAIT FOR -时间到例如: WAIT UNTIL _clk_name= 1 function 语句function 语句与 procedure 语句的最大区别在于它是顺序语句,且一次只返回一个值。在VHD晤言中,函数语句的书写格式如下:FUNCTION®数名(参数1,参数2,)RETURNS据类型名IS定义语句BEGIN顺序处理语句RETU

37、RNS回变量名END函数名6:描述方式使用VHD晤言对硬件系统进行描述,可以采用3种不同风格的描述方式,即行为描述方式,rtL苗述方式和结构描述方式。行为描述方式是对系统数学模型的描述,其抽象程度比寄存器传输描述方式和结构化描述方式更高。行为描述方法只定义电路的功能,并不定义电路的结构,也没有具体实现硬件 的目的,它只是为了综合目的而使用的一种描述方法。RTL苗述方式是一种明确规定寄存器描述的方法。RT而全称是register transfer level,它是一种以综合为目的的描述方式。它是一种可以综合的描述方法,综合过程先把HD翻译成电路的模式,然后再进行优化,最终达到一个门阶段的应用。结

38、构描述方式,就是在多层次的设计中,直接用门电路设计单元来构成一个复杂的逻辑电 路的描述方法。结构描述方式最能提高设计效率,它可以将自己已有的设计成果方便地调 用到新的设计中去。他主要是描述电路的功能和结构,它是由顶层模块对底层,模块的调 用来实现的。此描述方式实现的电路可以综合。第四部分:实验篇通过这部分的实践,基本上了解了Quartus n进行数字系统开发的流程,为以后继续学习打下了基础开发流程大概如下(1) 打开Quartus n软件,file-New Project Wizard工具选项创建工程例如我们做一个十进制的加法计数器,建立工程的界面如下点击next ,由于我们没有vhdl程序,

39、所以这一步直接点击 next ,进入到目的芯片选择界面,我们选择EP1C6Q240C8这里的EP1C羲示Cyclone系列及此器件的规模:似示PQFP寸装;C昧示速度级别;Speed grade 为8点击next ,进入EDA:具设置窗口,此实验使用 Quartus n自含的所有设计工具,可以直接 点击next按钮,下面显示的就是我们这次配置环境的结果New Project Wizard: Summary page 5 of 5JWhen you click Finish, the pfoject will be created with the following settings:Proj

40、ect directory:d/alteia/91 sp2/quarhj£Project name:cntlOT'op-level design entity:cnt10Number oF files added:0Number of uer libraries added:0Device assignments:Farnly ridme:CycloneDeviceEPICEQ240cBEDA tools:Design entry,期nth甘酊帛:<None>Simulation:<None>Timing analysis:<None>Op

41、erating conditions:Core volage:1.5VJunction tempe同ure range.085建立工程之后就可以加入vhdl程序,New,选择VHDL File即进入代码编写的界面,输入程序代码library ieee 。use ieee.std_logic_1164.all 。use ieee.std_logic_unsigned.all 。entity cnt10 isport(clk,rst,en:in std_logic。cq:out std_logic_vector(3 downto 0)。cout:out std_logic) 。end cnt10 。architecture behav of cnt10 isbeginprocess(clk,rst,en)variable cq1:std_logic_vector(3 downto 0)。beginif rst='1' then cq1:=(others=>'0')。elsif clk'event and clk='1' thenif en='1' theni

温馨提示

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

最新文档

评论

0/150

提交评论