欢迎来到天天文库
浏览记录
ID:58878926
大小:151.50 KB
页数:43页
时间:2020-09-30
《VHDL硬件描述语言基础ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VHDL硬件描述语言基础简介基本结构基本数据类型设计组合电路设计时序电路设计状态机大规模电路的层次化设计FunctionandProcedure简介--背景传统数字电路设计方法不适合设计大规模的系统。工程师不容易理解原理图设计的功能。众多软件公司开发研制了具有自己特色的电路硬件描述语言(HardwareDescriptionLanguage,HDL),存在着很大的差异,工程师一旦选用某种硬件描述语言作为输入工具,就被束缚在这个硬件设计环境之中。因此,硬件设计工程师需要一种强大的、标准化的硬件描述语言,作为可相互交流的设计环境
2、。简介--背景美国国防部在80年代初提出了VHSIC(VeryHighSpeedIntegratedCircuit)计划,其目标之一是为下一代集成电路的生产,实现阶段性的工艺极限以及完成10万门级以上的设计,建立一项新的描述方法。1981年提出了一种新的HDL,称之为VHSICHardwareDescriptionLanguage,简称为VHDL,这种语言的成就有两个方面:描述复杂的数字电路系统成为国际的硬件描述语言标准VHDL的优点用于设计复杂的、多层次的设计。支持设计库和设计的重复使用与硬件独立,一个设计可用于不同的硬件
3、结构,而且设计时不必了解过多的硬件细节。有丰富的软件支持VHDL的综合和仿真,从而能在设计阶段就能发现设计中的Bug,缩短设计时间,降低成本。更方便地向ASIC过渡VHDL有良好的可读性,容易理解。VHDL与计算机语言的区别运行的基础计算机语言是在CPU+RAM构建的平台上运行VHDL设计的结果是由具体的逻辑、触发器组成的数字电路执行方式计算机语言基本上以串行的方式执行VHDL在总体上是以并行方式工作验证方式计算机语言主要关注于变量值的变化VHDL要实现严格的时序逻辑关系--eqcomp4isafourbitequality
4、comparatorLibraryIEEE;useIEEE.std_logic_1164.all;entityeqcomp4isport(a,b:instd_logic_vector(3downto0);equal:outstd_logic);endeqcomp4;architecturedataflowofeqcomp4isbeginequal<=‘1’whena=belse‘0’;Enddataflow;VHDL大小写不敏感eqcomp4.vhd包实体构造体文件名和实体名一致每行;结尾关键字begin关键字end后跟实体
5、名关键字end后跟构造体名库实体(Entity)描述此设计功能输入输出端口(Port)在层次化设计时,Port为模块之间的接口在芯片级,则代表具体芯片的管脚A[3..0]B[3..0]equalEntityeqcomp4isport(a,b:instd_logic_vector(3downto0);equal:outstd_logic);endeqcomp4;实体--端口的模式输入(Input)输出(Output)双向(Inout):可代替所有其他模式,但降低了程序的可读性,一般用于与CPU的数据总线接口缓冲(Buffer)
6、:与Output类似,但允许该管脚名作为一些逻辑的输入信号Out与Buffer的区别Entitytest1isport(a:instd_logic;b,c:outstd_logic);endtest1;architectureaoftest1isbeginb<=not(a);c<=b;--Errorenda;Entitytest2isport(a:instd_logic;b:bufferstd_logic;c:outstd_logic);endtest2;architectureaoftest2isbeginb<=not(a
7、);c<=b;enda;结构体(Architecture)描述实体的行为结构体有三种描述方式行为描述(behavioral)数据流描述(dataflow)结构化描述(structural)结构体--行为描述Architecturebehavioralofeqcomp4isbegincomp:process(a,b)beginifa=bthenequal<=‘1’;elseequal<=‘0’;endif;endprocesscomp;endbehavioral;高层次的功能描述,不必考虑在电路中到底是怎样实现的。结构体--数
8、据流描述描述输入信号经过怎样的变换得到输出信号Architecturedataflow1ofeqcomp4isbeginequal<=‘1’whena=belse‘0’;enddataflow1;Architecturedataflow2ofeqcomp4isbeginequal<=no
此文档下载收益归作者所有