CN100356307C - 用存储接口电路连到主机系统的盘驱动器及接口连接方法 - Google Patents

用存储接口电路连到主机系统的盘驱动器及接口连接方法 Download PDF

Info

Publication number
CN100356307C
CN100356307C CNB2005100684825A CN200510068482A CN100356307C CN 100356307 C CN100356307 C CN 100356307C CN B2005100684825 A CNB2005100684825 A CN B2005100684825A CN 200510068482 A CN200510068482 A CN 200510068482A CN 100356307 C CN100356307 C CN 100356307C
Authority
CN
China
Prior art keywords
register
computer system
host computer
interface circuit
disk drive
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.)
Expired - Fee Related
Application number
CNB2005100684825A
Other languages
English (en)
Other versions
CN1700163A (zh
Inventor
荒川丰
木下忠明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Publication of CN1700163A publication Critical patent/CN1700163A/zh
Application granted granted Critical
Publication of CN100356307C publication Critical patent/CN100356307C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及用存储接口电路连到主机系统的盘驱动器及接口连接方法,其中盘驱动器(10)包括符合多用途并行接口的盘控制单元(112)。盘控制单元(112)具有寄存器堆(112b),寄存器堆(112b)包括主机系统(20)可访问的多个寄存器。盘驱动器(10)进一步包括通过并行接口连接到盘控制单元(112)的输入/输出(IO)接口电路(12)。IO接口电路(12)可连接到包含在主机系统(20)中的存储接口电路(21)。IO接口电路(12)利用并行接口协议与盘控制单元(112)通信,并且利用串行接口协议与存储接口电路(21)通信。

Description

用存储接口电路连到主机系统的盘驱动器及接口连接方法
技术领域
本发明涉及可连接到主机系统的盘驱动器,并更具体地涉及通过现有的存储接口电路连接到主机系统的盘驱动器、以及接口连接方法,其中,所述存储接口电路还作为输入/输出(IO)串行接口电路。
背景技术
一般地,以硬盘驱动器(HDD)为代表的盘驱动器作为电子装置的存储设备,所述电子装置例如为个人计算机。利用此盘驱动器的电子装置称作主机系统。通常,主机系统和盘驱动器具有它们各自的多用途并行接口,如AT连接(ATA)接口。盘驱动器具有包括多个寄存器的寄存器堆。主机系统使用寄存器操作命令来操作寄存器堆中的寄存器。通过此操作,主机系统在寄存器堆中写命令(命令代码)和执行命令所必需的各种参数。主机系统通过操作寄存器,即,通过访问盘驱动器中的寄存器,而执行命令的执行和数据的发送/接收。
称作串行ATA接口的串行接口近来已经发展成用于增加主机系统和盘驱动器之间数据传输速率的接口。串行ATA接口(串行接口)具有与常规ATA接口(即并行ATA接口或并行接口)不同的物理规范。相应地,为了通过串行ATA接口把主机系统连接到盘驱动器,必需提供用于主机系统和盘驱动器的各个串行ATA接口电路。
进一步地,主机系统数量的增加导致结合卡槽。配备有闪存的存储卡可安装在卡槽中。利用插入到卡槽中的存储卡,主机系统可执行从存储卡读写数据的高速率串行传输。日本专利申请KOKAI出版号2003-69931已经提出一种使大容量盘驱动器(数据存储驱动器)能通过在主机系统中形成的卡槽连接到主机系统的存储接口电路的技术。然而,为了把盘驱动器连接到主机系统的存储接口电路,盘驱动器必须具有符合存储卡接口标准的串行接口电路。
发明内容
本发明的目的是通过只在盘驱动器上增加简单电路就能使盘驱动器经现有存储接口电路连接到主机系统,其中,所述存储接口电路也可用作串行接口电路。
根据本发明的实施例,提供一种由主机系统使用的盘驱动器,主机系统包括存储接口电路,该存储接口电路还作为用于把主机系统连接到符合串行接口的多个输入/输出装置之一的串行接口电路,该多个输入/输出装置中包括所述盘驱动器,所述盘驱动器的特征在于包括:符合并行接口的盘控制单元,所述盘控制单元包括用于保存命令代码和参数的寄存器堆,所述寄存器堆包括多个寄存器,该主机系统可访问寄存器堆中的多个寄存器;以及通过并行接口连接到盘控制单元的输入/输出接口电路,所述输入/输出接口电路可连接到主机系统的存储接口电路,所述输入/输出接口电路利用并行接口协议与盘控制单元通信,并且利用串行接口协议与主机系统的存储接口电路通信,其中,盘控制单元包括主控制器,当主机系统通过主机系统的存储接口电路向盘驱动器发送一系列的寄存器控制命令并且所述一系列的寄存器控制命令从输入/输出接口电路传送给盘控制单元时,所述主控制器根据所述一系列寄存器控制命令来控制寄存器堆中的寄存器,并从寄存器堆获取命令代码和参数,由所述一系列的寄存器控制命令指定命令代码和参数,命令代码将在盘驱动器中执行,参数则是执行命令代码所必需的。
本发明还提供一种把盘驱动器连接到配备有存储接口电路的主机系统的接口连接方法,该存储接口电路还作为用于把主机系统连接到符合串行接口的多个输入/输出装置之一的串行接口电路,该多个输入/输出装置中包括所述盘驱动器,所述盘驱动器包括符合并行接口的盘控制单元、以及通过并行接口连接到盘控制单元的输入/输出接口电路,所述输入/输出接口电路可连接到主机系统的存储接口电路,所述输入/输出接口电路利用并行接口协议与盘控制单元通信,并且利用串行接口协议与主机系统的存储接口电路通信,所述接口连接方法的特征在于包括:当包含在主机系统中的主控制器通过存储接口电路访问盘驱动器时,通过该主控制器产生符合并行接口的一系列寄存器控制命令;主机系统的存储接口电路根据串行接口协议,向盘驱动器传送所述一系列的寄存器控制命令;当传送给盘驱动器的一系列寄存器控制命令根据并行接口协议通过盘驱动器的输入/输出接口电路而发送给盘控制单元时,根据传送的一系列寄存器控制命令而在用于保存命令代码和参数的寄存器堆上执行寄存器操作,寄存器操作包括在寄存器堆中写命令代码和参数,由所述一系列的寄存器控制命令指定命令代码和参数,命令代码将在盘驱动器中执行,参数则是执行命令代码所必需的,所述寄存器堆包括多个寄存器,该主机系统可访问寄存器堆中的多个寄存器;以及使用所述参数来执行命令代码,其中,命令代码和参数保存在寄存器堆中。
附图说明
附图包含在本说明书中并构成说明书的一部分,附图与以上概述和以下实施例的详细描述一起说明本发明的实施例,用于解释本发明的原理。
图1为说明具有根据本发明实施例的硬盘驱动器(HDD)10的系统的配置的框图;
图2为说明图1所示寄存器堆112b的结构实例的视图;
图3为有助于解释在用于判别连接到图1所示主机20的装置类型的实施例中执行的处理程序的流程图;以及
图4A-4C为有助于解释在用于从HDD10读取数据的实施例中执行的处理程序的流程图。
具体实施方式
以下结合附图详细描述本发明应用于硬盘驱动器的实施例。图1为示出具有根据本发明实施例的硬盘驱动器(HDD)10的系统的配置的框图。图1所示HDD10例如为与存储卡相同形状的卡型HDD,并且是0.85英寸HDD。所使用的HDD10连接到主机20。主机20使用HDD10作为其存储器。主机20是以个人计算机、便携终端、移动电话等为代表的电子装置。主机20包括存储接口电路21、卡槽22以及主控制器23。
存储接口电路21作为用于把主机20的主控制器23连接到插入在卡槽中的存储卡的的存储接口。存储卡例如为安全数字(SD)存储卡。存储接口电路21可连接到除存储卡之外的其它卡。只要所述卡符合存储接口的电气和机械规范就足矣。例如,存储接口电路21还可连接到具有符合串行接口的输入/输出(IO)装置的IO卡。换句话说,存储接口电路21也可用作连接到符合串行接口的IO装置的串行接口电路(IO串行接口电路)。HDD(卡型HDD)10是以安全数字输入/输出卡(SDIO卡)为代表的一种IO卡。
已经知道使用存储接口作为串行接口(IO串行接口)的主机系统。这些主机系统包括可使用符合SD存储接口的卡槽作为符合串行(SDIO串行)接口的卡槽的主机系统。可连接到此主机系统的IO卡(IO装置)一般具有寄存器堆。在这假设主机系统使用存储接口作为串行(SDIO串行)接口,并且,主机系统通过串行接口(经过符合串行接口的卡槽)连接到IO装置。主机系统控制从IO装置读写的数据的传输。具体地,主机系统通过操作IO装置中的寄存器堆,根据IO装置控制程序而控制数据传输。
如上所述,当主机系统控制使用串行接口从IO装置读写的数据传输时,就必须操作寄存器堆。主机系统从具有并行接口(并行ATA接口)的HDD接收数据和向该HDD发送数据的情形也是如此。实施例的特征在于:利用此点,HDD10制作得可连接到主机系统20的存储接口,即,也用作串行接口(IO串行接口)的现有存储接口。
卡槽22用于在其中安装符合存储接口(串行接口)的电气和机械规范的卡(存储卡或IO卡),从而,所述卡可连接到存储接口电路21。在此假设HDD(卡型HDD)10插入到主机系统20的卡槽22中。也可在卡槽22中安装符合存储接口的电气和机械规范并通过接口电缆连接到IO装置的连接器。相应地,即使HDD10不是卡类型,当它通过接口电缆连接到卡连接器时,也可连接到主机系统20的存储接口电路21。进一步地,卡槽22不总是必需的。例如,如果主机系统20是便携式的小尺寸电子装置如移动电话,HDD10就可通过主机系统20壳体中的电缆或印刷布线而连接到存储接口电路21。
主控制器23控制主机系统20的每个元件、以及连接到主机系统20的外围装置。当主控制器23通过存储接口电路21连接到HDD10时,它根据HDD控制程序而控制HDD10。在此情况下,主控制器23把HDD10处理成具有多用途并行接口(并行ATA接口)的HDD。
HDD10包括主HDD单元11、输入/输出(IO)接口电路12和连接器13。主HDD单元11等效于使用并行接口(如ATA接口)来执行并行数据传输的常规HDD,即具有并行接口的HDD。主HDD单元11主要包括硬盘组件(HDA)单元111和硬盘控制(HDC)单元112。
HDA单元111主要包括合并在HDD10中的机械部分。具体地,HDA单元111包括盘(磁盘)111a、头(磁头)111b和执行器111c。盘111a作为用于磁记录数据的记录介质。头111b用于从盘111a读取数据和向盘111a写数据。执行器111c支撑头111b,从而,头111b可在盘111a上径向移动。图1未示出用于旋转盘111a的主轴电机、用于驱动执行器111c的音圈电机等。
HDC单元112符合多用途并行接口。并行接口例如为在HDD领域中广泛使用的ATA接口(并行ATA接口)。HDC单元112包括电路部分。具体地,HDC单元112包括读/写通道112a、寄存器堆112b和主控制器112c。读/写通道112a是用于执行各类处理的信号处理装置,所述处理例如为信号的模拟-数字转换,对写数据的编码、以及对读数据的解码,其中,所述信号表示头111b从盘111a读取的数据。
寄存器堆112b由多个寄存器形成。当主机系统20利用HDD10时,寄存器堆112b用于在其中写命令(命令代码)和用于执行命令所需的各种参数。符合并行接口(ATA接口)的常规(现有)HDD也具有与寄存器堆112b等效的寄存器堆。假设常规HDD的每个寄存器堆由m个寄存器R0′、R1′、R2′、...、Rm-1′形成。寄存器R0′的大小为16位(2个字节),并且,寄存器R1′、R2′、...、Rm-1′的大小为8位(1个字节)。
图2示出寄存器堆112b的结构实例。在此实例中,寄存器堆112b由m个寄存器R0、R1、R2、...、Rm-1形成,其中,每个寄存器分别被分配地址n、n+2、n+3、...、n+m。寄存器R0、R1、R2、...、Rm-1的角色与常规HDD的寄存器R0′、R1′、R2′、...、Rm-1′的角色等效。寄存器R0与寄存器R0′一样,大小为16位(2个字节),并且,寄存器R1、R2、...、Rm-1与寄存器R1′、R2′、...、Rm-1′一样,大小为8位(1个字节)。对寄存器R0′、R1′、R2′、...、Rm-1′分配各个地址。寄存器R1′、R2′、...、Rm-1′相对于寄存器R0的地址分别为2、3、...、m。在实施例中,如上所述,对寄存器R0、R1、R2、...、Rm-1分配地址n、n+2、n+3、...、n+m。通过此地址分配,寄存器R1、R2、...、Rm-1相对于寄存器R0的地址与寄存器R1′、R2′、...、Rm-1′相对于寄存器R0′的地址相对应。在此情况下,主控制器112c通过识别寄存器R0的地址n,即偏移地址n,而以与常规HDD中相同的方式处理寄存器R0、R1、R2、...、Rm-1。显而易见,作为基准寄存器的寄存器R0和 R0′中每个的相对地址是零。
现在描述寄存器R0-Rm-1的基本情况。寄存器R0例如为数据寄存器。寄存器R0用于以16位(2个字节)为单位保存读过程中的读数据和写过程中的写数据。寄存器R1是错误寄存器。当在读或写过程中发生错误时,寄存器R1用于保存与错误有关的详细信息(错误信息)。如果错误位ERR为“1”,寄存器R1的内容就变为有效,其中,在寄存器(状态寄存器)R8和寄存器(备用寄存器)Rm-2每一个中所保存的状态信息内包括错误位ERR,错误位ERR在后面描述。主机系统20把寄存器R1看作是专用于读的读寄存器。
寄存器R2是扇区计数寄存器。寄存器R2用于保存将要读或写的数据扇区的编号。寄存器R3、R4、R5和R6分别是第一、第二、第三和第四目标逻辑-块-地址(LBA)寄存器。目标LBA寄存器R3、R4、R5和R6用于保存例如包括在28位目标LBA(目标逻辑-块-地址)中的各个位,所述目标LBA把领先的扇区指示为读或写的目标。更具体地,目标LBA寄存器R3、R4、R5和R6分别保存28位目标LBA中所包括的位7-0(第一目标LBA[70])、位15-8(第二目标LBA[15-8])、位23-16(第三目标LBA[23-16])、以及位27-24(第四目标LBA[27-24])。
寄存器R8作为用于保存主机系统20所指定命令代码的命令寄存器。主机系统20把命令寄存器R8识别为专用于写的写寄存器。寄存器R8还作为用于保存与HDD10的状态有关的信息的状态寄存器,其中,该信息报告给主机系统20。主机系统20把状态寄存器R8识别为专用于读的读寄存器。在实施例中,在寄存器R8用作命令寄存器并且在寄存器R8中写命令代码之后,寄存器R8切换为用作状态寄存器。寄存器(状态寄存器)R8保存的状态信息包括数据请求位DRQ、忙位BSY和错误位ERR。位DRQ指示在要求数据传输的命令的执行过程中有可能进行数据传输(DRQ=1)还是不能进行数据传输(DRQ=0)。位BSY指示HDD10工作(BSY=1)或不工作(BSY=0)。在命令代码写到寄存器R8中并且寄存器R8从命令寄存器切换到状态寄存器之后,位BSY设定为“1”,并且在命令代码指定的操作结束之前一直保持为“1”。然而,当发出基于要求数据传输的命令的数据传输请求(DRQ=1)时,位BSY设定为“0”。在读取寄存器R8的内容(状态信息)之后,重置寄存器R8。位ERR指示在执行从主机系统20提供的命令的过程中发生错误(ERR=1)或不发生错误(ERR=0)。
寄存器Rm-2作为用于保存与状态寄存器R8相同的状态信息的备用状态寄存器。备用状态寄存器Rm-2与状态寄存器R8在以下方面不同:即使其内容被读取,寄存器Rm-2也不重置。主机系统20把备用状态寄存器Rm-2识别为读寄存器。寄存器Rm-2还作为由主机系统20识别为写寄存器的装置控制寄存器。当系统控制用于HDD10的重置信号和中断信号时,装置控制寄存器Rm-2由主机系统20使用。
再次参照图1,主控制器112c根据一系列寄存器控制命令而对寄存器堆112b执行寄存器控制。当主机系统20通过存储接口电路21发送给HDD10的一系列寄存器控制命令经IO接口电路12到达HDC单元112时,执行此寄存器控制。依靠寄存器控制,主控制器112c从寄存器堆获得命令代码和参数。命令代码和参数由所述系列的寄存器控制命令指定。命令代码在HDD10中执行,并且参数是执行命令代码所必需的。使用这些参数,主控制器112c执行命令代码。
IO接口电路12例如为SDIO接口电路。IO接口电路12通过并行接口连接到主HDD单元11的HDC单元112。进一步地,IO接口电路12可连接到主机系统20的存储接口电路21。IO接口电路12利用并行接口协议与HDC单元112通信,并且利用串行接口协议与主机系统20的存储接口电路21通信。IO接口电路12具有用于把从主机系统20通过存储接口电路21和连接器单元13发送的串行数据转换为并行数据的串行-并行转换功能,并且,具有把从HDC单元112发送的并行数据转换为串行数据的并行-串行转换功能。
IO接口电路12连接到对IO接口(DSIO接口)唯一的寄存器R。寄存器R用于预储存与包含IO接口电路12的装置(在此实施例中为HDD10)有关的信息(装置信息)。寄存器R保存的装置信息包含装置(HDD10)的类型、寄存器堆112b中每个寄存器R0-Rm-1的偏移地址n(即,领先寄存器R0的地址n)。
现在描述在上述实施例中执行的以下操作:
(1)确定通过卡槽22连接到主机系统20的存储接口电路21的装置(连接装置)的类型的操作;
(2)主机系统20从HDD10读取数据的操作;以及
(3)主机系统20在HDD10中写数据的操作。
Re:(1)确定连接装置的类型:
首先参照图3的流程图,描述由主机系统20确定连接装置的类型的操作。与图1所示HDD10的IO接口电路12类似,安装在主机系统20的卡槽22中的装置的接口电路(符合存储接口)连接到装置信息寄存器R。寄存器R保存与装置有关的装置信息。如果装置具有符合存储接口的接口电路,寄存器R的地址就是与装置类型无关的特定公共地址。进一步地,存储接口具有命令(CMD)线。主机系统20的主控制器23配置为能通过CMD线操作连接到存储接口电路21的装置中的每个寄存器。具体地,当启动主机系统20时,主控制器23产生寄存器控制命令(装置信息读命令)(步骤S11),该命令用于读取连接到存储接口电路21的装置中的装置信息寄存器R的内容(装置信息)。此命令包括用于读取寄存器数据的命令代码、以及用于识别装置信息寄存器R为读取目标如特定地址(特定寄存器地址)的信息。特定寄存器地址是主机系统20的输入/输出空间中的地址(IO地址),该地址被分配给寄存器R。主控制器23产生的寄存器控制命令(装置信息读命令)通过并行传输而发送给存储接口电路21。
主机系统20的存储接口电路21把从主控制器23并行传输的寄存器控制命令(装置信息读命令)转换为串行数据(串行寄存器控制命令)。在此之后,存储接口电路21根据存储接口(串行接口)协议把串行寄存器控制命令传输到插入在卡槽22中的装置(在此实施例中为HDD10)(步骤S12)。存储接口(串行接口)使用用于传输命令的CMD(命令)线。
插入到卡槽22中的装置根据通过CMD线传输的寄存器控制命令(装置信息读命令)从装置信息寄存器R读取装置信息。在插入到卡槽22中的装置是HDD10的实施例中,通过IO接口电路12从寄存器R读取与HDD10有关的装置信息(步骤S21)。装置信息由IO接口电路12转换为串行数据。为响应寄存器控制命令(装置信息读命令),作为串行数据的装置信息由IO接口电路12通过CMD线传输到主机系统20(步骤S22)。在主机系统20中,装置信息由存储接口电路21转换为并行数据,并发送给主控制器23。
在接收到装置信息时,主控制器23识别插入到卡槽22中的装置,即,连接到存储接口电路21的装置(步骤S13)。如果在步骤S14中确定装置是HDD(HDD10),主控制器23就从装置信息检测包含在HDD10的寄存器堆112b中的领先寄存器R0的地址n,即,包含在寄存器堆112b中的每个寄存器R0-Rm-1的公共偏移地址n(步骤S15)。随后,主控制器23根据用于HDD的控制程序而把HDD10处理(识别)为具有并行接口(ATA接口)的HDD。因而,主控制器23通过操作HDD10中的寄存器堆112b而控制从和到HDD10的数据传输。
Re:(2)从HDD10读取数据:
接着参照图4A-4C,描述主机系统20从HDD10读取数据的操作。主机系统20的主控制器23按以下方式发挥作用,假设HDD10具有并行接口(ATA接口)。首先,主控制器23产生用于在寄存器堆112b的寄存器R2中写扇区编号的寄存器控制命令(扇区计数寄存器写命令)(步骤S101),其中,寄存器堆112b包括在HDD10的HDC单元112中。此命令符合并行接口(ATA接口)的标准。该命令包括用于寄存器控制的命令代码(寄存器控制代码)、在IO空间中分配给将被控制的寄存器的地址(寄存器地址)、以及将被写(设定)到寄存器中的参数。如果在此情况下寄存器控制命令是扇区计数寄存器写命令,寄存器地址就指定扇区计数寄存器R2,并且所述参数指示扇区的编号。主控制器23产生的寄存器控制命令(扇区计数寄存器写命令)并行传输给存储接口电路21。
主机系统20的存储接口电路21把从主控制器23并行传输的寄存器控制命令(扇区计数寄存器写命令)转换为串行数据(串行寄存器控制命令)。存储接口电路21根据存储接口(串行接口)协议通过卡槽22把串行寄存器控制命令传输给HDD10(步骤S102)。存储接口电路21使用用于命令传输的CMD线。
HDD10的IO接口电路12接收通过CMD线传输的串行寄存器控制命令,把该命令转换为并行寄存器控制命令,并根据并行接口协议把此命令发送给主HDD单元11的主控制器112c。
主控制器112c通过IO接口电路12从主机系统20的主控制器23接收寄存器控制命令。主控制器112c识别IO接口电路12是否为符合并行接口(ATA接口)的主机。从而,在从IO接口电路12接收寄存器控制命令时,主控制器112c根据寄存器控制命令而执行寄存器控制(步骤S201)。换句话说,主控制器112c执行对并行接口(ATA接口)唯一的寄存器控制,该控制用于把包含在命令中的参数写到寄存器堆112b中由寄存器控制命令中包含的寄存器地址所指定的寄存器中。在此执行的寄存器控制命令是扇区计数寄存器写命令,并且包括指定扇区计数寄存器R2的寄存器地址、以及指定扇区编号的参数。相应地,在步骤S201中,通过执行寄存器控制命令(扇区计数寄存器写命令),在寄存器堆112b的扇区计数寄存器R2中写扇区编号。
以与上述相同的方式,主机系统20的主控制器23顺序地产生第一至第四目标LBA寄存器写命令(步骤S103、S105、S107和S109)。第一目标LBA寄存器写命令是用于在第一目标LBA寄存器R3中写第一目标LBA[7-0]的寄存器控制命令。第二目标LBA寄存器写命令是用于在第二目标LBA寄存器R4中写第二目标LBA[15-8]的寄存器控制命令。相似地,第三目标LBA寄存器写命令是用于在第三目标LBA寄存器R5中写第三目标LBA[23-16]的寄存器控制命令。进一步地,第四目标LBA寄存器写命令是用于在第四目标LBA寄存器R6中写第四目标LBA[27-24]的寄存器控制命令。第一至第四目标LBA寄存器写命令包含分别指定寄存器R3、R4、R5和R6的寄存器地址、以及分别指示目标LBA[7-0]、[15-8]、[23-16]和[27-24]的参数。存储接口电路21顺序地把第一至第四目标LBA寄存器写命令转换为各个串行寄存器控制命令,并顺序地把得到的命令传输到HDD10(步骤S104、S106、S108和S110)。
HDD10的主控制器112c从HDD10的IO接口电路12顺序地接收第一至第四目标LBA寄存器写命令。根据接收的第一至第四目标LBA寄存器写命令(寄存器控制命令),主控制器112c分别在寄存器R3、R4、R5和R6中顺序地写目标LBA[7-0]、[15-8]、[23-16]和[27-24](步骤S202、S203、S204和S205)。结果,28位目标LBA[27-0]分散地储存在寄存器R3、R4、R5和R6中。
随后,主机系统20的主控制器23产生寄存器控制命令(命令寄存器写命令),该命令用于在寄存器R8中写将由HDD10执行的命令代码(例如用于指定读)(步骤S111)。此命令包括用于指定命令寄存器R8的寄存器地址、以及命令代码。HDD10根据第一至第四目标LBA寄存器写命令,使用已经写在HDD10的寄存器堆112b中的参数而执行所述命令代码。在此实施例中,此命令代码指定读。寄存器控制命令(命令寄存器写命令)由存储接口电路21转换为串行寄存器控制命令,并传输给HDD10(步骤S112)。
HDD10的主控制器112c从HDD10的IO接口电路12接收串行寄存器控制命令(命令寄存器写命令)。随后,主控制器112c在寄存器R8中写在所接收命令中包括的命令代码(用于指定读)(步骤S206)。结果,主控制器112c确定主机系统20已经向HDD10发出命令,并且根据在命令寄存器R8中写的命令代码而开始执行操作,即由主机系统20请求的操作(步骤S207)。在此实施例中,开始数据读操作,其中,从盘111a的下述部分读取与寄存器R2所指示扇区编号相应的数据,所述部分从在盘111a上由分散储存在寄存器R3、R4、R5和R6中的目标LBA[27-0]指定的位置开始。
如上所述,在实施例中,如果IO接口电路12(最小规模电路)通过并行接口连接到HDD10,具有HDC单元112的HDD10可由串行接口连接到包含在主机系统20中的现有存储接口电路21,其中,HDC单元112符合多用途并行接口(ATA接口)。结果,主机系统20以与在控制具有通用并行接口的HDD时相同的方式,用寄存器控制命令控制通过存储接口电路21连接到其上的HDD10。换句话说,主机系统20可通过现有的存储接口向HDD10提供操作命令(命令代码)和执行命令所必需的参数。而且,在实施例中,使在分配给寄存器堆112b中每个寄存器R0-Rm-1的地址(即相对地址和偏移地址)中包括的相对地址与在分配给现有HDD的每个寄存器R0′-Rm-1′的地址中包括的相对地址相对应,其中,现有HDD符合多用途并行接口。这使得主机系统20能向HDD10发出命令,并使HDD10以与主机系统20通过并行接口(ATA接口)连接到HDD10的情形相同的程序执行命令。相应地,为具有常规并行接口的HDD设计的控制程序可用作由主机系统20的主控制器23执行的盘控制程序。进一步地,当程序设计者新设计盘控制程序时,他们可利用设计用于具有常规并行接口的HDD的控制程序的方法,这减少新设计程序所需的时间和努力。
当开始与写在寄存器R8中的命令代码相应的操作(在此实施例中为数据读)时,HDD10的主控制器112c把寄存器R8从命令寄存器R8切换为状态寄存器R8。随后,主控制器112c在状态寄存器R8和备用状态寄存器Rm-2中写包括忙位BSY(BSY=1)的状态信息。在此假设通过数据读而把读数据写到数据寄存器R0中。此时,主控制器112c确定可以执行由主机系统20请求的数据传输,由此把包括在状态信息中的忙位BSY和数据请求位DRQ分别重写为“0”和“1”,其中,所述状态信息保存在状态寄存器R8和备用状态寄存器Rm-2的每一个中。
在HDD10执行命令寄存器写命令之后,主机系统20的主控制器23产生用于从备用状态寄存器Rm-2读取状态信息的寄存器控制命令(备用状态寄存器读命令)(步骤S113)。寄存器控制命令(备用状态寄存器读命令)由存储接口电路21转换为串行寄存器控制命令,并传输给HDD10(步骤S114)。
HDD10的主控制器112c从HDD10的IO接口电路12接收寄存器控制命令(备用状态寄存器读命令)。根据此命令,主控制器112c从备用状态寄存器Rm-2读取状态信息(步骤S208)。主控制器112c向IO接口电路12发送读取的状态信息。IO接口电路12把它转换为串行状态信息,并根据串行接口协议向主机系统20发送串行状态信息(步骤S209)。
主机系统20的主控制器23查询包括在状态信息中的位BSY和DRQ,由此确定是否BSY=1且DRQ=0(步骤S115)。主控制器23重复执行步骤S113,直到它确认BSY=1且DRQ=0为止(步骤S115),即直到HDD10变得能执行所请求的数据传输为止。在确认BSY=1且DRQ=0时,主控制器23产生用于从状态寄存器R8读取新状态信息的寄存器控制命令(状态寄存器读命令)(步骤S116)。状态寄存器读命令串行传输给HDD10(步骤S117)。结果,在HDD10中,以与在备用状态寄存器读命令的情形中相同的方式从状态寄存器R8读取状态信息(步骤S210)。此状态信息由IO接口电路21转换为串行状态信息,并传输给主机系统20(步骤S211)。因而,主机系统20的主控制器23根据命令寄存器写命令而获得状态信息,所述状态信息表示为响应已经写到HDD10的寄存器R8中的读命令而在HDD10中执行的执行结果。如上所述,在实施例中,主机系统20以与主机系统20和HDD10通过并行接口(ATA接口)连接的情形中相同的程序获得在HDD10中的命令执行结果。
在此之后,主控制器23产生用于从寄存器R0读数据的寄存器控制命令(数据寄存器读命令)(步骤S118),并把数据寄存器读命令串行传输到HDD10(步骤S119)。结果,HDD10重复读取数据寄存器R0的读数据并把读数据通过IO接口电路12串行传输到主机系统20的操作、以及把随后的读数据写到数据寄存器R0中的操作(步骤S212)。此重复一直持续到主机系统20请求的所有数据项目传输到主机系统20为止。因而,在实施例中,通过串行接口连接系统20和HDD10,通过串行传输而执行主机系统20与HDD10之间的数据传输,由此实现比用并行接口连接主机系统和HDD的情形更高速率的数据传输。
另一方面,当主机系统20的主控制器23从HDD10接收所有请求的数据项目时(步骤S120),再次产生备用状态寄存器读命令(步骤S121)。备用状态寄存器读命令由存储接口电路21转换为串行寄存器控制命令,并传输给HDD10(步骤S122)。结果,在HDD10中,从备用状态寄存器Rm-2读取状态信息(步骤S213)。从状态寄存器Rm-2读取的状态信息发送给主机系统20(步骤S214)。
查询包括在从HDD10发送的状态信息中的位BSY和DRQ,主机系统20的主控制器23确定是否BSY=0且DRQ=0(步骤S123)。在确认BSY=0且DRQ=0(步骤S123)之前,即,在从HDD10传输所有请求的数据项目之前,主控制器23一直重复上述步骤S121。在确认BSY=0且DRQ=0时,主控制器23产生用于从状态寄存器R8再次读取最新状态信息的寄存器控制命令(状态寄存器读命令)(步骤S124),并把产生的命令串行传输给HDD10(步骤S125)。HDD10则从状态寄存器R8读取最新的状态信息(步骤S215)。状态信息由IO接口电路12转换为串行状态信息,并传输给主机系统20(步骤S216)。因而,主机系统20的主控制器23获得表示HDD10读取的最终数据结果的状态信息。
如果包括在状态信息中的错误位ERR表示发生错误(ERR=1),主机系统20的主控制器23就产生用于从错误寄存器R1读取错误信息的寄存器控制命令(错误寄存器读命令),并把该命令通过存储接口电路21传输给HDD10。HDD10则从错误寄存器读取错误信息,并把读取的信息发送给主机系统20。因而,主机系统20的主控制器23以与主机系统20和HDD10通过并行接口(ATA接口)连接的情形中相同的程序,获得表示在HDD10中执行命令的过程中错误详细情况的错误信息。
Re:(3)在HDD10中写数据
以下简单描述主机系统20在HDD10中写数据的操作。以与读数据情形中相同的程序,即以与图4A-4C流程图所示相同的程序,主机系统20在HDD10中写数据。数据写和数据读在与图4B流程图中步骤S118相应的处理中是不同的。具体地,在步骤S118中,主机系统20向HDD10提供用于从数据寄存器R0读(获得)数据的寄存器控制命令(数据寄存器读命令)。相反,在数据写的情况下,在与步骤S118相应的处理中,主机系统20向HDD10提供用于在数据寄存器R0中写(传输)数据的寄存器控制命令(数据寄存器写命令)。在此情况下,主机系统20还向HDD10提供由寄存器R2中设定的扇区编号所指定大小的数据(写数据)。写数据通过数据寄存器R0以两个字节为单位储存在写缓冲器(未示出)中,其中,写缓冲器设置在HDD10的主HDD单元11中。储存在写缓冲器中的写数据以扇区为单位(例如以512字节为单位)写到盘11a上,在盘111a上用分散储存在寄存器R3、R4、R5和R6中的目标LBA[27-0]所指定的位置开始。
在上述实施例中,本发明应用于具有硬盘驱动器(HDD)的系统。然而,本发明还可应用于配置有其它盘驱动器如磁光盘驱动器的系统。只要系统设置有包含符合多用途并行接口的盘控制单元的盘驱动器就足矣。
本领域中技术人员容易明白其它的优点和变化。从而,在更广泛的方面中,本发明不局限于在此示出和描述的特定细节和代表性实施例。相应地,只要不偏后附权利要求及其等效物所定义的本发明一般概念的精神或范围,就可作出各种变更。

Claims (12)

1.一种由主机系统使用的盘驱动器,主机系统包括存储接口电路,该存储接口电路还作为用于把主机系统连接到符合串行接口的多个输入/输出装置之一的串行接口电路,该多个输入/输出装置中包括所述盘驱动器,所述盘驱动器的特征在于包括:
符合并行接口的盘控制单元,所述盘控制单元包括用于保存命令代码和参数的寄存器堆,所述寄存器堆包括多个寄存器,该主机系统可访问寄存器堆中的多个寄存器;以及
通过并行接口连接到盘控制单元的输入/输出接口电路,所述输入/输出接口电路可连接到主机系统的存储接口电路,所述输入/输出接口电路利用并行接口协议与盘控制单元通信,并且利用串行接口协议与主机系统的存储接口电路通信,
其中,盘控制单元包括主控制器,当主机系统通过主机系统的存储接口电路向盘驱动器发送一系列的寄存器控制命令并且所述一系列的寄存器控制命令从输入/输出接口电路传送给盘控制单元时,所述主控制器根据所述一系列寄存器控制命令来控制寄存器堆中的寄存器,并从寄存器堆获取命令代码和参数,由所述一系列的寄存器控制命令指定命令代码和参数,命令代码将在盘驱动器中执行,参数则是执行命令代码所必需的。
2.如权利要求1所述的盘驱动器,特征在于进一步包括保存对盘驱动器唯一的装置信息的装置信息寄存器,主机系统可访问该装置信息寄存器。
3.如权利要求2所述的盘驱动器,特征在于:将公共特定地址分配给装置信息寄存器,所述公共特定地址与输入/输出装置的类型无关。
4.如权利要求3所述的盘驱动器,特征在于:当输入/输出接口电路通过主机系统的存储接口电路从主机系统接收装置信息读命令时,输入/输出接口电路向主机系统的存储接口电路提供由装置信息寄存器保存的装置信息,作为对包括特定地址的装置信息读命令的回复,其中,装置信息寄存器由特定地址指定。
5.如权利要求2所述的盘驱动器,特征在于:向寄存器堆中的每个寄存器分配地址,该地址由公共偏移地址和寄存器堆中所述每个寄存器唯一的相对地址表示。
6.如权利要求5所述的盘驱动器,特征在于:装置信息寄存器保存的装置信息包括公共偏移地址。
7.如权利要求1所述的盘驱动器,特征在于:向寄存器堆中的每个寄存器分配地址,该地址由公共偏移地址和寄存器堆中所述每个寄存器唯一的相对地址表示。
8.如权利要求1所述的盘驱动器,特征在于寄存器堆包括:
状态寄存器,所述状态寄存器保存包括错误位的命令执行结果,所述错误位指示是否发生错误;以及
错误寄存器,所述错误寄存器保存指示错误细节的错误信息。
9.一种把盘驱动器连接到配备有存储接口电路的主机系统的接口连接方法,该存储接口电路还作为用于把主机系统连接到符合串行接口的多个输入/输出装置之一的串行接口电路,该多个输入/输出装置中包括所述盘驱动器,所述盘驱动器包括符合并行接口的盘控制单元、以及通过并行接口连接到盘控制单元的输入/输出接口电路,所述输入/输出接口电路可连接到主机系统的存储接口电路,所述输入/输出接口电路利用并行接口协议与盘控制单元通信,并且利用串行接口协议与主机系统的存储接口电路通信,所述接口连接方法的特征在于包括:
当包含在主机系统中的主控制器通过存储接口电路访问盘驱动器时,通过该主控制器产生符合并行接口的一系列寄存器控制命令;
主机系统的存储接口电路根据串行接口协议,向盘驱动器传送所述一系列的寄存器控制命令;
当传送给盘驱动器的一系列寄存器控制命令根据并行接口协议通过盘驱动器的输入/输出接口电路而发送给盘控制单元时,根据传送的一系列寄存器控制命令而在用于保存命令代码和参数的寄存器堆上执行寄存器操作,寄存器操作包括在寄存器堆中写命令代码和参数,由所述一系列的寄存器控制命令指定命令代码和参数,命令代码将在盘驱动器中执行,参数则是执行命令代码所必需的,所述寄存器堆包括多个寄存器,该主机系统可访问寄存器堆中的多个寄存器;以及
使用所述参数来执行命令代码,其中,命令代码和参数保存在寄存器堆中。
10.如权利要求9所述的接口连接方法,特征在于:盘驱动器包括保存对盘驱动器唯一的装置信息的装置信息寄存器,
接口连接方法进一步包括:
由主机系统的主控制器从装置信息寄存器读取装置信息;以及
基于主机系统的主控制器读取的装置信息而确定连接到主机系统的装置类型,所述确定包括当装置信息指示连接到主机系统的装置是盘驱动器时识别盘驱动器符合并行接口。
11.如权利要求10所述的接口连接方法,特征在于:向寄存器堆中的每个寄存器分配地址,该地址由公共偏移地址和寄存器堆中所述每个寄存器唯一的相对地址表示。
12.如权利要求11所述的接口连接方法,特征在于:装置信息寄存器保存的装置信息包括公共偏移地址。
CNB2005100684825A 2004-05-18 2005-04-28 用存储接口电路连到主机系统的盘驱动器及接口连接方法 Expired - Fee Related CN100356307C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004147876A JP2005332438A (ja) 2004-05-18 2004-05-18 ディスク記憶装置及び同装置をホストと接続するためのインタフェース接続方法
JP2004147876 2004-05-18

Publications (2)

Publication Number Publication Date
CN1700163A CN1700163A (zh) 2005-11-23
CN100356307C true CN100356307C (zh) 2007-12-19

Family

ID=35376561

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100684825A Expired - Fee Related CN100356307C (zh) 2004-05-18 2005-04-28 用存储接口电路连到主机系统的盘驱动器及接口连接方法

Country Status (4)

Country Link
US (1) US20050262297A1 (zh)
JP (1) JP2005332438A (zh)
CN (1) CN100356307C (zh)
SG (1) SG117535A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7899986B2 (en) * 2004-11-10 2011-03-01 Nokia Corporation Method and system for controlling a hard disk drive using a multimediacard physical interface
US8225022B2 (en) 2006-08-08 2012-07-17 Dataram, Inc. Methods for eliminating intermediate bussing and bridging requirements between a solid state memory device with PCI controller and a main system bus
KR101555210B1 (ko) * 2009-01-30 2015-09-23 삼성전자주식회사 휴대용 단말기에서 내장 대용량 메모리를 이용한 컨텐츠 다운로드 방법 및 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191930A (ja) * 1993-12-27 1995-07-28 Nec Corp ディスク装置のインタフェース及びその制御方法
US20020186964A1 (en) * 2001-06-08 2002-12-12 Imation Corp. Data storage drive interfaces for digital image systems
US6687775B1 (en) * 2000-11-28 2004-02-03 Texas Instruments Incorporated Dual purpose serial/parallel data transfer device for peripheral storage device
WO2004023268A2 (en) * 2002-09-06 2004-03-18 Silicon Image, Inc. Method and apparatus for double data rate serial ata phy interface
US20040083325A1 (en) * 2002-10-24 2004-04-29 Josef Rabinovitz Large array of mass data storage devices connected to a computer by a serial link
CN1494676A (zh) * 2000-12-29 2004-05-05 英特尔公司 用于在盘驱动器接口之间共享中断的方法和设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5321817A (en) * 1992-01-22 1994-06-14 Innoventions Inc. Computer data interface through a removable magnetic storage unit
US6480932B1 (en) * 2001-01-31 2002-11-12 Western Digital Technologies, Inc. Computer system having a host computer coupled to a disk drive with a drive-selected-application partition for storing data for execution by the host computer in response to drive-determined conditions
TW560678U (en) * 2001-06-15 2003-11-01 Accusys Inc Floppy disk array device having large storage capacity
US7349466B2 (en) * 2002-03-28 2008-03-25 Seagate Technology Llc Parallel interface transmission using a single multi-frequency composite signal
US6735650B1 (en) * 2002-08-30 2004-05-11 Western Digital Technologies, Inc. Disk drive and method for data transfer initiated by nonstandard disk-drive commands on a serial ATA interface that only supports standard ATA disk-drive commands

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191930A (ja) * 1993-12-27 1995-07-28 Nec Corp ディスク装置のインタフェース及びその制御方法
US6687775B1 (en) * 2000-11-28 2004-02-03 Texas Instruments Incorporated Dual purpose serial/parallel data transfer device for peripheral storage device
CN1494676A (zh) * 2000-12-29 2004-05-05 英特尔公司 用于在盘驱动器接口之间共享中断的方法和设备
US20020186964A1 (en) * 2001-06-08 2002-12-12 Imation Corp. Data storage drive interfaces for digital image systems
WO2004023268A2 (en) * 2002-09-06 2004-03-18 Silicon Image, Inc. Method and apparatus for double data rate serial ata phy interface
US20040083325A1 (en) * 2002-10-24 2004-04-29 Josef Rabinovitz Large array of mass data storage devices connected to a computer by a serial link

Also Published As

Publication number Publication date
SG117535A1 (en) 2005-12-29
JP2005332438A (ja) 2005-12-02
CN1700163A (zh) 2005-11-23
US20050262297A1 (en) 2005-11-24

Similar Documents

Publication Publication Date Title
CN101136859B (zh) 控制光纤信道通信中的信息单元的方法和系统
US7200698B1 (en) Disk drive and method for data transfer initiated by optional disk-drive commands on a serial interface that only supports standard disk-drive commands
US7007127B2 (en) Method and related apparatus for controlling transmission interface between an external device and a computer system
CN1282066C (zh) 计算机系统中用于访问磁带设备的方法和系统
US7568053B2 (en) USB composite device, USB communication system, and USB communication method
US7496691B2 (en) Standard ATA queuing automation in serial ATA interface for creating a frame information structure (FIS) corresponding to command from transport layer
EP2030105A1 (en) Method for communication with a multi-function memory card
CN102411547A (zh) 通用存储总线适配器
US20050262390A1 (en) Method and apparatus for constructing redundant array of independent disks system using disk drives
US20120185631A1 (en) Operation method for a computer system
CN100356307C (zh) 用存储接口电路连到主机系统的盘驱动器及接口连接方法
US20030045236A1 (en) Wireless peripheral with inbuilt driver
US6917990B2 (en) Method and structure for read prefetch in a storage complex architecture
CN114691023A (zh) 读写设备的读写操作方法、读写设备及可读存储介质
CN101894052B (zh) 一种升级方法、系统和控制器
CN102207921B (zh) 基于uasp协议实现多端口储存媒体的系统及其方法
CN101561760B (zh) 接口卡固件升级方法
US20060294271A1 (en) Interface device and storage device
US7721007B2 (en) Methods of transmitting non-SCSI commands involving loading opcode in command descriptor block (CDB) bytes and non-SCSI commands into remaining CDB bytes
KR20100073520A (ko) 메인 보드와 확장 보드간 spi 통신 시스템 및 방법
JP3276069B2 (ja) ディスク制御装置
EP1077400B1 (en) Transparent status interface
US8656059B2 (en) Methods for exchanging administrative information through a communication interface with limited administrative information exchange features
US5619481A (en) Information recording/reproducing method
US8307145B2 (en) Method and system for connecting multiple IDE devices to a USB apparatus using a single USB-to-IDE adapter

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
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee