首页 > 达思技术 > 技术文章
硬盘固件级数据恢复专家:-ATA协议概览(一)
来源:达思数据恢复软件    阅读:5763    发布时间:2014/3/11 0:00:00

硬盘固件级数据恢复专家:-ATA协议概览(一)

 

硬盘是计算机及其信息系统中存储核心,凭借高速大容量,性价比高的优势,雄霸存储市场。而使用硬盘作为存储设备,就需要了解硬盘的工作原理和通信接口,硬盘的原理大同小异,知道个概括就够了,而通信接口方面,随着传输速度和容量的变化,不断的在进化。

硬盘的通信接口,有IDESATASCSI等,一般装机时用到的硬盘,以前是以IDE接口为主,现在以SATA接口硬盘为主,无论是IDE接口还是SATA接口,都是遵循ATA通信协议,了解了ATA协议,就可以比较清楚硬盘与主机之间的通信原理了。

PC系统中,硬盘属于IO设备,通过PCI总线后的AT总线相连。硬盘存储设备与AT总线接口芯片相连,接口芯片与AT总线相连,接口芯片在总线协议与IO设备协议之间进行翻译。

IDE硬盘最高支持到ATA-7协议,速度可达到Ultra-ATA/100Ultra-ATA/133ATA协议在内容上看,主要包括:1、接口信号的定义:主要是40IDE接口,各个管脚信号的用途定义。

1 IDE接口

其中16根双向数据线DD0-DD15,主机到设备的2根片选线CS1-CS0,主机到设备的3根地址线DA2-DA0,设备到主机的1DMARQ请求线,主机到设备的1DMACK-应答线,设备到主机的1INTRQ请求线,主机到设备的1DIOR-HDMARDY-HSTROBE复用线,设备到主机的1IORDYDDMARDY-DSTROBE复用线、主机到设备的1DIOW-STOP复用线,主机到设备的1RESET-线,主机到设备的1根数据电缆选择线CSEL,设备到主机的1PDIAG-CBLID-复用线,设备到主机的1DASP-线。2、接口寄存器定义及其功能描述:见表1

       1  ATA-6 中定义的接口寄存器

CS1-

CS0-

DA2

DA1

DA0

ADDR

READ

WRITE

0

1

1

1

0

0x0E

Alternate Status


1

0

1

1

1

0x17


Command

1

1

X

X

X


Data Port

Data Port

1

0

0

0

0

0x10

Data

Data

1

0

1

1

0

0x16

Device

Device

0

1

1

1

0

0x0E


Device Control

1

0

0

0

1

0x11

Error

Features

1

0

1

0

1

0x15

LBA High

LBA High

1

0

0

1

1

0x13

LBA Low

LBA Low

1

0

1

0

0

0x14

LBA Mid

LBA Mid

1

0

0

1

0

0x12

Sector Count

Sector Count

1

0

1

1

1

0x17

Status


3、常用的操作命令:

       2 ATA-6 中定义的常用命令

Command

Code

Protocol

Device Reset

0x08

Device reset

Flush Cache

0xE7

Non-data

Flush Cache Ext

0xEA

Non-data

Identify Device

0xEC

PIO data-in

Idle

0xE3

Non-data

Idle Immediate

0xE1

Non-data

Read DMA

0xC8

DMA

Read DMA Ext

0x25

DMA

Read Multiple

0xC4

PIO data-in

Read Multiple  Ext

0x29

PIO data-in

Read Sector

0x20

PIO data-in

Read Sector Ext

0x24

PIO data-in

Read Verify  Sector

0x40

Non-data

Read Verify  Sector Ext

0x42

Non-data

Seek

0x70

Non-data

Set Features

0xEF

Non-data

Set Multiple  Mode

0xC6

Non-data

Standby

0xE2

Non-data

Standby  Immediate

0xE0

Non-data

Write DMA

0xCA

DMA

Write DMA Ext

0x35

DMA

Write Multiple

0xC5

PIO data-out

Write Multiple  Ext

0x39

PIO data-out

Write Sector

0x30

PIO  data-out

Write Sector Ext

0x34

PIO data-out

 

系统开机后,主机先向设备发送Device Reset命令,设置设备为默认状态,之后,主机向设备发送Identify Device命令,获得设备的型号、序列号和传输方式等信息,之后使用Set Feature命令设置主机和设备之间传输数据的方式。其中Read DMARead Multiple分别采用DMA INPIO方式读取设备数据。Write DMAWrite Multiple分别用DMA OUTPIO方式向设备写入数据。

4、常见命令操作流程

INDENTIFY DEVICE命令操作流程:

HOSTDEVICE的命令寄存器写入IDENTIFY DEVICE命令,DEVICE接收命令后,准备相应的设备信息数据,设置INTRQ信号有效。HOST将读取状态寄存器查看DEVICE状态,如果状态为0x51,说明DEVICE准备就绪了,如果是其他状态,说明DEVICE操作出错。HOST为了确认操作对象,再次向DEVICEDevice寄存器写入操作对象(ATA主盘或者ATA从盘),再一次读取状态进行确认。如果DEVICE状态正确,则HOST连续读取256次数据(512个字节)的设备描述信息。最后,  HOST再次确认操作对象信息和状态。

