pad_ihp25_gen.vhd
来自「The GRLIB IP Library is an integrated se」· VHDL 代码 · 共 135 行
VHD
135 行
------------------------------------------------------------------------------ This file is a part of the GRLIB VHDL IP LIBRARY-- Copyright (C) 2004 GAISLER RESEARCH---- This program is free software; you can redistribute it and/or modify-- it under the terms of the GNU General Public License as published by-- the Free Software Foundation; either version 2 of the License, or-- (at your option) any later version.---- See the file COPYING for the full details of the license.-------------------------------------------------------------------------------- Package: pad_ihp25_gen-- File: pad_ihp25_gen.vhd-- Author: Marko Isomaki - Gaisler Research-- Description: IHP 0.25um pad wrappers --------------------------------------------------------------------------------Input Padlibrary ieee;library ihp25; use ieee.std_logic_1164.all; use ihp25.ihp25_components.all; entity ihp25_inpad is generic(level : integer := 0; voltage : integer := 0); port (pad : in std_logic; o : out std_logic);end; architecture rtl of ihp25_inpad isbegin i0 : inbuf3_16 port map (o, pad);end;-- Bidirectional padlibrary ieee;library ihp25;use ieee.std_logic_1164.all;use ihp25.ihp25_components.all; entity ihp25_iopad is generic (level : integer := 0; slew : integer := 0; voltage : integer := 0; strength : integer := 0); port (pad : inout std_logic; i, en : in std_logic; o : out std_logic);end;architecture rtl of ihp25_iopad isbegin d0 : if strength <= 4 generate i0 : iobuf3_16pu_4 port map (pad, o, i, en); end generate; d1 : if strength > 4 and strength <= 8 generate i0 : iobuf3_16pu_8 port map (pad, o, i, en); end generate; d2 : if strength > 8 generate i0 : iobuf3_16pu_12 port map (pad, o, i, en); end generate; end;--Output padlibrary ieee;library ihp25;use ieee.std_logic_1164.all;use ihp25.ihp25_components.all; entity ihp25_outpad is generic (level : integer := 0; slew : integer := 0; voltage : integer := 0; strength : integer := 0); port (pad : out std_logic; i : in std_logic);end; architecture rtl of ihp25_outpad issignal en, di, pad_io : std_logic;begin en <= '1'; pad <= pad_io; d0 : if strength <= 4 generate i0 : iobuf3_16_4 port map (pad_io, di, i, en); end generate; d1 : if strength > 4 and strength <= 8 generate i0 : iobuf3_16_8 port map (pad_io, di, i, en); end generate; d2 : if strength > 8 generate i0 : iobuf3_16_12 port map (pad_io, di, i, en); end generate; end;--Tristate output padlibrary ieee;library ihp25;use ieee.std_logic_1164.all;use ihp25.ihp25_components.all; entity ihp25_toutpad is generic (level : integer := 0; slew : integer := 0; voltage : integer := 0; strength : integer := 0); port (pad : out std_logic; i, en : in std_logic);end;architecture rtl of ihp25_toutpad issignal di, pad_io : std_logic;begin pad <= pad_io; d0 : if strength <= 4 generate i0 : iobuf3_16pu_4 port map (pad_io, di, i, en); end generate; d1 : if strength > 4 and strength <= 8 generate i0 : iobuf3_16pu_8 port map (pad_io, di, i, en); end generate; d2 : if strength > 8 generate i0 : iobuf3_16pu_12 port map (pad_io, di, i, en); end generate; end;--Clk Padlibrary ieee;use ieee.std_logic_1164.all; entity ihp25_clkpad is generic(level : integer := 0; voltage : integer := 0); port (pad : in std_logic; o : out std_logic);end; architecture rtl of ihp25_clkpad isbegin o <= pad; end;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?