CN101304362A - 重传缓冲装置及传输数据的方法 - Google Patents

重传缓冲装置及传输数据的方法 Download PDF

Info

Publication number
CN101304362A
CN101304362A CNA200710040627XA CN200710040627A CN101304362A CN 101304362 A CN101304362 A CN 101304362A CN A200710040627X A CNA200710040627X A CN A200710040627XA CN 200710040627 A CN200710040627 A CN 200710040627A CN 101304362 A CN101304362 A CN 101304362A
Authority
CN
China
Prior art keywords
packet
index
data
read
unit
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
Application number
CNA200710040627XA
Other languages
English (en)
Other versions
CN101304362B (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.)
Semiconductor Manufacturing International Shanghai Corp
Original Assignee
Semiconductor Manufacturing International Shanghai 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 Semiconductor Manufacturing International Shanghai Corp filed Critical Semiconductor Manufacturing International Shanghai Corp
Priority to CN200710040627XA priority Critical patent/CN101304362B/zh
Publication of CN101304362A publication Critical patent/CN101304362A/zh
Application granted granted Critical
Publication of CN101304362B publication Critical patent/CN101304362B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

本发明重传缓冲装置通过增加索引缓冲单元对于每一个数据包的序列号和数据包中数据在主缓冲单元中的存储地址进行了存储,形成了对每一个数据包的索引,使得当数据传输出现错误需要重新发送数据包时,主缓冲单元的读指针能够很方便地根据数据包对应的索引从主缓冲单元的相应地址处读取数据。本发明重传缓冲装置还增加了次序调整控制单元来控制索引读指针控制单元调整数据包索引顺序,使得主缓冲单元的读指针能够很方便地根据新的数据包索引顺序从主缓冲单元中读取数据,代替了原有流量类别缓冲装置的功能,节省了面积,降低了功耗。

Description

