新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于FPGA和VHDL的USB2.0控制器設計

        基于FPGA和VHDL的USB2.0控制器設計

        作者: 時間:2010-05-21 來源:網絡 收藏

          2 控制器實現

          控制器接口的信號框圖如圖3所示。存儲器采用標準的單口SRAM,其信號接口由32位數據線SRAM_DATA、15位地址線SRAM_ADDR及讀寫信號(SRAM_WE和SRAM_RD)組成,系統所需SRAM的容量為2 15×32bit=128KB。

        控制器接口的信號框圖

          而與微控制器之間的接口信號包括32位數據線DATA、18位地址線ADDR以及DMA請求和響應信號(DMA_REQ和DMA_ACK)。由于要支持到128KB,需要17位地址線,另外還需要一根地址線來選通SSRAM和USB控制器內部的寄存器,總共需要18根地址線addr[17:0]。定義如下:

          USB_RF_SEL = !addr[17];

          USB_MEM_SEL =addr[17];

          第18位地址addr[17]為高時選擇緩沖存儲器,否則選擇內部寄存器。地址addr[16:2]直接用于存儲器SSRAM的地址。

          2.1 UTMI接口

          UTMI接口信號包括:與發送數據相關的信號(TxValid、TxReady等),與接收數據相關的信號(RxActive、RxValid、RxError等)以及16位雙向數據線。

          在物理層,該控制器需要一個外部的USB收發器(Transceiver),本文采用的是Philips公司的ISP1501芯片。該芯片用作USB2.0的模擬前端,從USB電纜來的差分信號進行反轉不歸零碼(NRZI)解碼和位解填充轉換成16位并行數據;反之,16位并行數據通過一個差分驅動電路經過串行化、位填充和NRZI編碼輸出到USB電纜上。ISP1501通過管腳MODE0和MODE1決定收發器的工作模式,共有4種工作模式:MODE[1:0]為“00”時,收發器處于斷開狀態;為“01”時處于全速(Full Speed)模式(此時USB帶寬為12Mb/s);為“10”時是高速(High Speed)模式(此時USB最大帶寬是480Mb/s);為“11”時是HS chirp模式。

          UTMI接口通過譯碼MODE[1:0]來控制ISP1501在HS和FS之間轉變。

          If mode_hs='1'then

          MODE='10'

          Elsif mode_hs='0'then

          MODE='01'

          End if;



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 黔东| 且末县| 平泉县| 景东| 鹿泉市| 济阳县| 镇原县| 丰城市| 凤庆县| 鄂伦春自治旗| 颍上县| 郧西县| 祁东县| 云梦县| 福贡县| 神木县| 岑巩县| 云安县| 岗巴县| 黄平县| 临颍县| 鄂伦春自治旗| 五原县| 察雅县| 筠连县| 普陀区| 河北区| 大关县| 东宁县| 黎平县| 鲜城| 鄱阳县| 会泽县| 宝坻区| 金寨县| 弋阳县| 腾冲县| 白水县| 阿瓦提县| 平泉县| 太谷县|