《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業(yè)界動態(tài) > 安全認證系統(tǒng)中嵌入USB接口技術

安全認證系統(tǒng)中嵌入USB接口技術

2009-03-19
作者:伍云霞 孫繼平

??? 摘? 要: 探討了將USB接口嵌入到安全認證系統(tǒng)的解決方案,給出了硬件原理圖及計算機通過列舉過程識別和配置USB設備的軟件流程。?

??? 關鍵詞: USB? 接口技術? 安全認證

?

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

1 USB功能模塊?

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

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

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

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

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

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

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

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

??? D5:SEND_STALL? 如果譯碼為一個無效的令牌,MCU置D5,與此同時,清D0,USB發(fā)STALL給當前的控制傳輸,MCU寫D5=0,結束STALL條件。?

??? D6:SERVICED_OUT_PKY_RDY? MCU寫D6=1以清除D0。?

??? D7:SERVICED_SETUP_END? MCU寫D7=1以清除D4。?

1.2 USB功能模塊的訪問時序?

??? USB功能模塊的I/O接口可工作在同步或異步方式,本文采用同步方式。其對MCU訪問的讀寫時序要求如圖1(a)、(b)所示。?

??? 寫時序:地址至少要維持兩個時鐘周期,并且要先于數(shù)據(jù)一個有效時鐘周期,以便將FIFO的寫指針選通至RAM寫地址端口。當寫信號有效時,存儲器寫使能信號有效,寫之后一個時鐘周期FIFO指針刷新。地址有效時,片選高有效。?

?

?

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

2 安全認證系統(tǒng)?

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

?

?

3 硬件設計?

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

??? USB系統(tǒng)通過一個列舉過程來識別和配置一個新接入的USB設備,這個過程分5步來完成:?

??? (1)用默認0地址取得設備描述;?

??? (2)設置設備地址;?

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

??? (4)取得配置描述;?

??? (5)設置配置。?

??? 列舉過程由控制傳輸來實現(xiàn)。控制傳輸有三種類型:?

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

??? 控制寫??? ? SETUP-OUT-OUT-OUT……IN? ?

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

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

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

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

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

?

?

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

參考文獻?

1 SAMSUNG. USB Soft Core Full_Speed Function Controller?Core. 2000?

2 Cypress Semiconductor Corporation. Designing a Low_Cost?USB Mouse with the Cypress Semiconductor CY7C63000?USB Controller. 1997.

