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

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

?? usb_new_usb_cntrl_rtl.vhdl

?? 實現USB接口功能的VHDL和verilog完整源代碼
?? VHDL
?? 第 1 頁 / 共 2 頁
字號:
--------------------------------------------------------------------------------
--
--  Philips Electronics N.V.
--
--  Philips Semiconductors
--  Interconnectivity and Processor Peripheral group
--  Bangalore, India
--  All rights reserved. Reproduction in whole or in part is prohibited
--  without the written permission of the copyright owner.
--
--------------------------------------------------------------------------------
--
--  File            : usb_new_usb_cntrl_rtl.vhdl 
--  
--  Module          : USB controller
--
--  Project         : VPB bus interface to USB 1.1 device (USBFS22)
--
--  Author          :
--
--  Description     : The architecture of USB controller module
--                    This block has a interrupt controller and all the interface
--                    registers.
--
--  Contact address : sanjeev@blr.sc.philips.com
--
--------------------------------------------------------------------------------

library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.numeric_std.all;

library work;
use work.PCK_APB.all;

architecture RTL of USB_CNTRL is

constant N_intrbits : integer := 13;
signal Cmd_Code_Reg:           eleven_bits;
signal Cmd_Data_Reg:           byte;
signal Receive_Data_Reg:       four_bytes;
signal Tramsmt_Data_Reg:       four_bytes;
signal Intr_Status_Reg:        twenty_bits;
signal Intr_Enable_Reg:        fourteen_bits;
signal TxPkt_Lngth_Reg:        ten_bits; 
signal RxPkt_Lngth_Reg:        eleven_bits;
signal Usb_Cntrl_Reg:          six_bits;
signal Fiq_Sel_Reg:            three_bits;

signal Cmd_Code_Reg_Full:      one_bit;
signal Cmd_Data_Reg_full:      one_bit;
signal Receive_Data_Reg_Full:  one_bit;
signal Trnsmt_Data_Reg_Full:   one_bit;

signal Read_Enable:            one_bit;
signal Read_Enable_Q:          one_bit;
signal Write_Enable:           one_bit;
signal Write_Enable_Q:         one_bit;
signal CmdCodeEmpty_IntrSet:   one_bit;
signal CmdCodeValid_I:         boolean;
signal CmdDataFull_IntrSet:    one_bit; 
signal EndPaktOut_IntrSet:     one_bit;
signal EndPaktIn_IntrSet:      one_bit;
signal Tx_Pkt_End_I:           one_bit;
signal Tx_Pkt_End_Q:           one_bit;
signal Rx_Pkt_End_I:           one_bit;
signal Read_Enable_I:          one_bit;

