(通信与信息系统专业论文)sata20硬盘加解密接口芯片数据通路的设计与fpga实现.pdf_第1页
(通信与信息系统专业论文)sata20硬盘加解密接口芯片数据通路的设计与fpga实现.pdf_第2页
(通信与信息系统专业论文)sata20硬盘加解密接口芯片数据通路的设计与fpga实现.pdf_第3页
(通信与信息系统专业论文)sata20硬盘加解密接口芯片数据通路的设计与fpga实现.pdf_第4页
(通信与信息系统专业论文)sata20硬盘加解密接口芯片数据通路的设计与fpga实现.pdf_第5页
已阅读5页,还剩104页未读 继续免费阅读

(通信与信息系统专业论文)sata20硬盘加解密接口芯片数据通路的设计与fpga实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 s a t a 接口是新一代的硬盘串行接口标准,和以往的并行硬盘接口比较它具有 支持热插拔、传输速率快、执行效率高的明显优势。s a t a 2 0 是s a t a 的第二代标 准,它规定在数据线上使用l v d sn r z 串行数据流传输数据,速率可达3 g b s 。另 外,s a t a 2 0 还具有支持n c q ( 本地命令队列) 、端口复用器、交错启动等一系列 技术特征。正是由于以上的种种技术优点,s a t a 硬盘业已被广泛的使用于各种企 业级和个人用户。 硬盘作为主要的信息载体之一,其信息安全问题尤其引起人们的关注。由于 在加密时需要实时处理大量的数据,所以对硬盘数据的加密主要使用带有密钥的 硬件加密的方式。因此将硬盘加密和s a t a 接口结合起来进行设计和研究,完成基 于s a l 队2 0 接口的加解密芯片系统设计具有重要的使用价值和研究价值。 本论文首先介绍了s a t a 2 0 的总线协议,其协议体系结构包括物理层、链路 层、传输层和命令层,并对系统设计中各个层次中涉及的关键问题进行了阐述。 其次,本论文对a r a 协议和命令进行了详细的解释和分析,并针对设计中涉及的 命令和对其做出的修改进行了说明。接着,本论文对s a t a 2 0 加解密控制芯片的 系统设计进行了讲解,包括硬件平台搭建和器件选型、模块和功能划分、系统工 作原理等,剖析了系统设计中的难点问题并给出解决问题的方法。然后,对系统 数据通路的各个模块的设计和实现进行详尽的阐述,并给出各个模块的验证结果。 最后,本文简要的介绍了验证平台搭建和测试环境、测试方法等问题,并分析测 试结果。 本s a l r a 2 0 硬盘加解密接口电路在x i l i n x 公司的v i r t e x5x c 5 v l x 5 0 tf p g a 上进行测试,目前工作正常,性能良好,已经达到项目性能指标要求。本论文在 s a t a 加解密控制芯片设计与实现方面的研究成果,具有通用性、可移植性,有一 定的理论及经济价值。 关键词:串行高级技术附加装置,数据加密,硬盘,协议层次,命令 a b s t r a c t a bs t r a c t s a t ai so n eo ft h en e w e s ts e r i a ls t a n d a r da p p l i e df o rt h ei n t e r f a c eo fh a r dd i s k s a t ah a ss o m ea d v a n t a g e sc o m p a r e dt op a t ai n t e r f a c e ,w h i c hs u p p o r t i n gh o tp l u ga n d t r a n s m i t t i n gd a t ai nah i g hs p e e d s a t a2 0i st h es e c o n dg e n e r a t i o ni ns a t af a m i l y i t u s e sl v d sn r zc o d et ot r a n s m i ts e r i a lb i to n eb yo n es ot h a tt h eb u ss p e e dc a nr e a c h u pt o3 g b s o t h e r w i s e ,s a t a2 0h a ss o m eu n i q u et e c h n i c a lf e a t u r e ss u c ha sn c q ,p m a n di n t e r l e a v i n gs t a r t u p b e c a u s eo ft h em e n t i o n e da b o v e ,h a r dd i s kw i t hs a t a i n t e r f a c eh a sb e e nw i d e l ya c c e p t e db yb o t he n t e r p r i s ec l a s sa n di n d i v i d u a lc l a s su s e r s t h ei n f o r m a t i o ns a f e t yi nh a r dd i s ki sav e r yi m p o r t a n ti s s u e i ti sr e a s o n a b l et o c h o o s et h eh a r d w a r ee n c r y p t i o nw a yt oh a n d l et h er e a lt i m em a s s i v ed a t ai na n do u to f t h eh a r dd i s k a n da l s of o rt h er e a s o no fp r o v i d i n ga d d i t i o n a ls a f e t y , k e ym e t h o dh a s b e e ni n v o l v e di nt h eh a r dd i s ke n c r y p t i o n s o ,s e t t i n gu pap r o j e c ti n c l u d i n gh a r dd i s k e n c r y p t i o na n ds a t a i n t e r f a c eh a si m p o r t a n tv a l u e t h i st h e s i sf i r s t l yi n t r o d u c et h eb u sp r o t o c o lo fs a t a2 0w h i c hi n c l u d ep h y l a y e r , l i n kl a y e r , t r a n s m i tl a y e ra n dc o m m a n dl a y e r , a n de x p l a i nt h ek e yp r o b l e m si nt h o s e l a y e r s s e c o n d l y , i tg i v e sad e t a i l e di n t e r p r e t a t i o na n da n a l y s i st oa t ap r o t o c o l ,w h i c hi s v e r yu s e f u li np i c k i n gu pt h ed a t af r a m et oe n c r y p t t h i r d l y , t h i st h e s i sp r o v i d e sa n o u t l i n eo ft h ew h o l ec i r c u i ts y s t e m i td i s c u s s e sh o wt ob u i l du pt h eh a r d w a r e c i r c u m s t a n c e ,h o wt od i v i d et h em o d u l e sa c c o r d i n gt ot h e f u n c t i o na n dw h a ti st h e p r i n c i p l eo fr u n n i n gs y s t e m f o u r t h l y , t h i st h e s i se l a b o r a t e l ys h o w st h ed e s i g no fe v e r m o d u l ei nd a t ap a t h ,a n dg i v e st h e i rv a l i d a t i o nc o n s e q u e n c e s a tt h el a s t ,t h e r ei sa s i m p l ei n t r o d u c eo fv a l i d a t i o na n dt e s t i n g t h i ss a t a2 0h a r dd i s ke n c r y p t i o ni n t e r f a c ec i r c u i th a sb e e nt e s t e di nv i r t e x5 x c 5 v l x 5 0 tf p g ao fx i l i n xc o r p o r a t i o n t h es y s t e mw o r k so n ah i g hp e r f o r m a n c e a n dm e e t sa l lr e q u i r e m e n t so ft h ed e s i g n k e y w o r d s :s e r i a la r a ,d a t ae n c r y p t i o n ,h a r dd i s k ,p r o t o c o ll a y e r , c o m m a n d 图目录 图目录 图2 一ls a t a 2 0 协议结构8 图2 2 物理层实现框图1 0 图2 3c o m r e s e t c o m 烈i t 信号组成1 0 图2 48 b 1 0 b 编码过程1 3 图2 - 5 链路层传输结构1 4 图2 6s a p i s 接口框图1 9 图2 7s a p i s 数据接收时序2 0 图2 8s a p i s 数据发送时序2 0 图3 - 1 无数据协议执行步骤2 3 图3 - 2p i o 数据输入协议执行步骤2 4 图3 - 3p i o 数据输出协议执行步骤2 5 图3 4d m a 数据输出协议执行步骤2 6 图3 - 5d m a 数据输入协议执行步骤2 7 图3 - 6d m a 排队写协议执行步骤2 8 图3 - 7d m a 排队读协议执行步骤2 9 图4 一l系统的应用环境3 4 图4 - 2 抽象的系统框图3 5 图4 3 原语传输方式说明3 5 一 图4 4 配置帧传输方式3 7 图4 5 非加解密帧传输方式3 8 图4 6 加解密帧的传输方式3 9 图4 7 系统实现框图4 0 图5 - 1系统数据和控制通路划分4 4 图5 - 2 物理层接口单元模块框图4 5 图5 3 加扰器计算结构4 6 图5 - 4p i u 模块扰码器调用时序4 6 图5 5p i u 功能仿真结果4 7 图5 6r e 结构框图4 8 v i i 图目录 图5 7 原语判断情况一解决时序4 9 图5 8 原语判断情况二解决时序5 0 图5 9 原语判断情况三解决时序5 0 图5 1 0 原语判断情况四解决时序5 l 图5 一l l 解扰电路结构5 l 图5 1 2c r c 计算结构图5 2 图5 1 3c r c 模块控制时序5 2 图5 - 1 4c r c 错误产生时序5 3 图5 一1 5 测试用例l 测试结果5 3 图5 1 6r e 测试用例2 测试结果5 4 图5 - 1 7r e 测试用例3 测试结果5 4 图5 - 1 8d p m 模块框图5 5 图5 1 9c r c 去除说明图示5 6 图5 2 0a l i g n 信号产生时序57end 图5 2 1a l i g n 原语插入时的c r c 去除时序5 7 图5 2 2r e g i s t e rh o s tt od e v i c e 帧格式5 8 图5 2 3 配置帧时序图5 9 图5 2 4 加密数据帧发送时序6 0 图5 - 2 5 不需要加密的帧发送时序6 0 图5 - 2 6 需要解密的帧发送时序6 1 图5 - 2 7 不需要解密的帧发送时序6 l 图5 - 2 8c r c 生成模块实现框图6 2 图5 - 2 9f i f o 内部框图6 2 图5 - 3 0f i f o 的读写时序6 3 图5 - 3 1d p m 测试用例1 仿真结果;6 3 图5 3 2d p m 测试用例2 仿真结果6 4 图5 3 3d p m 测试用例3 仿真结果6 4 图5 - 3 4d p m 测试用例4 仿真结果6 4 图5 3 5d p m 测试用例5 仿真结果6 5 图5 - 3 6e n c p 模块框图6 6 图5 3 7d p m 和e n c p 之间的端口时序6 7 图5 3 8 路由判断模块时序6 7 图目录 图5 - 3 9 图5 - 4 0 图5 - 4 1 图5 - 4 2 图5 4 3 图5 4 4 图5 - 4 5 图5 - 4 6 图5 - 4 7 图5 - 4 8 图5 - 4 9 图5 - 5 0 图5 - 5 1 图5 - 5 2 图5 - 5 3 图5 - 5 4 图5 5 5 图5 - 5 6 图5 5 7 图5 5 8 图5 - 5 9 图5 6 0 图6 - 1 图6 - 2 图6 - 3 图6 - 4 图6 - 5 图6 - 6 图6 - 7 图6 - 8 图6 9 图6 - 1 0 异步f i f o 结构图 异步f i f o 的读写时序 异步f i f o 的功能仿真波形 s p l 3 的数据结构 s p i 接口到算法芯片方向的时序 算法芯片到s p i 接口方向的时序 1 2 c 主机端结构框图 数据传输控制器主状态机 d a d d i 域t a d d r 的子状态机 r e a d d r & d a l 阪r 的子状态机 d a t aw & e n d 的子状态机 1 2 c 总线传输示意图 1 2 c 控制器状态机 配置数据的1 2 c 数据传输 e n c p 至加解密算法芯片方向的数据传输 加解密算法芯片往e n c p 方向的数据传输 s i e 模块框图 s i e 控制器状态机 s i e 帧传输时序 重复原语传输时序 s i e 重复原语发送仿真 s i e 帧发送仿真 系统验证平台框图 w t es e c t o r s 命令测试波形 r e a ds e c t o r s 命令测试波形 行覆盖率报告 条件覆盖率 系统测试环境图示 测试用f p g a m l 5 0 5 开发板 主板硬盘和开发板的连接 g t p 的闭环仿真环境 6 8 6 9 6 9 7 0 7 0 7 0 7 l 7 3 7 4 7 4 7 5 7 6 7 7 7 7 7 8 7 8 7 9 8 0 8 1 8 2 8 2 8 2 8 4 8 6 8 7 8 8 8 8 8 9 8 9 9 0 9 0 9 l 图目录 图6 - 1 l 闭环仿真结果9 l 图6 - 1 2c h i p s c o p e 捕捉的闭环测试结果9 l 图6 1 3 左右p h y 连接建立9 2 图6 - 1 4 检测到的硬盘信息9 2 图6 - 1 5 设备发起流控的情况9 3 图6 - 1 6 设备发起帧发送的情况9 3 图6 - 1 7 主机接收帧结束的情况9 3 图6 - 1 8h dt u n ep r o 的硬盘读写测试结果9 4 图6 - 1 9h ds p e e d 硬盘读性能曲线比较9 4 x 表目录 表目录 表2 1原语编码。1 5 表2 2 原语描述1 5 表2 3 主机命令阴影寄存器帧发送过程1 6 表2 - 4f i s 类型、描述和传输方向。1 7 表2 5 数据接收建立保持时间关系表1 9 表2 - 6 数据发送时间关系表2 1 表3 一lf p d m a 读排队命令协议执行步骤3 0 表3 2p d m a 排队写命令协议的执行步骤3 l 表3 3 需要进行加解密处理的命令:3 2 表4 1系统功能列表4 2 表5 一l原语编码规则4 8 表5 2 数据帧格式5 8 表5 3 帧数据类型判断标准6 7 表5 41 2 c 接口寄存器说明7 2 x i 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作 及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为 获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的 说明并表示谢意。 签名:j 塑日期:习年f 月s 。日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:盘塑导师签名: 日月弓。日 第一章绪论 1 1 论文的研究背景 1 1 1 信息安全领域的概述 第一章绪论 信息安全的特点是综合性强,它可能涉及到计算机科学与技术、网络通信技 术、密码技术、信息安全技术等多门学科。信息安全领域包括的范围也很广,从 国家军事政治的机密到企业的商业机密,甚至居民个人信息和隐私等都属于信息 安全所关注的对象。信息安全从广义上讲是指硬件、软件及其系统中的数据受到 保护,不受恶意的或偶然的原因而遭到破坏、更改、泄露。因此可以认为信息安 全的核心就是保障数据的安全,信息安全中的数据安全在不同的应用环境中有不 同的体现。 由于人们主观上缺乏对信息安全问题的重视和客观上信息化的迅猛发展,所 以忽视信息安全所引起的相关问题在我国日益增多。其中个人资料的流失可能对 个人造成生活中的种种不便,公司商业机密的泄漏可能造成巨大的经济损失,更 加严重的情况是国家机密信息的泄漏,因此信息安全在维护国家和个人安全中的 地位突出,是国家安全的重要组成部分。 1 9 9 4 年颁布的中华人民共和国计算机信息系统安全保护条例,把信息安全 界定为“保障计算机及相关的和配套的设备、设施的安全,运行环境的安全,保 障信息安全,保障计算机功能的正常发挥,以维护计算机信息系统的安全 。从这 个法律规定来看,计算机系统安全应当包括人的安全、实体安全、运行安全和信 息安全f 。 1 人的安全。指计算机使用人员的安全意识、法律意识、安全技能等。 2 实体安全。指保护计算机设备、设施以及其他媒体免遭自然和认为破坏的 措施、过程,包括环境安全、设备安全和媒体安全三个方面。 3 运行安全。主要包括系统风险管理、审计跟踪。备份与恢复、应急四个方 面的内容。 4 信息安全。指防止信息被故意的或者偶然的非法泄漏、更改、破坏或者使 信息被非法系统辨识、控制,即确保信息的保密性、完整性、可用性、可控性。 电子科技大学硕士学位论文 针对计算机信息系统中信息存在形式和运行特点,信息安全包括操作系统安全、 数据库安全、网络安全、病毒防护、访问控制、加密与鉴别七个方面。 从某种意义上讲,实体安全、人的安全及运行安全属于物理安全,也就是信 息载体的安全;而信息安全则可以看成是数据安全,即信息内容的安全。数据安 全的核心就是解决所存储信息的安全,当前硬盘存储仍然是数据存储的主流。 1 1 2 信息安全的研究现状和发展趋势 从宏观的信息安全角度来看当前在市场上比较流行的而又能够代表未来发展 方向的安全产品大致有以下几类【2 1 : 防火墙:防火墙在某种意义上可以说是一种访问控制产品,它对流经它的网络 通信进行扫描,这样可以过滤掉一部分攻击,一面其在目标计算机上被执行。 防火墙还可以关闭来自特殊站点的访问,或者禁止特定端口的流出通信,封锁 木马。但它本身可能存在安全问题,也可能会是一个潜在的瓶颈。 安全路由器:安全路由器主要是指整合了以往在防火墙或者v p n 功能的,提 供给企业应用的新型路由器产品。它具有防火墙、加密v p n 、带宽管理等安 全功能。 虚拟专用网( v p n ) :虚拟专用网( v p n ) 是在公共数据网络上,通过采用数据 加密技术和访问控制技术,实现两个或多个可信内部网之问的互联。v p n 的 构筑通常都要求采用具有加密功能的路由器或防火墙,以实现数据在公共信道 上的可信传递。 安全服务器:安全服务器主要针对一个局域网内部信息存储、传输的安全保密 问题,其实现功能包括对局域网资源的管理和控制,对局域网内用户的管理, 以及局域网中所有安全相关事件的审计和跟踪。 用户认证产品:由于i c 卡技术的日益成熟和完善,i c 卡被更为广泛地用于用 户认证产品中,用来存储用户的个人私钥,并与其它技术如动态口令相结合, 对用户身份进行有效的识别。 安全管理中心:由于网上的安全产品较多,且分布在不同的位置,这就需要建 立一套集中管理的机制和设备,即安全管理中心。它用来给各网络安全设备分 发密钥,监控网络安全设备的运行状态,负责收集网络安全设备的审计信息等。 入侵检测系统( i d s ) :入侵检测,作为传统保护机制( 比如访问控制,身份识 别等) 的有效补充,形成了信息系统中不可或缺的反馈链。 2 第一章绪论 安全数据库:由于大量的信息存储在计算机数据库内,有些信息是有价值的, 也是敏感的,需要保护。安全数据库可以确保数据库的完整性、可靠性、有效 性、机密性、可审计性及存取控制与用户身份识别等。 安全操作系统:给系统中的关键服务器提供安全运行平台,构成安全w w w 服务,安全f t p 服务,安全s m t p 服务等,并作为各类网络安全产品的坚实 底座,确保这些安全产品的自身安全。 信息安全产品的种类体现出入们在这个领域所关注的焦点。目前的信息安全 研究主要集中于安全体系结构的理论、网络安全和网络产品这一类。关于密码理 论和技术的研究是我们国家的薄弱环节,和国外发达国家比较我们在这方面存在 很大的差距。由于涉及国家安全,密码理论等关键技术的研究不得采用其他国家 的研究成果,这就客观上要求我们的科技工作者必须自主开发并加强这方面的研 究力求达到国际先进水平。 1 2s a t a 硬盘加密课题的引出和意义。 1 2 1 硬盘加密研究的迫切性和研究现状 随着p c 机和笔记本开始在企业和个人用户中普及。随之而来的硬盘或者笔记 本丢失所造成的泄密事件就逐渐成为各国政府、企业和个人头痛的问题。根据美 国计算机安全研究所公布的一项调查结果表明,1 9 9 9 年5 7 的企业曾经发生过笔 记本电脑被盗事件:在2 0 0 1 年全球约有6 0 万台笔记本电脑被盗。据英国泰晤 士报报道,英国国防部2 0 0 8 年丢失一个存储大约l o 万份现役军人详细资料的 移动硬盘,并且无法确认的是这块硬盘是否是被盗,唯一清楚的是该硬盘中的数 据没有经过加密处理,直接经济损失不计其数。另报道,英国国防部2 0 0 3 到2 0 0 7 年4 年中有7 4 7 台笔记本电脑遭窃或遗失,只有3 2 台失而复得。国外如此,国内 也不例外,据悉在国家保密局掌握的十数起电脑涉密案件中,涉及国防军工秘密 的占6 3 ,其余案件均涉及重要部门的重要岗位,而且被盗电脑全部涉密。由于 电脑丢失而造成的损失对国家是如此,对企业和个人亦是如此。2 0 0 8 年被炒的沸 沸扬扬的陈冠希的“艳照门”事件就是典型的个人数据泄漏对个人隐私造成的极 端影响的一个案例。因此对硬盘加密技术的研究和探索具有重大的理论和实际意 义。 目前,实现硬盘数据加密的方法有如下几类【2 j : 3 电子科技大学硕士学位论文 基于密码的硬盘锁 密码硬盘锁是a t a 硬盘的标准功能。用户可以使用一个特殊命令来设置一个 用来访问硬盘的密码。大多数笔记本电脑和台式机都包含支持该功能的b i o s 选 项。了解b i o s 的功能的用户可以设置密码,每次系统启动时都必须输入正确的 密码才能够访问硬盘。该方法看似有效,但是假如有人能够确定密码,就可以访 问硬盘的所有数据。 软件加密方法 软件加密方法中比较常见的有:修改硬盘主引导程序、修改主分区表、编写 硬盘驱动程序实现加密功能。其中的前两种方式,操作比较简单,比较容易实现, 但是对于经验丰富的程序员可以进行修改修复,实现硬盘数据的解密。使用硬盘 驱动程序实现加密功能,虽然存储到硬盘上的数据时经过算法加密过的,但是加 密所使用的辅助信息也是存放在硬盘上的。 硬件加密方法 硬件加密的实现通常采用硬件加密卡的形式,硬件加密卡在使用时位于硬盘 租主板之间,数据无论是从主板流向硬盘或者是从硬盘流向主板都要经过硬盘加 密卡对相关的数据进行加密或者解密。硬盘加密卡的另外一个重要组成部分是密 钥存储处理芯片,它决定了硬盘加密卡是否可以被正确配置而正常工作。 硬盘硬件加密的方法和软件加密存在着显著的不同的,和软件加密相比它的 优势在于: 1 硬件加密的方法和操作系统没有关系,其实现只由硬盘接口协议决定: 2 硬件加解密使用硬件电路实现加解密算法并完成接口协议的控制,不占用 系统资源: 3 和软件加密相比较,硬件加密的密钥存储更加安全可靠; 4 处理实时大量数据的能力明显优于软件加密。 软件加密相对硬件加密在实现方法上较为容易,但是由于其对系统资源的依 赖可以造成系统性能的下降,一般对硬盘进行实时数据加密的并不采用软件加密 的方法。 1 2 2 硬盘接口的简介及市场应用情况说明 硬盘接口作为主机和硬盘之间的连接部件,承担了所有数据传输的功能。它 是硬盘缓存和主机内存之间数据传输的接口,同时也是硬盘和系统之问数据传输 4 第一章绪论 速度的瓶颈。也就是说硬盘接口的性能和速度对整个计算机系统运行的速度和效 率起到很大的制约作用。正如在1 2 1 节中提到的,假如使用硬件加密的方式对硬 盘中的数据进行加解密,那么对加解密系统架构影响最大的就是硬盘接口。 硬盘接口分为i d e 、s a t a 、s c s i 和光纤通道四种,i d e 接口硬盘多用于家用 产品中,s c s i 接口的硬盘则主要应用于服务器市场,而光纤通道只在高端服务器 上,价格昂贵。s a t a 是种较新的硬盘接口类型,在个人和企业级市场中有着广泛 的应用。 在这四种硬盘接口中,i d e 和s a t a 是最常见也是市场普及率最高的两种接 口。i d e 的英文全称为“i n t e g r a t e dd r i v ee l e c t r o n i c s ”,即“电子集成驱动器”,它的 本意是指把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器。把盘体与控制器集成 在一起的做法减少了硬盘接口的电缆数目与长度,数据传输的可靠性得到了增强。 i d e 硬盘采用删舢r a p i 并行接口标准。 s 觚a ( s e r i a la t a ) 接口的硬盘又叫串口硬盘。2 0 0 1 年,由i n t e l 、a p t 、d e l l 、 i b m 、希捷、迈拓等几大厂商组成的s e r i a la t a 委员会正式确立了s e r i a la 1 r a1 0 规范p j ,2 0 0 2 年,s e r i a la t a 委员会确立了s e r i a la 1 隗2 0 规范。s e r i a la 1 r a 采用串 行连接方式,具备了更强的纠错能力。串行接口还具有结构简单、支持热插拔、 传输速度快等优点。s a t a 2 0 接口是从s a t a 的基础上发展起来的,其主要特征是 外部传输率从s a t a 的1 5 g b p s ( 1 5 0 m b s e c ) 进一步提高到了3 g b p s ( 3 0 0 m b s e c ) , 此外还包括n c q ( n a t i v ec o m m a n dq u e u i n g ,原生命令队列) 、端口多路器( p o r t m u l t i p l i e r ) 、支持r a i d 等一系列的技术特征1 4 j 。正是这些优点使得使用s a t a 2 0 接口的硬盘成为了本论文的研究对象。 由于和传统的i d e 硬盘相比s a t a ,尤其是s a t a 2 0 接口硬盘具有传输速率 高、数据更可靠、连线更简单等明显优势,所以目前市场上i d e 硬盘的霸主地位 已经被s a t a 硬盘所替代。现在主流电脑厂商如a c e r 、联想、h p 等在个人p c 、 笔记本电脑、以及服务器中均采用s a t a 2 :0 接口的硬盘。s a t a 硬盘代替i d e 硬 盘已经不再是趋势,而成为了现实。 1 2 3 研究s a t a 接口硬盘加解密课题的意义 目前在硬盘加密芯片和硬盘加密卡研制方面,国外已经出现了一些相关的产 品,但是目前国内并没有有自主知识产权的同类产品。由于之前i d e 硬盘在市场 上的主导地位,使得硬盘加密芯片和硬盘加密卡都是基于i d e 接口的,也就是并 5 电子科技大学硕士学位论文 口的产品。由于接口协议与s a t a 接口协议存在很大的不同所以无法通用。在s a t a 硬盘占据主导地位的当下,s a t a 硬盘加密芯片和加密卡方面的研究尚属于一个空 白。考虑到国家安全因素,加大s a t a 硬盘加解密产品的开发也势在必行。 正是因为上述原因,开发有自主知识产权的s a t a 2 0 接口硬盘加密芯片并推 广和使用,必然会推动我国信息安全领域的发展,带来直接的经济效益。 1 3s a t a 2 0 硬盘加解密接口芯片设计难点及本人工作 s a t a 2 0 硬盘加解密接口芯片的设计中存在很多难点,以下仅罗列出具有代表 性和对项目产生关键影响的难点。 1 没有独立的s a t a 2 0 物理层芯片可供选择,器件选型存在一定的困难和制 约。 2 s a t a 2 0 协议较新,处于保密的原因可以找到的相关资料很少,无法提供足 够的理论支持。 3 由于s a t a 是l v d s 的串行总线,因此对总线上数据流的分析造成很大的 困难。 4 逻辑分析仪或者在线逻辑分析仪可存储的数据容量有限制,使得有时无法 将一帧完整数据保存,从而对错误分析带来一些问题。 5 没有v e r i f i c a t i o ni p ,所以无法完整仿真s a t a 主机和设备控制器之间的协 议交互造成搭建的验证平台和实际环境之间的差别很大。 6 主要依靠实际环境进行调试,效率较低,错误触发的机制造成很多典型错 误不容易被发现。 7 s a t a 总线上传输对齐原语a l i g n 和s a t a 2 0 协议中介绍的有出入,造成 数据通路的控制上受制。 s a t a 2 0 硬盘加解密接口芯片的设计依据主要是s a t a 协议和实际环境下的 主机设备的行为。其中很多细节由于资料的限制都是我们不甚了解的,总的来说 是个摸着石头过河的过程,实现s a t a 总线上的加解密是存在很大难度的。具体的 难点及其解决方法将在后续章节中详细阐述。 本人在课题中承担的工作包括: 根据需求书,配合同事规划芯片实现方案,进行合理的模块划分; 制定芯片设计详细设计方案; 使用v e r i l o g 语言具体实现了整个数据通路的五个模块设计。具体包括p h y 接 6 第一章绪论 口单元模块( p i u ) 、接收判断模块( r e ) 、数据处理模块( d p m ) 、发送接口 引擎( s i e ) 和加解密接口模块( e n c p ) j 并完成这些模块的功能仿真: 协助参与系统测试方案制定与f p g a 上板调试。 1 4 本论文的内容安排 本论文共分为七个章节。第一章是绪论,主要介绍论文研究课题的引入,课 题实现的难点、任务及作者完成的主要工作。第二章阐述了s a t a 2 0 协议的有关 内容和s a p i s 接口的相关知识,并对其中和课题有关键影响的部分进行了深入的 讨论。第三章对a t a a t a 一6 指令集和相关的a 1 除命令协议进行了详细的说明和分 析,这些分析对课题中涉及帧提取、数据加解密的部分起到了核心的支持作用。 第四章是对s 朋队加解密接口芯片的系统设计进行的讲解和说明,其中介绍了器件 选型、系统应用环境、数据和原语传输方式、系统总体设计方案和模块划分等众 多内容。第五章是本论文的重点,它详细的阐述了系统中完整的数据通路以及相 关数据处理部分的设计和实现,其中包括d p m 、e n c p 、r e 、p i u 、s i e 等模块的 详细设计和功能仿真结果。第六章概括性的叙述了s a t a 2 0 加解密接口电路的验 证平台搭建和测试情况,并对其对系统设计和数据通路设计的影响进行解释说明。 第七章是总结和展望,指出了后续工作可能的进展方向。 7 电子科技大学硕士学位论文 第二章s a t a 2 0 总线协议及s a p i s 接口规范 s a t a 2 0 是在s a t a l 0 的基础上发展起来的,虽然增加了诸如速率的提高、 n c q 等技术特征,但是协议的结构总体来说和s a t a i 0 没有很大的变化,仅仅是 一些技术细节上的变化,本章将针对这些问题一一进行说明。 s a t a 2 0 协议采用了吉比特以太网结构和8 b 1 0 b 技术,在数据线上采用了 3 g b sl v d sn r z 串行数据流传输数据1 4 j 。协议分为4 层体系结构:物理层、链接 层、传输层和应用层。应用层主要负责所有的a 1 r a 命令的执行,包括命令块寄存 器的访问。传输层负责将需要传输的控制命令以及数据打包成帧信息结构( f i s ) 的方式在主机和设备之间进行传输。链路层的功能是对数据进行8 b 1 0 b 编码、在 1 0 比特数据流中插入控制字等。物理层是负责将已经解码的数据以串行数据流的 形式发送到总线上去。s a t a 2 0 的协议结构如图2 1 所示【2 2 1 。 图2 1s a t a 2 0 协议结构 8 第二章s a t a 接口数据传输协议分析 2 1s 御隗总线协议分析 2 1 1 物理层分析 和s a t a i 0 协议的物理层相比较,s a t a 2 0 协议的物理层所提供的服务很类 似,只有些许差别。具体而言,其物理层提供以下功能【4 1 【2 3 】: 发送器可提供一个1 0 0 欧姆的差分匹配终端: 可为链路层发送数据提供l o ,2 0 ,4 0 路或者其他宽度的输入; 接收器提供10 0 欧姆的差分匹配终端; 可从串行码流中提取数据或者时钟: 可对串行码流进行解串: 可检测k 2 8 5 逗号字节; 可提供确定的o o b 信号发送和检测机制; 可使用o o b 信号协议初始化s a t a 接口,并使用o o b 序列进行上电和速率匹 配; 可对链路层提供诸如设备在线、设备掉线、设备在线但是无法通信三个设备状 态: 可选择的支持功率管理模式; 可选支持传输和接收阻抗匹配条件; 解决由于时钟抖动造成的数据不稳定; 可以响应对方发出的远端测试请求操作。 物理层的实现框图如图,2 2 所示。其中主要包括几个部分,模拟前端是传输线 的基本接口,这个块包括高速差分发送器和接收器和o o b 信号电路,控制逻辑块 实现所有的控制功能,a l i g n 生成和a l i g n 检测模块分别实现a l i g n 原语的生成和 检测,时钟数据恢复从输入的高速串行数据流中提取出时钟和数据。 9 电子科技大学硕士学位论文 。 t x + _ l i l i a l i g n x 4 喊 : r 广_ 1j。:。 t x l l 彳一0 一 t l l 。p e i y r d y s l u m b e r 。模拟 p a r t i a l 。 控制逻辑 前端 s p d s e l 。 s p d m o d e 、s y s t e mc l o c k 。 c o m m i i 。 土 么 r x + “。去li a 。产 时钟数据、一 i 己x i 解串1 t 未州一 恢复 r x c l o c k千l j c o 删n 啪m 曝置s 盱 一c o m w a 旺 图2 2 物理层实现框图 物理层使用c o m r e s e t 、c o m i n i t 和c o o m w a k e 三种带外信号来进行上 电连接和完成数据传输之前的准备工作。带外信号的检测是通过对总线上信号的 活动和休眠时间判断来决定的,三种带外信号都是由a l i g n 原语和空闲时序组合 而成的,其区别就在于时问长度的不同。 由s a t a 2 0 协议可以知道,c o m r e s e t 信号的组成是1 6 0 个a l i g nd w o r d ( 1 0 6 7 n s ) 后接4 8 0 个空闲d w o r d 时序( 3 2 0 n s ) 组成的。一个完整c o m r e s e t 信号的组成图如图2 3 所示。 图2 3c o m r e s e t c o m i n i t 信号组成 c o m r e s e t 信号一般由主机主动发起,其目的是强制性的要求设备重新启 动。这个重新启动的过程是由主机和设备之间的相互握手达到的,可以用作主机 主动发起的对设备的扫描。以下对其握手的过程进行解释: 1 0 第二章s 朋r a 接口数据传输协议分析 1 主机设备处于正常工作状态; 2 由于某种情况发生使得主机主动发出c o m r e s e t ; 3 主机发出c o m r e s e t 并在发出成功之后保持总线静止; 4 设备收到c o m r e s e t 后发出c o m i n i t 进行回应。这个信号是设备提起重 新建立连接的开始信号,设备可以在任何时候提起重新建立连接的请求; 5 主机对自己校正并发出c o m w a k e 信号: 6 设备在接受到c o m w a k e 之后连续发送6 个c o m w a k e 。随后连续发送 2 0 4 8 个a l i g n 数据流,在发送结束之前等待主机的应答信号。若在2 0 4 8 个a l i g n 信号发送完毕后尚未收到主机的有效应答则设备进入错误状态; 7 主机接收到设备发送的6 个c o m w a k e 信号中的任何一个之后,就以其最 低速度发送d 1 0 2 数据。同时主机的接收模块对接收到的a l i g n 原语进行锁存, 并且以接收到的速度将其发送回给设备,这样的握手要求主机必须有可以存放完 整的2 0 4 8 个a l i g n 原语的缓冲区。当主机收到c o m w a k e 之后的8 8 0 u s 内,就 会接收设备发送的a l i g n 数据。倘若在该时间段内没有收到任何的a l i g n 那么 主机就会重新启动上电时序,重复的去检测设备,直到应用层停止该操作; 8 当完成3 次握手之后,通讯就成功建立了。 c o m i n i t 和c o m r e s e t 的组成是完全一样的,不同的地方在于c o m i n i t 是由设备发出的,目的是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论