基于CycloneII和MSP430的網絡數據加密實現
3 系統(tǒng)硬件設計
該系統(tǒng)硬件設計由單片機,FPGA和El接121等組成,如圖3所示。單片機用于輸入用戶初始密鑰;FPGA負責密鑰流產生以及加解密;E1接口實現數據流的發(fā)送和接收,完成HDB3碼和TTL電平之間的轉換,實現通信接口單元和協(xié)議數據處理單元之間的全雙工通信。
由于通信鏈路采用E1標準,該系統(tǒng)設計的外部數據鏈路接121采用E1接口,選用接口器件DS21348。DS21348支持El和T1線接口單元,通過寄存器設置選擇E1線接口單元。DS21348可配置為硬件模式,完成HDB3到TTL、TTL到HDB3的電平轉換,時鐘同步、數據信號格式轉換以及數據幀處理。該系統(tǒng)可并行處理兩路數據,一路加密,一路解密,實現全雙工通信。
由于TI公司的MSP430系列微處理器平臺具有低功耗和小體積等特點,適合便攜式應用場合,所以單片機采用MSP430系列,并通過SPI接口實現與FPGA的數據通信。單片機外接一鍵盤,用于輸入初始密鑰??紤]到用戶輸入密鑰位數不能很多,可設置簡短的密鑰,并在單片機內部擴展至算法所需的位數,然后通過單片機SPI接口傳送至FGPA。SPI接口共4條信號線:串行時鐘(SCK),主機輸出/從機輸入(MOSI),主機輸入/從機輸出(MISO),從機片選(SS)。SPI接口可配置為主或從模式。設計配置為主模式。當單片機向FPGA傳輸命令或數據時,應用SPIO模式。當片選信號丙拉低,在每個時鐘(SCK)的上升沿發(fā)送數據,無需FPGA向單片機輸人數據,所以不使用MISO數據線。片選信號SS與FP-CA的RAM的使能相連,控制數據讀入。當用戶輸人初始密鑰后,經過數據擴展,與算法選擇數據通過SPI接口傳送至FPGA。SPI接口時序如圖4所示。
FPGA采用CycloneII系列中的EP20F256C6,該器件是低成本架構FPGA,可提供多達18 752個邏輯單元.152個用戶IO,239 616 bit的存儲位,密度超過CycloneI FPGA的3倍,完全滿足系統(tǒng)設計需要。CycloneII FPGA內部的邏輯資源可實現復雜應用。CycloneII器件采用的低成本串行配置器件,這種串行配置器件最大可提供64 Mbit的nash存儲器。所以,采用EP20F256C6可高效完成系統(tǒng)核心算法,有效節(jié)約成本。其內部算法由VHDL語言編程實現。主要程序模塊:加解密算法模塊(A5/1和W7)、數據存儲模塊、同步產生模塊、同步檢測模塊。加密和解密各有一套獨立的模塊集合。其中A5/1算法模塊的VHDL代碼如下:
pos機相關文章:pos機原理
評論