CN105681222A - 一种数据接收缓存方法、装置及通信*** - Google Patents
一种数据接收缓存方法、装置及通信*** Download PDFInfo
- Publication number
- CN105681222A CN105681222A CN201610120423.6A CN201610120423A CN105681222A CN 105681222 A CN105681222 A CN 105681222A CN 201610120423 A CN201610120423 A CN 201610120423A CN 105681222 A CN105681222 A CN 105681222A
- Authority
- CN
- China
- Prior art keywords
- data
- read request
- data read
- spatial cache
- identification information
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9005—Buffering arrangements using dynamic buffer space allocation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种数据接收缓存方法、装置及通信***,该方法包括:检测到发送数据读请求后,为数据读请求分配缓存空间;在接收到数据读请求的返回数据时,将返回数据缓存至数据读请求的缓存空间。通过本发明的实施,采用在发起读请求前提前在接收缓存中分配对应的存储空间的方法,简化了缓存管理的复杂度,同时,连续存储也减小了信用更新的难度,解决了现有采用链表结构处理乱序返回的数据包存在的硬件电路实现难度大的问题。
Description
技术领域
本发明涉及通信领域,尤其涉及一种数据接收缓存方法、装置及通信***。
背景技术
在通信技术中,本端向对端发送数据读请求之后,获取对端针对数据读请求发送的返回数据,并进行缓存供后续使用,是常用的通信流程,但是随着技术发展,返回数据的数据长度也在日益增长,这样,通常使用多个数据包传输返回数据。若本端同时向对端发送多个数据读请求,这些数据读请求均采用多个数据包传输返回数据的方式,由于这些数据读请求的数据包会乱序返回,对应的,在本端进行缓存时,这些数据包就会出现混乱缓存。
为了处理乱序返回的数据包,常用做法是采用链表结构(LinkedList)记录数据包的存储地址及数据包之间的关系。然而,由于链表结构本身比较复杂,采用硬件电路实现难度较大;对接收端来说,当数据从接收缓存中输出后,需要及时更新信用给对端,而链表结构对应分散存储,这给信用更新带来了不小的难度。
因此,本领域技术人员亟待提供一种数据接收缓存方法,以解决现有采用链表结构处理乱序返回的数据包存在的硬件电路实现难度大的技术问题。
发明内容
本发明提供了一种数据接收缓存方法、装置及通信***,以解决现有采用链表结构处理乱序返回的数据包存在的硬件电路实现难度大的问题。
本发明提供了一种数据接收缓存方法,其包括:
检测到发送数据读请求后,为数据读请求分配缓存空间;
在接收到数据读请求的返回数据时,将返回数据缓存至数据读请求的缓存空间。
进一步的,将返回数据缓存至数据读请求的缓存空间包括:当返回数据包括两个及以上数据包时,将两个及以上数据包按照发送时间排序,并缓存。
进一步的,将返回数据缓存至数据读请求的缓存空间在将两个及以上数据包按照发送时间排序之后,还包括:将排序之后的第一个数据包携带包头缓存,其他数据包去包头后缓存。
进一步的,在将返回数据缓存至数据读请求的缓存空间之后,还包括:在检测到数据读请求的返回数据全部正确返回后,从数据读请求的缓存空间读取缓存的数据,进行信用更新,并初始化数据读请求的缓存空间。
进一步的,为数据读请求分配缓存空间包括:获取数据读请求的标识信息,根据数据读请求的标识信息为数据读请求分配缓存空间,缓存空间的标识信息与数据读请求的标识信息的一一对应;将返回数据缓存至数据读请求的缓存空间包括:根据返回数据的标识信息确定数据读请求的标识信息,根据缓存空间的标识信息与数据读请求的标识信息的对应关系,将返回数据缓存至对应的缓存空间。
进一步的,当数据读请求为存储器读请求时,为数据读请求分配缓存空间还包括:获取存储器读请求对应的读数据长度信息及标识信息,根据存储器读请求对应的读数据长度信息及标识信息,为存储器读请求分配对应长度的缓存空间。
本发明提供了一种数据接收缓存装置,其包括:
分配模块,用于检测到发送数据读请求后,为数据读请求分配缓存空间;
缓存模块,用于在接收到数据读请求的返回数据时,将返回数据缓存至数据读请求的缓存空间。
进一步的,缓存模块用于当返回数据包括两个及以上数据包时,将两个及以上数据包按照发送时间排序,并缓存。
进一步的,缓存模块在将两个及以上数据包按照发送时间排序之后,还用于将排序之后的第一个数据包携带包头缓存,其他数据包去包头后缓存。
进一步的,缓存模块在将返回数据缓存至数据读请求的缓存空间之后,还用于在检测到数据读请求的返回数据全部正确返回后,从数据读请求的缓存空间读取缓存的数据,进行信用更新,并初始化数据读请求的缓存空间。
进一步的,分配模块用于获取数据读请求的标识信息,根据数据读请求的标识信息为数据读请求分配缓存空间,缓存空间的标识信息与数据读请求的标识信息的一一对应;缓存模块用于根据返回数据的标识信息确定数据读请求的标识信息,根据缓存空间的标识信息与数据读请求的标识信息的对应关系,将返回数据缓存至对应的缓存空间。
进一步的,当数据读请求为存储器读请求时,分配模块还用于获取存储器读请求对应的读数据长度信息及标识信息,根据存储器读请求对应的读数据长度信息及标识信息,为存储器读请求分配对应长度的缓存空间。
本发明提供了一种通信***,其包括第一设备和第二设备,第一设备和第二设备通过高性能互联串行总线通信,第一设备和/或第二设备包括本发明提供的数据接收缓存装置。
本发明的有益效果:
本发明提供了一种新的数据接收缓存方法,检测到发送数据读请求后,为数据读请求分配缓存空间;在接收到数据读请求的返回数据时,将返回数据缓存至数据读请求的缓存空间,这样通过采用在发起读请求前提前在接收缓存中分配对应的存储空间的方法,简化了缓存管理的复杂度,同时,连续存储也减小了信用更新的难度,解决了现有采用链表结构处理乱序返回的数据包存在的硬件电路实现难度大的问题。
附图说明
图1为本发明第一实施例提供的数据接收缓存装置的结构示意图;
图2为本发明第二实施例提供的数据接收缓存方法的流程图;
图3为本发明第三实施例提供的数据接收缓存装置的结构示意图;
图4为本发明第三实施例中TagRAM的结构示意图;
图5为本发明第三实施例中接收缓存在接收数据包时的读写指针变化图。
具体实施方式
现通过具体实施方式结合附图的方式对本发明做出进一步的诠释说明。
第一实施例:
图1为本发明第一实施例提供的数据接收缓存装置的结构示意图,由图1可知,在本实施例中,本发明提供的数据接收缓存装置1包括:
分配模块11,用于检测到发送数据读请求后,为数据读请求分配缓存空间;
缓存模块12,用于在接收到数据读请求的返回数据时,将返回数据缓存至数据读请求的缓存空间。
在一些实施例中,上述实施例中的缓存模块12用于当返回数据包括两个及以上数据包时,将两个及以上数据包按照发送时间排序,并缓存。
在一些实施例中,上述实施例中的缓存模块12在将两个及以上数据包按照发送时间排序之后,还用于将排序之后的第一个数据包携带包头缓存,其他数据包去包头后缓存。
在一些实施例中,上述实施例中的缓存模块12在将返回数据缓存至数据读请求的缓存空间之后,还用于在检测到数据读请求的返回数据全部正确返回后,从数据读请求的缓存空间读取缓存的数据,进行信用更新,并初始化数据读请求的缓存空间。
在一些实施例中,上述实施例中的分配模块11用于获取数据读请求的标识信息,根据数据读请求的标识信息为数据读请求分配缓存空间,缓存空间的标识信息与数据读请求的标识信息的一一对应;缓存模块用于根据返回数据的标识信息确定数据读请求的标识信息,根据缓存空间的标识信息与数据读请求的标识信息的对应关系,将返回数据缓存至对应的缓存空间。
在一些实施例中,当数据读请求为存储器读请求时,上述实施例中的分配模块11还用于获取存储器读请求对应的读数据长度信息及标识信息,根据存储器读请求对应的读数据长度信息及标识信息,为存储器读请求分配对应长度的缓存空间。
对应的,本发明提供了一种通信***,其包括第一设备和第二设备,第一设备和第二设备通过高性能互联串行总线通信,第一设备和/或第二设备包括本发明提供的数据接收缓存装置1。
第二实施例:
图2为本发明第二实施例提供的数据接收缓存方法的流程图,由图2可知,在本实施例中,本发明提供的数据接收缓存方法包括:
S201:检测到发送数据读请求后,为数据读请求分配缓存空间;
S202:在接收到数据读请求的返回数据时,将返回数据缓存至数据读请求的缓存空间。
在一些实施例中,上述实施例中的将返回数据缓存至数据读请求的缓存空间包括:当返回数据包括两个及以上数据包时,将两个及以上数据包按照发送时间排序,并缓存。
在一些实施例中,上述实施例中的将返回数据缓存至数据读请求的缓存空间在将两个及以上数据包按照发送时间排序之后,还包括:将排序之后的第一个数据包携带包头缓存,其他数据包去包头后缓存。
在一些实施例中,上述实施例中的方法在将返回数据缓存至数据读请求的缓存空间之后,还包括:在检测到数据读请求的返回数据全部正确返回后,从数据读请求的缓存空间读取缓存的数据,进行信用更新,并初始化数据读请求的缓存空间。
在一些实施例中,上述实施例中的为数据读请求分配缓存空间包括:获取数据读请求的标识信息,根据数据读请求的标识信息为数据读请求分配缓存空间,缓存空间的标识信息与数据读请求的标识信息的一一对应;将返回数据缓存至数据读请求的缓存空间包括:根据返回数据的标识信息确定数据读请求的标识信息,根据缓存空间的标识信息与数据读请求的标识信息的对应关系,将返回数据缓存至对应的缓存空间。
在一些实施例中,当数据读请求为存储器读请求时,上述实施例中的为数据读请求分配缓存空间还包括:获取存储器读请求对应的读数据长度信息及标识信息,根据存储器读请求对应的读数据长度信息及标识信息,为存储器读请求分配对应长度的缓存空间。
现结合具体应用场景对本发明做进一步的诠释说明。
第三实施例:
本实施例以高速串行通信领域为例进行说明,提供一种通过接收缓存(ReceiverBuffer)及附属控制逻辑处理可能乱序(OutofOrder)到达的数据包的方法及装置。
PCIe(PeripheralComponentInterconnectExpress)是新一代的高性能互联串行总线,其具有点对点的拓扑结构,以及高速数据传输能力,广泛应用于各种计算机及通信***中的器件间互联。当两个器件进行通信时,请求及响应均以TLP(TransactionLayerPacket)数据包的形式发送给对方。例如,当本端发起存储器读请求(MemoryReadRequest,MRd)时,对端以CplD(CompletionwithData)的TLP包返回请求的读数据。对同一个读请求,PCIe协议允许以一个或多个CplD的形式返回读数据。当***中同时存在两个及以上的读请求时,如果读数据都以多个CplD的形式返回,对应不同读请求的CplD可能交替到达读请求方。此时,读请求方的接收端必须处理乱序到达的CplD数据包,即对每个读请求,分别根据MRd包头的Tag字段,从对应的多个CplD中恢复出读数据。
为了处理乱序返回的数据包,常用做法是采用链表结构(LinkedList)记录数据包的存储地址及数据包之间的关系。例如,美国专利US9021482B2(公开时间:2015-4-28),及美国专利US20130246682A1(公开时间:2013-9-19)等专利均采用基于链表结构的方案。然而,由于链表结构本身比较复杂,采用硬件电路实现难度较大;另一方面,对PCIe接收端来说,当数据从接收缓存中输出后,需要及时更新信用(Credit)给对端,而链表结构对应分散存储,这给信用更新带来了不小的难度。
针对上述问题,本实施例提出了一种新的接收缓存管理方法,以减少接收端处理乱序返回的数据包的设计复杂度。
具体的,本实施例提供的接收缓存管理方法,包括:
在向对端发送NP(Non-PostedRequest)请求时,将该请求对应的Tag值等TLP包头信息传递给本端的接收缓存管理模块,当该请求为MRd时,还需要将读数据长度信息传递给本端的接收缓存管理模块;
接收缓存管理模块根据上述Tag值、读数据长度等信息提前在接收缓存中为将要返回的CplD分配充足的存储空间;
当读数据以一个或多个CplD的形式从对端返回时,根据CplD包头的Tag值,将CplD存入预先分配好的缓存地址之中(对多个CplD,除MRd对应的第一个CplD外,其余CplD的包头不需要存入接收缓存);
等NP请求对应的CplD全部正确返回后,从接收缓存中读出对应的数据,即为NP请求对应的读数据,同时可给对端进行信用更新。
本实施例采用提前分配存储空间的方法,保证了同一个MRd对应的多个CplD在接收缓存中连续存储,简化了缓存管理的复杂度;同时,连续存储也减小了信用更新的难度。
下文将结合附图对本实施例进行详细的说明。
图3所示的是本发明实施例的一种接收缓存管理装置,其主要包括:
TLPDecoder31:用于解析TLP包格式,提取包头中的Tag字段等信息;
TagRAM32:用于记录本端发送NP请求时的Tag值、读请求长度等信息,并在Completion返回时根据Tag索引相关信息,检测该Completion包是否合法;
ReceiverBuffer33:用于存储解析后的TLP包;
OrderingFIFO(FirstInFirstOut,先进先出)34:用于记录TLP包到达的先后顺序;
CompletionTimeoutTimer35:记录本端发送NP请求的时间,若Completion在规定时间内还未返回,则发出超时信息。
本实施例中,当本端发送NP请求时,将该请求发起的时间、读请求数据长度、Tag值等信息记录下来存到TagRAM中,并将TagRAM中的Requestvalid字段置为1;同时,将ReceiverBuffer的写指针rbuf_wptr增加读请求数据长度对应的数值,即提前为将要返回的CplD分配存储空间。
为应对同一个NP读请求,返回多个CplD的情形,需要分别记录每个读请求对应的CplD的写指针Cpld_wptr,存储到TagRAM中。TagRAM以TLP的Tag值为读、写地址,其逻辑存储结构如图4所示。为解决读、写冲突,TagRAM可以分拆成多个以Tag值为读、写地址的小RAM,也可以部分或全部采用寄存器来实现。
TLPDecoder模块每接收到一个CplD,则以Tag值为地址读取TagRAM,若读出的Cpld_rcvd为1,则将读出的Cpld_wptr作为往ReceiverBuffer写入该CplD的起始地址,否则将rbuf_wptr作为起始地址。若这个CplD不是NP读请求对应的最后一个CplD,在写入包尾后,还需要将写入包尾后的Cpld_wptr重新存入TagRAM,作为该请求后续CplD的起始写地址。同时,将第一个CplD的存储起始地址及Tag值等信息存储到OrderingFIFO中,保证从ReceiverBuffer中顺序读出数据,方便信用更新。
当OrderingFIFO中最早的Tag值对应的Completion包已经全部接收完毕,则可以开始从ReceiverBuffer中读出数据,经过译码等处理后从图3的Decodeddata/cmd接口输出给后级逻辑。
CompletionTimeoutTimer模块包含一个自由运行的计数器,每个时钟周期自动加1,累加到最大值后自动归0,并重新开始累加。当NP读请求发出后,记下当前的计数器值,并存入TagRAM中对应的NPRequestTime字段;当对应的Completion返回后,则将TagRAM对应的Cpld_rcvd置1。与此同时,CompletionTimeoutTimer模块周期性地检查TagRAM中RequestValid=1的请求的NPRequestTime,若当前计数器值与NPRequestTime的差值超过超时时间的设置值,则将Is_timeout字段置1,即该请求出现了Completion超时,需要将预先为该请求在ReceiverBuffer分配的空间释放掉。
图5所示的是在接收CplD过程中,接收缓存读、写指针的变化过程。在图5中,假设本端先后发出了两个MRd,对应的Tag分别为A、B。T=0时刻,MRdA已经发出,对应TagA的第一个CplD,即CplDA0已经返回存入ReceiverBuffer,Cpld_wptr已经更新,但ReceiverBuffer还没开始输出,读指针Rbuf_rptr=0,由于提前分配空间写指针Rbuf_wptr=A,;T=1时刻,MRdB已经发出,对应TagB的第一个CplD,即CplDB0已经返回存入ReceiverBuffer,对应TagB的Cpld_wptr已经更新,由于提前分配空间ReceiverBuffer写指针Rbuf_wptr=B;T=2时刻,对应TagA的第二个CplD,即CplDA1已经返回存入ReceiverBuffer,Cpld_wptr已经更新;T=3时刻,对应TagA的最后一个CplD,即CplDA2已经返回存入ReceiverBuffer;T=4时刻,对应TagB的最后一个CplD,即CplDB1已经返回存入ReceiverBuffer,而对应TagA的CplD已经全部从ReceiverBuffer输出,此时,读指针Rbuf_rptr=A。另外,在TLP包存入ReceiverBuffer过程中,若在最后阶段发现数据有错,比如LCRC(LinkCyclicRedundancyCheck)校验出错等,需要将ReceiverBuffer写指针回退到存储这个数据包头的起始地址。
综上可知,通过本发明的实施,至少存在以下有益效果:
本发明提供了一种新的数据接收缓存方法,检测到发送数据读请求后,为数据读请求分配缓存空间;在接收到数据读请求的返回数据时,将返回数据缓存至数据读请求的缓存空间,这样通过采用在发起读请求前提前在接收缓存中分配对应的存储空间的方法,简化了缓存管理的复杂度,同时,连续存储也减小了信用更新的难度,解决了现有采用链表结构处理乱序返回的数据包存在的硬件电路实现难度大的问题。
以上仅是本发明的具体实施方式而已,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施方式所做的任意简单修改、等同变化、结合或修饰,均仍属于本发明技术方案的保护范围。
Claims (13)
1.一种数据接收缓存方法,其特征在于,包括:
检测到发送数据读请求后,为所述数据读请求分配缓存空间;
在接收到所述数据读请求的返回数据时,将所述返回数据缓存至所述数据读请求的缓存空间。
2.如权利要求1所述的数据接收缓存方法,其特征在于,所述将所述返回数据缓存至所述数据读请求的缓存空间包括:当所述返回数据包括两个及以上数据包时,将所述两个及以上数据包按照发送时间排序,并缓存。
3.如权利要求2所述的数据接收缓存方法,其特征在于,所述将所述返回数据缓存至所述数据读请求的缓存空间在将所述两个及以上数据包按照发送时间排序之后,还包括:将排序之后的第一个数据包携带包头缓存,其他数据包去包头后缓存。
4.如权利要求1所述的数据接收缓存方法,其特征在于,在将所述返回数据缓存至所述数据读请求的缓存空间之后,还包括:在检测到所述数据读请求的返回数据全部正确返回后,从所述数据读请求的缓存空间读取缓存的数据,进行信用更新,并初始化所述数据读请求的缓存空间。
5.如权利要求1至4任一项所述的数据接收缓存方法,其特征在于,
所述为所述数据读请求分配缓存空间包括:获取所述数据读请求的标识信息,根据所述数据读请求的标识信息为所述数据读请求分配缓存空间,所述缓存空间的标识信息与所述数据读请求的标识信息的一一对应;
将所述返回数据缓存至所述数据读请求的缓存空间包括:根据所述返回数据的标识信息确定所述数据读请求的标识信息,根据所述缓存空间的标识信息与所述数据读请求的标识信息的对应关系,将所述返回数据缓存至对应的缓存空间。
6.如权利要求5所述的数据接收缓存方法,其特征在于,当所述数据读请求为存储器读请求时,所述为所述数据读请求分配缓存空间还包括:获取所述存储器读请求对应的读数据长度信息及标识信息,根据所述存储器读请求对应的读数据长度信息及标识信息,为所述存储器读请求分配对应长度的缓存空间。
7.一种数据接收缓存装置,其特征在于,包括:
分配模块,用于检测到发送数据读请求后,为所述数据读请求分配缓存空间;
缓存模块,用于在接收到所述数据读请求的返回数据时,将所述返回数据缓存至所述数据读请求的缓存空间。
8.如权利要求7所述的数据接收缓存装置,其特征在于,所述缓存模块用于当所述返回数据包括两个及以上数据包时,将所述两个及以上数据包按照发送时间排序,并缓存。
9.如权利要求8所述的数据接收缓存装置,其特征在于,所述缓存模块在将所述两个及以上数据包按照发送时间排序之后,还用于将排序之后的第一个数据包携带包头缓存,其他数据包去包头后缓存。
10.如权利要求7所述的数据接收缓存装置,其特征在于,所述缓存模块在将所述返回数据缓存至所述数据读请求的缓存空间之后,还用于在检测到所述数据读请求的返回数据全部正确返回后,从所述数据读请求的缓存空间读取缓存的数据,进行信用更新,并初始化所述数据读请求的缓存空间。
11.如权利要求7至10任一项所述的数据接收缓存装置,其特征在于,
所述分配模块用于获取所述数据读请求的标识信息,根据所述数据读请求的标识信息为所述数据读请求分配缓存空间,所述缓存空间的标识信息与所述数据读请求的标识信息的一一对应;
所述缓存模块用于根据所述返回数据的标识信息确定所述数据读请求的标识信息,根据所述缓存空间的标识信息与所述数据读请求的标识信息的对应关系,将所述返回数据缓存至对应的缓存空间。
12.如权利要求11所述的数据接收缓存装置,其特征在于,当所述数据读请求为存储器读请求时,所述分配模块还用于获取所述存储器读请求对应的读数据长度信息及标识信息,根据所述存储器读请求对应的读数据长度信息及标识信息,为所述存储器读请求分配对应长度的缓存空间。
13.一种通信***,其特征在于,包括第一设备和第二设备,所述第一设备和第二设备通过高性能互联串行总线通信,所述第一设备和/或第二设备包括如权利要求7至112任一项所述的数据接收缓存装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610120423.6A CN105681222A (zh) | 2016-03-03 | 2016-03-03 | 一种数据接收缓存方法、装置及通信*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610120423.6A CN105681222A (zh) | 2016-03-03 | 2016-03-03 | 一种数据接收缓存方法、装置及通信*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105681222A true CN105681222A (zh) | 2016-06-15 |
Family
ID=56306547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610120423.6A Pending CN105681222A (zh) | 2016-03-03 | 2016-03-03 | 一种数据接收缓存方法、装置及通信*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105681222A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111694777A (zh) * | 2019-03-11 | 2020-09-22 | 苏州微影激光技术有限公司 | 基于PCIe接口的DMA传输方法 |
CN111724262A (zh) * | 2020-06-24 | 2020-09-29 | 上海金仕达软件科技有限公司 | 一种应用服务器后续包查询***及其工作方法 |
CN114553776A (zh) * | 2022-02-28 | 2022-05-27 | 深圳市风云实业有限公司 | 一种信号乱序控制与速率自适应的传输装置及其传输方法 |
CN117724833A (zh) * | 2023-12-06 | 2024-03-19 | 无锡众星微***技术有限公司 | 一种基于流属性的PCIe tag缓存自适应资源分配方法和装置 |
CN118113230A (zh) * | 2024-04-23 | 2024-05-31 | 沐曦集成电路(上海)有限公司 | 一种基于地址重映射的读存储器数据的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050223123A1 (en) * | 2004-03-31 | 2005-10-06 | Jen Michelle C | Out-of-order servicing of read requests with minimal additional storage |
CN1797380A (zh) * | 2004-12-28 | 2006-07-05 | 株式会社东芝 | 接收装置、收发装置、接收方法和收发方法 |
CN102571609A (zh) * | 2012-03-01 | 2012-07-11 | 重庆中天重邮通信技术有限公司 | 快速串行接口pci-e协议数据完成包的重组排序方法 |
CN103049240A (zh) * | 2011-10-13 | 2013-04-17 | 北京同步科技有限公司 | Pci-e设备及其接收数据重排序方法 |
CN105281832A (zh) * | 2014-07-02 | 2016-01-27 | 北京邮电大学 | 一种紫外光网络中邻居发现方法 |
-
2016
- 2016-03-03 CN CN201610120423.6A patent/CN105681222A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050223123A1 (en) * | 2004-03-31 | 2005-10-06 | Jen Michelle C | Out-of-order servicing of read requests with minimal additional storage |
CN1797380A (zh) * | 2004-12-28 | 2006-07-05 | 株式会社东芝 | 接收装置、收发装置、接收方法和收发方法 |
CN103049240A (zh) * | 2011-10-13 | 2013-04-17 | 北京同步科技有限公司 | Pci-e设备及其接收数据重排序方法 |
CN102571609A (zh) * | 2012-03-01 | 2012-07-11 | 重庆中天重邮通信技术有限公司 | 快速串行接口pci-e协议数据完成包的重组排序方法 |
CN105281832A (zh) * | 2014-07-02 | 2016-01-27 | 北京邮电大学 | 一种紫外光网络中邻居发现方法 |
Non-Patent Citations (2)
Title |
---|
程光,周爱平,吴桦: "《互联网大数据挖掘与分类》", 31 December 2015 * |
陈乃塘: "深入探索PCI Express数据交易层(下)", 《电子测试》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111694777A (zh) * | 2019-03-11 | 2020-09-22 | 苏州微影激光技术有限公司 | 基于PCIe接口的DMA传输方法 |
CN111694777B (zh) * | 2019-03-11 | 2022-03-29 | 苏州微影激光技术有限公司 | 基于PCIe接口的DMA传输方法 |
CN111724262A (zh) * | 2020-06-24 | 2020-09-29 | 上海金仕达软件科技有限公司 | 一种应用服务器后续包查询***及其工作方法 |
CN111724262B (zh) * | 2020-06-24 | 2024-03-22 | 上海金仕达软件科技股份有限公司 | 一种应用服务器后续包查询***及其工作方法 |
CN114553776A (zh) * | 2022-02-28 | 2022-05-27 | 深圳市风云实业有限公司 | 一种信号乱序控制与速率自适应的传输装置及其传输方法 |
CN114553776B (zh) * | 2022-02-28 | 2023-10-10 | 深圳市风云实业有限公司 | 一种信号乱序控制与速率自适应的传输装置及其传输方法 |
CN117724833A (zh) * | 2023-12-06 | 2024-03-19 | 无锡众星微***技术有限公司 | 一种基于流属性的PCIe tag缓存自适应资源分配方法和装置 |
CN117724833B (zh) * | 2023-12-06 | 2024-05-28 | 无锡众星微***技术有限公司 | 一种基于流属性的PCIe tag缓存自适应资源分配方法和装置 |
CN118113230A (zh) * | 2024-04-23 | 2024-05-31 | 沐曦集成电路(上海)有限公司 | 一种基于地址重映射的读存储器数据的方法 |
CN118113230B (zh) * | 2024-04-23 | 2024-07-12 | 沐曦集成电路(上海)有限公司 | 一种基于地址重映射的读存储器数据的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106933775B (zh) | 数据处理***和数据处理的方法 | |
CN105681222A (zh) | 一种数据接收缓存方法、装置及通信*** | |
CN100481043C (zh) | 用于处理输入/输出命令的方法、***和程序 | |
CN114780458A (zh) | 数据处理的方法和存储*** | |
US7069373B2 (en) | USB endpoint controller flexible memory management | |
CN102147778B (zh) | 基于半双工串行总线的数据传输***及传输控制方法 | |
CN107783727B (zh) | 一种内存设备的访问方法、装置和*** | |
CN103631534B (zh) | 数据存储***以及其管理方法 | |
WO2023093334A1 (zh) | 用于执行原子操作的***、原子操作方法及装置 | |
CN111651396B (zh) | 一种优化的pcie完成包乱序管理电路实现方法 | |
US8589607B1 (en) | Methods and structure for hardware management of serial advanced technology attachment (SATA) DMA non-zero offsets in a serial attached SCSI (SAS) expander | |
CN113852533B (zh) | 一种多通道数据通信***、方法及电子设备 | |
CN104866432A (zh) | 具有绕回-至-连续读取的存储器子*** | |
CN112256624B (zh) | 用于高速互连网络接口芯片的dma通信装置、芯片、设备及方法 | |
CN107783927B (zh) | 用于连接axi接口和dma接口的电路转换***及方法 | |
CN107783909B (zh) | 一种内存地址总线扩展方法及装置 | |
CN1705929B (zh) | 用于将数据返回给通过总线接收的读请求的方法和*** | |
US7752355B2 (en) | Asynchronous packet based dual port link list header and data credit management structure | |
CN105721338A (zh) | 一种接收数据的处理方法及装置 | |
CN116009770A (zh) | 读响应电路、方法、数据传输***及相关设备 | |
CN111694777B (zh) | 基于PCIe接口的DMA传输方法 | |
CN105022707B (zh) | 接口单元装置 | |
CN106325377B (zh) | 外部设备扩展卡及输入输出外部设备的数据处理方法 | |
CN116756078B (zh) | pcie数据包的通知方法、装置及存储介质 | |
CN105528312B (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 | ||
CB02 | Change of applicant information |
Address after: 518057 Guangdong city of Shenzhen province Nanshan District high tech Industrial Park Road eight South South technology Howare Technology Building 16 Applicant after: Shenzhen Pango Microsystems Co., Ltd. Address before: 518057 Guangdong city of Shenzhen province Nanshan District high tech Industrial Park Road eight South South technology Howare Technology Building 16 Applicant before: SHENZHEN PANGO MICROSYSTEMS CO., LTD. |
|
COR | Change of bibliographic data | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160615 |