在线中文-在线在线ccc66-在线永久免费观看的毛片-在线永久免费观看的a站视频-久久精品最新免费国产成人-久久精品综合一区二区三区

Rss & SiteMap

曙海教育集團論壇 http://www.bjzhda.cn

曙海教育集團論壇
共2 條記錄, 每頁顯示 10 條, 頁簽: [1]
[瀏覽完整版]

標(biāo)題:基于DSP的PCIJMC2000計算機數(shù)據(jù)加密卡設(shè)計

1樓
wangxinxin 發(fā)表于:2010-11-20 10:20:48

Design of Data Encryption Card PCIJMC2000 Based on DSP

ABSTRACT The Computer Data Encryption card PCIJMC2000 en/decrypts data with DSP and FPGA. PCIJMC2000 can process data at a speed of 20Mbit/s. It provides a convenient way for us to update encryption algorithm by applying hardware and software technology. And, it makes the encryption code more safely. We can take DSP to realize fast encryption algorithm because of its highly parallelism, application-specific hardware logic, and application-specific instructions. PCI transaction and DSP processing of data can take place simultaneously for its dual-access RAM and host port interface. And, the time taken for interruption almost can be ignored because of deep buffer technology.

Key Words deep buffer;parallel processing;encrypt card;DSP (digital signal processor);data encryption

摘要: 計算機數(shù)據(jù)加密卡PCIJMC2000采用DSP與FPGA實現(xiàn)數(shù)據(jù)加、解密。PCIJMC2000能提供達40Mbit/s的數(shù)據(jù)處理速度,采用硬件和軟件相結(jié)合的加密方法,可方便升級算法,并使加密程序代碼更加安全可靠。DSP具有高度的并行結(jié)構(gòu)、專用硬件邏輯以及許多專用指令,可以實現(xiàn)快速加密算法,DSP的雙訪問RAM和主機并行接口可以實現(xiàn)數(shù)據(jù)PCI傳送和DSP處理同時進行,采用深度緩沖技術(shù)使花在主機中斷上的時間幾乎可以忽略不計。

關(guān) 鍵 詞:深度緩沖; 并行處理; 加密卡; DSP(數(shù)字信號處理器); 數(shù)據(jù)加密

隨著現(xiàn)代通信技術(shù)的發(fā)展,企業(yè)及個人越來越多地依賴于互聯(lián)網(wǎng)進行信息交互。互聯(lián)網(wǎng)是一個開放式系統(tǒng),數(shù)據(jù)一旦上了互聯(lián)網(wǎng)很容易受到各種有意或無意的入侵,這無論是對于越來越重視個人隱私保護的個人,還是對于越來越重視知識產(chǎn)權(quán)保護的公司企業(yè)都是無法容忍的,這就需要保密通信 。另外,保存在計算機中的數(shù)據(jù)也容易受到非法竊取,這就需要對長期保存的重要文件數(shù)據(jù)進行加密。因此,加密技術(shù)受到了越來越多的關(guān)注。

密碼技術(shù)主要包括兩部分[1][2]:即基于數(shù)學(xué)的密碼理論和技術(shù)(包括公鑰密碼、分組密碼、密鑰管理等)和非數(shù)學(xué)的密碼理論和技術(shù)。目前廠商所采用的加密方法可主要分為兩大類:軟加密和硬加密。軟加密即是用純軟件方法來實現(xiàn)數(shù)據(jù)加密,主要有密碼方式、軟件自校驗方式、許可證管理方式、鑰匙盤方式等。所謂硬加密就是通過硬件和軟件結(jié)合的方式來實現(xiàn)對數(shù)據(jù)的加密。特別是采用了獨特的噪聲技術(shù)后,可以在發(fā)送端發(fā)出的網(wǎng)絡(luò)數(shù)據(jù)里加入由物理硬件產(chǎn)生的噪聲,接收端依據(jù)通信協(xié)議自動濾除噪聲,或者由物理噪聲硬件產(chǎn)生隨機密鑰。

