www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]安全認(rèn)證系統(tǒng)中嵌入U(xiǎn)SB接口技術(shù)

USB(Universal Serial Bus)通用串行總線(xiàn)是計(jì)算機(jī)與其外圍設(shè)備通信的一種總線(xiàn)標(biāo)準(zhǔn),是近年來(lái)應(yīng)用在PC領(lǐng)域的新型接口技術(shù)。它的熱拔插、即插即用、連接簡(jiǎn)單、高帶寬、可總線(xiàn)供電等優(yōu)點(diǎn)幾乎使其成為目前計(jì)算機(jī)外設(shè)的首選通信接口。世界上幾乎所有硬件廠(chǎng)商都生產(chǎn)實(shí)現(xiàn)USB協(xié)議的芯片。廠(chǎng)商們本著通用性原則,有的在芯片中嵌入了通用微處理器,如CYPRESS公司CY7C6××××系列和INTEL930××系列嵌入了8051系列微控制器;有的則提供了各種常用的與微處理器接口的方案,如NATIONAL SEMICONDUCTOR公司的USBN960× 系列提供了多路與非多路的8位并行接口、DMA并行接口及微波接口;PHILIPS公司的PDIUSBD11提供了I2C總線(xiàn)接口;三星公司研制的USB功能控制器則具有8位并行微處理器接口,并能以同步或者異步方式工作,這為使用USB協(xié)議作為通信接口提供了極大的方便。然而,將USB功能嵌入到一種用于安全認(rèn)證的處理系統(tǒng)中,則存在無(wú)法與處理器直接接口的問(wèn)題。本文探討了USB功能模塊和處理器接口技術(shù),并從其基本應(yīng)用角度出發(fā),給出了相應(yīng)的軟件流程。具有USB接口的安全認(rèn)證系統(tǒng)使用簡(jiǎn)單、便于攜帶、通信速度快。

1 USB功能模塊

    USB功能模塊是基于微處理器應(yīng)用實(shí)現(xiàn)USB協(xié)議的模塊。集成有低速USB收發(fā)器,配置有3個(gè)基于FIFO的端點(diǎn)、1個(gè)控制端點(diǎn)(8字節(jié))、2個(gè)可配置傳輸方向的中斷端點(diǎn)(8字節(jié))。每個(gè)端點(diǎn)都配置有相應(yīng)的控制與狀態(tài)寄存器,帶有一個(gè)8 位微處理器并行接口,可工作在同步或異步方式。

    USB功能模塊的操作對(duì)用戶(hù)來(lái)說(shuō)是完全透明的。包的譯碼、數(shù)據(jù)傳輸?shù)紽IFO、從FIFO發(fā)送數(shù)據(jù)和USB包的裝配都是自動(dòng)完成的。當(dāng)接收到一個(gè)正確數(shù)據(jù)包或發(fā)送成功一個(gè)數(shù)據(jù)包,即向MCU發(fā)出中斷請(qǐng)求,請(qǐng)求將數(shù)據(jù)取走或裝入下一個(gè)要發(fā)送的數(shù)據(jù)包。端點(diǎn)FIFO對(duì)USB來(lái)說(shuō)是緩存單元,對(duì)MCU來(lái)說(shuō)是一個(gè)I/O端口。微處理器通過(guò)訪(fǎng)問(wèn)USB寄存器來(lái)控制USB模塊的操作。

1.1 端點(diǎn)0控制/狀態(tài)寄存器

    D0:OUT_PKT_RDY  FIFO裝有一個(gè)有效數(shù)據(jù)包,USB將其置1,產(chǎn)生中斷,MCU寫(xiě)D6為1,清除D0。

    D1:IN_PKY_RDY USB成功發(fā)送完一個(gè)數(shù)據(jù)包,清D1時(shí)產(chǎn)生中斷。

    D2:SENT_STALL 控制交換因違反協(xié)議而終止,USB置D2,產(chǎn)生中斷。

    D3:DATA_END MCU裝了最后一個(gè)數(shù)據(jù)包到FIFO,置D3,與此同時(shí),置D1。MCU卸載完FIFO最后一個(gè)數(shù)據(jù)包,清D0,置D3。對(duì)于0長(zhǎng)度的數(shù)據(jù)相,MCU卸載完SETUP數(shù)據(jù)包之后,清D0=0,置 D3=1。USB清D3時(shí)產(chǎn)生中斷。

    D4:SETUP_END  在DATA_END(D3)置位之前,控制傳輸結(jié)束,USB置D4,產(chǎn)生中斷。

    D5:SEND_STALL  如果譯碼為一個(gè)無(wú)效的令牌,MCU置D5,與此同時(shí),清D0,USB發(fā)STALL給當(dāng)前的控制傳輸,MCU寫(xiě)D5=0,結(jié)束STALL條件。

    D6:SERVICED_OUT_PKY_RDY  MCU寫(xiě)D6=1以清除D0。

    D7:SERVICED_SETUP_END  MCU寫(xiě)D7=1以清除D4。

