CN102231141B - 一种数据读、写方法及系统 - Google Patents

一种数据读、写方法及系统 Download PDF

Info

Publication number
CN102231141B
CN102231141B CN201110167199.3A CN201110167199A CN102231141B CN 102231141 B CN102231141 B CN 102231141B CN 201110167199 A CN201110167199 A CN 201110167199A CN 102231141 B CN102231141 B CN 102231141B
Authority
CN
China
Prior art keywords
reading
sent
frame
block
data
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.)
Active
Application number
CN201110167199.3A
Other languages
English (en)
Other versions
CN102231141A (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.)
Shenzhen ZTE Microelectronics Technology Co Ltd
Original Assignee
Shenzhen ZTE Microelectronics Technology Co Ltd
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 Shenzhen ZTE Microelectronics Technology Co Ltd filed Critical Shenzhen ZTE Microelectronics Technology Co Ltd
Priority to CN201110167199.3A priority Critical patent/CN102231141B/zh
Publication of CN102231141A publication Critical patent/CN102231141A/zh
Priority to PCT/CN2012/075146 priority patent/WO2012174953A1/zh
Application granted granted Critical
Publication of CN102231141B publication Critical patent/CN102231141B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus

Abstract

本发明公开了一种数据读、写方法及系统,用于实现数据的分布式存储,节约资源。所述数据读、写方法为:主处理装置将处理后的读、写指令通过串行链路发送给存储控制装置;所述存储控制装置根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置,或根据接收的写指令将相应写数据写入本地。

Description

