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

📄 idt71v65603.vhd

📁 vhdl cod for ram.For sp3e
💻 VHD
📖 第 1 页 / 共 5 页
字号:
            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_nwv,            DatAIn(1) =>  DQA1_nwv,            DatAIn(2) =>  DQA2_nwv,            DatAIn(3) =>  DQA3_nwv,            DatAIn(4) =>  DQA4_nwv,            DatAIn(5) =>  DQA5_nwv,            DatAIn(6) =>  DQA6_nwv,            DatAIn(7) =>  DQA7_nwv,            DatAIn(8) =>  DQA8_nwv,            DatBIn(0) =>  DQB0_nwv,            DatBIn(1) =>  DQB1_nwv,            DatBIn(2) =>  DQB2_nwv,            DatBIn(3) =>  DQB3_nwv,            DatBIn(4) =>  DQB4_nwv,            DatBIn(5) =>  DQB5_nwv,            DatBIn(6) =>  DQB6_nwv,            DatBIn(7) =>  DQB7_nwv,            DatBIn(8) =>  DQB8_nwv,            DatCIn(0) =>  DQC0_nwv,            DatCIn(1) =>  DQC1_nwv,            DatCIn(2) =>  DQC2_nwv,            DatCIn(3) =>  DQC3_nwv,            DatCIn(4) =>  DQC4_nwv,            DatCIn(5) =>  DQC5_nwv,            DatCIn(6) =>  DQC6_nwv,            DatCIn(7) =>  DQC7_nwv,            DatCIn(8) =>  DQC8_nwv,            DatDIn(0) =>  DQD0_nwv,            DatDIn(1) =>  DQD1_nwv,            DatDIn(2) =>  DQD2_nwv,            DatDIn(3) =>  DQD3_nwv,            DatDIn(4) =>  DQD4_nwv,            DatDIn(5) =>  DQD5_nwv,            DatDIn(6) =>  DQD6_nwv,            DatDIn(7) =>  DQD7_nwv,            DatDIn(8) =>  DQD8_nwv,            AddressIn(0) => A0_nwv,            AddressIn(1) => A1_nwv,            AddressIn(2) => A2_nwv,            AddressIn(3) => A3_nwv,            AddressIn(4) => A4_nwv,            AddressIn(5) => A5_nwv,            AddressIn(6) => A6_nwv,            AddressIn(7) => A7_nwv,            AddressIn(8) => A8_nwv,            AddressIn(9) => A9_nwv,            AddressIn(10) => A10_nwv,            AddressIn(11) => A11_nwv,            AddressIn(12) => A12_nwv,            AddressIn(13) => A13_nwv,            AddressIn(14) => A14_nwv,            AddressIn(15) => A15_nwv,            AddressIn(16) => A16_nwv,            AddressIn(17) => A17_nwv        );        -- 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, ZZIn)            -- 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';            VARIABLE TD_CKENIn_CLK      : VitalTimingDataType;            VARIABLE Tviol_ADVIn_CLK    : X01 := '0';            VARIABLE TD_ADVIn_CLK       : VitalTimingDataType;            VARIABLE Tviol_CE1NegIn_CLK : X01 := '0';            VARIABLE TD_CE1NegIn_CLK    : VitalTimingDataType;            VARIABLE Tviol_CE2NegIn_CLK : X01 := '0';            VARIABLE TD_CE2NegIn_CLK    : VitalTimingDataType;            VARIABLE Tviol_CE2In_CLK    : X01 := '0';            VARIABLE TD_CE2In_CLK       : VitalTimingDataType;            VARIABLE Tviol_RIn_CLK      : X01 := '0';            VARIABLE TD_RIn_CLK         : VitalTimingDataType;            VARIABLE Tviol_DatDIn_CLK   : X01 := '0';            VARIABLE TD_DatDIn_CLK      : VitalTimingDataType;            VARIABLE Tviol_DatCIn_CLK   : X01 := '0';            VARIABLE TD_DatCIn_CLK      : VitalTimingDataType;            VARIABLE Tviol_DatBIn_CLK   : X01 := '0';            VARIABLE TD_DatBIn_CLK      : VitalTimingDataType;            VARIABLE Tviol_DatAIn_CLK   : X01 := '0';            VARIABLE TD_DatAIn_CLK      : VitalTimingDataType;            VARIABLE Tviol_AddressIn_CLK      : X01 := '0';            VARIABLE TD_AddressIn_CLK         : VitalTimingDataType;            VARIABLE Pviol_CLK    : X01 := '0';            VARIABLE PD_CLK       : VitalPeriodDataType := VitalPeriodDataInit;            -- Memory array declaration            TYPE MemStore IS ARRAY (0 to 262143) OF INTEGER                             RANGE  -2 TO 511;            VARIABLE MemDataA   : MemStore;            VARIABLE MemDataB   : MemStore;            VARIABLE MemDataC   : MemStore;            VARIABLE MemDataD   : MemStore;            VARIABLE MemAddr    : NATURAL RANGE 0 TO 262143;            VARIABLE MemAddr1   : NATURAL RANGE 0 TO 262143;            VARIABLE startaddr  : NATURAL RANGE 0 TO 262143;            VARIABLE Burst_Cnt  : NATURAL RANGE 0 TO 4 := 0;            VARIABLE memstart   : NATURAL RANGE 0 TO 3 := 0;            VARIABLE offset     : INTEGER RANGE -3 TO 3 := 0;            VARIABLE command : command_type;            VARIABLE BWD1    : UX01;            VARIABLE BWC1    : UX01;            VARIABLE BWB1    : UX01;            VARIABLE BWA1    : UX01;            VARIABLE BWD2    : UX01;            VARIABLE BWC2    : UX01;            VARIABLE BWB2    : UX01;            VARIABLE BWA2    : UX01;            VARIABLE wr1     : boolean := false;            VARIABLE wr2     : boolean := false;            VARIABLE wr3     : boolean := false;            -- Functionality Results Variables            VARIABLE Violation  : X01 := '0';            VARIABLE OBuf1      : std_logic_vector(35 DOWNTO 0)                                   := (OTHERS => 'Z');            VARIABLE OBuf2      : std_logic_vector(35 DOWNTO 0)                                   := (OTHERS => 'Z');        BEGIN            --------------------------------------------------------------------            -- Timing Check Section            --------------------------------------------------------------------            IF (TimingChecksOn) THEN                VitalSetupHoldCheck (                    TestSignal      => BWDNIn,                    TestSignalName  => "BWD",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_BWANeg_CLK,                    SetupLow        => tsetup_BWANeg_CLK,                    HoldHigh        => thold_BWANeg_CLK,                    HoldLow         => thold_BWANeg_CLK,                    CheckEnabled    => (CKENIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_BWDN_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_BWDN_CLK );                VitalSetupHoldCheck (                    TestSignal      => BWCNIn,                    TestSignalName  => "BWC",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_BWANeg_CLK,                    SetupLow        => tsetup_BWANeg_CLK,                    HoldHigh        => thold_BWANeg_CLK,                    HoldLow         => thold_BWANeg_CLK,                    CheckEnabled    => (CKENIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_BWCN_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_BWCN_CLK );                VitalSetupHoldCheck (                    TestSignal      => BWBNIn,                    TestSignalName  => "BWB",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_BWANeg_CLK,                    SetupLow        => tsetup_BWANeg_CLK,                    HoldHigh        => thold_BWANeg_CLK,                    HoldLow         => thold_BWANeg_CLK,                    CheckEnabled    => (CKENIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_BWBN_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_BWBN_CLK );                VitalSetupHoldCheck (                    TestSignal      => BWANIn,                    TestSignalName  => "BWA",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_BWANeg_CLK,                    SetupLow        => tsetup_BWANeg_CLK,

⌨️ 快捷键说明

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