USB2.0接口和基于ARM核的SOC系統的應用已經非常廣泛,特別在電子消費類領域。包含USB2,0接口的ARM系統則更是市場的需求。本文介紹一種基于ARM核的USB2,0接口IP(AHB_USB2.0)的設計,主要對其中的串行接口引擎(SIE)的設計進行討論。 該 AHB_USB2.0 IP核支持USB2.0協議,并兼容USB1.1協議;支持AMBA2.0協議和UTMI 1.05協議。該IP核一側通過UTMI接口或ULPI接口的PHY與USB2.0主機端進行通信;另一側則通過AHB總線與ARM相連。 AHB_USB2.0 IP核在硬件上分為三個大模塊:ULPI模塊(ULPI)、串行接口引擎(SIE)模塊和AHB總線接口模塊(AHB)。ULPI模塊實現了UTMI接口轉ULPI接口。串行接口引擎(SIE)模塊為USB2.0的數據鏈路層協議處理模塊,為整個IP核的核心部分,進一步分為四個子模塊——GLC(全局控制模塊),PIE(PHY接口處理引擎),SIF(系統接口邏輯)和EPB(端點緩沖模塊)。GLC模塊負責整個IP的復位控制,IP時鐘的開關提示等;PIE模塊負責處理USB的事務級傳輸,包括組包解包等;SIF模塊負責協議相關寄存器組和端點緩沖區的讀寫,跨時鐘域信號的處理和PIE所需的控制信號的產生;AHB模塊負責IP核與ARM通信和DMA功能的實現。 該IP核的軟件設計遵循USB協議,Bulk Only協議和UFI協議,由外掛ARM實現USB設備命令和UFI命令的解析,并執行相應的操作。設計了IP核與ARM之間的多種數據傳輸方法,通過軟件實現常規數據讀寫訪問、內部DMA或外部DMA等多種方式的切換。 本IP已經通過EDA驗證和FPGA測試,并且已經在內嵌ARM核的FPGA系統上實現了多個U盤。這個FPGA系統的正確工作,證明了AHB_USB2.01P核設計是正確的。
標簽:
AHBUSB
ASIC
ARM
20
上傳時間:
2013-05-17
上傳用戶:qqoqoqo