一种数据读、写方法及系统
技术领域
本发明涉及通信领域,特别涉及一种数据读、写方法及系统。
背景技术
随着因特网的高速发展,IP所承载的内容越来越广泛,从电子邮件,流媒体,交互式语音到互动电视,在线游戏等,这对传统路由器的存储转发性能要求越来越高。目前主流路由器存储主要采用DDR2,DDR3技术,它具有带宽高,并行性强,容量大等优点,目前主流的DDR(双倍速率同步动态随机存储器)颗粒基本在1Gb~8Gb之间,如果采用多片并联,则带宽可以达到10Gb/s~200Gb/s。但DDR技术采用并行传输的方式进行存储,占用了较多的管脚资源。
为了提高路由器存储容量及带宽,适应未来网络存储的需求,现有技术中提出了基于多层消息协议的高速串行分布式存储方法,该方法结合日益完善的串行高速接口,采用多层消息协议,保证在分布式条件下可达到较高的存储性能。例如一种现有技术对IC芯片内部使用SERDES(并串行与串并行转换器)串行连接的物理结构进行了阐述,主要有应用层,逻辑层以及物理层。但该技术只是描述了物理逻辑模块的摆放方法,并没有涉及各个逻辑模块之间的消息协议交互。且在SERDES的高速传输中没有采用错误重传处理,使得构建的平台误码率很高,无法在高可靠性的存储环境中使用。
发明内容
本发明实施例提供一种数据读、写方法及系统,用于实现数据的分布式存储,节约资源。
一种数据读、写系统,包括:
主处理装置,用于将处理后的读、写指令通过串行链路发送给存储控制装置,及接收所述存储控制装置返回的读数据;
所述存储控制装置,用于根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置,或根据接收的写指令将相应写数据写入本地。
一种数据读、写方法,包括以下步骤:
将处理后的读、写指令由主处理装置通过串行链路发送给存储控制装置;
所述存储控制装置根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置,或根据接收的写指令将写数据写入本地。
本发明实施例中数据读、写方法为:主处理装置将处理后的读、写指令通过串行链路发送给存储控制装置;所述存储控制装置根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置,或根据接收的写指令将写数据写入本地。本发明实施例通过将指令通过串行链路进行发送,减少了主处理装置用于与存储控制装置连接的管脚,提高了管脚的利用率,节约了管脚资源。且本发明实施例中主处理装置与存储控制装置可以位于不同的单板上,便于进行分布式存储,对于超大容量及超高带宽的应用具有较好的适应性。
附图说明
图1为本发明实施例中数据读、写装置的详细结构图;
图2为本发明实施例中读指令的格式示意图;
图3为本发明实施例中写指令的格式示意图;
图4为本发明实施例中第一数据帧的格式示意图;
图5为本发明实施例中数据读、写方法的主要流程图;
图6为本发明实施例中写数据详细方法流程图;
图7为本发明实施例中读数据的详细方法流程图。
具体实施方式
本发明实施例中数据读、写方法为:主处理装置将处理后的读、写指令通过串行链路发送给存储控制装置;所述存储控制装置根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置,或根据接收的写指令将写数据写入本地。本发明实施例通过将指令通过串行链路进行发送,减少了主处理装置用于与存储控制装置连接的管脚,提高了管脚的利用率,节约了管脚资源。且本发明实施例中主处理装置与存储控制装置可以位于不同的单板上,便于进行分布式存储,对于超大容量及超高带宽的应用具有较好的适应性。
参见图1,本发明实施例中数据读、写系统包括主处理装置100A及存储控制装置100B。其中,主处理装置100A还包括第一主处理模块101、第二主处理模块102及第一物理层模块103,存储控制装置100B还包括第一控制模块104、第二控制模块105和第二物理层模块106。本发明实施例中所述数据读、写系统还包括第三主处理模块107及调度模块108,所述第三主处理模块107及调度模块108可以位于主处理装置100A中。所述主处理装置100A可以位于主处理板上,所述存储控制装置100B可以位于存储器板上,所述主处理板和所述存储器板可以是两个独立的单板。或者所述存储控制装置100B也可以位于主处理板上,即所述存储控制装置100B可以与所述主处理装置100A位于相同或不同的单板上。
主处理装置100A用于将处理后的读、写指令通过串行链路发送给存储控制装置100B,及接收所述存储控制装置100B返回的读数据。
第一主处理模块101用于将读、写指令进行封装后发送给第二主处理模块102。第一主处理模块101接收第三主处理模块107输出的读指令或写指令。第一主处理模块101将接收的读指令或写指令按照相应格式进行封装。例如,如图2所示为读指令的封装格式,其中读命令中需包含读数据的长度及读数据的有效字节等信息,所述读数据为需从存储器中读取的数据,Data_width为存储器数据的位宽。Addr_width为存储器地址的位宽。如图3所示为写命令的封装格式,其中写命令需包括写数据的长度及写数据的有效字节等信息,所述写数据为需写入存储器的数据,Data_width为存储器数据的位宽。Addr_width为存储器地址的位宽。如果是写命令,则经第一主处理模块101封装后,将需写入存储器的数据转换成了便于存储器存储的数据。第一主处理模块101将封装后的读、写指令发送给第二主处理模块102。
第一主处理模块101还用于接收第二主处理模块102传送的读数据。所述读数据即第一主处理模块101发送的相应读指令所请求从第一控制模块104中读出的数据。其中,第一主处理模块101可以位于Command layer(命令层)。主处理装置100A中可以包括多个第一主处理模块101,即主处理装置100A中包括至少一个第一主处理模块101。
第二主处理模块102用于对封装后的所述读、写指令进行成帧处理,使其成为第一数据帧后发送给第一物理层模块103。第二主处理模块102接收第一主处理模块101发送的封装后的读、写指令,将其切分为固定大小的数据帧。如图4所示,为本发明实施例中经第二主处理模块102处理后的数据帧格式,其中Command layer payload为命令层的负载。可以在每个数据帧中添加CRC(循环冗余校验码)校验,以方便进行校验,所述CRC校验可以添加在每个数据帧的帧尾。其中CRC校验可以采用不同的校验多项式,但为了尽可能提高传输效率,可以用尽可能少的CRC校验数据,例如用4字节的CRC校验数据即可。还可以在每个数据帧中添加source ID(源标识),即相应的主处理模块编号(可以包括相应第一主处理模块101的编号)、target ID(目的标识),即目的存储器的编号(可以包括相应第一控制模块104的编号)、ACK ID(确认字符标识)等,所述ACK ID为帧发送时间戳,表明发送的先后顺序,每发送一个数据帧,则下一个数据帧所携带的ACK ID的值加1。经第二主处理模块102处理后的已封装的读、写指令可以称为第一数据帧。第二主处理模块102将第一数据帧发送给第一物理层模块103。
第二主处理模块102还用于接收第一物理层模块103发送的第一读数据帧,及将接收的第一读数据帧恢复为读数据后发送给第一主处理模块101。第二主处理模块102接收第一读数据帧后,将所述第一读数据帧恢复为读数据,并将恢复出的读数据发送给第一主处理模块101。第二主处理模块102可以根据所述第一读数据帧中包含的source ID将恢复出的读数据发送给相应的第一主处理模块101。其中,第二主处理模块102可以位于Data linklayer(数据链路层)。
第一物理层模块103用于对接收的第一数据帧进行CRC校验、扰码处理,使其成为为第二数据帧后通过所述串行链路发送给第二物理层模块106。第一物理层模块103可以包括第一PMA(物理介质接入层)子层及第二PCS(物理编码)子层。其中,第一物理层模块103可以位于物理层。第一物理层模块103还用于将接收的第二读数据帧恢复为第一读数据帧后发送给第二主处理模块102。
第一PCS子层接收第二主处理模块102发送的第一数据帧后可以首先对其进行CRC校验处理,如果其中一个第一数据帧校验有误,则通知第二主处理模块102重新发送包括该第一数据帧及该第一数据帧之前的所有第一数据帧,如果所有第一数据帧均校验正确,则第一PCS子层可以在串行通道上对其进行负载分配,还可对所述第一数据帧进行扰码,经第一PCS子层处理后的第一数据帧可以称为第二数据帧,第一PCS子层将第二数据帧发送给第一PMA子层,由第一PMA子层通过串行链路将其进行发送。本发明实施例中所述串行链路可以是板内的SERDES,也可以是板间的SERDES,或者是光纤连接的高速接口等。
第一PMA子层接收信息处理装置返回的第二读数据帧后,将该第二读数据帧发送给第一PCS子层。第一PCS子层对接收的第二读数据帧进行处理,例如,可以通过比特定界、CRC校验、解扰等操作,将所述第二读数据帧中包含的信息恢复出来,可以将所述第二读数据帧恢复为第一读数据帧,其格式可以是如图4中所示的经第二主处理模块102成帧处理后的格式。第二PCS子层将所述第一读数据帧发送给第二主处理模块102。其中,第二PMA子层可以根据所述第一读数据帧中所包含的source ID将所述第一读数据帧发送给相应的第二主处理模块102,第二主处理模块102可以将所述第一读数据帧恢复为读数据,并根据该source ID将所述读数据发送给相应的第一主处理模块101。
存储控制装置100B用于根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置100A,或根据接收的写指令将相应写数据写入本地。
第一控制模块104用于根据接收的封装后的读指令从本地读取相应数据,将其封装为读数据后发送给所述第二控制模块105,或根据接收的封装后的写指令将相应写数据写入本地。所述读指令和写指令均为经第一主处理模块101封装后的读指令或写指令。第一控制模块104还包括处理单元及存储单元,其中,处理单元和存储单元可以是一一对应的关系。本发明实施例中所有的第一控制模块104及第二控制模块105可以构成一个存储器阵列。本发明实施例中所述存储器阵列中可以有多个第一控制模块104及第二控制模块105。
第一控制模块104中的处理单元根据接收的封装后的读、写指令从存储单元中读取相应数据,将其封装为读数据后发送给所述第二控制模块105,或根据接收的封装后的写指令将写数据写入存储单元。处理单元根据接收到的第一主处理模块101发送的读、写指令进行相应操作。例如,接收到封装后的写指令时,处理单元将该封装后的写指令发送给相应的存储单元,存储单元在接收到该封装后的写指令后,根据该封装后的写指令将该封装后的写指令中携带的需写入的写数据进行存储。接收到封装后的读指令时,则存储单元在接收到该封装后的读指令后,根据该封装后的读指令中携带的读地址,将该读地址指向的数据读出后发送给处理单元,处理单元在接收到存储单元发送的数据后,将该数据封装为读指令的回复(Reply)数据格式,即封装为读数据,并将读数据发送给第二控制模块105。该封装后的回复数据可以称为读数据。其中,第一控制模块104可以位于Command layer层。
第二控制模块105用于将接收的第一数据帧恢复为所述封装后的读、写指令,并发送给第一控制模块104。第二控制模块105接收第二物理层模块106发送的第一数据帧。第二控制模块105接收第一数据帧后,将所述第一数据帧恢复为封装后的读、写指令,并将恢复出的封装后的读、写指令发送给第一控制模块104。第二控制模块105可以根据所述第一数据帧中包含的target ID将恢复出的封装后的读、写指令发送给相应的第一控制模块104。其中,第二控制模块105可以位于Data link layer层。
第二控制模块105还用于将接收的读数据封装为第一读数据帧后发送给第二物理层模块106。第二控制模块105在接收到相应的读数据后,可以将其切分为固定大小的回复数据帧,所述回复数据帧的格式可以与图4中所示相同,经第二控制模块105处理后的读数据可以称为第一读数据帧。其中每个第一读数据帧中的source ID及target ID与该第一读数据帧所对应的封装后的读指令中一致,ACK ID根据所述封装后的读指令确定,对于同一个封装后的读指令所对应的回复数据,ACK ID相同。其中,第一数据帧中,即封装后的读指令与写指令中的target ID可以包括相应的第一控制模块104的ID及相应的第二控制模块105的ID。
第二物理层模块106用于将接收的第二数据帧恢复为第一数据帧,并发送给第二控制模块105。第二物理层模块106可以包括第二PCS子层及第二PMA子层。第二物理层模块106还用于将接收的第一读数据帧处理为第二读数据帧,并通过所述串行链路发送给第一物理层模块103。
第二PMA子层接收第一PMA子层发送的第二数据帧后,将该数据帧发送给第二PCS子层。第二PCS子层对接收的第二数据帧进行处理,例如,可以通过比特定界、CRC校验、解扰等操作将所述第二数据帧中包含的信息恢复出来,可以将所述第二数据帧恢复为第一数据帧,其格式可以是如图4中所示的经第二主处理模块102成帧处理后的格式。第二PCS子层将所述第一数据帧发送给第二控制模块105。其中,第二PMA子层可以根据所述第一数据帧中所包含的target ID将所述第一数据帧发送给相应的第二控制模块105,第二控制模块105可以将该第一数据帧恢复为封装后的读、写指令,并根据该target ID将所述封装后的读、写指令发送给相应的第一控制模块104。
第二PCS子层接收第二控制模块105发送的第一读数据帧后在串行通道上进行负载分配,可对第一读数据帧进行扰码,还可以进行CRC校验处理,如果其中一个第一读数据帧校验有误,则通知第二主处理模块102重新发送包括该第一读数据帧及该第一读数据帧之前的所有第一读数据帧,如果所有第一读数据帧均校验正确,则第二PCS子层将处理后的第一读数据帧发送给第二PMA子层,由第二PMA子层通过串行链路进行发送。其中,经第二PCS子层处理后的第一读数据帧可以称为第二读数据帧。本发明实施例中所述串行链路可以是板内的SERDES,也可以是板间的SERDES,或者是光纤连接的高速接口等。本发明实施例中由于串行链路的两个方向的流量可能不完全相等,因此双向的串行连接可以是不平衡的,需根据具体的读写流量进行评估。
第三主处理模块107用于生成读、写指令,并将生成的读、写指令输出给第一主处理模块101,以供第一主处理模块101进行封装。其中,第三主处理模块107可以位于应用层。
调度模块108用于对第一主处理模块101进行调度。第一主处理模块101可以有多个,每个第一主处理模块101将读、写指令进行封装,形成源信息(封装后的读、写指令可以称为源信息)后,可以先将源信息发送给调度模块108,由调度模块108决定先将哪个第一主处理模块101发送的源信息输出给第二主处理模块102,即由调度模块108决定源信息的发送顺序。调度模块108进行调度的方式可以有多种,可以包括但不限于优先级调度、先进先出调度、加权公平调度等方式。调度模块108可以位于Command layer及Data link layer之间。
参见图5,本发明实施例中数据读、写的主要方法流程如下:
步骤501:将处理后的读、写指令由主处理装置100A通过串行链路发送给存储控制装置100B;
步骤502:所述存储控制装置100B根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置100A,或根据接收的写指令将写数据写入本地。
参见图6,本发明实施例中写数据的详细方法流程如下:
步骤601:第一主处理模块101将写指令进行封装,形成封装后的写指令后发送给第二主处理模块102。封装后的写指令可以称为源信息,其格式可以是如图3所示的写指令格式。
步骤602:第二主处理模块102将所述封装后的写指令进行成帧处理,使其成为第一数据帧后发送给第一物理层模块103。第二主处理模块102可以将所述写指令切分为固定大小的数据帧,对其添加CRC校验,及相应的source ID、target ID、ACK ID等,使其成为第一数据帧。
步骤603:第一物理层模块103将接收的第一数据帧处理为第二数据帧后发送给第二物理层模块106。经第一物理层模块103处理后的第一数据帧可以称为第二数据帧。第一物理层模块103可以通过串行链路将第二数据帧发送给第二物理层模块106。
步骤604:第二物理层模块106将接收的第二数据帧恢复为第一数据帧,并发送给第二控制模块105。
步骤605:第二控制模块105将接收的第一数据帧恢复为所述封装后的写指令,并发送给第一控制模块104。
步骤606:第一控制模块104根据接收的封装后的写指令将写数据写入本地。
参见图7,本发明实施例中读数据的详细方法流程如下:
步骤701:第一主处理模块101将读指令进行封装,形成封装后的读指令后发送给第二主处理模块102。封装后的读指令可以称为源信息,其格式可以是如图2所示的读指令格式。
步骤702:第二主处理模块102将所述封装后的读指令进行成帧处理,使其成为第一数据帧后发送给第一物理层模块103。第二主处理模块102可以将所述写指令切分为固定大小的数据帧,对其添加CRC校验,及相应的source ID、target ID、ACK ID等,使其成为第一数据帧。
步骤703:第一物理层模块103将接收的第一数据帧处理为第二数据帧后发送给第二物理层模块106。经第一物理层模块103处理后的第一数据帧可以称为第二数据帧。第一物理层模块103可以通过串行链路将第二数据帧发送给第二物理层模块106。
步骤704:第二物理层模块106将接收的第二数据帧恢复为第一数据帧,并发送给第二控制模块105。
步骤705:第二控制模块105将接收的第一数据帧恢复为所述封装后的读指令,并发送给第一控制模块104。
步骤706:第一控制模块104根据所述封装后的读指令从本地读取相应数据,并将读取的数据封装为读数据后发送给第二控制模块105。
步骤707:第二控制模块105对接收的读数据进行成帧处理,使其成为第一读数据帧后发送给第二物理层模块106。第一读数据帧中包含的source ID和target ID与所述读指令中的source ID和target ID分别相同。对于同一个读指令,ACK ID也相同。
步骤708:第二物理层模块107将接收的第一读数据帧处理为第二读数据帧后发送给第一物理层模块103。第二物理层模块107可以通过串行链路将第二读数据帧发送给第一物理层模块103。
步骤709:第一物理层模块103将接收的第二读数据帧恢复为第一读数据帧后发送给第二主处理模块102。
步骤710:第二主处理模块102将接收的第一读数据帧恢复为读数据后发送给第一主处理模块101。
步骤711:第一主处理模块101接收所述读数据。
本发明实施例中信息处理的方法为:主处理装置100A将处理后的读、写指令通过串行链路发送给存储控制装置100B;所述存储控制装置100B根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置100A,或根据接收的写指令将写数据写入本地。
本发明实施例通过将指令通过串行链路进行发送,减少了主处理装置100A用于与存储控制装置100B连接的管脚,提高了管脚的利用率,节约了管脚资源。且本发明实施例中主处理模块与存储模块可以位于不同的单板上,便于进行分布式存储,对于超大容量及超高带宽的应用具有较好的适应性。将存储模块单独作为一个独立的模块,便于升级。存储模块可以与其它接口部分采用相同的物理层,使得物理层的设计得到了简化,涉及复杂度也相应降低。且采用了错误重传等纠错机制,提高了传输的可靠性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (7)