1.2 USB功能模塊的訪(fǎng)問(wèn)時(shí)序

    USB功能模塊的I/O接口可工作在同步或異步方式,本文采用同步方式。其對(duì)MCU訪(fǎng)問(wèn)的讀寫(xiě)時(shí)序要求如圖1(a)、(b)所示。

    寫(xiě)時(shí)序:地址至少要維持兩個(gè)時(shí)鐘周期,并且要先于數(shù)據(jù)一個(gè)有效時(shí)鐘周期,以便將FIFO的寫(xiě)指針選通至RAM寫(xiě)地址端口。當(dāng)寫(xiě)信號(hào)有效時(shí),存儲(chǔ)器寫(xiě)使能信號(hào)有效,寫(xiě)之后一個(gè)時(shí)鐘周期FIFO指針?biāo)⑿?。地址有效時(shí),片選高有效。

 讀時(shí)序:一旦地址有效,存儲(chǔ)器輸出使能有效。地址至少維持兩個(gè)時(shí)鐘周期,前一個(gè)周期將FIFO的讀指針選通至RAM的讀地址端口,因此數(shù)據(jù)比地址晚一個(gè)時(shí)鐘周期出現(xiàn)在數(shù)據(jù)總線(xiàn)上。當(dāng)讀信號(hào)有效時(shí),MCU將總線(xiàn)上的數(shù)據(jù)讀走,與此同時(shí),FIFO的指針?biāo)⑿?。地址有效時(shí),片選高有效。

2 安全認(rèn)證系統(tǒng)

    系統(tǒng)中采用了具有加解密功能的處理器。處理器采用棧式結(jié)構(gòu),具有焦點(diǎn)聚合的低功耗內(nèi)總線(xiàn)結(jié)構(gòu)和超標(biāo)量指令結(jié)構(gòu)與多種尋址方式等特點(diǎn),能高速高效地處理數(shù)據(jù)。嵌入有RSA和DES模塊,能對(duì)發(fā)送和接收的數(shù)據(jù)進(jìn)行實(shí)時(shí)RSA算法或三重DES算法的加密和解密。系統(tǒng)具有8位地址總線(xiàn),16位數(shù)據(jù)位寬的并行接口,其I/O訪(fǎng)問(wèn)時(shí)序如圖2所示。從圖2可以看出,I/O訪(fǎng)問(wèn)在一個(gè)時(shí)鐘周期內(nèi)完成。 [!--empirenews.page--]

3 硬件設(shè)計(jì)

    將USB接口嵌入到安全認(rèn)證系統(tǒng)中,從圖1和圖2可以看出,二者的時(shí)序不匹配,不能直接連接,因此在硬件上要進(jìn)行時(shí)序匹配設(shè)計(jì),其硬件原理如圖3所示。首先將地址和片選信號(hào)展寬一個(gè)周期。對(duì)于寫(xiě)時(shí)序,將寫(xiě)信號(hào)往后延遲一個(gè)時(shí)鐘周期,即能滿(mǎn)足寫(xiě)時(shí)序要求;對(duì)于讀時(shí)序,因?yàn)樽x信號(hào)有效時(shí),數(shù)據(jù)必須已出現(xiàn)在數(shù)據(jù)總線(xiàn)上。從圖1(a)可看出,FIFO的數(shù)據(jù)在地址有效一個(gè)時(shí)鐘周期后才出現(xiàn)在數(shù)據(jù)總線(xiàn)上,也就是說(shuō),微處理器必須先給出一個(gè)周期的地址,然后讀信號(hào)有效,才能得到正確的結(jié)果。為解決這個(gè)問(wèn)題,采取了讀FIFO時(shí),先寫(xiě)一次FIFO,緊接著讀FIFO。但此時(shí)要將寫(xiě)信號(hào)屏蔽掉,以免影響FIFO的狀態(tài)。因此設(shè)立一個(gè)讀控制端口,讀FIFO時(shí),將其置1,其余時(shí)刻清零。假如MCU要從FIFO讀取8個(gè)字節(jié),則程序如下:

TMOV Z,  01H         //讀控制端口98置1

     ZOUT      98H     

     MOV       I, 7           

     TMOV      MD,   bmRequestType //讀FIFO的數(shù)據(jù)到bmRequestType[...]

LX1: ZOUT      FIFO0

     ZIN       FIFO0   

     MOV       T, Z

     MOV       T, MD  

     MOV       I, T

     TMOV      [I], T

     MOV       T, MD

     INC 

     MOV       MD, T

     NEXT      LX1

     TMOV      Z, 00H    //數(shù)據(jù)讀完,98端口清0;

     ZOUT      98H

4 軟件設(shè)計(jì)

    USB系統(tǒng)通過(guò)一個(gè)列舉過(guò)程來(lái)識(shí)別和配置一個(gè)新接入的USB設(shè)備,這個(gè)過(guò)程分5步來(lái)完成:

    (1)用默認(rèn)0地址取得設(shè)備描述;

    (2)設(shè)置設(shè)備地址;

    (3)用新地址取得設(shè)備描述;

    (4)取得配置描述;

    (5)設(shè)置配置。 [!--empirenews.page--]

    列舉過(guò)程由控制傳輸來(lái)實(shí)現(xiàn)。控制傳輸有三種類(lèi)型:

    控制讀      SETUP-IN-IN-IN……OUT  

    控制寫(xiě)      SETUP-OUT-OUT-OUT……IN  

    無(wú)數(shù)據(jù)相    SETUP-IN

    通信開(kāi)始時(shí),PC首先發(fā)SETUP包,SETUP包是8個(gè)字節(jié)的命令包。當(dāng)USB接收完8個(gè)字節(jié)的命令,即向MCU發(fā)出中斷請(qǐng)求,MCU讀取這8個(gè)字節(jié),對(duì)其進(jìn)行分析。當(dāng)USB設(shè)備給PC發(fā)數(shù)據(jù)時(shí),執(zhí)行控制讀操作;當(dāng)PC要給USB設(shè)備輸出數(shù)據(jù)時(shí),執(zhí)行控制寫(xiě)操作。輸入或輸出數(shù)據(jù)時(shí),數(shù)據(jù)包的最大傳送字節(jié)為8字節(jié)。 

    執(zhí)行控制寫(xiě)操作時(shí),當(dāng)USB將接收到的數(shù)據(jù)包寫(xiě)到了FIFO時(shí),OUT_PKT_RDY標(biāo)志位置1。MCU查詢(xún)標(biāo)志位,讀取數(shù)據(jù)。當(dāng)MCU讀空FIFO數(shù)據(jù),即將OUT_PKT_RDY標(biāo)志位清0;當(dāng)MCU讀完了最后一個(gè)數(shù)據(jù)包時(shí),將DATA_END標(biāo)志位置1, 告知USB控制寫(xiě)操作完成。

    執(zhí)行控制讀操作時(shí),當(dāng)MCU寫(xiě)了一個(gè)數(shù)據(jù)包到FIFO時(shí),將IN_PKT_RDY標(biāo)志位置1,USB成功發(fā)送完這個(gè)數(shù)據(jù)包時(shí)將IN_PKT_RDY標(biāo)志位清0,MCU查詢(xún)此標(biāo)志位,裝入下一個(gè)數(shù)據(jù)包。當(dāng)MCU裝完最后一個(gè)數(shù)據(jù)包,即將DATA_END標(biāo)志位置1,告知USB控制讀操作完成。

    無(wú)數(shù)據(jù)相接收到SETUP包即告控制傳輸結(jié)束,MCU讀完SETUP數(shù)據(jù)即將OUT_PKT_RDY標(biāo)志位清0,并將DATA_END標(biāo)志位置1。其列舉過(guò)程的軟件實(shí)現(xiàn)流程如圖4所示。

 

