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

📄 idt71v546.vhd

📁 vhdl cod for ram.For sp3e
💻 VHD
📖 第 1 页 / 共 5 页
字号:
    BEGIN    ----------------------------------------------------------------------------    -- Wire Delays    ----------------------------------------------------------------------------    WireDelay : BLOCK    BEGIN        w_1 : VitalWireDelay (A0_ipd, A0, tipd_A0);        w_2 : VitalWireDelay (A1_ipd, A1, tipd_A1);        w_3 : VitalWireDelay (A2_ipd, A2, tipd_A2);        w_4 : VitalWireDelay (A3_ipd, A3, tipd_A3);        w_5 : VitalWireDelay (A4_ipd, A4, tipd_A4);        w_6 : VitalWireDelay (A5_ipd, A5, tipd_A5);        w_7 : VitalWireDelay (A6_ipd, A6, tipd_A6);        w_8 : VitalWireDelay (A7_ipd, A7, tipd_A7);        w_9 : VitalWireDelay (A8_ipd, A8, tipd_A8);        w_10 : VitalWireDelay (A9_ipd, A9, tipd_A9);        w_11 : VitalWireDelay (A10_ipd, A10, tipd_A10);        w_12 : VitalWireDelay (A11_ipd, A11, tipd_A11);        w_13 : VitalWireDelay (A12_ipd, A12, tipd_A12);        w_14 : VitalWireDelay (A13_ipd, A13, tipd_A13);        w_15 : VitalWireDelay (A14_ipd, A14, tipd_A14);        w_16 : VitalWireDelay (A15_ipd, A15, tipd_A15);        w_17 : VitalWireDelay (A16_ipd, A16, tipd_A16);        w_21 : VitalWireDelay (DQA0_ipd, DQA0, tipd_DQA0);        w_22 : VitalWireDelay (DQA1_ipd, DQA1, tipd_DQA1);        w_23 : VitalWireDelay (DQA2_ipd, DQA2, tipd_DQA2);        w_24 : VitalWireDelay (DQA3_ipd, DQA3, tipd_DQA3);        w_25 : VitalWireDelay (DQA4_ipd, DQA4, tipd_DQA4);        w_26 : VitalWireDelay (DQA5_ipd, DQA5, tipd_DQA5);        w_27 : VitalWireDelay (DQA6_ipd, DQA6, tipd_DQA6);        w_28 : VitalWireDelay (DQA7_ipd, DQA7, tipd_DQA7);        w_29 : VitalWireDelay (DQA8_ipd, DQA8, tipd_DQA8);        w_31 : VitalWireDelay (DQB0_ipd, DQB0, tipd_DQB0);        w_32 : VitalWireDelay (DQB1_ipd, DQB1, tipd_DQB1);        w_33 : VitalWireDelay (DQB2_ipd, DQB2, tipd_DQB2);        w_34 : VitalWireDelay (DQB3_ipd, DQB3, tipd_DQB3);        w_35 : VitalWireDelay (DQB4_ipd, DQB4, tipd_DQB4);        w_36 : VitalWireDelay (DQB5_ipd, DQB5, tipd_DQB5);        w_37 : VitalWireDelay (DQB6_ipd, DQB6, tipd_DQB6);        w_38 : VitalWireDelay (DQB7_ipd, DQB7, tipd_DQB7);        w_39 : VitalWireDelay (DQB8_ipd, DQB8, tipd_DQB8);        w_41 : VitalWireDelay (DQC0_ipd, DQC0, tipd_DQC0);        w_42 : VitalWireDelay (DQC1_ipd, DQC1, tipd_DQC1);        w_43 : VitalWireDelay (DQC2_ipd, DQC2, tipd_DQC2);        w_44 : VitalWireDelay (DQC3_ipd, DQC3, tipd_DQC3);        w_45 : VitalWireDelay (DQC4_ipd, DQC4, tipd_DQC4);        w_46 : VitalWireDelay (DQC5_ipd, DQC5, tipd_DQC5);        w_47 : VitalWireDelay (DQC6_ipd, DQC6, tipd_DQC6);        w_48 : VitalWireDelay (DQC7_ipd, DQC7, tipd_DQC7);        w_49 : VitalWireDelay (DQC8_ipd, DQC8, tipd_DQC8);        w_51 : VitalWireDelay (DQD0_ipd, DQD0, tipd_DQD0);        w_52 : VitalWireDelay (DQD1_ipd, DQD1, tipd_DQD1);        w_53 : VitalWireDelay (DQD2_ipd, DQD2, tipd_DQD2);        w_54 : VitalWireDelay (DQD3_ipd, DQD3, tipd_DQD3);        w_55 : VitalWireDelay (DQD4_ipd, DQD4, tipd_DQD4);        w_56 : VitalWireDelay (DQD5_ipd, DQD5, tipd_DQD5);        w_57 : VitalWireDelay (DQD6_ipd, DQD6, tipd_DQD6);        w_58 : VitalWireDelay (DQD7_ipd, DQD7, tipd_DQD7);        w_59 : VitalWireDelay (DQD8_ipd, DQD8, tipd_DQD8);        w_61 : VitalWireDelay (ADV_ipd, ADV, tipd_ADV);        w_62 : VitalWireDelay (R_ipd, R, tipd_R);        w_63 : VitalWireDelay (CLKENNeg_ipd, CLKENNeg, tipd_CLKENNeg);        w_64 : VitalWireDelay (BWDNeg_ipd, BWDNeg, tipd_BWDNeg);        w_65 : VitalWireDelay (BWCNeg_ipd, BWCNeg, tipd_BWCNeg);        w_66 : VitalWireDelay (BWBNeg_ipd, BWBNeg, tipd_BWBNeg);        w_67 : VitalWireDelay (BWANeg_ipd, BWANeg, tipd_BWANeg);        w_68 : VitalWireDelay (CE1Neg_ipd, CE1Neg, tipd_CE1Neg);        w_69 : VitalWireDelay (CE2Neg_ipd, CE2Neg, tipd_CE2Neg);        w_70 : VitalWireDelay (CE2_ipd, CE2, tipd_CE2);        w_71 : VitalWireDelay (CLK_ipd, CLK, tipd_CLK);        w_72 : VitalWireDelay (LBONeg_ipd, LBONeg, tipd_LBONeg);        w_73 : VitalWireDelay (OENeg_ipd, OENeg, tipd_OENeg);    END BLOCK;    ----------------------------------------------------------------------------    -- Main Behavior Block    ----------------------------------------------------------------------------    Behavior: BLOCK        PORT (            BWDNIn          : IN    std_ulogic := 'U';            BWCNIn          : IN    std_ulogic := 'U';            BWBNIn          : IN    std_ulogic := 'U';            BWANIn          : IN    std_ulogic := 'U';            DatDIn          : IN    std_logic_vector(8 downto 0);            DatCIn          : IN    std_logic_vector(8 downto 0);            DatBIn          : IN    std_logic_vector(8 downto 0);            DatAIn          : IN    std_logic_vector(8 downto 0);            DataOut         : OUT   std_logic_vector(35 downto 0)                                                     := (others => 'Z');            CLKIn           : IN    std_ulogic := 'U';            CKENIn          : IN    std_ulogic := 'U';            AddressIn       : IN    std_logic_vector(16 downto 0);            OENegIn         : IN    std_ulogic := 'U';            RIn             : IN    std_ulogic := 'U';            ADVIn           : IN    std_ulogic := 'U';            CE2In           : IN    std_ulogic := 'U';            LBONegIn        : IN    std_ulogic := '1';            CE1NegIn        : IN    std_ulogic := 'U';            CE2NegIn        : IN    std_ulogic := 'U'        );        PORT MAP (            BWDNIn => BWDNeg_ipd,            BWCNIn => BWCNeg_ipd,            BWBNIn => BWBNeg_ipd,            BWANIn => BWANeg_ipd,            CLKIn => CLK_ipd,            CKENIn => CLKENNeg_ipd,            OENegIn => OENeg_ipd,            RIn => R_ipd,            ADVIn => ADV_ipd,            CE2In => CE2_ipd,            LBONegIn => LBONeg_ipd,            CE1NegIn => CE1Neg_ipd,            CE2NegIn => CE2Neg_ipd,            DataOut(0) =>  DQA0,            DataOut(1) =>  DQA1,            DataOut(2) =>  DQA2,            DataOut(3) =>  DQA3,            DataOut(4) =>  DQA4,            DataOut(5) =>  DQA5,            DataOut(6) =>  DQA6,            DataOut(7) =>  DQA7,            DataOut(8) =>  DQA8,            DataOut(9) =>  DQB0,            DataOut(10) =>  DQB1,            DataOut(11) =>  DQB2,            DataOut(12) =>  DQB3,            DataOut(13) =>  DQB4,            DataOut(14) =>  DQB5,            DataOut(15) =>  DQB6,            DataOut(16) =>  DQB7,            DataOut(17) =>  DQB8,            DataOut(18) =>  DQC0,            DataOut(19) =>  DQC1,            DataOut(20) =>  DQC2,            DataOut(21) =>  DQC3,            DataOut(22) =>  DQC4,            DataOut(23) =>  DQC5,            DataOut(24) =>  DQC6,            DataOut(25) =>  DQC7,            DataOut(26) =>  DQC8,            DataOut(27) =>  DQD0,            DataOut(28) =>  DQD1,            DataOut(29) =>  DQD2,            DataOut(30) =>  DQD3,            DataOut(31) =>  DQD4,            DataOut(32) =>  DQD5,            DataOut(33) =>  DQD6,            DataOut(34) =>  DQD7,            DataOut(35) =>  DQD8,            DatAIn(0) =>  DQA0_ipd,            DatAIn(1) =>  DQA1_ipd,            DatAIn(2) =>  DQA2_ipd,            DatAIn(3) =>  DQA3_ipd,            DatAIn(4) =>  DQA4_ipd,            DatAIn(5) =>  DQA5_ipd,            DatAIn(6) =>  DQA6_ipd,            DatAIn(7) =>  DQA7_ipd,            DatAIn(8) =>  DQA8_ipd,            DatBIn(0) =>  DQB0_ipd,            DatBIn(1) =>  DQB1_ipd,            DatBIn(2) =>  DQB2_ipd,            DatBIn(3) =>  DQB3_ipd,            DatBIn(4) =>  DQB4_ipd,            DatBIn(5) =>  DQB5_ipd,            DatBIn(6) =>  DQB6_ipd,            DatBIn(7) =>  DQB7_ipd,            DatBIn(8) =>  DQB8_ipd,            DatCIn(0) =>  DQC0_ipd,            DatCIn(1) =>  DQC1_ipd,            DatCIn(2) =>  DQC2_ipd,            DatCIn(3) =>  DQC3_ipd,            DatCIn(4) =>  DQC4_ipd,            DatCIn(5) =>  DQC5_ipd,            DatCIn(6) =>  DQC6_ipd,            DatCIn(7) =>  DQC7_ipd,            DatCIn(8) =>  DQC8_ipd,            DatDIn(0) =>  DQD0_ipd,            DatDIn(1) =>  DQD1_ipd,            DatDIn(2) =>  DQD2_ipd,            DatDIn(3) =>  DQD3_ipd,            DatDIn(4) =>  DQD4_ipd,            DatDIn(5) =>  DQD5_ipd,            DatDIn(6) =>  DQD6_ipd,            DatDIn(7) =>  DQD7_ipd,            DatDIn(8) =>  DQD8_ipd,            AddressIn(0) => A0_ipd,            AddressIn(1) => A1_ipd,            AddressIn(2) => A2_ipd,            AddressIn(3) => A3_ipd,            AddressIn(4) => A4_ipd,            AddressIn(5) => A5_ipd,            AddressIn(6) => A6_ipd,            AddressIn(7) => A7_ipd,            AddressIn(8) => A8_ipd,            AddressIn(9) => A9_ipd,            AddressIn(10) => A10_ipd,            AddressIn(11) => A11_ipd,            AddressIn(12) => A12_ipd,            AddressIn(13) => A13_ipd,            AddressIn(14) => A14_ipd,            AddressIn(15) => A15_ipd,            AddressIn(16) => A16_ipd        );        -- Type definition for state machine        TYPE mem_state IS (desel,                           begin_rd,                           begin_wr,                           burst_rd,                           burst_wr                          );        SIGNAL state     : mem_state;        TYPE sequence IS ARRAY (0 to 3) OF INTEGER RANGE -3 to 3;        TYPE seqtab IS ARRAY (0 to 3) OF sequence;        CONSTANT il0 : sequence := (0, 1, 2, 3);        CONSTANT il1 : sequence := (0, -1, 2, 1);        CONSTANT il2 : sequence := (0, 1, -2, -1);        CONSTANT il3 : sequence := (0, -1, -2, -3);        CONSTANT il  : seqtab := (il0, il1, il2, il3);        CONSTANT ln0 : sequence := (0, 1, 2, 3);        CONSTANT ln1 : sequence := (0, 1, 2, -1);        CONSTANT ln2 : sequence := (0, 1, -2, -1);        CONSTANT ln3 : sequence := (0, -3, -2, -1);        CONSTANT ln  : seqtab := (ln0, ln1, ln2, ln3);        SIGNAL Burst_Seq : seqtab;        SIGNAL D_zd      : std_logic_vector(35 DOWNTO 0);    BEGIN        Burst_Setup : PROCESS        BEGIN           IF (LBONegIn = '1') THEN               Burst_Seq <= il;           ELSE               Burst_Seq <= ln;           END IF;           WAIT;    -- Mode can be set only during power up        END PROCESS Burst_Setup;    ----------------------------------------------------------------------------    -- Main Behavior Process    ----------------------------------------------------------------------------        Behavior : PROCESS (BWDNIn, BWCNIn, BWBNIn, BWANIn, DatDIn, DatCIn,                            DatBIn, DatAIn, CLKIn, CKENIn, AddressIn, RIn,                            OENegIn, ADVIn, CE2In, CE1NegIn, CE2NegIn)            -- Type definition for commands            TYPE command_type is (ds,                                  burst,                                  read,                                  write                                 );            -- Timing Check Variables            VARIABLE Tviol_BWDN_CLK     : X01 := '0';            VARIABLE TD_BWDN_CLK        : VitalTimingDataType;            VARIABLE Tviol_BWCN_CLK     : X01 := '0';            VARIABLE TD_BWCN_CLK        : VitalTimingDataType;            VARIABLE Tviol_BWBN_CLK     : X01 := '0';            VARIABLE TD_BWBN_CLK        : VitalTimingDataType;            VARIABLE Tviol_BWAN_CLK     : X01 := '0';            VARIABLE TD_BWAN_CLK        : VitalTimingDataType;            VARIABLE Tviol_CKENIn_CLK   : X01 := '0';

⌨️ 快捷键说明

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