加密卡是結(jié)合軟件加密與硬件加密的特點與優(yōu)勢,能用來在互聯(lián)網(wǎng)上實現(xiàn)保密通信,或?qū)τ嬎銠C文件數(shù)據(jù)加解密。目前國內(nèi)加密卡的原理是將加密算法固化在加密卡上的FPGA中,而由主機承擔(dān)加密運算工作如非平衡算法等。這樣做有幾個不足:1、主機因為運行復(fù)雜的加密算法程序而使主機系統(tǒng)性能下降;2、加密算法程序在主機上運行使加密程序代碼的保密性下降,易被破解;3、主機每次處理的數(shù)據(jù)僅為32~128bit,造成中斷頻繁,大量時間花在了中斷處理上,所以整個加密密過程速度僅達10Mbit/s[1]。為了改進這些不足,我們進行了加密卡的DSP實現(xiàn)研究,并成功開發(fā)了新一代加密卡——基于DSP的PCIJMC2000。

1 方案設(shè)計

DSP(Digital Signal Processor)是數(shù)字信號處理專用芯片,具有高度的并行結(jié)構(gòu),專用硬件邏輯以及許多專用指令,可以實現(xiàn)快速加密算法,DSP的片上雙訪問RAM(DARAM)和主機并行接口(HPI)可以實現(xiàn)數(shù)據(jù)PCI傳送和DSP處理同時進行[2,3]。PCIJMC2000方案設(shè)計如圖1所示。

DSP的片上DARAM可以在一個機器周期內(nèi)被訪問兩次(兩次讀操作,或一次讀一次寫操作),作為DSP的數(shù)據(jù)空間用作接收和發(fā)送緩沖區(qū),片外RAM作為DSP的程序空間用于暫存運行的DSP加密程序代碼。

由于采用了兩對緩沖區(qū),主機對緩沖區(qū)的讀寫和DSP對緩沖區(qū)數(shù)據(jù)的處理可以同時進行,理論上加密速度可以達到主機讀寫緩沖區(qū)速度(HPI傳送速度)的一半和DSP處理速度(含DSP讀寫操作)二者中較慢的一個。DSP的主頻為100MHZ-p.htm" target="_blank" title="100MHZ貨源和PDF資料">100MHZ,HPI的時鐘為DSP主頻的1/5,所以HPI的傳送速度為 100M×8/5=160 Mbit/s,加密卡的最高處理速度為HPI傳送速度的一半即80M bit/s。當(dāng)DSP的片外RAM延時不大于7ns,且平均每個字的處理時間不超過20個DSP時鐘周期時,則DSP的處理速度不低于HPI的傳送速度的二分之一,因此加密卡可望獲得接近于40Mbit/s的處理速度。

在這種方案中,加密算法(分組密碼算法)固化在卡上的FPGA中,DSP運行軟件加密算法(非平衡算法等),主機的工作僅僅是讀寫操作,不再參與復(fù)雜的加密運算,因此由加密卡與主機組成的整個加密系統(tǒng)能獲得真正意義上的高速處理。

500)this.style.width=500;" border=0>

圖1 PCIJMC2000設(shè)計方案

2 方案實現(xiàn)

實現(xiàn)該方案的原理框圖如圖2所示:

500)this.style.width=500;" border=0>

圖2 PCIJMC2000原理框圖

PCIJMC2000分為四個模塊:PCI接口、DSP、加密硬件和CPLD。加密算法芯片承擔(dān)硬件加密工作,加密算法程序代碼放在訪問延時較長的FPASH中,啟動時由bootloader搬到訪問延時很短的RAM上運行以實現(xiàn)軟件加密,通過向FLASH灌入不同的加密算法程序,就可以實現(xiàn)不同的加密算法。物理噪聲芯片提供密鑰所需的噪聲,CPLD實現(xiàn)組合邏輯電路和時序邏輯電路功能,擔(dān)當(dāng)控制器的角色。

