




已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
摘要 摘要 本文是采用基于系統(tǒng)級(jí)描述語(yǔ)言s y s t e m c 設(shè)計(jì)流程的設(shè)計(jì)方法,對(duì)a e s 加密 算法i p 核設(shè)計(jì)的嘗試。研究在集成電路設(shè)計(jì)中,尤其是在中小型邛核設(shè)計(jì)領(lǐng)域, 引入s y s t e m c 的設(shè)計(jì)方法與用c 語(yǔ)言進(jìn)行系統(tǒng)描述的傳統(tǒng)設(shè)計(jì)方法的差別以及可 能遇到的問(wèn)題,探索s y s t e m c 在s o c 時(shí)代在設(shè)計(jì)中帶來(lái)的新的理念和變化。這里 僅限于對(duì)系統(tǒng)設(shè)計(jì)部分以及系統(tǒng)設(shè)計(jì)向r 1 l 設(shè)計(jì)的轉(zhuǎn)換,并不涉及s v s t e m c 的r t l 設(shè)計(jì),驗(yàn)證以及軟硬件協(xié)同設(shè)計(jì)方面的研究。 在設(shè)計(jì)過(guò)程中,采用正向設(shè)計(jì)方法,進(jìn)行系統(tǒng)整體結(jié)構(gòu)以及各個(gè)分模塊設(shè)計(jì), 系統(tǒng)級(jí)采用s y s t e m c 與c 語(yǔ)言,r t l 級(jí)采用v c r i l o gh d l 。最后的工作完成了a e s 算法i p 核的前端設(shè)計(jì),實(shí)現(xiàn)了3 種不同長(zhǎng)度密鑰的加解密功能。主要使用了a l t e r a 公司的q u a n u s1 1 5 0 集成開(kāi)發(fā)工具和在s t r a t i xi i 的f p g a 平臺(tái)進(jìn)行了即g a 綜合, 布局布線和時(shí)序仿真,達(dá)到了預(yù)期的效果。 在今后的工作中,希望能夠在此基礎(chǔ)上形成一套適合于實(shí)際情況使用的利用 s y s t e m c 這個(gè)新的系統(tǒng)級(jí)描述語(yǔ)言在l p 核設(shè)計(jì)過(guò)程中進(jìn)行系統(tǒng)設(shè)計(jì)以及向r t l 設(shè) 計(jì)轉(zhuǎn)換的方法,有效的縮短設(shè)計(jì)周期,提高開(kāi)發(fā)效率。 關(guān)鍵詞:s y s t 蛐c ,a e s ,s o c ,i p 核 a b s t f a c t 3 h lt h i sp a p e f ,w eu s et h en e w l yc o m eo u ts y s t 啪l e v e ld e s c r i p t i l a n g l l a g e , s y s t e m c ,t od e s i 鏟鋤l pc 0 r eb a do na e sc n c r y p t i o na l g 鰣t h m s t u d y i l i gt l l es u b j e c t , i nt h ei cd e s i g n 丘e l d ,e s p c c i a l l yi nt h cm i d d l e 柚ds m a l ls c a l ei p0 0 r ed e s i 驢,t h e d i 骶r e n c e sb e t w e e nu s i n gs y s t e m c 卸d 仃a d i t i o n a lcl 鋤g i l a 伊i ns y s t e md e s i g l lf l o w , t l l cp r o b l e m sw em a y b em e c t ,柚dt h cn c wc o n c c p t i o na l i dc h a n g e ss y s t e m ch a s b 咖g l ni ni l l es o ce 豫1 1 l e 咖d y i n g h c f ej u s tl i m i 剛i l lt l l ec o n v e r s i 0 丑f r o ms y s t 鋤 d e s i g l lt or 1 ld e s j 印,r e g a r m c s so fh a wt od or t ld e s i 印,v e r i f i c a t i o na l l de v 鋤t h e c o d e s i 薩0 f s o f t l v a r ea i l dh a r d w a r ew i 也s y s t e m c i i it h ed e s i g np r o c e s s ,w eu s et b p d 州nd e s i 驢n o wt 0a c h j e v et h ea r c h i t e c t u r e 越da l ls u b - m o d u l e sd e s i g n s y s t e m c 柚dca r ei n d u c e da ts y s t e ml c v e l ,l o g h d li su s c da tr 1 吃l e v e l n ef i n i a ld e s i 弘c 姐a c h i e v eb o t hc n c r y p ta n dd e c r y p t f i l n c t i o n sw i t l la 1 1t h et h r e cd i m 姍tk e yl e n g t h a l s o ,b 鶴eo f p g ap l a t f o 冊(cè)o fs 叫i x i i ,w i t ht h ei m e g m t e dd e s i g nt 0 0 lq u a n u s1 1 5 0 ,w ea c h i e v c dd e s j g nc o m p i l e ,p l a c c r o u t ea n dp o s ts i l n u l a t i o n i nt l l e 】a t e r w eh 叩et 0e s t a _ b l i s hap 陽(yáng)c t i c a lp l a t f o 珊b 鴰e do nt l l ea b o v ew o r ka l l d 6 n do u tan c ww a yt ou s es y s t e m cc f f 。c i i v e l yi nt h es y s t e md e s i g no fi pc o r ed e s i 印 f i e l da n dc o n v e r s i o nt oi ls h o n e nt h ed 髂i g nc i r d c 蛆dp r o m o t ee 髓c j e n c y k e y w o r d s :s y s t 哪c a e s , s o c , l pc o n 塑塑! 望! ;! 創(chuàng)新性聲明 本人聲明,所呈交的論文是我個(gè)人在導(dǎo)師指導(dǎo)下進(jìn)行的研究工作及取得的研 究成果。盡我所知,除了文中特別加以標(biāo)注和致謝中所羅列的內(nèi)容以外,論文中 不包含其他人已經(jīng)發(fā)表或撰寫過(guò)的研究成果;也不包含為獲得西安電子科技大學(xué) 或其它教育機(jī)構(gòu)的學(xué)位或證書而使用過(guò)的材料。與我一同工作的同志對(duì)本研究所 做的任何貢獻(xiàn)均已在論文中做了明確的說(shuō)明并表示了謝意。 申請(qǐng)學(xué)位論文與資料若有不實(shí)之處,本人承擔(dān)一切相關(guān)責(zé)任。 本人簽名: 關(guān)于論文使用授權(quán)的說(shuō)明 本人完全了解西安電子科技大學(xué)有關(guān)保留和使用學(xué)位論文的規(guī)定,即:研究 生在校攻讀學(xué)位期間論文工作的知識(shí)產(chǎn)權(quán)單位屬西安電子科技大學(xué)。本人保證畢 業(yè)離校后,發(fā)表論文或使用論文工作成果時(shí)署名單位仍然為西安電子科技大學(xué)。 學(xué)校有權(quán)保留送交論文的復(fù)印件,允許查閱和借閱論文;學(xué)??梢怨颊撐牡娜?部或部分內(nèi)容,可以允許采用影印、縮印或其它復(fù)制手段保存論文。 本學(xué)位論文屬于保密在年解密后適用本授權(quán)書。 本人聳名:疊z 幽日期生:皇2 = 三生 導(dǎo)師簽名:函邀 日期 第一章緒論 第一章緒論 1 1 集成電路設(shè)計(jì)發(fā)展現(xiàn)狀 目前隨著半導(dǎo)體工藝技術(shù)的發(fā)展,芯片設(shè)計(jì)已經(jīng)逐漸轉(zhuǎn)向系統(tǒng)集成芯片,也 就是s o c ( s y s t e m 佃( = l l i p ) 。s o c 是一個(gè)微小型系統(tǒng),將整個(gè)電子整機(jī)的功能集成 到一個(gè)芯片中。s o c 面向特定用戶,可以最大滿足嵌入式系統(tǒng)要求,提高整機(jī)系 統(tǒng)的性能,同時(shí)也可以降低功率消耗和芯片的面積以及縮短上市時(shí)間。尤其適合 數(shù)字化產(chǎn)品的開(kāi)發(fā),如手持設(shè)備、信息家電等,因此全球各個(gè)主要科技國(guó)家都積 極地投入研究。雖然目前s o c 的發(fā)展還處于初級(jí)階段,但是可以預(yù)見(jiàn),s o c 將是 微電子芯片技術(shù)進(jìn)一步發(fā)展的必然方向。1 9 9 9 年全球半導(dǎo)體市場(chǎng)規(guī)模為1 4 9 4 億美 元,其中s o c 比重占8 3 ,盡管2 0 0 1 年全球半導(dǎo)體市場(chǎng)業(yè)績(jī)大幅下滑,s o c 技 術(shù)的應(yīng)用卻是有增無(wú)減,在半導(dǎo)體市場(chǎng)中的比重仍然持續(xù)上升達(dá)到了1 2 9 ,預(yù) 計(jì)到2 0 0 5 年s o c 在全球半導(dǎo)體市場(chǎng)中的比率將上升至2 1 1 。實(shí)現(xiàn)s o c 有兩種做 法:一種是從a s s p 走向s o c ,另一種是將c p u 、d s p 放進(jìn)p u ) 或f p g a 中支持 用戶實(shí)現(xiàn)s o c 。不管采用哪種做法,必須解決的問(wèn)題是發(fā)展口( i n t e l l e c t u a l p r o p e n y ) 核或者取得i p 核使用權(quán)【1 1 。 s o c 設(shè)計(jì)離不開(kāi)坤核庫(kù),將廣泛的多功能p 核和客戶邏輯集成在一起,從而 可以滿足客戶產(chǎn)品開(kāi)發(fā)的需求。國(guó)外許多第三方m 核供應(yīng)商得到快速發(fā)展,他們 要么具有獨(dú)一無(wú)二,極具價(jià)值的口核,要么具有良好聲譽(yù)的i p 核庫(kù)。s o c 設(shè)計(jì)者 通過(guò)重用驗(yàn)證過(guò)的口核,不僅利用了最新的工藝技術(shù)優(yōu)勢(shì),而且減少了開(kāi)發(fā)周期 和風(fēng)險(xiǎn)。通過(guò)中間機(jī)構(gòu)廣泛匯集不同公司、不同類型的口核及其相關(guān)信息,用戶 可以以最少成本、在最短時(shí)間內(nèi)找到其可用的m 核;通過(guò)建設(shè)i p 核交易平臺(tái),可 以簡(jiǎn)化供應(yīng)商與客戶間的交易過(guò)程,節(jié)約售前成本,針對(duì)企業(yè)需求,了解產(chǎn)業(yè)發(fā) 展方向,匯聚充足的i p 核資源。 據(jù)權(quán)威機(jī)構(gòu)i cl n s i g h t s 近期發(fā)布的一份報(bào)告顯示,2 0 0 5 年,中國(guó)一舉超過(guò)美 國(guó)和日本,成為世界最大的集成電路( i c ) 消費(fèi)市場(chǎng)。報(bào)告指出,在2 0 0 5 年全球1 7 5 4 億美元的i c 消費(fèi)市場(chǎng)中,中國(guó)占據(jù)著約2 0 的份額,相當(dāng)于3 4 3 億美元的消耗總 量,整個(gè)i c 消費(fèi)市場(chǎng)在中國(guó)急劇擴(kuò)張。在我們國(guó)內(nèi),根據(jù)市場(chǎng)需求,從企業(yè)本身 能力出發(fā),充分發(fā)揮我國(guó)設(shè)計(jì)企業(yè)的設(shè)計(jì)優(yōu)勢(shì)力量,組織國(guó)內(nèi)的口核開(kāi)發(fā),加速 我國(guó)國(guó)產(chǎn)p 核的發(fā)展。建立強(qiáng)大的技術(shù)支持隊(duì)伍,或者與口核供應(yīng)商合作建立特 殊技術(shù)支持機(jī)構(gòu),以求能夠幫助客戶盡快解決p 核使用中的問(wèn)題,縮短 皿m e t o d c s i 弘和弧m c - t 0 _ m a r k e t 。成立專門的中立機(jī)構(gòu),整合現(xiàn)有大專院校、科 s y s t e m c 在a e s 算法m 核設(shè)計(jì)中的應(yīng)用 研院所和企業(yè)所擁有的i p 核資源,建立企業(yè)和研究機(jī)構(gòu)間的i p 核交換和共享體系, 也可以降低設(shè)計(jì)企業(yè)創(chuàng)業(yè)門檻,加快企業(yè)培育步伐。 在s o c 時(shí)代,人們迫切需要一種設(shè)計(jì)語(yǔ)言能夠單一的完成包括口核在內(nèi)的全 部設(shè)計(jì),能夠完成描述各種不同的抽象級(jí)別,能夠勝任軟硬件的協(xié)同設(shè)計(jì)和驗(yàn)證, 并且具有較快的仿真速度。s y s t 鋤c 正是在這一背景下出現(xiàn)的系統(tǒng)級(jí)描述語(yǔ)言,致 力于利用新的設(shè)計(jì)理念和設(shè)計(jì)方法解決s o c 時(shí)代面臨的挑戰(zhàn),并且由于其開(kāi)放性 以及得到業(yè)界一流公司的廣泛支持,已經(jīng)成為事實(shí)上的系統(tǒng)級(jí)描述語(yǔ)言標(biāo)準(zhǔn)。 隨著計(jì)算機(jī)和通信技術(shù)的不斷快速發(fā)展,用戶對(duì)信息的安全存儲(chǔ)、安全處理 和安全傳輸?shù)男枨笤絹?lái)越迫切,如何保護(hù)數(shù)據(jù)的安全,已經(jīng)影響到人們的日常生 活。加密技術(shù)是信息安全的核心和關(guān)鍵,通過(guò)加密數(shù)據(jù),提高數(shù)據(jù)傳輸?shù)陌踩裕?保證傳輸數(shù)據(jù)的完整性。分組加密以其速度快、易于標(biāo)準(zhǔn)化和和便于軟硬件實(shí)現(xiàn) 等特點(diǎn),成為信息與網(wǎng)絡(luò)安全中實(shí)現(xiàn)數(shù)據(jù)加密、數(shù)字簽名、認(rèn)證及密鑰管理的核 心體制。然而,現(xiàn)有的d e s ( 數(shù)據(jù)加密標(biāo)準(zhǔn)) 雖然非常流行,在很多領(lǐng)域被廣泛 應(yīng)用,但是已經(jīng)不能勝任新技術(shù)日新月異發(fā)展帶來(lái)的變化,1 9 9 7 年被成功破解。 目前美國(guó)國(guó)家標(biāo)準(zhǔn)和技術(shù)協(xié)會(huì)宣布不再支持d e s ,并且適時(shí)的推出a e s ( 高級(jí)加 密標(biāo)準(zhǔn)) 算法,這是一種面向未來(lái)的高強(qiáng)度數(shù)據(jù)加密算法,用來(lái)滿足新時(shí)期人們 對(duì)數(shù)據(jù)安全的需求。將a e s 算法設(shè)計(jì)成為m 核,可以迅速取代d e s ,集成在智能 卡,網(wǎng)絡(luò)路由器,虛擬局域網(wǎng),移動(dòng)電話網(wǎng),衛(wèi)星通信等等應(yīng)用領(lǐng)域,具有極大 的經(jīng)濟(jì)和安全價(jià)值。 1 2s o c 設(shè)計(jì) 2 0 世紀(jì)9 0 年代出現(xiàn)了s o c 的概念,也就是集系統(tǒng)性能于一塊芯片的系統(tǒng)級(jí)芯 片。隨著時(shí)間的不斷推移,s o c 技術(shù)和定義也在不斷的發(fā)展和完善。現(xiàn)在的s o c 中包含一個(gè)或多個(gè)處理器,一個(gè)或多個(gè)d s p 核,以及多個(gè)或幾十個(gè)的外圍特殊功 能模塊和一定規(guī)模的存儲(chǔ)器( 黜m 、r o m ) ,數(shù)模混合信號(hào)模塊以及片上可編程 邏輯,s o c 設(shè)計(jì)正日益成為l c 設(shè)計(jì)的發(fā)展趨勢(shì)【2 】。 一個(gè)典型的s o c 系統(tǒng)結(jié)構(gòu)如圖1 1 所示。 s o c 正在掀起一場(chǎng)前所未有的變革。從技術(shù)層面看,s o c 技術(shù)是超大規(guī)模集 成電路發(fā)展的必然趨勢(shì)和主流,它以超深亞微米v d s m ( v c r yd e e ps u b m i c r o n ) 工藝和知識(shí)產(chǎn)權(quán)i p 核復(fù)用技術(shù)為支撐。從應(yīng)用開(kāi)發(fā)的角度來(lái)看,s o c 的主要含義 是在單芯片上集成微電子應(yīng)用產(chǎn)品所需的所有功能系統(tǒng)。s o c 技術(shù)研究?jī)?nèi)容包括: 開(kāi)發(fā)工具、m 核及其復(fù)用技術(shù)、可編程系統(tǒng)芯片、信息產(chǎn)品核心芯片開(kāi)發(fā)和應(yīng)用、 s o c 設(shè)計(jì)技術(shù)與方法、s o c 制造技術(shù)和工藝等。從使用角度來(lái)看,s o c 有三種類型: 專用集成電a s i c ( a 即1 i c a t i o ns p c c 詆ci c ) ,可編程s o c ( s y s l e m 傭p m 盯a m m a b l e 第一章緒論 c h j p ) 和o e m ( o r i 畫n a le q u i p m 明tm 柚u f k t u r e r ) 型s o c 。 3 圖1 1 典型s o c 系統(tǒng)結(jié)構(gòu)圖 s o c 設(shè)計(jì)雖然在過(guò)去的十幾年中已經(jīng)取得了顯著的發(fā)展,但是它所面臨的挑 戰(zhàn)也是不容忽視的。作為基于i p 核的設(shè)計(jì),s o c 設(shè)計(jì)主要向兩個(gè)方向發(fā)展,一是 以可重用口核為基礎(chǔ)的系統(tǒng)級(jí)設(shè)計(jì),這主要關(guān)心的是口核之間的互連性,是s o c 設(shè)計(jì)面臨的挑戰(zhàn)之一;二是以設(shè)計(jì)可重用m 核為目的的口核設(shè)計(jì),這主要關(guān)心的 是腰核的可重用性,同時(shí)也是s o c 設(shè)計(jì)面臨的又一個(gè)挑戰(zhàn)。對(duì)于第一個(gè)挑戰(zhàn),現(xiàn) 在通常采用片上總線結(jié)構(gòu)來(lái)解決口核之間的互連性,即核與核之間并非贏接相連 而是通過(guò)片上總線進(jìn)行互連。使用片上總線結(jié)構(gòu)雖然可以解決球核之間的互連問(wèn) 題,但這同時(shí)又出現(xiàn)了另外一個(gè)問(wèn)題,由于不同廠商使用不同的總線結(jié)構(gòu),例如 a r m 的a m b a 總線,m s 的e c 總線,i b m 的c o r e o o n n e c t 總線,因此不同廠 商i p 核之間的互連幾乎是不可能的,而建立一種通用的片上總線結(jié)構(gòu)是v s i a ( v i n 砌s o c k e th l t e r f a c ea 鸛o c i a t i o n ) 一直努力的目標(biāo)。最近,提出一種基于片上 網(wǎng)絡(luò)的互連結(jié)構(gòu),即i p 核之間通過(guò)網(wǎng)絡(luò)結(jié)構(gòu)來(lái)實(shí)現(xiàn)數(shù)據(jù)的傳輸,這種結(jié)構(gòu)雖然可 解決通用總線的問(wèn)題,但建立一個(gè)高效的路由算法是非常必要的。典型的互連結(jié) 構(gòu)如圖1 2 所示。 圖1 2 典型的基于片上網(wǎng)絡(luò)的核互連結(jié)構(gòu)圖 4 s y s t e m c 在a e s 算法l p 核設(shè)計(jì)中的應(yīng)用 除了以上的挑戰(zhàn)之外,伴隨著集成電路時(shí)鐘頻率超過(guò)2 2 g h z 以及晶體管的特 征尺寸縮小到小于o 1 卻m ,對(duì)傳統(tǒng)的設(shè)計(jì)者來(lái)說(shuō),s o c 設(shè)計(jì)還將面臨著下面的一 些挑戰(zhàn): ( 1 ) 由于連接延時(shí)的不確定性,在時(shí)鐘頻率為1 0 g h z 集成了上億晶體管的 v l s i 芯片上,時(shí)鐘同步是一個(gè)關(guān)鍵問(wèn)題,必須通過(guò)解決時(shí)鐘抖動(dòng)和減少擺率的技 術(shù)來(lái)減少時(shí)序的混亂,一個(gè)全局異步,局部同步的時(shí)鐘策略是絕對(duì)必須的。為解 決時(shí)鐘擺率帶來(lái)的問(wèn)題,推薦采用網(wǎng)狀樹(shù)組合結(jié)構(gòu),而且,分布式p l l 也變得很 有可能。 ( 2 ) 由于高集成度和頻率,在將來(lái)的生產(chǎn)過(guò)程中信號(hào)完整性問(wèn)題將變得更加 嚴(yán)重。 ( 3 ) 在將來(lái)的生產(chǎn)過(guò)程中,過(guò)程變量成為影響時(shí)序確定性的潛在因素,因?yàn)?要控制已經(jīng)減小的特征尺寸是非常困難的。 ( 4 ) 功耗問(wèn)題仍然是限制s o c 設(shè)計(jì)的因素 3 】。 1 3 可重用i p 核設(shè)計(jì) s o c 設(shè)計(jì)以可重用口核為基礎(chǔ),將設(shè)計(jì)建立在較高的層次上,以保證設(shè)計(jì)的 效率和成功率。 i p 核,其含義是預(yù)先設(shè)計(jì)好的電路功能模塊,可分為軟i p ,固i p 和硬口三 種,能夠解決s o c 面臨的另一挑戰(zhàn)。軟口核用硬件描述語(yǔ)言寫成,用于功能仿真, 但并不涉及具體的電路和電路元件,它的優(yōu)點(diǎn)是比較靈活,可以根據(jù)不同的生產(chǎn) 工藝產(chǎn)生對(duì)應(yīng)的電路。固核是在軟核的基礎(chǔ)上開(kāi)發(fā)的,一種可綜合并帶有布局規(guī) 劃的軟核,以網(wǎng)表的形式提交客戶使用。目前設(shè)計(jì)復(fù)用方法在很大程度上依靠固 核,將r t l 級(jí)描述結(jié)合具體標(biāo)準(zhǔn)單元庫(kù)進(jìn)行邏輯綜合優(yōu)化,形成門級(jí)網(wǎng)表。硬口 提供設(shè)計(jì)的最終階段產(chǎn)品:掩膜。硬核是具有和特定工藝相聯(lián)系的物理版圖,已 經(jīng)通過(guò)流片測(cè)試驗(yàn)證,可被新設(shè)計(jì)作為特定的功能模塊直接調(diào)用,它的缺點(diǎn)是一 旦生產(chǎn)工藝改變就不能夠再使用了,即使是在采用同樣生產(chǎn)工藝的情況下,由于 模塊的物理尺寸已經(jīng)確定因而也影響了布局( n o o r - p l 髓) 的靈活性;它的優(yōu)點(diǎn)是 在設(shè)計(jì)采用同樣生產(chǎn)工藝的產(chǎn)品并且其物理尺寸不影響芯片布局的情況下,能夠 直接應(yīng)用,不需用重新設(shè)計(jì)。由于半導(dǎo)體工藝發(fā)展極快,通常重用“軟模塊”比 較多。 “重用”( r e u s e ) 指的是在設(shè)計(jì)新產(chǎn)品時(shí)采用已有的各種功能模塊,即使進(jìn) 行修改也是非常有限的。這樣,可以減少設(shè)計(jì)人力和風(fēng)險(xiǎn),縮短設(shè)計(jì)周期,確保 優(yōu)良品質(zhì)。s o c 的設(shè)計(jì)原則,就是盡可能重用各種功能模塊并集成為所需的系統(tǒng) 級(jí)芯片。設(shè)計(jì)重用,必須對(duì)重用時(shí)需要考慮的因素作一些說(shuō)明。首先,重用的功 第一章緒論 5 能模塊要有詳盡的說(shuō)明書,對(duì)模塊的功能和適用范圍以及芯片集成時(shí)的總線接口 進(jìn)行說(shuō)明:其次,要提供該模塊過(guò)去已實(shí)現(xiàn)的生產(chǎn)工藝;第三,要提供用于測(cè)試 該模塊的測(cè)試程序及測(cè)試平臺(tái):最后,也是最重要的,就是模塊的設(shè)計(jì)內(nèi)核。 一個(gè)可重用的口核應(yīng)該具有以下的特征: ( 1 ) 可讀性:這是針對(duì)軟核和固核來(lái)說(shuō)的,即使用者對(duì)i p 核的功能和算法有 比較詳細(xì)的了解后,才能正確使用和充分發(fā)揮口核的優(yōu)點(diǎn)。這就要求口核的提供 商采用一種恰當(dāng)?shù)姆椒枋鲈O(shè)計(jì),使用戶可以方便正確的使用坤核。同時(shí)還要采 取措施,保護(hù)其知識(shí)產(chǎn)權(quán)不受侵犯。 ( 2 ) 設(shè)計(jì)的延展性和工藝適應(yīng)性:坤核是經(jīng)過(guò)糟心設(shè)計(jì)、驗(yàn)證并且優(yōu)化的, 一經(jīng)定型就要求其具有一定的應(yīng)用范圍,即針對(duì)不同的設(shè)計(jì)應(yīng)用具有一定的適應(yīng) 性。 ( 3 ) 可測(cè)性:m 核必須是經(jīng)過(guò)測(cè)試驗(yàn)證的,當(dāng)用于具體的設(shè)計(jì)中時(shí),并非一 點(diǎn)改變都沒(méi)有。因此,i p 核的功能和性能還應(yīng)該被使用方測(cè)試,不僅能對(duì)其進(jìn)行 單獨(dú)的測(cè)試并且能在系統(tǒng)的應(yīng)用環(huán)境中進(jìn)行測(cè)試。 ( 4 ) 端口定義標(biāo)準(zhǔn)化:即i p 核的端口要有一個(gè)統(tǒng)一的定義。 ( 5 ) 版權(quán)保護(hù)以及交付的數(shù)據(jù)資料完整,方便芯片的集成過(guò)程【4 1 。 1 4 系統(tǒng)級(jí)描述語(yǔ)言s y s t e m c 在系統(tǒng)芯片的各個(gè)設(shè)計(jì)中,像系統(tǒng)定義、軟硬件劃分、設(shè)計(jì)實(shí)現(xiàn)等,集成電 路設(shè)計(jì)界一直在考慮如何滿足s o c 的設(shè)計(jì)要求,一直在尋找一種能同時(shí)實(shí)現(xiàn)較高 層次的軟件和硬件描述的系統(tǒng)級(jí)設(shè)計(jì)的統(tǒng)一的設(shè)計(jì)語(yǔ)言。s y s t e m c 正是在這種情形 下,由s y n o p s y s 公司和c o w a 咒公司積極響應(yīng)目前各方對(duì)系統(tǒng)級(jí)設(shè)計(jì)語(yǔ)言的需求 而合作開(kāi)發(fā)的。1 9 9 9 年9 月2 7 日,4 0 多家世界著名的e d a 公司、i p 公司、半導(dǎo) 體公司和嵌入式軟件公司宣布成立聯(lián)盟組織o s c i ( o p e s y s t e m et 疵i a m e ) 。 s y s t e m c 從1 9 9 9 年9 月聯(lián)盟建立初期的0 9 版本開(kāi)始更新,從1 o 版到1 1 版,一 直到2 0 0 5 年9 月推出了最新的2 1 版。目前許多e d a 廠商都在開(kāi)發(fā)或者擴(kuò)展他們 的設(shè)計(jì)工具以支持s y s t e m c ?,F(xiàn)在已經(jīng)推出的商用s y s t e m c 軟件有c c s s ,s p w , s y s t e m c a i 玎等5 0 多種,已經(jīng)有很多的著名公司( 西門子,a r m ,大唐飛利浦等) 開(kāi)始使用s y s t e m c 作為其系統(tǒng)級(jí)開(kāi)發(fā)語(yǔ)言,一些歸國(guó)的留學(xué)生在他們自己的小公 司里也己經(jīng)開(kāi)始使用s v s t e m c 進(jìn)行開(kāi)發(fā)和驗(yàn)證。 s v s t e m c 語(yǔ)言的主要目的是實(shí)現(xiàn)用單一語(yǔ)言完成設(shè)計(jì)規(guī)范,系統(tǒng)體系結(jié)構(gòu)分 析,驗(yàn)證平臺(tái)和行為模型。s y s t 啪c 的更大價(jià)值在于提供的高層次設(shè)計(jì)流程,基于 漸趨成熟的行為級(jí)綜合工具和s y s t e m c 行為模型的高層次設(shè)計(jì)流程將會(huì)大大提高 設(shè)計(jì)和驗(yàn)證效率。正是因?yàn)閟 y s t e m c 是為了滿足系統(tǒng)級(jí)設(shè)計(jì)的需求而發(fā)展起來(lái)的 一種的設(shè)計(jì)和驗(yàn)證語(yǔ)言,既具備描述軟件設(shè)計(jì)的能力,又能夠?qū)τ布M(jìn)行建模, 而且得到的模型具有可執(zhí)行性,s y s t 鋤c 己經(jīng)逐漸成為系統(tǒng)級(jí)設(shè)計(jì)中事實(shí)上的標(biāo) 準(zhǔn)。 所有的s y s t e m c 都是基于c + + 的,并且沒(méi)有對(duì)c + + 進(jìn)行語(yǔ)法和語(yǔ)義上的擴(kuò)展, 只是以類庫(kù)的形式對(duì)c + + 進(jìn)行擴(kuò)充,可以通過(guò)通常的朋臨i c + + 編譯器編譯該程序, 使其能夠表達(dá)時(shí)序、并發(fā)、實(shí)時(shí)性、交互性等概念。并提出了一個(gè)較小但十分通 用的建?;A(chǔ),稱為核心語(yǔ)言。在這個(gè)基礎(chǔ)之上可以添加比較專門化的計(jì)算模型、 設(shè)計(jì)庫(kù)、建模準(zhǔn)則和設(shè)計(jì)方法,解決進(jìn)行系統(tǒng)級(jí)設(shè)計(jì)的一個(gè)主要的困難,即在系 統(tǒng)級(jí)設(shè)計(jì)中存在許多不同的設(shè)計(jì)計(jì)算模型、設(shè)計(jì)抽象層、設(shè)計(jì)方法。用戶可以在 不同的層次上自由選擇,建立自己的系統(tǒng)模型,進(jìn)行仿真、優(yōu)化、驗(yàn)證、綜合等 等【卯。 由于s y s t c m c 是基于c + + 的,其編譯可以像普通的c + + 編譯類似,s y s t e m c 編譯流程如圖1 3 【6 】所示。 圖1 _ 3s y s 把m c 編譯流程圖 s y s 把m c 雖然是基于c + + ,但是為了很好的支持系統(tǒng)設(shè)計(jì),添加進(jìn)了許多獨(dú)特 的關(guān)于軟硬件描述,協(xié)同設(shè)計(jì)以及驗(yàn)證等等的概念川,表1 1 是一些建模熏要概念 和常用的術(shù)語(yǔ): 表1 1s y s i c m c 建模術(shù)語(yǔ)表 一個(gè)結(jié)構(gòu)化的實(shí)體,它可以包含進(jìn)程、端口、信號(hào)和其他 m o d u l e模塊 模塊。模塊可以表達(dá)結(jié)構(gòu)化的層次性。 進(jìn)程是s y s t e m c 中基本的執(zhí)行單元,進(jìn)程被調(diào)用來(lái)模擬目 p d o c e s s進(jìn)程 標(biāo)系統(tǒng)的行為。 第一章緒論 7 端口是模塊用來(lái)和外部傳遞消息并觸發(fā)模塊內(nèi)部行為的對(duì) p o n 端口 象。 s i 印a l 信號(hào)信號(hào)將模塊之間的端口連接起來(lái)。 進(jìn)程的敏感性定義了進(jìn)程何時(shí)被恢復(fù)或者激發(fā)運(yùn)行。一個(gè) s e n s i t i v i 哆敏感性進(jìn)程可以對(duì)一個(gè)事件的集合敏感。只要相應(yīng)的事件中有一 個(gè)被觸發(fā),該進(jìn)程就會(huì)被恢復(fù)或者激發(fā)運(yùn)行。 具體解釋如下: ( 1 ) 模塊: 模塊是s y s t 鋤c 中劃分一個(gè)設(shè)計(jì)的基本塊。模塊可以把一個(gè)復(fù)雜的系統(tǒng)分割 成一個(gè)個(gè)更小的、易于管理的塊,有利于團(tuán)隊(duì)開(kāi)發(fā)。模塊之間可以隱藏內(nèi)部的數(shù) 據(jù)表示和算法,有利于設(shè)計(jì)的修改和維護(hù)。 模塊使用關(guān)鍵詞s c - m o d u u ;來(lái)聲明。s c _ m o d u l j e ( x ) ) ,括號(hào)內(nèi)是 模塊的名字,利用宏的形式聲明了個(gè)新的模塊叫做x 。模塊內(nèi)可以包含其它的 一些元素,比如端口、局部信號(hào)、局部數(shù)據(jù)、其它的模塊、進(jìn)程、構(gòu)造函數(shù)等, 它們共同實(shí)現(xiàn)模塊的功能。 ( 2 ) 進(jìn)程: 進(jìn)程( p r o c e s s ) 在s y s t e m c 中扮演一個(gè)中心角色,基本的執(zhí)行單元。進(jìn)程被 調(diào)用來(lái)模擬目標(biāo)系統(tǒng)的行為,并可以表達(dá)系統(tǒng)中的并發(fā)。進(jìn)程包含在模塊中,它 們通過(guò)模塊的端口訪問(wèn)外部的信道接口。進(jìn)程有不同的類型,并且有不同的激活 它們的方式。三種類型的進(jìn)程分別是:s cm 唧o d ,s ct h r 礎(chǔ)山, s c - c n 琢e a d 。 s y s l 咖c 用這三種進(jìn)程來(lái)對(duì)系統(tǒng)的并發(fā)行為建模。有些進(jìn)程的行為就像函數(shù), 在被調(diào)用時(shí)開(kāi)始執(zhí)行,執(zhí)行完畢后返回調(diào)用者:另一些進(jìn)程只在模擬開(kāi)始的時(shí)候 被調(diào)用一次,然后要么主動(dòng)地執(zhí)行要么被掛起等待某個(gè)狀態(tài)為真,這個(gè)狀態(tài)可能 是時(shí)鐘邊緣或者是信號(hào)表達(dá)式或者是兩者的結(jié)合。 ( 3 ) 端口: 模塊的端口向或者從模塊的進(jìn)程傳遞數(shù)據(jù)。端口有三種模式:i n ( 輸入) 、o u t ( 輸出) 、j n 伽t ( 輸入輸出) ,由s y s t 鋤c 的類庫(kù)預(yù)定義。端口的數(shù)據(jù)類型可以是 任何c + + 數(shù)據(jù)類型、s y s t 鋤c 數(shù)據(jù)類型和用戶自定義類型。 ( 4 ) 信號(hào): 信號(hào)可以在模塊內(nèi)部使用,用來(lái)連接低一級(jí)的模塊的端口。信號(hào)也經(jīng)常在 s cm a i n 函數(shù)中用來(lái)連接各個(gè)模塊的端口。信號(hào)代表了設(shè)計(jì)的物理實(shí)現(xiàn)上的連接各 器件和設(shè)備的物理導(dǎo)線,攜帶數(shù)據(jù)。數(shù)據(jù)傳遞的方向是由其連接的模塊的端口模 式?jīng)Q定。 ( 5 ) 事件和動(dòng)態(tài)敏感列表: s y s i e m c 在a e s 算法l p 核設(shè)計(jì)中的應(yīng)用 s y s t 鋤c 中,進(jìn)程只能對(duì)輸入信號(hào)或端口上的事件敏感。進(jìn)程敏感列表是靜態(tài) 定義,在模擬期間不能改變。在s y s t c m c 2 1 中,進(jìn)程可以對(duì)輸出端口上的事件敏 感,敏感列表在模擬期間是可以改變的。在s y s t e m c l o 中,進(jìn)程的敏感列表在模 塊的構(gòu)造函數(shù)中定義。 有了以上的基本概念就可以進(jìn)行編寫s y s t c m c 程序。當(dāng)然還有分層通道, t r 柚s a d i o n 級(jí)建模,m a s t c r _ s l a v e 通信庠,s c v ( s y s t 鋤cv e r i f i c a t i o ns t 卸d a r d ) 驗(yàn) 證庫(kù)等等更高級(jí),更復(fù)雜的描述和操作,基于篇幅原因這里不再介紹。 標(biāo)準(zhǔn)的s y s t e m c 程序結(jié)構(gòu),通過(guò)s c i n a m 進(jìn)入主函數(shù),完成信號(hào)定義,模塊 例化,端口綁定,波形記錄,開(kāi)始仿真【8 】 們。 m a i n 。印p 撐i n d u d ef i l c s i n t s c _ n l a i n ( i n ta 唱島c h 盯a i 蚤,【】) s c _ - s i 弘a l 連接被例化的模塊 s c 1 0 c k時(shí)鐘聲明 ,廿e s 虹弘蛐d e it e s t ,模塊例化 波形文件追蹤 仿真開(kāi)始與控制 ) 將設(shè)計(jì)的模塊,編寫測(cè)試文件等等置入這個(gè)結(jié)構(gòu)中,就可以進(jìn)行編譯和仿真, 查看波形和功能驗(yàn)證。 1 5 本文的主要工作 本文所做的工作是使用s y s t 咖c 的設(shè)計(jì)流程進(jìn)行a e s 加密算法i p 核設(shè)計(jì)。研 究引入s y s t c m c 的設(shè)計(jì)方法與用c 語(yǔ)言進(jìn)行系統(tǒng)描述的傳統(tǒng)設(shè)計(jì)方法的差別以及 可能遇到的問(wèn)題,探索s y s t e m c 在s o c 時(shí)代帶來(lái)的新的設(shè)計(jì)理念和變化。 本文采用自頂向下的正向設(shè)計(jì)方法,首先根據(jù)a e s 算法用c 和s y s t e m c 分別 完成了算法的描述,并且在s y s l e m c 設(shè)計(jì)時(shí)分析和定義了系統(tǒng)的行為:接著根據(jù) s y s t e m c 的設(shè)計(jì)架構(gòu)映射為v e f n o g 的盯l 硬件描述,在經(jīng)過(guò)驗(yàn)證和綜合后進(jìn)行了 f p g a 平臺(tái)原型驗(yàn)證,達(dá)到了一定的預(yù)期效果,得到所要研制坤核的一些可靠的 性能參數(shù)。 本文的結(jié)構(gòu)如下: 第一章介紹在l c 設(shè)計(jì)中越來(lái)越明顯的s o c 與i p 核化趨勢(shì)和系統(tǒng)級(jí)描述語(yǔ)言 s y s t 鋤c 的一些基本概念與基本結(jié)構(gòu),以及s y s t c m c 的出現(xiàn)在i c 設(shè)計(jì),尤其在系 統(tǒng)設(shè)計(jì)中帶來(lái)的新的變化; 第一章緒論 9 第二章介紹a e s 算法的一些基本情況以及安全性能分析,因?yàn)閍 e s 相比其他 加密算法有著明顯的優(yōu)勢(shì)才是我們選擇它設(shè)計(jì)為口核的原因; 第三章根據(jù)設(shè)計(jì)要求,使用s y s t 鋤c 來(lái)進(jìn)行系統(tǒng)描述,包括總體的架構(gòu)和各 個(gè)分模塊的結(jié)構(gòu)與行為,以及在向v c m o g 的i m 。描述轉(zhuǎn)換中與傳統(tǒng)的c 語(yǔ)言的 區(qū)別; 第四章是a e s 算法硬件化后在f p c 徂平臺(tái)的原型驗(yàn)證與關(guān)于性能的一些情況 分析。 最后是結(jié)束語(yǔ),對(duì)全文進(jìn)行總結(jié),對(duì)今后工作進(jìn)行展望。 本論文的研究工作是在西安市重點(diǎn)信息項(xiàng)目“a e s 加密模塊邛”( 項(xiàng)目編號(hào): z x 0 5 0 2 0 ) 和國(guó)家高技術(shù)研究發(fā)展計(jì)劃( 8 6 3 ) 子項(xiàng)目“基于i p 復(fù)用的s o c 設(shè)計(jì) 技術(shù)研究”( 項(xiàng)目編號(hào):2 0 0 4 a a l z l l 3 0 ) 支持下完成的。 1 0 s y s t e m c 在e s 算法i p 核設(shè)計(jì)中的應(yīng)用 第二章a e s 算法原理分析 人類有記載的通信加密始于公元前4 0 0 年,密碼學(xué)一直在戰(zhàn)爭(zhēng)中起著非常重 要的作用。如今,隨著社會(huì)的發(fā)展,信息成為社會(huì)發(fā)展的重要戰(zhàn)略資源。信息技 術(shù)改變著人們的生活和工作方式,人們對(duì)信息安全和保密的重要性的認(rèn)識(shí)也隨之 不斷提高。網(wǎng)絡(luò)銀行、電子購(gòu)物、電子郵件等等服務(wù)正在逐漸融入普通百姓的日 常生活,這些都涉及到數(shù)據(jù)加密,信息安全領(lǐng)域。 2 1 加密技術(shù)背景 現(xiàn)有的加密方法雖然千千萬(wàn)萬(wàn),各不相同,但都可以劃分為雙密鑰和單密鑰 體制兩種。雙密鑰體制是由d i f ! f i e 和h e l l m 柚于1 9 7 6 年首先引入,每個(gè)用戶都有 一對(duì)選定的密鑰:一個(gè)可以公開(kāi),另外一個(gè)則是秘密的,也稱為公鑰體制。雙密 鑰體制的主要特點(diǎn)是將加密和解密能力分開(kāi),可以實(shí)現(xiàn)多個(gè)用戶加密的消息只能 由一個(gè)用戶解讀,或者一個(gè)用戶加密的消息而使得多個(gè)用戶可以解讀。單密鑰體 制的加密和解密所用的密鑰相同,系統(tǒng)的保密性主要取決于密鑰的保密性,與算 法的保密性無(wú)關(guān),需要保密的僅是密鑰,即由密文和加解密算法不可能得到明文。 單密鑰體制對(duì)明文消息的加密有兩種方式:一種是明文消息按照字符逐位的加密, 稱之為流密碼;另一種是將明文消息分組( 含有多個(gè)字符) ,逐組地進(jìn)行加密,稱 為分組密碼。 數(shù)據(jù)加密標(biāo)準(zhǔn)( d e s ) 是迄今為止世界上最廣泛使用和流行的一種分組密碼算 法。1 9 7 7 年,n i s t ( 美國(guó)國(guó)家標(biāo)準(zhǔn)和技術(shù)協(xié)會(huì)) 公布實(shí)施了d e s 算法之日起,人 們對(duì)它就開(kāi)始了廣泛的研究。它的分組長(zhǎng)度為6 4 比特,密鑰長(zhǎng)度為5 6 比特,并 且在d l 三s 基礎(chǔ)上發(fā)展出了三次加密的3 d e s 加密。n i s t 每五年將其作為美國(guó)政府 加密標(biāo)準(zhǔn)進(jìn)行重新評(píng)估,并重新批準(zhǔn)它是否繼續(xù)作為聯(lián)邦加密標(biāo)準(zhǔn)。隨著計(jì)算機(jī) 性能的提高,d e s 不再成為安全的加密算法。美國(guó)已經(jīng)決定1 9 9 8 年1 2 月后不再 使用d e s ,同時(shí)征集新的更安全的加密算法。2 0 0 0 年1 0 月,n i s t 宣布通過(guò)從1 5 種侯選算法中選出的一項(xiàng)新的密鑰加密標(biāo)準(zhǔn),新的標(biāo)準(zhǔn)將會(huì)代替舊的d e s 算法。 r i n d a d 被選中成為將來(lái)的a e s 。這個(gè)加密算法是分組加密算法,信息的內(nèi)容是以 1 2 8 位長(zhǎng)度的分組為加密單元,加密密匙長(zhǎng)度有1 2 8 ,1 9 2 和2 5 6 位3 種選擇。 表2 1 是a e s 和3 d e s 的比較說(shuō)明,a e s 算法較以前的d e s 算法從速度到保 密性有著不可比擬的優(yōu)判l(wèi) o j 。 第二章a e s 算法原理分析 表2 1a e s 與3 d e s 比較 a e s3 d e s 算法類型對(duì)稱b l o c k 密碼對(duì)稱f e i s t e l 密碼 密鑰大小 1 2 8 ,1 9 2 ,2 5 6 位1 1 2 ,1 6 8 位 速度 高低 解密時(shí)間 1 4 9 0 0 0 0 億年4 6 億年 ( 每秒2 5 5 個(gè)密鑰) 資源消耗 低 由 n i s t 標(biāo)準(zhǔn)編號(hào) f 1 p s l 7 9f 1 p s 4 6 3 2 2a e s 算法數(shù)學(xué)背景 1 1 r j j n d a c l 使用了許多字節(jié)層級(jí)的運(yùn)算,而這些運(yùn)算是以g f ( 2 8 ) 為基礎(chǔ)架構(gòu),也 有一些采用了舡b y t e 的字組運(yùn)算,下面是一些基本的數(shù)學(xué)原理。 ( 1 ) g f ( 2 8 ) 的定義 假設(shè)一個(gè)字節(jié)6 由懶釓島吒組成,我們可以把這些島想象成一個(gè)7 次多項(xiàng) 式的系數(shù),而這些系數(shù)不是。就是1 :島耳7 + 魚+ 6 5 ,+ 6 4 + 6 鏟3 + 6 2 2 2 + 啦+ 6 0 , 例如,( 5 7 ) 1 。的二進(jìn)制表示法為( 0 1 0 1 0 1 1 1 ) :表示成多項(xiàng)式,則為: 石6 + 工4 + z 2 + x + 1p ( 2 ) 加法 兩個(gè)多項(xiàng)式的加法,則是定義為相同指數(shù)項(xiàng)的系數(shù)和再模余2 ,簡(jiǎn)單的說(shuō)就是 作x o r 運(yùn)算,例如:( 5 7 ) 1 6 + ( 8 3 ) 1 6 。( 0 1 0 1 0 1 1 1 ) 2 + ( 1 0 0 0 0 0 1 1 ) 2 - ( 1 1 0 1 0 1 ) 2 一( d 4 ) 1 6 或是0 6 + z 4 + 并2 + 石+ 1 ) + 0 7 + x + 1 ) l z 7 + 工6 + 石4 + x 2 。 ( 3 ) 乘法 在乘法里面,多項(xiàng)式相乘之后的結(jié)果很容易造成溢位的問(wèn)題,解決溢位的方 式是把相乘的結(jié)果,再模余一個(gè)不可分解的多項(xiàng)式( d 。在r n d a e l 中,定義一個(gè) 這樣子的多項(xiàng)式為m 0 ) - z 8 + + ,+ z + 1 或是( 1 協(xié)k 。 例如:( 5 7 ) 1 6 。( 8 3 ) 1 6 一0 6 + 工4 + x 2 + z + 1 ) 7 + x + 1 ) _ z 1 3 + x 1 1 + 算9 + z 8 + 善7 + x 7 + 工5 + z 3 + 工2 + 工+ z 6 + z + z 2 + 石+ l 1 0 1 3 + z 1 1 + x 9 + 工8 + x 6 + 耳5 + 石4 + x 3 + 1 + x 1 3 + x 1 1 + 并9 + z 8 + 石6 + z 5 + x 4 + x 3 + 1 ) m o d ( x 8 + z 4 + 并3 + 工+ 1 ) 篁工7 + 工6 + 1 _ ( c 1 ) 1 6 ( 4 ) x 乘法 若把6 ( x ) 乘上x ,得到x 8 + 6 7 + 6 5 + 6 + 6 鏟+ 6 聲3 + 6 f 2 + 吣。若6 7 一o , 絲 s y s t e m c 在a e s 算法i p 核設(shè)計(jì)中的應(yīng)用 不會(huì)發(fā)生溢位問(wèn)題,答案即是正確的;若6 7 1 ,發(fā)生溢位問(wèn)題,必須減去珊0 ) 。 我們可以把這種運(yùn)算表示為材擁e 0 ) ,其運(yùn)算方式為l e f ls h i f t ( 若溢位則與c 增) 。做 x o r 運(yùn)算) ,例如:5 7 1 1 3 阿 5 7 、0 2 一x f 脅l e ( 5 7 ) 一肛 5 7 v 0 4 時(shí)擁p o e ) 一4 7 5 7 0 8 量疵泐p ( 4 7 ) 一8 e 5 7 v 1 0 一甜擁e ( 8 e ) 一0 7 5 7 f 1 1 3 。一5 7 f f 0 1 t 。0 2 協(xié)。1 0 - 5 7 t 。加i 。0 7 - 尼。 2 3a e s 加密架構(gòu) a e s 是一個(gè)迭代型分組密碼算法,類似于明文分組和密文分組,算法的中間 結(jié)果也需要分組。算法中間結(jié)果分組被成為狀態(tài),所有的操作都在狀態(tài)上進(jìn)行1 1 1 】 【1 2 】。狀態(tài)可以用以字節(jié)為元素的陣列表示,該陣列行與列均為4 。種子密鑰同樣的 用一個(gè)以字節(jié)為元素的矩陣陣列表示,陣列有4 行,列數(shù)記為膿,等于分組長(zhǎng)度 除以3 2 。圖2 1 為 陡- 4 的種子密鑰的矩陣陣列表示。 k 0 0k 0 1k 0 2k 0 3 k 1 0k 1 1 i 【1 2k 1 3 k 2 0k 2 1k 2 2k 2 3 k 3 0k 3 1k 3 2k 3 3 圖2 1 膿一4 的種子密鑰矩陣陣列 r j j n d a e l 加密算法流程是由一個(gè)初始a d d r o u n d y ,一1 個(gè)r o u n d 運(yùn)算,及 一個(gè)f i n a lr 0 u n d 所組成,如圖2 2 所示。 四種操作運(yùn)算過(guò)程如下: 子密鑰加( a d d i b 岫d k e v ) : 運(yùn)算主要是把每一個(gè)子密鑰( r o 吼d 婦y ) 通過(guò)與s t a l e 中對(duì)應(yīng)的每個(gè)字節(jié)x o r 加到 一個(gè)新的s t a t c 中,如圖2 3 所示。 字節(jié)取代轉(zhuǎn)換( s u b b y t e s ) : 字節(jié)取代是一個(gè)以字節(jié)為單位的非線性取代運(yùn)算,取代表( s b o x ) 是經(jīng)過(guò)兩 個(gè)運(yùn)算過(guò)程而建立,并且是可逆的。首先找出每個(gè)字節(jié)在g f ( 2 8 ) 中的乘法反元素: 接著經(jīng)過(guò)一個(gè)仿射轉(zhuǎn)換運(yùn)算,定義如圖2 4 所示。 字節(jié)取代( s u b b v t e s ) 運(yùn)算對(duì)狀態(tài)的影響如圖2 5 所示。 字節(jié)取代( s u b b y t e s ) 轉(zhuǎn)換的逆運(yùn)算( h s u b b y t c s ) ,計(jì)算仿射對(duì)應(yīng)之后的相反運(yùn) 第= 章a e s 算法原理分析 算可得到s - b 0 x ,以此s b 咀做字節(jié)取代( s u b b y t e s ) 即可。 p 1 a i n t e 礎(chǔ) c 詰h e r t e x t 圖2 2 加密流程圖 n i 1r o u n d f i n i a lr o u n d s y s t c 在a e s 算法i p 核設(shè)計(jì)中的應(yīng)用 哇 如 島 反 菇 西 1oooll 1 1i | 11o o ol1 l | | 熟 l1looo11i | 如 11llo o o 圳島 llllloo o l 札 olllllo o | i 磚 o olll11o l 玩 o o o l1l l1l 島 圖2 4 仿射轉(zhuǎn)換運(yùn)算示意圖 + 圖2 5s u b b y l c s 示意圖 移列轉(zhuǎn)換( s h i f t r o w s ) : 在這個(gè)轉(zhuǎn)換中,狀態(tài)的每一列以不同的偏移量做環(huán)狀位移,第0 列不動(dòng),第 一列位移c 1 個(gè)字節(jié),第二列位移c 2 個(gè)字節(jié),第三列位移c 3 個(gè)字節(jié)。位移的偏 移量c 1 ,c 2 ,c 3 跟區(qū)塊的數(shù)目( n b ) 有關(guān),定義如表2 2 所示。 表2 2 位移偏移量表 n b c 1 c 2 c 3 4123 6123 8134 行位移轉(zhuǎn)換( s h i f i r o w s ) 運(yùn)算對(duì)于狀態(tài)的影響,如圖2 6 所示。 ss jl知】, 屯- o l i墨2墨) l j o島l如2屯, 屯o屯j 屯】屯3 點(diǎn)靼圣馬 黽12s t , 墨i毛2蕞墨o 屯2s 2 ,s z os 2 1 南j屯oi屯】 圖2 6 s h i f l o m 示意圖 l l o o o l l o 第二章a e s 算法原理分析 行位移轉(zhuǎn)換( s h i f c r 腑s ) 的逆運(yùn)算( i n v 馴鉑b w s ) ,對(duì)第二第三及第四列做 n b c 1 ,n b c 2 ,n b c 3 個(gè)字節(jié)的環(huán)狀位移即可。 列混合轉(zhuǎn)換( m i x c o l 咖n s ) : 把s ta _ t c 當(dāng)作一個(gè)存在g f ( 2 8 ) 中的多項(xiàng)式。并且對(duì)一個(gè)固定的多項(xiàng)式c ( x ) 作乘 法,如果發(fā)生溢位,則再模余x 4 + l 。表示如下; c o ) l 0 3 石3 + 0 1 工2 + 0 1 x + 0 2 。 c ( x ) 與x 4 + 1 互質(zhì),令6 0 ) 一c o ) 4 0 ) ,以矩陣乘法表示如圖2 7 所示。 黽c 黽。 島, s 3 。 r 0 20 30 lo l io lg 2 0 3o l = i lo lo l0 20 3 l0 3o lo l0 2 。 墨。 s 2 口 墨。 f o r 0 c n b 圖2 7 矩陣乘法表示圖 s t a t e 經(jīng)過(guò)列混合( m i x c o l u m 雌) 運(yùn)算之后的變化如圖2 。8 所示。 圖2 8m i x g o l m n s 示意圖 列混合( m i x g o l 咖s ) 轉(zhuǎn)換的逆運(yùn)算( h v m i x c o l u m n s ) ,則是乘上一個(gè)特殊 的多項(xiàng)式d ,( 0 3 礦+ 0 l 算2 + 0 1 z + 0 2 o d o ) 一0 1 , d ( x ) l 0 8 。膏3 + o d 石2 + 0 9 工+ o e 。 r o 如d 操作偽碼敘述如下: r o u n d ( s t a t e ,r o 吼d k e y ) s u b b ”髂( s t a t e ) ; s l l i f t i 沁w s ( s t a t c ) ; m i x c o l u m s ( s t a t e ) ; s y s t e m c 在a e s 算法i p 核設(shè)計(jì)中的應(yīng)用 a d d r o u n d k c y ( s t a t e ,r o u n d k c y ) ; f i n a lr o u n d 如下: f i n a l r o u d ( s t a t c ,r o i h l d k e y ) s u b b y t e s ( s t a t c ) ; s h i f t r o w s ( s t a t e ) ; a d d r o u n d k e y ( s t a t e ,r d u n d k y ) ; ) 加密過(guò)程: r i j n d a e l ( s t a t c ,e x p 柚d e d k e y ) s t a t c p l a i n t e x t 膽x p a n d e d k e y 枷n dk e y s a d d r o u n d k c y ( s t a t e ,e x p 姐d e d k c y ) ; f 0 “i = 1 ;i n r ;i + + ) r 伽n d ( s t
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 沈陽(yáng)別墅水景假山施工方案
- 建筑地塊住宅項(xiàng)目景觀設(shè)計(jì)方案
- 湖北省武漢市江漢區(qū)2024-2025學(xué)年上學(xué)期期中九年級(jí)物理試題(含答案)
- 大足辦公室鋁扣板施工方案
- 配電箱浪涌保護(hù)器施工方案
- 江蘇幼兒園籃球場(chǎng)施工方案
- 福建立體植物綠墻施工方案
- 事業(yè)單位停薪留職協(xié)議
- 公益演出服務(wù)合同
- 青海外墻伸縮縫施工方案
- 公共關(guān)系危機(jī)處理手冊(cè)
- 背光異物改善8D
- 小學(xué)科學(xué)《點(diǎn)亮小燈泡》教學(xué)課件
- 2024年新教材高中數(shù)學(xué)綜合測(cè)評(píng)含解析新人教B版必修第一冊(cè)
- 2024-2030年中國(guó)動(dòng)畫產(chǎn)業(yè)發(fā)展趨勢(shì)及未來(lái)前景預(yù)測(cè)分析報(bào)告
- GB/T 44248-2024信息技術(shù)生物特征識(shí)別人臉識(shí)別系統(tǒng)應(yīng)用要求
- 郵票的張數(shù)說(shuō)課
- 教育集團(tuán)理事會(huì)職責(zé)
- 《環(huán)境與資源保護(hù)法(第5版)》全套教學(xué)課件
- DL∕T 827-2014 燈泡貫流式水輪發(fā)電機(jī)組啟動(dòng)試驗(yàn)規(guī)程
- 2024年南京信息職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)附答案
評(píng)論
0/150
提交評(píng)論