CN101562559A - 一种串行Rapid IO链路数据传输的方法及装置 - Google Patents

一种串行Rapid IO链路数据传输的方法及装置 Download PDF

Info

Publication number
CN101562559A
CN101562559A CNA200810104098XA CN200810104098A CN101562559A CN 101562559 A CN101562559 A CN 101562559A CN A200810104098X A CNA200810104098X A CN A200810104098XA CN 200810104098 A CN200810104098 A CN 200810104098A CN 101562559 A CN101562559 A CN 101562559A
Authority
CN
China
Prior art keywords
data
buffering area
data transmission
type
transfer request
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
CNA200810104098XA
Other languages
English (en)
Other versions
CN101562559B (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.)
Datang Mobile Communications Equipment Co Ltd
Datang Telecom Technology Co Ltd
Original Assignee
Datang Mobile Communications Equipment 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 Datang Mobile Communications Equipment Co Ltd filed Critical Datang Mobile Communications Equipment Co Ltd
Priority to CN200810104098XA priority Critical patent/CN101562559B/zh
Publication of CN101562559A publication Critical patent/CN101562559A/zh
Application granted granted Critical
Publication of CN101562559B publication Critical patent/CN101562559B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种串行Rapid IO链路数据传输的方法,该方法包括,接收端接收到发送端发送的数据传输请求,所述数据传输请求中包括数据传输类型信息,根据所述数据传输类型分配接收缓冲区,采用所述接收缓冲区接收发送端发送的数据,所述数据传输类型包括写类型,或读类型。本发明还公开了一种串行快速IO链路数据传输的装置。本发明数据传输采用信件邮箱的传输机制,数据传输的类型可以选择,根据信件的记录的基本信息进行数据接收缓冲区的动态分配,并且在数据处理完成后释放缓冲区,因此采用本发明提供的sRIO链路数据传输的方法可以提高数据传输速度的问题,以及使处理器中缓冲区设计、维护简单,同时使负荷可以动态分配。

Description

