安全認證系統(tǒng)中嵌入USB接口技術
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)設置配置。
評論