1.一种数据读、写系统,其特征在于,包括:
主处理装置,用于将处理后的读、写指令通过串行链路发送给存储控制装置,及接收所述存储控制装置返回的读数据;
所述存储控制装置,用于根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置,或根据接收的写指令将相应写数据写入本地;
其中,所述串行链路为板内的并串行与串并行转换器SERDES,或板间的SERDES,或光纤连接的高速接口;
所述主处理装置包括:
第一主处理模块,用于将读、写指令进行封装后发送给第二主处理模块,及接收所述第二主处理模块传送的读数据;所述第一主处理模块位于命令层;
所述第二主处理模块,用于对封装后的所述读、写指令进行成帧处理,使其成为第一数据帧后发送给第一物理层模块,及将接收的第一读数据帧恢复为读数据后发送给所述第一主处理模块;所述第二主处理模块位于数据链路层;
所述第一物理层模块,用于对接收的第一数据帧进行CRC校验、扰码处理,使其成为第二数据帧后通过所述串行链路发送给第二物理层模块,及将接收的第二读数据帧恢复为第一读数据帧后发送给所述第二主处理模块;所述第一物理层模块位于物理层;
所述存储控制装置包括:
所述第二物理层模块,用于将接收的第二数据帧恢复为第一数据帧并发送给第二控制模块,及对接收的第一读数据帧进行CRC校验、扰码处理,使其成为第二读数据帧并通过所述串行链路发送给所述第一物理层模块;所述第二物理层模块位于物理层;
第二控制模块,用于将接收的第一数据帧恢复为所述读、写指令并发送给第一控制模块,及将接收的读数据封装为第一读数据帧后发送给第二物理层模块;所述第二控制模块位于数据链路层;
所述第一控制模块,用于根据接收的读指令从本地读取相应数据,将其封装为读数据后发送给所述第二控制模块,或根据接收的写指令将写数据写入本地;所述第一控制模块位于命令层。
2.如权利要求1所述的系统,其特征在于,所述主处理装置与所述存储控制装置位于相同或不同的单板上。
3.如权利要求1所述的系统,其特征在于,当所述主处理装置中包含至少两个所述第一主处理模块时,所述系统还包括:调度模块;
所述至少两个第一主处理模块还用于将所述读、写指令发送给所述调度模块;
所述调度模块还用于对接收的所有读、写指令进行调度后发送给所述第二主处理模块;其中,调度方式为优先级调度,或先进先出调度,或加权公平调度。
4.如权利要求1所述的系统,其特征在于,所述第一数据帧及第二数据帧中包含用于标识所述第一控制模块的目的标识,以使所述主处理装置根据所述目的标识,通过所述第二物理层模块及所述第二控制模块将读、写指令发送至相应的所述第一控制模块,及包含用于标识所述第一主处理模块的源标识;所述第一读数据帧及第二读数据帧中包含的源标识及目的标识与相应的所述第一数据帧及第二数据帧中包含的源标识及目的标识分别相同,以使所述存储控制装置根据所述源标识,通过所述第一物理层模块及所述第二主处理模块将读数据发送至所述第一主处理模块。
5.一种数据读、写方法,其特征在于,包括以下步骤:
将处理后的读、写指令由主处理装置通过串行链路发送给存储控制装置;
所述存储控制装置根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置,或根据接收的写指令将写数据写入本地;
其中,所述串行链路为板内的并串行与串并行转换器SERDES,或板间的SERDES,或光纤连接的高速接口;
所述将处理后的读、写指令由主处理装置通过串行链路发送给存储控制装置的步骤包括:
由所述主处理装置中的第一主处理模块将读、写指令进行封装后发送给所述主处理装置中的第二主处理模块;所述第一主处理模块位于命令层;
由所述第二主处理模块将所述读、写指令进行成帧处理,使其成为第一数据帧后发送给所述主处理装置中的第一物理层模块;所述第二主处理模块位于数据链路层;
由所述第一物理层模块对接收的第一数据帧进行CRC校验、扰码处理,使其成为第二数据帧后通过所述串行链路发送给所述存储控制装置中的第二物理层模块;所述第一物理层模块位于物理层;
由所述第二物理层模块将接收的第二数据帧恢复为第一数据帧并发送给所述存储控制装置中的第二控制模块;所述第二物理层模块位于物理层;
由所述第二控制模块将接收的第一数据帧恢复为所述封装后的读、写指令并发送给所述存储控制装置中的第一控制模块;所述第二控制模块位于数据链路层;
由所述第一控制模块根据接收的封装后的读指令从本地读取相应数据,将其封装为读数据后发送给所述第二控制模块,或根据接收的封装后的写指令将写数据写入本地;所述第一控制模块位于命令层;
所述存储控制装置根据接收的读指令从本地读取相应读数据并通过所述串行链路发送给所述主处理装置的步骤包括:
由所述存储控制装置中的第一控制模块根据接收的封装后的读指令从本地读取相应数据,将其封装为读数据后发送给所述存储控制装置中的第二控制模块;所述第一控制模块位于命令层;
由所述第二控制模块将接收的读数据封装为第一读数据帧后发送给所述存储控制装置中的第二物理层模块;所述第二控制模块位于数据链路层;
由所述第二物理层模块对接收的第一读数据帧进行CRC校验、扰码处理,使其成为第二读数据帧并通过所述串行链路发送给所述主处理装置;所述第二物理层模块位于物理层。
6.如权利要求5所述的方法,其特征在于,还包括步骤:所述主处理装置接收所述存储控制装置返回的读数据;其具体包括以下步骤:
由所述主处理装置中的第一物理层模块将接收的第二读数据帧恢复为第一读数据帧后发送给所述主处理装置中的第二主处理模块;所述第一物理层模块位于物理层;
由所述第二主处理模块将接收的第一读数据帧恢复为读数据后发送给所述主处理装置中的第一主处理模块;所述第二主处理模块位于数据链路层;
由所述第一主处理模块接收所述第二主处理模块发送的读数据;所述第一主处理模块位于命令层。
7.如权利要求5所述的方法,其特征在于,还包括步骤:当所述主处理装置包含至少两个第一主处理模块时,
由所述至少两个第一主处理模块将封装后的读、写指令发送给调度模块;
由所述调度模块对接收的所有封装后的读、写指令进行调度后发送给所述主处理装置中的第二主处理模块;其中,调度方式为优先级调度,或先进先出调度,或加权公平调度。
CN201110167199.3A 2011-06-21 2011-06-21 一种数据读、写方法及系统 Active CN102231141B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110167199.3A CN102231141B (zh) 2011-06-21 2011-06-21 一种数据读、写方法及系统
PCT/CN2012/075146 WO2012174953A1 (zh) 2011-06-21 2012-05-07 一种数据读、写方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110167199.3A CN102231141B (zh) 2011-06-21 2011-06-21 一种数据读、写方法及系统

