⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pkg_xilinx.vhd

📁 使用IDELAY实现8倍过采样异步串行信号恢复信号
💻 VHD
📖 第 1 页 / 共 3 页
字号:
---------------------------------------------------------------------------------  Package:   PKG_XILINX.vhd---------------------------------------------------------------------------------**************************************************************************----     XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS"--     SOLELY FOR USE IN DEVELOPING PROGRAMS AND SOLUTIONS FOR--     XILINX DEVICES.  BY PROVIDING THIS DESIGN, CODE, OR INFORMATION--     AS ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE, APPLICATION--     OR STANDARD, XILINX IS MAKING NO REPRESENTATION THAT THIS--     IMPLEMENTATION IS FREE FROM ANY CLAIMS OF INFRINGEMENT,--     AND YOU ARE RESPONSIBLE FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE--     FOR YOUR IMPLEMENTATION.  XILINX EXPRESSLY DISCLAIMS ANY--     WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE--     IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR--     REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF--     INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS--     FOR A PARTICULAR PURPOSE.----     (c) Copyright 2004 Xilinx, Inc.--     All rights reserved.----**************************************************************************--------------------------------------------------------------------------------- Filename: PKG_XILINX.vhd---- Description:----  This package contains components that are commonly used in VHDL Design--  Use this package in place of std_logic_unsigned and std_logic_signed.--  This package should be used together with IEEE's numberic_std package.---- Design Notes:-- 1.-- 2.-- 3.--------------------------------------------------------------------------------- Owners:         Jerry Chuang-- Revision:       2.0----     Modification History:--     Date     Init          Description--   ---------  ------ ----------------------------------------------------------   11/13/2004   JC      Initial Release---------------------------------------------------------------------------------library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.NUMERIC_STD.ALL;--use work.PKG_XILINX.all;package PKG_XILINX is    --------------------------------------------------    --      SUBTYPES    --------------------------------------------------    type lv2_array  is array( natural range <> ) of std_logic_vector( 1 downto 0);    type lv3_array  is array( natural range <> ) of std_logic_vector( 2 downto 0);    type lv4_array  is array( natural range <> ) of std_logic_vector( 3 downto 0);    type lv5_array  is array( natural range <> ) of std_logic_vector( 4 downto 0);    type lv6_array  is array( natural range <> ) of std_logic_vector( 5 downto 0);    type lv7_array  is array( natural range <> ) of std_logic_vector( 6 downto 0);    type lv8_array  is array( natural range <> ) of std_logic_vector( 7 downto 0);    type lv9_array  is array( natural range <> ) of std_logic_vector( 8 downto 0);    type lv10_array is array( natural range <> ) of std_logic_vector( 9 downto 0);    type lv11_array is array( natural range <> ) of std_logic_vector(10 downto 0);    type lv12_array is array( natural range <> ) of std_logic_vector(11 downto 0);    type lv13_array is array( natural range <> ) of std_logic_vector(12 downto 0);    type lv14_array is array( natural range <> ) of std_logic_vector(13 downto 0);    type lv15_array is array( natural range <> ) of std_logic_vector(14 downto 0);    type lv16_array is array( natural range <> ) of std_logic_vector(15 downto 0);    type lv17_array is array( natural range <> ) of std_logic_vector(16 downto 0);    type lv18_array is array( natural range <> ) of std_logic_vector(17 downto 0);    type lv19_array is array( natural range <> ) of std_logic_vector(18 downto 0);    type lv20_array is array( natural range <> ) of std_logic_vector(19 downto 0);    type lv21_array is array( natural range <> ) of std_logic_vector(20 downto 0);    type lv22_array is array( natural range <> ) of std_logic_vector(21 downto 0);    type lv23_array is array( natural range <> ) of std_logic_vector(22 downto 0);    type lv24_array is array( natural range <> ) of std_logic_vector(23 downto 0);    type lv25_array is array( natural range <> ) of std_logic_vector(24 downto 0);    type lv26_array is array( natural range <> ) of std_logic_vector(25 downto 0);    type lv27_array is array( natural range <> ) of std_logic_vector(26 downto 0);    type lv28_array is array( natural range <> ) of std_logic_vector(27 downto 0);    type lv29_array is array( natural range <> ) of std_logic_vector(28 downto 0);    type lv30_array is array( natural range <> ) of std_logic_vector(29 downto 0);    type lv31_array is array( natural range <> ) of std_logic_vector(30 downto 0);    type lv32_array is array( natural range <> ) of std_logic_vector(31 downto 0);    type lv33_array is array( natural range <> ) of std_logic_vector(32 downto 0);    type lv34_array is array( natural range <> ) of std_logic_vector(33 downto 0);    type lv35_array is array( natural range <> ) of std_logic_vector(34 downto 0);    type lv36_array is array( natural range <> ) of std_logic_vector(35 downto 0);    type lv37_array is array( natural range <> ) of std_logic_vector(36 downto 0);    type lv38_array is array( natural range <> ) of std_logic_vector(37 downto 0);    type lv39_array is array( natural range <> ) of std_logic_vector(38 downto 0);    type lv40_array is array( natural range <> ) of std_logic_vector(39 downto 0);    type lv41_array is array( natural range <> ) of std_logic_vector(40 downto 0);    type lv42_array is array( natural range <> ) of std_logic_vector(41 downto 0);    type lv43_array is array( natural range <> ) of std_logic_vector(42 downto 0);    type lv44_array is array( natural range <> ) of std_logic_vector(43 downto 0);    type lv45_array is array( natural range <> ) of std_logic_vector(44 downto 0);    type lv80_array is array( natural range <> ) of std_logic_vector(79 downto 0);    type un2_array  is array( natural range <> ) of unsigned( 1 downto 0);    type un3_array  is array( natural range <> ) of unsigned( 2 downto 0);    type un4_array  is array( natural range <> ) of unsigned( 3 downto 0);    type un5_array  is array( natural range <> ) of unsigned( 4 downto 0);    type un6_array  is array( natural range <> ) of unsigned( 5 downto 0);    type un7_array  is array( natural range <> ) of unsigned( 6 downto 0);    type un8_array  is array( natural range <> ) of unsigned( 7 downto 0);    type un9_array  is array( natural range <> ) of unsigned( 8 downto 0);    type un10_array is array( natural range <> ) of unsigned( 9 downto 0);    type un11_array is array( natural range <> ) of unsigned(10 downto 0);    type un12_array is array( natural range <> ) of unsigned(11 downto 0);    type un13_array is array( natural range <> ) of unsigned(12 downto 0);    type un14_array is array( natural range <> ) of unsigned(13 downto 0);    type un15_array is array( natural range <> ) of unsigned(14 downto 0);    type un16_array is array( natural range <> ) of unsigned(15 downto 0);    type un17_array is array( natural range <> ) of unsigned(16 downto 0);    type un18_array is array( natural range <> ) of unsigned(17 downto 0);    type un19_array is array( natural range <> ) of unsigned(18 downto 0);    type un20_array is array( natural range <> ) of unsigned(19 downto 0);    type un21_array is array( natural range <> ) of unsigned(20 downto 0);    type un22_array is array( natural range <> ) of unsigned(21 downto 0);    type un23_array is array( natural range <> ) of unsigned(22 downto 0);    type un24_array is array( natural range <> ) of unsigned(23 downto 0);    type un25_array is array( natural range <> ) of unsigned(24 downto 0);    type un26_array is array( natural range <> ) of unsigned(25 downto 0);    type un27_array is array( natural range <> ) of unsigned(26 downto 0);    type un28_array is array( natural range <> ) of unsigned(27 downto 0);    type un29_array is array( natural range <> ) of unsigned(28 downto 0);    type un30_array is array( natural range <> ) of unsigned(29 downto 0);    type un31_array is array( natural range <> ) of unsigned(30 downto 0);    type un32_array is array( natural range <> ) of unsigned(31 downto 0);    type un33_array is array( natural range <> ) of unsigned(32 downto 0);    type un34_array is array( natural range <> ) of unsigned(33 downto 0);    type un35_array is array( natural range <> ) of unsigned(34 downto 0);    type un36_array is array( natural range <> ) of unsigned(35 downto 0);    type un37_array is array( natural range <> ) of unsigned(36 downto 0);    type un38_array is array( natural range <> ) of unsigned(37 downto 0);    type un39_array is array( natural range <> ) of unsigned(38 downto 0);    type un40_array is array( natural range <> ) of unsigned(39 downto 0);    type un80_array is array( natural range <> ) of unsigned(79 downto 0);    type sn2_array  is array( natural range <> ) of signed( 1 downto 0);    type sn3_array  is array( natural range <> ) of signed( 2 downto 0);    type sn4_array  is array( natural range <> ) of signed( 3 downto 0);    type sn5_array  is array( natural range <> ) of signed( 4 downto 0);    type sn6_array  is array( natural range <> ) of signed( 5 downto 0);    type sn7_array  is array( natural range <> ) of signed( 6 downto 0);    type sn8_array  is array( natural range <> ) of signed( 7 downto 0);    type sn9_array  is array( natural range <> ) of signed( 8 downto 0);    type sn10_array is array( natural range <> ) of signed( 9 downto 0);    type sn11_array is array( natural range <> ) of signed(10 downto 0);    type sn12_array is array( natural range <> ) of signed(11 downto 0);    type sn13_array is array( natural range <> ) of signed(12 downto 0);    type sn14_array is array( natural range <> ) of signed(13 downto 0);    type sn15_array is array( natural range <> ) of signed(14 downto 0);    type sn16_array is array( natural range <> ) of signed(15 downto 0);    type sn17_array is array( natural range <> ) of signed(16 downto 0);    type sn18_array is array( natural range <> ) of signed(17 downto 0);    type sn19_array is array( natural range <> ) of signed(18 downto 0);    type sn20_array is array( natural range <> ) of signed(19 downto 0);    type sn21_array is array( natural range <> ) of signed(20 downto 0);    type sn22_array is array( natural range <> ) of signed(21 downto 0);    type sn23_array is array( natural range <> ) of signed(22 downto 0);    type sn24_array is array( natural range <> ) of signed(23 downto 0);    type sn25_array is array( natural range <> ) of signed(24 downto 0);    type sn26_array is array( natural range <> ) of signed(25 downto 0);    type sn27_array is array( natural range <> ) of signed(26 downto 0);    type sn28_array is array( natural range <> ) of signed(27 downto 0);    type sn29_array is array( natural range <> ) of signed(28 downto 0);    type sn30_array is array( natural range <> ) of signed(29 downto 0);    type sn31_array is array( natural range <> ) of signed(30 downto 0);    type sn32_array is array( natural range <> ) of signed(31 downto 0);    type sn33_array is array( natural range <> ) of signed(32 downto 0);    type sn34_array is array( natural range <> ) of signed(33 downto 0);    type sn35_array is array( natural range <> ) of signed(34 downto 0);    type sn36_array is array( natural range <> ) of signed(35 downto 0);    type sn37_array is array( natural range <> ) of signed(36 downto 0);    type sn38_array is array( natural range <> ) of signed(37 downto 0);    type sn39_array is array( natural range <> ) of signed(38 downto 0);    type sn40_array is array( natural range <> ) of signed(39 downto 0);    type sn80_array is array( natural range <> ) of signed(79 downto 0);    type char_array is array( natural range <> ) of character;    type int_array  is array (natural range <> ) of integer;    --  3D    --    type lv16_8_array is array (natural range <>) of lv16_array(7 downto 0);    type lv16_4_array is array (natural range <>) of lv16_array(3 downto 0);    type lv16_matrix is array(natural range <>, natural range <>) of std_logic_vector(15 downto 0);    type lv8_matrix is array(natural range <>, natural range <>) of std_logic_vector(7 downto 0);    type int_matrix is array (natural range <>, natural range <>) of integer;    type sn8_matrix is array(natural range <>, natural range <>) of signed(7 downto 0);    type time_array is array (natural range <> ) of time;    --------------------------------------------------    --      FUNCTIONS    --------------------------------------------------    ---------------------------------------------------------------------------    --  Type Conversions    --    -- convert an integer into a std_logic_vector    function int_to_lv (inp, width, arith : integer)        return std_logic_vector;    -- Convert std_logic or std_logic_vector to an integer    function lv_to_int (inp : std_logic_vector; arith : integer)        return integer;    -- Convert real to unsigned    function real_to_un( r : real; INT_W : integer; DEC_W : integer ) return unsigned;    -- String Operations    --    function int_to_h_1( inp : integer range 0 to 15 ) return string;    function lv_to_h_1( inp : std_logic_vector(3 downto 0) ) return string;    function lv_to_h(inp : std_logic_vector; N_CHAR : integer) return string;    function int_to_h( inp : integer range 0 to 9999; N_CHAR : integer ) return string;    function int_to_a_1 ( inp : integer range 0 to 9) return string;    function int_to_a ( inp : integer range -9999 to 9999 ) return string;    ------------------------------------------------    --  Other Functions    -- Find the max & min integer.    function max(L, R: INTEGER) return INTEGER;    function min(L, R: INTEGER) return INTEGER;    -- same as max and min, except this operates on std_logic_vectors    function max_lv(L, R: std_logic_vector) return std_logic_vector;    function min_lv(L, R: std_logic_vector) return std_logic_vector;    -- arithmic function for counter increment and decrement    --      these overloaded operators only work with unsigned numbers    function "+" (L : std_logic_vector; R : integer) return std_logic_vector;    function "-" (L : std_logic_vector; R : integer) return std_logic_vector;    function "=" (L : std_logic_vector; R : integer) return boolean;    function "+" (L : std_logic_vector; R : std_logic_vector) return std_logic_vector;    function add_wrap( inpA, inpB, ceiling : integer ) return integer;    function add_wrap( inpA : std_logic_vector; inpB, ceiling : integer ) return std_logic_vector;    function sub_wrap( inpA, inpB, ceiling : integer ) return integer;    --  Bus Fucntion    function busInv( din : std_logic_vector; inv : std_logic ) return std_logic_vector;    function bitToBus( din : std_logic; width : integer ) return std_logic_vector;    -- RLOC Operations    --    function GET_RLOC( x : integer; y : integer; orig_x : integer := 0; orig_y : integer := 0 ) return string;    function Get_RLOC32 ( inp   : integer; orig_x : integer := 0; orig_y : integer := 0 )   return string;    function Get_RLOC16 ( inp   : integer; orig_x : integer := 0; orig_y : integer := 0 )   return string;    function Get_RLOC8  ( inp   : integer; orig_x : integer := 0; orig_y : integer := 0 )   return string;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -