书签 分享 收藏 举报 版权申诉 / 38
上传文档赚钱

类型第8讲VHDL语言中的函数子程序包和库课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:3861704
  • 上传时间:2022-10-19
  • 格式:PPT
  • 页数:38
  • 大小:629.85KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《第8讲VHDL语言中的函数子程序包和库课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    VHDL 语言 中的 函数 子程序 课件
    资源描述:

    1、第八讲 VHDL语言中的函数、子程序、包和库 提纲提纲l结构模型l层次与抽象l类属l配置l总结函数(函数(Function)函数(函数(Function)l函数的外部参量与模式默认的模式是inl函数不能修改输入参量l函数内部定义的变量在每一次调用时都要被初始化l函数内部不允许出现Wait语句l函数不能调用另一函数函数(函数(Function)l在结构或进程的定义区域加入函数代码函数举例:时钟沿判断函数函数举例:时钟沿判断函数函数举例:位矢量函数函数举例:位矢量函数l函数的一种用法:类型转换函数举例:函数举例:判决函数判决函数l信号赋值语句的基本结构:signal=(value expressi

    2、on after time expression)l右边的的部分常称为一个波形元素l每一个信号和一个驱动器对应函数举例:函数举例:判决函数判决函数l在驱动器中保存了信号的当前值和未来时刻的值,即该信号的预期波形l信号赋值语句的执行就是对一个信号的驱动器进行修改l信号的当前值就是驱动器头部的值函数举例:函数举例:判决函数判决函数l如何计算共享信号的值?引入判决函数函数举例:函数举例:判决函数判决函数l当冲突的信号事件发生时就需要引用判决函数l判决是一种隐式的关联操作函数举例:函数举例:判决函数判决函数函数举例:函数举例:判决函数判决函数l电路行为如果有任何其中一个控制信号打开了开关,则输出信号被

    3、拉低lVHDL描述如果有任何一个信号驱动器试图将输出信号拉低(驱动器头部的值),则判决函数返回一个0值在任何一个驱动器试图对输出信号赋值时,判决函数将被调用函数举例:函数举例:判决类型判决类型std_logic函数举例:函数举例:判决类型判决类型std_logic函数举例:函数举例:“线或线或”逻辑逻辑l多个芯片共同驱动一个共享的出错指示信号l结构值是各个驱动信号的逻辑或函数举例:函数举例:“线或线或”逻辑逻辑函数资源函数资源l在IEEE包(package)中有标准函数定义,可以参考学习子程序(子程序(Procedure)l参数的模式可以是 in(读)和 out(写)l默认的输入参数类型是常数

    4、l默认的输出类型是变量l子程序内部定义的变量在子程序每一次调用时将被初始化子程序(子程序(Procedure)子程序(子程序(Procedure)子程序(子程序(Procedure)l子程序的位置决定了它的可见性(visibility)和用途子程序与信号子程序与信号子程序与信号子程序与信号l子程序可以对作为输入参量的信号进行赋值l按照设计中的层次划分,子程序可以对来自高层的非参量表中的信号,如端口进行赋值l按照设计中的层次划分,子程序中设计的信号可能在子程序之外定义并行与顺序的子程序调用并行与顺序的子程序调用并行子程序调用并行子程序调用等价的顺序子程序调用等价的顺序子程序调用子程序的重载子程序

    5、的重载l电路单元在输入信号的数量和输入信号的类型上存在差异l用不同的子程序来描述这些电路单元l子程序的命名将变得很烦琐子程序的重载子程序的重载l上述电路单元可以描述为:dff_bit(clk,d,q,qbar)asynch_dff_bit(clk,d,q,qbar,reset,clear)dff_std(clk,d,q,qbar)asynch_dff_std(clk,d,q,qbar,reset,clear)l所有的上述电路单元都采用相同的名字子程序重载l通过调用时的参量表来找到正确的子程序子程序的重载子程序的重载lVHDL是一种强类型语言l重载是一种处理用户自定义类型的有效、方便的办法l对重

    6、载操作和重载机制的管理导致了包(package)的概念的出现包(包(package)l包的申明部分对包中所包含的函数,子程序和类型进行申明用作包的接口只有被申明的内容才可以被外部引用l通过use子句来对包进行引用l包体对包头中定义的函数和子程序进行实现实例化包头中定义的常数包举例:包举例:std_logic_1164包头包头包体包体l包体是被编译到库(library)中的l新定义的类型必须具有关于运算的定义,例如逻辑运算(如,and,or)和算术运算(如,+,*)l分析存储在IEEE 库中的std_logic_1164包库(库(library)l设计单元最终被编译和存储在库中l逻辑库的名字和其

    7、物理存储目录相对应lSTD库和WORK库是隐含定义的库:设计内容库:设计内容l对基本设计单元和次级设计单元进行区分l定义了编译顺序库:可见性规则库:可见性规则库:可见性规则库:可见性规则lWhen multiple design units are in the same file visibility of libraries and packages must be established for each primary design unit(entity,package header,configuration)separately!l Secondary design units

    8、derive library information from associated primary design unitlThe use clause may selectively establish visibility,e.g.,only the function rising_edge()is visible within entity design-2l Secondary design inherit visibilitylNote design unit descriptions are decoupled from file unit boundariesSummaryl Functionsl Resolution functionsl Proceduresl Concurrent and sequential procedure callsl Subprogram overloadingl Packagesl Package declaration-primary design unitl Package bodyl Librariesl Relationships between design units and librariesl Visibility Rules

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第8讲VHDL语言中的函数子程序包和库课件.ppt
    链接地址:https://www.163wenku.com/p-3861704.html

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


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


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

    163文库