打印

vhdl中怎样建一个子程序?

[复制链接]
2421|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zjland|  楼主 | 2007-7-30 10:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在vhdl中完成了
library ieee;
use ieee.std_logic_1164.all;

package max is 

    function max(a,b : in std_logic_vector)
        return std_logic_vector;

    function max(a,b : in bit_vector)
        return bit_vector;

    function max(a,b : in integer)
        return integer;
end;

package body max is
    function max(a,b : in std_logic_vector)
        return std_logic_vector is
    begin
        if a>b then return a;
        else         return b;
        end if;
    end max;

    function max(a,b : in integer)
        return integer is
    begin
        if a>b then return a;
        else         return b;
        end if;
    end max;

    function max(a,b : in bit_vector)
        return bit_vector is
    begin
        if a>b then return a;
        else         return b;
        end if;
    end max;
end;
但不晓得怎么用啊。它应该怎么保存啊?还是直接就在后面跟主程序了。

相关帖子

沙发
vfdff| | 2007-8-11 13:19 | 只看该作者

vhdl中 建一个子程序

只要在工程中添加这个文件,软件编译后的默认库是work
当需要是要哪个文件 在别的vhdl文件前面添加相应的说明即可

比如。说要使用max函数则
在别的vhdl文件前面添加:use work.max.all;即可
当需使用多个的时候,也可以直接用 use work.all;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

21

帖子

0

粉丝