CN1153153C - 帮助直接存储器访问的方法和装置 - Google Patents

帮助直接存储器访问的方法和装置 Download PDF

Info

Publication number
CN1153153C
CN1153153C CNB00804161XA CN00804161A CN1153153C CN 1153153 C CN1153153 C CN 1153153C CN B00804161X A CNB00804161X A CN B00804161XA CN 00804161 A CN00804161 A CN 00804161A CN 1153153 C CN1153153 C CN 1153153C
Authority
CN
China
Prior art keywords
data
memory access
direct memory
access engine
processing 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.)
Expired - Fee Related
Application number
CNB00804161XA
Other languages
English (en)
Other versions
CN1352773A (zh
Inventor
H・斯特拉科夫斯基
H·斯特拉科夫斯基
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of CN1352773A publication Critical patent/CN1352773A/zh
Application granted granted Critical
Publication of CN1153153C publication Critical patent/CN1153153C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Bus Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Multi Processors (AREA)

Abstract

披露了在计算系统中帮助直接存储器访问的方法和装置。在一实施例中(图),具有中央处理器(CPU)(114)和主系统存储器(106),以及连接到CPU(114)的DMA引擎(110)的计算系统(100)执行识别期望数据组的第一DMA过程。一旦识别以后,DMA引擎(110)将已识别的期望数据组从主系统存储器(106)移动到暂时比主系统存储器(106)更接近处理器(114)的存储段(115)。

Description

帮助直接存储器访问的方法和装置
技术领域
本发明通常涉及计算系统,更特别涉及数据处理系统中存储器的直接存储器访问。本发明还特别是指帮助高速率处理器直接存取存储设备的方法和装置。
背景技术
在许多申请中,高性能处理器用于对面向目标的分组进行处理。其中一个例子是ATM协议桥的以太网。在这些情形中,处理器一般要检查和修改例如包含数据有效负荷的某包装(wrapper)。数据传送的机理是一般数据存放和随后移出主存储器。遗憾的是,这对于面向处理的微处理器来说是非常不宜的,因为高性能CPU一般处于比主存储器快的数量级。一处理器花百分之50的周期等待存储器存取完成的这类应用是不罕见的。因为大多数高性能微处理器由一组超高速缓存从主存储器中独立出来,因此有可能通过人工(即在程序控制下)无效将读入来自一个新分组的适当数据的超高速缓存部分而加速应用程序的性能。
虽然此技术可以显著地改进性能,但遗憾的是它是处理器和其特定的高速缓存结构,因此需要编程人员非常了解作为基础的硬件。此外,优化代码(将在这种情况下需要的)几乎不可携带的,因此要求每个新产品新的优化。
发明内容
因此,本发明的目的是提供一种改进的独立于平台的技术,用于访问高速处理环境下的存储器以及相应的访问方法。
根据本发明的目的,提供了在计算系统中帮助直接存储器访问的方法、装置实现上述技术。
本发明的一个方面,提供了一种直接存储器访问(DMA)引擎,用于具有配置执行可执行指令的中央处理器(CPU)的计算系统中并且具有连接到中央处理器的相关直接存储器访问通道,其中通过在与中央处理器处理第二期望数据组的同时将第一期望数据组从主系统存储器中取出移到暂时比主系统存储器更接近中央处理器的存储段中来执行第一直接存储器访问过程,其中该存储段包含至少两个以以下方式配置的超高速缓存段,即第一数据组取入第一超高速缓存段,同时中央处理器工作在第二超高速缓存段中的第二数据组中,从而管道输送直接存储器访问通道,以提高总中央处理器吞吐量,其中直接存储器访问引擎连接到缓冲槽,所述缓冲槽包含在主系统存储器中。
其中缓冲槽包括至少两个缓冲器,缓冲器包含分配到整个缓冲槽的数据,其中已分配的数据包括期望数据组。
已分配的数据由第二直接存储器访问过程从输入/输出(I/O)设备转移到缓冲槽。
其中第二直接存储器访问过程由直接存储器访问引擎执行。
其中数据采取数据分组的形式,其中数据分组包括嵌入的信息。
其中嵌入的信息用于识别期望数据。
其中数据分组是异步传输模式数据分组,其中嵌入的信息是异步传输模式数据首部。
其中直接存储器访问引擎利用共享存储器窥探超高速缓存相干性协议,其中更新来自已窥探总线的共享数据。
其中共享存储器窥探超高速缓存相干性协议是伊利诺斯(Illinois)协议。
本发明还提供了一种在具有中央处理器和配置存储数据的主系统存储器的计算系统中将期望数据组从主系统存储器移到暂时比主系统存储器更接近中央处理器的存储段中的方法,包括:多个数据组分配到包含在主系统存储器的缓冲槽中,其中多个数据组包括期望数据组;识别存储在相关本地缓冲器中的期望数据组,其中本地缓冲器包括在缓冲槽中;从本地缓冲器中取出已识别的期望数据组;和从本地缓冲器将识别的期望数据组移到存储段。
所述方法进一步包括:由中央处理器操作已移动的期望数据组,在该操作的同时,从第二本地缓冲器中取出第二期望数据组。
其中如由直接存储器访问引擎的指引,从输入/输出设备转移已分配的多个数据组。
其中数据组是具有嵌入信息的数据分组,直接存储器访问引擎利用该嵌入信息识别期望数据。
其中嵌入的信息是一个首部。
其中数据分组是异步传输模式数据数据分组。
附图说明
通过附图中的例子说明本发明,而不是限制本发明,附图中类似的附图标记标引类似的元件,其中;
图1表示根据本发明一实施例的计算系统;
图2说明在符合IEEE 802.3(1985)标准的典型以太网中传送的数据分组格式;
图3表示根据本发明实施例的计算系统操作过程的详细流程图;
图4表示根据本发明实施例特殊实现图3所示识别的详细流程图;和
图5说明适于实现本发明的典型的一般用途的计算机系统。
具体实施方式
现在将详细参考本发明的优选实施例。在附图中说明优选实施例的例子。虽然将结合优选实施例描述本发明,可以理解并不期望将本发明限制到一个优选实施例。相反,本发明覆盖可以包含在所附权利要求书定义的本发明精神和范围内的替换、修改和等同物。
利用基于DMA(直接存储器访问)的硬件可以实现存储器存取的实质改进,该硬件将相关数据移到超高速缓存或暂时比主存储器更接近处理器的某高速暂存器中。当使用超高速缓存时,处理器支持由轮流的主管将窥探击中的数据写入存储器的更新操作。但是,当使用高速暂存器时,DMA执行从主存储器到暂存器的存储器到存储器的转移。在任一情况下,一般需要专用的DMA通道,因为数据分组在被CPU处理之前积累在存储器中。这意味着如果数据最初从I/O设备输入时数据放置在超高速缓存或高速暂存器中,则大量的超高速缓存或暂存器被用尽,因此置换其它潜在有价值的数据或代码。如果有足够数目的分组在排队,则有可能溢出超高速缓存或暂存器,因此潜在地产生性能的净损耗。因此,在一优选实施例中,本发明的DMA过程执行将数据取入乒乓型缓冲器设备的DMA取数操作。在此设备中,至少两个暂存器或超高速缓存段以这样一种方式使用,即在处理器工作在另一个缓冲器或另一超高速缓存段的同时数据取入一个缓冲器或一段超高速缓存中。
在一优选实施例中,由从分组开始的位移和分组大小定义相关的数据实例。当位移部分除以缓冲区大小时,整数部分表示必须跨越的缓冲器数目,余数表示进入缓冲器自身的位移。
现在回到图1,表示根据本发明一实施例的计算系统100。计算系统100包括经DMA通道104连接到主存储器106的I/O设备102。主存储器106一般由配置存储数据和代码的动态随机存储器(DRAM)形成。主存储器106依次连接到DMA控制器单元108,DMA控制器单元108包括配置成硬件或软件的DMA引擎110。DMA控制器单元108还包括多个数据缓冲器112-1到112-n,在此只表示110-1和110-2。在所描述的实施例中,每个数据缓冲器112被配置存储一部分或几部分数据或数据分组,这些数据是由DMA引擎110确定预先取出的。在一优选实施例中,缓冲器112连接到乒乓型设备,以防止大量的数据分组累积在缓冲器112。以这种方式,DMA通道104的管道输送实质改进了整个处理器的吞吐量。
在所描述的实施例中,预先取出的数据对处理器单元114是可利用的,处理器单元114在某些实施例中具有与其连接的L2型超高速缓存116。在一优选实施例中,取出的数据存储在为处理器114一部分的存储器段115中。应当注意的是,当使用超高速缓存时,它必须能够在共享废数据传播到总线时更新共享数据的拷贝。
图2说明在符合IEEE 802.3(1985)标准的典型以太网中传送的数据分组格式;一个分组通常包括8字节长的始标202。始标中的最后一个字节(或八比特组)是开始帧定界符(未示出)。在开始帧定界符之后,6个字节的目的地址(DA)204用于识别要接收以太网分组的节点。DA204之后是6字节长的源地址(SA)206,SA206用于识别直接在已传送分组上的传输节点。在SA206之后,长度/类型字段(L/T)208(一般为2个字节)通常用于表示随后数据字段的长度和类型。正如本领域所熟知的,如果提供长度,分组分类为802.3分组,如果提供类型字段,分组分类为以太网分组。
之后的数据字段识别为LLC数据210,因为数据字段还包括可以由下面描述的LLC层编码的信息。延长器212也表示在LLC数据210之后。正如本领域所熟知的,如果给定的以太网分组少于64字节,大多数的媒介存取控制器在LLC数据210之后加入填充l和0的,以将以太网分组大小增加到至少64个字节。一旦加入延长器212,如果必要的话,在分组的结尾附上4字节的循环冗余校验(CRC)字段214,用于在接收端检验出错的分组。正如这里所使用的,一“帧”应当理解为包含在分组内的一子部分数据。
一般,在以太网类型的网络中,处理器只对一部分以太网帧200感兴趣(例如源地址数据字段SA206和/或目的地地址字段DA204)。在这些情况下,DMA引擎110将解析特定的以太网帧并将解析结果存储在缓冲槽118所包含的许多任意的缓冲器中,例如由相关的一组描述符逻辑链接这些缓冲器。
虽然没有示出,另一种称为TCP(传输控制协议)的熟知的分组化数据格式是与互联网协议(IP)一起使用的方法(协议),用于通过互联网在计算机之间传送消息单元形式的数据。虽然IP负责处理数据的实际传递,TCP负责跟踪消息被划分的各个数据单位(称为分组),用于通过互联网有效选择路由。例如,当HTML文件从WEB服务器发送给客户时,服务器中的传输控制协议(TCP)程序层将文件划分成一个或多个分组,对分组编号,然后将它们分别运送到IP程序层。
虽然每个分组具有相同的目的地IP地址,但它可以选择不同的路由通过该网。在另一端(客户程序),TCP重新集合各个分组并等待它们都到达以将它们运送到客户。
TCP被认为是面向连接的协议,这意味着建立和保持连接直到已经交换一个或多个消息的时候,由每端的应用程序交换这些消息。TCP负责保证将消息分成IP管理的分组和在另一端将分组重新集合成完整的消息。
利用以太网帧,与TCP程序层相关的数据分组将与TCP首部相关,该TCP首部包括例如与源和目的地址有关的所有信息。
以类似于以太网帧200的方式,在基于通信系统的TCP中,因为处理器114只对一小部分的TCP首部(例如目的地地址)感兴趣,DMA引擎110将数据分成几个部分,只有一些部分与当前的处理器任务相关。因为数据分组可以相对很大,DMA引擎110将输入数据(在某些实施例中根据选择相关部分的数据由处理器114处理)分配到一系列缓冲器中,在所描述的实施例中这些缓冲器采取由特定存储器管理方案逻辑定义的缓冲槽118的。因为分组可以因此跨越多个缓冲器,所以来自包装(wrapper)的相关数据可以位于多个任意缓冲器的任何一个中。为了取出数据分组,缓冲器必须逻辑链接。缓冲器的链接可以多种方式执行,诸如描述符环、描述符的链接表,或缓冲器的简明链接表。在预取操作中,DMA引擎因此必须能够“走下”该列表到相关数据的位置,然后只传送此数据。如果要求多个数据实例,DMA引擎必须继续到下一个实例,将它传递到暂存缓冲器或超高速缓存段,如果要求的话,进行到下一个实例。
正如DMA引擎110的指引,数据应处理器114的请求根据将特定缓冲器链接到存储在其中的数据部分的描述符从缓冲槽118的一个特定缓冲器中预先取出并存储在对处理器114可用的缓冲器112-2中。通过链接缓冲槽118的每一个缓冲器,DMA引擎110可以使用指针确定下一个数据必须预先取出和存储在缓冲器112-1的缓冲器,该缓冲器112-1对按乒乓式管理方案的处理器114是可利用的。
在某些实施例中,有可能向处理器高速缓存而不是暂时存储器提供期望数据。这种方案是可行的,如果处理器高速缓存支持超高速缓存线替代前侧总线。举个例子,可以使用一种窥探协议,诸如本领域熟知的一个协议“伊利诺斯(Illinois)”窥探协议。此特定协议利用局部超高速缓存更新另一个超高速缓存的入口,或在所描述的实施例中,DMA引擎110的入口。在此实现方式中,编程人员将定义“共享”存储区,最初由程序读取引入超高速缓存,随后由DMA引擎110更新。如果数据被更新,它将必须明确写入主存储器或提供到另一个DMA过程,如果该DMA过程接收的相干性由超高速缓存更新。
在另一个实施例中,I/O事件通过将数据分配到整个缓冲槽120中而使DMA通道104将数据取入系统存储器106。然后处理器114对从特定数据组选择的数据即期望数据开始处理任务,该数据组一般是数据分组形式。处理器114然后启动另一个DMA通道(未示出)从主存储器的下一个要处理的分组中取出期望数据组(即选择)到存储段115(以暂存器或超高速缓存的形式)中的一个位置,这种取出与处理器114处理当前分组并行发生。用这种方式,第二DMA通道将期望数据取入主存储器106的指定位置,然后在取出任务完成时通知处理器114。
现在参照图3,示出根据本发明实施例的描述计算系统100操作的过程300。过程300在处理器开始DMA过程的302开始,在某些实施例中其可以包括从DMA寄存器存取数据。在304,为当前的数据分组检索描述符,之后在305,计算与期望数据相关的适当数据位移。接下来,在306,识别包含期望数据的本地缓冲器。在一实施例中,通过进一步在图4详细描述的“指针走动”过程识别包含期望数据的本地缓冲器。一旦已经识别期望的本地缓冲器,在308计算已识别本地缓冲器中的数据位移,之后在310期望的数据分组(或部分)移到选定的超高速缓存元件。在一优选实施例中,超高速缓存元件暂时比例如主存储器更接近处理器。在312,确定计算出的位移是否是上一次位移。如果确定计算出的位移不是上一次位移,则控制回到举例说明DMA过程的306。但是,如果确定计算出的位移是上一次位移,则在314通知处理器可以从超高速缓存元件检索适当的数据。
现在参见图4,表示描述识别操作306特定实现过程400的流程图,更特别是根据本发明特定实施例的上述指针走动过程。应当注意的是,虽然所描述的识别操作是针对一般由DMA引擎110实现的指针走动过程,但是任何适当的识别过程实际上都可以用于本发明。
在所描述的实施例中,指针走动过程400在402通过对通过累加器数据(DPA)附加当前的缓冲区大小开始。在404,确定DPA值是否大于期望数据的位移。如果确定DPA值大于期望数据的位移,则在406确定完成指针走动过程并且过程400停止。否则,控制通过到408,在此确定正确的描述符是否是描述符链中的最后一个描述符。如果确定正确的描述符实际上是描述符链中的最后一个描述符,则控制通过到410,在此给出错误标记。否则,控制通过到412,在此取出下一个描述符,之后控制返回到402。
图5说明适于实现本发明的典型的一般用途的计算机系统500。计算机系统500包括多个连接到存储设备的处理器502(也称为中央处理器,或CPU),存储设备包括主存储器设备504(一般只读存储器或ROM)和主存储器设备506(一般随机存储器,或RAM)。
计算机系统500或更特别是CPU502可配置以支持虚拟机,正如本领域技术人员所理解的。下面将参照图5描述计算机系统500支持的虚拟机的一个例子。正如本领域所熟知的,ROM用于单方向的向CPU502传送数据和指令,而RAM一般用于以双方向的方式传递数据和指令。CPU502通常可以包括任何数目的处理器。主存储器设备504、506都可以包括任何适当的计算机可读媒介。一般为海量存储器设备的次存储媒介508也双向连接到CPU502,并提供额外的数据存储容量。海量存储器设备508是能用来存储包括计算机代码的程序、数据等等的计算机可读媒介。一般说来,海量存储器设备508是通常比主存储器设备504、506慢的例如硬盘或磁带的存储媒介。海量存储器存储器508可以采取磁或纸带读出器或其它熟知设备的形式。可以理解海量存储器设备508内保持的信息在适当情况下可以标准形式并入一部分RAM506,作为虚拟存储器。诸如CDROM的特殊主存储器设备504也可以单向传送数据到CPU502。
CPU502还连接到一个或多个输入/输出设备510,其可以包括但不局限为例如视频监视器、跟踪球、鼠标、键盘、麦克风、触摸式显示器、变换器、读卡机、磁或纸带读出器、图形输入装置、记录笔、话音或笔迹识别器、或其它熟知的输入设备,当然例如其它计算机。最后,CPU502可选地连接到计算机或通信网,例如互联网或内联网,利用通常在512所示的网络连接。具有这种网络连接,期望CPU502可以在执行上述方法步骤的过程中从该网络接收信息或向该网络输出信息。经常表示为用CPU502可以执行的一系列指令的这种信息可以收到和输出到该网络,例如以具体表达在载波中的计算机数据信号的形式。上述装置和材料将为计算机硬件和软件技术的技术人员所熟知。
虽然只描述了本发明的一些实施例,应该理解本发明可以具体表达成许多其它的特殊形式而不偏离本发明的精神或范围。举个例子可以重新排序涉及执行本发明DMA过程的操作。也可以删除或增加操作而不偏离本发明的精神或范围。

Claims (15)

1.一种直接存储器访问引擎,用于具有配置执行可执行指令的中央处理器的计算系统中并且具有连接到中央处理器的相关直接存储器访问通道,其中通过在与中央处理器处理第二期望数据组的同时将第一期望数据组从主系统存储器中取出移到暂时比主系统存储器更接近中央处理器的存储段中来执行第一直接存储器访问过程,其中该存储段包含至少两个以以下方式配置的超高速缓存段,即第一数据组取入第一超高速缓存段,同时中央处理器工作在第二超高速缓存段中的第二数据组中,从而管道输送直接存储器访问通道,以提高总中央处理器吞吐量,其中直接存储器访问引擎连接到缓冲槽,所述缓冲槽包含在主系统存储器中。
2.如权利要求1所述的直接存储器访问引擎,其中缓冲槽包括至少两个缓冲器,缓冲器包含分配到整个缓冲槽的数据,其中已分配的数据包括期望数据组。
3.如权利要求1所述直接存储器访问引擎,其中已分配的数据由第二直接存储器访问过程从输入/输出设备转移到缓冲槽。
4.如权利要求3所述的直接存储器访问引擎,其中第二直接存储器访问过程由直接存储器访问引擎执行。
5.如权利要求4所述的直接存储器访问引擎,其中数据采取数据分组的形式,其中数据分组包括嵌入的信息。
6.如权利要求5所述的直接存储器访问引擎,其中嵌入的信息用于识别期望数据。
7.如权利要求6所述的直接存储器访问引擎,其中数据分组是异步传输模式数据分组,其中嵌入的信息是异步传输模式数据首部。
8.如权利要求1所述的直接存储器访问引擎,其中直接存储器访问引擎利用共享存储器窥探超高速缓存相干性协议,其中更新来自已窥探总线的共享数据。
9.如权利要求8所述的直接存储器访问引擎,其中共享存储器窥探超高速缓存相干性协议是伊利诺斯协议。
10.一种在具有中央处理器和配置存储数据的主系统存储器的计算系统中将期望数据组从主系统存储器移到暂时比主系统存储器更接近中央处理器的存储段中的方法,包括:
多个数据组分配到包含在主系统存储器的缓冲槽中,其中多个数据组包括期望数据组;
识别存储在相关本地缓冲器中的期望数据组,其中本地缓冲器包括在缓冲槽中;
从本地缓冲器中取出已识别的期望数据组;和
从本地缓冲器将识别的期望数据组移到存储段。
11.如权利要求10所述的方法,进一步包括:由中央处理器操作已移动的期望数据组,在该操作的同时,从第二本地缓冲器中取出第二期望数据组。
12.如权利要求11所述的方法,其中如由直接存储器访问引擎的指引,从输入/输出设备转移已分配的多个数据组。
13.如权利要求12所述的方法,其中数据组是具有嵌入信息的数据分组,直接存储器访问引擎利用该嵌入信息识别期望数据。
14.如权利要求13所述的方法,其中嵌入的信息是一个首部。
15.如权利要求14所述的方法,其中数据分组是异步传输模式数据数据分组。
CNB00804161XA 1999-02-22 2000-02-18 帮助直接存储器访问的方法和装置 Expired - Fee Related CN1153153C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12102299P 1999-02-22 1999-02-22
US60/121,022 1999-02-22

Publications (2)

Publication Number Publication Date
CN1352773A CN1352773A (zh) 2002-06-05
CN1153153C true CN1153153C (zh) 2004-06-09

Family

ID=22393995

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB00804161XA Expired - Fee Related CN1153153C (zh) 1999-02-22 2000-02-18 帮助直接存储器访问的方法和装置

Country Status (6)

Country Link
EP (1) EP1163596A4 (zh)
JP (1) JP2002538522A (zh)
KR (1) KR20010102285A (zh)
CN (1) CN1153153C (zh)
AU (1) AU3369700A (zh)
WO (1) WO2000051004A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8634415B2 (en) 2011-02-16 2014-01-21 Oracle International Corporation Method and system for routing network traffic for a blade server
US9489327B2 (en) 2013-11-05 2016-11-08 Oracle International Corporation System and method for supporting an efficient packet processing model in a network environment
CN105706058B (zh) * 2013-11-05 2019-09-20 甲骨文国际公司 用于支持网络环境中高效的分组处理模型和用于分组处理的优化的缓冲区利用的系统和方法
KR20190123984A (ko) 2018-04-25 2019-11-04 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
CN112506437A (zh) * 2020-12-10 2021-03-16 上海阵量智能科技有限公司 芯片、数据搬移方法和电子设备
CN114691562A (zh) * 2020-12-29 2022-07-01 中科寒武纪科技股份有限公司 用于dma操作的方法、装置、设备、集成电路芯片和板卡

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4481578A (en) * 1982-05-21 1984-11-06 Pitney Bowes Inc. Direct memory access data transfer system for use with plural processors
US4608631A (en) * 1982-09-03 1986-08-26 Sequoia Systems, Inc. Modular computer system
US5175841A (en) * 1987-03-13 1992-12-29 Texas Instruments Incorporated Data processing device with multiple on-chip memory buses
US5003465A (en) * 1988-06-27 1991-03-26 International Business Machines Corp. Method and apparatus for increasing system throughput via an input/output bus and enhancing address capability of a computer system during DMA read/write operations between a common memory and an input/output device
US5359723A (en) * 1991-12-16 1994-10-25 Intel Corporation Cache memory hierarchy having a large write through first level that allocates for CPU read misses only and a small write back second level that allocates for CPU write misses only
US5524265A (en) * 1994-03-08 1996-06-04 Texas Instruments Incorporated Architecture of transfer processor
US5603050A (en) * 1995-03-03 1997-02-11 Compaq Computer Corporation Direct memory access controller having programmable timing
US5987590A (en) * 1996-04-02 1999-11-16 Texas Instruments Incorporated PC circuits, systems and methods
US5893153A (en) * 1996-08-02 1999-04-06 Sun Microsystems, Inc. Method and apparatus for preventing a race condition and maintaining cache coherency in a processor with integrated cache memory and input/output control

Also Published As

Publication number Publication date
WO2000051004A1 (en) 2000-08-31
AU3369700A (en) 2000-09-14
EP1163596A1 (en) 2001-12-19
KR20010102285A (ko) 2001-11-15
CN1352773A (zh) 2002-06-05
JP2002538522A (ja) 2002-11-12
EP1163596A4 (en) 2004-12-01

Similar Documents

Publication Publication Date Title
US9081742B2 (en) Network communications processor architecture
CN104426909B (zh) 用于将图样编译成非确定有限自动机(nfa)图形的方法和计算机系统
US8099521B2 (en) Network interface card for use in parallel computing systems
CN106990915B (zh) 一种基于存储介质类型和加权配额的存储资源管理方法
EP1517504B1 (en) Method and apparatus for protocol processing in a computer system applying memory address translation
CN101036117A (zh) 低延时存储器的直接存取
CN102195874A (zh) 数据分组的预提取
CN1593041A (zh) 具有多个首部的包的解封装和封装的方法、装置和计算机程序
US10496595B2 (en) Method for zero-copy object serialization and deserialization
JP2008512797A (ja) 決定性有限オートマトン(dfa)処理
WO2006029508A1 (en) Highly scalable subscription matching for a content routing network
CN1802836A (zh) 网络协议卸载引擎存储器管理
CN104915148B (zh) 用于串流存储装置中的高效内容高速缓冲存储的系统和方法
US7441179B2 (en) Determining a checksum from packet data
JP2005323359A (ja) 相互接続ネットワーク機能を提供する方法及び装置
CN108257078A (zh) 存储器知晓重排序源
CN1153153C (zh) 帮助直接存储器访问的方法和装置
CN111490969A (zh) 网络设备中的灵活报头变更
US10031859B2 (en) Pulse counters
CN106445472A (zh) 一种字符操作加速方法、装置、芯片、处理器
CN101453416A (zh) 用于远程程序安装的包预取的服务节点、网络及其方法
US9990307B1 (en) Split packet transmission DMA engine
Janet et al. Optimizing data movement within cloud environment using efficient compression techniques
Kasu et al. DLFT: Data and layout aware fault tolerance framework for big data transfer systems
IL307410A (en) Object data that is stored outside of the Victory Line subscription

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040609