CN102436430A - 存储设备、主机控制器和存储系统 - Google Patents
存储设备、主机控制器和存储系统 Download PDFInfo
- Publication number
- CN102436430A CN102436430A CN2011100663148A CN201110066314A CN102436430A CN 102436430 A CN102436430 A CN 102436430A CN 2011100663148 A CN2011100663148 A CN 2011100663148A CN 201110066314 A CN201110066314 A CN 201110066314A CN 102436430 A CN102436430 A CN 102436430A
- Authority
- CN
- China
- Prior art keywords
- order
- equipment
- controller
- console controller
- response
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/188—Time-out mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/189—Transmission or retransmission of more than one copy of a message
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L2001/125—Arrangements for preventing errors in the return channel
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Bus Control (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Communication Control (AREA)
Abstract
本发明提供了一种存储设备、主机控制器和存储系统。根据一个实施例,主机控制器具有命令生成器和检测器。所述命令生成器生成在自变量中具有重传标志的命令,并且向存储设备传送所生成的命令。如果在限定时间内无法识别来自所述存储设备的响应,则所述检测器检测到超时。当传送初始命令时,所述主机控制器对所述重传标志进行清零并且传送所述命令。如果所述检测器检测到超时,则所述主机控制器设置所述重传标志,并且向所述设备重传与所述初始命令相同的命令。如果接收到与所述初始命令或重传的命令相对应的正常响应,则所述主机控制器识别出所述命令被正确地执行。
Description
相关申请的交叉引用
本申请基于并且要求2010年9月29日提交的申请号为No.2010-219780的日本专利申请的优先权;通过引用将该申请的全部内容合并于此。
技术领域
此处描述的实施例一般涉及被应用于例如SDTM卡并且具有高级直接存储访问(ADMA)的存储系统。
背景技术
最近,诸如SD存储卡的SD卡被广泛用于作为主机装置的例如蜂窝电话和数字照相机中。这种SD存储卡通过主机控制器被连接到主机装置,并且主机控制器控制主机装置与SD存储卡之间的数据传输。
作为使用总线接口的主机-设备通信方法,存在一种方法,通过该方法,主机向设备传送命令,并且通过接收来自该设备的响应来检查该命令是否被该设备接受。也有可能通过使用特定的读/写命令来实现数据传输,或者使用错误检测,该错误检测使用循环冗余校验(CRC)码来检测由噪声之类引起的传输错误。
即使当噪声发生在相同环境中并且由噪声引起的比特错误的发生概率保持不变时,比特错误发生的时间间隔也随着总线传输速率的增加而缩短。因此,预测到比特错误以例如每几秒钟至几分钟一比特的比率发生。这使得在高速总线中支持协议的重传功能是重要的。
如果在使用常规命令协议时通过经由CRC码等进行校验发生了一定错误(包括比特错误)时,主机必须通过中止命令来临时停止传输并且重试命令。这中断了数据传输并且降低了传输效率。尤其是像这样由噪声引起的中断发生在使用硬件的直接存储器访问(DMA)传输期间时,由驱动器进行处理是必要的,并且DMA的效果有所降低。
在使用高速总线的数据传输中由于噪声之类而发生的传输错误引起了相同的问题;如果通过CRC码等进行校验,在数据传输期间由于噪声而发生了比特错误,则主机必须中断数据传输一次,然后重试该数据传输。这种开销在高速总线中是无法忽略的。
发明内容
该实施例提供了一种存储系统、一种主机控制器,以及一种能够(甚至当错误发生在命令响应序列中时)通过防止中断数据传输来增加数据传输效率的存储系统。
一般地,根据一个实施例,主机控制器包括命令生成器和检测器。所述命令生成器生成在自变量中具有重传标志的命令,并且将所生成的命令传送到存储设备。如果在限定的时间内无法识别来自所述存储设备的响应,则所述检测器检测到超时。当传送初始命令时,所述主机控制器对所述重传标志进行清零(clear)并且传送所述命令。如果所述检测器检测到超时,则所述主机控制器设置所述重传标志,并且向所述设备重传与所述初始命令相同的命令。如果接收到与所述初始命令或重传的命令相对应的正常响应,则所述主机控制器识别出所述命令被正确地执行。
本发明的实施例可以实现一种存储设备、一种主机控制器以及一种能够甚至当在命令响应序列中发生错误时通过防止中断数据传输来增加数据传输效率的存储系统。
附图说明
图1是示意性地示出了根据实施例的存储系统的框图;
图2是示意性地示出了系统存储器和存储卡的存储映射的视图;
图3是示出了根据实施例的描述符的结构的视图;
图4是示意性地示出了图1所示的ADMA的框图;
图5A是示意性地示出了命令分组的格式的视图,并且图5B是示意性地示出了响应分组的格式的视图;
图6是示出了主机控制器的操作流程的流程图;以及
图7是示出了设备的操作流程的流程图。
具体实施方式
下面将参照附图解释实施例。
图1示意性地示出了根据该实施例的存储系统。
在该实施例中,命令的自变量具有重传标志。该实施例具有的流程是:如果响应于初始命令而发生了错误,则主机控制器设置重传标志,并且重传与初始命令相同的命令。因此,即使当因为噪声在数据传输期间发生了错误时,也有可能防止数据传输的中断,并且防止数据传输效率的降低。
图1所示的系统控制器11被安装在诸如蜂窝电话这样的主机装置中,并且控制与主机装置的CPU 12、系统存储器13和SD主机控制器14的接口。
系统存储器13存储了主机驱动器21、描述符表格22和数据23。操作系统(OS)保证了在系统存储器13上存储主机驱动器21、描述符表格22和数据23所必要的区域。
主机驱动器21是OS唯一的驱动器,其被提供用于例如SD主机控制器14,并且由CPU 12来执行。主机驱动器21在执行ADMA(随后予以描述)之前生成描述符表格22。描述符表格22是用于在系统存储器13与SD卡之间进行数据传输所必要的信息列表。描述符表格22的结构随后将予以描述。
SD主机控制器14具有以下功能:通过使用SD命令,在系统存储器13与SD卡之间双向传输数据。SD主机控制器14主要包括系统总线接口(I/F)电路31、存储卡I/F电路32、包括多个寄存器的寄存器组33、ADMA34和计时器35。
系统总线I/F电路31经由系统总线被连接到系统控制器11。存储卡I/F电路32可经由SD总线接口(未示出)而连接到SD卡(诸如SD存储卡15和SDIO卡16)。SD存储卡15和SDIO卡16被设置成由从SD主机控制器14提供的命令来控制,并且响应于所接收到的命令,在预设的限定时间内向SD主机控制器14返回响应。SD存储卡15包括CPU 15a、RAM 15b、ROM 15c、缓冲器(BUF)15d、接口(I/F)15e、NAND存储器的接口(NI/F)15f,以及NAND存储器(NAND)15g。CPU 15a由在自变量中具有重传标志的命令来控制,并且响应于所接收到的命令,在限定时间内传送响应。CPU 15a还检测比特错误。
SD主机控制器14的寄存器组33被分类为多个单元(未示出),诸如SD命令生成单元、响应单元、缓冲器数据端口单元、主机控制单元、中断控制单元和ADMA单元。用于发出SD命令所必要的信息(诸如命令编号、命令模式和自变量)以及用于传输数据所必要的信息(诸如块长度和块计数)被设置在寄存器组33的SD命令生成单元中。当这些信息段被设置时,SD命令生成单元向SD卡发出命令。寄存器组33中的响应单元接收从SD卡提供的响应于该命令的响应。
ADMA 34是用于在SD卡和系统存储器13之间传输数据而没有CPU12的任何干预的电路。ADMA 34根据系统存储器13上的描述符表格22中所描述的内容来执行数据传输。
计时器35检测超时错误。例如,如果自发出命令以来在经过了预设的限定时间或预设的时钟数之内未能接收到任何响应,则计时器35检测到超时错误。当检测到其重传标志被设置成“0”的命令的响应超时错误时,并不通知主机CPU 12,但是SD主机控制器14发出其重传标志被设置成“1”的相同命令。当检测到其重传标志被设置成“1”的命令的响应超时错误时,通过中断来通知主机CPU 12,并且由主机驱动器来进行处理。即使在检测到其重传标志被设置成“0”的命令的响应超时错误时,也有可能通过主机驱动器来重传该命令。然而,性能是下降的。在重传命令中,当再次检测到响应超时错误时,传输被中断并且由主机驱动器来执行错误处理。
图2示出了SD物理地址与系统存储器13的页面调度管理(pagingmanagement)之间的关系的例子。通过针对每个小区域(例如4k字节区域)的页面调度来管理系统存储器13。通过使用由主机CPU 12管理的页面调度功能,由主机CPU 12执行的应用通过逻辑地址来访问系统存储器13。因此,如通过逻辑地址系统存储映射所指示的,数据明显地被安排在连续地址区域中。然而,系统存储器13中实际记录数据的位置是任意的,并且如物理地址系统存储映射所指示的那样被分片。通过地址和数据长度来管理这些数据,并且数据长度是可变的。而且,系统存储器13中所存储的数据的逻辑地址和物理地址之间的关系由页表(未示出)来管理。
另一方面,针对具有例如512字节到几兆字节并且完全独立于系统存储器13的每个页面(每个块)来管理SD存储卡13中所存储的数据。因此,当系统存储器13上的数据要被存储在SD存储卡15中时,如SD物理地址存储映射所指示的,以不同于系统存储器13上的数据的尺寸来存储系统存储器13上的数据。SD存储卡15中的数据被保存在为每个命令指定的存储区域中,并且具有由该命令指定的地址,而且数据长度是可变的。
DMA传输通过物理地址而直接访问系统存储器13。相应地,可以通过形成作为在系统存储器13上的传输列表的描述符来执行DMA。
图3示出了根据该实施例的描述符。该描述符被形成在系统存储器13的描述符表格22中。
该实施例的描述符扩展了常规描述符,并具有层次结构。当使用该实施例的描述符时,系统存储器13与SD存储卡15之间通过ADMA所实现的数据传输完全可由硬件来执行。这消除了对于在数据传输期间中断主机CPU 12的需要。尽管对存储器写入错误等的处理请求是通过中断来通知的,但却不会产生问题,因为其发生的概率非常低。
如图3所示,第一描述符(完整描述符(integrated descriptor))是针对多个第二描述符(局部描述符(partial descriptor))的一组指针。
每个第二描述符(局部描述符)是一对第三描述符(SD命令描述符)和第四描述符(系统存储器描述符)。
由用于发出SD命令的信息来形成第三描述符的内容。也就是说,由例如命令编号、命令模式、自变量以及块长度和块计数作为数据传输所必要的信息来形成第三描述符的内容。命令模式指示例如读/写。通过在SD主机控制器14的寄存器组33的SD命令生成单元中写入第三描述符,发出一个SD命令。
第四描述符(系统存储器描述符)的内容是由指示系统存储器13上的每个数据的位置的地址以及指示数据长度的长度来形成的,并且指示了一组多个分片数据。
第一到第四描述符分别具有属性信息Att。每个属性信息Att含有例如用于标识描述符的类型的信息,以及指示了该描述符的结束位置的结束比特。
要注意,第三描述符具有不同于其它描述符的格式,因此可以根据至少第一命令编号来形成属性信息Att。
图4示出了ADMA 34的布置的概况。ADMA 34包括系统地址控制器34a、数据缓冲器34b、SD命令控制器34c和缓冲存储器34d。
系统地址控制器34a管理系统存储器13中的地址。更具体地,系统地址控制器34a管理系统存储器13中所存储的第一到第四描述符的加载。也就是说,系统地址控制器34a在初始加载第一描述符(完整描述符)的起始地址的内容,即,来自系统存储器13的第二描述符的地址,并且根据该地址来加载第二描述符。然后,系统地址控制器34a将SD命令描述符作为形成第二描述符的第三描述符而传输到SD命令控制器34c。此外,系统地址控制器34a顺序地加载形成第二描述符的在第四描述符中所描述的数据的地址和数据长度。根据所加载的地址和数据长度,系统地址控制器34a从系统存储器13读出数据,并且在实现存储器写入时向数据缓冲器34b传输该数据。在实现存储器读取时,系统地址控制器34a将数据从数据缓冲器34b传输到系统存储器13。
为了执行这些操作,系统地址控制器34a包括多个寄存器34a_1到34a_4,以及用于从这些寄存器选择输出信号的多路复用器(MPX)34a_5,以便保存第一描述符(完整描述符)的起始地址、到第二描述符(局部描述符)的指针,以及数据的地址和数据长度。
SD命令控制器34c顺序地生成寄存器地址,用于在SD命令生成单元中设置值,并且在主机控制器14的寄存器组33的SD命令生成单元中顺序地设置在SD命令描述符中所含的作为第三描述符的寄存器设置信息。当寄存器的设置完成时,寄存器组33的SD命令生成单元生成SD命令。
在存储器写入中,缓冲存储器34d将数据加载到由系统地址控制器34a所指定的系统存储器13中,并且临时保存所提供的数据。同步于所发出的SD命令,数据缓冲器34b中所保存的数据被传输到SD存储卡15。
在存储器读取中,同步于所发出的SD命令,缓冲存储器34d临时保存从作为存储设备的SD存储卡15加载的数据,并将该数据传输到系统存储器13上由系统地址控制器34a所指定的位置。
通过这种方式,缓冲存储器34b在系统存储器13(其操作于不同频率上)与存储卡15或SDIO卡16之间传递数据。
图5A和图5B示出了从SD主机控制器14发出的命令的例子,以及从SD存储卡15输出的响应的例子。图5A示出了命令示例,而图5B示出了响应示例。
图5A中示出的命令分组包括命令编号51、自变量52、通过该自变量所确定的附加信息53,以及诸如CRC这样的错误检测信息54。一比特重传标志52a,例如,被分配为该自变量的一部分。当重传标志为“0”时,它指示初始生成的命令。当重传标记为“1”时,它指示重传的命令,所述重传的命令是与初始生成的命令相同的命令。
图5B所示的响应分组包括错误状态信息55、附加信息56,以及诸如CRC这样的错误检测信息57。错误状态信息55是当接收到响应时的错误信息。尽管错误也发生在未能接收到响应时,然而该错误被SD主机控制器14的计时器35检测为超时错误。计时器通过特定时间或特定时钟计数来控制对超时的检测。
下面将解释上述配置中SD主机控制器14和SD存储卡15的命令和响应。
图6示出了SD主机控制器14的命令发布流程。
当初始发出命令时,SD主机控制器14在自变量52中的重传标志52a被清零的状态下(即,在其中设置了“0”的状态下)生成该命令,并且将该命令传送到例如作为设备的SD存储卡15(S11)。
在生成该命令之后,SD主机控制器14等待来自SD存储卡15的响应(S12)。也就是说,在生成该命令之后,SD主机控制器14等待响应,并且如果在计时器35中预设的限定时间内未能接收到任何响应,则确定是否发生了超时(S12)。
通过使得响应超时短于数据超时,可以减少当未能接收到任何响应时的损失时间。
如果在超时之前接收到响应(S13),则SD主机控制器14基于该响应中所含的错误状态信息55来确定是否存在错误(S14)。如果没有错误,则SD主机控制器14确定操作是正常的。因此,可以(在例如该命令是数据传输命令时)开始数据传输。
在步骤S14中,如果响应中所含的错误状态信息55指示了错误,则主机将其解释为命令传输错误,并且确定命令发布计时或者命令自变量是错误的。该错误不是由噪声引起的错误,并且需要主机程序的纠正。
另一方面,如果在步骤S12中检测到响应的超时,则SD主机控制器14设置“1”作为该命令的自变量52中的重传标志52a,并且发出与前一命令相同的命令(S15)。
当重传该命令时,SD主机控制器14再次等待来自SD存储卡15的响应(S16)。如果可以在计时器35中所设置的限定时间内接收到响应(S17),则SD主机控制器14基于错误状态信息55来确定是否存在错误(S18)。如果没有错误,则SD主机控制器14确定操作是正常的。
如果在步骤S16中检测到响应的超时,则SD主机控制器14将此视为命令传输错误。
如上所述,如果诸如SD存储卡15这样的设备无法识别初始发出的命令或者SD主机控制器14因为噪声之类而无法接收到响应,则有可能设置重传标志52a并且重新发出与前一命令具有相同内容的命令。这使得在诸如SD存储卡15这样的设备无法识别命令或者SD主机控制器14因为噪声之类而无法接收到响应时有可能免除错误。
图7示出了设备的命令处理流程的例子。
当接收到命令时(S21),诸如SD存储卡15这样的设备确定该命令中是否发生了CRC错误(S22)。如果已经发生了CRC错误,则无法指定命令编号,所以设备将该命令作为无法识别的命令而忽略,并且不返回响应。因此,在该情况下,SD主机控制器14的计时器35在经过了限定时间之后输出超时错误。
另一方面,如果确定CRC是正常的,则该设备检查该命令的自变量52中所含的重传标志52a的状态(S23)。也就是说,该设备确定重传标志是否为“1”。当SD主机控制器14初始发出命令时,重传标志被重置为“0”。
如果重传标志为“0”,则该过程进展到正常的命令处理流程,并且该设备确定所接收到的命令是否是可执行的(S26)。也就是说,命令是否可执行是基于命令编号和设备的状态来确定的。如果确定命令是不可执行的,则该设备终止该过程而不向SD主机控制器14返回任何响应。在这种情况下,SD主机控制器14甚至在经过了计时器35中所预设的时间之后也无法从该设备接收到任何响应,因此计时器35输出超时错误。
另一方面,如果在步骤S26中确定命令是可执行的,则该设备确定自变量是否正确(S27)。如果确定自变量是正确的,则该设备向SD主机控制器14返回正常响应(S28),并执行命令(S29)。
如果在步骤S27中自变量不正确,则该设备向SD主机控制器14返回错误响应(S30)。
然而,当需要长时间来检查自变量是否正确时,也有可能返回正常响应而不等待检查结果。当通过错误的自变量返回正常响应时,有可能因为发生了另一错误因素(诸如存储器访问错误)而告知自变量中的错误。自变量中的错误不是该实施例中命令重传的对象,主机驱动器应当设置正确的自变量。
此外,如果在步骤S23中重传标志为“1”,这表明设备无法识别初始(先前紧接的)命令,或者设备返回了对初始命令的响应但SD主机控制器14无法正确地接收到该响应。如果重传标志为“1”,则该设备检查命令是否正被执行(S24)。也就是说,如果在步骤S28中该设备返回了对初始命令的响应但SD主机控制器14无法正确地接收到该响应,则有可能初始命令正被执行,因为它被正确地识别。因此,检查设备是否正在执行初始命令。如果命令正被执行,则该设备继续正被执行的处理,并向SD控制器14返回正常响应(S25)。
如果在步骤S24中确定设备没有在执行命令,则控制进展到步骤S26,并且上述操作被执行。
如果对重传的命令检测到响应错误(当自变量不恰当时)或响应超时,则SD主机控制器14向CPU 12生成中断,并通知它错误的发生。
在上面提到的实施例中,重传标志52a是在命令的自变量52中形成的。如果响应于初始命令在设备中发生错误,则SD主机控制器14在重传标志中设置“1”,并且重传与初始命令相同的命令。如果重传标志为“0”,或者如果重传标志为“1”并且没有在执行对应于初始命令的处理,则该设备确定命令处理是否是可执行的。如果命令处理是可执行的,则该设备执行命令处理。如上所述,使用了可发出两次相同命令的流程。因此,即使在设备无法识别初始命令或者SD主机控制器14无法接收到来自设备的任何响应时,也可以通过重传该命令来消除错误。这使得有可能避免CPU 12的中断,并且提高数据传输效率,因为不需要中断数据传输。
另外,设备可以通过检查重传标志的内容来确定所传送的命令是初始命令还是重传的命令。此外,如果命令是重传的命令,则设备确定是否正在根据初始命令来执行处理,并且如果正在执行处理,则继续操作。这使得有可能通过防止中断数据传输来防止降低数据传输效率,并且防止重新执行该命令,从而提高命令处理速度。相应地,即使在执行ADMA 34期间因为噪声而发生了比特错误时,也可以在没有中断的情况下执行对ADMA 34的操作。
当ADMA 34正在以例如约3Gbps来执行高速数据传输时,可能以每几秒钟一比特的比率发生比特错误。然而,该实施例可以执行数据传输,而不被重传命令中断数据传输,由此增加数据传输速率。
同样,根据该实施例,只需要在命令重传中重传相同的命令。这促进了通过硬件来执行操作,并且允许ADMA在不使用任何主机驱动器的情况下重传命令。
要注意,在以上说明中,重传标志具有一个比特,但实施例不限于此。例如,通过由计数器或多个比特来形成重传标志,可以多次重传命令。
此外,已在上述实施例中解释了使用ADMA的数据传输。然而,实施例不限于此,也可以使用另一种传输方法。在该情况中,如果在命令的传输期间发生错误,则仅仅有必要重传与上述相同的命令,并且通过众所周知的方法来重传数据。
尽管已描述了特定实施例,但是这些实施例仅通过示例方式予以呈现,而不旨在限制本发明的范围。事实上,此处描述的新颖的实施例可以通过多种其它形式来体现;此外,在不背离本发明精神的情况下,可以在此处描述的实施例的形式上作出各种省略、替换和变化。所附权利要求及其等同物旨在涵盖落入本发明范围和精神内的这种形式或修改。
Claims (12)
1.一种设备,其包括:
传输单元,其由在自变量中具有重传标志的命令来控制,并且在限定时间内传送对所接收到的命令的响应;以及
错误检测单元,其检测比特错误,
其中,如果所述命令是不可识别或不可执行的,则所述设备通过不返回响应来指示没有执行所述命令;
如果所述命令是可识别的、所述命令的自变量中所含的重传标志被设置并且所述命令正在被执行,则所述设备通过返回正常响应来指示继续进行正被执行的处理;
如果所述命令是可识别的、所述重传标志被设置并且所述命令不是正在被执行,或者如果所述命令是可识别的并且所述重传标志未被设置而所述命令能够被执行,则所述设备通过返回正常响应来指示所述命令被执行;并且
如果所述命令无法被执行,则所述设备通过返回错误响应来指示所述命令无法被执行。
2.根据权利要求1所述的设备,其中,所述设备是存储设备。
3.根据权利要求1所述的设备,其中,所述设备是I/O设备。
4.一种主机控制器,其包括:
命令生成单元,其生成在自变量中具有重传标志的命令,所述命令生成单元向设备传送所生成的命令;以及
检测器,其被配置以便:如果在限定时间内无法识别来自所述设备的响应,则检测到超时,
其中,当传送初始命令时,所述主机控制器通过对所述重传标志进行清零来传送命令,如果所述检测器检测到超时,则所述主机控制器设置所述重传标志并且向所述设备重传与所述初始命令相同的命令,并且如果接收到与所述初始命令和重传的命令之一相对应的正常响应,则所述主机控制器识别出所述命令被正确地执行,并且如果所述检测器检测到与重传的命令相对应的超时,则所述主机控制器通过中断来通知CPU,所述中断指示:即使所述命令被重传,也无法执行所述命令。
5.根据权利要求4所述的主机控制器,其进一步包括:连接到系统存储器和所述设备的直接存储访问(DMA)控制器。
6.根据权利要求5所述的主机控制器,其中,所述DMA控制器包括:
连接到所述系统存储器的系统地址控制器,所述系统地址控制器接收来自所述系统存储器的描述符;
连接到所述系统地址控制器的命令控制器;以及
连接到所述系统存储器和所述设备的数据缓冲器。
7.一种系统,其包括:
主机控制器,其生成在自变量中具有重传标志的命令,并且传送所生成的命令;以及
接收来自所述主机控制器的命令的设备,如果所述命令是可识别的,则所述设备在限定时间内向所述主机控制器返回响应并执行所述命令,并且如果所述命令是不可识别或不可执行的,则所述设备通过不返回响应来指示所述命令没有被执行,
所述主机控制器进一步包括检测器,如果在限定时间内无法识别来自所述设备的响应,则所述检测器检测到超时,当传送初始命令时,所述主机控制器通过对所述重传标志进行清零来传送所述命令,如果所述检测器检测到超时,则所述主机控制器设置所述重传标志并且向所述设备重传与所述初始命令相同的命令,并且如果接收到与所述初始命令和重传的命令之一相对应的正常响应,则所述主机控制器识别出所述命令被正确地执行,并且如果所述检测器检测到与重传的命令相对应的超时,则所述主机控制器通过中断来通知CPU,所述中断指示:即使所述命令被重传,也无法执行所述命令。
8.根据权利要求7所述的系统,其中,所述重传标志包括至少一个比特。
9.根据权利要求7所述的系统,其中
所述主机控制器包括直接存储访问(DMA)控制器,并且
所述DMA控制器基于系统存储器中所存储的描述符的描述来传输数据。
10.根据权利要求9所述的系统,其中,所述DMA控制器包括:
连接到所述系统存储器的系统地址控制器,所述系统地址控制器接收来自所述系统存储器的描述符;
连接到所述系统地址控制器的命令控制器;以及
连接到所述系统存储器和所述设备的数据缓冲器。
11.根据权利要求7所述的系统,其中,所述设备是存储设备。
12.根据权利要求7所述的系统,其中,所述设备是I/O设备。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010219780 | 2010-09-29 | ||
JP219780/2010 | 2010-09-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102436430A true CN102436430A (zh) | 2012-05-02 |
CN102436430B CN102436430B (zh) | 2015-05-27 |
Family
ID=45871935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110066314.8A Expired - Fee Related CN102436430B (zh) | 2010-09-29 | 2011-03-18 | 存储设备、主机控制器和存储系统 |
Country Status (4)
Country | Link |
---|---|
US (2) | US8874989B2 (zh) |
JP (2) | JP5657459B2 (zh) |
CN (1) | CN102436430B (zh) |
TW (1) | TWI483117B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI483117B (zh) * | 2010-09-29 | 2015-05-01 | Toshiba Kk | 用於執行命令之裝置、主機控制器及用於執行命令之系統 |
US8972818B2 (en) | 2012-10-05 | 2015-03-03 | Qualcomm Incorporated | Algorithm for optimal usage of external memory tuning sequence |
JP6273972B2 (ja) * | 2014-03-31 | 2018-02-07 | 富士通株式会社 | 情報処理装置、送受信装置、及び情報処理装置の制御方法 |
US9819557B2 (en) * | 2014-12-18 | 2017-11-14 | Intel IP Corporation | Multi-rate high-speed bus with statistical aggregator |
US10437483B2 (en) * | 2015-12-17 | 2019-10-08 | Samsung Electronics Co., Ltd. | Computing system with communication mechanism and method of operation thereof |
US10990319B2 (en) * | 2018-06-18 | 2021-04-27 | Micron Technology, Inc. | Adaptive watchdog in a memory device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1206320A (zh) * | 1997-06-03 | 1999-01-27 | 诺基亚流动电话有限公司 | 解决移动台中的dcch到acc转移登录冲突 |
CN1499868A (zh) * | 2002-11-08 | 2004-05-26 | 深圳市中兴通讯股份有限公司 | 基于随路控制命令的数据下载方法 |
CN1615634A (zh) * | 2002-08-28 | 2005-05-11 | 英特尔公司 | 用于主机与调制解调器之间通信的系统和方法 |
CN1951137A (zh) * | 2004-05-07 | 2007-04-18 | 松下电器产业株式会社 | 基站装置 |
US20070263631A1 (en) * | 1999-05-21 | 2007-11-15 | Mallory Tracy D | Limited automatic repeat request protocol for frame-based communication channels |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01231128A (ja) | 1988-03-11 | 1989-09-14 | Nec Corp | 障害処理方式 |
JP2907233B2 (ja) | 1990-12-19 | 1999-06-21 | オムロン株式会社 | プログラマブルコントローラの上位リンクシステム |
JPH05314026A (ja) * | 1992-05-08 | 1993-11-26 | Nec Corp | 制御処理装置 |
JP4342629B2 (ja) | 1999-03-24 | 2009-10-14 | 株式会社東芝 | 携帯可能電子装置とファイル制御情報の記憶方法とファイル制御情報の検索方法 |
JP3607229B2 (ja) | 2001-09-28 | 2005-01-05 | 株式会社東芝 | 携帯可能電子装置及びそのチェック方法 |
JP4209743B2 (ja) * | 2003-08-08 | 2009-01-14 | 三菱電機株式会社 | 電子制御装置 |
JP4198741B2 (ja) * | 2005-01-28 | 2008-12-17 | シャープ株式会社 | 通信機器、通信システム、通信方法、通信プログラム、通信回路 |
JP4768283B2 (ja) * | 2005-02-15 | 2011-09-07 | パナソニック株式会社 | 再送制御方法、無線通信システム、基地局および移動局 |
JP4349349B2 (ja) * | 2005-08-30 | 2009-10-21 | ソニー株式会社 | データ送受信システム、送信装置、受信装置及びデータ送受信方法 |
JP2007334555A (ja) | 2006-06-14 | 2007-12-27 | Ricoh Co Ltd | データ転送装置と電子装置 |
JP5193822B2 (ja) | 2008-11-19 | 2013-05-08 | 株式会社東芝 | 追記型メモリデバイス |
JP2010198138A (ja) * | 2009-02-23 | 2010-09-09 | Ricoh Co Ltd | データ転送装置、データ転送制御方法、データ転送制御プログラム及び記録媒体 |
TWI483117B (zh) | 2010-09-29 | 2015-05-01 | Toshiba Kk | 用於執行命令之裝置、主機控制器及用於執行命令之系統 |
-
2011
- 2011-03-11 TW TW100108391A patent/TWI483117B/zh not_active IP Right Cessation
- 2011-03-17 US US13/050,565 patent/US8874989B2/en not_active Expired - Fee Related
- 2011-03-18 CN CN201110066314.8A patent/CN102436430B/zh not_active Expired - Fee Related
- 2011-04-08 JP JP2011086524A patent/JP5657459B2/ja not_active Expired - Fee Related
-
2014
- 2014-10-08 US US14/509,868 patent/US9473273B2/en not_active Expired - Fee Related
- 2014-11-20 JP JP2014235935A patent/JP5932947B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1206320A (zh) * | 1997-06-03 | 1999-01-27 | 诺基亚流动电话有限公司 | 解决移动台中的dcch到acc转移登录冲突 |
US20070263631A1 (en) * | 1999-05-21 | 2007-11-15 | Mallory Tracy D | Limited automatic repeat request protocol for frame-based communication channels |
CN1615634A (zh) * | 2002-08-28 | 2005-05-11 | 英特尔公司 | 用于主机与调制解调器之间通信的系统和方法 |
CN1499868A (zh) * | 2002-11-08 | 2004-05-26 | 深圳市中兴通讯股份有限公司 | 基于随路控制命令的数据下载方法 |
CN1951137A (zh) * | 2004-05-07 | 2007-04-18 | 松下电器产业株式会社 | 基站装置 |
Also Published As
Publication number | Publication date |
---|---|
JP5657459B2 (ja) | 2015-01-21 |
US9473273B2 (en) | 2016-10-18 |
JP2012094107A (ja) | 2012-05-17 |
US20120079338A1 (en) | 2012-03-29 |
TW201214127A (en) | 2012-04-01 |
US8874989B2 (en) | 2014-10-28 |
JP5932947B2 (ja) | 2016-06-08 |
JP2015043237A (ja) | 2015-03-05 |
US20150033090A1 (en) | 2015-01-29 |
CN102436430B (zh) | 2015-05-27 |
TWI483117B (zh) | 2015-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7024591B2 (en) | Mechanism for enabling enhanced fibre channel error recovery across redundant paths using SCSI level commands | |
US6874052B1 (en) | Expansion bridge apparatus and method for an I2C bus | |
US9473273B2 (en) | Memory system capable of increasing data transfer efficiency | |
CN104699576B (zh) | 串行通信测试装置、包括该装置的系统及其方法 | |
CN111930676A (zh) | 多处理器间的通信方法、装置、系统及存储介质 | |
JP3996928B2 (ja) | 破損データを処理する方法 | |
US8255601B2 (en) | Transmitting system, apparatus, and method | |
US20150006773A1 (en) | Control device and image forming apparatus | |
RU2541106C2 (ru) | Облегчение операций ввода-вывода в режиме передачи между канальной подсистемой и устройствами ввода-вывода | |
US20050251595A1 (en) | Failed link training | |
JP5966243B2 (ja) | ストレージ装置及びストレージ装置の制御方法 | |
US20050152386A1 (en) | Successful transactions | |
US20050152268A1 (en) | Link failures | |
JP5145860B2 (ja) | メモリ二重化システム及び情報処理装置 | |
JP3683831B2 (ja) | データ処理システムにおけるチャネル回復のためのチェックポイント指定方法、装置およびプログラム記録媒体 | |
JP2002358177A (ja) | 画像形成装置、該装置のシリアル通信方法および該方法をコンピュータに実行させるプログラム並びに該プログラムを記録した記録媒体 | |
JP2015041205A (ja) | 通信制御装置及び画像形成装置 | |
JP5278117B2 (ja) | バッファ縮退方式、装置及び方法 | |
JP4239482B2 (ja) | データ転送システム、lsi及びデータ転送方法 | |
JP6107499B2 (ja) | 通信制御装置及び画像形成装置 | |
JP2023145216A (ja) | 通信制御装置および通信方法 | |
CN113364564A (zh) | 数据传输方法、微处理器、数据传输设备及存储介质 | |
JP2005277552A (ja) | バスリトライ制御方式及びデータ通信装置 | |
JP2005018317A (ja) | トランザクション障害処理システム | |
JPH06175947A (ja) | Dma機能を備えたデータ処理装置 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20170804 Address after: Tokyo, Japan, Japan Patentee after: Toshiba Storage Corporation Address before: Tokyo, Japan, Japan Patentee before: Toshiba Corporation |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150527 Termination date: 20190318 |