一种串行Rapid IO链路数据传输的方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种串行Rapid IO链路数据传输的方法及装置。
背景技术
Rapid IO是近年来发展迅速的一种新型的高速数据互联总线。串行RapidIO(Serial Rapid IO,sRIO)由于使用更少的连线就可以达到10G的数据传输率,目前正被广泛使用于通信基础设施的芯片间、板间高速互联。
而sRIO链路数据传输是点到点的数据传输,存在一点对多点或者多点对一点的并发传输,不能将数据传输中通常使用的循环缓冲区,或者单一的乒乓缓冲区来实现对所有链路接收数据的缓冲,否者可能造成数据的覆盖。因此,每一个点到点的数据传输链路都需要接收端处理器以写(write)的方式预先分配该处理器的接收缓冲区,或者发送端处理器以读(read)的方式预先分配发送缓冲区,上述数据传输方法称为预先分配专用缓冲区的数据传输方法。
现针对预先分配接收缓冲区以write的方式为例,描述现有技术中数据传输机制,如图1所示,数据传输的处理过程如图2所示,包括:
步骤201、处理器A分配发送缓冲区,可以采用专用的缓冲区,也可以采用malloc的内存池;
步骤202、处理器A将待发送数据填写到发送缓冲区中,数据填写完毕后调用数据发送函数;
步骤203、数据发送函数启动sRIO的DMA传输通过sRIO的物理链路将数据搬移到处理器B预留的接收缓冲区中;
步骤204、数据传输完成后处理器A向处理器B发送门铃(doorbell)中断,通知处理器B数据传输完成。
以上是现有技术sRIO链路中数据传输的过程,将以上系统进行扩展,当再添加一个处理器,并且各处理器之间都有数据传输链路设计,这样每个处理器都需要增加一个对端处理器的发送缓冲区,或者在对端处理器上增加一个接收缓冲区。当N个器件组成的sRIO网络,如果每两个器件之间都可能存在链路,这样每个处理器都需要预留N-1个接收缓冲区或者发送缓冲区。
可见采用现有技术,缓冲区数量太多,造成内存使用的浪费。因为每一条链路的接收或者发送缓冲区的大小都预留为最大可能接收到的负荷的大小,开辟了大量的内存作为预留的缓冲区。而在数据传输的时候,从统计上来看,所有链路同时使用缓冲区的概率很小。因此,大部分的预留缓冲区在大多数的情况下都处于闲置状态,造成内存使用的浪费。
同时,缓冲区地址映射表的存在要求各个处理器对缓冲区的规划关联性较高。因为发送端在发送数据的时候需要提前知道对端处理器缓冲区的地址,所以每一个处理器都会保存一张表格记录与其通信的处理器的缓冲区地址,称为缓冲区地址映射表。由于各个处理器上分布着不同的程序,对所有的处理器的缓冲区需要一个总的规划,来描述每一条链路在各个处理器上分布情况,通常在相应的接口文档中约定,当一个处理器的内存规划改变的时候就要求所有其他的处理器修改对应该处理器的缓冲区地址映射表。
并且,缓冲区的调整维护困难。一旦缓冲区的规划确定,如果需要重新调整内存规划,则所有的处理器都需要修改对应于该处理器的内存映射表,可谓牵一发而动全身。内存分布的调整操作复杂。
而且,发送端或者接收端的负载分配分配方式固定。对于预先分配缓冲区的数据传输方法,可以通过预先分配发送缓冲区,对端处理器通过读的方式将数据传输的负荷配置到接收端,或者由接收端预先分配接收缓冲区,发送端通过write的方式发送数据实现将数据传输负载配置到发送端。但是一旦缓冲区分配规划完成后,负载分配的方式就固定了。
发明内容
本发明实施例提供一种sRIO链路数据传输的方法及装置,用以解决现有技术sRIO链路中每个处理器分配的接收缓冲区数量多,占用内存大影响数据传输速度的问题,以及处理器中缓冲区设计关联性高,维护困难的问题,同时可解决现有技术中缓冲区规划完成后,负荷分配单一的问题。
本发明实施例提供的一种sRIO链路数据传输的方法,包括:
接收端接收到发送端发送的数据传输请求,所述数据传输请求中包括数据传输类型信息,根据所述数据传输类型信息分配接收缓冲区,采用所述接收缓冲区接收所述发送端发送的数据,
所述数据传输类型任意确定为写类型,或读类型。
所述数据传输请求以信件的形式发送。
所述数据传输请求还包括:
数据传输的目的地址和传输的数据长度信息。
所述数据传输请求还包括:
数据传输的源器件信息、源地址信息、目的器件信息和信件的属性信息。
当所述数据传输类型为读类型时,根据所述数据传输类型信息分配接收缓冲区,包括:
接收端取出未确定数据传输的目的地址的数据传输请求,根据所述传输的数据长度信息分配接收缓冲区。
采用所述接收缓冲区接收所述发送端发送的数据,包括:
所述接收端将所述接收缓冲区的首地址填写到所述数据传输请求的数据传输的目的地址字段,当接收端的数据传输控制进程处理所述数据传输请求时,采用所述数据传输请求的数据传输的目的地址字段对应的接收缓冲区,接收所述发送端发送的数据。
采用所述接收缓冲区接收所述发送端发送的数据后,还包括:
接收端释放所述接收数据缓冲区。
当所述数据传输的类型为写类型时,采用所述接收缓冲区接收发送端发送的数据后,还包括:
发送端释放发送缓冲区。
本发明实施例提供的一种sRIO链路数据传输的装置,包括:
缓冲区分配模块,用于根据数据传输请求,所述数据传输请求中包括数据传输类型信息,根据所述数据传输类型信息分配接收缓冲区,其中,所述数据传输类型任意确定为写类型,或读类型;
数据接收模块,用于采用所述接收缓冲区进行数据的接收。
所述装置还包括:
邮箱配置模块,用于在接收端内为发送端配置邮箱,接收发送端以信件形式发送的数据传输请求。
所述缓冲区分配模块包括:
第一分配单元,用于分配数据传输类型为读类型的数据传输请求的接收缓冲区;
第二分配单元,用于分配数据传输类型为写类型的数据传输请求的接收缓冲区。
所述第一分配单元包括:
接收缓冲区配置单元,用于取出未确定数据传输的目的地址的数据传输请求,调用函数,根据数据传输的长度信息分配接收数据缓冲区。
所述第一分配单元还包括:
传输请求配置单元,用于将所述接收数据缓冲区的首地址填写到所述数据传输请求的数据传输的目的地址字段。
所述装置还包括:
释放单元,用于释放缓冲区。
所述释放单元包括:
第一释放单元,用于释放接收数据缓冲区;
第二释放单元,用于释放发送缓冲区。
本发明实施例在sRIO链路中,数据传输采用信件邮箱的传输机制,数据传输的类型可以选择,根据信件的记录的基本信息进行数据接收缓冲区的动态分配,并且在数据处理完成后释放缓冲区,因此采用本发明提供的sRIO链路数据传输的方法可以解决设置的缓冲区多,影响数据传输速度的问题,以及简化使处理器中缓冲区设计、维护的问题,同时使负荷可以动态分配。
附图说明
图1为现有技术中sRIO链路中缓冲区的结构示意图;
图2为现有技术中sRIO链路中数据传输方法的流程图;
图3为本发明实施例中信件结构示意图;
图4为本发明实施例中四级深度的邮箱结构示意图;
图5为本发明实施例中信件和邮箱的使用示意图;
图6为本发明实施例中读方式实现数据传输流程图;
图7为本发明实施例中写方式实现数据传输流程图;
图8为本发明实施例sRIO链路数据传输装置示意图。
具体实施方式
在本发明实施例中,数据传输的类型不受处理器内缓冲区配置的影响,当接收端接收到发送端发送的数据传输请求,其中,数据传输请求中包括数据传输类型信息,根据数据传输类型信息分配接收缓冲区,采用分配的接收缓冲区接收发送端发送的数据,并且,其中数据传输类型包括写类型,或读类型。
其中,发送端发送的数据传输请求,可以为记录了数据传输基本信息的小数据包,例如,记录了数据传输基本信息的信件等。
当数据传输请求以信件的形式进行发送时,发送端将数据传输请求发送到接收端为上述发送端配置的邮箱内。
本发明实施例中以数据传输请求为信件形式,对串行Rapid IO链路数据传输的方法进行说明。
其中,信件记录的数据传输的基本信息包括,数据传输的目的地址和传输的数据长度信息。
并且,信件记录的信息还包括,数据传输的源器件信息、源地址信息、目的器件信息和信件的属性信息。
其中,信件的属性信息包括,信件类型,和/或信件有效标志等。
当数据传输类型为读类型时,根据所述数据传输类型信息分配接收缓冲区的过程包括,接收端取出未确定数据传输的目的地址的数据传输请求,根据所述传输的数据长度信息分配接收数据缓冲区;
接收端采用上述接收缓冲区接收发送端发送的数据的过程包括,接收端将上述接收数据缓冲区的首地址填写到数据传输请求的数据传输的目的地址字段,当接收端的数据传输控制进程处理此数据传输请求时,采用此数据传输请求的数据传输的目的地址字段对应的接收缓冲区,接收发送端发送的数据。
并且,上述接收端分配接收数据缓冲区的过程中,可以采用调用缓冲区分配函数的形式进行接收缓冲区的分配。
采用上述接收缓冲区接收发送端发送的数据后,还包括,接收端释放上述接收数据缓冲区。
当数据传输的类型为写类型时,采用所述接收缓冲区接收发送端发送的数据后,还包括,发送端释放发送缓冲区。
在本发明实施例中提供的在sRIO链路中传输数据时,对接收端处理器的内存空间的存储器既可以进行读操作,又可以进行写操作。同时,可以将发送或者接收数据的负荷灵活配置到发送端处理器、或者接收端处理器。
在本发明实施例中引入了信件(LETTER)、邮箱(MAILBOX)和门铃(DOORBELL)等组合形成的数据传输机制。如图3所示,为本发明实施例提供的信件的结构示意图,对于每一个信件统一定义了以下格式,每个信件的长度为8字节,其中,本发明实施例提供的信件包括以下部分:
信件301、源器件ID指发送端处理器的地址,进程ID指操作系统中操作进程的地址,在信件中可以采用源器件ID或进程ID两者中的任意一个,也可以根据情况采用两个地址的结合;
信件302、源地址指待传输数据在发送缓冲区中的首地址;
信件303、目的器件ID指接收端处理器的地址,进程ID指操作系统中操作进程的地址,在信件中可以采用目的器件ID或进程ID两者中的任意一个,也可以根据情况采用两个地址的结合;
信件304、目的地址指数据需要传输到的内存的首地址;
信件305、传输类型指数据可以采用读类型或写类型进行传输,不受缓冲区配置的影响;
信件306、传输的数据长度指待传输的数据长度,当接收端接收到信件后,可以根据此传输的数据长度信息合理分配接收缓冲区的大小;
信件307、信件类型指此信件的类型,可以为mail类型,也可以为信息类型;
信件308、信件有效标志指此信件是否有效,当信件没有处理时此信件有效,当信件处理后可以将信件设置为无效,节约信件处理的时间。
当然,在实现的过程中,也可以采用其他的配置方式,但是只要包含在本发明保护范围内的所有信件的实现方式,都应该在本发明的保护范围内。
邮箱是用于存放信件的,对于sRIO网络内的所有处理器,对于可能存在的数据链路的所有处理器内给对端处理器分配一个邮箱,为了管理方便可以将每个处理器上的邮箱的结构和其在内存中的位置设置相同,同时,邮箱的容量可以根据链路通信的忙闲程度灵活配置,例如可以采用邮箱的深度为4,如图4所示为深度四级的邮箱的结构示意图。其中,每个邮箱的编号与门铃中断对应,以便处理器查收邮件。由于采用邮箱的方法在处理器内为可能存在数据链路的处理器分配内存,而邮箱占用的内存很小,所以采用此方法不会占用很多内存。
在本发明实施例中采用的门铃中断是sRIO协议中描述用于发送中断信息的信息包,在本发明实施例提供的sRIO链路数据传输的方法中,当发送端的处理器给接收端处理器发送完信件后,发送端处理器给接收端处理器发送一个门铃中断信号,通知接收端的处理器去检查此门铃对应的邮箱,以便接收端能够及时处理发送端发送的数据传输信件。
并且,在本发明实施例数据传输的过程中,每个处理器都有一个数据传输进程和一个待传输队列。待传输队列是用于缓存待发送的信件的队列,可以根据需要设定缓存的最大信件数量;数据传输控制进程通过不断的检查待传输队列,当待传输队列为非空,并且sRIO链路空闲,则发送数据,否则等待sRIO链路空闲后发送数据,如图5所示为数据的传输过程中信件和邮箱的使用示意图。
在图5中表示了两个处理器间信件的传输,其中,因为在两个处理器间有数据的传输,因此,在处理器A中为处理器B设置了邮箱,并且处理器B中为处理器A设置了邮箱,方便信件的传输。当处理器A中有数据请求传输时,处理器A将请求封装成信件,插入处理器A中待传输队列的队伍尾部,当数据传输控制进程轮询到该信件的时候,则将信件发送到处理器B为处理器A设置的邮箱中,同时处理器A发送门铃中断,通知处理器B检查对应的邮箱;或者处理器A也可以直接将信件发送到处理器B为处理器A设置的邮箱中,处理器A发送门铃中断,通知处理器B检查对应的邮箱,处理器B解析接收的信件,按照信件配置完成后,将信件插入处理器B中待传输队列尾部,等待传输控制进程轮询到该信件时,根据该信件进行数据的传输。
并且,在信件的传输中可以任意配置信件传输类型,不受缓冲区规划的影响,当信件设置的传输类型为读方式时,则接收端的处理器到发送端的处理器中来读取数据,并且,在信件305中填写数据传输类型为读类型,例如可以用nReadR或MTN_Read实现,同时,将待发送数据的首地址填写到信件302中源地址字段,并且设置信件304中目的地址字段为空;当信件设置的传输类型为写方式时,在信件305中填写数据传输类型为写类型,例如可以用nWrite_R,MTN_Write实现,同时,将待发送数据的首地址填写到信件302中原地址字段,并且设置信件304中目的地址地段为接收端预留的接收缓冲区的首地址。
下面详细介绍数据传输类型为读类型时,数据传输的过程,如图6所示,具体包括以下几个步骤:
步骤601、发送端处理器A将填写好的信件,发送到接收端处理器B中为处理器A设置的邮箱中;
步骤602、发送端处理器A向接收端处理器B发送一个门铃中断,通知接收端处理器B去检查门铃对应的邮箱;
步骤603、接收端处理器B响应此门铃中断,检查邮箱,根据邮件的有效标志,取出有效的信件;
步骤604、接收端处理器B判断信件的信件类型为mail类型,则接收端处理器B调用malloc函数分配接收数据缓冲区,在接收端处理器B中配置数据接收缓冲区,并且将接收数据缓冲区的首地址填写到此信件的目的地址字段,同时将此信件插入到接收端处理器B的待传输队列中,等待接收端处理器B的数据传输控制进程的处理;
步骤605、当接收端处理器B的数据传输控制进程轮询到此信件的时候,则解析信件并启动sRIO传输直接记忆体存取(Direct Memory Access,DMA),进行数据的读操作;
步骤606、接收端处理器B可以得知数据传输完成,对接收的数据进行处理,数据处理完成后,接收端处理器B调用free函数释放malloc函数的内存,使其配置的数据接收缓冲区为下一次的数据传输使用。
在本发明实施例中采用malloc函数分配接收数据缓冲区,在实际的实现过程中可以采用其他的函数来实现此步骤,只要满足本发明精神的在数据传输中,采用函数分配接收缓冲区的配置方法都应该在本发明的保护范围内。
以上是对于读类型的信件的数据传输过程的处理,由于信件的类型可以任意配置,当配置的信件的数据传输类型为写类型时,数据的传输过程包括以下步骤,如图7所示:
步骤701、发送端处理器A将信件插入到发送端的待传输队列的队列尾部,等待发送端处理器的数据传输处理进程的处理;
步骤702、当发送端处理器A的数据传输控制进程轮询到此信件的时候,则解析信件并启动sRIO传输DMA,进行数据的写操作;
步骤703、当数据传输完成后,发送端可以发送一个消息类型的信件通知接收端处理器,然后发送一个门铃中断给接收端处理器;
步骤704、接收端处理器响应此门铃中断,检查此门铃对应的邮箱,判断接收的信件如果为一个消息类型的信件,表明数据传输完成,解析信件并获取写数据存放的地址;
步骤705、接收端处理器处理接收的数据,数据处理完成后,接收端处理器回复发送端一个消息类型的信件,通知发送端处理器释放发送缓冲区,以便下一次数据传输使用。
在本发明实施例中接收端发送的一个消息类型的邮件,其实质是为了通知发送端释放发送缓冲区,所以在信件的配置上不需要严格按照其他信件的形式配置,同时,接收端也可以采用其他方式,例如中断信息方式,通知发送端释放发送缓冲区。
以上是本发明较佳的实施例,sRIO链路IO模式下,使用一段较小的内存作为邮箱,将每一次的数据传输请求封装为信件,通过信件来传递,DMA传输使用的源目的地址和数据长度,大大降低了各个处理器内存分配和缓冲区映射的关联性。
同时,在数据传输中使用malloc函数为数据传输请求,按照信件中数据传输的长度分配接收缓冲区,从而实现了零缓冲区设计。并且在每增加一条链路时不需要重新规划设计新的缓冲区,使得采用本发明实施例提供的数据传输方法有较好的可扩展性和可移植性。
并且,通过封装sRIO数据传输请求为读类型数据传输信件,或者写类型数据传输信件,将数据传输的负载灵活配置到发送端或者接收端,从而实现了按照设计者的实际意图将数据传输的负荷灵活配置的目的。
本发明实施例提供了一种sRIO链路数据传输的装置,如图8所示,包括,缓冲区分配模块810和数据接收模块820。其中,缓冲区分配模块810,用于根据数据传输请求,所述数据传输请求中包括数据传输类型信息,根据所述数据传输类型信息分配接收缓冲区,其中,所述数据传输类型包括写类型,或读类型;数据接收模块820,用于采用所述接收缓冲区进行数据的接收。
所述装置还包括邮箱配置模块800,用于在接收端内为发送端配置邮箱,接收发送端以信件形式发送的数据传输请求。
所述缓冲区分配模块810包括,第一分配单元811和第二分配单元812。其中,第一分配单元811,用于分配数据传输类型为读类型的数据传输请求的接收缓冲区;第二分配单元812,用于分配数据传输类型为写类型的数据传输请求的接收缓冲区。
所述第一分配单元811包括,接收缓冲区配置单元813和传输请求配置单元814,其中,接收缓冲区配置单元813,用于取出未确定数据传输的目的地址的数据传输请求,调用函数,根据数据传输的长度信息分配接收数据缓冲区;传输请求配置单元814,用于将所述接收数据缓冲区的首地址填写到所述数据传输请求的数据传输的目的地址字段。
所述装置还包括释放单元830,用于释放缓冲区。
所述释放单元830包括,第一释放单元831和第二释放单元832。其中,第一释放单元831,用于释放接收数据缓冲区;第二释放单元832,用于释放发送缓冲区。
本发明实施例在sRIO链路中,数据传输采用信件邮箱的传输机制,数据传输的类型可以选择,根据信件的记录的基本信息进行数据接收缓冲区的动态分配,并且在数据处理完成后释放缓冲区,因此采用本发明提供的sRIO链路数据传输的方法可以解决设置的缓冲区多,影响数据传输速度的问题,以及简化使处理器中缓冲区设计、维护的问题,同时使负荷可以动态分配。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (15)

1、一种串行Rapid IO链路数据传输的方法,其特征在于,该方法包括以下步骤:
接收端接收到发送端发送的数据传输请求,所述数据传输请求中包括数据传输类型信息,根据所述数据传输类型信息分配接收缓冲区,采用所述接收缓冲区接收所述发送端发送的数据,
所述数据传输类型信息包括写类型,或读类型。
2、如权利要求1所述的方法,其特征在于,所述数据传输请求以信件的形式发送。
3、如权利要求2所述的方法,其特征在于,所述数据传输请求还包括:
数据传输的目的地址和传输的数据长度信息。
4、如权利要求3所述的方法,其特征在于,所述数据传输请求还包括:
数据传输的源器件信息、源地址信息、目的器件信息和信件的属性信息。
5、如权利要求3所述的方法,其特征在于,当所述数据传输类型为读类型时,根据所述数据传输类型信息分配接收缓冲区,包括:
接收端取出未确定数据传输的目的地址的数据传输请求,根据所述传输的数据长度信息分配接收缓冲区。
6、如权利要求5所述的方法,其特征在于,采用所述接收缓冲区接收所述发送端发送的数据,包括:
所述接收端将所述接收缓冲区的首地址填写到所述数据传输请求的数据传输的目的地址字段,当接收端的数据传输控制进程处理所述数据传输请求时,采用所述数据传输请求的数据传输的目的地址字段对应的接收缓冲区,接收所述发送端发送的数据。
7、如权利要求6所述的方法,其特征在于,采用所述接收缓冲区接收所述发送端发送的数据后,还包括:
接收端释放所述接收数据缓冲区。
8、如权利要求1所述的方法,其特征在于,当所述数据传输的类型为写类型时,采用所述接收缓冲区接收发送端发送的数据后,还包括:
发送端释放发送缓冲区。
9、一种串行Rapid IO链路数据传输的装置,其特征在于,该装置包括:
缓冲区分配模块,用于根据数据传输请求,所述数据传输请求中包括数据传输类型信息,根据所述数据传输类型信息分配接收缓冲区,其中,所述数据传输类型信息包括写类型,或读类型;
数据接收模块,用于采用所述接收缓冲区进行数据的接收。
10、如权利要求9所述的装置,其特征在于,所述装置还包括:
邮箱配置模块,用于在接收端内为发送端配置邮箱,接收发送端以信件形式发送的数据传输请求。
11、如权利要求10所述的装置,其特征在于,所述缓冲区分配模块包括:
第一分配单元,用于分配数据传输类型为读类型的数据传输请求的接收缓冲区;
第二分配单元,用于分配数据传输类型为写类型的数据传输请求的接收缓冲区。
12、如权利要求11所述的装置,其特征在于,所述第一分配单元包括:
接收缓冲区配置单元,用于取出未确定数据传输的目的地址的数据传输请求,调用函数,根据数据传输的长度信息分配接收数据缓冲区。
13、如权利要求11所述的装置,其特征在于,所述第一分配单元还包括:
传输请求配置单元,用于将所述接收数据缓冲区的首地址填写到所述数据传输请求的数据传输的目的地址字段。
14、如权利要求9所述的装置,其特征在于,所述装置还包括:
释放单元,用于释放缓冲区。
15、如权利要求14所述的装置,其特征在于,所述释放单元包括:
第一释放单元,用于释放接收数据缓冲区;
第二释放单元,用于释放发送缓冲区。
CN200810104098XA 2008-04-15 2008-04-15 一种串行Rapid IO链路数据传输的方法及装置 Active CN101562559B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810104098XA CN101562559B (zh) 2008-04-15 2008-04-15 一种串行Rapid IO链路数据传输的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810104098XA CN101562559B (zh) 2008-04-15 2008-04-15 一种串行Rapid IO链路数据传输的方法及装置

