CN101329617A - 一种硬盘控制器 - Google Patents
一种硬盘控制器 Download PDFInfo
- Publication number
- CN101329617A CN101329617A CNA2007101176449A CN200710117644A CN101329617A CN 101329617 A CN101329617 A CN 101329617A CN A2007101176449 A CNA2007101176449 A CN A2007101176449A CN 200710117644 A CN200710117644 A CN 200710117644A CN 101329617 A CN101329617 A CN 101329617A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- hard disk
- physical layer
- fsm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开了一种硬盘控制器,包括:ATA协议层有限状态机(FSM)模块,设置有实现ATA协议层状态转换的FSM,利用所述FSM控制物理层模块和寄存器组的数据读写操作;寄存器组,包括ATA协议设定的全局性寄存器,用于根据所述ATA协议层FSM模块的控制信号寄存数据;物理层模块,与硬盘连接,用于根据所述ATA协议层FSM模块的控制信号和寄存器组的寄存数据对硬盘数据进行读写。本发明所述的硬盘控制器可以不需要计算机系统的参与完成对硬盘高速数据流的读写操作。
Description
技术领域
本发明涉及电子数据存储控制技术,尤其涉及一种对硬盘进行数据读写控制的硬盘控制器。
背景技术
硬盘是计算机系统外围的主要储存设备,目前对硬盘数据进行读写控制必须依赖计算机系统标准的外围接口与计算机操作系统。计算机是通过与其总线连接的标准外围电路接口与硬盘进行通信的,设计者编写计算机可以执行的软件驱动程序对硬盘进行配置,然后计算机通过运行驱动程序组织硬盘数据的存储和读取。
如上所述,目前对硬盘数据进行控制必须有计算机系统的参与,不但需要在计算机上安装与硬盘控制协议对应的驱动程序,还必须在计算机的主板上安装一片标准的外围电路接口芯片,该外围电路接口芯片的功能很复杂,价格昂贵,并且读取速度低,无法实现高速数据流例如超清晰图像数据的读写。
嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物,其处理工作主要由嵌入式CPU完成。嵌入式系统与通常的计算机系统的最大不同就是嵌入式系统大多工作在为特定用户群设计的特定应用系统中,它通常具有低功耗、体积小、集成度高等特点。
目前,嵌入式系统的应用范围越来越广,在许多应用领域,例如视频录制播放领域,嵌入式系统势必需要与高速大容量的外围存储设备结合,通过对存储设备的数据进行读写控制完成大数据量的控制处理。
但是,目前还没有专门用于嵌入式系统的相对简单但高速性能很好的硬盘控制器,正如上述所说,目前对硬盘进行读写操作必须有计算机系统的参与,不但设计复杂,成本高,而且读写效率很低。
发明内容
有鉴于此,本发明的主要目的在于提供一种硬盘控制器,可以不需要计算机系统的参与完成对硬盘高速数据流的读写操作。
为了实现上述发明目的,本发明的主要技术方案为:
一种硬盘控制器,该ATA硬盘控制器包括:
ATA协议层有限状态机(FSM)模块,设置有实现ATA协议层状态转换的FSM,利用所述FSM控制物理层模块和寄存器组的数据读写操作;
寄存器组,包括ATA协议设定的全局性寄存器,用于根据所述ATA协议层FSM模块的控制信号寄存数据;
物理层模块,与硬盘连接,用于根据所述ATA协议层FSM模块的控制信号和寄存器组的寄存数据对硬盘数据进行读写。
优选的,所述物理层模块具体包括:
数据收发先入先出队列(FIFO)模块,用于与外界数据应用设备进行通信,对数据进行缓存和自动调节数据速度;
寄存器读写模块,用于接收所述ATA协议层FSM模块的控制信号,根据该控制信号实现物理层的寄存器读写时序;
物理层传输模块,用于接收所述ATA协议层FSM模块的控制信号,根据控制信号选择传输子模块进行数据的读写转换传输;
多路选择器模块,通过物理端口与硬盘连接,用于接收所述ATA协议层FSM模块的控制信号,按照所述控制信号选通所述传输子模块和所述物理端口间的信号连接,用选通的信号连接传输符合ATA协议的读写数据。
优选的,所述物理层传输模块具体包括:
处理机输入输出(PIO)物理层传输模块,用于实现物理层的PIO传输时序,当为读数据操作时,所述PIO物理层传输模块解析所述物理端口上PIO读时序所表示的传输数据,将解析出的数据写入所述数据收发FIFO模块,由数据收发FIFO模块输出数据给外部的数据应用设备;当进行写数据操作时,所述PIO物理层传输模块从所述数据收发FIFO模块中读取数据,转变为所述物理端口上的PIO写时序及写数据,由物理端口输出给硬盘。
所述物理层传输模块具体还包括:
高级存储器直接访问UDMA物理层传输模块,用于实现物理层的UDMA传输时序,当进行读数据的操作时,所述UDMA物理层传输模块解析所述物理端口上UDMA读时序所表示的传输数据,将解析出的传输数据写入所述数据收发FIFO模块中,由数据收发FIFO模块输出数据给外部的数据应用设备;当进行写数据的操作时,所述UDMA物理层传输模块从所述数据收发FIFO模块中读取数据,转变为所述物理端口上的UDMA写时序及写数据,由物理端口输出给ATA硬盘。
优选的,所述ATA协议层FSM模块中进一步包括数据转换单元,设置于所述FSM中,在读写数据操作时,利用特定的转换格式对读写数据进行转换。
所述数据转换单元所采用的转换格式为加密格式或者为视频图象转换格式或者其它的数据转换格式。
优选的,所述ATA协议层FSM模块的控制信号来自于嵌入式系统的信号控制端。
由于本发明只通过一个硬盘控制器就可以完成对ATA硬盘的读写控制,因此本发明不需要复杂的计算机操作系统及其外围电路接口芯片、也不需要编写专门的软件驱动程序,就可以将数据流以规定的格式储存到硬盘中,并可以将硬盘中储存的数据读取出以输送到显示装置或其他输出设备,在不用或者选用计算机系统的情况下都可以实现数据的存储和回放。
由于本发明省去了计算机操作系统、软件驱动程序及计算机外围电路接口芯片,使得读写数据的操作更加简单,本发明的硬盘控制器完全利用基本逻辑元件实现,其读写速度之高是复杂的计算机系统无法达到的,所以本发明可以极高的比特率存储和读取数据,可以将高速数据流以规定的格式储存到硬盘中,并可以将硬盘中储存的数据以高速数据流的方式输送到显示装置或其他输出设备,不用或者选用计算机系统都可以实现其高速数据的存储和回放,例如大屏幕超高清晰电视活动画面的存入和读取。
由于本发明直接根据硬盘的技术资料和ATA/SATA协议进行设计,针对性强,对高速数据储存和回放领域的嵌入式应用有特别好的前景。
附图说明
图1为本发明所述硬盘控制器的结构图;
图2为本发明的硬盘控制器的一种应用实施例的系统结构图。
具体实施方式
下面通过具体实施例和附图对本发明做进一步详细说明。
由于目前应用较广的高速大容量外围存储设备为高技术连接(ATA,Advanced Technology Attachment)硬盘以及串口高技术连接(SATA)硬盘。因此,本发明的硬盘控制器是针对ATA硬盘以及SATA硬盘设计的,由于SATA硬盘为ATA硬盘的一种具体应用,因此本文中将ATA硬盘和SATA硬盘统称为ATA硬盘,将ATA协议和SATA协议统称为ATA协议。
图1为本发明所述硬盘控制器的结构图。参见图1,所述硬盘控制器100主要包括:ATA协议层有限状态机(FSM)模块101、寄存器组102、和物理层模块103。
所述ATA协议层FSM模块101由ATA协议层的FSM组成,所述FSM实现了ATA协议层状态的转换,所述ATA协议层FSM负责ATA协议层的功能,接收外界的控制信号(主要是读数据信号和写数据信号),根据该控制信号以ATA协议控制所述物理层模块103中的各个子模块和所述寄存器组102,并接收所述各个被控制模块和寄存器组102的反馈信号以推动ATA协议的进行。所述ATA协议层FSM模块101是硬盘控制器100的中央控制单元,与硬盘控制器100中的寄存器组102、数据收发先入先出(FIFO)模块113、寄存器读写模块123、处理机输入输出(PIO)物理层传输模块133、高级存储器直接访问(UDMA)物理层传输模块143、以及多路选择器模块153都有连接,但是为了表述简洁清晰,图1中只给出了ATA协议层FSM模块101与所述其它各个模块的主要信号走向,本领域的技术人员可以根据所示的信号走向和本文的文字描述直接推导出ATA协议层FSM模块101与上述各模块的连接关系。
所述寄存器组102包括ATA协议中规定的寄存器的集合,这些寄存器都是全局性的寄存器,硬盘控制器100中的其它模块要设定或改变其自身的值都必须向寄存器组102发送请求信号,然后由寄存器组102来改变相应的值。所述寄存器组102用于根据所述ATA协议层FSM的状态转换将读写数据寄存到特定的寄存器中,且所述寄存器组102与物理传输模块中的各个子模块连接,在读写操作中与物理传输模块103中的各个子模块进行信号传输,以完成数据的读写传输操作。图1中为了表述简洁清晰没有画出所述寄存器组102与物理传输模块中的各个子模块的具体连接关系,本领域的技术人员根据本文的文字描述可以直接推导出对应的连接关系。
所述物理层模块103与硬盘连接,用于根据所述ATA协议层FSM模块101的控制信号和寄存器组102的寄存数据对硬盘数据进行读写。
所述物理层模块103具体包括以下几个子模块:数据收发FIFO模块113、寄存器读写模块123、PIO物理层传输模块133、UDMA物理层传输模块143、以及多路选择器模块153。
数据收发FIFO模块113用来在本硬盘控制器100与外界数据应用设备之间传递数据,对数据进行缓存并对数据速度进行自动调节。
寄存器读写模块123用来实现物理层的寄存器读写时序。
PIO物理层传输模块133用来实现物理层的PIO传输时序。
当进行读数据的操作时,PIO物理层传输模块133解析与ATA硬盘连接的物理端104上PIO读时序所表示的传输数据,将解析出的数据写入所述数据收发FIFO模块113,由数据收发FIFO模块113输出数据给外部的数据应用设备(例如显示器);当进行写数据操作时,所述PIO物理层传输模块133从所述数据收发FIFO模块113中读取数据,转变为所述物理端口104上的PIO写时序及写数据,由物理端口104输出给ATA硬盘。
UDMA物理层传输模块143用来实现物理层的UDMA传输时序。
当进行读数据的操作时,所述UDMA物理层传输模块143解析所述物理端口104上UDMA读时序所表示的传输数据,将解析出的传输数据写入所述数据收发FIFO模块113中,由数据收发FIFO模块113输出数据给外部的数据应用设备;当进行写数据的操作时,所述UDMA物理层传输模块143从所述数据收发FIFO模块113中读取数据,转变为所述物理端口104上的UDMA写时序及写数据,由物理端口104输出给ATA硬盘。
所述多路选择器模块153是一个双向复用/解复用(Multi/DeMultiplexier)模块,用来选通物理端口104和内部各模块之间的信号连接,包括物理端口104与寄存器读写模块123、与PIO物理层传输模块133、以及与UDMA物理层传输模块143之间的信号连接。所述多路选择器模块153由ATA协议层FSM模块101根据ATA协议的进行情况来控制。
所述ATA协议层FSM模块101接收的控制信号可以是来自于嵌入式系统的信号控制单元例如嵌入式CPU输出的控制信号,也可以是计算机系统通过ATA接口输出的控制信号,所述控制信号包括写数据控制信号和读数据控制信号。
本发明所述的硬盘控制器100可以利用基本逻辑元件实现,所述基本逻辑元件包括与门、或门、触发器、缓冲器等。利用这些基本逻辑元件实现除物理层外的ATA全部协议转换,适用于所有符合ATA协议的各种容量的硬盘。由于本发明省去了计算机操作系统、软件驱动程序及计算机外围电路接口芯片,读写数据的操作更加简单,并可以利用基本逻辑元件实现,其读写速度之高是复杂的计算机系统无法达到的,所以可以极高的比特率存储和读取数据,例如大屏幕超高清晰电视活动画面的存入和读取。这种极高比特率的数据储存和读取,可以选择不需要计算机系统的介入,也可以选择需要计算机系统的介入,使用非常方便灵活。
所述ATA协议层FSM模块101中还可以进一步包括数据转换单元,设置于所述ATA协议的FSM中,在写数据时,用于将写数据转换为特定的格式,并通过物理层模块103写入所述ATA硬盘;在读数据时,将物理层模块103从ATA硬盘中读取的特定格式的数据转换为通用的读数据,并通过物理层模块103输出。
例如所述数据转换单元可以是一种加密单元,在进行ATA协议的写数据操作时将写数据转换为加密数据,在进行ATA协议的读数据的操作时将从ATA硬盘中读取出数据再进行解密。采用这种数据转换单元,可以进一步控制具体的数据读取过程,且数据转换单元可用基本逻辑元件实现,集成于所述硬盘控制器100中,可以在对ATA硬盘的数据读取过程中进行加密处理,其具体的转换过程利用破坏或非破坏形式的反向工程也无法获取,因此本发明的硬盘控制器100可以广泛应用于国家安全和军工领域。
再如,所述数据转换单元是一种视频图象格式转换解析单元,当进行写数据操作时,将所述写数据转换为特定的视频图象格式存储,在读数据时再将读取的特定视频图象格式的数据解析出来,解析成显示设备可以直接显示的信号并传输给外界的显示设备进行显示。
当然,根据具体应用不同,所述数据转换单元也可以是其它具体的转换单元,本文不再一一列举。
图2为本发明的硬盘控制器的一种应用实施例的系统结构图。参见图2,是一种视频数据的录制和显示系统。该系统包括:摄像头、物理接口串并转换接口、硬盘控制器100、ATA硬盘、以及显示器,另外如果需要,还可以包括PC系统。
所述摄像头将录制的视频数据传输给所述物理接口串并转换单元进行转换,转换后的数据发送给所述硬盘控制器100即本发明所述的硬盘控制器100,硬盘控制器100按照ATA协议的要求将所述视频数据写入到ATA硬盘中存储,这样就可以一边摄像、一边存储,并且视频数据是存储在目前容量越来越大体积却越来越校的ATA硬盘中,克服现有技术中的摄像机只能将视频存储在磁带或光盘中的缺陷,并且整个过程不需要计算机系统的参与,整套系统可以实现便携化,方便用户使用,并且视频数据的存储速度快、视频画面质量高。
上述系统同样可以对ATA硬盘中的视频数据输出显示,具体过程为:所述硬盘控制器100利用ATA协议规范从所述ATA硬盘中读取出视频数据,将读取出的数据转换为显示器可以直接显示的信号,并传输给显示器进行显示。
上述的视频数据录制和显示系统可以不需要计算机(PC)系统的参与就可实现视频数据的录制和显示播放。当然,所述硬盘控制器100同样可以接入PC机系统,所述PC机系统可以通过ATA接口对所述硬盘控制器100的读写操作进行控制。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (8)
1、一种硬盘控制器,其特征在于,该硬盘控制器包括:
ATA协议层有限状态机FSM模块,设置有实现ATA协议层状态转换的FSM,利用所述FSM控制物理层模块和寄存器组的数据读写操作;
寄存器组,包括ATA协议设定的全局性寄存器,用于根据所述ATA协议层FSM模块的控制信号寄存数据;
物理层模块,与硬盘连接,用于根据所述ATA协议层FSM模块的控制信号和寄存器组的寄存数据对硬盘数据进行读写。
2、根据权利要求1所述的硬盘控制器,其特征在于,所述物理层模块具体包括:
数据收发先入先出队列FIFO模块,用于与外界数据应用设备进行通信,对数据进行缓存和自动调节数据速度;
寄存器读写模块,用于接收所述ATA协议层FSM模块的控制信号,根据该控制信号实现物理层的寄存器读写时序;
物理层传输模块,用于接收所述ATA协议层FSM模块的控制信号,根据控制信号进行数据的读写转换传输;
多路选择器模块,通过物理端口与硬盘连接,用于接收所述ATA协议层FSM模块的控制信号,按照所述控制信号选通所述传输子模块和所述物理端口间的信号连接,用选通的信号连接传输符合ATA协议的读写数据。
3、根据权利要求2所述的硬盘控制器,其特征在于,所述物理层传输模块具体包括:
处理机输入输出PIO物理层传输模块,用于实现物理层的PIO传输时序,当为读数据操作时,所述PIO物理层传输模块解析所述物理端口上PIO读时序所表示的传输数据,将解析出的数据写入所述数据收发FIFO模块,由数据收发FIFO模块输出数据给外部的数据应用设备;当进行写数据操作时,所述PIO物理层传输模块从所述数据收发FIFO模块中读取数据,转变为所述物理端口上的PIO写时序及写数据,由物理端口输出给硬盘。
4、根据权利要求2所述的硬盘控制器,其特征在于,所述物理层传输模块具体包括:
高级存储器直接访问UDMA物理层传输模块,用于实现物理层的UDMA传输时序,当进行读数据的操作时,所述UDMA物理层传输模块解析所述物理端口上UDMA读时序所表示的传输数据,将解析出的传输数据写入所述数据收发FIFO模块中,由数据收发FIFO模块输出数据给外部的数据应用设备;当进行写数据的操作时,所述UDMA物理层传输模块从所述数据收发FIFO模块中读取数据,转变成所述物理端口上的UDMA写时序及写数据,由物理端口输出给ATA硬盘。
5、根据权利要求1所述的硬盘控制器,其特征在于,所述ATA协议层FSM模块中进一步包括数据转换单元,设置于所述FSM中,在读写数据操作时,利用特定的转换格式对读写数据进行转换。
6、根据权利要求5所述的硬盘控制器,其特征在于,所述数据转换单元所采用的转换格式为加密格式。
7、根据权利要求5所述的硬盘控制器,其特征在于,所述数据转换单元所采用的转换格式为视频图象转换格式。
8、根据权利要求1所述的硬盘控制器,其特征在于,所述ATA协议层FSM模块的控制信号来自于嵌入式系统的信号控制端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101176449A CN101329617B (zh) | 2007-06-20 | 2007-06-20 | 一种硬盘控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101176449A CN101329617B (zh) | 2007-06-20 | 2007-06-20 | 一种硬盘控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101329617A true CN101329617A (zh) | 2008-12-24 |
CN101329617B CN101329617B (zh) | 2010-10-27 |
Family
ID=40205439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101176449A Active CN101329617B (zh) | 2007-06-20 | 2007-06-20 | 一种硬盘控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101329617B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102707919A (zh) * | 2012-05-28 | 2012-10-03 | 上海海事大学 | 一种使用有限状态机控制fifo之间读写的装置及方法 |
CN103973667A (zh) * | 2013-02-01 | 2014-08-06 | 英特尔移动通信有限责任公司 | 通信装置及用于控制通信装置的方法 |
CN105389283A (zh) * | 2015-12-11 | 2016-03-09 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于CoreConnect总线的电子盘控制器电路及控制方法 |
CN109246377A (zh) * | 2018-10-19 | 2019-01-18 | 青岛镕铭半导体有限公司 | 视频数据存储、读取方法及视频数据存储设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100370448C (zh) * | 2005-01-14 | 2008-02-20 | 英业达股份有限公司 | 多通道串行ata的控制系统及其控制卡 |
CN2791747Y (zh) * | 2005-03-21 | 2006-06-28 | 赖嘉德实业有限公司 | 硬盘模拟模块 |
CN1908919A (zh) * | 2006-07-28 | 2007-02-07 | 李付忠 | 一种网络附接存储设备 |
-
2007
- 2007-06-20 CN CN2007101176449A patent/CN101329617B/zh active Active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102707919A (zh) * | 2012-05-28 | 2012-10-03 | 上海海事大学 | 一种使用有限状态机控制fifo之间读写的装置及方法 |
CN103973667A (zh) * | 2013-02-01 | 2014-08-06 | 英特尔移动通信有限责任公司 | 通信装置及用于控制通信装置的方法 |
CN103973667B (zh) * | 2013-02-01 | 2018-07-17 | 英特尔德国有限责任公司 | 通信装置及用于控制通信装置的方法 |
CN105389283A (zh) * | 2015-12-11 | 2016-03-09 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于CoreConnect总线的电子盘控制器电路及控制方法 |
CN109246377A (zh) * | 2018-10-19 | 2019-01-18 | 青岛镕铭半导体有限公司 | 视频数据存储、读取方法及视频数据存储设备 |
Also Published As
Publication number | Publication date |
---|---|
CN101329617B (zh) | 2010-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10318164B2 (en) | Programmable input/output (PIO) engine interface architecture with direct memory access (DMA) for multi-tagging scheme for storage devices | |
TWI594121B (zh) | 使用資料壓縮的快取技術 | |
CN107533525A (zh) | 具有独立接口路径的存储器设备的通用管芯实现 | |
CN101310339A (zh) | 具有多个内部数据总线和存储器库交错的存储器装置和方法 | |
US20050097263A1 (en) | Flash-memory card-reader to IDE bridge | |
TWI645330B (zh) | 固態硬碟存取方法以及使用該方法的裝置 | |
CN101329617B (zh) | 一种硬盘控制器 | |
CN106897033A (zh) | 一种基于fpga和固态硬盘的高速采集记录装置 | |
US8327051B2 (en) | Portable handheld memory card and methods for use therewith | |
CN102053929A (zh) | 一种基于Linux系统DM层的IO缓存操作方法和系统 | |
JP2002073522A (ja) | メモリカードブリッジ | |
US7612780B2 (en) | Optimized memory addressing | |
US20090024806A1 (en) | Storage device, storage controller, system, method of storing data, method of reading data and file system | |
CN101465145A (zh) | 记录设备 | |
US20050198425A1 (en) | Combined optical storage and flash card reader using single ide or sata port and method thereof | |
US20030217218A1 (en) | Interface for devices having different data bus widths and data transfer method using the interface | |
EP2183663B1 (en) | Mass storage system with improved usage of buffer capacity | |
US20030046499A1 (en) | Integrated drive controller for systems with integrated mass storage | |
JP4408840B2 (ja) | Hddコントローラ及びそれを搭載したシステム | |
US8385133B2 (en) | High-speed download device using multiple memory chips | |
CN102073459B (zh) | 基于固态硬盘的计算机系统及固态硬盘 | |
US20060248253A1 (en) | Motherboard and bridge module therefor | |
CN101859232A (zh) | 一种可变长度数据存储接口 | |
US20130100736A1 (en) | Mapping between two buses using serial addressing bits | |
US7903885B2 (en) | Data converting apparatus and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |