(信息与通信工程专业论文)基于stat20接口的硬盘加解密控制芯片的设计与实现.pdf_第1页
(信息与通信工程专业论文)基于stat20接口的硬盘加解密控制芯片的设计与实现.pdf_第2页
(信息与通信工程专业论文)基于stat20接口的硬盘加解密控制芯片的设计与实现.pdf_第3页
(信息与通信工程专业论文)基于stat20接口的硬盘加解密控制芯片的设计与实现.pdf_第4页
(信息与通信工程专业论文)基于stat20接口的硬盘加解密控制芯片的设计与实现.pdf_第5页
已阅读5页,还剩89页未读 继续免费阅读

(信息与通信工程专业论文)基于stat20接口的硬盘加解密控制芯片的设计与实现.pdf.pdf 免费下载

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

文档简介

摘要 摘要 s a t a 2 。0 接瑟是传输速率达到3 g b p s 的睾行接蹬,协议采用了吉毙特以太网 结构和8 w 1 0 b 编码技术,在数据线上采用l v d sn r z 串行数据流传输数据,同时 还支持n c q ( 本地命令队列) 、端翻复用器、交错启动、热插拔等一系列的技术特 征。该总线使得数据传输更加快速和稳定可靠,在存储领域特别是在硬盘领域被 广泛采用。 信息时代的到来,数据存储和保护的需求与日俟增。基予硬件的加密方式由 于其速度快,具有安全可靠的密钥存储方式已成为数据加解密的发展趋势。将硬 盘加密和s a t a 接弱结合起来进行设计和研究,实现基于硬件的硬盘加密控制器, 完成带s a t a 2 0 接口的加解密控制电路设计具有重要的使用价值和研究价值。 本文首先奔绍了s a t a 2 。0 协议和a t a a t a p l 6 指令集,包括物理层、链路层、 传输层和命令层分析、四种传输协议和常用命令分析,还提出了在设计中需要注 意的地方,包括上层协议和功能的选择等,并且提出了具体实现中需要对协议进行 修改的地方和原因。然后,本文描述了s a t a 2 。0 加解密控制芯片的系统设计,包 括应用环境、规格设计和总体模块划分,剖析了芯片设计的难点及其解决方法, 并提出了芯片设计框蓬。最后对各模块豁实现均终了具体的论述。 本芯片采用s y n o p s y s 公司的s a t av i p 辅助验证,并采用x i l i n x 公司的f p g a 作为最终实现,本文最后绘出了系统验证和测试的环境以及绩栗。从测试结果看 出本芯片的核心功能单元:接收判断模块、发送控制模块、数据处理模块和发送 接口引擎都能正常的工作,能进行数据传输。 本论文中所讨论的芯片设计方法等已在论文作者参与的s a t a 2 0 加解密控制 芯片项目中实现。在x i l i n xv 5f p g a 上工作正常,性能良好,达到性能指标要求。 本论文在s a t a 加解密控制芯片设计与实现方面的磷究成果,具有通用性、可移植 性,有一定的理论及经济价值。 关键字:串行高级技术附加装置,数据加密,循环冗余校验,8 b 1 0 b 编码 a b s t r a c t a b s t r a c t s e r i a la t a2 0i sah i g h - s p e e ds e r i a ll i n k w h i c hs p e e dc a nr e a c hu pt o3 g b p s t h e s e r i a ll i n ki sah i g h - s p e e dn r zs e r i a ls t r e a ma ts p e c i f i e dv o l t a g el e v e l st h a tu t i l i z e s g i g a b i tt e c h n o l o g ya n d8 b 10 be n c o d i n g ,a tt h es a m et i m ei t c a l ls u p p o r ts o m e t e c h n o l o g yc h a r a c t e r s ,s u c ha sn c q ,p o r tm u l t i p l i e r , i n t e r l e a v i n gs t a r t u p ,h o ts w a pa n d s oo n 。t h eb u sm a k e sd a t at r a n s f e rf a s t e ra n dm o r es t a b l ea n dr e l i a b l e ,s oi ti sw i d e l y u s e di nt h es t o r a g ea r e a s ,e s p e c i a l l yi nt h ea r e ao fh a r dd i s k w i t ht h ea d v e n to ft h ei n f o r m a t i o ne r a ,t h en e e df o rd a t as t o r a g ea n dd a t a p r o t e c t i o nh a sb e e nb e c o m i n gm o r ea n dm o r eu r g e n t t h ee n c r y p t i o nt e c h n i q u eb a s e d o nh a r d w a r eh a sf e a t u r e so fh i g h e rs p e e da n dr e l i a b l ew a yo fs e c r e tk e ye n c r y p t i o n ,s oi t g r a d u a l l yb e c o m e st h et r e n do fd a t ae n c r y p t i o n 。i n t e g r a t i n gh a r dd i s ke n c r y p t i o na n d s a t a 2 0i n t e r f a c ec i r c u i td e s i g na n dr e a l i z i n gh a r dd i s ke n c r y p t i o nc o n t r o l l e rh a r d w a r e h a v ev e r yi m p o r t a n tu s ev a l u ea n dr e s e a r c hv a l u e 。 i nt h ef i r s tp l a c e ,t h i sd i s s e r t a t i o ni n t r o d u c e ss a t a2 0p r o t o c o la n d 觚a a r a p i 一6 c o m m a n ds e t ,w h i c hi n c l u d ep h y s i c a ll a y e r , l i n kl a y e r , t r a n s p o r tl a y e ra n dc o m m a n d l a y e ra n a l y z e ,f o u rd i f f e r e n tc a t e g o r i e so ft r a n s p o r ts p e c i f i c a t i o na n dc o m m a n d si n c o m m o nu s e ,p u tf o r w a r dw h e r en e e db ep a i da t t e n t i o nt oa n dw h e r en e e db ea m e n d e d f o rp r o t o c o li nt h ed e s i g np r o c e s s a n dt h a n ,t h i sd i s s e r t a t i o nd e s c r i b es y s t e md e s i g no f s a t a2 0 e n c r y p ta n dd e c r y p tc o n t r o l l e rc h i p ,i n c l u d ea p p l ye n v i r o n m e n t , d e s i g n s p e c i f i c a t i o na n dm o d u l ep a r t i t i o n ,e x p l a i nd i f f i c u l t ya n dt h ew a yt or e s o l v ea n dc h i p d e s i g nd i a g r a m f i n a l l yd i s c u s st h ed e t a i l e dr e a l i z eo fe v e r ym o d u l e s a s s i s t a n tv e r i f i c a t i o ni po ft h ec h i pu s e st h es a t av i po fs y n o p s y sc o m p a n y , a n du s et h ex i l i n xv 5f p g aa st h eu l t i m a t er e a l i z a t i o nf l a t ,a n di nt h ee n do ft h i s d i s s e r t a t i o n , e x p l a i nt h es y s t e mv e r i f i c a t i o na n dt e s t i n ge n v i r o n m e n t , a sw e l la st h e r e s u l t s f r o mt h et e s tr e s u l t sw ec a l lg e to u tt h ei m p o r t a n tf u n c t i o nu n i to ft h i sc h i p , s u c h a sr e c e i v ee s t i m a t em o d u l e ,s e n t c o n t r o lm o d u l e ,d a t ap r o c e s sm o d u l ea n ds e n di n t e r f a c e e n g i n ec a l lw o r ke x a c t l y , c a np r o c e s sd a t at r a n s m i s s i o n 砀ec h i pd e s i g nm e t h o d sd i s c u s s e di nt h i sd i s s e r t a t i o nh a sb e e na c h i e v e di nt h e s a t a 2 。0e n c r y p t i o nc h i pc o n t r o lp r o j e c t s 。i tw o r k sn o r m a l l yo nx i l i n xv 5f p g a ,h a s a b s t r a c t g o o dp e r f o r m a n c ea n dr e a c h e sp e r f o r m a n c er e q u i r e m e n t s t h er e s e a r c hf r u i to fs a t a e n c r y p ta n dd e c r y p tc o n t r o lc h i pd e s i g na n dr e a l i z eb a s e do nt h i sd i s s e r t a t i o ni so fs o m e t h e o r e t i ca n de c o n o m i c a lv a l u ea n dc a nb ea p p l i e dt om a n yp u r p o s e s k e y w o r d s :s e r i a la t a ,d a t ae n c r y p t ,c y c l i cr e d u n d a n c yc h e c k ,8 b 10 be n c o r d i n g 图目录 图2 1 图2 2 图2 3 图2 4 图2 - 5 图2 6 图2 7 图2 8 图2 9 图2 1 0 图2 1 1 图2 - 1 2 图2 1 3 图2 1 4 图2 1 5 图2 1 6 图2 1 7 图2 1 8 图3 - 1 图3 2 图3 3 图3 4 图3 5 图3 6 图3 7 图4 - 1 图4 2 图4 3 图目录 s 御r a 总线结构图4 并行a t a 连接方式。5 串行a t a 连接方式5 s 御陵体系结构图6 物理层实现框图7 c o m r e s e t c o m 烈r i 信号组成7 c o m w a k e 信号组成8 s a t a 上电序列8 8 b 1 0 b 编解码过程9 帧传输指示图1 2 无数据命令协议:1 4 d m a 读写命令协议1 5 p i o 读写命令协议1 6 d m a 排队读写命令协议:。1 7 n c q 读写命令协议。1 8 s a p i sp h y 接口信号图j 。1 9 数据接收时序图2 0 数据发送时序图:2 0 芯片应用环境。2 2 原语传输方式2 3 配置帧传输方式2 4 非加解密帧传输方式2 4 需要加解密帧传输方式。2 5 系统逻辑框图2 6 总体实现框图:2 6 异步复位电路3 1 输入控制模块电路j 3 1 加扰器结构图。3 2 l 图目录 图4 4 图4 5 图4 6 图4 7 图4 8 图4 9 图4 1 0 图4 1 1 图4 1 2 图4 - 1 3 图4 - - 1 4 图4 - 1 5 图4 - 1 6 图4 - 1 7 图4 - 1 8 图4 1 9 图4 - 2 0 图4 - 2 1 图4 - 2 2 图4 - 2 3 图4 2 4 图4 - 2 5 图4 2 6 图4 2 7 图4 2 8 图4 - 2 9 图4 3 0 图4 - 3 1 图4 3 2 图4 3 3 图4 3 4 图4 3 5 加扰模块实现框图_ 3 2 发送控制模块实现结构图。3 3 主状态机状态转移图。3 4 主控制器模块进入和退出状态图3 6 左边上电和功率管理控制器状态转移图3 8 系统进入功率管理模式流程图。4 1 系统退出功率管理模式流程图。4 1 右边上电和功率管理控制器状态转移图。4 2 lp h y生成电路图4 5 左边接r 收d y 控制器状态转移图4 5 左边接收帧状态机进入和退出情况4 7 右边发送控制器状态转移图4 8 右边接收控制器状态转移图5 1 右边接收帧状态机进入和退出情况。5 1 左边发送控制器状态转移图。5 2 接收判断模块实现框图5 3 原语数据判断模块时序_ 5 3 c o n ti n d 信号生成电路。5 4 f r a m ei n d 和d sa d v a n c e d 信号生成5 4 解扰模块实现框图5 5 解扰模块和c r c 校验模块时序5 5 c r c 校验结构图。5 5 数据处理模块实现框图5 7 配置帧时序图5 8 lf r a m es t a r t 信号生成电路5 8 主机到硬盘需要加密帧时序图。5 9 主机到硬盘不需要加密帧时序图5 9 硬盘到主机需要加密帧时序图6 0 硬盘到主机不需要加密帧时序图6 0 c r c 生成模块电路图。6 1 c r c 作用范围6 l s i e 模块实现框图6 2 v h l 图l l 录 图5 1 图5 2 翻5 - 3 图5 4 图5 5 图5 6 图5 7 图5 8 照5 9 图5 1 0 图5 1 l 图5 1 2 图5 1 3 圈5 - 1 4 图5 1 5 图5 王6 图5 1 7 图5 1 8 图5 1 9 图5 2 0 圈5 2 薹 图5 2 2 图5 2 3 图5 2 4 图5 2 5 图5 2 6 图5 2 7 图5 2 8 图5 2 9 圈5 筠 图5 3 1 系统上电时序仿真图。6 5 系统正确进入功率管理状态时序图6 5 系统进入功率管理状态过程中出现错误时序图6 6 系统从功率管理状态跳出时序图6 6 配置帧传输时序图6 7 接收判断模块解扰时序图。6 7 接收判断模块c r c 校验时牟图。6 7 不需要加密的帧传输时序图6 8 需要加密的帧传输时序图6 8 发送接翻引擎处理过程6 9 s a t a 2 0 验证目录结构图6 9 测试平台构架7 0 正确进入和退出功率管理状态7 2 进入功率管理状态错误7 2 配置帧传输7 2 主机到硬盘需要加密命令传输过程7 3 主机到硬盘不需要加密命令传输过程7 3 硬盘到主机需要加密命令传输过程。7 4 n c q 命令传输过程。7 4 行覆盖率报告7 5 条律覆盖率7 5 f p g a 测试环境7 6 测试使用的f p g 後芯片弼 x i l i n x 测试板7 7 工作中的f p g a 测试扳。7 7 环路溅试连接图7 8 环路测试结果o 7 8 单囱连接测试连接图7 9 单向连接测试结果7 9 传输测试连接图8 0 传输测试结果8 0 i x 表目录 表目录 表2 1 原语编码1 1 表2 2原语描述1 1 表2 3f i s 类型、描述和传输方向1 3 表2 4数据接收建立保持时间关系表1 9 表2 5数据发送时间关系表2 1 表4 1主状态机状态转移表3 6 表4 2左边上电和功率管理状态机状态转移表。4 0 表4 3右边上电和功率管理状态机状态转移表4 4 表4 4左边接收控制器状态转移表。4 6 表4 5右边接收控制器状态转移表。4 9 表4 - 6数据处理模块中内部信号表。:。5 7 x 缩略词表 s a 工a c r c d m a d m a q p i o m g t o o b f i s 嫡r s c m d p m r e s p 砌 v d v h h d 缩略词表 s e r i a la d v a n c e dt e c h n o l o g ya t t a c h m e n t c y c l i cr e d u n d a n c yc h e c k d i r e c em e m o r ya c c e s s d k e c tm e m o r ya c c e s sq u e u e d p r o g r a m m i n gi n p u t o u t p u t m u l t i _ g i g a b i tt r a n s c e i v e r o u to f b a n d f r a m ei n f o r m a t i o ns t r u c t u r e l i n e a rf e e d b a c ks h i f tr e g i s t e r s e n dc o n t r o lm o d u l e d a t ap r o c e s sm o d u l e r e c e i v ee s t i m a t e s e n di n t e r f a c ee n g i n e p h yi n t e r f a c eu n i t v i r t u a ld e v i c e v i r t u a lh o s t h o s t d e v i c e x i 串行高级技术附加装置 循环冗余校验 直接内存访问 d m a 排队方式 可配置输入输出 多吉比特发送装置 带外信号 帧信息结构 线性反馈移位寄存器 发送控制模块 数据处理模块 接收判断模块 发送接口引擎 p h y 接口单元 虚拟设备端 虚拟主机端 主机 设备 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究 工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢 的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也 不包含为获得电子科技大学或其它教育机构的学位或证书而使用 过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论 文中作了明确的说明并表示谢意。 签名: 王盔日期:珊y 月“e l 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论 文的规定,有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位 论文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:了办导师躲矧专 日期:础年月“日 第一章引言 第一章引言 1 1s a t a 接口技术发展概论 2 0 0 0 年2 月i n t e l 在i d f ( i n t e ld e v e l o p e rf o r u m i n t e l 开发者论坛) 上,首 次提出了s a t a ( s e r i a l a t a ) 的技术构想,并专门成立了s e r i a l a t a 标准的官方工作 组( s e r i a l a t aw o r k i n gg r o u p ) 2 0 0 1 年8 月,s e a g a t e 在i d ff a l l 2 0 0 1 大会上宣布了 s e f i a i a t a1 0 标准,s e r i a l a t a 规范正式确立第一代s a t a 可提供每秒1 5 g b p s 的带宽,即每个数据字节使用1 0 位的信号,相当于1 5 0 m b 秒的数据带宽1 1 】【2 】【3 】。 s a t a 2 0 已经将硬盘和主机间传输速度从以前的1 5 g b p s 提高到现在的 3 g b p s ,同时还支持n c q ( n a t i v ec o m m a n dq u e u i n g ,原生命令队列) 、端口多路器 ( p o r tm u l t i p l i e r ) 、交错启动( s t a g g e r e ds p i n _ u p ) 、热插拔等一系列的技术特征【2 l 。 s a t a 接口使数据传输更加快速,更加稳定可靠,是现在的存储领域,特别是硬盘 领域广泛采用的接口标准。接口电路是带有s a t a 接口的符合s a t a 2 0 标准的电 路,能够与主机和硬盘进行满足s a t a 2 0 规范的通信。 1 2 硬盘数据加密方法概论 目前,实现硬盘数据加密的方法有如下几类: 基于密码的硬盘锁 密码硬盘锁是a t a 硬盘的标准功能。用户可使用一个特殊命令来设置一个用 来访问硬盘的密码。大多数笔记本电脑和台式机系统都包含支持该功能的b i o s 选 项。了解b i o s 的功能的用户可以设置密码,每次系统启动时,都必须输入正确密 码才能访问硬盘。该方法看似有效,但若有人能确定密码,将能访问硬盘的所有 数据。 软件加密方法 软件加密方法比较常见的有:修改硬盘主引导程序、修改主分区表、编写硬 盘驱动程序实现加密功能。其中前两种方式,操作比较简单,比较容易实现,但 对于经验丰富的程序员可进行相应的修复,实现硬盘数据的解密。使用硬盘驱动 程序实现加密功能,虽然存储到硬盘上的数据是经过加密算法加密过的,但是, 电子科技大学硕士学位论文 加密所采用的辅助信息( 比如密钥等) 通常也是存放在硬盘上的。 硬件加密方法 硬件加密卡一般由加解密芯片和密钥存储芯片构成。加密卡使用时连接在主 板和a t a 硬盘之间,能自动对写入硬盘的所有用户数据进行加密,并在读取时解 密。加密和解密的速度与接口的传输速度大致相同,不会导致硬盘性能下斛4 】【5 1 【6 1 。 硬件加密方法与软件加密方法最主要的区别:( 1 ) 硬件加密方法不依赖于具体 的操作系统,只和硬盘接口协议有关。( 2 ) 硬件加密方法使用硬件电路实现加解密 算法和接1 2 1 协议的控制电路,不占用系统资源。( 3 ) 硬件加密方法具有安全可靠的 密钥存储方式。 1 3 论文研究的目的和意义 首先,随着带s a t a 2 0 接口以及带s a t a 2 0 接口的硬盘和主机在我国普及, 面向以前的p a t a 硬盘接口的加解密接口电路由于传输速度慢,传输误码率高已经 不能适应当今社会的需要,因此我们将我们的加解密接口电路设计成带s a t a 2 0 接口的,能够与带同等接口的硬盘和主机进行通信,同时向下兼容s a t a l 0 接口 标准,是符合国内外对硬盘接口的研究现状和发展趋势的。 其次,由于软件加密存在着加密速度低,降低系统性能和加密软件自身安全 性等方面的问题,随着信息安全技术的不断发展,开发硬盘加密电路已经以其加 密快速,几乎不影响系统性能,加密安全性高成为当今硬盘加密的发展趋势。 将硬盘加密和带s a t a 接口结合起来进行设计和研究,实现对s a t a 硬盘的加 密,最终形成带s a t a 2 0 接口的加解密电路,电路融合密码技术和接口技术,提 供硬盘数据加密功能,同时提供访问控制功能。目前,国内外的绝大多数a t a 硬 盘加密卡都采用的是国外伊诺瓦科技公司的加解密芯片。由于伊诺瓦科技公司加 解密芯片技术保密以及国内对硬盘数据加密的巨大需求,研究a t a 硬盘加密卡的 设计和实现具有重要的使用价值和研究价值1 4 j 。 本课题就是将硬盘加密和s a t a 接1 :2 结合起来进行设计和研究,实现对s a t a 硬盘的加密,最终完成带s a t a 2 0 接口的加解密控制电路设计。 1 4 本论文的课题背景及本人工作 本课题来源于科研项目( s a t a 2 0 接口加解密控制芯片设计,主要任务是实 2 第一章引言 现一个s a t a 2 0 接口控制电路。:藩片的设计满足一下功能特点: 支持s a t a 2 0 协议,同时兼容s a t a l 0 协议; 支持a t a a t a p i 一6 命令集; 支持加解密模块电子密钥的b i o s 配置,支持加解密算法的扩展和加解密 模块的更换; 支持p i o 传输、d m a 传输、d m a q 传输和n c q 传输四种传输方式; 芯片实现了s a t a 2 0 链路层、传输层和命令层的功能,提供改进的s a p i s 接口,配合x i l i n xv i r t e x 4r o c k c tm u l t i g i g a b i tt r a n s c e i v c 使用 本人在课题中承担的工作包括: 根据需求书,规划芯片实现方案,进行合理的模块划分; 制定芯片设计详细设计方案; 利用v e f i l o g 语言具体实现了p h y 接口单元模块,接收判断模块,发送控 制模块,数据处理模块和发送接口引擎,并且完成这些模块的功能验证; 搭建芯片验证平台; 系统测试方案制定与f p g a 上板调试 1 5 本论文的内容安排 本论文共分为七大部分。其中,第一章介绍s a t a 接口技术和硬盘加密技术的 概况,说明论文的背景及作者完成的工作;第二章深入阐述了s a t a 2 0 协议和 鼬r a 份m 廿i 6 指令集,包括物理层、链路层、传输层和命令层分析、四种传输协 议和常用命令分析;第三章总体介绍芯片设计方案和思想,剖析了芯片设计的难 点及其解决方法,并提出了芯片设计框图;第四章是芯片的具体实现,是本文的 主要内容,对各模块的实现均作了具体的论述,包括实现系统分析、整体结构设 计、各功能模块设计以及编码实现;第五章是仿真和f p g a 测试结果展示;第六 章对本论文做总结,指出需要完善的工作。 3 电子科技大学硬学橙论文 第二章s a t a 2 0 总线协议 本章主要介绍s a t a 2 0 协议和a t a a t a p i - 6 指令集,包括物理层、链路层、 传输层和命令层分析、四种传输协议和常用命令分析,同时本章还简要介绍了 s a p i s 接口。 2 1s a t a 的电气特性 s a t a 总线使用4 线电缆来传输数据,如图2 - 1 所示。其中t x + 、t x 表示输出 差分数据线,r x + 、r x 表示输入差分数据线1 2 1 1 3 l j 2 2s a t a 的系统结构 图刍羔s a t a 总线结构图 s a t a 2 0 接口是一个传输速率达到3 0 g b s 的串行接口。协议采用了吉比特以 太网结构和8 b l o b 技术,在数据线上采用3 0 g b sl v d sn r z 串行数据流传输数据。 2 2 1 链接特征和拓扑结构 s a t a 是用来替代大容量存储设备并行a t a 链接的高速串行链接方式。对于 并行a t a 设备,多个设备通过主从( m a s t e r s l a v e ) 通信技术连接到并行a t a 总 4 第二章s a t a 2 0 总线协议 线上。每个设备使用带状电缆通过菊花链( d a i s yc h a i n ) 的方式被链接在一起。 图2 2 表现了两个设备如何被连接到并行a t a 主机适配器上。 图2 - 2并行a t a 连接方式 s a t a 是点对点的拓扑连接结构,主机可以通过多个链接支持多个设备,每个 设备百分之百的占有总线带宽,并且一个设备或者连接出错不会影响其他连接。 图2 3 表现了两个设备使用串行a t a 主机总线适配器( h o s tb u sa d a p t e r ) 被连接 起来。图中深灰色部分和图2 - 2 中深灰色部分在功能上是相同的。在这种方式下, 软件认为这两个设备分别连接在两个分开端口的主端,主机总线适配器的右边部 分是新的设计,使用它把软件的正规操作转换为串行数据控制流。 图2 - 3 串行a t a 连接方式 5 电子科技大学碳士学经论文 2 2 2 协议体系结构 s a t a 协议为四层体系结构:物理层、链路层、传输层和应用层。应用层负责 所有a t a 命令的执行和控制命令块寄存器的访问。传输层负责把控制信息和数据 放入在主机和设备之间传输的包或者帧里面,这种帧被称为帧信息结构( f i sf r a m e i n f o r m a t i o ns t r u c t u r e ) 。链路层负责从帧里面取出数据,使用8 b 1 0 b 编码或者解码 每个字节,并且插入控制字符使得王o 院特的数据流能够被正确解码。物理层负责 通过串行数据流的方式发送和接受已经被加密的信息。其整体结构如图2 0 所承。 主机控制器软件 应用层 设备控制器软件 缓存 缓存 丰 d m a 控制器d m a 控制器 沿 机 乏乏 零 矗l 数据传输控制卜 传输层 _ 数据传输控制 月卜 地 鎏0 _ 数数据链路控制l 警誉| 黼嚣控制 链路层 oo 物理层接口 l 物理层 物理层接口 圈2 4体系结构图 2 2 物理层 :物理层实现的基本功麓 物理层在发送端从链路层接收数据,把数据串行化然蘑以的 串行数据流把数据发送出去;在接受端,接收串行数据,然后串并转换接受到的 数据,检测 字节,并使输出宽度对齐。 2 :实现框图 物理层的实现框图如图所示。其中主要包括几个部分,模拟前端是传输线 的基本接口,这个块包括高速差分发送器和接收器和信号电路,控制逻辑块 实现所有的控制功能,生成和检测块分别实现原语的生成和检 6 第二章s a t a 2 0 总线协议 测,时钟数据恢复从输入的高速串行数据流中提取出时钟和数据。 图2 - 5物理层实现框图 3 :o o b 信号 物理层总共采用了三种o o b 信号( 段外信号) :c o m r e s e t 、c o m i n i t 、 c o o m w a k e ,在传送段外信号的时候其电气标准和段内信号一样,对段外信号的 检测是通过差分信号的活动和停止时间来决定的。 c o m r e s e t 和c o m i n i t 在构成上是相同的,是由1 6 0 个a l i g nd w o r d ( 1 0 6 7 n s ) 后接着4 8 0 个“0 d w o r d ( 3 2 0 n s ) 组成,如图2 - 6 所示。c o m r e s e t 一般来自主机方,强制性的要求设备重启。c o m i n i t 经常是由设备发出要求主机 进行连接初始化。 图2 - 6 c o m r e s e t c o m i n i t 信号组成 7 2 2 2 2 链路屡 踣 节为勰考勰一釜麓 第二章s a t a 2 。0 总线协议 数据线上接收数据就必须以1 0 位为单位接收,然后解码为数据信息和控制信息。 8 b l o b 编码囊括了8 位数据的所有2 5 6 种组合,其控制信号的一个子集也被s a t a 协议所采用。编解码过程如图2 - 9 所示。 8 b 1 0 b 对数据信号和控制信号的编码解码是分开了的,通过控制变量来区分, 如果为“k 表示募语,如果为“d ”表示数据。8 b 1 0 b 的编码过程分先两个阶段, 首先把低5 位结合当前r u n n i n gd i s p a r i t y ( 运行极性值) 通过5 b 6 b 编码为6 位数据, 并根据相瘦的规则改变r u n n i n gd i s p a r i t y ,然嚣把高3 使和前瑟改变了的运行极性 值使用3 b 4 b 编码为4 位数据。 图2 - 98 b 1 0 b 编解码过程 r u n n i n gd i s p a r i t y 的计算规弱如下: 如果一个子模块中的数据1 的个数大予0 的个数,那么r u n n i n gd i s p a r i t y 就为戎。如果在5 b 6 b 模块编码盾的数据为“0 0 0 1 1 1 ”那么r u n n i n gd i s p a r i t y 为正,如果3 b 4 b 模块编码后的数据为“0 0 1 1 ”那么r u n n i n gd i s p a r i t y 为正。 如果个子模块中的数搌o 的个数大于l 的个数,那么r u n n i n gd i s p a r i t y 就为负。如果在5 b 6 b 模块编码后的数据为“1 1 1 0 0 0 挣那么r u n n i n gd i s p a r i t y 为负,如果3 b 4 b 模块编码后的数据为“1 1 0 0 那么r u n n i n gd i s p a r i t y 为负。 另癸,如果在任何子模块编码后的数据中l 豹个数等于0 的个数,那么 r u n n i n gd i s p a r i t y 的值就和上一个r u n n i n gd i s p a r i t y 的值相同。 9 电子秘技大学硕士学位论文 在8 b 1 0 b 编码中子模块出现“0 0 0 1 1 1 、“1 1 1 0 0 0 ”、“0 0 1 1 ”、“1 1 0 0 ”的几率 是很小的,这样就限制了连续1 或o 的个数。 3 :扰码 扰码器是建立在线性反馈移位寄存器上麴,扰码器的作翔是在发送端将传送 的数字码变换成o 和1 近似等概率,前后独立的伪随机码流,这样便于提 取比特位定时信息和使信号频谱扩散并保持相对稳定,可以避免或减轻某些周期 性基带信号由于具有较强的离散线谱而造成的对其他系统的干扰。整个需要传输 的数据包都要经过扰码器伪随机化后才传送到物理层。 协议规定线性反馈移位寄存器的初始值为0 x f f f f ,线性反馈移位寄存器必须 在s o f ( s t a r to ff r a m e ) 标志前就要被初始化,在s o f 和e o f ( e n do ff r a m e ) 之间的数 据,惫括c r c 值都需要加扰。可是对于操作原语是不需要加扰的,氍然在传输数 据包中可能会出现操作原语( 比如h o l d h o l d a ,c o n t 等原语) ,那么在设计扰 码器的时候需要对操作原语和数据区分开来,不能影响数据的加扰。 对于一个数据包,在s o f 后的数据就必须计算其c r c 值,同时这个数据必须 和扰码器的输出进行异或操作,操作结果送往8 b l o b 编码器编码;反之,在接收 方,数据先通过8 b 1 0 b 解码,扰码器的输渤和8 b 1 0 b 解码结果进行异或操作,异 或后的结果送往链路层计算帧的c r c 值。 4 :c 爻c 通信系统不可避免地要受到各种干扰的影响,使接收端收到的信息与发送端 发高的信息不一致,即接收端收到的信息产生了误码。为了降低数据通信线路传 输的误码率,通常有改善数据通信线路传输质量和差错检测控制两种方法。差错 检测控制的方法很多,s a t a 协议中采用- c r c 校验家族中校验能力最强大的 c r c 3 2 校验,保障了传输的有效性。c r c 的计算是以s o f 和e o f 之间的所有数 据( 即不包括操作原语) 为对象,以双字( 3 2 位) 为单位,如果数据包的内容不是双字 的整数倍,那么需要在数据惫的屠面用o 来补充。协议规定c r c 的值必须被 初始化为0 x 5 2 3 2 5 0 3 2 ,s o f 和e o f 原语之间的所有数据( 不包括帧之间的原语) 不能超过2 0 4 8 个双字。 5 :链路层传输实现 链路层的传输使用原语来传递实时状态信息,控制主机和硬盘间数据的交互, 使得主机和设备协同工作。所有的原语除a l i g n 原语以k 2 8 5 开头外,其他的都 是用k 2 8 3 开头。表2 - 1 为原语编码,表2 2 为s a t a 中原语描述。 1 0 表2 - 1原语编码 原语名字第3 字节内容第2 字节内容第1 字节内容

温馨提示

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

最新文档

评论

0/150

提交评论