Publications (2)

Publication Number Publication Date
CN101562559A true CN101562559A (zh) 2009-10-21
CN101562559B CN101562559B (zh) 2011-12-07

Family

ID=41221188

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810104098XA Active CN101562559B (zh) 2008-04-15 2008-04-15 一种串行Rapid IO链路数据传输的方法及装置

Country Status (1)

Country Link
CN (1) CN101562559B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986931A (zh) * 2014-04-25 2014-08-13 北京航空航天大学 一种fpga+dsp结构上基于srio总线传输视频数据的实现方法
CN104380216A (zh) * 2012-05-29 2015-02-25 巴鲁夫公司 Io链路用于链接现场装置的用途
CN104796652A (zh) * 2015-01-12 2015-07-22 北京瀚景锦河科技有限公司 一种基于srio传输视频帧的数据传输方法和装置
CN105512075A (zh) * 2015-12-01 2016-04-20 华为技术有限公司 高速输出、输入接口电路及数据传输方法
WO2016191990A1 (zh) * 2015-05-30 2016-12-08 华为技术有限公司 一种报文转换方法及装置
US10089271B2 (en) 2012-05-29 2018-10-02 Balluff Gmbh Field bus system
US10127163B2 (en) 2012-05-14 2018-11-13 Balluff Gmbh Control device for controlling a safety device, and use of an IO link for transmission of a safety protocol to a safety device
CN109582218A (zh) * 2017-09-29 2019-04-05 爱思开海力士有限公司 存储器系统及其操作方法
CN110046114A (zh) * 2019-03-06 2019-07-23 上海熠知电子科技有限公司 基于pcie协议的dma控制器及dma数据传输方法
CN110855552A (zh) * 2019-11-01 2020-02-28 中国人民解放军国防科技大学 基于缓存静态分配的硬件抽象层消息转发方法
CN110908811A (zh) * 2019-11-01 2020-03-24 中国人民解放军国防科技大学 基于缓存动态分配的硬件抽象层消息转发方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100361093C (zh) * 2004-12-07 2008-01-09 华为技术有限公司 一种处理器中使用缓存区的方法
CN101102197B (zh) * 2007-08-10 2010-06-09 北京理工大学 基于交换机的可扩展dspeed-dsp_q6455信号处理板
CN101159727B (zh) * 2007-11-15 2010-12-29 中兴通讯股份有限公司 一种iq数据传输装置和方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127163B2 (en) 2012-05-14 2018-11-13 Balluff Gmbh Control device for controlling a safety device, and use of an IO link for transmission of a safety protocol to a safety device
CN104380216A (zh) * 2012-05-29 2015-02-25 巴鲁夫公司 Io链路用于链接现场装置的用途
US10430359B2 (en) 2012-05-29 2019-10-01 Balluff Gmbh Use of an IO link for linking field devices
US10089271B2 (en) 2012-05-29 2018-10-02 Balluff Gmbh Field bus system
CN103986931B (zh) * 2014-04-25 2017-01-25 北京航空航天大学 一种fpga+dsp结构上基于srio总线传输视频数据的实现方法
CN103986931A (zh) * 2014-04-25 2014-08-13 北京航空航天大学 一种fpga+dsp结构上基于srio总线传输视频数据的实现方法
CN104796652A (zh) * 2015-01-12 2015-07-22 北京瀚景锦河科技有限公司 一种基于srio传输视频帧的数据传输方法和装置
CN104796652B (zh) * 2015-01-12 2017-11-03 北京瀚景锦河科技有限公司 一种基于srio传输视频帧的数据传输方法和装置
WO2016191990A1 (zh) * 2015-05-30 2016-12-08 华为技术有限公司 一种报文转换方法及装置
CN107079017A (zh) * 2015-05-30 2017-08-18 华为技术有限公司 一种报文转换方法及装置
CN105512075B (zh) * 2015-12-01 2018-09-07 华为技术有限公司 高速输出、输入接口电路及数据传输方法
CN105512075A (zh) * 2015-12-01 2016-04-20 华为技术有限公司 高速输出、输入接口电路及数据传输方法
CN109582218A (zh) * 2017-09-29 2019-04-05 爱思开海力士有限公司 存储器系统及其操作方法
CN109582218B (zh) * 2017-09-29 2022-03-22 爱思开海力士有限公司 存储器系统及其操作方法
CN110046114A (zh) * 2019-03-06 2019-07-23 上海熠知电子科技有限公司 基于pcie协议的dma控制器及dma数据传输方法
CN110046114B (zh) * 2019-03-06 2020-08-14 上海熠知电子科技有限公司 基于pcie协议的dma控制器及dma数据传输方法
CN110855552A (zh) * 2019-11-01 2020-02-28 中国人民解放军国防科技大学 基于缓存静态分配的硬件抽象层消息转发方法
CN110908811A (zh) * 2019-11-01 2020-03-24 中国人民解放军国防科技大学 基于缓存动态分配的硬件抽象层消息转发方法
CN110855552B (zh) * 2019-11-01 2021-09-03 中国人民解放军国防科技大学 基于缓存静态分配的硬件抽象层消息转发方法

