基于加密USB2.0接口芯片的設(shè)計(jì)及驗(yàn)證
該模塊實(shí)現(xiàn)了符合USB2.0 規(guī)范的數(shù)據(jù)處理以及不同的外設(shè)與計(jì)算機(jī)的互連和數(shù)據(jù)通 信。 該模塊的主要功能包括:
(1) 完全支持 USB2.0 規(guī)范,提供全速模式和高速模式,其數(shù)據(jù)率分別為12Mbit/s 和 480Mbit/s。
(2) 支持 WISHBONE 接口電路和該模塊之間采用DMA 方式進(jìn)行數(shù)據(jù)通信。
(3) 模塊的掛起/恢復(fù)功能。 該模塊結(jié)構(gòu)如圖2 所示。其中。PHY 模塊負(fù)責(zé)將數(shù)據(jù)發(fā)送到與USB 連接器相連的計(jì)算 機(jī),或接收來(lái)自計(jì)算機(jī)的數(shù)據(jù);UTMI(數(shù)據(jù)通用收發(fā)宏單元接口)與PL(協(xié)議層)模塊及內(nèi)部 數(shù)據(jù)存儲(chǔ)器、控制寄存器相連負(fù)責(zé)保持通信數(shù)據(jù)的格式符合USB2.0 規(guī)范中的協(xié)議格式; WISHBONE(主接口電路)是內(nèi)部數(shù)據(jù)存儲(chǔ)器、控制寄存器與外部設(shè)備之間的通信橋梁。
2.1.2 AES 模塊原理
該模塊負(fù)責(zé)將USB 模塊接收并解包的數(shù)據(jù)進(jìn)行加密然后將加密后的數(shù)據(jù)存入外部存儲(chǔ)器或通過WISHBONE 接口電路送到外圍設(shè)備中。
該模塊結(jié)構(gòu)圖如圖3 所示。它主要包括數(shù)據(jù)位寬變換模塊和AES 加密單元。在USB 模 塊數(shù)據(jù)接收和處理的位寬為8,而AES 加密模塊中,明文和密鑰的位寬為128,所以在USB 模塊將接收來(lái)的數(shù)據(jù)包解包后所獲得的數(shù)據(jù)不能直接加密,需要進(jìn)行位寬調(diào)整后才可以加 密。數(shù)據(jù)位寬變換模塊的功能就是將PL 解包后的8 位數(shù)據(jù)連接成128 位后再送入AES 加密 單元;AES 加密單元將送入的128 位明文與密鑰存儲(chǔ)器中的密鑰進(jìn)行十輪AddRoundkey、 SubBytes、ShiftRows、MixColumns 變換后完成明文加密,并將加密后的數(shù)據(jù)(密文)送入外 部存儲(chǔ)器或通過WISHBONE 接口電路送到外圍設(shè)備中。
2.2 性能分析
本文采用Stratix 系列的EP1S10F484C5 芯片對(duì)該系統(tǒng)進(jìn)行驗(yàn)證。
2.2.1 USB2.0 模塊的性能分析
下表為USB 模塊綜合后的性能參數(shù):
2.2.2 AES 模塊的性能分析
當(dāng)輸入信息={32 43 f6 a8 88 5a 30 8d 31 31 98 a2 e0 37 07 34},輪數(shù)Nr=10,加 密密鑰={2b 7e 15 16 28 ae d2 a6 ab f7 15 88 09 cf 4f 3c},加密結(jié)果={39 25 84 1d 02 dc 09 fb dc 11 85 97 19 6a 0b 32},經(jīng)檢驗(yàn)該結(jié)果是正確的,完全符合AES 加密算法。
下表為AES 加密算法綜合后的數(shù)據(jù):
2.2.3 整個(gè)系統(tǒng)的性能分析
下表為系統(tǒng)綜合后的性能參數(shù):
由以上綜合結(jié)果分析可以得出,該系統(tǒng)在FPGA 上進(jìn)行驗(yàn)證是完全可行的,而且它的頻 率可以達(dá)到336.02MHz,完全可以實(shí)現(xiàn)USB480Mbits/s 的傳輸速度。
評(píng)論