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

📄 cy7c1380.vhd

📁 vhdl cod for ram.For sp3e
💻 VHD
📖 第 1 页 / 共 5 页
字号:
        BEGIN           IF (MODEIn = '1') THEN               Burst_Seq <= il;           ELSE               Burst_Seq <= ln;           END IF;           WAIT;  -- static pin during device operation        END PROCESS Burst_Setup;    ----------------------------------------------------------------------------    -- Main Behavior Process    ----------------------------------------------------------------------------        Behavior : PROCESS (BWANIn, BWBNIn, BWCNIn, BWDNIn, DatAIn, DatBIn,                            DatCIn, DatDIN, CLKIn, AddressIn, GWNIn, BWENIn,                            OENegIn, ADVNIn, ADSPNIn, ADSCNIn, CE2In, CE1NegIn,                            CE3NegIn, ZZIn)            -- Type definition for commands            TYPE command_type is (ds,                                  begin_SPwr,                                  SPwr_burst,                                  SPwr_susp,                                  SCwr,                                  begin_read,                                  read_burst,                                  read_susp                                 );            -- Timing Check Variables            VARIABLE Tviol_AddressIn_CLK      : X01 := '0';            VARIABLE TD_AddressIn_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_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_BWEN_CLK     : X01 := '0';            VARIABLE TD_BWEN_CLK        : VitalTimingDataType;            VARIABLE Tviol_GWN_CLK     : X01 := '0';            VARIABLE TD_GWN_CLK        : VitalTimingDataType;            VARIABLE Tviol_ADVNIn_CLK     : X01 := '0';            VARIABLE TD_ADVNIn_CLK        : VitalTimingDataType;            VARIABLE Tviol_ADSCNIn_CLK     : X01 := '0';            VARIABLE TD_ADSCNIn_CLK        : VitalTimingDataType;            VARIABLE Tviol_ADSPNIn_CLK     : X01 := '0';            VARIABLE TD_ADSPNIn_CLK        : VitalTimingDataType;            VARIABLE Tviol_CE1NegIn_CLK : X01 := '0';            VARIABLE TD_CE1NegIn_CLK    : VitalTimingDataType;            VARIABLE Tviol_CE3NegIn_CLK : X01 := '0';            VARIABLE TD_CE3NegIn_CLK    : VitalTimingDataType;            VARIABLE Tviol_CE2In_CLK    : X01 := '0';            VARIABLE TD_CE2In_CLK       : VitalTimingDataType;            VARIABLE Tviol_ADSCNIn_ZZ     : X01 := '0';            VARIABLE TD_ADSCNIn_ZZ        : VitalTimingDataType;            VARIABLE Tviol_ADSPNIn_ZZ     : X01 := '0';            VARIABLE TD_ADSPNIn_ZZ        : VitalTimingDataType;            VARIABLE Tviol_CE1NegIn_ZZ : X01 := '0';            VARIABLE TD_CE1NegIn_ZZ    : VitalTimingDataType;            VARIABLE Tviol_CE3NegIn_ZZ : X01 := '0';            VARIABLE TD_CE3NegIn_ZZ    : VitalTimingDataType;            VARIABLE Tviol_CE2In_ZZ    : X01 := '0';            VARIABLE TD_CE2In_ZZ       : VitalTimingDataType;            VARIABLE Pviol_CLK    : X01 := '0';            VARIABLE PD_CLK       : VitalPeriodDataType := VitalPeriodDataInit;            -- Memory array declaration            TYPE MemStore IS ARRAY (0 to 524288) OF INTEGER                             RANGE  -2 TO 511;            VARIABLE MemDataA   : MemStore;            VARIABLE MemDataB   : MemStore;            VARIABLE MemDataC   : MemStore;            VARIABLE MemDataD   : MemStore;            VARIABLE MemAddr    : NATURAL RANGE 0 TO 524288;            VARIABLE startaddr  : NATURAL RANGE 0 TO 524288;            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 ind     : NATURAL := 0;            VARIABLE buf     : line;            VARIABLE command    : command_type;            VARIABLE R          : std_logic;            VARIABLE cycle1     : BOOLEAN := false;            VARIABLE cycle2     : 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      => AddressIn,                    TestSignalName  => "Address",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_A0_CLK,                    SetupLow        => tsetup_A0_CLK,                    HoldHigh        => thold_A0_CLK,                    HoldLow         => thold_A0_CLK,                    CheckEnabled    => (ZZIn = '0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_AddressIn_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_AddressIn_CLK );                VitalSetupHoldCheck (                    TestSignal      => DatDIn,                    TestSignalName  => "DatD",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_DQA0_CLK,                    SetupLow        => tsetup_DQA0_CLK,                    HoldHigh        => thold_DQA0_CLK,                    HoldLow         => thold_DQA0_CLK,                    CheckEnabled    => (ZZIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_DatDIn_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_DatDIn_CLK );                VitalSetupHoldCheck (                    TestSignal      => DatCIn,                    TestSignalName  => "DatC",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_DQA0_CLK,                    SetupLow        => tsetup_DQA0_CLK,                    HoldHigh        => thold_DQA0_CLK,                    HoldLow         => thold_DQA0_CLK,                    CheckEnabled    => (ZZIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_DatCIn_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_DatCIn_CLK );                VitalSetupHoldCheck (                    TestSignal      => DatBIn,                    TestSignalName  => "DatB",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_DQA0_CLK,                    SetupLow        => tsetup_DQA0_CLK,                    HoldHigh        => thold_DQA0_CLK,                    HoldLow         => thold_DQA0_CLK,                    CheckEnabled    => (ZZIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_DatBIn_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_DatBIn_CLK );                VitalSetupHoldCheck (                    TestSignal      => DatAIn,                    TestSignalName  => "DatA",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_DQA0_CLK,                    SetupLow        => tsetup_DQA0_CLK,                    HoldHigh        => thold_DQA0_CLK,                    HoldLow         => thold_DQA0_CLK,                    CheckEnabled    => (ZZIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_DatAIn_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_DatAIn_CLK );                VitalSetupHoldCheck (                    TestSignal      => GWNIn,                    TestSignalName  => "GW",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_BWANeg_CLK,                    SetupLow        => tsetup_BWANeg_CLK,                    HoldHigh        => thold_BWANeg_CLK,                    HoldLow         => thold_BWANeg_CLK,                    CheckEnabled    => (ZZIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_GWN_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_GWN_CLK );                VitalSetupHoldCheck (                    TestSignal      => BWENIn,                    TestSignalName  => "BWE",                    RefSignal       => CLKIn,                    RefSignalName   => "CLK",                    SetupHigh       => tsetup_BWANeg_CLK,                    SetupLow        => tsetup_BWANeg_CLK,                    HoldHigh        => thold_BWANeg_CLK,                    HoldLow         => thold_BWANeg_CLK,                    CheckEnabled    => (ZZIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_BWEN_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_BWEN_CLK );                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    => (ZZIn ='0'),                    RefTransition   => '/',                    HeaderMsg       => InstancePath & PartID,                    TimingData      => TD_BWDN_CLK,                    XOn             => XOn,                    MsgOn           => MsgOn,                    Violation       => Tviol_BWDN_CLK );                VitalSetupHoldCheck (                    TestSignal      => BWCNIn,

⌨️ 快捷键说明

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