重传缓冲装置及传输数据的方法
技术领域
本发明涉及高速外设部件互连的数据链路层中的重传缓冲装置及传输数据的方法。
背景技术
高速外设部件互连(PCI Express,Peripheral Component Interconnect)是一种芯片之间的互连技术以及一种板卡扩展的接口技术,与传统PCI以及更早期的计算机总线的共享并行架构相比,PCI Express采用设备间的点对点串行连接(serial interface)。如此一来即允许每个设备都有自己的专用连接,是独占的,并不需要向整个总线请求带宽,同时利用串行连接的特点将能轻松将数据传输速度提到一个很高的频率,达到远超出PCI总线的传输速率。单个基本的PCIExpress连接是一种单双单工连接,一个单独的基本的PCI Express串行连接就是两个独立的通过不同的低电压对驱动信号实现的连接,一个接收对和一个发送对(共四组线路)。不会和诸如USB 2.0、InfiniBand、Ethernet以及IEEE1394/1394b造成冲突。因此PCI Express界面传输速度比传统的PCI界面更快,具有设备之间的高速串行点对点传输和灵活可调的总线宽度等等优点。
PCI Express采用了类似于网络体系结构中OSI七层参考模型的分层体系结构设计方案,从下到上分别为物理层(Physical Layer)、数据链路层(Data LinkLayer)、事务处理层(Transaction Layer)和软件层(Software layer)。其配置采用在PCI即插即用规范中定义的标准机制,软件层产生的读写请求被事务处理层采用一种基于数据包的分离封装协议传送给各个I/O设备,数据链路层为这些包增加顺序号和CRC(Cyclic Redundancy Check)校验码以创造一个高度可靠的数据传输机制,物理层采用成对的单通道来实现数据的同步收发。事务处理层的主要工作是接收来自软件层的读写请求并构造发送到数据链路层的请求数据包(Request Packet),此外还有可能接收来自数据链路层的的回应数据包(Response Packet),并把它们还原为原来的软件请求。而数据链路层的首要任务就是确保数据包(Packet)可靠、正确的传输。
为保证数据的完整性,数据链路层会为每一个来自事务处理层的数据包增加顺序号和CRC校验码。大多数数据包是由事务处理层发出的,一个可靠的流控制协议确保数据包只能在接收端缓冲区可用的情况下才被发送,例如在PCI ExpressTM Base Specification Revision 1.0a中介绍了一种位于事务处理层的流量类别缓冲装置(Traffic class buffer),对于事务处理层发出的各种类型的数据包进行暂存,当一种类型的数据包接收端不可用时,会先暂停该类型数据包的发送,而改为先发送其他类型的数据包,避免了试图发送数据包的反复尝试并降低了总线带宽资源的损耗。
而如果收到了被损坏的数据包,数据链路层会自动重新发送。例如在PCIExpressTM Base Specification Revision 1.0a中介绍了一种位于数据链路层中的重传缓冲装置。该重传缓冲装置将进行传输的数据包暂时存储来进行备份,当数据传输正常的时候,重传缓冲装置会根据PCI Express的流控制将备份的数据发送给接收端。当数据传输过程出现错误的时候,事务处理层会根据PCIExpress的流控制停止接收新数据,而位于数据链路层的重传缓冲装置会从出错数据包处开始重新按序向接收端发送数据包。该重传缓冲装置的处理过程如下,通过数据包有效探测单元探测数据包,若数据包有效,探测单元会发出使能信号通知主缓冲写指针控制单元控制写指针将数据写入暂存数据的主缓冲单元。当数据包接收端发现所接收到的数据包有错时,会向数据链路层进行反馈报告出错的数据包的信息。该重传缓冲装置会根据该反馈信息寻找该数据包在暂存数据的缓冲单元中存储的位置,并由主缓冲读指针控制单元根据存储位置控制读指针从该位置开始重新读取暂存数据的缓冲单元中的数据,并向接收端发送。由于在此过程中,重传缓冲装置需要根据反馈信息去寻找出错数据包的暂存位置,比较麻烦,因此,重传缓冲装置重新发送数据的效率不高。而对于PCI Express来说完成上述的两种功能所需要的缓冲单元的面积较大,也因此增加了整个系统的功耗。
发明内容
本发明要解决的问题是现有技术中重传缓冲装置的重新发送数据效率不高。
本发明还解决的问题是现有技术中缓冲单元面积较大,增加了系统的功耗。
为解决上述问题,本发明提供一种位于数据链路层中的重传缓冲装置,包括数据包有效探测单元、主缓冲写指针控制单元、主缓冲读指针控制单元以及主缓冲单元,还包括,
数据包开始信号单元,用于当数据包有效探测单元探测到数据包中的包头时,产生并发送数据包的序列号,且向索引写指针控制单元传输数据包有效探测单元发送的使能信号;
索引写指针控制单元,用于当接收到数据包开始信号单元传输的使能信号时,将主缓冲写指针控制单元提供的数据包在主缓冲单元的存储地址和数据包开始信号单元发送的数据包的序列号写入索引缓冲单元的写入索引部分;
索引读指针控制单元,用于当从主缓冲单元读取数据包数据时,将索引缓冲单元的写入索引信息写到索引缓冲单元的读出索引部分,并根据读出索引地址将读出索引部分的读出索引信息读出;
索引缓冲单元,包括用于存储包括数据包序列号和数据包数据在主缓冲单元的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元的存储地址的读出索引信息的读出索引部分;
其中,主缓冲读指针控制单元根据读出索引信息控制读指针从主缓冲单元读取数据包数据。
相应地,本发明还提供了一种传输数据的方法,包括,
探测所接收的数据包的包头;
当探测到数据包的包头时,对数据包编制序列号,并将数据包中数据写入主缓冲单元存储,记录数据包中数据在主缓冲单元中的存储地址和数据包序列号作为该数据包的写入索引信息;
复制写入索引信息构成读出索引信息;
根据读出索引信息按序从主缓冲单元中读取各个数据包的数据发送至数据包接收端;
如果数据包接收端反馈数据包出错,则根据数据包接收端的反馈信息并结合读出索引信息从缓冲单元中重新读取数据包数据进行发送。
本发明还提供了另外一种位于数据链路层中的重传缓冲装置,包括数据包有效探测单元、主缓冲写指针控制单元、主缓冲读指针控制单元以及主缓冲单元,还包括,
数据包开始信号单元,用于当数据包有效探测单元探测到数据包中的包头时,产生并发送数据包的序列号,且向索引写指针控制单元传输数据包有效探测单元发送的使能信号;
索引写指针控制单元,用于当接收到数据包开始信号单元传输的使能信号时,将主缓冲写指针控制单元提供的数据包在主缓冲单元的存储地址和数据包开始信号单元产生的数据包的序列号写入索引缓冲单元的写入索引部分;
索引读指针控制单元,用于当从主缓冲单元读取数据包数据时,将索引缓冲单元的写入索引信息写到索引缓冲单元的读出索引部分,并且在数据包接收端不可用时,根据次序调整控制单元发送的控制信号调整读出索引部分的数据包索引顺序,并根据读出索引地址将读出索引部分的索引信息读出;
索引缓冲单元,包括用于存储包括数据包序列号和数据包数据在主缓冲单元的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元的存储地址的读出索引信息的读出索引部分;
次序调整控制单元,用于根据事务处理层发送的接收端缓冲区存储状况向索引读指针控制单元发送调整数据包索引顺序的控制信号;
其中,主缓冲读指针控制单元根据读出索引信息控制读指针从主缓冲单元读取数据包数据。
相应地,本发明还提供了一种传输数据的方法,包括,
探测所接收的数据包的包头;
当探测到数据包的包头时,对数据包编制序列号,并将数据包中数据写入主缓冲单元存储,记录数据包中数据在主缓冲单元中的存储地址和数据包序列号作为该数据包的写入索引信息;
复制写入索引信息构成读出索引信息;
根据读出索引信息按序从主缓冲单元中读取各个数据包的数据发送至数据包接收端;
如果数据包接收端反馈数据包接收端不可用时,则根据数据包接收端的反馈信息调整读出顺序,并结合读出索引信息按调整后的读出顺序从主缓冲单元中读取相应数据包数据进行发送。
本发明还提供了另外一种位于数据链路层中的重传缓冲装置,包括数据包有效探测单元、主缓冲写指针控制单元、主缓冲读指针控制单元以及主缓冲单元,其特征在于,还包括,
数据包开始信号单元,用于当数据包有效探测单元探测到数据包中的包头时,产生并发送数据包的序列号,且向索引写指针控制单元传输数据包有效探测单元发送的使能信号;
索引写指针控制单元,用于当接收到数据包开始信号单元传输的使能信号时,将主缓冲写指针控制单元提供的数据包在主缓冲单元的存储地址和数据包开始信号单元发送的数据包的序列号写入索引缓冲单元的写入索引部分;
索引读指针控制单元,用于当从主缓冲单元读取数据包数据时,将索引缓冲单元的写入索引信息写到索引缓冲单元的读出索引部分,并根据读出索引地址将读出索引部分的读出索引信息读出;并且在数据包接收端不可用时,根据次序调整控制单元发送的控制信号调整读出索引部分的数据包索引顺序,并根据读出索引地址结合索引顺序将读出索引部分的索引信息读出;
索引缓冲单元,包括用于存储包括数据包序列号和数据包数据在主缓冲单元的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元的存储地址的读出索引信息的读出索引部分;
次序调整控制单元,用于根据事务处理层发送的接收端缓冲区存储状况向索引读指针控制单元发送调整数据包索引顺序的控制信号;
其中,主缓冲读指针控制单元根据读出索引信息控制读指针从主缓冲单元读取数据包数据。
相应地,本发明还提供了一种传输数据的方法,包括,
探测所接收的数据包的包头;
当探测到数据包的包头时,对数据包编制序列号,并将数据包中数据写入主缓冲单元存储,记录数据包中数据在主缓冲单元中的存储地址和数据包序列号作为该数据包的写入索引信息;
复制写入索引信息构成读出索引信息;
根据读出索引信息按序从主缓冲单元中读取各个数据包的数据发送至数据包接收端;
如果数据包接收端反馈数据包出错,则根据数据包接收端的第一反馈信息并结合读出索引信息从主缓冲单元中重新读取数据包数据进行发送。
如果数据包接收端反馈数据包接收端不可用时,则根据数据包接收端的第二反馈信息调整读出顺序,并结合读出索引信息按调整后的读出顺序从主缓冲单元中读取相应数据包数据进行发送。
与现有技术相比,本发明重传缓冲装置具有以下优点:
1.本发明重传缓冲装置由于增加了索引缓冲单元对于每一个数据包的序列号和数据包中数据在主缓冲单元中的存储地址进行了存储,形成了对每一个数据包的索引,使得当数据传输出现错误需要重新发送数据包时,主缓冲单元的读指针能够很方便地根据数据包对应的索引从主缓冲单元的相应地址处读取数据,而不必寻找出错数据包的存储位置,因此提高了重新发送数据的效率。
2.本发明重传缓冲装置还增加了次序调整控制单元来控制索引读指针控制单元调整数据包索引顺序,使得主缓冲单元的读指针能够很方便地根据新的数据包索引顺序从主缓冲单元中读取数据,代替了原有流量类别缓冲装置的功能,使得本发明重传缓冲装置集合了现有技术中重传缓冲装置和流量类别缓冲装置的功能,因此节省了面积,降低了功耗。
附图说明
图1是本发明第一实施例重传缓冲装置结构图;
图2是本发明第二实施例重传缓冲装置结构图;
图3是本发明第三实施例重传缓冲装置结构图;
图4是本发明第一实施例、第二实施例和第三实施例索引缓冲单元功能示意图;
图5是本发明第二实施例和第三实施例索引缓冲单元调整索引顺序示意图。
具体实施方式
本发明重传缓冲装置通过索引缓冲单元对于每一个数据包的序列号和数据包中数据在主缓冲单元的存储地址进行存储,形成了对每一个数据包的索引,主缓冲单元的读指针能够很方便地根据数据包对应的索引从主缓冲单元的相应地址处读取数据。
本发明重传缓冲装置还通过次序调整控制单元来控制索引读指针控制单元调整数据包索引顺序,使得主缓冲单元的读指针能够很方便地根据新的数据包索引顺序从主缓冲单元中读取数据,代替了原有流量类别缓冲装置的功能。
实施例1,本发明实施例重传缓冲装置对于接收端发现数据包错误时,进行重新发送数据的操作。
参照图1所示,本发明实施例重传缓冲装置包括,
数据包有效探测单元1,用于探测发送至重传缓冲装置的事务处理层的数据包的开始信息(TLP Header,start symbol of transaction layer packet),当探测到TLP Header时,会分别向数据包开始信号单元2和写指针控制单元3发送使能信号;
主缓冲写指针控制单元3,当接收到使能信号时,将数据包中数据写入主缓冲单元8,并向索引写指针控制单元4提供数据包中数据在主缓冲单元8中的起始存储地址;
数据包开始信号单元2,用于产生并发送数据包的序列号,并向索引写指针控制单元4传输数据包有效探测单元1发出的使能信号;
索引写指针控制单元4,当接收到数据包开始信号单元2传输的使能信号时,将主缓冲写指针控制单元3提供的数据包在主缓冲单元8的存储地址和数据包开始信号单元2发送的数据包的序列号写入索引缓冲单元6的写入索引部分;
索引读指针控制单元5,用于当从主缓冲单元8中读取数据包数据时,将索引缓冲单元6的写入索引信息写到索引缓冲单元6的读出索引部分,并将读出索引部分的读出索引信息读出,并且当数据包出错时,根据读出索引地址将从出错数据包开始直到正在传输的数据包的相应读出索引信息读出;
索引缓冲单元6,包括用于存储包括数据包序列号和数据包数据在主缓冲单元8的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元8的存储地址的读出索引信息的读出索引部分;
主缓冲读指针控制单元7,根据读出索引信息控制读指针从主缓冲单元8中读取数据包数据,并反馈该数据包数据在主缓冲单元8中的结束存储地址;
主缓冲单元8,用于存储数据包中数据。
以数据从上至下的传输,并且连续传输六个数据包为例,当重传缓冲装置的数据包有效探测单元1接收到第一个数据包的时候,会先根据数据包中是否有TLP Header来判断数据包是否有效,如果没有探测到TLP Header,数据包有效探测单元1就指示重传缓冲装置不进行操作。如果探测到TLP Header的话,数据包有效探测单元1会分别向主缓冲写指针控制单元3和数据包开始信号单元2发送使能信号。主缓冲写指针控制单元3在接收到使能信号之后,会将数据包中的数据写入主缓冲单元8中进行数据存储,并向索引写指针控制单元4提供数据包中数据在主缓冲单元8中的起始存储地址。而数据包开始信号单元2在接受到使能信号之后,会产生数据包的序列号,并将使能信号和数据包的序列号传输给索引写指针控制单元4,通知索引写指针控制单元4按写入索引地址将数据包的序列号和数据包中数据在主缓冲单元8中的起始存储地址写入索引缓冲单元6的写入索引部分,作为第一个数据包的写入索引信息。其中,产生数据包的序列号其实就是给接收的数据包编号,如第一个数据包就是01、第二个数据包就是02,依此类推,第三个数据包至第六个数据包就是03至06,而写入索引地址其实就是写入索引信息在索引缓冲单元6中的存储地址。
同样地,当重传缓冲装置的数据包有效探测单元1接收到第二个和第三个数据包时,也会进行相同的操作。在主缓冲写指针控制单元3将数据包中数据写入主缓冲单元8之后,索引写指针控制单元4将数据包开始信号单元2产生的第二、第三个数据包的序列号02、03和第二、第三个数据包中数据在主缓冲单元8的起始存储地址写入索引缓冲单元6的写入索引部分。由于各个数据包中数据是一个接一个按序写入主缓冲单元8中的,而每当有一个新的数据包中数据被写入主缓冲单元8时,索引写指针控制单元4所提供的写入索引缓冲单元6的写入索引地址也会增加一。因此,在重传缓冲装置接受到连续六个数据包之后,不仅完成了向主缓冲单元8写入这六个数据包中数据的工作,也同时在索引缓冲单元6的写入索引部分建立了对于这六个数据包的写入索引信息,并且各个数据包的索引排列顺序如图4所示的那样,与数据包中数据在主缓冲单元8中的存储顺序是完全一致的。各个数据包的写入索引信息包括数据包的序列号和该数据包中数据在主缓冲单元8中的起始存储地址。由于数据是具有一定大小的,因此存储地址除了所述的起始存储地址,还包括结束存储地址。由于数据在主缓冲单元8中都是按照数据包来到的先后顺序一个接一个存储的,因此一个数据包的结束存储地址其实就是后一个数据包的起始存储地址减一,例如第一个数据包中数据的起始存储地址为0000,数据大小为12Byte,第二个数据包中数据的起始存储地址为0012,将该地址减一得到第一个数据包的结束存储地址0011,再减去第一个数据包中数据的起始存储地址加一得到12,正好与数据大小完全一致。因此,对于第一个数据包,它在索引缓冲单元6中的索引信息就包括该数据包的序列号01和该数据包在主缓冲单元8中的起始存储地址0000。
当需要读取主缓冲单元8中的数据向接收端发送时,例如读取第一个数据包至第四个数据包的数据时,索引读指针控制单元5将索引缓冲单元6的写入索引部分存储的第一个数据包至第四个数据包的索引信息中包含的数据包在主缓冲单元8中的起始存储地址写到索引缓冲单元6的读出索引部分,形成第一个数据包至第四个数据包的读出索引信息,并将这些读出索引信息从索引缓冲单元6中读出。其中,索引读指针控制单元5是按读出索引地址从索引缓冲单元6中将读出索引信息读出的,读出索引地址就是读出索引信息在索引缓冲单元6中的存储地址。当然,读出索引信息也可以如写入索引信息那样包括数据包的序列号,不过本实施例中为了节省索引缓冲6的面积,就只在读出索引部分存储数据包的起始存储地址了。如图4所示,读出索引信息中包含的各个数据包在主缓冲单元8中的起始存储地址也与数据包中数据在主缓冲单元8中的实际起始存储地址一致。而主缓冲读指针控制单元7就能够根据从索引缓冲单元6的读出索引部分读出的读出索引信息控制主缓冲读指针依次从主缓冲单元8中读取数据。另外,主缓冲读指针控制单元7每控制主缓冲读指针读取一个数据包中数据就会反馈该数据包在主缓冲单元8中的结束存储地址,如读取到第三个数据包,就会反馈第三个数据包的在主缓冲单元8中的结束存储地址。
在PCI Express中,一个数据包经过事务处理层、数据链路层和物理层发送到接收端的同时,接收端也会给予数据包是否出错的反馈。在数据传输正常的情况下,即PCI Express的流控制机制没有提供数据链路层数据包出错的反馈时,重传缓冲装置的主缓冲读指针控制单元7就会如上所述的根据索引缓冲单元6的读出索引部分的数据包索引排列顺序依次从主缓冲单元8中读取数据进行发送。如果接收端发现接收数据包的过程有错,如接收第二个数据包有错,会将第二个数据包错误的反馈通过流控制机制发送上来,事务处理层在接收到反馈信息后,会停止接收新数据,而位于数据链路层中的重传缓冲装置在接收到反馈之后会开始进行重新发送数据的操作。本发明实施例中,索引读指针控制单元5会根据数据包错误反馈信息提供的数据包的序列号和正在传输的数据包的序列号获得出错数据包的读出索引地址,并控制索引读指针根据读出索引地址从索引缓冲单元6中读取索引信息。
出错数据包的索引地址获得方法参照以下介绍,以已读取到第六个数据包为例,由于第六个数据包的序列号为06,而第二个数据包的序列号为02,所以在索引缓冲单元6的读出索引部分,第二个数据包的索引存储在当前最后一个索引信息(也就是第六个数据包的索引信息)往前4格的位置,由此得到了第二个数据包在索引缓冲单元6中的读出索引地址。此时,索引读指针控制单元5会根据读出索引地址控制索引读指针将第二个数据包的索引信息读出得到第二个数据包中的数据在主缓冲单元8中的起始存储地址。同理,第三个数据包的索引存储在当前最后一个索引信息往前3格的位置,由此得到了第三个数据包在索引缓冲单元6中的读出索引地址。索引读指针控制单元5会根据读出索引地址控制索引读指针将第三个数据包的索引信息读出得到第三个数据包中的数据在主缓冲单元8中的起始存储地址。
再根据之前关于结束存储地址的算法,将第三个数据包中数据的起始存储地址减一就能得到第二个数据包的结束存储地址。这样的话,主缓冲读指针控制单元7就能够根据第二个数据包的起始存储地址和结束存储地址从主缓冲单元8中读取第二个数据包中的数据进行重新发送。接下来,索引读指针控制单元5会按同样的方法得到第三个数据包的起始存储地址和结束存储地址,而主缓冲读指针控制单元7根据第三个数据包的起始存储地址和结束存储地址从主缓冲单元8中读取第三个数据包中的数据进行重新发送。该过程会一直持续,直到索引读指针控制单元5计算得到的数据包的结束存储地址和重新发送数据前主缓冲读指针控制单元7反馈的数据包的结束存储地址一致时,重传缓冲装置才会给事务处理层发送一个标志表示完成了重新发送数据的操作,可以开始接收新数据了。
从以上介绍可以看到,正是由于有了索引缓冲单元6来存储各数据包的索引信息,使得重传缓冲装置需要从某个数据包开始重新发送数据的操作可以很简单地通过调用索引缓冲单元6的读出索引部分的数据包索引信息来获得该数据包数据在主缓冲单元8中的存储地址,省却了繁琐的地址计算,提高了重新发送数据的效率。
实施例2,本发明实施例重传缓冲装置对于接收端缓冲区不可用时,进行调整数据发送顺序的操作。
在PCI Express中事务处理层使用基于信用的流控制机制(由事务处理层负责管理),可以保证接收设备有足够多的缓冲资源来接收发送设备传输来的数据大小和类型。如之前介绍得,PCI Express中的接收和发送是完全独立的,同一个设备是发送方,同时也是接收方,而流控制机制就是根据接收方的反馈来判断发送进程的,如事务处理层就是根据接收端的反馈来判断接收端缓冲区是否可用。事务处理层发送的事务处理层数据包(TLP,TransactionLayer Packet)主要完成PCI Express中定义的存储器事务、I/O事务、配置事务和消息事务。事务处理层数据包可分为3大类:其一是公告(Posted)类型,如存储器写和消息;其二是未公告(non-Posted)类型,如存储器读操作,配置写操作和配置读操作,端口写操作和端口读操作;其三是完成(Completion)类型,如写完成和读完成。
参照图2所示,本发明实施例的重传缓冲装置包括,
数据包有效探测单元10,用于探测发送至重传缓冲装置的事务处理层的数据包的开始信息(TLP Header,start symbol of transaction layer packet),当探测到TLP Header时,会分别向数据包开始信号单元20和写指针控制单元40发送使能信号;
主缓冲写指针控制单元40,当接收到使能信号时,将数据包中数据写入主缓冲单元90,并向索引写指针控制单元50提供数据包中数据在主缓冲单元90中的起始存储地址;
数据包开始信号单元20,用于产生并发送数据包的序列号,并向索引写指针控制单元50传输数据包有效探测单元10发出的使能信号;
索引写指针控制单元50,当接收到数据包开始信号单元20传输的使能信号时,将数据包开始信号单元20发送的数据包的序列号和主缓冲写指针控制单元40提供的数据包在主缓冲单元90中的起始存储地址写入索引缓冲单元70的写入索引部分;
次序调整控制单元30,用于根据事务处理层发送的接收端缓冲区存储状况向索引读指针控制单元60发送调整数据包索引顺序的控制信号;
索引读指针控制单元60,用于当从主缓冲单元90中读取数据包数据时,将索引缓冲单元70的写入索引信息写到索引缓冲单元70的读出索引部分,并根据次序调整控制单元30发送的控制信号调整读出索引部分的数据包索引顺序,并根据读出索引地址将读出索引部分的索引信息读出;
索引缓冲单元70,包括用于存储包括数据包序列号和数据包数据在主缓冲单元90的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元90的存储地址的读出索引信息的读出索引部分;
主缓冲读指针控制单元80,根据读出索引信息控制读指针从主缓冲单元90中读取数据包数据,并反馈该数据包数据在主缓冲单元90中的结束存储地址;
主缓冲单元90,用于存储数据包中数据。
一般来说,事务处理层发送的数据包的类型有公告类型、未公告类型和完成类型三种。举例来说,假设重传缓冲装置接收的连续六个事务处理层数据包的类型分别为公告类型、未公告类型、公告类型、公告类型、完成类型和完成类型。当重传缓冲装置的数据包有效探测单元10接收到第一个数据包的时候,会先根据数据包中是否有TLP Header来判断数据包是否有效,如果数据包中没有TLP Header的话,数据包有效探测单元10就指示重传缓冲装置不进行工作。如果数据包中有TLP Header的话,数据包有效探测单元10会分别向主缓冲写指针控制单元40和数据包开始信号单元20发送使能信号。主缓冲写指针控制单元40在接收到使能信号之后,会将数据包中的数据写入主缓冲单元90中进行数据存储,并向索引写指针控制单元50提供数据包中数据在主缓冲单元90中的起始存储地址。而数据包开始信号单元20在接受到使能信号之后,会产生数据包的序列号,并将使能信号和数据包的序列号传输给索引写指针控制单元50,通知索引写指针控制单元50将数据包的序列号和数据包中数据在主缓冲单元90中的起始存储地址按写入索引地址写入索引缓冲单元70的写入索引部分形成写入索引信息。其中,数据包的序列号和写入索引地址均与实施例1中的定义相同,数据包序列号就是所接收的数据包的编号,而写入索引地址就是写入索引信息在索引缓冲单元70中的存储地址。
同样地,当重传缓冲装置接收到第二个、第三个和第四个数据包时,也会进行相同的操作,在主缓冲写指针控制单元40将数据包中数据写入主缓冲单元90的同时,索引写指针控制单元50将数据包的序列号和数据包中数据在主缓冲单元90的起始存储地址写入索引缓冲单元70的写入索引部分。由于各个数据包中数据是一个接一个按序写入主缓冲单元90中的,而每当有一个新的数据包中数据被写入主缓冲单元90时,索引写指针控制单元50所提供的写入索引缓冲单元70的写入索引地址也会增加一。因此,在重传缓冲装置接受到连续六个数据包之后,不仅完成了向主缓冲单元90写入这六个数据包中数据的工作,也同时在索引缓冲单元70的写入索引部分建立了对于这六个数据包的写入索引信息,如图4所示的那样,并且各个数据包的索引排列顺序与数据包中数据在主缓冲单元90中的存储顺序是完全一致的。对于存储在索引缓冲单元70中的各个数据包的索引来说,每项索引信息包括数据包的序列号和该数据包的数据在主缓冲单元90中的起始存储地址。由于数据是具有一定大小的,因此存储地址除了所述的起始存储地址,还包括结束存储地址。
当需要读取主缓冲单元90中的数据向接收端发送时,例如读取第一个数据包至第六个数据包的数据时,索引读指针控制单元60将索引缓冲单元70的写入索引部分存储的第一个数据包至第六个数据包的索引信息写到索引缓冲单元70的读出索引部分,形成第一个数据包至第六个数据包的读出索引信息。其中,索引读指针控制单元60是根据读出索引地址从索引缓冲单元70中将读出索引信息读出的。读出索引信息可以与写入索引信息一样包括数据包的序列号和数据包中数据在主缓冲单元90中的起始存储地址,也可以仅仅有起始存储地址,以节省索引缓冲单元70的面积。如图4所示,读出索引信息中包含的各个数据包在主缓冲单元90中的起始存储地址也与数据包中数据在主缓冲单元90中的实际起始存储地址一致。而主缓冲读指针控制单元80就能够根据索引缓冲单元70的读出索引部分的各个数据包的索引排列顺序控制主缓冲读指针依次从主缓冲单元90中读取数据。另外,主缓冲读指针控制单元80每控制主缓冲读指针读取一个数据包中数据就会反馈该数据包中数据在主缓冲单元90中的结束存储地址,如读取到第三个数据包,就会反馈一个第三个数据包的结束存储地址。
根据之前的介绍,事务处理层根据接收端缓冲区的反馈来得知接收端缓冲区的寄存器状态。当接收端的缓冲区可用时,主缓冲读指针控制单元80就会如上所述的根据索引缓冲单元70的读出索引部分的数据包索引排列顺序依次从主缓冲单元90中读取数据进行发送。如果接收端的缓冲区不可用,例如未公告类数据包的接收端缓冲区寄存器已满,接收端就会将这个信息反馈给事务处理层。而事务处理层在获知这个反馈之后,会通知重传缓冲装置未公告类数据包的接收端缓冲区已满。重传缓冲装置此时就会进行调整数据包中数据读出顺序的操作,以防止该类型数据包无法被接收端接收而出现试图发送数据包的反复尝试,占用总线带宽资源。
本实施例中,次序调整控制单元30会发送调整数据包索引顺序的控制信号指示索引读指针控制单元60将控制读指针跳过索引缓冲单元70的读出索引部分中第二个数据包的索引信息,而改为读取第三个数据包的索引。如图5所示,实际操作就是索引读指针控制单元60将索引缓冲单元70的写入索引部分的第三个数据包的索引信息写入读出索引部分的第二个位置,而将写入索引部分的第二个数据包的索引信息写入读出索引部分的第三个位置。并且索引读指针控制单元60会将第三个数据包的索引信息读出,而主缓冲读指针控制单元80会根据读出的索引信息中包含的第三个数据包中数据的起始存储地址从主缓冲单元90中读取第三个数据包中数据。由此,该操作其实就是暂停第二个数据包的读取发送,而改为读取发送第三个数据包中数据。当第三个数据包中数据读取发送完成后,如果未公告类数据包的接收端缓冲区寄存器还是处于写满状态,那么次序调整控制单元30会继续会发送控制信号指示索引读指针控制单元60将写入索引部分的第四个数据包的索引信息写到读出索引部分的第三个位置,并将该索引信息读出。而主缓冲读指针控制单元80会根据读出的索引信息中包含的第四个数据包中数据的起始存储地址从主缓冲单元9中读取第四个数据包中数据。以此类推,直到未公告类数据包的接收端缓冲区寄存器重新可用了,次序调整控制单元30才会发送控制信号指示索引读指针控制单元60读取第二个数据包的索引信息。所以,无论是哪种类型的数据包接收端缓冲区不可用,次序调整控制单元30都会通过控制索引读指针控制单元60来达到改变数据包读出顺序的目的。至此,重传缓冲装置才算完成了调整数据读出顺序的操作。
通过对于该操作的介绍可以看到,正是由于有了索引缓冲单元70来存储各数据包的索引信息,使得重传缓冲装置调整数据读出顺序的时候可以很简单地通过调整索引缓冲单元70中数据包的索引排列顺序来达到目的,省却了繁琐的地址计算,提高了当某一类型的数据包接收端不可用时,调整数据发送顺序的效率。
实施例3,参照图3所示,本发明实施例重传缓冲装置包括,
数据包有效探测单元100,用于探测发送至重传缓冲装置的事务处理层的数据包的开始信息(TLP Header,start symbol of transaction layer packet),当探测到TLP Header时,会分别向数据包开始信号单元200和写指针控制单元400发送使能信号;
主缓冲写指针控制单元400,当接收到使能信号时,将数据包中数据写入主缓冲单元900,并向索引写指针控制单元500提供数据包中数据在主缓冲单元900中的起始存储地址;
数据包开始信号单元200,用于产生并发送数据包的序列号,并向索引写指针控制单元500传输数据包有效探测单元100发出的使能信号;
索引写指针控制单元500,当接收到数据包开始信号单元200传输的使能信号时,将数据包开始信号单元200发送的数据包的序列号和主缓冲写指针控制单元400提供的数据包在主缓冲单元900中的起始存储地址写入索引缓冲单元700的写入索引部分;
次序调整控制单元300,用于根据事务处理层发送的接收端缓冲区存储状况向索引读指针控制单元600发送调整数据包索引顺序的控制信号;
索引读指针控制单元600,用于当从主缓冲单元900读取数据包数据时,将索引缓冲单元700的写入索引信息写到索引缓冲单元700的读出索引部分,并且在数据包接收端不可用时,根据次序调整控制单元300发送的控制信号调整读出索引部分的数据包索引顺序,并根据读出索引地址将读出索引部分的索引信息读出;
索引缓冲单元700,包括用于存储包括数据包序列号和数据包数据在主缓冲单元900的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元900的存储地址的读出索引信息的读出索引部分;
主缓冲读指针控制单元800,根据读出索引信息控制读指针从主缓冲单元900中读取数据包数据,并反馈该数据包数据在主缓冲单元900中的结束存储地址;
主缓冲单元900,用于存储数据包中数据。
参照实施例1和实施例2,本发明实施例3其实是集合了实施例1和实施例2所述的重传缓冲装置的功能。
当数据包接收端反馈数据包出错时,索引读指针控制单元600会根据数据包错误反馈信息提供的数据包的序列号和正在传输的数据包的序列号获得出错数据包的读出索引地址,并控制索引读指针根据读出索引地址从索引缓冲单元700中将出错数据包的读出索引信息读出。而主缓冲读指针控制单元800则会根据读出索引信息中的出错数据包在主缓冲单元900中的存储地址从主缓冲单元900读取出错数据包的数据进行重新发送。
而当某一类型的数据包接收端不可用时,次序调整控制单元300就会根据接收端的反馈控制索引读指针控制单元600调整索引缓冲单元700中读出索引部分的数据包索引顺序,并根据新的数据包索引顺序按读出索引地址将读出索引部分的索引信息读出来调整发送数据的类型。
综上所述,本发明重传缓冲装置由于增加了索引缓冲单元对于每一个数据包的序列号和数据包中数据在主缓冲单元中的存储地址进行了存储,形成了对每一个数据包的索引,使得当数据传输出现错误需要重新发送数据包时,主缓冲单元的读指针能够很方便地根据数据包对应的索引从主缓冲单元的相应地址处读取数据。本发明重传缓冲装置还增加了次序调整控制单元来控制索引读指针控制单元调整数据包索引顺序,使得主缓冲单元的读指针能够很方便地根据新的数据包索引顺序从主缓冲单元中读取数据,代替了原有流量类别缓冲装置的功能,节省了面积,降低了功耗。