芯片選擇:

DSP:TI公司的TMS320VC5409,工作頻率100MHz;

PCI接口:TI公司的PCI2040,工作頻率33MHz[4];

CPLD:Xilinx公司的XC9572XL,延時7ns;

RAM:Cypress公司的CY7C1021V33,延時7ns;

加密算法芯片:SSF10B,反熔絲FPGA實現(xiàn)的SSF10密碼算法芯片,分組模式為64位,支持分組密碼算法的ECB、CBC、CBF和OFB工作模式。

DSP電源采用TI公司的DSP專用電源芯片TPS73HD318,輸入5V,輸出1.8V和3.3V。

由于現(xiàn)在PC機的PCI插以5V為主,所以我們設(shè)計的PCIJMC2000采用5V信號環(huán)境。PCI插槽提供3.3V和5V電源。電路中需要用到的電源有三個:

1.8V作DSP的核電壓CVDD;

3.3V和5V作為電路中各芯片的工作電壓。

為了合理分配電源,我們將PCI插槽提供的5V和3.3V電源全部加以利用,5V和3.3V直接提供給PCIJMC2000上各芯片使用,另外將5V電源送到DSP的電源芯片TPS73HD318上,其輸出的1.8V電源供給DSP作核電壓。

PCI2040及DSP的所有未用的輸入端都必須用上拉電阻接到有效邏輯電平上,以保證這些輸入端處于穩(wěn)定的高電平而不會因懸空而發(fā)生電平漂移。

3 系統(tǒng)調(diào)試

由于利用DSP實現(xiàn)加密卡是我們提出的新方法,現(xiàn)在還在開發(fā)階段,我們只能進行硬件測試。硬件測試工作主要有兩部分,一部分是DSP模塊,另一部分是PCI驅(qū)動測試。

3.1 DSP模塊調(diào)試[4][5]

為了測試PCIJMC2000上的DSP模塊,我們首先編寫了一個DSP程序并在軟件仿真器CCS1.2上調(diào)試通過。

給存儲器分配置的地址如下[3][4]:

數(shù)據(jù)空間: 片上DARAM 0000H~7FFFH,片外FLASH 8000H~FFFFH;

程序空間:片外RAM0000H~7FFFH;

該測試程序只是執(zhí)行讀寫操作,通過CCS的調(diào)試窗口觀察被寫的存儲器單元的內(nèi)容有無變化即可知道硬件電路是否完好。

測試程序經(jīng)CCS在DSK板子上調(diào)試通過后,我們再將硬仿真器接到PCIJMC2000的JTAG接口上。硬仿真器能夠正確識別PCIJMC2000上的DSP,運行測試程序,采用單步運行模式,CCS能夠向PCIJMC2000的DSP或片外存儲器寫入數(shù)據(jù)或讀取數(shù)據(jù)。

通過PCIJMC2000上的手動復(fù)位按鈕能夠復(fù)位DSP。

3.2 PCI驅(qū)動測試

為了測試DSP與主機之間的硬件電路,我們利用DriverWorks的向?qū)С绦駾river Wizard,編寫了一個簡單的Win98 PCI驅(qū)動程序。

PCI2040提供兩個地址空間資源:一個4K空間用于映射HPI的控制和狀態(tài)寄存器組,一個32K空間用于映射DSP的片上存儲器,這兩個地址空間均可以映射到主機存儲器空間或IO空間,我們將其全部映射到主機存儲器空間。

在框架程序的PcitodspDevice.cpp文件中,查找有“TODO”提示的地方,這是程序員需要添加具體功能代碼的位置。程序主要實現(xiàn)ReadFile()、WriteFile()這兩個重要的IRP調(diào)用。我們編寫的只是一個測試程序,目的是為了檢測硬件電路是否完好,只有一些讀寫操作,讀寫操作的位置為32K空間中前8K空間的一個字。由于DSP片上存儲器的前128個字為寄存器和Scratch-Pad RAM,所以讀寫操作應(yīng)從128以后開始,我們選取0x200單元。

