欢迎来到天天文库
浏览记录
ID:50303347
大小:428.00 KB
页数:43页
时间:2020-03-12
《可编程逻辑电路设计教学组.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、可编程逻辑电路设计DigitalDesignUsingPLD可编程逻辑电路设计教学组二○○七年PLD设计的VHDL语言实现(概述及组合逻辑部分)HardwareDescriptionLanguage(HDL)数字系统的描述方式HDL语言既包含一些高级程序设计语言的结构形式,也兼顾描述硬件线路连接的构件,可以支持从系统级到门级的各个层次的行为描述和结构描述。HDL语言基本特征是并发的(硬件的基本特征),但也提供顺序功能的描述手段。HDL语言特点:文本输入适于设计大系统——表达功能,隐藏细节高表达效率易修改、开发周期短通用语言,模块可重用性好常用HDL语言:VHDL、Verilog-HD
2、L、AHDL设计层次行为描述结构描述系统级算法流程图由Cpu或控制器、存储器等组成的逻辑框图寄存器传输级(RTL)数据流图、真值表、状态机、状态图(表)寄存器、ALU、MUX、ROM等组成的逻辑图逻辑门级布尔方程、真值表、卡诺图逻辑门、触发器、锁存器等构成的逻辑图(网表)VHDL语言VeryhighspeedintegratedcircuitHDLIEEE工业标准HDL语言可支持仿真与综合两个版本:1076-19871076-1993VHDL程序结构1、USE定义区Library——定义所使用的元件库Package——定义所使用的元件库中的包2、Entity定义区:定义电路实体的I/
3、O接口规格3、Architecture定义区:描述电路内部具体功能Component定义区信号定义行为描述/数据流描述/结构描述4、Configuration定义区:决定使用哪一个architecture(非必须)Use定义区LibraryIEEE;--库定义UseIEEE.std_logic_1164.all;--包引用UseIEEE.std_logic_arith.all;--包引用引用语句的用法:Library,;Uselib_name.pack_name.object;PackagesPackage4、me>isConstantDecclarationsTypeDeclarationsSignalDeclarationsSubprogramDeclarationsComponentDeclarationsOtherDeclarationsEnd;(1076-1987)EndPackage;(1076-1993)PackageBodyisConstantDeclarationsTypeDeclarationsSubprogramBodyEndPackage;(1076-195、87)EndPackageBody(1076-1993)PackageExamplepackagepackage_exampleistypelifeis(sleeping,working,eating,entertaiment,otheractions);subtypeuint4isintegerrange0to15;subtypeuint5isintegerrange0to31;functioncompare(a,b:integer)returnboolean;endpackage_example;packagebodypackage_exampleis6、functioncompare(a,b:integer)returnbooleanisvariabletemp:boolean;beginifa7、gic_arithStd_logic_signedStd_logic_unsigned其它库:Altera的元件库用户自定义库Entity(实体)Entity定义语法EntityisgenericdeclarationsportdeclarationsEnd;EntityExampleEntityadderisgeneric(data_width:integer:=4);port(add_a,add_b:
4、me>isConstantDecclarationsTypeDeclarationsSignalDeclarationsSubprogramDeclarationsComponentDeclarationsOtherDeclarationsEnd;(1076-1987)EndPackage;(1076-1993)PackageBodyisConstantDeclarationsTypeDeclarationsSubprogramBodyEndPackage;(1076-19
5、87)EndPackageBody(1076-1993)PackageExamplepackagepackage_exampleistypelifeis(sleeping,working,eating,entertaiment,otheractions);subtypeuint4isintegerrange0to15;subtypeuint5isintegerrange0to31;functioncompare(a,b:integer)returnboolean;endpackage_example;packagebodypackage_exampleis
6、functioncompare(a,b:integer)returnbooleanisvariabletemp:boolean;beginifa7、gic_arithStd_logic_signedStd_logic_unsigned其它库:Altera的元件库用户自定义库Entity(实体)Entity定义语法EntityisgenericdeclarationsportdeclarationsEnd;EntityExampleEntityadderisgeneric(data_width:integer:=4);port(add_a,add_b:
7、gic_arithStd_logic_signedStd_logic_unsigned其它库:Altera的元件库用户自定义库Entity(实体)Entity定义语法EntityisgenericdeclarationsportdeclarationsEnd;EntityExampleEntityadderisgeneric(data_width:integer:=4);port(add_a,add_b:
此文档下载收益归作者所有