Claims (26)

1.一种重传缓冲装置,包括数据包有效探测单元、主缓冲写指针控制单元、主缓冲读指针控制单元以及主缓冲单元,其特征在于,还包括,
数据包开始信号单元,用于当数据包有效探测单元探测到数据包中的包头时,产生并发送数据包的序列号,且向索引写指针控制单元传输数据包有效探测单元发送的使能信号;
索引写指针控制单元,用于当接收到数据包开始信号单元传输的使能信号时,将主缓冲写指针控制单元提供的数据包在主缓冲单元的存储地址和数据包开始信号单元发送的数据包的序列号写入索引缓冲单元的写入索引部分;
索引读指针控制单元,用于当从主缓冲单元读取数据包数据时,将索引缓冲单元的写入索引信息写到索引缓冲单元的读出索引部分,并根据读出索引地址将读出索引部分的读出索引信息读出;
索引缓冲单元,包括用于存储包括数据包序列号和数据包数据在主缓冲单元的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元的存储地址的读出索引信息的读出索引部分;
其中,主缓冲读指针控制单元根据读出索引信息控制读指针从主缓冲单元读取数据包数据。
2.如权利要求1所述的重传缓冲装置,其特征在于,所述读出索引信息还包括有数据包序列号。
3.如权利要求1或2所述的重传缓冲装置,其特征在于,所述存储地址是数据在主缓冲单元中的起始存储地址。
4.如权利要求1所述的重传缓冲装置,其特征在于,所述索引地址是索引信息在索引缓冲单元中的存储地址,包括与写入索引信息对应的写入索引地址和与读出索引信息对应的读出索引地址。
5.一种传输数据的方法,其特征在于,包括,
探测所接收的数据包的包头;
当探测到数据包的包头时,对数据包编制序列号,并将数据包中数据写入主缓冲单元存储,记录数据包中数据在主缓冲单元中的存储地址和数据包序列号作为该数据包的写入索引信息;
复制写入索引信息构成读出索引信息;
根据读出索引信息按序从主缓冲单元中读取各个数据包的数据发送至数据包接收端;
如果数据包接收端反馈数据包出错,则根据数据包接收端的反馈信息并结合读出索引信息从主缓冲单元中重新读取数据包数据进行发送。
6.如权利要求5所述的传输数据的方法,其特征在于,所述存储地址为数据包中数据在缓冲单元中的起始存储地址。
7.如权利要求5所述的传输数据的方法,其特征在于,所述反馈信息为出错数据包的序列号。
8.如权利要求7所述的传输数据的方法,其特征在于,如果数据包接收端反馈数据包出错,则根据数据包接收端反馈的出错数据包的序列号得到该数据包对应的读出索引信息,并根据正在传输的数据包对应的读出索引信息和出错数据包对应的读出索引信息从主缓冲单元中读取从出错数据包至正在传输的数据包的数据进行发送。
9.一种重传缓冲装置,包括数据包有效探测单元、主缓冲写指针控制单元、主缓冲读指针控制单元以及主缓冲单元,其特征在于,还包括,
数据包开始信号单元,用于当数据包有效探测单元探测到数据包中的包头时,产生并发送数据包的序列号,且向索引写指针控制单元传输数据包有效探测单元发送的使能信号;
索引写指针控制单元,用于当接收到数据包开始信号单元传输的使能信号时,将主缓冲写指针控制单元提供的数据包在主缓冲单元的存储地址和数据包开始信号单元产生的数据包的序列号写入索引缓冲单元的写入索引部分;
索引读指针控制单元,用于当从主缓冲单元读取数据包数据时,将索引缓冲单元的写入索引信息写到索引缓冲单元的读出索引部分,并且在数据包接收端不可用时,根据次序调整控制单元发送的控制信号调整读出索引部分的数据包索引顺序,并根据读出索引地址结合索引顺序将读出索引部分的索引信息读出;
索引缓冲单元,包括用于存储包括数据包序列号和数据包数据在主缓冲单元的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元的存储地址的读出索引信息的读出索引部分;
次序调整控制单元,用于根据事务处理层发送的接收端缓冲区存储状况向索引读指针控制单元发送调整数据包索引顺序的控制信号;
其中,主缓冲读指针控制单元根据读出索引信息控制读指针从主缓冲单元读取数据包数据。
10.如权利要求9所述的重传缓冲装置,其特征在于,所述读出索引信息还包括数据包序列号。
11.如权利要求9或10所述的重传缓冲装置,其特征在于,所述存储地址是数据在主缓冲单元中的起始存储地址。
12.如权利要求9所述的重传缓冲装置,其特征在于,所述索引地址是索引信息在索引缓冲单元中的存储地址,包括与写入索引信息对应的写入索引地址和与读出索引信息对应的读出索引地址。
13.一种传输数据的方法,其特征在于,包括,
探测所接收的数据包的包头;
当探测到数据包的包头时,对数据包编制序列号,并将数据包中数据写入主缓冲单元存储,记录数据包中数据在主缓冲单元中的存储地址和数据包序列号作为该数据包的写入索引信息;
复制写入索引信息构成读出索引信息;
根据读出索引信息按序从主缓冲单元中读取各个数据包的数据发送至数据包接收端;
如果数据包接收端反馈数据包接收端不可用时,则根据数据包接收端的反馈信息调整读出顺序,并结合读出索引信息按调整后的读出顺序从主缓冲单元中读取相应数据包数据进行发送。
14.如权利要求13所述的传输数据的方法,其特征在于,所述存储地址为数据包中数据在缓冲单元中的起始存储地址。
15.如权利要求13所述的传输数据的方法,其特征在于,所述反馈信息为接收端不可用的数据包类型。
16.如权利要求15所述的传输数据的方法,其特征在于,如果数据包接收端反馈数据包接收端不可用时,则暂停读取数据包接收端反馈的数据包类型,而改为读取读出索引中后续的数据包类型来调整读出顺序。
17.一种重传缓冲装置,包括数据包有效探测单元、主缓冲写指针控制单元、主缓冲读指针控制单元以及主缓冲单元,其特征在于,还包括,
数据包开始信号单元,用于当数据包有效探测单元探测到数据包中的包头时,产生并发送数据包的序列号,且向索引写指针控制单元传输数据包有效探测单元发送的使能信号;
索引写指针控制单元,用于当接收到数据包开始信号单元传输的使能信号时,将主缓冲写指针控制单元提供的数据包在主缓冲单元的存储地址和数据包开始信号单元发送的数据包的序列号写入索引缓冲单元的写入索引部分;
索引读指针控制单元,用于当从主缓冲单元读取数据包数据时,将索引缓冲单元的写入索引信息写到索引缓冲单元的读出索引部分,并根据读出索引地址将读出索引部分的读出索引信息读出,并且在数据包接收端不可用时,根据次序调整控制单元发送的控制信号调整读出索引部分的数据包索引顺序,并根据读出索引地址结合索引顺序将读出索引部分的索引信息读出;
索引缓冲单元,包括用于存储包括数据包序列号和数据包数据在主缓冲单元的存储地址在内的写入索引信息的写入索引部分和用于存储数据包数据在主缓冲单元的存储地址的读出索引信息的读出索引部分;
次序调整控制单元,用于根据事务处理层发送的接收端缓冲区存储状况向索引读指针控制单元发送调整数据包索引顺序的控制信号;
其中,主缓冲读指针控制单元根据读出索引信息控制读指针从主缓冲单元读取数据包数据。
18.如权利要求17所述的重传缓冲装置,其特征在于,所述读出索引信息还包括数据包序列号。
19.如权利要求17或18所述的重传缓冲装置,其特征在于,所述存储地址是数据在主缓冲单元中的起始存储地址。
20.如权利要求17所述的重传缓冲装置,其特征在于,所述索引地址是索引信息在索引缓冲单元中的存储地址,包括与写入索引信息对应的写入索引地址和与读出索引信息对应的读出索引地址。
21.一种传输数据的方法,其特征在于,包括,
探测所接收的数据包的包头;
当探测到数据包的包头时,对数据包编制序列号,并将数据包中数据写入主缓冲单元存储,记录数据包中数据在主缓冲单元中的存储地址和数据包序列号作为该数据包的写入索引信息;
复制写入索引信息构成读出索引信息;
根据读出索引信息按序从主缓冲单元中读取各个数据包的数据发送至数据包接收端;
如果数据包接收端反馈数据包出错,则根据数据包接收端的第一反馈信息并结合读出索引信息从主缓冲单元中重新读取数据包数据进行发送。
如果数据包接收端反馈数据包接收端不可用时,则根据数据包接收端的第二反馈信息调整读出顺序,并结合读出索引信息按调整后的读出顺序从主缓冲单元中读取相应数据包数据进行发送。
22.如权利要求21所述的传输数据的方法,其特征在于,所述存储地址为数据包中数据在缓冲单元中的起始存储地址。
23.如权利要求21所述的传输数据的方法,其特征在于,所述第一反馈信息为出错数据包的序列号。
24.如权利要求23所述的传输数据的方法,其特征在于,如果数据包接收端反馈数据包出错,则根据数据包接收端反馈的出错数据包的序列号得到该数据包对应的读出索引信息,并根据正在传输的数据包对应的读出索引信息和出错数据包对应的读出索引信息从主缓冲单元中读取从出错数据包至正在传输的数据包的数据进行发送。
25.如权利要求21所述的传输数据的方法,其特征在于,所述第二反馈信息为接收端不可用的数据包类型。
26.如权利要求25所述的传输数据的方法,其特征在于,如果数据包接收端反馈数据包接收端不可用时,则暂停读取数据包接收端反馈的数据包类型,而改为读取读出索引中后续的数据包类型来调整读出顺序。
CN200710040627XA 2007-05-11 2007-05-11 重传缓冲装置及传输数据的方法 Active CN101304362B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710040627XA CN101304362B (zh) 2007-05-11 2007-05-11 重传缓冲装置及传输数据的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710040627XA CN101304362B (zh) 2007-05-11 2007-05-11 重传缓冲装置及传输数据的方法