修改并設(shè)置好程序中的參數(shù)后,編譯生成了.sys和inf文件。再對.inf文件進行修改,添加設(shè)備信息,如:設(shè)備名稱”數(shù)據(jù)加密卡”,驅(qū)動程序編譯完成。

由于windows98和windows2000支持即插即用,可以先關(guān)機,插入PCIJMC2002卡,然后開機。當(dāng)計算機啟動時,它會自動查找到PCI卡并提示裝入驅(qū)動程序,指定.sys和.inf文件的位置后,驅(qū)動程序會自動裝入,安裝完成。

安裝完成后,從加密卡的設(shè)備信息框中看到如下一些信息:

設(shè)備名稱:數(shù)據(jù)加密卡 中斷請求:09

內(nèi)存空間0:df009000-df009fff 內(nèi)存空間1:df000000-df007fff

設(shè)備名稱是在.inf文件中手動加入的信息,中斷請求和內(nèi)存空間是計算機自動分配的。

主機將DSP的片上存儲器映射到0xdf000000開始的連續(xù)的32K內(nèi)存中(實際只能用前面8K,后面24K未用),將PCI2040的控制與狀態(tài)寄存器組空間映射到0xdf009000開始的連續(xù)的4K內(nèi)存中。

我們第一次讀入DSP的0x200單元的內(nèi)容為0。向該單元寫入后,再讀取該單元的內(nèi)容變成了0xa0a0(在WriteFile()函數(shù)中輸出的值)。

PCIJMC2000硬件系統(tǒng)調(diào)試全部通過。

4 結(jié)論

本文作者創(chuàng)新點:1、利用DSP的片上存儲器設(shè)計了深度緩沖結(jié)構(gòu),實現(xiàn)了數(shù)據(jù)傳輸和處理并行進行,提高了加密流程處理速度;2、設(shè)計了加密算法代碼運算與主機的脫離,不僅使主機僅承擔(dān)數(shù)據(jù)傳輸任務(wù),而且使加密軟件代碼對主機隱蔽,屏蔽了用戶,有效防止了對加密算法代碼的惡意竊取,使得加密程序代碼保密性很高。3、通過對加密卡上FLASH芯片的寫入可方便實現(xiàn)在線升級。

共2 條記錄, 每頁顯示 10 條, 頁簽: [1]

Copyright © 2000 - 2009 曙海教育集團
Powered By 曙海教育集團 Version 2.2
Processed in .03125 s, 2 queries.
主站蜘蛛池模板: 亚洲男人天 | 一区免费在线观看 | 欧美日韩视频在线 | 伊人99热| 丁香婷婷在线观看 | 中文国产成人精品久久96 | 亚洲视频一区在线播放 | 羞羞免费观看视频 | 久久精品久久精品 | 久久国产精品高清一区二区三区 | 羞羞免费观看视频 | 真实国产网爆门事件在线 | 亚洲蜜臀| 欧美日韩免费在线 | 偷拍电影网站 | 永久免费看mv网站入口 | 最新激情网站 | 国产成人精品男人的天堂下载 | 午夜一级毛片免费视频 | 六月丁香深爱六月综合激情 | 99在线免费观看视频 | 波多野结衣免费在线 | 在线观看国产精品入口 | 中文字幕一级毛片 | 96av.com| 四虎永久在线精品波多野结衣 | 久久成人免费视频 | 国产小视频在线看 | 日本人免费xxx在线视频 | 欧美成人看片一区二区三区 | 一级片免费视频 | 在线观看黄色 | 国产精品资源在线观看 | 国产在线观看网站 | 日本aⅴ精品一区二区三区久久 | 波多野结衣在线视频观看 | 综合久久网 | 自拍亚洲| 亚洲国产一区二区三区亚瑟 | 五月综合色婷婷影院在线观看 | 水蜜桃视频网站 |