亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cdc5801.vhd

?? Vhdl cod for a clock for sp3e
?? VHD
?? 第 1 頁 / 共 2 頁
字號:
                    half_per := half_per - 60 ps;                    PLL_LOCK <= false;                ELSIF mult_period < clk_period THEN                    half_per := half_per + 59 ps;                    PLL_LOCK <= false;                ELSE                    PLL_LOCK <= true;                END IF;            counter := 0;            ELSE                counter := counter + 1;            END IF;        END IF;        IF rising_edge(PLL_OUT) THEN            PLL_OUT <= '0' AFTER half_per, '1' AFTER 2*half_per;        ELSIF NOW = 0 ns THEN            PLL_OUT <= '0' AFTER half_per, '1' AFTER 2*half_per;        END IF;    END PROCESS PLL;    ----------------------------------------------------------------------------    -- Multiplier Process    ----------------------------------------------------------------------------    -- The "Multiplier" actually divides the PLL_OUT signal    MULT : PROCESS (PLL_OUT, MULT0_nwv, MULT1_nwv)        VARIABLE mult_in  : natural range 0 to 3;        VARIABLE multvec  : std_logic_vector(1 downto 0);        VARIABLE mult_cnt : natural range 0 to 8;    BEGIN        multvec := (MULT0_nwv, MULT1_nwv);        mult_in := to_nat(multvec);        IF rising_edge(PLL_OUT) THEN            CASE mult_in IS                WHEN 0 =>  -- divide by 4                    IF mult_cnt > 0 THEN                        MULT_OUT <= not MULT_OUT;                        mult_cnt := 0;                    ELSE                        mult_cnt := mult_cnt + 1;                    END IF;                WHEN 1 =>  -- divide by 2                    MULT_OUT <= not MULT_OUT;                WHEN 2 =>  -- divide by 16                    IF mult_cnt > 6 THEN                        MULT_OUT <= not MULT_OUT;                        mult_cnt := 0;                    ELSE                        mult_cnt := mult_cnt + 1;                    END IF;                WHEN 3 =>  -- divide by 8                    IF mult_cnt > 2 THEN                        MULT_OUT <= not MULT_OUT;                        mult_cnt := 0;                    ELSE                        mult_cnt := mult_cnt + 1;                    END IF;            END CASE;        ELSIF NOW = 0 ns THEN            MULT_OUT <= not MULT_OUT;        END IF;    END PROCESS MULT;    ----------------------------------------------------------------------------    -- Delay Process    ----------------------------------------------------------------------------    -- The Delay process phase aligns the output to DLYCTRL    DELAY : PROCESS (PLL_OUT, DLYCTRL_ipd, LEADLAG_ipd)        VARIABLE phase_dly    : time := 0 ns;        VARIABLE phase_cnt    : natural := 0;    BEGIN        IF PLL_LOCK THEN            IF rising_edge(DLYCTRL_ipd) THEN                IF phase_cnt < 31 THEN                    IF LEADLAG_ipd = '0' OR LEADLAG_ipd = 'L' THEN                        phase_dly := phase_dly + PHASE_INC;                    ELSE                        IF phase_dly > PHASE_INC THEN                            phase_dly := phase_dly - PHASE_INC;                        ELSE                            phase_dly := C_PERIOD - PHASE_INC; -- wrap                        END IF;                    END IF;                    phase_cnt := phase_cnt +1;                ELSE                    phase_cnt := 0;                END IF;            END IF;        ELSE            phase_dly := 0 ps;        END IF;        DLY_OUT <= TRANSPORT PLL_OUT AFTER phase_dly;    END PROCESS DELAY;    ----------------------------------------------------------------------------    -- Divider Process    ----------------------------------------------------------------------------    -- The Divider process divides the frequency of the phase aligner output,    -- gates the result with STOPB, and drives the outputs.    DIV : PROCESS (DLY_OUT, P1_nwv, P2_nwv, STOPBNeg_nwv, C_int)        VARIABLE div_in      : natural range 0 to 3;        VARIABLE divvec      : std_logic_vector(1 downto 0) := "00";        VARIABLE div_cnt     : natural range 0 to 8;        VARIABLE toggle_cnt  : natural range 0 to 2;        VARIABLE prev_lock   : boolean := false;        VARIABLE prev_c      : time := 0 ns;    BEGIN        divvec := (P1_nwv, P2_nwv);        div_in := to_nat(divvec);        IF P1_nwv'EVENT OR P2_nwv'EVENT OR PLL_LOCK = false THEN            prev_lock := false;        END IF;        IF rising_edge(C_int) THEN            C_PERIOD := NOW - prev_c;            prev_c := NOW;            IF PLL_LOCK /= prev_lock THEN                IF PLL_LOCK THEN                    IF toggle_cnt > 1 THEN                        CASE div_in IS                            WHEN 0 =>  -- special mode                            WHEN 1 =>  -- divide by 3072                                PHASE_INC := C_PERIOD/3072;                            WHEN 2 =>  -- divide by 1536                                PHASE_INC := C_PERIOD/1536;                            WHEN 3 =>  -- divide by 768                                PHASE_INC := C_PERIOD/768;                        END CASE;                        toggle_cnt := 0;                        prev_lock := true;                    ELSE                        toggle_cnt := toggle_cnt +1;                    END IF;                ELSE                    prev_lock := false;                END IF;            END IF;        END IF;        IF rising_edge(DLY_OUT) THEN            CASE div_in IS                WHEN 0 =>  -- special mode                    ASSERT (P0_nwv = '1')                    REPORT "cdc5801 model does not support this mode"                    SEVERITY error;                WHEN 1 =>  -- divide by 8                    IF div_cnt > 2 THEN                        C_zd <= not C_zd;                        div_cnt := 0;                    ELSE                        div_cnt := div_cnt + 1;                    END IF;                WHEN 2 =>  -- divide by 4                    IF div_cnt > 0 THEN                        C_zd <= not C_zd;                        div_cnt := 0;                    ELSE                        div_cnt := div_cnt + 1;                    END IF;                WHEN 3 =>  -- divide by 2                    C_zd <= not C_zd;            END CASE;        ELSIF NOW = 0 ns THEN            C_zd <= DLY_OUT;        END IF;        C_int <= C_zd;    END PROCESS DIV;        ------------------------------------------------------------------------        -- Path Delay Section        ------------------------------------------------------------------------    C_OUT: PROCESS(COut_zd)        VARIABLE C_GlitchData       : VitalGlitchDataType;    BEGIN         VitalPathDelay01 (            OutSignal       => CLKOUT,            OutSignalName   => "CLKOUT",            OutTemp         => COut_zd,            GlitchData      => C_GlitchData,            XOn             => XOn,            MsgOn           => MsgOn,            Paths           => (                0 => (InputChangeTime  => DLY_OUT'LAST_EVENT,                      PathDelay        => VitalZeroDelay01,                      PathCondition    => TRUE),                1 => (InputChangeTime  => STOPBNeg_ipd'LAST_EVENT,                      PathDelay        => tpd_STOPBNeg_CLKOUT,                      PathCondition    => STOPBNeg_nwv = '1'),                2 => (InputChangeTime  => STOPBNeg_ipd'LAST_EVENT,                      PathDelay        => tpd_STOPBNeg_CLKOUTB,                      PathCondition    => STOPBNeg_nwv = '0'),                3 => (InputChangeTime  => PWRDNBNeg_ipd'LAST_EVENT,                      PathDelay        => tpd_PWRDNBNeg_CLKOUT,                      PathCondition    => PWRDNBNeg_nwv = '1'),                4 => (InputChangeTime  => PWRDNBNeg_ipd'LAST_EVENT,                      PathDelay        => tpd_PWRDNBNeg_CLKOUTB,                      PathCondition    => PWRDNBNeg_nwv = '0')            )        );    END PROCESS C_OUT;   CNeg_OUT: PROCESS(CNeg_zd)        VARIABLE CNeg_GlitchData       : VitalGlitchDataType;    BEGIN        VitalPathDelay01 (            OutSignal       => CLKOUTB,            OutSignalName   => "CLKOUTB",            OutTemp         => CNeg_zd,            GlitchData      => CNeg_GlitchData,            XOn             => XOn,            MsgOn           => MsgOn,            Paths           => (                0 => (InputChangeTime  => DLY_OUT'LAST_EVENT,                      PathDelay        => VitalZeroDelay01,                      PathCondition    => TRUE),                1 => (InputChangeTime  => STOPBNeg_ipd'LAST_EVENT,                      PathDelay        => tpd_STOPBNeg_CLKOUT,                      PathCondition    => STOPBNeg_nwv = '1'),                2 => (InputChangeTime  => STOPBNeg_ipd'LAST_EVENT,                      PathDelay        => tpd_STOPBNeg_CLKOUTB,                      PathCondition    => STOPBNeg_nwv = '0'),                3 => (InputChangeTime  => PWRDNBNeg_ipd'LAST_EVENT,                      PathDelay        => tpd_PWRDNBNeg_CLKOUT,                      PathCondition    => PWRDNBNeg_nwv = '1'),                4 => (InputChangeTime  => PWRDNBNeg_ipd'LAST_EVENT,                      PathDelay        => tpd_PWRDNBNeg_CLKOUTB,                      PathCondition    => PWRDNBNeg_nwv = '0')            )        );    END PROCESS CNeg_OUT;END vhdl_behavioral;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品91一区二区| www.欧美.com| 99免费精品视频| 欧美一级片在线看| 国产精品女主播av| 午夜精品久久久久久久久久| 激情五月激情综合网| 欧美在线你懂得| 久久亚洲综合色一区二区三区 | 亚洲成人午夜电影| 国内精品国产成人国产三级粉色| 99这里只有精品| 国产午夜一区二区三区| 亚洲在线视频免费观看| 国产精品亚洲视频| 久久综合九色综合97婷婷| 亚洲国产欧美日韩另类综合| 成人va在线观看| 国产午夜精品久久久久久久 | 日韩欧美在线观看一区二区三区| 亚洲欧美另类在线| 国产一区二区福利视频| 99在线热播精品免费| 欧美精品一二三四| 亚洲一区二区三区四区的| 97久久超碰国产精品| 欧美精品一区二区久久婷婷| 欧美成人a在线| 国产亚洲自拍一区| 日韩成人一级片| 国产美女娇喘av呻吟久久| 欧美亚洲丝袜传媒另类| 夜夜嗨av一区二区三区中文字幕| 99视频在线精品| 国产精品福利在线播放| eeuss鲁片一区二区三区| 色婷婷香蕉在线一区二区| 欧美激情综合五月色丁香| 亚洲一区二区在线观看视频| 精品一区二区三区在线播放| 久久一区二区视频| 丝袜诱惑亚洲看片| 欧美va亚洲va| 亚洲小说欧美激情另类| 欧美亚洲丝袜传媒另类| 欧美日韩中文国产| 精品在线一区二区三区| 精品少妇一区二区三区视频免付费| 国产呦萝稀缺另类资源| 久久久一区二区三区捆绑**| 波多野结衣91| 欧美mv日韩mv国产| 91尤物视频在线观看| 亚洲欧洲日本在线| 欧美一级一级性生活免费录像| 国产精品一区二区无线| 精品日韩在线观看| 久久99国产精品麻豆| 久久精品人人做人人爽人人| 国内外精品视频| 在线欧美日韩国产| av午夜精品一区二区三区| 一区二区在线免费观看| 久久久一区二区| 成人高清视频在线观看| 韩国v欧美v日本v亚洲v| 2021国产精品久久精品| 欧美日韩精品电影| 国产综合色在线视频区| 国产精品国产精品国产专区不片| 久久看人人爽人人| 色婷婷综合视频在线观看| 国产成人高清在线| 老汉av免费一区二区三区| 久久久久国产精品人| 色综合亚洲欧洲| 黄网站免费久久| 毛片一区二区三区| 午夜激情综合网| 午夜精品一区二区三区三上悠亚| 五月天丁香久久| 亚洲午夜国产一区99re久久| 国产女人18水真多18精品一级做| 免费xxxx性欧美18vr| 国产欧美精品一区二区三区四区| 精品国产青草久久久久福利| 国产成人免费视频一区| 亚洲一区二区在线播放相泽| 一区二区三区欧美久久| 欧美一区二区三区四区高清| 亚洲欧美另类小说视频| 亚洲色图视频免费播放| 日韩一级高清毛片| 国产成+人+日韩+欧美+亚洲| 日韩精品三区四区| 天天影视涩香欲综合网 | av亚洲精华国产精华| 日韩电影免费在线观看网站| 寂寞少妇一区二区三区| 日韩一区二区在线播放| 国产视频一区在线观看| 日韩欧美激情四射| 久久精品av麻豆的观看方式| 在线观看视频91| 懂色av中文字幕一区二区三区| 亚洲一区二区美女| 午夜精品在线看| 91网站在线观看视频| 欧美日韩久久久一区| 欧美aaa在线| 在线观看一区不卡| 国产电影一区在线| 成人黄动漫网站免费app| 日韩欧美一区在线| 欧美一区二区三区在线视频 | 国产精品区一区二区三区| 日本欧美肥老太交大片| 成人自拍视频在线观看| 色播五月激情综合网| 欧美一区二区性放荡片| 久久精品国产99久久6| 中文字幕日本乱码精品影院| 久久久久99精品一区| 国产精品超碰97尤物18| 国产精品麻豆视频| 久久不见久久见中文字幕免费| 日韩欧美美女一区二区三区| 亚洲精品一线二线三线无人区| 欧美成人艳星乳罩| 无码av免费一区二区三区试看| 国产成人免费视频精品含羞草妖精| 亚洲午夜久久久久| 久久精品99国产精品| 日韩一区二区三区高清免费看看| 亚洲欧洲综合另类| 91九色02白丝porn| 亚洲欧美怡红院| 国产精品77777| 日韩小视频在线观看专区| 亚洲精品国产a| 日韩视频123| www.一区二区| 久久成人麻豆午夜电影| 欧美一区二区精品在线| 精品一区二区三区免费毛片爱| 日韩欧美国产系列| 亚洲1区2区3区视频| 欧美在线一区二区| 亚洲最大成人网4388xx| 国产麻豆精品95视频| 欧美tk丨vk视频| 91福利在线导航| 久久精品网站免费观看| 国产电影精品久久禁18| 91精品一区二区三区久久久久久| 成人毛片视频在线观看| 中文字幕精品一区二区三区精品| 色婷婷综合在线| 日韩国产欧美在线观看| 日韩视频免费观看高清完整版| 久久国产欧美日韩精品| 日韩久久久精品| 一区二区三区丝袜| 久久亚区不卡日本| 成人一区二区三区视频在线观看| 亚洲午夜久久久久中文字幕久| 天天综合网天天综合色| 欧美三级在线看| 色哟哟精品一区| 亚洲色图制服丝袜| 久久久三级国产网站| 欧美亚洲禁片免费| 99精品视频一区二区三区| 久久电影网站中文字幕| 一区二区三区日韩欧美| 欧美午夜片在线观看| 亚洲欧洲国产日韩| 欧美亚洲高清一区| 91丨porny丨首页| 日本网站在线观看一区二区三区| 亚洲激情网站免费观看| 中文字幕第一区第二区| 中文字幕+乱码+中文字幕一区| 波多野结衣一区二区三区| 蜜臂av日日欢夜夜爽一区| 午夜欧美电影在线观看| 亚洲精品免费看| 欧美精品一二三| 久久久久99精品国产片| 国产精品久久久久久久久动漫 | 日本一不卡视频| 日韩精品一二三区| 免费成人在线视频观看| 蜜桃视频一区二区| 亚洲综合免费观看高清完整版| 欧洲精品视频在线观看| 91视频国产观看| 婷婷夜色潮精品综合在线| 精品夜夜嗨av一区二区三区| 免费观看在线综合|