READ/WRITE MULTIPLE命令操作流程:

HOST首先通过设置DEVICESector CountLBA LowLBA MidLBA HighDeviceFeatures寄存器,设定数据传输的扇区个数、LBA起始地址等等参数。在确认DEVICE状态正确的情况下,HOSTCommand寄存器写入READ/WRITE MULTIPLE命令。DEVICE在准备好数据传输后,将设置INTRQ信号线有效。HOST在确认DEVICE的状态后,进行数据读/写操作。在读/写完命令指定的数据后,HOST再次读取DEVICE的状态信息,完成整个数据传输过程。

READ/WRITE DMA命令操作流程:

HOST首先通过设置Sector CountDeviceLBA LowLBA MidLBA High寄存器,设置数据传输的扇区个数,LBA起始地址等等参数。HOSTDEVICECommand寄存器写入READ/WRITE DMA命令。DEVICE在接收到命令后,准备就绪后,设置DMARQ请求有效,和HOST之间传输部分数据。一般传输扇区个数超过8个扇区,则HOSTDEVICE必须通过几次DMA传输才能传输完所有的数据。在每次传输中传输数据的个数并不是固定的。传输完所有的数据后,DEVICE设置INTRQ信号有效,HOST读取DEVICE的状态完成整个传输过程。

        了解了ATA-6协议的寄存器和常规命令后,再结合各个子协议的时序图,就基本上可以分析清楚ATA协议的基本内容了,下一篇文章中,将重点分析ATA的子协议的实现与详细的时序。

2 硬盘时序图举例

未完待续。。。。

关于达思科技

达思科技的全称是达思凯瑞技术(北京)有限公司,是数据恢复行业的著名品牌,在全国乃至整个亚洲地区具有较高的知名度。达思科技是一家真正掌握数据恢复核心技术的企业,公司的数据恢复技术研发中心不但承担公司自主知识产权数据恢复软件的研发任务,还为众多大型企事业单位担当数据安全顾问的角色。达思科技对数据恢复技术的深入研究,尤其在UnixLinux大型存储设备的数据恢复方面(包括EXT3文件系统删除数据、UFS文件系统数据恢复、XFS文件系统数据恢复技术、IBM-AIX JFS2文件系统数据恢复高端技术、Vmware虚拟机数据恢复技术等)独树一帜,在同行业中具有较为明显的优势,达思科技承接的其他公司无法恢复的疑难案例不计其数。

达思科技数据恢复技术研发中心于200910月启动了科技创新计划,陆续发布了多款自主软件产品。截止到201312月,达思科技自主知识产权的数据恢复软件达到23款,其中UnixLinux企业级数据恢复技术以及手机等移动终端数据恢复技术国际领先!

达思科技职业院校数据恢复实训室是国内职业院校的首选,已经在多家学校正式运营,其中北京劳动保障职业学院、北京政法职业学院、北京商贸学校等中高职均采用达思数据恢复实训室,开设了数据恢复专业课程。开展了深度校企合作,深受师生青睐。

达思数据恢复实验室解决方案是多家涉密单位和科研机构指定建设单位,达思科技具备大型、中型和小型数据恢复实验室设计与建设的能力,为涉密单位提供了安全保密数据恢复实验室,为数据安全筑起最后一道防线。典型成功案例有天津市国家保密局数据恢复实验室项目、总装备部装甲兵工程学院数据恢复实验室项目、中央和国家机关涉密载体销毁中心数据恢复项目等。

 

 

 




分享到:
达思公司联系方式
    • 达思北京数据恢复中心(全国总部)

    • 数据恢复服务咨询:400-700-0017

    • 数据恢复培训咨询:010-62672127

    • 达思数据恢复软件:010-62670586

    • 达思软件技术支持:010-62670165


    • 达思总部

    • 数据恢复实验室:  010-62672127

    • 数据恢复实训室:  010-62672381

    • 电子取证实验室:  13522681842

    • 软件销售QQ:  151208

    • 远程协助QQ:  12869803

    • 邮件联系:sos@dstchina.cn

    • 邮件支持:support@dstchina.cn

    • 24小时免费电话:400-700-0017

    • 24小时监督电话:13671390603

网站首页 | 北京数据恢复 | 数据恢复公司 | 硬盘数据恢复 | 服务器数据恢复 | raid数据恢复 | 数据库数据恢复 | 达思科技官网

Copyright2007-2022 达思凯瑞技术(北京)有限公司 达思数据恢复软件技术交流QQ超级群:120161291
北京数据恢复中心:中国北京市海淀区林风二路38号院4号楼3层312室 电话:010-62672125,400-700-0017 13522681842
ICP备案号:
京ICP备09028603号-49
ICP备案号: - 技术支持:千助科技

用QQ扫一扫

加入达思QQ群