<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > U盤(pán)SoC的設計與實(shí)現

U盤(pán)SoC的設計與實(shí)現

作者: 時(shí)間:2013-05-16 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:設計和實(shí)現了SoC。本系統包括 CORE和已驗證過(guò)的CPU核、Nandflash、UDC_Control等模塊,模塊間通過(guò)總線(xiàn)進(jìn)行通信。其中 CORE為本文設計的重點(diǎn),用語(yǔ)言實(shí)現,同時(shí)并為此設計搭建了功能完備的Modelsim仿真環(huán)境,進(jìn)行了仿真驗證。
關(guān)鍵詞:;;;

隨著(zhù)便攜式設備的廣泛使用,移動(dòng)存儲設備被廣泛用于信息存儲和傳輸。在目前諸多存儲設備中,憑借其體積小、容量大、攜帶方便、支持熱插拔等諸多優(yōu)點(diǎn),得到了迅速的普及。而且隨著(zhù)USB技術(shù)的廣泛應用,在各種SoC系統中集成USB功能也成為一種必然趨勢。所以對SoC芯片中集成USB接口的研究開(kāi)發(fā),具有較高的實(shí)用價(jià)值。
文中通過(guò)分析USB協(xié)議,設計出了一種符合該協(xié)議的低速和全速的USB設備控制器,并將該控制器與8051CPU核,NandFlash,UDC_Control通過(guò)總線(xiàn)連接起來(lái),組成了一個(gè)U盤(pán)SoC系統,并對此U盤(pán)SoC系統加以仿真驗證。

1 系統的整體設計
現在的USB控制器主要有兩種:帶USB接口的單片機(MCU)和純粹的USB接口芯片。純粹的USB接口芯片僅處理USB通信,必須有一個(gè)外部微處理器來(lái)進(jìn)行協(xié)議處理和數據交換。帶USB接口的單片機從應用上又可以分成兩類(lèi),一類(lèi)是從底層設計專(zhuān)用于USB控制的單片機;另一類(lèi)是增加了USB接口的普通單片機,這類(lèi)USB控制器的最大好處在于開(kāi)發(fā)者對系統結構和指令集非常熟悉,開(kāi)發(fā)工具簡(jiǎn)單,但價(jià)格比較高,不利于產(chǎn)品升級和改型。

本文引用地址:http://dyxdggzs.com/article/159369.htm

c.JPG


根據上述情況,文中介紹了一種U盤(pán)SoC設計:將CPU和USB CORE通過(guò)UDC_Control模塊連接起來(lái),再加上NandFlash模塊,通過(guò)總線(xiàn)連接組成一個(gè)SoC系統。其整體框圖如下圖1所示。

2 模塊的詳細設計
2.1 USB CORE
此模塊為該設計的核心模塊,實(shí)現USB1.1總線(xiàn)接口層設備控制器的功能,是本文設計的重點(diǎn)。USB設備控制器的架構框圖如圖2所示,rxdp、rxdm為從主機發(fā)送過(guò)來(lái)的信號,txdp、txdm為USB模塊發(fā)送給主機的信號。其中MCU通過(guò)控制SIE來(lái)對USB設備進(jìn)行控制。如圖2所示,本設計分為6個(gè)模塊。下面分別介紹各個(gè)模塊。

d.JPG


2.1.1 rx模塊
rx模塊是總線(xiàn)接收模塊,實(shí)現USB數據傳輸接收物理層的功能,把串行的USB數據去掉數據包頭,進(jìn)行NRZI解碼,去掉填充位,并將串行的數據轉換成并行的8位數據。然后將數據送往下一模塊處理。本模塊又分為dpll、解碼和總線(xiàn)狀態(tài)監測模塊。如圖3所示。

e.JPG


dpll模塊用48 MHz的時(shí)鐘把總線(xiàn)上傳輸的時(shí)鐘和數據信號恢復出來(lái)。用48 MHz的時(shí)鐘對總線(xiàn)上的數據信號進(jìn)行采樣,以去掉抖動(dòng),然后產(chǎn)生總線(xiàn)信號電平變化的指示信號change信號,change信號的改變可控制采樣點(diǎn),從而保證數據信號的采樣點(diǎn)固定在每位數據信號的中央。
NRZI解碼模塊檢測到同步頭后,根據NRZI的原理,將rxdp和rxdp延后一拍的數據進(jìn)行同或操作,得到的數據經(jīng)過(guò)去填充位,串并轉換后,送入解包模塊。
總線(xiàn)狀態(tài)監測模塊監測總線(xiàn)的狀態(tài),置位suspend,resume,reset等狀態(tài)指示信號。若Idle時(shí)間超過(guò)3ms時(shí),就將suspend信號置高,在suspend狀態(tài)時(shí)檢測到總線(xiàn)信號變化時(shí),將resume信號置高,若se0時(shí)間超過(guò)2.5μs時(shí),就將reset信號置高。
2.1.2 解包模塊
本模塊接收從rx模塊送過(guò)來(lái)的并行數據,按照USB數據包協(xié)議規范對接收的數據進(jìn)行解釋?zhuān)祿鯟RC校驗,給出當前接收包的類(lèi)型,根據不同類(lèi)型的包的結構,從包中解出相應的信息送給下一模塊。
2.1.3 req_dec模塊
本模塊對setup階段USB的標準請求進(jìn)行解釋?zhuān)峁┖蚒SB請求相關(guān)的信號給SIE模塊,判斷funetion和endpoint的地址是否合法。若標準請求中對某個(gè)端點(diǎn)所請求的操作和預定的不符,則會(huì )產(chǎn)生錯誤信號。
2.1.4 SIE模塊
SIE(Serial Interface Engine)模塊是USB CORE的核心模塊,根據從解包模塊傳送過(guò)來(lái)的信號與從MCU傳送過(guò)來(lái)的接口握手信號,按照USB的相關(guān)協(xié)議,產(chǎn)生打包模塊的控制信號和MCU的控制信號,從而控制總線(xiàn)上的數據發(fā)送。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: U盤(pán) 片上系統 USB Verilog HDL

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>