Publications (2)

Publication Number Publication Date
CN101304362A true CN101304362A (zh) 2008-11-12
CN101304362B CN101304362B (zh) 2011-05-11

Family

ID=40114081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710040627XA Active CN101304362B (zh) 2007-05-11 2007-05-11 重传缓冲装置及传输数据的方法

Country Status (1)

Country Link
CN (1) CN101304362B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102916790A (zh) * 2012-08-30 2013-02-06 招商银行股份有限公司 智能卡个人化的差错处理方法、控制器及系统
CN103001733A (zh) * 2010-11-24 2013-03-27 钰创科技股份有限公司 一种提升传输数据包的效率的方法与装置
CN103974289A (zh) * 2014-05-27 2014-08-06 上海斐讯数据通信技术有限公司 一种移动设备测试系统的线损自动点检方法及其系统
CN104767589A (zh) * 2015-03-12 2015-07-08 新浪网技术(中国)有限公司 一种信息发送方法及装置
CN106330764A (zh) * 2016-08-15 2017-01-11 北京蓝海讯通科技股份有限公司 管理数据缓冲的方法、应用及计算设备
CN110572531A (zh) * 2019-09-19 2019-12-13 军事科学院系统工程研究院网络信息研究所 一种基于卫星移动通信的传真系统和方法
CN115567510A (zh) * 2022-09-13 2023-01-03 中国电子科技集团公司第十研究所 一种提高在轨文件上注有效性的方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6996820B1 (en) * 1999-04-05 2006-02-07 Cisco Technology, Inc. Efficient multiple priority list memory system
FR2823935B1 (fr) * 2001-04-24 2003-08-08 Thomson Csf Procede de gestion d'une liste de paquets en attente de reemission dans un port de sortie d'un commutateur de paquets
CN100499566C (zh) * 2004-06-25 2009-06-10 中兴通讯股份有限公司 采用指针技术存储数据包的方法
JP4497299B2 (ja) * 2004-07-01 2010-07-07 日本電気株式会社 移動無線通信端末装置
CN100372317C (zh) * 2005-05-13 2008-02-27 清华大学 10g网络性能测试仪流量接收、抓取和统计电路组件

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103001733A (zh) * 2010-11-24 2013-03-27 钰创科技股份有限公司 一种提升传输数据包的效率的方法与装置
CN103001733B (zh) * 2010-11-24 2015-08-12 钰创科技股份有限公司 一种提升传输数据包的效率的方法
CN102916790B (zh) * 2012-08-30 2015-12-02 招商银行股份有限公司 智能卡个人化的差错处理方法、控制器及系统
CN102916790A (zh) * 2012-08-30 2013-02-06 招商银行股份有限公司 智能卡个人化的差错处理方法、控制器及系统
CN103974289A (zh) * 2014-05-27 2014-08-06 上海斐讯数据通信技术有限公司 一种移动设备测试系统的线损自动点检方法及其系统
CN103974289B (zh) * 2014-05-27 2018-01-16 上海斐讯数据通信技术有限公司 一种移动设备测试系统的线损自动点检方法及其系统
CN104767589B (zh) * 2015-03-12 2018-08-14 新浪网技术(中国)有限公司 一种信息发送方法及装置
CN104767589A (zh) * 2015-03-12 2015-07-08 新浪网技术(中国)有限公司 一种信息发送方法及装置
CN106330764A (zh) * 2016-08-15 2017-01-11 北京蓝海讯通科技股份有限公司 管理数据缓冲的方法、应用及计算设备
CN106330764B (zh) * 2016-08-15 2019-11-15 北京蓝海讯通科技股份有限公司 管理数据缓冲的方法、应用及计算设备
CN110572531A (zh) * 2019-09-19 2019-12-13 军事科学院系统工程研究院网络信息研究所 一种基于卫星移动通信的传真系统和方法
CN115567510A (zh) * 2022-09-13 2023-01-03 中国电子科技集团公司第十研究所 一种提高在轨文件上注有效性的方法
CN115567510B (zh) * 2022-09-13 2024-04-26 中国电子科技集团公司第十研究所 一种提高在轨文件上注有效性的方法

