欢迎来到163文库! | 帮助中心 精品课件PPT、教案、教学设计、试题试卷、教学素材分享与下载!
163文库
全部分类
  • 办公、行业>
  • 幼教>
  • 小学>
  • 初中>
  • 高中>
  • 中职>
  • 大学>
  • 各类题库>
  • ImageVerifierCode 换一换
    首页 163文库 > 资源分类 > PPT文档下载
    分享到微信 分享到微博 分享到QQ空间

    超大规模集成电路CAD-第三章-硬件描述语言课件.ppt(154页)

    • 文档编号:7808533       资源大小:1.07MB        全文页数:154页
    • 资源格式: PPT        下载积分:22文币     交易提醒:下载本文档,22文币将自动转入上传用户(ziliao2023)的账号。
    微信登录下载
    快捷注册下载 游客一键下载
    账号登录下载
    二维码
    微信扫一扫登录
    下载资源需要22文币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    优惠套餐(点此详情)
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、试题类文档,标题没说有答案的,则无答案。带答案试题资料的主观题可能无答案。PPT文档的音视频可能无法播放。请谨慎下单,否则不予退换。
    3、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者搜狗浏览器、谷歌浏览器下载即可。。

    超大规模集成电路CAD-第三章-硬件描述语言课件.ppt(154页)

    1、 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-261Design EntryDesign Entry 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-262p3.1 3.1 硬件描述语言概述硬件描述语言概述 p3.2 VHDL3.2 VHDL语言基本结构语言基本结构 p3.3 VHDL3.3 VHDL语言主要描述语句语言主要描述语句 p3.4 VHDL3.4 VHDL语言组合逻辑设计语言组合逻辑设计p3.5 VHDL3.5 VHDL语言时序逻辑设计

    2、语言时序逻辑设计p3.6 VHDL3.6 VHDL语言的状态机设计语言的状态机设计p3.7 VHDL3.7 VHDL描述方法对电路结构的影响描述方法对电路结构的影响p3.8 VHDL3.8 VHDL的的TestbenchTestbench的编写方法的编写方法 p3.9 3.9 ModelsimModelsim仿真软件介绍仿真软件介绍 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2631.1.硬件描述语言(硬件描述语言(HDLHDL):):是一种形式化方法描述数字电路和系统的语言。利用这种语言,数字电路系统的设计可以从上

    3、层到下层(从抽象到具体)逐层描述自己的设计思想,用分层次的模块来表示极其复杂的数字系统。然后利用EDA工具,逐层仿真验证,再利用综合工具把HDL转换为门级网表,最后用ASIC或FPGA自动布局布线工具,把网表转换成具体的电路。目前,美国硅谷约有90以上的ASIC和FPGA采用HDL进行设计。HDL发展至今已有20多年的历史,并成功的应用于EDA设计的各个阶段:建模、仿真、验证和综合等。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-264 VHDLVHDL VHDL是美国国防部在20世纪70年代末80年代初提出的VHSIC

    4、(Very High Speed Integrated Circuit)计划的产物,1981年提出了一种新的硬件描述语言,称为VHSIC Hardware Description Language 也就是我们熟知的VHDL。VerilogVerilog HDL HDL Verilog HDL是在C语言基础上发展起来的一种硬件描述语言,它是由GDA(Gateway Design Automation)公司的Phil Moorby于1983年创建的,最初只设计了一个仿真与验证工具,之后又陆续开发了相关的故障模拟与时序分析工具。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下

    5、而求索吾将上下而求索吾将上下而求索2023-9-265 SuperlogSuperlog 集合了Verilog的简洁、C语言的强大、功能验证和系统级结构设计等特征,是一种高速的硬件描述语言。由 Phil Moorby与Peter Flake和一家叫做CoDesign Automation的EDA公司合作,在Verilog语言的基础上,结合高级语言C、C甚至Java等语言的特点,进行扩展,于1999年发布了Superlogtm系统设计语言,同时开发了两个工具:SystemSimtm(用于系统开发)和SystemExtm(用于高级验证)。SystemCSystemC 由Synopsys和Cowar

    6、e合作为满足SOC要求开发的(在系统芯片各个设计中,像系统定义、软硬件的划分、设计实现等)一种能同时实现较高层次的软件和硬件描述的系统级设计语言。著名公司Cadence也于2001年加入了SystemC联盟。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-266(1)VHDL具有更强的行为描述能力行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。(2)VHDL丰富的仿真语句和库函数丰富的仿真语句和库函数,使得在任何大系统的设

    7、计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。(3)VHDL语句的行为描述能力和程序结构决定了他具有支支持大规模设计持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。(5)VHDL对设计的描述具有相对独立性相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将

    8、上下而求索吾将上下而求索吾将上下而求索2023-9-267 BehavioralBehavioral(行为级描述):(行为级描述):就是对整个系统的数学模型进行描述。只表示输入/出之间的转换行为,不包含任何结构信息,无需关注设计功能的门级实现。其抽象程度比RTL描述方式和结构描述方式更高。在程序中大量采用算术运算、关系运算、惯性延时、传输延时等难以进行逻辑综合和不能进行逻辑综合的VHDL语句。Input1NOutput1NIF input1 THENFOR j IN high DOWNTO low LOOPshift(j):=shift(j);END LOOP;output1=shift AF

    9、TER 5ns 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-268 RTLRTL(Register transfer LevelRegister transfer Level):即寄存器传输级即寄存器传输级描述,也称为数据流描述。描述,也称为数据流描述。既显示地表示了设计单元的行为,又隐含该设计单元的结构。Input 1Input nOutput 1底层元件底层元件底层元件底层元件p描述电路的功能和结构p调用特殊的硬件p用于综合 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求

    10、索吾将上下而求索2023-9-269 Structural LevelStructural Level(结构级描述)(结构级描述):描述该设计单元的硬件结构、把已有的设计单元方便地用到新的设计中,使用元件例化语句及配置语句来描述元件的类型及元件的互联关系。结构描述方式的基本框架为用COMPONENT语句指明电路中所用的已生成的模块,用PORTMAP()语句将模块连接起来。元件描述元件描述用于声明端口类型和数据类型用于声明端口类型和数据类型 COMPONENT ISPORT(:;.:;END COMPONENT;元件配置用于映射端口:PORT MAP(=;=;)第3章 硬件描述语言路漫漫其修远兮

    11、路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2610一一.VHDL.VHDL 语言的基本结构:语言的基本结构:库库(library)(library):用来存放已经编译的实体、构造体、包集合和配置,库一般可由用户产生或者由ASIC芯片制造商提供。包集合包集合(package)(package):存放各设计模块都能共享的数据类型、常数和子程序。实体(实体(EntityEntity):系统的外部接口关系。构造体(构造体(ArchitectureArchitecture):描述系统内部的结构和行为。配置(配置(configurationconfigurati

    12、on):用于从库中选取所需的单元,来组成系统设计的不同版本。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2611 一个完整的设计单元一个完整的设计单元 LIBRARY IEEE;库库 USE IEEE.STD_LOGIC_1164.ALL;包集合包集合 ENTITY 实体名字 IS 实体实体 PORT(端口名,);END 实体名;ARCHITCTURE 构造体名 OF 实体名 IS 结构体结构体 定义语句:信号常数,数据类型等 BEGIN 并发语句 END 构造体名;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫

    13、漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2612实体构造体基本单元实体构造体基本单元1 1:VHDLVHDL语言描述方法语言描述方法电原理图的描述方式,其中a,b是输入,c是输出,C=AB。如果用VHDL 语言来描述此电路:实体描述输入、输出,构造体描述功能。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-26132 2:实体说明:实体说明 ENTITY ENTITY 实体名字 IS IS PORT PORT(端口名,);END END 实体名;说明:说明:1:实体名可用英文字母、数字、下划线表

    14、示,名 字开头只能为英文字母,结尾不能用下划线。2:PORTPORT(端口名:方向 数据类型);端口名与实体名命名规则相同。方向:IN IN 表示输入表示输入 OUT OUT 表示输出(构造体内部不能再使用)表示输出(构造体内部不能再使用)INOUT INOUT 表示输入输出表示输入输出 BUFFER BUFFER 表示输出端带有反馈类型。(构造体内表示输出端带有反馈类型。(构造体内 部可再使用)部可再使用)第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2614 数据类型数据类型:VHDL有10种数据类型,在逻辑电路设计

    15、中只使用两种。BIT BIT:位:位 (“0”(“0”,“1”)1”)BIT_VECTOR :BIT_VECTOR :位矢量位矢量 (“10101101”)(“10101101”)表示数据总线 D0-D7的数据类型:BIT_VECTOR(7 DOWNTO 0);BIT_VECTOR(7 DOWNTO 0);library library ieeeieee;use ieee.std_logic_1164.all use ieee.std_logic_1164.all;EntityEntity Mux isis portport(d0,d1,sel:in std_logic;std_logic;q

    16、:out std_logic;std_logic;bus:out std_logic_vector(7 std_logic_vector(7 downtodownto 0)0);endend Mux;例中BIT数据用std_logic说明,bus的BIT_VECTOR用std_logic_vector说明是完全等效的。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-26153 3:构造体:构造体 构造体用来描述实体的功能构造体用来描述实体的功能 ARCHITCTUREARCHITCTURE 构造体名 OF OF 实体名 I

    17、S IS 定义语句:内部信号,常数,数据类型,函数等的定义 BEGINBEGIN 并发语句 END END 构造体名;构造体的名称可由设计者命名。通常根据描述的对象把构造体命名为behav(behavioral)行为描述,rtl寄存器传输描述,struct(structural)结构描述。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2616VHDL 语言中,可以赋予一个值的对象就称为客体或对象。信号信号(SIGNAL)(SIGNAL):对应物理意义上是实际电路连接线。变量变量(VARIABLE)(VARIABLE):相

    18、当于暂存寄存器,变量值不是最终结果。常数(常数(CONSTANTCONSTANT):):如电源、地等,用来描述固定的值。信号量和变量的区别:信号量和变量的区别:信号量是全局量(只能在进程、函数中使用和定义)变量是局部量(只能在构造体、子程序中定义,而不能在进程、过程、函数中定义)信号赋值用“=”,而变量用“:”。信号和变量可以相互代入。如:a 是变量,b是信号,则a:=b;b=a;变量是立即赋值的,而信号量是在进程结束时赋值的。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2617相同点:相同点:值可变,可综合为逻辑或线

    19、不同点:不同点:变量赋值有立即性,且只用于process,subprogram中(VHDL-1076-87),而信号除此之外,还可用于并行语句中 应用:应用:简单计算 signal 复杂计算 variable 中间结果 variable 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2618signal a,b,c,x,y:integerprocess(a,b,c)begin c=a;x=c+2;c=b;y=c+4;end process;signal a,b,x,y:integerprocess(a,b,c)varia

    20、ble c:integer;begin c:=a;x=c+2;c:=b;y=c+4;end process;+2b4xy+2b4xya 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2619描述时钟边沿的属性描述时钟边沿的属性EVENTEVENTEVENT属性属于信号类属性。描述信号边沿出现的时刻时钟上升沿表示:时钟上升沿表示:IF(clkEVENT AND clk=1)THEN q=d;IF CLKEVENT AND(CLK=1)AND(CLKLAST_VALUE=0)THEN q=d;-确保CLK的变化是一 次上升沿

    21、的跳变IF CLK=1 AND CLKLAST_VALUE=0THEN q=d;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2620库的功能类似于目录库:存放编译后的数据集合,单元,构造体,实体 等,使得设计者可以共享已经编译过的设计结 果。库的说明总是放在设计单元的最前面。LibraryLibrary 库名;库的好处在于使设计者可以共享已经编译过的设计结果,在VHDL中可以存在多个不同的库,但库之间是相互独立的,不可嵌套。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将

    22、上下而求索2023-9-2621p STDSTD库库:任何包集合都可不作任何说明便可以使用。如:VHDL标准库中定义BIT、BIT_VECTOR等。p IEEEIEEE库库:美国电子电器工程师协会定义的库,在使用其中的包集合之前应先说明。如:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;p 面向用户的面向用户的ASICASIC库库:为了进行门级仿真,各个公司提供面向ASIC的逻辑门库,例设计单片机、乘法器、接口等电路时,并不需要用用户设计这些器件,直接可调用。p 工作库工作库WorkWork:现行工作库,用户设计好电路经过编译后放入工作库中。p 用户定义库用

    23、户定义库:为了方便工作,用户自己设计的单元可以作为用户自定义库。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2622ModelsimModelsim仿真库仿真库 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2623包集合相当于高级语言中的INCLUDE语句。包集合包含信信号的定义、常数定义、数据类型定义、元器件定义、函号的定义、常数定义、数据类型定义、元器件定义、函数定义、过程定义等数定义、过程定义等。包集合是一个可编译的设计单元,也是库结构中

    24、的一个层次。要使用包集合时可以用USE语句说明。如:Use ieee.std_logic_1164.all;该语句表示在VHDL程序中要使用名为Std_logic_1164.all的包集合中所有定义或说明项。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2624 PACKAGE 包集合名 IS 说明语句 END 包集合名;PACKAGE BODY 包集合名 IS 语句 END 包集合名;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2625p 配置

    25、(Configuration)语句描述层与层之间的连接关系及实体结构之间的连接关系。设计者可以利用配利用配置语句来选择不同的构造体置语句来选择不同的构造体,使其与要设计的实体相对应。在仿真某个实体时,可以利用配置来选择不同的构造体,进行性能对比试验以获得性能最佳的构造体。Configuration 配置名 Of 实体名 语句说明 End 配置名;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2626两类描述语句:两类描述语句:一:顺序语句(:顺序语句(SequentialSequential)二:并发语句(:并发语句(C

    26、oncurrentConcurrent)第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2627顺序语句是按出现的次序加以执行。只能出现在进程或子程序中,由它定义进程所操作的算法。涉及到的系统行为:系统行为:有时序控制流、控制、条件和迭代等;语句的功能操作:语句的功能操作:有算术、逻辑运算;信号和变量的赋值,子程序调用等。WAIT WAIT 语句语句 断言语句断言语句 信号代入语句信号代入语句 变量赋值语句变量赋值语句 IF IF语句语句 CASECASE语句语句 LOOP LOOP语句语句 NEXTNEXT语句语句 EX

    27、IT EXIT语句语句 过程调用语句过程调用语句 NULL NULL语句语句 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-26281:1:书写格式书写格式 WAIT :无限等待 WAIT ON 信号:信号变化前处于等待,变化后进程执 行,结束挂起等待状态 WAIT UNTIL*条件:条件满足后,结束等待状态。WAIT FOR 时间:时间到后,结束等待。2:2:说明说明l可以将上述可以将上述WAIT WAIT 语句语句“或或”起来起来l带带*号的号的WAIT WAIT 语句可以进行逻辑综合功能,其余只语句可以进行逻辑综合

    28、功能,其余只能进行行为描述。能进行行为描述。l无敏感量进程是无限等待循环的进程。无敏感量进程是无限等待循环的进程。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2629 If 语句是根据所制指定的条件来确定执行那些语句。用于选择器、比较器、译码器和条件控制的逻辑设计。三种类型:三种类型:1:开关控制(门闩控制)IF 条件 THEN 2:2选1控制 IF 条件 顺序语句 ELSE 顺序语句 END IF;3:多选择控制 IF 条件1 THEN .ELSIF 条件2 THEN End IF;第3章 硬件描述语言路漫漫其修远兮

    29、路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2630 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2631Library ieee;use ieee.std_logic_1164.all;entity Mux41 isPort(input:in std_logic_vector(3 downto 0);Sel(in std_logic _vector(1 downto 0);Y:out std_logic);End mux41;ARCHITECTURE rtl OF mux41

    30、 IS BEGINPROCESS(input,sel)BEGINIF(sel=00)THEN Y=input(0);ELSIF(sel=01)THEN Y=input(1);ELSIF(sel=10)THEN Y=input(2);ELSE Y顺序语句;END CASE;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2633ARCHITECTURE rtl OF max41 IS BEGIN PROCESS(sel,input)BEGIN CASE sel IS WHEN “00”=YYYYY=Z;END CASE;EN

    31、D PROCESS;END rtl;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2634 IF语句按条件顺序处理(可设计优先级编码器),而CASE语句按条件是无顺序处理(并行),从而CASE语句不能用来设计优先编码器。CASE语句必须列出所有条件,IF语句不一定,一般来说,列出所有条件是不大可能的,故在CASE语句中,常常在最后有WHEN OTHERS 语句。描述总线或编码、译码的行为Case语句的可读性比If语句强。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而

    32、求索2023-9-2635LOOP语句用于描述迭代电路,即将相同功能的电路串连起来,通常有两种描述方式。1:FOR循环变量 标号:FOR 循环变量 IN 离散范围 LOOP 顺序语句 END LOOP 标号;如:累加计算ASUM:for I in 1 to 9 loop sum:=sum+i;-sum初始值为0 end loop ASUM;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-26362.WHILE LOOP语句。标号:WHILE 条件 LOOP 顺序处理语句 END LOOP 标号;没有给出循环次数的范围,而是

    33、给出了循环执行顺序语句的条件;没有自动递增循环变量的功能,所以必须在顺序处理语句中增加一条循环次数计算语句,用于循环控制。循环控制条件为布尔表达式,当条件为“真”时,则进行循环;如果条件为“假”,则结束循环。WHILE(i10)LOOP sum:=sum+i;i:=i+1;END LOOP;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2637p Process 进程语句p Concurrent Signal Assignment 并发信号代入语句p Conditional Signal Assignment 条件信号代

    34、入语句p Selective Signal Assignment 选择信号代入语句p Concurrent Procedure Call 并发过程调用语句p Block 块语句 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2638进程语句是最主要的并发语句进程语句是最主要的并发语句,也是最能体现硬件描述语言特点的一条语句。在一个构造体中,多个进程语句可同时并发运行。进程语句主要有以下几个特点:它可以与其它进程并发运行,并可存取实体或构造体中定义的信号。进程语句是并发语句,而进程结构中的语句是顺序语句,是按顺序一条一条执

    35、行的。进程的启动可用敏感量或在进程中包含WAIT语句。进程之间的同步和通信是通过信号量传递来实现的。进程只能定义常数、变量,不能定义信号量。第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2639 信号代入语句用在并发执行场合就是并发信号代入语句。一个并发语句可以写成一个进程。如:Process(a,b)Begin c=a AND b;End Process;c=a AND b是一个并发语句,这里a,b都是信号量;代入符号“=”右边可以用算术运算表达式、逻辑表达式或关系操作表达式来表示。第3章 硬件描述语言路漫漫其修远兮路

    36、漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2640条件代入语句可根据不同条件将不同的表达式代入信号量 书写格式为书写格式为:目的信号量 =表达式1 when 条件1 else 表达式2 when条件2 else 表达式3 when 条件3 else ELSE 表达式n;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2641例:用条件信号代入语句描述四选一Entity mux41 isPort(i0,i1,i2,i3,a,b:in std_logic;q:out std_logic

    37、);End mux41;Architecture rtl of mux41 isSignal:sel std_logic_vector(1 downto 0);Begin sel=b&a;q=i0 when sel=“00”else i1 when sel=“01”else i2 when sel=“10”else i3 when sel=“11”else X;End rtl;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2642 选择信号代入语句类似于CASE语句,它对表达式进行测试,当表达式取值不同时,将使不同的值代

    38、入目的信号量 书写格式为:书写格式为:WITH 表达式 SELECT 目的信号量=表达式1 WHEN 条件1,表达式2 WHEN 条件2,表达式n WHEN 条件n,表达式n+1 WHEN others;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2643例:2选1电路LIBRARY IEEE;USE IEEE.std_logic_1164.all;ENTITY mux 21 ISPORT (a,b,sel:in std-logic;q:out std-logic);END mux21;ARCHITECTURE wit

    39、h-select-when OF mux21 ISBEGIN with sel select q=a when 1,b when 0,X when others;END with-select-when;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2644组合逻辑电路:组合逻辑电路:用各种门电路组成的,用于实现某种功 能的复杂逻辑电路。特点:特点:某一时刻的输出状态仅由该时刻电路的输入信号 决定,而与该电路在此输入信号之前所具有的状 态无关。主要包括:简单门电路简单门电路 编、译码器编、译码器 三态门电路、总线缓冲器三

    40、态门电路、总线缓冲器 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2645 2 2输入输入 “与非与非”门电路门电路library ieee;use ieee.std_logic_1164.all;entity nand2 isport(a,b:in std_logic;y:out std_logic);End nand2;Architecture beh of nand2 isBegin y=a Nand b;End nand2;&aby 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索

    41、吾将上下而求索吾将上下而求索2023-9-26463-8译码器电路(case语句)ARCHITECTURE rtl OF decode ISBEGINPROCESS (Din)BEGIN IF (en=0)THEN Dout 0);ELSE CASE Din IS when 000=Dout Dout Dout Dout Dout Dout Dout Dout Dout=00000000;END CASE;END IF;END PROCESS;End decode 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2648优

    42、先级编码器entity priority is port(Input:in std_logic_vector(7 downto 0);output:out std_logic_vector(2 downto 0);architecture a of priority is begin process(input)begin if Input(7)=1 then output=111;elsif Input(6)=1 then output=110;elsif Input(5)=1 then output=101;elsif Input(4)=1 then output=100;elsif In

    43、put(3)=1 then output=011;elsif Input(2)=1 then output=010;elsif Input(1)=1 then output=001;elsif Input(0)=1 then output=000;end if;end process;end a;优优先先级级编编码码器器Input7.0Output2.0 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2649三态门电路Entity tri_gate is port(din,en:in std_logic;dout:out

    44、 std_logic);End tri_gate;Architecture a of tri_gate is beginProcess(din,en)begin If(en=1)then dout=din;-0,1态 else dout=Z;-高阻态End if;End process;End a;数据输入控制输入数据输出dinendoutX0Z010111三态门dinendout 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2650双向总线缓冲器功能:双向总线缓冲器有两个输入输出端a和b,一个方向控制端dr和一个选通

    45、端en。当en=1时双向总线缓冲器未被选通 a和b都呈高阻态;当en=0时双向总线缓冲器选通 如果dr=0,a=b;如果dr=1,b=a;endr功能00a=b01b=a1XZ双向总线缓冲器bdrEna 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2651Library ieee;Use ieee.std_logic_1164.all;Entity tri_bigate isPort(a,b:inout std_logic_vector(7 downto 0);en:in std_logic;dr:in std_log

    46、ic);End tri_bigate;Architecture rtl of tri_bigate isSignal aout,bout:std_logic_vector(7 downto 0);Begin Process(a,dr,en)beginIf(en=0)and(dr=1)then 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2652 bout=a;else bout=“ZZZZZZZZ”;End if;b=bout;End process;process(b,dr,en)beginIf(en=0)and(d

    47、r=0)then aout=b;else aout=“ZZZZZZZZ”;End if;a=aout;End process;End rtl 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2653p 时序逻辑电路?时序逻辑电路?是具有记忆(或内部状态)的电路,即时序逻辑电路的输出不但与当前的输入状态有关,而且与以前的输入状态有关。时序电路的内部状态元件可以由边沿敏感的触发器或由电平敏感的锁存器实现,但大多数时序电路采用触发器来实现。时序电路又可分为同步时序电路和异步时序电路两种,大部分时序电路为同步时序电路。主要包括:触

    48、发器 寄存器 计数器 分频器 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2654 1:时钟信号描述 上升沿:IF(clkEVENT AND clk=1)THEN 下降沿:IF(clkEVENT AND clk=0)THEN 2:复位信号描述 (1)异步复位描述 PROCESS(clk,reset)BEGIN IF(reset=0)THEN q=0;ELSIF(clkEVENT AND clk=1)THEN q=d;END IF;END PROCESS;(2):同步复位描述PROCESS(clk)BEGINIF(clk

    49、EVENT AND clk=1)THEN IF(reset=0)THEN q=0;ELSE q=d;END IF;End if;End process;第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2655D D触发器触发器Entity dff1 ISPORT(clk,d,reset:in STD_LOGIC;q:out STD_LOGIC);END dff1;ARCHITECTURE rtl OF dff1 IS BEGINPROCESS(clk,reset)BEGINIF(reset=0)THE q=0;ELSIF(

    50、clkEVENT AND clk=1)THE q=d;END IF;END PROCESS;END rtl;D触发器dclkresetq 第3章 硬件描述语言路漫漫其修远兮路漫漫其修远兮路漫漫其修远兮 吾将上下而求索吾将上下而求索吾将上下而求索2023-9-2656移位寄存器(多级延迟)ENTITY reg1 IS PORT(d:in BIT;clk:in BIT;q:out BIT);END reg1;ARCHITECTURE reg1 OF reg1 ISSIGNAL a,b:BIT;BEGINPROCESS(clk)BEGINIF rising_edge(clk)THENa=d;b=a;


    注意事项

    本文(超大规模集成电路CAD-第三章-硬件描述语言课件.ppt(154页))为本站会员(ziliao2023)主动上传,其收益全归该用户,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!




    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库