




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕士学位论文 a b s t r a c t w i t ht h ed e v e l o p m e n to f i n f o r m a t i o nt e c h n o l o g y ,t h ea p p l i c a t i o no f c o m p u t e rh a sc o m ei n t o s o c i a l a n yf i e l d e s p e c i a l l y i n m i l i t a r yf i e l d ,p e o p l er e l y o ni n f o r m a t i o nm o r e s e r i o u s l y s o i n f o r m a t i o ns e c u r i t yb e c o m e sv e r yi m p o r t a n t e n c r y p t i o na sas o r to f p o w e r w e a p o n i sw i d e l yu s e d i nt h ef i e l do f i n f o r m a t i o n s e c u r i t y d e s ( d a t ae n c r y p t i o ns t a n d a r d ) e n c r y p t i o na r i t h m e t i ch a ss t o o dt h el o n gt e s tf r o mw h e ni t b e c a m et h ee n c r y p t i o ns t a n d a r dt on o w i ti sp r o v e db ym u c h p r a c t i c et h a tt h es e c u d t yo f t h ed e s e n c r y p t i o n c a r l s a t i s f y t h ev o l u m i n o u sn e e do fs e c u d t y i m p l e m e n t i n gt h ed e sa r i t h m e t i c b y s o f e w a r ew i l le n g r o s sm u c h s y s t e mr e s o u r c ea n dm a k et h es y s t e mf u n c t i o nd e c l i n e b u tt h ed e s a r i t h m e t i ch a sn o tm u c ha n dc o m p l e xm a t h e m a t i c sc o u n ta n do n l yh a sl o g i co p e r a t i o na n dl o o k u p - t a b l eo p e r a t i o n s o ,t h i n k i n gf r o mt h ep o i n to fs y s t e mf u n c t i o na n ds p e e do fe n t r y p t i o na n d d e c r y p t i o n ,i m p l e m e n t i n gt h ed e s a r i t h m e t i cb yh a r d w a r ei sa l li d e a lp r o j e c t w i t ht h e d e v e l o p m e n to fm i c r o e l e c t r o n i ct e c h n o l o g y ,t h ep r o g r a m m a b l el o g i cd e v i c e d e v e l o p f r o me a r l i e rr o mt ov e r yp o p u l a ra n de x t e n s i v ea p p i e df p g a f f i e t dp r o g r a m m a b l eg a t e a r r a y ) t o d a y t h ef p g ah a st h ec h a r a c t e r i s t i co ff l e x i b l es y s t e ms t r u c t u r ea n dl o g i cu n i t ,h i 曲 i n t e g r a t i o n a n dw i d e a p p l i c a t i o n e s p e c i a l l y ,t h e f p g ac a n c a l t y o u tt h em o r e l a r g e - s c a l e c i r c u i t , p r o g r a m m ef l e x i b l y ,w h e n t h e e n g i n e e r s u s et h ef p g at o d e s i g n a n d d e v e l o p t h e p r o d u c t ,t h et i m ei ss h e r t ,t h ec o s ti sl o w ,t h et o o li sa d v a n c e d ,t h es t a n d a r dp r o d u c td o n tn e e dt o t e s t , t h eq u a l i t yi ss t e a d ya n dt h ep r o d u c tc a l lb ei n s p e c t e do nl i n e s o ,t h ef p g ai sw i d e l yu s e dt o d e s i g na n dm a k ep r o d u c t t h e r e f o r e ,u s i n gt h ef p g a t od e s i g na n di m p l e m e n tt h ed e s e n c r y p t i o na r i t h m e t i ci sv e r y i m p o r t a n ta n di t w i l lb ew i d e l yu s e di nm u c hf i e l d t h em a i nc o n t r i b u t i o n so ft h ep a p e ra r ea s f o l l o w : l :c o m p l e t e dt h ew h o l ed e s i g no f t h ed e s e n c r y p t i o ns y s t e m t h ew h o l es y s t e mi n c l u d e s t h ed e se n c r y p t i o nc o r em o d u l e ,t h eu a r tc o m m u n i c a t i o ni n t e r f a c em o d u l ea n db l o c k r a m m e m o r ym o d u l e 2 :u s e dt h ev e r i l o gh a r e w a r ed e s i g nl a n g u a g et od e s i g na n di m p l e m e n tt h ef u n c t i o na n dt h e w h o l ec o n n e c t i o no ft h et h r e em o d u l eb yt h ee i t s 2 0 0 3a st h eh a r d w a r ed e v e l o p m e n tf l a tr o o f a n dt h ei s e w e b p a c ka st h es o f e w a r ed e v e l o p m e n tt 0 0 1 3 :u s e dt h ep c s c o m a s s i s t a n t , t h eu a r tc o m m u n i c a t i o ni n t e r f a c ea n dt h ee i t s 2 0 0 3 d e v e l o p m e n tp l a tr o o f t ot e s ta n dr e d f yt h ef u n c t i o no f t h ew h o l es y s t e m 4 :d i s c u s s e dt h ea p p l i c a t i o no ft h ed e s e n c r y p t i o ns y s t e mi nt h em i l i t a r yc o m m u n i c a t i o n s t a t i o n k e yw o r d s : d e s ,f p g a ,v e r i l o g ,u a r t ,b l o e k r a m ,d a t ae n e r y p t i o n n 渐江大学硕士学位论文 第一章绪论 1 1 d e s 的基本概念及特点 数据加密标准( d a t ae n c r y p t i o ns t a n d a r d ,d e s ) ,作为a n s i 的数据加密算法( d a t a e n c r y p f i o na l g o r i t h m ,d e a ) 和i s o 的d e a l ,成为一个世界范围内的标准已经2 0 多年了 。尽管它带有过去时代的特征,但它很好地抗住了多年的密码分析,除可能的最强有力的 敌手外,对其他的攻击仍然是安全的。 d e s 是一个分组加密算法,它以6 4 位为分组对数据加密。6 4 位一组的明文从算法的 一端输入,6 4 位的密文从另一端输出。d e s 是一个对称算法:加密和解密用的是同一种算 法。密钥的长度为5 6 位。( 密钥通常表示为6 4 的数,但每个第8 位都用作奇偶校验,可 以忽略。) 密钥可以是任意的5 6 为的数,且可在任意的时候改变。其中极少量的数被认为 是弱密钥,但能容易地避开它们。所有的保密性依赖于密钥【2 j 。 1 2 基于f p g a 的d e s 加密系统的研究背景,意义,及应用前景 1 2 1d e s 加密系统现状及发展 随着信息技术的发展,计算机应用渗透到社会生活的各个领域,特别是在军事中的应 用,使人们对信息的依赖程度越来越大,从而使信息安全技术显得格外重要。从技术角度 讲,网络安全除了依赖安全的网络通信协议及应用协议外。更多地取决于网络设备如交换 机、路由器、网桥等所提供的加解密功能。目前,基于d e s 算法的j j n l 解密硬件广泛地应 用于军事,卫星通信、网关服务器、机顶盒、视频传输以及其它大量的数据传输业务中。 d e s ( d a t ae n c r y p t i o ns t a n d a r d ) 加密技术是一种常用的对称加密技术,该技术算 法公开,加密强度大,运算速度快,在各行业甚至军事领域得到广泛的应用。d e s 算法从 1 9 7 7 年公布到现在已有将近3 0 年的历史。虽然有些人对它的加密强度持怀疑态度,但现 在还没有发现实用的破译d e s 的方法。并且在应用中,人们不断提出新的方法增强d e s 算 法的加密强度,如3 重d e s 算法、带有交换s 盒的d e s 算法等。因此d e s 算法在信息安全 领域仍有广泛地应用。 采用软件方式实现的d e s 算法会在很大程度上占用系统资源,造成系统性能的严重下 降,而d e s 算法本身并没有大量的复杂数学计算( 如乘、带进位的加、模等运算) 。”,在 加解密过程和密钥生成过程中仅有逻辑运算和查表运算,因而,无论是从系统性能还是加 解密速度的角度来看,采用硬件实现都是一个理想的方案。 1 2 2p l d 发展过程 当今社会是数字化的社会,是数字集成电路广泛应用的社会。信息高速公路,多媒体电 脑,移动电话系统,数字电视,各种自动化设备以及我们日常的一些小制作都要用到数字 集成电路。随着科学技术的发展,数字集成电路本身也在不断地进行更新换代。它由早期 的电子管,晶体管,小规模集成电路,中规模集成电路,大规模集成电路,发展到超大规 浙江大学硕士学位论文 模集成电路以及许多具有特定功能的专用集成电路。但是,随着微电子技术的发展,设计 与制造集成电路的任务己不完全由半导体厂商来独立承担。系统设计们更愿意自己设计专 用集成电路( a s ;o 芯片,而且希望a s i c 的设计周期尽可能短,最好在实验室就能设计出 合适的a s i c 芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件( f p l d ) , 其中应用最广泛的当属现场可编程门阵列( f p g a ) 和复杂可编程逻辑器件( c p l d 。 早期的可编程逻辑器件只有可编程只读存贮器( p r o m ) ,紫外线可擦除只读存贮器 ( e p r o m ) 和电可擦除只读存贮器( e e p r o m ) 。其后,出现了一类结构上稍复杂的可编程:芯 片,即可编程逻辑器件( p l d ) ,它能够完成各种数字逻辑功能。这一阶段的产品主要有 p a l ( 可编程逻辑阵列) 和g a l ( 通用阵列逻辑) 。这些早期的p l d 器件的一个共同特点是可 以实现速度特性较好的逻辑功能,但其过于简单的结构也使他们只能实现规模较小的电 路。而f p g a 和c p l d 则都具有体系结构和逻辑单元灵活,集成度高以及实用范围宽等特 点。他们可以实现较大规模的电路,编程也很灵活,而且有具有设计开发周期短,设计制 造成本低,开发工具先进,标准产品无需测试,质量稳定以及可实时在线检验等优点,因 此被广泛应用于产品的原型设计和产品生产。几乎所有应用门阵列,p l d 和中小规模通用 数字集成电路的场合均可应用f p g a 和c p l d 器件。f p g a 芯片及其开发系统问世不久, 就受到世界范围内电子工程设计人员的广泛关注和普遍欢迎。 综上所述,应用f p g a 来设计和实现d e s 加密系统具有十分重要的现实意义和广阔的 应用前景。 1 3 本文主要工作及章节安捧 1 3 1 本文主要工作 本文研究的主要内容就是应用f p g a 来设计和实现d e s 加密系统。具体完成了以下三 方弱的工作: 1 :完成了d e s 加密系统的整体设计。整个系统包括d e s 加密核心模块,u a r t 通信 接口模块和b l o c k r a m 存储模块。 2 ;以e i t s 2 0 0 3 开发板为硬件开发平台,i s e w e b p a c k 为开发软件,用v e f i l o g 硬件描 述语言设计并且实现了三大模块的具体功能及整体连接。 3 ;用p c ,串日调试工具,u a r t 通信接口和e i t s 2 0 0 3 开发板测试并验证了整个系 统的功能。 1 3 2 章节安排 全文共分五章,各章内容安排如下: 第一章介绍了d e s 加密系统的研究背景,现状,意义及应用前景。 第二章介绍了d e s 加密算法原理以及系统的开发环境。 第三章介绍了d e s 加密系统的设计与实现。整个系统由三大模块组成:d e s 加密 核心,u a r t 通信接口模块和b l o c k r a m 存储模块。 第四章对系统进行了性能分析并对系统进行了功能验证。 第五章介绍了d e s 加密系统在军事通信总站内的应用方案。 2 浙江大学硕士学位论文 本章小结 本章首先介绍了d e s 的基本概念及特点,然后讲述了o e s 加密系统的研究背景 现状,意义及应用前景。本章的最后给出了本文的主要研究工作及各章节的安排。 浙江大学硕士学位论文 第二章d e s 加密算法原理及系统开发环境 2 1 d e s 加密算法原理 2 1 1d e s 加密算法原理倚介 d e s 运算的明文( 加密前数据) 和加密密钥都是6 4 位的,将原始数据经过初始的置 换,然后与子密钥( 由加密密钥产生) 经过一系列迭代运算,最后再经过逆置换,即可得 到密文( 加密后数据) 。解密过程与此类似。 如图1 所示,d e s 算法是6 4 位明文由一个初始序列变换0 p ) 开始,经过1 6 轮的加密 运算,再通过初始序列变换的逆变换( i i p ) 得到所需的密文。在每一轮中,数列块的右边3 2 位数据和密钥( k e y ) 一起传送给函数f ,函数f 运算的结果再和数列块左边3 2 位数据进行异 或操作。其中s 盒( s 选择函数) 是d e s 算法的心脏,靠它实现非线性变换p j 。 图2 - 1d e s 算法总结构框图 4 浙江大学硕士学位论文 2 i 2 韧始序列变按i p 如表1 所示 i p 。 5 85 04 23 42 61 81 02 6 05 24 43 62 82 01 24 6 25 44 63 83 02 21 46 6 45 64 84 03 22 41 68 5 74 94 13 32 51 791 5 95 l4 33 52 71 9l l3 6 l5 34 53 7 2 92 l1 35 6 35 54 73 93 12 31 57 表2 1 疋 i p 运算可以描述为将原数据序列中第5 8 位作为新序列中的第l 位,原序列中的第5 0 位作为新序列中的第2 位,其他位也都同样地进行序列变换,最后一位数据是原序列的第 7 位? “。 图1 中的具体运算如以下算式( 1 ) 、( 2 ) 、( 3 ) 所示: r j 席 f , 转= l 蔷牲焉坼 = 并s f 4 k e 鼢 = k 辔i i 焉k ) k 。一 f 瓢 初始序列变换的逆运算( 1 i p ) 如表2 所示: i f j _ 一 4 084 81 65 62 46 43 2 3 974 71 55 52 36 33 l 3 864 61 45 42 26 23 0 3 754 51 35 32 l6 l2 9 3 644 41 25 22 06 02 8 3 534 3 l i5 11 95 9 2 7 3 424 2i 0 5 01 85 8 2 6 3 314 19 4 91 75 7 2 5 5 浙江大学硕士学位论文 序列变换的过程和i p 类似。 2 1 3 加密函数f 加密函数f 的运算框图如图2 所示吲。 图2 - 2 加密函数f 的运算框图 e 运算是一个函数,它将3 2 位输入数据扩充为4 8 位的数据块作为输出。e ( r ) 的前三 位在r 中的位置分别是3 2 ,1 和2 ,而e ( r ) 中的最后两位则分别是r 中是第3 2 和1 位。 占b i t s e l 联玎1 0 nt a b l e 3 2l2345 456789 89l 01 11 21 3 1 21 31 41 51 61 7 1 61 71 81 92 02 1 2 02 l2 22 32 42 5 2 42 52 62 72 82 9 2 82 93 03 l3 2l 表2 - 3e 变换表 每个单独的选择函数s l ,s 2 ,s s ,将6 位数据块作为输入,并虽产生4 位数据块作 为输出,选择函数s l 根据下表进行运算。 6 浙江大学硕士学位论文 最 一_ c o l u m nn u m b e r r o w n o 01234567891 0l i1 21 31 4 】5 01 441 3121 51 183i 061 25907 l01 5741 421 3ii 061 21 19538 24 11 481 3821 11 51 29731 050 31 51 28249l751 131 4l o061 3 表2 4 选择函数s 1 假设s 1 是如上表定义的选择函数,b 是输入的6 位数据块,那么s l ( b ) 定义如下:b 的 第l 和6 位构成0 - 3 的个数,设它为i 。b 的中问4 位代表】5 的一个数,设它为j 。在 上表中查询第i 行,第j 列的那个数。比如,输入6 位数据为叭1 0 1 l ,行是0 1 ,表示第1 行,列由1 1 0 i 定义,表示第1 3 列。第l 行第1 3 列的数是5 ,那么输出就0 1 0 1 。 选择函数s 1 ,s 2 ,s 8 分别如下所示: s 1 441 3121 5 1 1831 061 2 5907 o1 5741 421 3l1 061 21 19538 4l1 481 3621 l1 51 29731 050 1 51 28249l75n31 41 0061 3 1 5l81 461 l349721 31 2051 0 31 3471 5281 41 20l1 0691 15 01 47 1 11 041 3l581 269321 5 1 381 0l31 5 42 儿671 2 051 49 7 浙江大学硕士学位论文 品 1 0091 4631 55l1 31 271 1428 1 37o93461 02851 41 21 11 51 1 364981 5301 1121 25i 01 47 l1 01 3o698741 51 43l l521 2 & 71 31 43069i 012851 l1 241 5 1 38l l561 5034721 21l o1 49 i 06901 2l l71 31 5131 45284 31 5o61 011 389451 11 2721 4 s 5 21 24l71 0l l68531 51 301 49 1 41 121 2471 3l501 5i 03986 4211 1i 01 3781 591 256301 4 l l81 2711 421 361 509l o453 & 1 2l1 01 5926801 3341 4751 l l o1 54271 295611 31 40 1 13 8 91 41 55281 23704i 011 31 16 4321 2951 51 01 11 4l76081 3 i 岛 41 121 41 5o81 331 2 975i 06l 1 30i 1749l1 01 4351 221 586 l41 l1 31 2371 41 01 5 680592 61 11 3814i 079501 51 4231 2 s 1 328461 51 11i 0931 4501 27 l1 51 381 03741 2561 101 492 71 l4l91 21 4 2061 01 31 5358 211 4741 081 31 51 29o3561 1 表2 - 5 选择函数s 8 浙江大学硕士学位论文 图2 - 2 中的p 运算如下表所示 2 1 4 子密钥生成 , 一 1 672 02 1 2 91 22 81 7 l1 52 32 6 51 83 ll o 282 41 4 3 22 73、9 1 91 33 06 2 21 142 5 表2 - 6p 运算 图2 - 3 于密钥生成 首先,“位的密钥k e y 通过阵列选择变换操作p c 一1 ,成为4 8 位数据。这4 8 位数 据又被分成两个部分,第1 部分为c o ,第2 部分为d o 。如果k e y 的数据从1 到6 4 进行标 号,那么c o 就分别是k e y 的5 7 ,4 9 ,4 1 ,“和3 6 位,同样地,d o 分别是k e y 的 6 3 ,5 5 ,4 7 ,1 2 和4 位。 9 浙江大学硕士学位论文 胴 5 74 94 13 32 51 79 i0 85 04 23 42 61 8 1 025 95 14 33 52 7 1 9l i36 05 24 43 6 6 35 54 73 93 12 31 5 76 25 44 63 83 02 2 1 466 l5 34 53 72 9 2 l1 352 82 01 24 表2 7p c i c 。和d o 定义后,再接着定义c 。和战如何从c d - l 和d 。得到,n = l ,2 ,1 6 。这是 根据表7 的每个数据块的左移运算完成的。 i t e r a t i o nn u m b e ro f n u n b e rl e f ts h i f t s l 1 2 l 3 2 4 2 5 2 6 2 7 2 8 2 9 1 1 0 2 1 l 2 1 2 2 1 3 2 1 4 2 1 5 2 1 6 1 表2 8 左移表 i o 浙、江大学硕士学位论文 比如,c 3 和d 3 分别由c 2 和d 2 通过左移两位得到,c 1 6 和d 1 6 分别由c 1 5 和d 1 5 左移1 位得到。为了得到子密钥,c n 和d 。需经过阵列选择变换p c 一2 的运算 8 口p c 2 如下: p c 一2 1 41 71 l2 415 32 81 562 l1 0 2 31 9 1 242 6 8 1 672 72 01 32 4 15 23 13 74 75 5 3 04 05 l4 53 34 8 4 44 93 95 63 45 3 4 64 25 03 62 93 2 表2 9p c 一2 d e s 算法的原理和艇个过程如上所述。 2 2 系统开发环境 2 2 1 硬件开发平台e i t s 2 0 0 3 e i t s 2 0 0 3 是多用途e d a ( 电子设计自动化) 开发实验平台,核心器件是x i l i n x 公司的 s p a r t a n - i i e 系列的f p g a 芯片,可选型号的门阵列规模从5 万门到3 0 万门不等。s p a r t a n i i e 基于先进的v i r t e x ef p g a 架构,专为价格敏感的消费类电子设计,具有强大的功能 ,可能达到与a s i c 相比拟的系统级集成度“j 。 平台在设计中兼顾了试验与科研开发的需要,在提供了大量可用i o 同时,采用核心 芯片“嵌入式”的架构,使得可以在s p a r t a n - i i e 多种型号间自由选择所需的目标芯片。 这种主芯片嵌入式结构,连同平台设计中采用的其他耐用性措施,使得平台具有灵活的使 用方式,长期的使用寿命和低廉的维护费用。 e i t s 2 0 0 3 实验平台在f p g a 周围提供了丰富的资源:有串口,p s 2 接口,v g a 接口 ,l e d 和七段数码显示管,拨码开关和按钮,a t 8 9 s 5 2 单片机,s r a m ,1 2 c ,a d ,o a 转换, 扬声器,电源,时钟晶振等“。 e i t s 2 0 0 3 的用户可以在p c 机上通过并口对f p g a 进行配置,也可以使用板上的单片 机配合e e p r o m 来配置f p g a 。 e i t s 2 0 0 3 的性能与特点: 可编程逻辑器件x i l i n xs p a r t a n 一1 i e 系列f p g a x c 2 s 1 0 0 e ,p q 2 0 8 封装,1 0 万门 ,其他兼容可选的f p 6 a 规模从5 万门到3 0 万门不等。 板载晶体震荡器,5 0 m h z 频率,可选购晶振频率从1 0 m h z 到l 0 0 m h z : 浙江大学硕士学位论文 六个按钮和一个八路拨码开关,可用作通用地逻辑输入; $ 八个【,e d 和四个七段数码管,可用来显示f p g a 和单片机的输出信息; $ 标准r $ 2 3 2 接口,可方便的连接p c 及其他工业设备: 标准p s 2 接口,用来外联键盘或鼠标,扩展输入设备: 十标准v g a 接口,可显示6 4 种颜色; $ 集成x i l i n xp 型并口下载接口,允许p c 机f 载配置文件; * a d c 电路,把f p o a 的数字信号转换成模拟信号输出; 板载a t m e ls 系列的a t 8 9 s 5 2 单片机,可减轻f p g a 编程负担,也可独立进行单片 机实验,a t 8 9 s 5 2 不需要编程器,在线可编程: * 1 2 ce e r p r o m 一2 4 c 2 5 6 ,提供另种通用存储方式; 恒定直流供电,分为5 v ,3 3 v ,1 8 v 。 实物图如下: 图2 - 4e i t s 2 0 0 3 实验开发板 2 2 2 软件开发工具i s el e b p a b k e i t s 2 0 0 3 选用的软件是x i l i n x 公司提供的i s e 5 2w e b p a e k ,加上配合i s e 使用的 m o d e l s i mx i l i n xe d i z i o n ( m x e ) 5 6 e 。 w e b p a c k 是基于x i l i n xi s e 的一个软件套件,提供了原理图输入,综合,布局布线,编程 下载等功能。 在仿真方面,m e n t o r 公司的m o d e lt e c h n o l o g y 为x i l i n xi s e 专门定制了一个x i l l 一 i x 版本的m o d e l s i m ,称为m o d e l s i mx i l i n xe d i t i o n ( m x e ) 。m x e 可以用来做逻辑仿真( 前仿真) ,也可以做精确的布局布线后仿真( 后仿真) 。 配合m x e 的仿真,i s ew e b p a c k 提供了基于g u i 的t e s t b e n c h 生成工具,方便直观的 生成用户想要的测试模块。 浙江大学硕士学位论文 下面是w e b p a c k 结合m x e 的典型设计流程: 图2 - 5w e b p a c k 典型设计流程 1 :根据设计思路进行逻辑输入,可以选择的有:使用e c s 进行原理图输入,使用 d e s i g ne n t r y 进行硬件描述语言输入( v f l d l ,v e r i l o g h d l ,a b e l ) ,使用s t a t e c a d 进行状态机 转换图的输入。 2 :使用m x e 进行功能仿真,仿真时可以自己单步控制逻辑量的变化,也可以用语言 写一个t e s t b e n c h 来进行仿真,还可以使用w e b p a c k 中提供的t e s t b e n c h 生成工具h d l b e n c h e r 来用图形化的界面生成一个t e s t b e n c h 。 3 :使用x i l i n xi s ew e b p a c k 中集成的x s t 综合工具进行逻辑综合。 4 :在布局布线这个步骤中,对f p g a 来说,有四个步骤: 1 ) t r a n s l a t e 解释设计,执行规则检查。 2 ) m a p 一对不同的目标器件来计算和分配资源。 3 ) p l a c ea n dr o u t e 一对可配置逻辑块进行布局,使用布线资源。 4 ) c o n f i g u r e - - 生成可以下载编程的b i t 流文件。 5 :在布局布线后,也可以使用与功能仿真相同的t e s t b e n c h 来对设计进行仿真,这 称为后仿真。后仿真结台了布局布线的因素,可以精确的反映下载后芯片内部的执行情 况,可以观钡4 逻辑变量的延迟情况,毛刺,冒险竟争等。 6 :使用w e b p a c k 集成的i m p a c t 工具进行下载芯片。 2 2 3 硬件描述语言v e r i l o gl 珥l 浙江大学硕士学位论文 硬件描述语言h d l 是一种用形式化方法描述数字电路和系统的语言。利用这种语言, 数字电路系统的设计可以从上层到下层( 从抽象到具体) 逐层描述自己的设计思想,用一 系列分层次的模块来表示极其复杂的数字系统。然后,利用电子设计自动化( e d a ) 工具, 逐层进行仿真验证,再把其中需要变为实际电路的模块组合,经过自动综合工具转换到门 级电路网表。接下去,再用专用集成电路a s i c 或现场可编程门阵列f p g a 自动布局布线工 具,把网表转换为要实现的具体电路布线结构”。 硬件描述语言h d l 的发展至今已有2 0 多年的历史,并成功地应用于漫计的各个阶段: 建模、仿真、验证和综合等。到2 0 世纪8 0 年代,已出现了上百种硬件描述语言,对设计 自动化曾起到了极大的促进和推动作用。但是,这些语言一般各自面向特定的设计领域和 层次,而且众多的语言使用户无所适从。因此,急需一种面向设计的多领域、多层次并得 到普遍认同的标准硬件描述语言。2 0 世纪8 0 年代后期,v h d l 和v e r i l o gh d l 语言适应了 这种趋势的要求,先后成为i e e e 标准。 v e r i l o gh d l 是一种应用广泛的硬件描述语言,可以用于从算法级,门级到开关级的 多种抽象层次的数字系统设计。 v e r i l o gh d l 是在1 9 8 3 年,由g d a ( g a t e w a yd e s i g na u t o m a t i o n ) 公司的p h i l m o o r b y 首创的。p h i lm o o r b y 后来成为v e r i l o g x l 的主要设计者和c a d e n c e 公司的第一合 伙人。在1 9 8 4 1 9 8 5 年,p h i lm o o r b y 设计出了第一个名为v e r i l o g - x l 的仿真器;1 9 8 6 年,他对v e r i l o gh d l 的发展又作出了另一个巨大的贡献:提出了用于快速门级仿真的x l 算法。 随着v e r i l o g x l 算法的成功,v e r i l o gh d l 语言得到迅速发展。1 9 8 9 年,c a d e n c e 公 司收购了g d a 公司,v e r i l o gt t d l 语言成为c a d e n c e 公司的私有财产。1 9 9 0 年,c a d e n c e 公司决定公开v e r i l o gh d l 语言,于是成立了o v i ( o p e nv e r i l o gi n t e r n a t i o n a l ) 组 织,负责促进y e r i l o g i d l 语言的发展。基于v e r i l o gh d l 盼优越性,i e e e 于1 9 9 5 年制 定了v e r i l o gi i d l 的i e e e 标准,即v e r i l o gi i d l1 3 6 4 1 9 9 5 ;2 0 0 1 年发布了v e r i l o gh d l 1 3 6 4 2 0 0 1 标准。在这个标准中,加入了v e r i l o gh d l - a 标准,使v e r i l o g 有了模拟设计 描述的能力。 从语法结构上看,v e r it o gh d l 语言与c 语言有许多相似之处,并继承和借鉴了c 语 言的多种操作符和语法结构。下面列出的是v e r i l o gh d l 硬件描述语言的一些主要特点: 能形式化地表示电路的结构和行为。 借用高级语言的结构和语句,例如条件语句,赋值语句和循环语句等,在v e r i l o g h d l 中都可以使用,既简化了电路的描述,又方便了设计人员的学习和使用。 能够在多个层次上对所设计的系统加以描述,从开关级,门级,寄存器级到功能 级和系统级,都可以描述。设计的规模可以是任意的,语言不对设计的规模施家 任何限制。 v e r i l o gi t d l 具有混合建模的能力,即在个设计中各个模块可以在不同设计层次 上建模和描述。 基本逻辑门,例如a n d ,o r 和n a n d 等都内置在语言中:开关级结构模型,例如 p m o s 和n m o s 等也被内置在语言中,用户可以直接调用。 用户定义原语创建的灵活性。用户定义的原语既可以是组合逻辑原语,也可以是 时序逻辑原语。v e r i l o gi i d l 还具有内置逻辑函数。 j 4 浙江大学硕士学位论文 v e r i o gh d l 语言最大的特点就是易学易用,通过学习和使用,可以在最短的时间内 掌握该语言。另外,该语言的功能强大,可以满足各个层次设计人员的需要,从高层的系 统描述到地层的版图设计,都可以很好的支持。由于g e r i l o gh d l 巨大的优越性,使得它 1 泛流行,尤其是在a s i c 设计领域,更是处于主流地位。在美国,日本等国家,v e r i l o g h d l 语言也一直是使用最为广泛的硬件描述语言,其使用人数大大超过其他语言的使用人 数。在国内,v e r i l o gh d l 的应用群体也在不断扩大,越来越多的人使用该语言进行设计 和仿真。 本章小结 本章先介绍了d e s 加密算法的基本原理,然后介绍了本系统开发的环境,包括硬件 硬件开发平台e i t s 2 0 0 3 ,软件开发工具i s ew e b p a c k 和3 硬件描述语言v e r i l o gh d l , 浙江大学硕士学位论文 第三章d e s 加密系统设计与实现 3 1 d e s 加密系统设计方案 整个系统包括d e s 加密核心,u a r t 通信接口和b l o c k r a m 存储模块三大功能块, d e s 加密核心即对d e s 算法的硬件实现,以在合理的资源占用下实现尽可能高的性能为目 标;而u a r t 通信接口则负责加密核心与外界通信链路之间的数据吞吐。由于外界通信链路 的速率不尽相同,如何协调加密核心与通信接口之间的数据率也是一个值得考虑的问题。 f p g a 内部的b l o c k r h m 主要起到两方面作用:1 、缓冲数据:2 、u a r t 与d e s 模块之间的位 宽转换。 3 1 1d e s 加密核心设计方案 d e s 加密算法以多轮的密钥变换轮函数和密钥+ 数据运算轮函数为特征,与之相对应 的硬件实现,既可以通过轮函数的1 6 份硬件拷贝,达到深度细化的流水线处理,实现性能 上的最优;也可以通过分时复用,重复调用一份轮函数的硬件拷贝,以时间换空间,从而 得到硬件资源占用上的最小化。究竟选择怎么样的实现方式,根据实际硬件条件进行了选 择。 l 、性能优先方案: 采用循环全部打开和流水线结构来设计。循环全部打开后,实现全部1 6 个轮函数的 硬件级联,只要一个时钟周期就可以完成一个数据块的加密或解密;通过多占很大的空间 来换得速度上的大幅度提高,然后再在每轮的中间加上寄存器来实现流水线。在第一时钟 周期,第一块数据经过第一轮处理存入寄存器1 中。在下一个时钟周期,寄存器l 中的结 果经过第二轮处理存入寄存器2 中;同时,第二块数据可以经过第一轮处理存入寄存器 1 。这样,多块数据实现了同时处理,使得加解密速度可以提高近1 6 倍,确实让性能有了 大幅度的提高,但是由于实验平台上搭载的s p a r t a ni i ef p 6 a 总资源为1 0 万门左右,一 味地追求性能无疑是不切实际的。后来的综合验证肯定了这一观点“。 2 、资源优先方案 与性能优先方案相反,资源优先仅硬件实现一套密钥变换轮函数和密钥+ 数据运算轮 函数,通过反复1 6 次调用这一硬件结构来实现一次d e s 加密运算。这在大大减少硬件开销 的同时也在性能上作出了相应的牺牲。 基于性自和资源占用的综合考虑,采取了以资源优先方案为基础的实现形式,通过 在轮函数内部设置3 级流水线,提高整体处理的速度性能;将数据+ 密钥轮函数和密钥变换 函数在硬件上单独实现,减少了相邻流水线级问的逻辑复杂度”。 最终采取的整体方案可以用下图简要表示 6 浙江大学硕士学位论文 轮计数器 图3 - 1d e s 加密核心原理图 通过设置轮计数器对所进行的轮运算进行计数,控制d a t a m u x 和k e y m u x 两个数据选 择器选择进入轮函数运算的是加密中间数据还是原始输入数据,以达到复用轮函数的目 的。 3 1 2 通信接口设计方案 通信接口负责为d e s 加密核心吞吐数据,需要根据不同的通信介质进行设计,以以 太网应用为例,需实现相应的以太网, m a c 控制器以与物理层设备接口,或提供与已有以太 网控制器硬件相接口的逻辑总线。但是考虑到通用性的问题,由于通信链路速率的不同, 通信接口与d e s 加密核心之间很难实现数据传输和加密的同步,因此需要在两者之间设计 相应的机制。在数据跨越不同时钟边界时,如何稳定可靠地传输数据是一个值得重视的问 题,而握手或缓冲是常用的实现方案。由于x i l i n x 系列的f p g a 普遍提供了片b 1 0 c k r a l , 并且支持双端口、独立时钟操作,采用双口r a m 实现f i f o 缓冲为解决这一问题提供了切实 可行的方案。 考虑实验平台上硬件条件的限制,现成可用的通信接口只能选择u a r t 。由于u a r t 传输的低速率,无疑成为了整个系统性能的瓶颈,使得加密性能的实际测试无法进行。但 是从功能演示和熟悉系统实现的流程上来说,u a r t 的简易、可操作又不失为一个不错的选 择。因此,在本设计中,选取了u a r t 作为通信接口”。 u a r t 通信接口部分的系统框图如下图所示 浙江太学硕士学位论文 扭 o j ao 矗 孙! 竺竺一 if ll d q ll r l 二一竺j e n b ao , ii d 乱 5 0 m h z 一 图3 2u a r t 通信接口原理图 3 1 3b l o c k l 础存储模块设计方案 d e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 铁概考试题库及答案
- 2025版物业服务公司《公司电梯巡查记录表》模板空表
- 北京市门头沟区2023-2024学年八年级上学期期末考试语文考题及答案
- 新安医院面试题目及答案
- 写初中物理题目及答案大全
- 小学政治试讲题目及答案
- 企业行政文档分类及归档工具包
- 六年级话题作文欣赏艺术品600字15篇
- 高一物理力学的表面积与体积计算实例教案
- 企业员工培训需求分析工具与模板
- 变电站防恐课件
- 2025室内设计私人定制合同全面详细版
- 与欧美网红合作合同范本
- 2025年广东省中考数学试卷(含解析)
- 2025湖南非全日制用工劳动合同范本2
- 互操作性标准-第1篇-洞察及研究
- 2025年农村商业银行招聘笔试真题及答案(可下载)
- 熏蒸药品管理办法
- 广告牌安装后维护养护措施
- 大件运输安全管理制度
- 《电子产品制造技术》课件-第1章 电子工艺技术入门
评论
0/150
提交评论