Publications (2)

Publication Number Publication Date
CN102231141A CN102231141A (zh) 2011-11-02
CN102231141B true CN102231141B (zh) 2017-04-05

Family

ID=44843705

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110167199.3A Active CN102231141B (zh) 2011-06-21 2011-06-21 一种数据读、写方法及系统

Country Status (2)

Country Link
CN (1) CN102231141B (zh)
WO (1) WO2012174953A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102231141B (zh) * 2011-06-21 2017-04-05 深圳市中兴微电子技术有限公司 一种数据读、写方法及系统
CN103544123A (zh) * 2012-07-16 2014-01-29 深圳市中兴微电子技术有限公司 Sdram控制器及对sdram存储空间的访问方法
EP2874073A1 (en) 2013-11-18 2015-05-20 Fujitsu Limited System, apparatus, program and method for data aggregation
CN103955440A (zh) * 2013-12-18 2014-07-30 记忆科技(深圳)有限公司 一种非易失存储设备及其进行数据操作的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101201805A (zh) * 2006-12-15 2008-06-18 凌阳科技股份有限公司 串行传输控制器与串行传输解码器及其串行传输方法
CN101495975A (zh) * 2006-12-25 2009-07-29 松下电器产业株式会社 存储控制装置、存储装置及存储控制方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1194715A (zh) * 1996-05-30 1998-09-30 卡西欧计算机株式会社 数据存储装置
JP2006244123A (ja) * 2005-03-03 2006-09-14 Fujitsu Ltd データストレージシステム及びデータストレージ制御装置
CN102231141B (zh) * 2011-06-21 2017-04-05 深圳市中兴微电子技术有限公司 一种数据读、写方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101201805A (zh) * 2006-12-15 2008-06-18 凌阳科技股份有限公司 串行传输控制器与串行传输解码器及其串行传输方法
CN101495975A (zh) * 2006-12-25 2009-07-29 松下电器产业株式会社 存储控制装置、存储装置及存储控制方法

