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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tg32pci.vhd

?? pci CORES 從外國網(wǎng)站上弄下來的
?? VHD
?? 第 1 頁 / 共 5 頁
字號:
--===================================================================--
--
--  www.OpenCores.Org - January 2000
--  This model adheres to the GNU public license  
--
-- Design units   : Target device for PCI Local Bus 33 MHz 32 bits
--                  (BoardLevel Simulation model)
--                  (Entity and architecture)
--
-- File name      : Tg32PCI.vhd
--
-- Purpose        : The Target device is used to simulate a target 
--                  device on the PCI-Bus
--
-- Note           : This model is modelled after the PCI protocol 
--                  as described in Xilinx & Altera AppNotes
--
--                There can be used more than one target devices in a
--                design, every device being identified by the three 
--                base addresses in generic.
--
-- Limitations    : None known
--
-- Errors         : None known
--
-- Library        : PCI_Lib.vhd
--
-- Dependencies   : IEEE.Std_Logic_1164
--
-- Author         : Ovidiu Lupas
--                  olupas@opencores.org
--
-- Simulator    : ModelSim EE version 5.2 on a Windows95 PC
--                ActiveVHDL 3.1 on a Windows95 PC
--===================================================================--
-----------------------------------------------------------------------
-- Entity for Target device in a PCI bus 33 MHZ 32 bit configuration
-----------------------------------------------------------------------
library ieee,work;
  use ieee.Std_Logic_1164.all;
  use work.Simulation.all;
  use work.PCI_Def.all;	
-----------------------------------------------------------------------
-----------------------------------------------------------------------
entity TG32PCI is
    generic (
      devtype : string(1 to 4); -- type of the device (Fast, Medi, Slow)
      tdelay  : Time;   -- delay time parameter when the device will change
                        -- data on AD_Bus (referenced to CLK signal)
      tsetup  : Time;
      thold   : Time;
      bamem   : Std_Logic_Vector(31 downto 0);  -- base address for memory
      baio    : Std_Logic_Vector(31 downto 0);  -- base address for I/O port
      bacfg   : Std_Logic_Vector(31 downto 0)); -- base address for cfg space
    port (
        -- Address, Data and Command buses (37)
        AD_Bus   : inout Std_Logic_Vector (31 downto 0); -- Address and Data Bus
        C_BE_Bus : in    Std_Logic_Vector (3 downto 0);  -- Command Bus
        PAR      : inout Std_Logic;                      --
        -- Interface control signals (6)
        FRAME_N  : in    Std_Logic;
        TRDY_N   : inout Std_Logic;
        IRDY_N   : in    Std_Logic;
        STOP_N   : out   Std_Logic;
        DEVSEL_N : inout Std_Logic;
        IDSEL    : in    Std_Logic;
        -- Error reporting signals (2)
        PERR_N   : inout Std_Logic;
        SERR_N   : inout Std_Logic;
        -- System signals (2)
        CLK      : in    Std_Logic;
        RST_N    : in    Std_Logic);
end TG32PCI; --=================== End of entity ====================--
-----------------------------------------------------------------------
-- Architecture for Target device PCI bus 33MHZ 32 bit configuration
-----------------------------------------------------------------------
architecture Behavior of Target32PCI is
  ---------------------------------------------------------------------
  -- Definition of Memory type,
  ---------------------------------------------------------------------
  type MEMORY is array(0 to 255) of Std_Logic_Vector(31 downto 0);
  ---------------------------------------------------------------------
  -- Local declarations
  ---------------------------------------------------------------------
  shared variable addr      : Std_Logic_Vector (31 downto 0);  -- Address
  shared variable busaddr   : Integer;     -- address present on bus
  shared variable cfgaddr   : Integer;     -- current configuration register address
  shared variable memaddr   : Integer;     -- current memory address
  shared variable ioaddr    : Integer;     -- current I/O port address
  shared variable IOmem     : Memory;      -- IOport registers
  shared variable Cfgmem    : Memory;      -- Configuration registers
  shared variable Mem       : Memory;      -- memory locations
  shared variable trdywaits : Boolean := false; -- wait enable
  shared variable trdy_st,trdy_nr,trdy_loop : Integer := 0;
  ---------------------------------------------------------------------
  -- Signals
  ---------------------------------------------------------------------  
  signal cmd         : Std_Logic_Vector (3 downto 0);   -- Command bus
  signal Busy        : Std_Logic := '0';
  signal IORead      : Std_Logic := '0';
  signal IOWrite     : Std_Logic := '0';
  signal MemRead     : Std_Logic := '0';
  signal MemWrite    : Std_Logic := '0';
  signal WaitWrite   : Std_Logic := '0';
  signal CfgRead     : Std_Logic := '0';
  signal CfgWrite    : Std_Logic := '0';
  signal FrameEv     : Std_Logic := '0';
  signal CmdBusReady : Std_Logic := '0';
  signal TrnArnd     : Std_Logic := '0';
  signal DevAddr     : Std_Logic := '0';
  signal ResFin      : Std_Logic := '0';
  signal Waits       : Std_Logic := '0';
  signal Init        : Std_Logic := '0';