本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品夜夜夜| 亚洲精品网站在线播放gif| 欧美丰满高潮xxxx喷水动漫| 欧美一区视频在线| 亚洲专区一区| 中文av字幕一区| 在线视频精品一| 99re6这里只有精品视频在线观看| 亚洲第一主播视频| 欧美在线一级视频| 小黄鸭精品密入口导航| 午夜精品亚洲| 欧美一区成人| 久久成人免费网| 久久激五月天综合精品| 欧美专区一区二区三区| 久久国产精品一区二区三区四区| 欧美伊久线香蕉线新在线| 欧美尤物一区| 亚洲电影第1页| 亚洲国产精品精华液2区45| 久久精品一区二区三区四区 | 亚洲国产精品999| 亚洲二区三区四区| 亚洲精品韩国| 一区二区三区日韩欧美精品| 中文在线一区| 亚洲欧美国产视频| 久久国产精品久久久| 亚洲国产一区二区a毛片| 亚洲人精品午夜在线观看| 亚洲精品在线一区二区| 99国产精品一区| 亚洲综合欧美| 久久久久久久一区二区| 免费观看成人网| 欧美日韩精品一区二区三区四区 | 国内精品久久久久久久果冻传媒| 海角社区69精品视频| 在线看国产日韩| 91久久精品国产91性色| 一本久久综合| 午夜一区在线| 亚洲激精日韩激精欧美精品| 日韩亚洲一区二区| 午夜在线视频观看日韩17c| 久久久久成人精品| 欧美日本不卡| 国产日韩免费| 亚洲国产天堂久久国产91| 一区二区日韩免费看| 欧美中文字幕精品| 亚洲视频精品| 久久蜜桃资源一区二区老牛 | 91久久国产综合久久91精品网站| 一区二区三区av| 欧美在线播放一区| 欧美成人久久| 国产精品婷婷| 亚洲电影网站| 亚洲欧美在线磁力| 99re这里只有精品6| 欧美一区二区三区视频免费| 欧美成人免费在线观看| 国产精品久久网| 亚洲高清网站| 午夜精品久久久久久久99水蜜桃| 亚洲人成毛片在线播放| 亚洲欧洲99久久| 欧美黄色日本| 国产亚洲高清视频| 一区二区日韩精品| 亚洲福利国产| 性感少妇一区| 欧美日韩成人一区二区| 国内精品久久久久伊人av| 99在线精品免费视频九九视| 亚洲成人在线网| 香蕉亚洲视频| av72成人在线| 久久影院午夜片一区| 国产精品毛片在线| 亚洲三级影院| 亚洲电影第三页| 欧美在线视频免费| 欧美午夜电影在线| 91久久中文| 亚洲福利电影| 久久精品二区亚洲w码| 国产精品久久久久9999高清| 亚洲国产精品久久久| 欧美一区二区三区四区高清| 亚洲视频香蕉人妖| 欧美激情网友自拍| 国内精品模特av私拍在线观看| 亚洲午夜电影网| 一本色道久久综合狠狠躁篇怎么玩| 久久亚洲精品欧美| 国产婷婷精品| 午夜精品99久久免费| 亚洲欧美激情精品一区二区| 欧美日韩另类字幕中文| 91久久夜色精品国产九色| 亚洲国产精品久久久久秋霞影院 | 久久人人爽爽爽人久久久| 国产伦一区二区三区色一情| 在线一区二区日韩| 亚洲午夜精品久久久久久浪潮| 欧美大片免费看| 亚洲高清视频在线| 亚洲人体1000| 欧美超级免费视 在线| 在线成人小视频| 亚洲福利视频二区| 久久久久久久久岛国免费| 国产亚洲人成a一在线v站| 亚洲欧美在线免费| 久久se精品一区二区| 国产精品一区免费观看| 亚洲一区二区在线播放| 欧美亚洲视频在线观看| 国产精品一二| 午夜久久影院| 久久精品久久99精品久久| 国产日韩精品综合网站| 性做久久久久久久免费看| 欧美在线日韩精品| 国产视频自拍一区| 亚洲国产福利在线| 欧美成人按摩| 亚洲人www| 一区二区三区毛片| 国产精品久久久久毛片软件| 亚洲永久精品国产| 欧美在线一二三区| 国产在线精品一区二区夜色| 亚洲大片在线观看| 欧美黄色免费网站| 99国产精品视频免费观看| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 亚洲电影一级黄| 欧美国产精品久久| 日韩视频欧美视频| 亚洲欧美日韩天堂一区二区| 国产欧美日本一区视频| 羞羞色国产精品| 麻豆乱码国产一区二区三区| 亚洲激情亚洲| 亚洲制服av| 国产亚洲精品成人av久久ww| 亚洲第一视频| 欧美精品福利| 亚洲永久免费| 免费不卡在线观看| 99ri日韩精品视频| 久久aⅴ国产欧美74aaa| 在线播放日韩专区| 亚洲午夜在线| 国产精品一区二区在线观看不卡| 久久精品国产99精品国产亚洲性色 | 欧美 日韩 国产精品免费观看| 亚洲日本一区二区| 小辣椒精品导航| 1024国产精品| 亚洲午夜在线| 伊伊综合在线| 亚洲伊人色欲综合网| 狠狠色2019综合网| 亚洲网址在线| 激情综合色综合久久综合| 99天天综合性| 国产一区二区三区在线观看网站| 99精品黄色片免费大全| 国产美女诱惑一区二区| 亚洲美女区一区| 国产亚洲激情| 在线视频精品一| 精品1区2区| 午夜久久电影网| 亚洲国产欧美日韩精品| 欧美影片第一页| 亚洲精品视频在线观看网站| 久久狠狠亚洲综合| 日韩视频免费观看高清完整版| 久久精品在线| 夜夜爽99久久国产综合精品女不卡| 久久久久**毛片大全| 在线视频精品| 欧美—级a级欧美特级ar全黄| 亚洲欧美日韩国产一区二区| 欧美日韩国产一区二区三区地区| 欧美在线播放高清精品| 欧美手机在线视频| 亚洲激情一区二区| 国产麻豆午夜三级精品| 99国产一区二区三精品乱码| 狠狠色狠色综合曰曰| 午夜精品理论片| 99精品国产一区二区青青牛奶| 久久综合色综合88|