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

📄 idt723644.vhd

📁 VHDL的ram和fifo model code 包含众多的厂家
💻 VHD
📖 第 1 页 / 共 5 页
字号:
---------------------------------------------------------------------------------- File name : idt723644.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  | Anatoli Sokhatski | 98 OCT 06 | initial release--   V1.1  | R. Munden  | 02 MAY 19 | licensing changed to GPL----------------------------------------------------------------------------------- PART DESCRIPTION :---- Library:     FIFO-- Technology:  CMOS-- Part:        IDT723644---- Descripton:  SyncBiFIFO With Bus-Matching 1024x36x2--------------------------------------------------------------------------------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 IDT723644 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_BEFWFT   : VitalDelayType01 := VitalZeroDelay01;    tipd_BM       : 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_MRS1Neg  : VitalDelayType01 := VitalZeroDelay01;    tipd_MRS2Neg  : VitalDelayType01 := VitalZeroDelay01;    tipd_PRS1Neg  : VitalDelayType01 := VitalZeroDelay01;    tipd_PRS2Neg  : VitalDelayType01 := VitalZeroDelay01;    tipd_SIZE     : VitalDelayType01 := VitalZeroDelay01;    tipd_SPMNeg   : VitalDelayType01 := VitalZeroDelay01;    tipd_WRA      : VitalDelayType01 := VitalZeroDelay01;    tipd_WRB      : VitalDelayType01 := VitalZeroDelay01;        -- tpd delays: propagation delays    -- tA    tpd_CLKA_A0                             : VitalDelayType01 := UnitDelay01;    -- tWFF    tpd_CLKA_FFAIRA                         : VitalDelayType01 := UnitDelay01;    -- tREF    tpd_CLKA_EFAORA                         : VitalDelayType01 := UnitDelay01;    -- tPAE    tpd_CLKA_AEANeg                         : VitalDelayType01 := UnitDelay01;    -- tPAF    tpd_CLKA_AFANeg                         : VitalDelayType01 := UnitDelay01;    -- tPMF    tpd_CLKA_MBF1Neg                        : VitalDelayType01 := UnitDelay01;    -- tPMR    tpd_CLKA_B0                             : VitalDelayType01 := UnitDelay01;    -- tMDV    tpd_MBA_A0                              : VitalDelayType01 := UnitDelay01;    -- tRSF    tpd_MRS1Neg_AEBNeg                      : 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;    -- tENS    tsetup_CSANeg_CLKA                      : VitalDelayType := UnitDelay;    -- tRSTS    tsetup_MRS1Neg_CLKA                     : VitalDelayType := UnitDelay;    -- tFSS    tsetup_FS0SD_MRS1Neg                    : VitalDelayType := UnitDelay;    -- tBES    tsetup_BEFWFT_MRS1Neg                   : VitalDelayType := UnitDelay;    -- tSPMS    tsetup_SPMNeg_MRS1Neg                   : VitalDelayType := UnitDelay;    -- tSDS    tsetup_FS0SD_CLKA                       : VitalDelayType := UnitDelay;    -- tSENS    tsetup_FS1SEN_CLKA                      : VitalDelayType := UnitDelay;    -- tFWS    tsetup_BEFWFT_CLKA                      : VitalDelayType := UnitDelay;    -- thold values: hold times    -- tDH    thold_A0_CLKA                           : VitalDelayType := UnitDelay;    -- tENH    thold_CSANeg_CLKA                       : VitalDelayType := UnitDelay;    -- tRSTH    thold_MRS1Neg_CLKA                      : VitalDelayType := UnitDelay;    -- tFSH    thold_FS0SD_MRS1Neg                     : VitalDelayType := UnitDelay;    -- tBEH    thold_BEFWFT_MRS1Neg                    : VitalDelayType := UnitDelay;    -- tSPMH    thold_SPMNeg_MRS1Neg                    : VitalDelayType := UnitDelay;    -- tSDH    thold_FS0SD_CLKA                        : VitalDelayType := UnitDelay;    -- tSENH    thold_FS1SEN_CLKA                       : VitalDelayType := UnitDelay;    thold_FS1SEN_MRS1Neg                    : VitalDelayType := UnitDelay;    -- tskew values: skew times    tdevice_SKEW1        : VitalDelayType := UnitDelay;    -- Skew Time, between posedge CLKA and posedge CLKB for EFBNeg and FFANeg;    --		  between posedge CLKB and posedge CLKA for EFANeg and FFBIRB;    tdevice_SKEW2        : VitalDelayType := UnitDelay;    -- Skew Time, between posedge CLKA and posedge CLKB for AFBNeg and AFANeg;    --		  between posedge CLKB and posedge CLKA for AFANeg and AFBNeg;        -- 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; --------------------------------------    AEANeg   : OUT   std_logic := 'U'; -- Almost-Empty Flag for Port-A    AEBNeg   : OUT   std_logic := 'U'; -- Almost-Empty Flag for Port-B    AFANeg   : OUT   std_logic := 'U'; -- Almost-Full Flag for Port-A    AFBNeg   : OUT   std_logic := 'U'; -- Almost-Full Flag for Port-C    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; --------------------------------------    BEFWFT   : IN    std_logic := 'X';                         -- Big Endian / First Word Fall Through Select	    BM       : IN    std_logic := 'X'; -- Bus Match Select (Port-B)    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    EFAORA   : OUT   std_logic := 'U'; -- Port-A Empty / Output Ready Flag    EFBORB   : 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    FFAIRA   : OUT   std_logic := 'U'; -- Port-A Full / Input Ready Flag

⌨️ 快捷键说明

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