Also Published As

Publication number Publication date
CN102231141A (zh) 2011-11-02
WO2012174953A1 (zh) 2012-12-27

Similar Documents

Publication Publication Date Title
US11934261B2 (en) Flit-based parallel-forward error correction and parity
US7810013B2 (en) Memory device that reflects back error detection signals
EP3702926B1 (en) Flit-based packetization
US11907140B2 (en) Serial interface for semiconductor package
US20140068134A1 (en) Data transmission apparatus, system, and method
US11954059B2 (en) Signal processing chip and signal processing system
CN102231141B (zh) 一种数据读、写方法及系统
CN109547467A (zh) 媒体数据纠错传输及纠错方法、装置、设备及存储介质
JP2010129018A (ja) 送信装置、および受信装置
CN106598889A (zh) 一种基于fpga夹层板的sata主控器
KR20120134157A (ko) 별도의 순환 중복 코드 프레임들을 이용하는 효율적인 대역내 신뢰도
CN105357147A (zh) 一种高速高可靠的片上网络适配单元
US20230004524A1 (en) Method of notifying a process or programmable atomic operation traps
US11614891B2 (en) Communicating a programmable atomic operator to a memory controller
CN114385240A (zh) 组织可编程原子单元指令存储器的方法
CN116601617A (zh) 使用同步接口进行次级装置检测
CN101771554B (zh) 一种余度管理电路及其管理方法
CN104579605B (zh) 一种数据传输方法及装置
CN116881188B (zh) 一种晶片到晶片接口互联的方法、设备及介质
CN104063345A (zh) 一种sata桥设备
US11698791B2 (en) On-demand programmable atomic kernel loading
CN116107953A (zh) 芯粒间的通讯方法和系统
US11636061B2 (en) On-demand packetization for a chip-to-chip interface
WO2018133415A1 (zh) 一种物理编码子层的数据编解码方法和装置、存储介质
WO2021037261A1 (zh) 芯片和多芯片系统及电子设备和数据传输方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20151103

Address after: Dameisha Yantian District of Shenzhen City, Guangdong province 518085 Building No. 1

Applicant after: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD.

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Applicant before: ZTE Corporation

GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20111102

Assignee: Xi'an Chris Semiconductor Technology Co. Ltd.

Assignor: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD.

Contract record no.: 2019440020036

Denomination of invention: Method and system for reading and writing data

Granted publication date: 20170405

License type: Common License

Record date: 20190619

EE01 Entry into force of recordation of patent licensing contract