Also Published As

Publication number Publication date
CN101562559B (zh) 2011-12-07

Similar Documents

Publication Publication Date Title
CN101562559B (zh) 一种串行Rapid IO链路数据传输的方法及装置
CN100458757C (zh) 嵌入式实时操作系统中多核处理器的核间通信方法及装置
CN101174245B (zh) 混合数据存储的方法和装置及混合存储设备
CN101304373B (zh) 一种实现局域网内高效传输大块数据的方法及系统
CN101707565B (zh) 零拷贝网络报文发送、接收方法和装置
CN100505676C (zh) 智能多缓冲区管理的集中调度控制器和动态调度方法
KR910017798A (ko) 동기 링크 인터페이스 및 비동기 호스트 프로세서 인터페이스를 갖는 종합 데이터 링크 제어기
US6449281B1 (en) Interface control of communication between a control processor and a digital signal processor
CN101150487A (zh) 一种零拷贝网络报文发送方法
CN100535886C (zh) 一种节点之间的数据传输系统和装置及方法
US20130088965A1 (en) Buffer manager and methods for managing memory
CN112311696B (zh) 网络封包接收装置及方法
CN100539538C (zh) 具有链表处理器的存储器管理系统
CN112328520B (zh) 一种pcie设备、基于pcie设备的数据传输方法和系统
US20050041510A1 (en) Method and apparatus for providing interprocessor communications using shared memory
CN102523265B (zh) 一种过程数据动态分配mvb控制器和处理数据方法
KR100230902B1 (ko) 고 처리 능력의 주변 구성 요소 상호 접속 버스를가진데이터 처리 및 통신 시스템
CN110765044B (zh) 数据包传输装置及系统
EP2017740B1 (en) Method for data transfer between host and device
US6289403B1 (en) Method and arrangement for controlling a data transmission
US6961837B2 (en) Method and apparatus for address translation pre-fetch
CN110069438A (zh) 一种异构器件内存通信的方法
US20240176640A1 (en) Method and apparatus for managing memory
JPH01181258A (ja) バツフア管理方法
CN113806247A (zh) 一种5g通信芯片内数据缓存灵活使用的装置及方法

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