0 引 言
隨著技術(shù)的發(fā)展,上世紀(jì)90年代初期出現(xiàn)了FP—GA(Field Programmahie Gate Array),這是一種比較復(fù)雜的可編程邏輯器件。就當(dāng)時(shí)的情況而言,工程師們必須了解各種邏輯器件的特性,再將邏輯器件組合成電路圖,一個(gè)簡(jiǎn)單的邏輯電路,也許需要數(shù)十個(gè)分散的TTL器件組合成的一塊電路板。用VHDL語(yǔ)言完成需要的功能模塊的設(shè)計(jì)和仿真是一種集多種優(yōu)點(diǎn)于一身的方法,例如它的保密性強(qiáng)、資源占用量相對(duì)少等,因此對(duì)這種設(shè)計(jì)方法進(jìn)行研究,并與其他設(shè)計(jì)方法進(jìn)行比較,為以后自主研發(fā)產(chǎn)品做出必要的準(zhǔn)備。
目前在數(shù)字電路設(shè)計(jì)中,F(xiàn)PGA發(fā)揮著越來(lái)越重要的作用。從簡(jiǎn)單的接口電路設(shè)計(jì)到復(fù)雜的狀態(tài)機(jī),甚至系統(tǒng)級(jí)芯片,F(xiàn)PGA所扮演的角色已經(jīng)不容忽視。它的可編程特性帶來(lái)了電路設(shè)計(jì)的靈活性,縮短了產(chǎn)品上市的時(shí)間。
隨著網(wǎng)絡(luò)的快速發(fā)展,信息安全越來(lái)越引起人們的關(guān)注,加密技術(shù)作為信息安全的利器,正發(fā)揮著重大作用。通過在硬件設(shè)備中添加加密功能,可使存儲(chǔ)和傳輸?shù)臄?shù)據(jù)具有較高的安全性。傳統(tǒng)的加密工作是通過在主機(jī)上運(yùn)行加密軟件實(shí)現(xiàn)的,這種方法除占用主機(jī)資源外,其運(yùn)算速度較硬件加密要慢,密鑰以明文的方式存儲(chǔ)在程序中,或者以加密的方式存儲(chǔ)在文件或數(shù)據(jù)庫(kù)中,重要數(shù)據(jù)會(huì)在某一時(shí)刻以明文形式出現(xiàn)在計(jì)算機(jī)的內(nèi)存或磁盤中,安全性較差。而硬件加密是通過獨(dú)立于主機(jī)系統(tǒng)外的硬件加密設(shè)備實(shí)現(xiàn)的,所有關(guān)鍵數(shù)據(jù)的存儲(chǔ)、運(yùn)算都通過硬件實(shí)現(xiàn),不占主機(jī)資源、速度快、安全性較高。
采用可編程邏輯門陣列FPGA具體實(shí)現(xiàn)加密功能,設(shè)計(jì)者自己可以對(duì)芯片內(nèi)部單元進(jìn)行配置,設(shè)計(jì)比較靈活,只需改變配置就可實(shí)現(xiàn)安全不同的功能,大大縮短了設(shè)計(jì)周期和開發(fā)時(shí)間,同時(shí)經(jīng)過優(yōu)化可以達(dá)到較高的性能。另外,有多種EDA開發(fā)軟件支持FPGA的設(shè)計(jì),因而用FPGA器件進(jìn)行開發(fā)研制其自由度較大。在進(jìn)行數(shù)據(jù)傳輸?shù)臅r(shí)候,不僅要保證高速的數(shù)據(jù)傳輸,還要保證數(shù)據(jù)傳輸?shù)姆(wěn)定與完整,因此本電路要重點(diǎn)解決數(shù)據(jù)在加密過程中產(chǎn)生的脈沖現(xiàn)象,使最終能得到較好的加密數(shù)據(jù)輸出波形。
1 FPGA加密技術(shù)算法
大多數(shù)通信系統(tǒng)都采用數(shù)據(jù)流密碼保護(hù)相關(guān)的信息,如圖1所示。利用X0R函數(shù)模2的特性,純文本P可以在接收器端重構(gòu),這是因?yàn)椋?/p>
對(duì)于XOR LFSR,存在全是零字的可能性,但是這種情況應(yīng)該永遠(yuǎn)也不會(huì)出現(xiàn)。如果循環(huán)是從非零字開始的,則循環(huán)長(zhǎng)度總是2t一1。通常,如果FGPA是在全零字狀態(tài)被喚醒,就會(huì)更加方便地使用“鏡像”或翻轉(zhuǎn)的LFSR電路。如果全零字是一種正確模式,并且生成了精確的轉(zhuǎn)置序列,就需要用一個(gè)“非XOR”或XNOR門代替XOR門。
LFSR仿真局部放大圖如圖2所示。其中時(shí)鐘周期為10 ns,當(dāng)LFSR通過所有可能的位模式時(shí),生成的最大序列長(zhǎng)度為63。其中elk為時(shí)鐘,z為L(zhǎng)FSR寄存器中的內(nèi)容,y為L(zhǎng)FSR的輸出。
2 基于FPGA的二進(jìn)制數(shù)字通信平臺(tái)
為了更加清晰地展現(xiàn)FPGA的加密過程,本文將為FPGA加密過程搭建一個(gè)基于FPGA的二進(jìn)制數(shù)字通信平臺(tái)。通過這一平臺(tái),可以實(shí)現(xiàn)數(shù)字信號(hào)的加密、解密過程,也能更加深入地了解FPGA器件的有關(guān)功能以及VHDL的編程方法。
2.1 FSK調(diào)制通信平臺(tái)設(shè)計(jì)
FSK信號(hào)的產(chǎn)生方法主要有兩種:第一種方法是用二進(jìn)制基帶矩形脈沖去調(diào)制一個(gè)調(diào)頻器,使其輸出兩個(gè)不同頻率的碼元。這種方法產(chǎn)生的調(diào)頻信號(hào)是相位連續(xù)的,雖然實(shí)現(xiàn)方法簡(jiǎn)單,但頻率穩(wěn)定度不高,同時(shí)頻率轉(zhuǎn)換速度不能做得太快,但是其優(yōu)點(diǎn)是由調(diào)頻器所產(chǎn)生的FSK信號(hào)在相鄰碼元之間的相位是連續(xù)的。第二種方法是用一個(gè)基帶脈沖控制的開關(guān)電路去選擇兩個(gè)獨(dú)立頻率源的振蕩作為輸出,由于是獨(dú)立的頻率源,所以信號(hào)頻率穩(wěn)定度可以做的很高并且沒有過渡頻率,它的轉(zhuǎn)換速度快,波形好。
FSK調(diào)制方框圖如圖3所示。
來(lái)源:現(xiàn)代電子技術(shù)