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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? pci_arbiter_tb_di.vhd

?? PCI Arbitor by VHDL
?? VHD
字號(hào):
-------------------------------------------------------------------------------
-- Author: Antonio Di Rocco
--         SW Defined Radio Labs
--         SELEX COMMUNICATIONS 
--         A Finmeccanica Company
-------------------------------------------------------------------------------
--    Description: Test bench for PCI arbiter. 
--                   - All devices may be initiator. 
--                   - Priority management in pure rotation arbitration
--                   - Bus parking (configurable) 
-------------------------------------------------------------------------------
--    Cycles description:
--       .....
--       .... 
---------------------------------------------------------------------------
-- Compiler Directives
---------------------------------------------------------------------------

-- library --
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_unsigned.all;

-- UNISIM is only used for simulation so for synthesis ignore it
-- synthesis translate_off
--library XILINXCORELIB;
--library UNISIM;
--use UNISIM.all;
-- synthesis translate_on

---------------------------------------------------------------------------
-- Main Module
---------------------------------------------------------------------------

entity PCI_ARBITER_TB_DI is

   generic ( MASTERS   : integer := 6 );
   
--   port    (                                                                  ------------------ System signals --------------------
--           REQ_N          : in std_logic_vector(MASTERS-1 downto 0);         -- BUS REQUEST signals
--            PCI_CLK        : in std_logic ;                                  -- PCI 33MHz Clock          
--            PCI_RST        : in std_logic;                                    -- PCI reset                                                               
--            FRAME_N        : in std_logic;                                    -- Selected wired or
--            IRDY_N         : in std_logic;                                    -- Selected wired or
--            
--            GNT_N          : out std_logic_vector(MASTERS-1 downto 0)        -- BUS GRANT signals               
--            ) ;

end PCI_ARBITER_TB_DI ;

---------------------------------------------------------------------------
-- Main Architecture
---------------------------------------------------------------------------

architecture RTL of PCI_ARBITER_TB_DI is

-- Constants
constant PCI_CK_PERIOD    : time    := 30303 ps;   --33MHZ 
 
-- signal declarations
--signal SIM_END           : boolean := false;
signal CLK_EN            : std_logic := '0';
signal PCI_CLK_TB        : std_logic := '0';
signal PCI_RST_TB        : std_logic := '1';
signal FRAME_N_TB        : std_logic := '1';
signal IRDY_N_TB         : std_logic := '1';
signal REQ_N_TB          : std_logic_vector(MASTERS-1 downto 0) := (others => '1');
signal GNT_N_TB          : std_logic_vector(MASTERS-1 downto 0) ;
signal cycle1_done       : std_logic := '0'; 

-- instantiate the top-level block

component PCI_ARBITER
port (   
            REQ_N          : in std_logic_vector(MASTERS-1 downto 0);         -- BUS REQUEST signals
            PCI_CLK        : in std_logic ;                                  -- PCI 33MHz Clock          
            PCI_RST        : in std_logic;                                    -- PCI reset                                                               
            FRAME_N        : in std_logic;                                    -- Selected wired or
            IRDY_N         : in std_logic;                                    -- Selected wired or 
            GNT_N          : out std_logic_vector(MASTERS-1 downto 0)        -- BUS GRANT signals   
      );
end component;

begin

   CLK_EN        <= '1' after 1*PCI_CK_PERIOD;  
   PCI_RST_TB    <= '0' after 3*PCI_CK_PERIOD;
   PCI_CLK_TB    <= not PCI_CLK_TB after PCI_CK_PERIOD/2 when (CLK_EN = '1') else '0'; 
   
   
 DUT: PCI_ARBITER
 port map (                                                               
            REQ_N          => REQ_N_TB,
            PCI_CLK        => PCI_CLK_TB,          
            PCI_RST        => PCI_RST_TB,                                                             
            FRAME_N        => FRAME_N_TB,
            IRDY_N         => IRDY_N_TB,       
            GNT_N          => GNT_N_TB      
          );  


