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

📄 idt723651.vhd

📁 VHDL的ram和fifo model code 包含众多的厂家
💻 VHD
📖 第 1 页 / 共 5 页
字号:
---------------------------------------------------------------------------------- File name : idt723651.vhd----------------------------------------------------------------------------------  Copyright (C) 1998 Integrated Device Technology; http://www.idt.com/--  Developed by SEVA Technologies Inc. (Moscow branch) under contract to IDT--  and supported by Free Model Foundry; http://www.FreeModelFoundry.com----  This program is free software; you can redistribute it and/or modify--  it under the terms of the GNU General Public License version 2 as--  published by the Free Software Foundation.----  This VHDL model is provided on an "AS IS" basis and IDT makes absolutely no--  warranty with respect to the information contained herein. IDT DISCLAIMS--  AND CUSTOMER WAIVES ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING--  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE--  ENTIRE RISK AS TO QUALITY AND PERFORMANCE IS WITH THE USER ACCORDINGLY, IN--  NO EVENT SHALL IDT BE LIABLE FOR ANY DIRECT OR INDIRECT DAMAGES, WHETHER IN--  CONTRACT OR TORT, INCLUDING ANY LOST PROFITS OR OTHER INCIDENTAL,--  CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES ARISING OUT OF THE USE OR--  APPLICATION OF THE VHDL model. Further, IDT reserves the right to make--  changes without notice to any product herein to improve reliability,--  function, or design.  IDT does not convey any license under patent rights--  or any other intellectual property rights, including those of third parties.--  IDT is not obligated to provide maintenance or support for the licensed VHDL--  model.---- MODIFICATION HISTORY :----  version: |  author:     | mod date: | changes made:--   V1.0    A. Poliakov      98 APR 30   initial release--   V1.1    Ilya Shenfinkel  99 MAR 15   corrected FIFO1_Read_Data process--   V1.2  | R. Munden  | 02 MAY 19 | licensing changed to GPL----------------------------------------------------------------------------------- PART DESCRIPTION :---- Library:     FIFO-- Technology:  CMOS-- Part:        IDT723651---- Descripton:  SyncFIFO  2048x36--------------------------------------------------------------------------------LIBRARY ieee;   USE ieee.std_logic_1164.ALL;                USE ieee.vital_primitives.ALL;                USE ieee.vital_timing.ALL;LIBRARY fmf;    USE fmf.ff_package.ALL;                USE fmf.gen_utils.ALL;                USE fmf.conversions.to_nat;                USE fmf.conversions.to_slv;---------------------------------------------------------------------------------- ENTITY DECLARATION                                                         ----------------------------------------------------------------------------------ENTITY IDT723651 IS  GENERIC (    ----------------------------------------------------------------------------    -- VITAL generics    ----------------------------------------------------------------------------    -- tipd delays: interconnect path delays    --              (there must be one generic for each input pin)    tipd_A0       : VitalDelayType01 := VitalZeroDelay01;    tipd_A1       : VitalDelayType01 := VitalZeroDelay01;    tipd_A2       : VitalDelayType01 := VitalZeroDelay01;    tipd_A3       : VitalDelayType01 := VitalZeroDelay01;    tipd_A4       : VitalDelayType01 := VitalZeroDelay01;    tipd_A5       : VitalDelayType01 := VitalZeroDelay01;    tipd_A6       : VitalDelayType01 := VitalZeroDelay01;    tipd_A7       : VitalDelayType01 := VitalZeroDelay01;    tipd_A8       : VitalDelayType01 := VitalZeroDelay01;    tipd_A9       : VitalDelayType01 := VitalZeroDelay01;    tipd_A10      : VitalDelayType01 := VitalZeroDelay01;    tipd_A11      : VitalDelayType01 := VitalZeroDelay01;    tipd_A12      : VitalDelayType01 := VitalZeroDelay01;    tipd_A13      : VitalDelayType01 := VitalZeroDelay01;    tipd_A14      : VitalDelayType01 := VitalZeroDelay01;    tipd_A15      : VitalDelayType01 := VitalZeroDelay01;    tipd_A16      : VitalDelayType01 := VitalZeroDelay01;    tipd_A17      : VitalDelayType01 := VitalZeroDelay01;    tipd_A18      : VitalDelayType01 := VitalZeroDelay01;    tipd_A19      : VitalDelayType01 := VitalZeroDelay01;    tipd_A20      : VitalDelayType01 := VitalZeroDelay01;    tipd_A21      : VitalDelayType01 := VitalZeroDelay01;    tipd_A22      : VitalDelayType01 := VitalZeroDelay01;    tipd_A23      : VitalDelayType01 := VitalZeroDelay01;    tipd_A24      : VitalDelayType01 := VitalZeroDelay01;    tipd_A25      : VitalDelayType01 := VitalZeroDelay01;    tipd_A26      : VitalDelayType01 := VitalZeroDelay01;    tipd_A27      : VitalDelayType01 := VitalZeroDelay01;    tipd_A28      : VitalDelayType01 := VitalZeroDelay01;    tipd_A29      : VitalDelayType01 := VitalZeroDelay01;    tipd_A30      : VitalDelayType01 := VitalZeroDelay01;    tipd_A31      : VitalDelayType01 := VitalZeroDelay01;    tipd_A32      : VitalDelayType01 := VitalZeroDelay01;    tipd_A33      : VitalDelayType01 := VitalZeroDelay01;    tipd_A34      : VitalDelayType01 := VitalZeroDelay01;    tipd_A35      : VitalDelayType01 := VitalZeroDelay01;    tipd_B0       : VitalDelayType01 := VitalZeroDelay01;    tipd_B1       : VitalDelayType01 := VitalZeroDelay01;    tipd_B2       : VitalDelayType01 := VitalZeroDelay01;    tipd_B3       : VitalDelayType01 := VitalZeroDelay01;    tipd_B4       : VitalDelayType01 := VitalZeroDelay01;    tipd_B5       : VitalDelayType01 := VitalZeroDelay01;    tipd_B6       : VitalDelayType01 := VitalZeroDelay01;    tipd_B7       : VitalDelayType01 := VitalZeroDelay01;    tipd_B8       : VitalDelayType01 := VitalZeroDelay01;    tipd_B9       : VitalDelayType01 := VitalZeroDelay01;    tipd_B10      : VitalDelayType01 := VitalZeroDelay01;    tipd_B11      : VitalDelayType01 := VitalZeroDelay01;    tipd_B12      : VitalDelayType01 := VitalZeroDelay01;    tipd_B13      : VitalDelayType01 := VitalZeroDelay01;    tipd_B14      : VitalDelayType01 := VitalZeroDelay01;    tipd_B15      : VitalDelayType01 := VitalZeroDelay01;    tipd_B16      : VitalDelayType01 := VitalZeroDelay01;    tipd_B17      : VitalDelayType01 := VitalZeroDelay01;    tipd_B18      : VitalDelayType01 := VitalZeroDelay01;    tipd_B19      : VitalDelayType01 := VitalZeroDelay01;    tipd_B20      : VitalDelayType01 := VitalZeroDelay01;    tipd_B21      : VitalDelayType01 := VitalZeroDelay01;    tipd_B22      : VitalDelayType01 := VitalZeroDelay01;    tipd_B23      : VitalDelayType01 := VitalZeroDelay01;    tipd_B24      : VitalDelayType01 := VitalZeroDelay01;    tipd_B25      : VitalDelayType01 := VitalZeroDelay01;    tipd_B26      : VitalDelayType01 := VitalZeroDelay01;    tipd_B27      : VitalDelayType01 := VitalZeroDelay01;    tipd_B28      : VitalDelayType01 := VitalZeroDelay01;    tipd_B29      : VitalDelayType01 := VitalZeroDelay01;    tipd_B30      : VitalDelayType01 := VitalZeroDelay01;    tipd_B31      : VitalDelayType01 := VitalZeroDelay01;    tipd_B32      : VitalDelayType01 := VitalZeroDelay01;    tipd_B33      : VitalDelayType01 := VitalZeroDelay01;    tipd_B34      : VitalDelayType01 := VitalZeroDelay01;    tipd_B35      : VitalDelayType01 := VitalZeroDelay01;      tipd_CLKA     : VitalDelayType01 := VitalZeroDelay01;    tipd_CLKB     : VitalDelayType01 := VitalZeroDelay01;    tipd_CSANeg   : VitalDelayType01 := VitalZeroDelay01;    tipd_CSBNeg   : VitalDelayType01 := VitalZeroDelay01;    tipd_ENA      : VitalDelayType01 := VitalZeroDelay01;    tipd_ENB      : VitalDelayType01 := VitalZeroDelay01;    tipd_FS0SD    : VitalDelayType01 := VitalZeroDelay01;    tipd_FS1SEN   : VitalDelayType01 := VitalZeroDelay01;    tipd_MBA      : VitalDelayType01 := VitalZeroDelay01;    tipd_MBB      : VitalDelayType01 := VitalZeroDelay01;      tipd_RSTNeg  : VitalDelayType01 := VitalZeroDelay01;    tipd_RTM      : VitalDelayType01 := VitalZeroDelay01;    tipd_RFM      : VitalDelayType01 := VitalZeroDelay01;    tipd_WRA      : VitalDelayType01 := VitalZeroDelay01;    tipd_WRB      : VitalDelayType01 := VitalZeroDelay01;          ------------------------------------------------------------     -- tpd delays: propagation delays    -- tA    tpd_CLKB_B0                 : VitalDelayType01 := UnitDelay01;    -- tPIR    tpd_CLKA_IR                 : VitalDelayType01 := UnitDelay01;    -- tPOR    tpd_CLKB_ORB                : VitalDelayType01 := UnitDelay01;    -- tPAE    tpd_CLKB_AENeg              : VitalDelayType01 := UnitDelay01;    -- tPAF    tpd_CLKA_AFNeg              : VitalDelayType01 := UnitDelay01;    -- tPMF    tpd_CLKA_MBF1Neg            : VitalDelayType01 := UnitDelay01;    -- tPMR    tpd_CLKA_B0                 : VitalDelayType01 := UnitDelay01;    -- tMDV    tpd_MBB_B0                  : VitalDelayType01 := UnitDelay01;    -- tRSF    tpd_RSTNeg_AENeg            : VitalDelayType01 := UnitDelay01;    -- tEN/tDIS    tpd_CSANeg_A0               : VitalDelayType01Z := UnitDelay01Z;    -- tpw values: pulse widths    -- tCLK    tperiod_CLKA_posedge        : VitalDelayType := UnitDelay;    -- tCLKH    -- tCLKL    tpw_CLKA_posedge            : VitalDelayType := UnitDelay;    tpw_CLKA_negedge            : VitalDelayType := UnitDelay;    -- tsetup values: setup times    -- tDS    tsetup_A0_CLKA           : VitalDelayType := UnitDelay;        -- tENS1    tsetup_ENA_CLKA          : VitalDelayType := UnitDelay;        -- tENS2    tsetup_CSANeg_CLKA       : VitalDelayType := UnitDelay;      -- tRMS    tsetup_RTM_CLKB          : VitalDelayType := UnitDelay;        -- tRSTS    tsetup_RSTNeg_CLKA       : VitalDelayType := UnitDelay;        -- tFSS    tsetup_FS0SD_RSTNeg      : VitalDelayType := UnitDelay;        -- tSDS    tsetup_FS0SD_CLKA        : VitalDelayType := UnitDelay;        -- tSENS    tsetup_FS1SEN_CLKA       : VitalDelayType := UnitDelay;    -- thold values: hold times    -- tDH    thold_A0_CLKA            : VitalDelayType := UnitDelay;        -- tENH1    thold_ENA_CLKA           : VitalDelayType := UnitDelay;    -- tENH2    thold_CSANeg_CLKA        : VitalDelayType := UnitDelay;     -- tRMH    thold_RTM_CLKB           : VitalDelayType := UnitDelay;    -- tRSTH    thold_RSTNeg_CLKA        : VitalDelayType := UnitDelay;    -- tFSH    thold_FS0SD_RSTNeg       : VitalDelayType := UnitDelay;    -- tSDH    thold_FS0SD_CLKA   : VitalDelayType := UnitDelay;    -- tSENH    thold_FS1SEN_CLKA   : VitalDelayType := UnitDelay;        -- tskew values: skew times    tdevice_SKEW1        : VitalDelayType := UnitDelay;    -- Skew Time, between posedge CLKA and posedge CLKB for ORB and IR;    --		      tdevice_SKEW2        : VitalDelayType := UnitDelay;    -- Skew Time, between posedge CLKA and posedge CLKB for AFNeg and AENeg;    --		      -- generic control parameters    InstancePath   : STRING  := DefaultInstancePath;    TimingChecksOn : BOOLEAN := DefaultTimingChecks;    MsgOn          : BOOLEAN := DefaultMsgOn;    XOn            : BOOLEAN := DefaultXOn;    TimingModel    : STRING  := DefaultTimingModel          );  PORT (    A0       : INOUT std_logic; -----------------------------    A1       : INOUT std_logic; --    A2       : INOUT std_logic; --    A3       : INOUT std_logic; --    A4       : INOUT std_logic; --    A5       : INOUT std_logic; --    A6       : INOUT std_logic; --    A7       : INOUT std_logic; --    A8       : INOUT std_logic; --    A9       : INOUT std_logic; --    A10      : INOUT std_logic; --    A11      : INOUT std_logic; --    A12      : INOUT std_logic; --    A13      : INOUT std_logic; --    A14      : INOUT std_logic; --    A15      : INOUT std_logic; --    A16      : INOUT std_logic; --    A17      : INOUT std_logic; --    A18      : INOUT std_logic; -- 36 pin bidirectional Port-A data bus    A19      : INOUT std_logic; --    A20      : INOUT std_logic; --    A21      : INOUT std_logic; --    A22      : INOUT std_logic; --    A23      : INOUT std_logic; --    A24      : INOUT std_logic; --    A25      : INOUT std_logic; --    A26      : INOUT std_logic; --    A27      : INOUT std_logic; --    A28      : INOUT std_logic; --    A29      : INOUT std_logic; --    A30      : INOUT std_logic; --    A31      : INOUT std_logic; --    A32      : INOUT std_logic; --    A33      : INOUT std_logic; --    A34      : INOUT std_logic; --    A35      : INOUT std_logic; --------------------------------------    AENeg   : OUT   std_logic := 'U'; -- Almost-Empty Flag for Port-B    AFNeg   : OUT   std_logic := 'U'; -- Almost-Full Flag for Port-A    B0       : INOUT std_logic; -----------------------------    B1       : INOUT std_logic; --    B2       : INOUT std_logic; --    B3       : INOUT std_logic; --    B4       : INOUT std_logic; --    B5       : INOUT std_logic; --    B6       : INOUT std_logic; --    B7       : INOUT std_logic; --    B8       : INOUT std_logic; --    B9       : INOUT std_logic; --    B10      : INOUT std_logic; --    B11      : INOUT std_logic; --    B12      : INOUT std_logic; --    B13      : INOUT std_logic; --    B14      : INOUT std_logic; --    B15      : INOUT std_logic; --    B16      : INOUT std_logic; --    B17      : INOUT std_logic; --    B18      : INOUT std_logic; -- 36 pin bidirectional Port-B data bus    B19      : INOUT std_logic; --    B20      : INOUT std_logic; --    B21      : INOUT std_logic; --    B22      : INOUT std_logic; --    B23      : INOUT std_logic; --    B24      : INOUT std_logic; --    B25      : INOUT std_logic; --    B26      : INOUT std_logic; --    B27      : INOUT std_logic; --    B28      : INOUT std_logic; --    B29      : INOUT std_logic; --    B30      : INOUT std_logic; --    B31      : INOUT std_logic; --    B32      : INOUT std_logic; --    B33      : INOUT std_logic; --    B34      : INOUT std_logic; --    B35      : INOUT std_logic; --------------------------------------    CLKA     : IN    std_logic := 'X'; -- Port-A clock    CLKB     : IN    std_logic := 'X'; -- Port-B clock    CSANeg   : IN    std_logic := 'X'; -- Port-A Chip Select    CSBNeg   : IN    std_logic := 'X'; -- Port-B Chip Select    ORB   : OUT   std_logic := 'U'; -- Port-B Empty / Output Ready Flag    ENA      : IN    std_logic := 'X'; -- Port-A Enable    ENB      : IN    std_logic := 'X'; -- Port-B Enable    IR   : OUT   std_logic := 'U'; -- Port-A Full / Input Ready Flag    FS0SD    : IN    std_logic := 'X'; -- Flag Offset Select 0 / Serial Data     FS1SEN   : IN    std_logic := 'X'; -- Flag Offset Select 1 / Serial Enable    MBA      : IN    std_logic := 'X'; -- Port-A Mailbox Select    MBB      : IN    std_logic := 'X'; -- Port-B Mailbox Select    MBF1Neg  : OUT   std_logic := 'U'; -- Mail1 Register Flag    MBF2Neg  : OUT   std_logic := 'U'; -- Mail2 Register Flag    RSTNeg  : IN    std_logic := 'X'; --  Reset    RFM      : IN    std_logic := 'X'; -- Read From Mark    RTM      : IN    std_logic := 'X'; -- Retransmit Mode    WRA      : IN    std_logic := 'X'; -- Port-A Write/Read Select    WRB      : IN    std_logic := 'X'  -- Port-B Write/Read Select     );       ATTRIBUTE vital_level0 OF IDT723651 : ENTITY IS True;END IDT723651;

⌨️ 快捷键说明

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