Also Published As

Publication number Publication date
CN101304362B (zh) 2011-05-11

Similar Documents

Publication Publication Date Title
CN101304362B (zh) 重传缓冲装置及传输数据的方法
US5247626A (en) Fddi controller having flexible buffer management
US4590467A (en) Local area network interface controller
CA2103895C (en) Method and apparatus for controlling data communication operations within stations of a local area network
US4542380A (en) Method and apparatus for graceful preemption on a digital communications link
EP0076880A1 (en) A local area contention network data communication system
US6347097B1 (en) Method and apparatus for buffering received data from a serial bus
US4642630A (en) Method and apparatus for bus contention resolution
CN101788972A (zh) 一种数据传输的系统与方法
US4593281A (en) Local area network interframe delay controller
EP0496177A1 (en) Method of transmitting data by buffer chaining between a host computer and a communication controller
WO2001018661A1 (en) Software interface between a parallel bus and a packet network
CN103401707A (zh) 链路聚合方法及接入设备
US7484028B2 (en) Burst-capable bus bridges for coupling devices to interface buses
US7334061B2 (en) Burst-capable interface buses for device-to-device communications
CN1095134C (zh) 使用系统总线控制器的模块间通信的设备和方法
CN110995625B (zh) 以太网接口芯片的验证系统和验证方法
WO1988008167A1 (en) Parallel networking architecture
CN107222379A (zh) 一种串口通信的方法和装置
US4612541A (en) Data transmission system having high-speed transmission procedures
RU175049U1 (ru) УСТРОЙСТВО КОММУНИКАЦИОННЫХ ИНТЕРФЕЙСОВ SpaceWire
KR970007257B1 (ko) 패킷 전송 시스템과, 데이타 버스 및 전용 제어라인 모두를 활용하는 방법
US7447826B2 (en) Receive buffer in a data storage system
US5592621A (en) System for inserting first transmission token into data stream appended to second transmission token to facilitate full duplex communication between central controller and other controllers
Mohor Ethernet IP core design document

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