INPUT_BUSCYCLE_1: process (PCI_CLK_TB) 



VARIABLE CYCLE         : INTEGER := 0;
VARIABLE State         : INTEGER := 0;
VARIABLE Wait_cnt	     : INTEGER := 0;
VARIABLE frame_size    : INTEGER := 0;

--VARIABLE REQ_N_TB_var  :std_logic_vector(MASTERS-1 downto 0) :="11";

begin

 if (PCI_CLK_TB'event and PCI_CLK_TB = '1') then
 
   
   if CYCLE = 0 then 
 
    CASE State IS

        WHEN 0 => 
            REQ_N_TB        <= (others => '1');
            FRAME_N_TB      <= '1';
            Wait_cnt := Wait_cnt + 1; 
            if (Wait_cnt = 3)  then 
              State := 1;
              Wait_cnt := 0; 
            end if;   
                   
        WHEN 1 => 
            REQ_N_TB        <= "101111";
            Wait_cnt := Wait_cnt + 1; 
              if   (GNT_N_TB = "101111") then
              
                 if frame_size = 0 then 
                    FRAME_N_TB      <= '1';
                    frame_size := frame_size + 1;
                 elsif ((frame_size = 1) or  (frame_size = 2)) then 
                    FRAME_N_TB      <= '0';
                    frame_size := frame_size + 1;
                 elsif frame_size = 3 then   
                    FRAME_N_TB      <= '1';
                 end if;                  
               end if;    
            if (Wait_cnt = 6)  then
              State := 2;
              Wait_cnt := 0; 
              frame_size := 0;
            end if; 
          
        WHEN 2 => 
            REQ_N_TB        <= (others => '1');
            Wait_cnt := Wait_cnt + 1; 
            if Wait_cnt = 1  then
              State := 0;
              Wait_cnt := 0; 
              CYCLE := 1;
            end if;        
              
        WHEN OTHERS => 
                 NULL;
        END CASE;         
        
        
    elsif CYCLE = 1 then 
     CASE State IS

        WHEN 0 =>   
            REQ_N_TB        <= (others => '1');
            FRAME_N_TB      <= '1';
            Wait_cnt := Wait_cnt + 1; 
            if (Wait_cnt = 2)  then 
              State := 1;
              Wait_cnt := 0; 
            end if;   
                   
        WHEN 1 => 
            REQ_N_TB        <= "011001";                -- bus request device 1,2 and 5
            Wait_cnt := Wait_cnt + 1; 
            
              if   (GNT_N_TB = "111101") then           -- grant received from device 1 (high priority) - due to value of round prioriy shift register-
              
                 if frame_size = 0 then 
                    FRAME_N_TB      <= '1';
                    frame_size := frame_size + 1;
                 elsif ((frame_size = 1) or  (frame_size = 2))then 
                    FRAME_N_TB      <= '0';
                    frame_size := frame_size + 1;
                 elsif frame_size = 3 then   
                    FRAME_N_TB      <= '1';
                 end if;                  
               end if;    
            if (Wait_cnt = 6)  then
              State := 2;
              Wait_cnt := 0; 
              frame_size := 0;
            end if; 
            
        WHEN 2 => 
            REQ_N_TB        <= "011011";                  -- mantain bus request device 2 and 5
            Wait_cnt := Wait_cnt + 1; 
            
              if   (GNT_N_TB = "111011") then             -- grant received from device 2 (high priority) respect device 5
              
                 if frame_size = 0 then 
                    FRAME_N_TB      <= '1';
                    frame_size := frame_size + 1;
                 elsif ((frame_size = 1) or  (frame_size = 2))then 
                    FRAME_N_TB      <= '0';
                    frame_size := frame_size + 1;
                 elsif frame_size = 3 then   
                    FRAME_N_TB      <= '1';
                 end if;                  
               end if;    
            if (Wait_cnt = 8)  then
              State := 3;
              Wait_cnt := 0; 
              frame_size := 0;
            end if;     
          
        WHEN 3 => 
            REQ_N_TB        <= "011101";                  -- mantain bus request device  5 plus  a new request of device 1
            --REQ_N_TB        <= (others => '1');          
            Wait_cnt := Wait_cnt + 1; 
            if Wait_cnt = 17  then
              State := 4;
              Wait_cnt := 0; 
            end if;    
            
         WHEN 4 => 
            --REQ_N_TB        <= (others => '1');    
            REQ_N_TB        <= "111101";                  -- mantain bus request device  1      
            Wait_cnt := Wait_cnt + 1; 
            if Wait_cnt = 4  then
              State := 0;
              Wait_cnt := 0; 
              CYCLE := 3;
            end if;        
                    
        WHEN OTHERS => 
                 NULL;
        END CASE;   
   end if;  --CYCLE 1
   
  end if;  --clock
   
  end process INPUT_BUSCYCLE_1;
  
  process (PCI_CLK_TB)
      begin
          if (PCI_CLK_TB'event and PCI_CLK_TB = '1') then
            IRDY_N_TB <= FRAME_N_TB;
         end if;
  end process ;
                                 				  
  
end RTL;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲伦理在线免费看| 精品毛片乱码1区2区3区| 久久精品国产免费看久久精品| 久久久久88色偷偷免费| 欧美影院一区二区三区| 国产一区二区免费看| 亚洲一区视频在线| 国产精品国产三级国产有无不卡| 欧美日韩国产小视频| 99视频国产精品| 精品一区二区三区香蕉蜜桃| 亚洲成人激情自拍| 最新成人av在线| 久久精品一二三| 91精选在线观看| 91久久免费观看| 国产成人在线影院| 另类综合日韩欧美亚洲| 亚洲午夜激情av| 亚洲欧美日韩一区二区三区在线观看| 久久久午夜精品| 日韩欧美国产午夜精品| 欧美天堂亚洲电影院在线播放| 99精品久久免费看蜜臀剧情介绍| 国产一区二区三区视频在线播放| 蜜臀久久久99精品久久久久久| 亚洲一区二区精品视频| 亚洲另类在线制服丝袜| 国产精品色哟哟| 欧美激情一区二区三区| 日韩成人午夜电影| 国产精品色哟哟| 欧美变态tickling挠脚心| 欧美亚洲综合在线| 欧美性videosxxxxx| 91亚洲国产成人精品一区二三| 国产综合久久久久久鬼色| 老汉av免费一区二区三区 | 欧美福利电影网| 日本黄色一区二区| 一本一道久久a久久精品| 91在线观看下载| 91蜜桃免费观看视频| 99久久伊人网影院| 91在线免费播放| 91免费视频观看| 色综合久久中文字幕| 91精品1区2区| 欧美理论片在线| 中文字幕不卡在线| 久久久久久麻豆| 欧美日韩视频在线第一区| 欧美性一二三区| 欧美色区777第一页| 欧美日韩国产高清一区二区三区| 欧美精品第1页| 欧美大黄免费观看| 国产人久久人人人人爽| 国产精品国产a级| 一片黄亚洲嫩模| 日韩国产欧美在线视频| 久久99在线观看| 国产成人午夜高潮毛片| 99久久精品一区| 欧美精品一级二级| 欧美电影免费观看高清完整版在| 国产日韩欧美电影| 一区二区三区四区蜜桃| 日韩福利电影在线| 国产成人午夜片在线观看高清观看| 99精品欧美一区二区三区小说| 精品视频一区二区三区免费| 日韩免费观看高清完整版| 中文一区二区在线观看| 亚洲综合丝袜美腿| 久久国产欧美日韩精品| av在线不卡观看免费观看| 欧美日韩三级视频| 久久日韩精品一区二区五区| 亚洲精品国产a久久久久久| 日韩在线播放一区二区| 成人综合在线观看| 欧美日韩国产一级片| 国产午夜一区二区三区| 一区二区不卡在线播放| 国产一区二区三区在线观看免费视频| 99国产精品久久久久久久久久久| 精品免费日韩av| 亚洲精品视频免费看| 久久99精品久久久久婷婷| 99re8在线精品视频免费播放| 91麻豆精品国产自产在线 | **网站欧美大片在线观看| 日本美女视频一区二区| 99久久精品国产一区| 日韩欧美国产一区二区三区| 亚洲欧美另类久久久精品| 国产一区二区三区免费在线观看| 欧美色窝79yyyycom| 中文字幕高清一区| 久久精品国产免费| 欧美日韩视频专区在线播放| 国产精品久久久久婷婷二区次| 男女男精品视频网| 欧美性一二三区| 中文字幕一区二区三区av| 蜜臀精品久久久久久蜜臀| 在线观看一区二区视频| 91麻豆精品国产91久久久使用方法 | 日韩一二三区视频| 亚洲精品欧美综合四区| 国产成人啪免费观看软件| 日韩三级视频在线观看| 亚洲综合丁香婷婷六月香| 大胆欧美人体老妇| 久久亚洲综合色| 日本亚洲视频在线| 欧美性猛交一区二区三区精品| 国产精品国产自产拍高清av| 国产一区在线观看麻豆| 日韩一区二区在线看| 天天爽夜夜爽夜夜爽精品视频| 色综合久久综合网| 亚洲人成影院在线观看| 成人三级伦理片| 国产婷婷一区二区| 国产精品影视天天线| 亚洲精品v日韩精品| 成人午夜在线免费| 国产日韩欧美不卡在线| 国产成人午夜电影网| 久久久久久久国产精品影院| 国模套图日韩精品一区二区| 亚洲中国最大av网站| 国产伦精品一区二区三区免费迷| 日韩亚洲欧美在线观看| 青青草精品视频| 日韩精品一区二区三区视频在线观看| 日韩和的一区二区| 欧美绝品在线观看成人午夜影视| 亚洲自拍偷拍图区| 欧美日本在线视频| 日韩精品一区第一页| 日韩一区二区三区免费看 | 色成人在线视频| 亚洲自拍另类综合| 欧美日韩亚洲国产综合| 视频在线观看一区| 日韩欧美国产三级电影视频| 久久国产欧美日韩精品| 久久久亚洲精品石原莉奈 | 91精品国产黑色紧身裤美女| 免费观看久久久4p| 久久亚洲免费视频| 成人av在线一区二区三区| 亚洲日本在线看| 欧美日韩国产精选| 麻豆国产91在线播放| 久久丝袜美腿综合| 91丨九色丨黑人外教| 午夜精品福利在线| 精品福利一二区| 成人91在线观看| 天涯成人国产亚洲精品一区av| 精品人在线二区三区| 国产a久久麻豆| 一区二区三区欧美激情| 欧美一级国产精品| 国产精品一二三区| 亚洲精品视频在线观看免费| 91麻豆精品国产91久久久| 国产ts人妖一区二区| 亚洲一区二区综合| 26uuu亚洲婷婷狠狠天堂| www.亚洲激情.com| 日韩电影免费一区| 欧美高清在线一区二区| 欧美探花视频资源| 国产精品2024| 亚洲国产精品综合小说图片区| 欧美v日韩v国产v| 97精品国产露脸对白| 日韩成人免费电影| 中文字幕在线不卡| 91精品国产一区二区| av资源网一区| 久久国产免费看| 亚洲精品第一国产综合野| 精品久久久久一区二区国产| 色呦呦国产精品| 国产麻豆欧美日韩一区| 亚洲丰满少妇videoshd| 国产欧美日韩三级| 91麻豆精品国产自产在线| 99久久精品国产精品久久| 久久精品国产999大香线蕉| 国产精品久久久久精k8| 精品久久人人做人人爱| 欧美日韩美女一区二区| 91尤物视频在线观看|