新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于TMS320VC5410的DES加密系統設計

        基于TMS320VC5410的DES加密系統設計

        作者: 時間:2010-12-13 來源:網絡 收藏

        通過TMS320VC5410發送讀卡命令和所要讀取內容的地址(N=0,…,255)后,在CLK信號的作用下卡片將主存儲器中的數據按比特移至I/O 引腳發送至內存中。讀取數據完成后,額外的一個時鐘信號將使I/O引腳變為高阻狀態,卡片退出輸出模式等待接收新的指令,也可以用Break條件 (在CLK為低時,把RST信號由低電平變為高電平狀態)結束此次操作。

        f.JPG
        圖5顯示了TMS320VC5410對SLE5542卡片讀卡程序的調試結果,為了驗證讀卡功能的實現,系統讀取了卡片中的所有字節的內容。其中前8個字節為‘A2131091FFFF8115’為IC卡的廠商標識;之后地址8~20的13個字節全為‘FF’是寫保護區;地址21~26是6個字節的用戶代碼‘D27600000400’,之后又是5個字節的寫保護區;從地址32~255之間的數據是用戶數據區,可以在這些地址里存放加密系統的密鑰和其他的用戶信息。
        3.2 PC通信軟件設計
        3.2.1 MeBSP0的初始化配置
        首先通過SPCR1O=0x0000,SPCR20=Ox0000把RRST與XRST位設置為‘O’,使串口復位。設置PCR0=0x0BOC;采樣率由內部產生,接收與發送幀同步信號為低有效,時鐘上升沿發送數據、下降沿接收數據。其次通過接收控制寄存器RCR1O(子地址為02h)和 RCR20(子地址為03h)來對串口接收模式進行設置,令RCR10=0x0940;RCR20=0x0004;接收幀長度10字、每字16 bit,忽略除第一個幀同步后的其他幀同步信號。通過傳輸控制寄存器XCR10(子地址為04h)和XCR20(子地址為05h)來對DSP串口發送模式進行設置,令XCR10=0x0940;XCP20=0x0004;使數據的發送與接收模式一致。另外,采樣率發生器控制寄存器SRGR10(子地址為 06h)和SRGR20(子地址為07h)控制采用率發生器的工作模式。本系統中選擇PC機的串口工作波特率為38 400,采樣率發生器計算公式為:
        CLKGDV=CPU工作頻率/(16x波特率)-1
        由于TMS320VC5410工作頻率為100 MHz,因此CLKGDV=100 000 000/(16x38 400)-1=161,設置SRGR1=0x00A1,SRGR2=0x2000;最后通過SPCR1=0x0001,SRGR2=0x2000;對串口使能,處于可操作狀態,至此完成了McBSPO的初始化配置。
        3.2.2 數據格式的統一
        DSP通過McBSP0接收外界PC機數據采用中斷方式。這里為了實現TMS320VC5410同步串口與PC機異步串口通信時數據格式的統一,把 McBSP的1個16位字等效為PC機串口傳送的1個8N1模式數據(1個起始位+8個數據位+1個停止位)的1位。PC機串口每發送1個位的數據,DSP采樣16次暫存數據接收寄存器DRR10(地址為21h)中。例如PC機通過RS232串口傳送數據為‘1’,則DRR10經過16次采用后接收一個字的數據為‘FFFFh’,同理若前者后‘0’,則后者為‘0000h’。之后觸發McBSPO串口接收中斷,DSP執行中斷服務程序將DRR1O 中的有效數據(除去起始位和停止位)取走至內存中,并對計數器加1。當接收到一個完整的幀后,DSP置串口數據解碼標志位為‘1’,DSP開始運行解碼程序,將‘FFFFh’和‘0000h’分別等效為一個比特位‘1’和‘0’,從而恢復出原始的數據幀。
        當DSP對接收到的數據完成加密之后需要反饋輸出,TMS320VC5410串口數據向PC機發送的過程與數據接收的過程正好相反。每幀數據都需要進行串口編碼之后通過數據發送寄存器DXR1O(地址為23h)發出。即把8位有效數據中的‘0’編碼為‘0000h’,‘1’編碼為‘FFFFh’,按照從低位到高位的順序重新排列編碼后的數據,并在幀首和幀尾分別添加起始位‘0000h’和結束位‘FFFFh’,將每組10個數據作為一幀信號發出。

        g.JPG
        圖6顯示了本文設計的加密系統的實驗結果。通過PC機和RS-232串口發送字符‘11112222’的十六進制形式為‘3131313132323232’共64 bit,TMS320VC5410接收到64 bit明文數據后,通過讀取IC卡中的64 bit密鑰‘310000000000031’并對明文進行DES加密后,輸出密文的十六進制形式為‘96B466D634DE9A2D’。結果顯示系統工作穩定可靠,符合設計要求。

        4 結論
        本文采用SLE5542型IC卡存儲密鑰,TMS320VC5410中的McBSP引腳與卡片觸點連接并實現對卡片的應答復位和內容的讀取,同時通過RS2 32串口與個人PC機實時交換數據,接收PC機發送的明文并對其DES加密后反饋輸出。由于McBSP的工作機制是同步串口,把其當作通用I/O口和異步串口使用時必須注意內部寄存器的設置和輸入輸出方向的設定。經軟硬件調試,實驗結果表明該方案完全可以滿足大數據量的加密,合理使用了硬件資源,可以進一步升級擴展作為數據采集保密系統的加密模塊。

        本文引用地址:http://www.104case.com/article/156883.htm

        上一頁 1 2 3 4 下一頁

        關鍵詞: DSP

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 博罗县| 政和县| 永济市| 申扎县| 宜兰市| 罗田县| 凤翔县| 余庆县| 乌审旗| 厦门市| 蓝山县| 伊吾县| 中西区| 闻喜县| 汉沽区| 巴林左旗| 莲花县| 宁乡县| 长沙县| 江都市| 克山县| 阿拉善左旗| 海口市| 常宁市| 葫芦岛市| 祁连县| 汨罗市| 黑山县| 新竹县| 咸丰县| 葫芦岛市| 朝阳市| 广州市| 隆尧县| 巧家县| 扬中市| 宣恩县| 紫阳县| 广宗县| 河津市| 怀安县|