begin--======================== Architecture ========================--
  ---------------------------------------------------------------------
  -- Initialize the memory contents with zeroes
  ---------------------------------------------------------------------
  Initialize : process
  begin
     for i in 0 to 255 loop
         IOmem(i)  := x"00000000";
         Mem(i)    := x"00000000";
         Cfgmem(i) := x"00000000";
     end loop;
     wait;
  end process;
  ---------------------------------------------------------------------
  -- Implements the parity generation and parity checking over the
  -- AD bus and C/BE bus.
  -- Also, generates the PERR_N signal, if the computed parity is not 
  -- equal with PAR signal, when PAR signal is generated by master
  ---------------------------------------------------------------------
  Parity : process(CLK,RST_N)
     variable parbit  : Std_Logic;
     variable lastpar : Std_Logic;
     variable errbit  : Std_Logic;
     variable pargen  : Boolean := false;
     variable errgen  : Boolean := false;
     variable cmdbus  : Std_Logic_Vector(3 downto 0);
     variable addrbus : Std_Logic_Vector(31 downto 0);
  begin
     if (Falling_Edge(RST_N) or RST_N = '0') then
        PAR <= 'Z';
        PERR_N <= 'Z';
     elsif (CLK'Event and CLK = '1') then  -- parity computation on every cycle
         addrbus := AD_Bus;
         cmdbus  := C_BE_Bus;
         lastpar := parbit;
         parbit  := '0';
         if addrbus /= "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" then
            for I in 0 to 31 loop
                parbit := parbit xor addrbus(i);
            end loop;
            for I in 0 to 3 loop
                parbit := parbit xor cmdbus(I);
            end loop;
         else
            parbit := 'Z';
         end if;
         if PAR = lastpar then -- PERR computation on every cycle
            errbit := '1';
         elsif PAR /= lastpar then
            errbit := '0';
         elsif PAR = 'Z' then
            errbit := 'H';
         end if;
         if ((IORead = '1' or MemRead = '1' or CfgRead = '1') and DevAddr = '1') then
            pargen := true;
         else
            pargen := false;
         end if;
     elsif (CLK'Event and CLK = '0' and DevAddr = '1') then -- parity generation if necessary
         if errgen = true then
            PERR_N <= errbit;
         else
            PERR_N <= 'H';
         end if;
         if pargen = true then
            PAR <= parbit;
            errgen := false;
         else
            PAR <= 'Z';
            errgen := true;
         end if;
     elsif (CLK'Event and CLK = '0' and DevAddr = '0') then --not the selected device
         PAR    <= 'Z';                            -- by the address
         PERR_N <= 'H';
         SERR_N <= 'Z';
     end if;
  end process;
  ---------------------------------------------------------------------
  -- Implements the command decoding, to receive commands from master
  ---------------------------------------------------------------------
  Decode : process(CLK,FRAME_N,Busy,DevAddr,cmdBusReady,RST_N)
     variable counter : Integer;
     variable devdel  : Boolean := false;
  begin
    if (Falling_Edge(RST_N) or RST_N = '0') then
        DEVSEL_N <= 'Z';
        STOP_N   <= 'Z';
        Busy <= '0';
    elsif (Frame_N'Event and Frame_N = '0') then -- the target device is awakened by 
        FrameEv <= '1';                        -- falling_edge of FRAME signal
        counter := 0;
    elsif (Busy'Event and Busy = '0') then
        IOWrite  <= '0';
        MemWrite <= '0';
        CfgWrite <= '0';
        WaitWrite <= '0';
        IORead   <= '0';
        MemRead  <= '0';
        CfgRead  <= '0';
    elsif (Busy'Event and Busy = '1') then
       if ( IOWrite = '1' or MemWrite = '1' or CfgWrite = '1' or WaitWrite = '1') then
          report "Target device is selected for write operations!"
          severity Note;
          if devtype = "Fast" then
             DEVSEL_N <= '0' after 8 ns;
             Stop_N   <= '1' after 10 ns;
             devdel := false;
          else
             devdel := true;
             counter := 0;
          end if;
       elsif ( IORead = '1' or MemRead = '1' or CfgRead = '1') then
          report "Target device is selected for read operations!"
          severity Note;
          if devtype = "Fast" then
             DEVSEL_N <= '0' after 8 ns;
             Stop_N   <= '1' after 10 ns;
             devdel := false;
          else
             devdel := true;
             counter := 0;
          end if;
       end if;
    elsif (DevAddr'Event and DevAddr = '0') then
       Busy <= '0';

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区精品| 3atv一区二区三区| 中文字幕一区二区三区不卡| 国产成a人亚洲精品| 一区二区中文视频| 精品视频999| 日本va欧美va欧美va精品| 精品国产乱码久久久久久影片| 久久99热国产| 国产精品久久99| 日本韩国一区二区三区视频| 日日夜夜精品视频天天综合网| 日韩一区二区三区视频在线| 国产高清在线观看免费不卡| 国产精品久久777777| 欧美亚州韩日在线看免费版国语版| 日韩国产在线一| 久久久久久黄色| 91性感美女视频| 日韩精品欧美精品| 久久久99精品免费观看不卡| 一本一本久久a久久精品综合麻豆| 亚洲444eee在线观看| 精品国产乱码久久久久久图片| av电影天堂一区二区在线| 亚洲一二三级电影| 精品第一国产综合精品aⅴ| 99久久婷婷国产精品综合| 亚洲h精品动漫在线观看| 久久久国产综合精品女国产盗摄| 99精品欧美一区二区三区小说| 一区二区三区四区激情| 精品国产sm最大网站| 色天天综合久久久久综合片| 激情综合五月婷婷| 亚洲一区在线观看免费| 久久久久久夜精品精品免费| 欧美日韩在线一区二区| 国产99久久久久久免费看农村| 午夜欧美一区二区三区在线播放| 国产网红主播福利一区二区| 欧美日韩高清一区二区三区| 成人理论电影网| 久久精品久久99精品久久| 一区二区三区四区视频精品免费 | av中文一区二区三区| 天堂精品中文字幕在线| 国产精品久久久久久久久果冻传媒 | 日韩欧美一区电影| 91丝袜美女网| 国产激情一区二区三区桃花岛亚洲| 无码av免费一区二区三区试看| 中文字幕在线免费不卡| 久久久久久久久久久电影| 欧美精三区欧美精三区| 97se亚洲国产综合在线| 国产99精品在线观看| 国产一区二区三区av电影| 午夜不卡在线视频| 亚洲免费资源在线播放| 国产精品毛片大码女人| 久久蜜桃一区二区| 精品日韩一区二区| 欧美精品xxxxbbbb| 欧美日本韩国一区二区三区视频| 97精品国产97久久久久久久久久久久 | 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 欧美日韩久久久久久| 欧美在线你懂的| 色又黄又爽网站www久久| 国产毛片精品视频| 国产乱一区二区| 狠狠色狠狠色综合日日91app| 美女视频黄久久| 美女性感视频久久| 另类小说视频一区二区| 国模套图日韩精品一区二区| 精品一区二区三区在线观看| 国产在线视频一区二区| 国产在线不卡一区| 粉嫩一区二区三区性色av| 国产成人综合视频| 国产成人免费网站| 不卡一区二区三区四区| 91在线播放网址| 91精品福利视频| 欧美日产国产精品| 欧美一级一区二区| 久久久久久久免费视频了| 中文子幕无线码一区tr| 日本在线播放一区二区三区| 午夜精品福利一区二区蜜股av | 日韩av网站免费在线| 美国精品在线观看| 国产真实乱子伦精品视频| 国产成人亚洲综合色影视| 不卡一区二区三区四区| 色狠狠一区二区三区香蕉| 欧美色男人天堂| 91精品国产综合久久久久久漫画 | 欧美日韩免费电影| 欧美一区二区福利在线| 久久精品男人的天堂| 国产精品电影一区二区三区| 亚洲一区二区三区四区在线| 天天综合网天天综合色| 国精产品一区一区三区mba桃花 | 3d成人h动漫网站入口| 日韩三级视频中文字幕| 国产日韩精品一区二区三区| 一区二区三区.www| 卡一卡二国产精品 | 亚洲亚洲精品在线观看| 狠狠色伊人亚洲综合成人| jlzzjlzz亚洲女人18| 91精品在线免费| 中文字幕av一区二区三区| 亚洲国产精品久久久久秋霞影院 | 国产欧美日韩综合| 一区二区三区在线视频免费| 九九久久精品视频| 色婷婷av一区二区三区大白胸 | 9191久久久久久久久久久| 久久久99久久精品欧美| 亚洲最大成人网4388xx| 国产精品18久久久久久久网站| 欧美在线一区二区| 国产色婷婷亚洲99精品小说| 亚洲高清免费观看高清完整版在线观看| 久久精品国产99国产| 91黄色免费网站| 久久综合网色—综合色88| 亚洲www啪成人一区二区麻豆| 岛国一区二区三区| 日韩一区二区三区观看| 亚洲欧美另类久久久精品2019| 国产一区二区在线电影| 欧美日韩国产综合一区二区| 日韩经典中文字幕一区| 色综合天天综合网国产成人综合天 | 国产精品久久久久久一区二区三区| 午夜在线电影亚洲一区| 懂色一区二区三区免费观看| 日韩欧美在线网站| 亚洲一区二区视频在线观看| 99久久精品费精品国产一区二区| 精品国产乱码久久久久久夜甘婷婷 | 精品少妇一区二区三区 | 亚洲六月丁香色婷婷综合久久| 国产一区二区三区最好精华液| 3d动漫精品啪啪1区2区免费| 洋洋成人永久网站入口| 99精品国产视频| 国产精品三级av在线播放| 国产精品影视在线观看| 精品国产一区a| 久久成人av少妇免费| 欧美一区二区视频观看视频| 亚洲成人激情综合网| 欧洲亚洲精品在线| 一区二区三区蜜桃| 在线视频综合导航| 亚洲女同女同女同女同女同69| 成人ar影院免费观看视频| 国产精品久久毛片| 99久久99久久久精品齐齐| 中文字幕第一区二区| 成人动漫视频在线| 国产精品美女久久久久久久| av在线一区二区| 亚洲人成人一区二区在线观看| 99久久精品费精品国产一区二区| 中文字幕欧美一| 91福利区一区二区三区| 一区二区三区欧美视频| 欧美日韩高清一区二区| 麻豆免费看一区二区三区| 日韩欧美国产一区二区三区| 久久国产精品露脸对白| 久久久高清一区二区三区| 成人高清伦理免费影院在线观看| 奇米888四色在线精品| 精品盗摄一区二区三区| 国产成人精品亚洲午夜麻豆| 亚洲特黄一级片| 欧美亚洲综合色| 调教+趴+乳夹+国产+精品| 精品美女被调教视频大全网站| 国产成人亚洲精品青草天美| 亚洲欧洲另类国产综合| 在线观看免费亚洲| 美女视频黄久久| 中文字幕欧美国产| 欧美亚洲愉拍一区二区| 久久99热这里只有精品| 国产精品午夜久久| 欧美色视频在线| 国产在线播放一区| 亚洲色图都市小说| 欧美一级高清大全免费观看|