begin
  Endpoint_Nr  <= to_integer(Wr_Data(5 downto 2)) when Write_Usb_Cntrl = '1' 
		  else to_integer(Usb_Cntrl_Reg(5 downto 2));
  RxRam_Read  <=  not Receive_Data_Reg_Full and Read_Enable;
  TxRam_Write <=  Trnsmt_Data_Reg_Full and Usb_Cntrl_Reg(1);
  DataToRam    <=  Tramsmt_Data_Reg;
  Read_Enable  <=  Wr_data(0) when Write_Usb_Cntrl = '1' else
		   Read_Enable_I;
  CmdCodeValid <= Cmd_Code_Reg_Full = '1' ;
  CommandCode  <= Cmd_Code_Reg;
  Tx_Pkt_End   <= Tx_Pkt_End_Q;
  Receive_Data_Reg <= DataFromRam;
  Rx_Pkt_End    <=  Rx_Pkt_End_I;

  process(clk)
    
    ------------------------------------------------------------------------------
    procedure  InterruptController is
      variable irqstatus_var:    one_bit;
      variable fiqstatus_var:    one_bit;
    begin
       -- Writing into Interrupt Enable Register
       if(Write_Intr_Enable = '1') then
          Intr_Enable_Reg <= Wr_Data(13 downto 0);
       end if;
       -- Clearing of the status Register
       if(Write_Intr_Clear = '1') then
          for i in 0 to N_intrbits loop
             if(Wr_Data(i) = '1') then
                Intr_Status_Reg(i) <= '0';
             end if;
          end loop;
       end if;
       -- Setting the interrupts for debug purposes
       if(Write_Intr_Set = '1') then
          for i in 0 to N_intrbits loop
             if(Wr_Data(i) = '1') then
                Intr_Status_Reg(i)   <= '1';
             end if;
          end loop;
       end if;
       
       -- Update status register when there is flag is set
       if(FrameIntr_Set = '1') then
          Intr_Status_Reg(IntrNo_Frame) <= '1';
       end if; 
       --if(UsbCoreIntrSet = '1') then
       --   Intr_Status_Reg(IntrNo_USB_Core) <= '1';
          -- Set '1' in Int Status register's EP status bits when an IN token is NAKed and
	  -- Buffer is full
          -- Bit  8: EP1 IN
          -- Bit  9: EP3 IN
          -- Bit 10: EP5 IN
          -- Bit 11: EP7 IN
       if(UsbEp0IntrSet = '1') then
          Intr_Status_Reg(IntrNo_USB_Ep0) <= '1';
       end if;
       if(UsbEp1IntrSet = '1') then 
          Intr_Status_Reg(IntrNo_USB_Ep1) <= '1';
	  if(FullBuffer_EP(1)(0)) then
	     Intr_Status_Reg(Ep1_NAK) <= '1';
          else
	     Intr_Status_Reg(Ep1_NAK) <= '0';
          end if;
       end if;
       if(UsbEp2IntrSet = '1') then
          Intr_Status_Reg(IntrNo_USB_Ep2) <= '1';
       end if;
       if(UsbEp3IntrSet = '1') then
          Intr_Status_Reg(IntrNo_USB_Ep3) <= '1';
	  if(FullBuffer_EP(3)(0)) then
	     Intr_Status_Reg(Ep3_NAK) <= '1';
          else
	     Intr_Status_Reg(Ep3_NAK) <= '0';
          end if;
       end if;
       if(UsbEp4IntrSet = '1') then
          Intr_Status_Reg(IntrNo_USB_Ep4) <= '1';
       end if;
       if(UsbEp5IntrSet = '1') then
          Intr_Status_Reg(IntrNo_USB_Ep5) <= '1';
	  if(FullBuffer_EP(5)(0)) then
	     Intr_Status_Reg(Ep5_NAK) <= '1';
          else
	     Intr_Status_Reg(Ep5_NAK) <= '0';
          end if;
       end if;
       if(UsbEp6IntrSet = '1') then
          Intr_Status_Reg(IntrNo_USB_Ep6) <= '1';
       end if;
       if(UsbEp7IntrSet = '1') then
          Intr_Status_Reg(IntrNo_USB_Ep7) <= '1';
	  if(FullBuffer_EP(7)(USBToggleBuffer_Out(7))) then
	     Intr_Status_Reg(Ep7_NAK) <= '1';
          else
	     Intr_Status_Reg(Ep7_NAK) <= '0';
          end if;
       end if;
       if(UsbDevIntrSet = '1') then
          Intr_Status_Reg(IntrNo_USB_Dev) <= '1';
       end if;
       
       --end if;
       if(CmdCodeEmpty_IntrSet = '1') then
          Intr_Status_Reg(IntrNo_CmdCodeReg_Empty) <= '1'; 
       end if;    
       if(CmdDataFull_IntrSet = '1') then
          Intr_Status_Reg(IntrNo_CmdDataReg_Full) <= '1'; 
       end if;     
       if(EndPaktOut_IntrSet = '1') then
          Intr_Status_Reg(IntrNo_OUT_EndOfPacket) <= '1';
       end if;
       if(EndPaktIn_IntrSet = '1') then
          Intr_Status_Reg(IntrNo_IN_EndOfPacket) <= '1';
       end if;   
       irqstatus_var := '0';
       
       -- Select FIQ interrupt from Frame_Interrupt, EP6_Interrupt and Ep7_Interrupt
       -- depending on the flag that is set in Fiq_Sel_Reg
       case Fiq_Sel_Reg is
          when "001" => 
               fiqstatus_var := Intr_Status_Reg(0) and Intr_Enable_Reg(0);
               for i in 1 to N_intrbits loop
                   irqstatus_var := irqstatus_var or (Intr_Status_Reg(i) and Intr_Enable_Reg(i));
               end loop;
          when "010" =>
               fiqstatus_var := Intr_Status_Reg(7) and Intr_Enable_Reg(7);
               for i in 0 to 6 loop
                   irqstatus_var := irqstatus_var or (Intr_Status_Reg(i) and Intr_Enable_Reg(i));
               end loop;
               for i in 8 to N_intrbits loop
                   irqstatus_var := irqstatus_var or (Intr_Status_Reg(i) and Intr_Enable_Reg(i));
               end loop;
          when "100" =>
               fiqstatus_var := Intr_Status_Reg(8) and Intr_Enable_Reg(8);
               for i in 0 to 7 loop
                   irqstatus_var := irqstatus_var or (Intr_Status_Reg(i) and Intr_Enable_Reg(i));
               end loop;
               for i in 9 to N_intrbits loop
                   irqstatus_var := irqstatus_var or (Intr_Status_Reg(i) and Intr_Enable_Reg(i));

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本亚洲三级在线| 粉嫩一区二区三区在线看| 97精品久久久午夜一区二区三区| 日韩avvvv在线播放| 免费欧美高清视频| 日本不卡一区二区三区| 日韩电影在线一区| 六月丁香综合在线视频| 极品美女销魂一区二区三区免费| 国产乱人伦精品一区二区在线观看| 青青草伊人久久| 九九视频精品免费| 国产一区二区视频在线| 成人黄色一级视频| 91麻豆国产自产在线观看| 91小视频在线观看| 欧美麻豆精品久久久久久| 精品久久人人做人人爽| 欧美激情一区二区三区在线| 中文字幕中文字幕一区二区 | 欧美高清激情brazzers| 欧美一区二区三区四区五区| 欧美成人精品3d动漫h| 中文久久乱码一区二区| 最新久久zyz资源站| 亚洲电影中文字幕在线观看| 蜜桃av一区二区三区电影| 成人av网站在线观看| 欧美巨大另类极品videosbest| 精品国产免费久久| 一二三四区精品视频| 蜜臀精品一区二区三区在线观看| 成人开心网精品视频| 欧美日韩国产系列| 亚洲国产精品ⅴa在线观看| 亚洲午夜久久久久久久久电影院| 激情文学综合插| 色天使久久综合网天天| 久久久不卡影院| 婷婷综合久久一区二区三区| 成人一级黄色片| 欧美高清性hdvideosex| 亚洲日本va在线观看| 国产在线乱码一区二区三区| 欧美三级韩国三级日本三斤| 久久精品一区二区| 日韩中文字幕亚洲一区二区va在线 | 美女在线视频一区| 91美女在线看| 久久久国产精华| 日本欧美在线观看| 欧美私人免费视频| 亚洲欧洲性图库| 高清在线观看日韩| 日韩三级免费观看| 日韩精品一卡二卡三卡四卡无卡| www.欧美色图| 国产精品美女久久久久久久久久久 | 国产偷国产偷亚洲高清人白洁| 亚洲丰满少妇videoshd| 色婷婷久久综合| 中文字幕在线不卡视频| 国产福利一区二区三区视频在线 | 美女国产一区二区| 欧美猛男男办公室激情| 亚洲最新在线观看| 欧美主播一区二区三区美女| 日韩一区欧美一区| 风流少妇一区二区| 欧美韩国日本一区| 豆国产96在线|亚洲| 国产午夜精品一区二区三区嫩草| 国内精品国产三级国产a久久| 欧美一区二区私人影院日本| 日本大胆欧美人术艺术动态| 欧美精品在线视频| 日本亚洲电影天堂| 日韩精品一区二区在线观看| 久国产精品韩国三级视频| 欧美一区二区三区视频免费 | 久久久久久免费网| 国产精品一区二区久久不卡 | 国产亚洲欧美一区在线观看| 精品无人区卡一卡二卡三乱码免费卡| 日韩视频永久免费| 精品一区二区三区免费| 久久精品亚洲精品国产欧美kt∨| 国产99精品国产| 国产精品毛片大码女人| 在线免费不卡电影| 视频在线观看一区二区三区| 久久中文字幕电影| 97aⅴ精品视频一二三区| 亚洲综合在线电影| 8x8x8国产精品| 国产精品自在在线| 综合久久综合久久| 欧美一区永久视频免费观看| 国产一区在线精品| 亚洲日本成人在线观看| 欧美日本视频在线| 国产福利一区二区三区| 亚洲一区免费视频| 精品久久久久久综合日本欧美| 成人在线视频一区| 视频一区二区不卡| 国产精品另类一区| 67194成人在线观看| 国产99久久精品| 日韩国产一二三区| |精品福利一区二区三区| 日韩一区二区三区观看| 成人自拍视频在线观看| 天天综合网 天天综合色| 欧美高清在线精品一区| 欧美日韩亚洲国产综合| 国产99久久久久久免费看农村| 亚洲成人午夜电影| 国产精品美女一区二区三区| 日韩欧美成人一区二区| 91香蕉视频黄| 成人一区在线观看| 国产主播一区二区| 视频精品一区二区| 亚洲精品国产第一综合99久久| 久久综合九色综合97婷婷| 欧美视频一区二区| 成人动漫一区二区在线| 九九热在线视频观看这里只有精品| 亚洲男同1069视频| 国产视频一区在线观看 | 国产精品乱码妇女bbbb| wwwwxxxxx欧美| 在线不卡a资源高清| 欧洲一区二区三区在线| thepron国产精品| 国产一区二区三区高清播放| 欧美日本精品一区二区三区| 亚洲综合久久久| 天天综合天天综合色| 91麻豆精品国产91久久久| 91一区二区三区在线观看| 国产精品自拍网站| 国产一区二区精品久久| 狠狠色狠狠色综合| 蜜臂av日日欢夜夜爽一区| 午夜视频一区在线观看| 一区二区三区**美女毛片| 亚洲人成在线观看一区二区| 椎名由奈av一区二区三区| 亚洲欧美中日韩| 综合分类小说区另类春色亚洲小说欧美| 国产亚洲成aⅴ人片在线观看 | 久久亚洲一区二区三区明星换脸 | 成人app下载| 成人av在线观| 色88888久久久久久影院野外| 99天天综合性| 在线视频一区二区免费| 欧美优质美女网站| 欧美精品在线一区二区三区| 91精品国产91热久久久做人人| 日韩精品一区国产麻豆| 久久久久久久精| 国产精品国产自产拍高清av| 1区2区3区欧美| 亚洲aaa精品| 另类专区欧美蜜桃臀第一页| 国产传媒日韩欧美成人| 成人av电影在线观看| 欧洲在线/亚洲| 日韩欧美综合在线| 国产视频视频一区| 一片黄亚洲嫩模| 麻豆91免费看| jlzzjlzz亚洲女人18| 91国偷自产一区二区使用方法| 欧美精品第1页| 国产日本欧美一区二区| 亚洲精品国产精品乱码不99| 蜜臀av性久久久久av蜜臀妖精| 国产精品一区二区在线观看网站| 99久久久无码国产精品| 欧美精品v国产精品v日韩精品| 久久久久99精品一区| 一区二区三区电影在线播| 麻豆精品在线观看| 91免费在线看| 精品美女一区二区| 亚洲免费av观看| 国产美女久久久久| 欧美日韩一区三区四区| 国产欧美中文在线| 亚洲午夜羞羞片| 成人精品国产一区二区4080| 欧美精品日韩一区| 亚洲女人小视频在线观看| 国内精品久久久久影院薰衣草| 色香色香欲天天天影视综合网| 久久亚洲免费视频|