第三章子程序课题.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.6 子程序(SUBPROGRAM) 3.6.1 函数(FUNCTION) 在VHDL中有多种函数形式,如库中现成的具有 专用功能的预定义函数和用于不同目的的用户自定 义函数。 表达格式如下: 一般地,函数定义由两部分组成,即函数首和函数体。 FUNCTION 函数名(参数表) RETURN 数据类型; --函数首 1.函数首 由函数名、参数表和返回值的数据类型三部分 函数首的名称可以是普通的标识符,也可以是运算符(加上双引号)。 【 如 】 FUNCTION FUNC1(A,B,C:REAL) RETURN REAL; FUNCTION “*” (A,B:INTEGER) RETURN INTEGER; --注意函数名*要用引号括住 FUNCTION AS2(SIGNA IN1,IN2:REAL) RETURN REAL; --注意信号参量的写法 2. 函数体 函数体包括对数据类型、常数、变量等的局部说明以及用以完成规定算法或转换的顺序语句,并以关键词END FUNCTION 以及函数名结尾。 ENTITY FUNC IS PORT ( A:IN BIT_VECTOR(0 TO 2); M:OUT BUT_VECTOR (0 TO 2)); END ENTITY FUNC; ARCHITECTURE ART OF FUNC IS FUNCTION SAM(X,Y,Z:BIT) RETURN BIT IS BEGIN RETURN (X AND Y) OR Y; END FUNCTION SAM; BEGIN PROCESS(A) IS BEGIN M(0)=SAM (A(0),A(1),A(2)); M(1)=SAM (A(2),A(0),A(1)); M(2)=SAM (A(1),A(2),A(0)); END PROCESS; END ARCHITECTURE ART; PACKAGE packexp IS --定义程序包 FUNCTION max (a,b: IN BIT) RETURN BIT; END packexp; USE WORK.packexp.ALL; ENTITY p IS PORT(dat1,dat2,dat3,dat4: in bit; out1,out2: out bit); END p; ARCHITECTURE behav OF p IS BEGIN out1=max(dat1,dat2);--赋值语句中并行函数 PROCESS(dat3,dat4) BEGIN out2=max(dat3,dat4); --顺序函数调用语句 END PROCESS; END behav; 3.6.2 重载函数(OVERLOADED FUNCTION) 重载函数:VHDL允许以相同的函数名定义函数。 特点:分辨不同功能的同名函数,函数中定义的操 作数具有不同的数据类型。 LIBRARY IEEE; --程序包首 USE IEEE.STD_LOGIC_1164.ALL; USE IEEE STD_LOGIC_ARITH.ALL; PACKAGE STD_LOGIC_UNSIGNED IS FUNCTION “+”(L:STD_LOGIC_VECTOR;R:INTEGER) RETURN STD_LOGIC_VECTOR; FUNCTION “+”(L:INTEGER; R:STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR; FUNCTION “+”( L :STD_LOGIC_VECTOR;R:STD_LOGIC) RETURN STD_LOGIC _VECTOR; FUNCTION SHR(ARG:STD_LOGIC_VECTOR; COUNT:STD_LOGIC_VECTOR) RETURN STD_LOGIC_VECTOR; … END PACKAGE STD_LOGIC_UNSIGNED; LIBRARY IEEE; --程序包体

文档评论(0)

2226657222 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档