example8-7.vhd
来自「vhdl 实例 通过实例学习vhdl 编程」· VHDL 代码 · 共 31 行
VHD
31 行
LIBRARY IEEE;
USE IEEE.Std_Logic_1164.ALL;
PACKAGE pak IS
TYPE time_mode IS (minimum, typical, maximum);
TYPE rise_fall IS
RECORD
rise : TIME;
fall : TIME;
END RECORD;
TYPE time_rec IS ARRAY (minimum TO maximum) OF rise_fall;
FUNCTION calculate (nextstate : IN Std_Logic; mode : IN time_mode;
delaytab : IN time_rec) RETURN TIME;
END pak;
PACKAGE BODY pak IS
FUNCTION calculate (nextstate : IN Std_Logic; mode : IN time_mode;
delaytab : IN time_rec) RETURN TIME IS
BEGIN
CASE nextstate IS
WHEN '0' =>
RETURN delaytab (mode).fall;
WHEN '1' =>
RETURN delaytab (mode).rise;
WHEN OTHERS =>
IF (delaytab (mode).rise <= delaytab (mode).fall) THEN
RETURN delaytab (mode).rise;
ELSE
RETURN delaytab (mode).fall;
END IF;
END CASE;
END calculate;
END pak;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?