該方案已在PC上通過(guò)驗(yàn)證。具有USB接口的安全認(rèn)證系統(tǒng),通信速度快、便于攜帶、使用方便,插入PC的USB接口即可。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險(xiǎn)積極籌備個(gè)人養(yǎng)老金的產(chǎn)品設(shè)計(jì)和系統(tǒng)開(kāi)發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產(chǎn)品,推動(dòng)商業(yè)養(yǎng)老保險(xiǎn)、個(gè)人養(yǎng)老金、專(zhuān)屬商業(yè)養(yǎng)老保險(xiǎn)等產(chǎn)品供給。 搭養(yǎng)老政策東風(fēng) ...

關(guān)鍵字: 溫度 BSP 東風(fēng) 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎(chǔ)單元,承載著生存與活動(dòng)的最基本功能。而對(duì)于理想空間的解構(gòu)意義卻在物理性容器之外,體現(xiàn)出人們對(duì)于空間和生活深層關(guān)系的思考,同時(shí)也塑造著人與空間的新型連接...

關(guān)鍵字: 溫度 BSP 智能化 進(jìn)程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績(jī)預(yù)告。今年前三季度,公司預(yù)計(jì)實(shí)現(xiàn)營(yíng)業(yè)收入7.54億元至8.33億元,同比增長(zhǎng)60.24%至77.03%;歸母凈利潤(rùn)預(yù)計(jì)為1.73億...

關(guān)鍵字: 電子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經(jīng)濟(jì)和信息化局發(fā)布2022年度第一批北京市市級(jí)企業(yè)技術(shù)中心創(chuàng)建名單的通知,諾誠(chéng)健華正式獲得"北京市企業(yè)技術(shù)中心"認(rèn)定。 北京市企業(yè)技...

關(guān)鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國(guó)際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國(guó)軟件定義存儲(chǔ)及超融合市場(chǎng)研究報(bào)告》,報(bào)告顯示:2022年上半年浪潮超融合銷(xiāo)售額同比增長(zhǎng)59.4%,近5倍于...

關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團(tuán)成立60周年的紀(jì)念日。趁著首都銀行集團(tuán)成立60周年與首都銀行(中國(guó))在華深耕經(jīng)營(yíng)12年的“大日子”,圍繞作為外資金融機(jī)構(gòu)對(duì)在華戰(zhàn)略的構(gòu)想和業(yè)...

關(guān)鍵字: 數(shù)字化 BSP 供應(yīng)鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會(huì)社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國(guó)際物流有限公司(Nipp...

關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國(guó)進(jìn)出口商品交易會(huì)("廣交會(huì)")于"云端"開(kāi)幕。本屆廣交會(huì)上高新技術(shù)企業(yè)云集,展出的智能產(chǎn)品超過(guò)140,...

關(guān)鍵字: 中國(guó)智造 BSP 手機(jī) CAN

要問(wèn)機(jī)器人公司哪家強(qiáng),波士頓動(dòng)力絕對(duì)是其中的佼佼者。近來(lái)年該公司在機(jī)器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開(kāi)發(fā)的機(jī)器人會(huì)后空翻,自主爬樓梯等。這不,波士頓動(dòng)力又發(fā)布了其機(jī)器人組團(tuán)跳男團(tuán)舞的新視頻,表演的機(jī)器人包括...

關(guān)鍵字: 機(jī)器人 BSP 工業(yè)機(jī)器人 現(xiàn)代汽車(chē)

南京2022年10月17日 /美通社/ -- 日前《2022第三屆中國(guó)高端家電品牌G50峰會(huì)》于浙江寧波落幕,來(lái)自?xún)砂儆嗝袠I(yè)大咖、專(zhuān)家學(xué)者共同探討了在形勢(shì)依然嚴(yán)峻的當(dāng)下,如何以科技創(chuàng)新、高端化轉(zhuǎn)型等手段,幫助...

關(guān)鍵字: LINK AI BSP 智能家電

嵌入式教程

6897 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