CN111666237B - 具有高速缓存管理功能的dma控制器 - Google Patents

具有高速缓存管理功能的dma控制器 Download PDF

Info

Publication number
CN111666237B
CN111666237B CN202010513017.2A CN202010513017A CN111666237B CN 111666237 B CN111666237 B CN 111666237B CN 202010513017 A CN202010513017 A CN 202010513017A CN 111666237 B CN111666237 B CN 111666237B
Authority
CN
China
Prior art keywords
channel
data
dma controller
receiving
sending
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
CN202010513017.2A
Other languages
English (en)
Other versions
CN111666237A (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 Longxin Information Technology Co ltd
Original Assignee
Shenzhen Longxin Information 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 Longxin Information Technology Co ltd filed Critical Shenzhen Longxin Information Technology Co ltd
Priority to CN202010513017.2A priority Critical patent/CN111666237B/zh
Publication of CN111666237A publication Critical patent/CN111666237A/zh
Application granted granted Critical
Publication of CN111666237B publication Critical patent/CN111666237B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Bus Control (AREA)

Abstract

本发明提供的具有高速缓存管理功能的DMA控制器,所述DMA控制器设有若干个独立的通道;所述通道包括收通道和发通道,其中,所述收通道用于接收应用侧的数据,并发送给主机侧;所述发通道用于接收主机侧的数据,并发送给应用侧;DMA控制器还用于供用户配置通道启用的数量;所述通道还连接不同的外设,DMA控制器还用于供用户根据通道连接的外设配置该通道单次PCIE读写访问的Burst长度。该DMA控制器,适用的产品范围大,功能多样化。

Description

具有高速缓存管理功能的DMA控制器
技术领域
本发明属于DMA技术领域,具体涉及具有高速缓存管理功能的DMA控制器。
背景技术
DMA(Direct Memory Access,直接内存存取)是所有现代电脑的重要特色,它允许不同速度的硬件装置来沟通,而不需要依赖于CPU的大量中断负载。否则,CPU需要从来源把每一片段的资料复制到暂存器,然后把它们再次写回到新的地方。在这个时间中,CPU对于其他的工作来说就无法使用。
现有技术中DMA控制器大都为定制化设定,适用的产品范围小,难以满足多样化的需求。
发明内容
针对现有技术中的缺陷,本发明提供一种具有高速缓存管理功能的DMA控制器,适用的产品范围大,功能多样化。
一种具有高速缓存管理功能的DMA控制器,
所述DMA控制器设有若干个独立的通道;所述通道包括收通道和发通道;其中,所述收通道用于接收应用侧的数据,并发送给主机侧;所述发通道用于接收主机侧的数据,并发送给应用侧;
DMA控制器还用于供用户配置通道启用的数量;
所述通道还连接不同的外设,DMA控制器还用于供用户根据通道连接的外设配置该通道单次PCIE读写访问的Burst长度。
优选地,所述DMA控制器中每个通道设有独立的DMA配置及中断;所述DMA控制器中多个通道并行工作;
所述中断设有两种中断方式:定时触发或报文触发;定时触发用于当检测到报文缓存时间超过缓存时间阈值,或者是报文缓存数量超过缓存数量阈值时触发;报文触发用于当检测到循环BD队列中存在指定报文时,启动DMA,将指定报文发送给主机侧,并在完成指定报文的发送后触发。
优选地,所述DMA控制器还用于实现接收长包重组和发送长包分片;所述接收长包重组具体用于将接收到的若干个数据包进行重组;所述发送长包分片具体用于将发送的数据包拆分成多个数据包发送;
DMA控制器供用户配置发送长包中循环BD队列的发送数量和接收长包中循环BD队列的重组数量;
所述DMA控制器还用于供用户配置每个通道中循环BD队列的地址。
优选地,所述通道还用于对接不同的外部时钟域,所述循环BD队列为FIFO存储器;
所述DMA控制器还用于当接收到循环BD队列的反压信号时,等待反压信号清除后,再进行下一帧数据的读写;所述反压信号由循环BD队列在缓存空间大于设定值后生成。
优选地,所述DMA控制器还用于供用户配置每个通道的优先级调度模式;所述优先级调度模式包括优先级模式、轮询模式及混杂工作模式。
优选地,所述收通道具体用于:
接收应用侧的数据,对数据进行缓存、排队和仲裁后,通过总线仲裁调度单元将数据发送到主机侧,等待数据发送完成后,通过中断控制器产生收包中断通知给主机侧,通知主机侧接收数据;
所述发通道具体用于:
当接收到主机侧的数据发送启动指令时,通过发送仲裁模块根据优先级及通道的状态选择出相应的通道,并将选通的读命令报文发送到主机侧;
通过发通道控制模块接收主机侧的数据,并发送至缓存控制模块,缓存控制模块根据数据块的分块信息进行缓存,等待缓存完成后,以连续数据帧的方式将数据发送到应用侧;
等待数据发送完成后,通过中断控制器通知主机侧。
优选地,DMA控制器还用于供用户配置BD更新模式;
所述BD更新模式包括硬件更新和软件更新,硬件更新用于根据数据收发过程中产生的BD完成标记,确定循环BD队列更新完成;软件更新用于根据数据收发过程中硬件上报的BD信息,自动更新循环BD队列。
优选地,所述发通道还用于当检测到数据传输错误时,进行数据重传;
所述DMA控制器还用于通过硬件或软件配置收通道的数据接收模式,所述数据接收模式包括中断方式和/或轮询方式。
优选地,所述DMA控制器还用于供用户动态配置数据采样周期、数据采样周期的间隔时间、固定采样的报文数和固定采样的BD数目。
优选地,所述DMA控制器还用于供用户配置数据接收或发送过程中的错误控制模式,所述错误控制模式包括跳过错误的循环BD队列,并通过中断或寄存器方式通知软件。
由上述技术方案可知,本发明提供的具有高速缓存管理功能的DMA控制器,适用的产品范围大,功能多样化。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1为本发明实施例提供的DMA控制器的模块框图。
图2为本发明实施例提供的BD管理模块的状态切换图。
图3为本发明实施例提供的收通道的状态机切换图。
图4为本发明实施例提供的发通道的状态机切换图。
具体实施方式
下面将对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
实施例:
一种具有高速缓存管理功能的DMA控制器,参见图1,
所述DMA控制器设有若干个独立的通道;所述通道包括收通道和发通道,其中,所述收通道用于接收应用侧的数据,并发送给主机侧;所述发通道用于接收主机侧的数据,并发送给应用侧;
DMA控制器还用于供用户配置通道启用的数量;
所述通道还连接不同的外设,DMA控制器还用于供用户根据通道连接的外设配置该通道单次PCIE读写访问的Burst长度和数据位宽。
具体地,数据位宽可以设置为64/128/256/512字节模式。本实施例提供的DMA控制器支持多个收通道和发通道,例如默认配置为支持8个收通道和8个发通道。DMA控制器支持用户通过参数设置通道启用的数量,例如支持启用2~16个通道。DMA控制器中每个通道的单次pcie读写访问的Burst长度可设置,默认为128字节,最大支持2048字节,最小支持32字节,可以设置32/64/128/256/512/1024/2048等模式。
该DMA控制器支持每个通道独立设置Burst长度,DMA控制器支持基于独立通道连接不同的外设,并可根据外设的数据存储要求进行自动调节和设置。该DMA控制器,适用的产品范围大,功能多样化。
优选地,所述DMA控制器中每个通道设有独立的DMA配置及中断;所述DMA控制器中多个通道并行工作;
所述中断设有两种中断方式:定时触发或报文触发;定时触发用于当检测到报文缓存时间超过缓存时间阈值,或者是报文缓存数量超过缓存数量阈值时触发;报文触发用于当检测到循环BD队列中存在指定报文时,启动DMA,将指定报文发送给主机侧,并在完成指定报文的发送后触发。
具体地,DMA控制器中多个通道可以并行工作,对PCIE总线的占用通过轮询/仲裁的方式进行。该DMA控制器支持两种中断方式,例如当报文缓存数量超过16个或缓存时间超过1US时,进行定时触发启动DMA。还例如当循环BD队列中存在待发送到主机侧的报文时,进行报文触发启动DMA。
另外,该DMA控制器的每个通道支持设置为64/128/256/512/1024/2048/4096/8192个循环BD队列,循环BD队列的地址支持4K/2K地址对齐模式,循环BD队列的地址可设,支持32~64位地址设置。循环BD队列的地址支持直接物理访问方式。每个收、发循环BD队列为4个DWORD(128BIT),用于DMA读/写访问。
优选地,所述DMA控制器还用于实现接收长包重组和发送长包分片;所述接收长包重组具体用于将接收到的若干个数据包进行重组;所述发送长包分片具体用于将发送的数据包拆分成多个数据包发送;
DMA控制器供用户配置发送长包中循环BD队列的发送数量和接收长包中循环BD队列的重组数量;
所述DMA控制器还用于供用户配置每个通道中循环BD队列的地址。
具体地,循环BD队列最大支持32K字节的单次传输模式。该DMA控制器支持软件设置发送长包中循环BD队列的发送数量和接收长包中循环BD队列的重组数量。该DMA控制支持长包分多个循环BD队列发送,最多支持7个循环BD队列。该DMA控制器默认最大支持的报文长度为16K字节(2K模式)。
优选地,所述通道还用于对接不同的外部时钟域,所述循环BD队列为FIFO存储器;
所述DMA控制器还用于当接收到循环BD队列的反压信号时,等待反压信号清除后,再进行下一帧数据的读写;所述反压信号由循环BD队列在缓存空间大于设定值后生成。
具体地,DMA控制器中通道支持和外部不同时钟域的对接,通过异步FIFO进行数据缓存和隔离,支持和各类外设的数据互联。当接收循环BD队列缓存快满时,向外部发送反压信号,外部应等待反压信号清除后,再进行下一帧数据的处理。但是当前未发送完成的数据帧仍然可正常发送。该DMA控制器还支持外部CLIENT的反压信号。
参见图1、2,DMA控制器中还设有BD管理模块,实现BD的收发通道的读写管理和BD的初始化。DMA控制器中还设有BD初始化模块,完成上电/复位时循环BD队列的初始化,上电及开启DMA通道后,BD初始化模块会实现各个通道的BD链表的初始化,各个通道的初始化控制相对独立,根据循环BD队列的数目和循环BD队列的配置模式实现各自的初始化。BD收发通道管理模块用于实现各个通道的内部循环BD队列和CPU的循环BD队列的交互,发送/接收开始时,实现循环BD队列从主机侧读出,写入到发送/接收的硬件循环BD队列中,发送/接收完成时,实现循环BD队列从硬件发送/接收BD管理模块读出,写入到主机侧的循环BD队列中,各个DMA通道完全独立。
优选地,所述DMA控制器还用于供用户配置每个通道的优先级调度模式;所述优先级调度模式包括优先级模式、轮询模式及混杂工作模式。
具体地,DMA控制器可以配置为以下5种优先级调度模式:(1)绝对优先级模式,0到7;(2)4个优先级,4个轮询,0到3绝对优先级;(3)2个优先级,0到1;(4)0优先级,1~7轮询;(5)全轮询模式。
参见图3,所述收通道具体用于:
接收应用侧的数据,对数据进行缓存、排队和仲裁后,通过总线仲裁调度单元将数据发送到主机侧,等待数据发送完成后,通过中断控制器产生收包中断通知给主机侧,通知主机侧接收数据。接收DMA开启后,状态机会定期的启动DMA的写操作,当应用层有数据待接收,接收通道会根据接收的报文大小确认是否需要分配的循环BD队列数目,如果需要多个循环BD队列,会将数据帧根据循环BD队列设置大小进行数据切割,并用多个循环BD队列进行缓存,得到循环BD队列后,根据循环BD队列对应的DMA地址将数据写入到主机侧,写入完成后刷新BD链表;当配置的定时刷新机制触发后,将更新的硬件BD链表同步刷新到主机侧,并通过中断通知主机进行数据接收。
所述收通道的初始化过程包括:
配置通道的基本参数:包括Burst长度、接收长包中循环BD队列的拆分数量、循环BD队列的地址和循环BD队列地址的设置模式;
使能DMA进行初始化;
配置自动DMA模式;
配置DMA的工作模式为启动DMA收包流程。
具体地,收通道支持启动DMA后,无需软件再次触发DMA使能,硬件自动重新启动DMA模式,软件收包并更新循环BD队列后,无需软件参与,硬件自动同步更新本地循环BD队列。发通道硬件根据软件触发的命令请求,读取指定的循环BD队列数目,并进行数据收发。
参见图4,所述发通道具体用于:
当主机侧需要发送数据时,通过主机侧的配置管理模块通知发送控制模块启动数据发送,即DMA控制器接收主机侧的数据发送启动指令,通过发送仲裁模块根据优先级及通道的状态选择出相应的通道(发送仲裁模块实现了多个请求的仲裁,并根据优先级/轮询的仲裁模式及各个通道/模块的当前状态选择出一个通道),并将选通的读命令报文发送到主机侧;
主机侧响应后,通过发通道控制模块接收主机侧的数据,并发送至缓存控制模块,由于数据被分割成多个数据快进行传输,所以缓存控制模块根据数据块的分块信息进行缓存,等待缓存完成后,以连续数据帧的方式将数据发送到应用侧;
等待数据发送完成后,通过中断控制器通知主机侧;
这样,该DMA控制器实现数据在主机侧和应用侧之间的高速、保序、可靠的数据传输。在接收和发送过程中,接收和发送数据转换模块用于完成数据的位宽变换、大小字节序变化和数据对齐处理,确保内部数据字节序和主机侧字节序一致。
发通道的DMA初始化过程包括:
配置通道的基本参数:包括Burst长度、发送长包中循环BD队列的发送数量、循环BD队列的地址和循环BD队列地址的设置模式,所述设置模式包括对齐模式和非对齐模式;其中发送循环BD队列支持非对齐模式,对于长包发送,支持单个发送循环BD队列配置长帧,比如10K的报文配置,循环BD队列的起始地址可非对齐,但地址必须连续。
配置通道使能;
配置发送报文的数目和地址;
配置DMA的工作模式为启动DMA发包流程。
优选地,DMA控制器还用于供用户配置BD更新模式;
所述BD更新模式包括硬件更新和软件更新,硬件更新用于根据数据收发过程中产生的BD完成标记,确定循环BD队列更新完成;软件更新用于根据数据收发过程中硬件上报的BD信息,自动更新循环BD队列。
优选地,所述发通道还用于当检测到数据传输错误时,进行数据重传;
所述DMA控制器还用于通过硬件或软件配置发通道的数据接收模式,所述数据接收模式包括中断方式和/或轮询方式。
具体地,DMA控制器的发通道支持对错误的数据传输进行数据重传,在数据重传过程中,支持以32/64/128/256/512字节定长进行分割传输,这样就可以通过最小损耗方式实现最高性能的数据可靠性传输。所述DMA控制器还用于供用户动态配置数据采样周期、数据采样周期的间隔时间、固定采样的报文数和固定采样的BD数目。接收和发送BD管理模块负责完成收发循环队列的帧信息维护、接收和发送请求管理、发送模块还承担数据的错误判断和重传,实现数据的可靠传出。接收和发送管理模块根据配置的DMA通道数而切换数量。
优选地,所述DMA控制器还用于供用户配置数据接收或发送过程中的错误控制模式,所述错误控制模式包括跳过错误的循环BD队列,并通过中断或寄存器方式通知软件。这样就可以快速故障处理,提高DMA的传输效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

Claims (10)

1.一种具有高速缓存管理功能的DMA控制器,其特征在于,
所述DMA控制器设有若干个独立的通道;所述通道包括收通道和发通道;其中,所述收通道用于接收应用侧的数据,并发送给主机侧;所述发通道用于接收主机侧的数据,并发送给应用侧;
DMA控制器还用于供用户配置通道启用的数量;
所述通道还连接不同的外设,DMA控制器还用于供用户根据通道连接的外设配置该通道单次PCIE读写访问的Burst长度;
所述DMA控制器中还设有BD管理模块,实现BD的收发通道的读写管理和BD的初始化;所述DMA控制器中还设有BD初始化模块,完成上电/复位时循环BD队列的初始化,上电及开启DMA通道后,所述BD初始化模块会实现各个通道的BD链表的初始化,各个通道的初始化控制相对独立,根据循环BD队列的数目和循环BD队列的配置模式实现各自的初始化; BD收发通道管理模块用于实现各个通道的内部循环BD队列和CPU的循环BD队列的交互,发送/接收开始时,实现循环BD队列从主机侧读出,写入到发送/接收的硬件循环BD队列中,发送/接收完成时,实现循环BD队列从硬件发送/接收BD管理模块读出,写入到主机侧的循环BD队列中,各个所述DMA通道完全独立;
所述 DMA 控制器接收和发送所述 BD 管理模块收发循环队列的帧信息维护、接收和发送请求管理;所述 DMA 控制器的发送模块承担数据的错误判断和重传,所述 DMA 控制器的接收和发送管理模块根据配置的 DMA 通道数而切换数量。
2.根据权利要求1所述具有高速缓存管理功能的DMA控制器,其特征在于,
所述DMA控制器中每个通道设有独立的DMA配置及中断;所述DMA控制器中多个通道并行工作;
所述中断设有两种中断方式:定时触发或报文触发;定时触发用于当检测到报文缓存时间超过缓存时间阈值,或者是报文缓存数量超过缓存数量阈值时触发;报文触发用于当检测到循环BD队列中存在指定报文时,启动DMA,将指定报文发送给主机侧,并在完成指定报文的发送后触发。
3.根据权利要求2所述具有高速缓存管理功能的DMA控制器,其特征在于,
所述DMA控制器还用于实现接收长包重组和发送长包分片;所述接收长包重组具体用于将接收到的若干个数据包进行重组;所述发送长包分片具体用于将发送的数据包拆分成多个数据包发送;
DMA控制器供用户配置发送长包中循环BD队列的发送数量和接收长包中循环BD队列的重组数量;
所述DMA控制器还用于供用户配置每个通道中循环BD队列的地址。
4.根据权利要求3所述具有高速缓存管理功能的DMA控制器,其特征在于,
所述通道还用于对接不同的外部时钟域,所述循环BD队列为FIFO存储器;
所述DMA控制器还用于当接收到循环BD队列的反压信号时,等待反压信号清除后,再进行下一帧数据的读写;所述反压信号由循环BD队列在缓存空间大于设定值后生成。
5.根据权利要求4所述具有高速缓存管理功能的DMA控制器,其特征在于,
所述DMA控制器还用于供用户配置每个通道的优先级调度模式;所述优先级调度模式包括优先级模式、轮询模式及混杂工作模式。
6.根据权利要求5所述具有高速缓存管理功能的DMA控制器,其特征在于,所述收通道具体用于:
接收应用侧的数据,对数据进行缓存、排队和仲裁后,通过总线仲裁调度单元将数据发送到主机侧,等待数据发送完成后,通过中断控制器产生收包中断通知给主机侧,通知主机侧接收数据;
所述发通道具体用于:
当接收到主机侧的数据发送启动指令时,通过发送仲裁模块根据优先级及通道的状态选择出相应的通道,并将选通的读命令报文发送到主机侧;
通过发通道控制模块接收主机侧的数据,并发送至缓存控制模块,缓存控制模块根据数据块的分块信息进行缓存,等待缓存完成后,以连续数据帧的方式将数据发送到应用侧;
等待数据发送完成后,通过中断控制器通知主机侧。
7.根据权利要求1所述具有高速缓存管理功能的DMA控制器,其特征在于,
DMA控制器还用于供用户配置BD更新模式;
所述BD更新模式包括硬件更新和软件更新,硬件更新用于根据数据收发过程中产生的BD完成标记,确定循环BD队列更新完成;软件更新用于根据数据收发过程中硬件上报的BD信息,自动更新循环BD队列。
8.根据权利要求1所述具有高速缓存管理功能的DMA控制器,其特征在于,
所述发通道还用于当检测到数据传输错误时,进行数据重传;
所述DMA控制器还用于通过硬件或软件配置收通道的数据接收模式,所述数据接收模式包括中断方式和/或轮询方式。
9.根据权利要求8所述具有高速缓存管理功能的DMA控制器,其特征在于,
所述DMA控制器还用于供用户动态配置数据采样周期、数据采样周期的间隔时间、固定采样的报文数和固定采样的BD数目。
10.根据权利要求8所述具有高速缓存管理功能的DMA控制器,其特征在于,
所述DMA控制器还用于供用户配置数据接收或发送过程中的错误控制模式,所述错误控制模式包括跳过错误的循环BD队列,并通过中断或寄存器方式通知软件。
CN202010513017.2A 2020-06-08 2020-06-08 具有高速缓存管理功能的dma控制器 Active CN111666237B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010513017.2A CN111666237B (zh) 2020-06-08 2020-06-08 具有高速缓存管理功能的dma控制器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010513017.2A CN111666237B (zh) 2020-06-08 2020-06-08 具有高速缓存管理功能的dma控制器

Publications (2)

Publication Number Publication Date
CN111666237A CN111666237A (zh) 2020-09-15
CN111666237B true CN111666237B (zh) 2022-06-28

Family

ID=72387020

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010513017.2A Active CN111666237B (zh) 2020-06-08 2020-06-08 具有高速缓存管理功能的dma控制器

Country Status (1)

Country Link
CN (1) CN111666237B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114448780B (zh) * 2022-01-27 2023-06-20 西安微电子技术研究所 一种基于pcie接口的以太网控制器异常处理系统和方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304335A (zh) * 2018-02-07 2018-07-20 南京南瑞继保电气有限公司 一种通过dma接收串口不定长报文的方法
CN110071755A (zh) * 2019-04-26 2019-07-30 中国电子科技集团公司第五十四研究所 一种卫星移动通信射频接口控制器及射频信号处理装置
CN110941578A (zh) * 2019-11-26 2020-03-31 成都天玙兴科技有限公司 一种具有dma功能的lio的设计方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0427407A3 (en) * 1989-11-03 1993-03-10 Compaq Computer Corporation Parallel port with direct memory access capabilities
CN100527111C (zh) * 2007-09-29 2009-08-12 北京时代民芯科技有限公司 一种片上dma电路及其实现方法
CN103176932B (zh) * 2011-12-23 2017-04-26 锐迪科(重庆)微电子科技有限公司 一种dma数据传输方法及系统
CN103793342B (zh) * 2012-11-02 2017-02-08 中兴通讯股份有限公司 一种多通道直接内存存取dma控制器
CN104104412B (zh) * 2014-07-28 2016-09-14 科大智能电气技术有限公司 一种基于dma的电力线网络系统及其通讯方法
CN104850517B (zh) * 2015-05-20 2018-01-12 新华三技术有限公司 一种dma传输报文数据的方法及装置
CN105183680B (zh) * 2015-09-18 2018-03-20 烽火通信科技股份有限公司 实现PCIe接口转CF卡接口的FPGA芯片及方法
CN106951388B (zh) * 2017-03-16 2020-06-30 湖南博匠信息科技有限公司 一种基于PCIe的DMA数据传输方法及系统
CN109471816B (zh) * 2018-11-06 2021-07-06 西安微电子技术研究所 一种基于描述符的pcie总线dma控制器及数据传输控制方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304335A (zh) * 2018-02-07 2018-07-20 南京南瑞继保电气有限公司 一种通过dma接收串口不定长报文的方法
CN110071755A (zh) * 2019-04-26 2019-07-30 中国电子科技集团公司第五十四研究所 一种卫星移动通信射频接口控制器及射频信号处理装置
CN110941578A (zh) * 2019-11-26 2020-03-31 成都天玙兴科技有限公司 一种具有dma功能的lio的设计方法及装置

Also Published As

Publication number Publication date
CN111666237A (zh) 2020-09-15

Similar Documents

Publication Publication Date Title
US20200174953A1 (en) Methods and apparatus for synchronizing uplink and downlink transactions on an inter-device communication link
US20190155760A1 (en) NVME Data Processing Method and NVME Device
US7526593B2 (en) Packet combiner for a packetized bus with dynamic holdoff time
EP1896965B1 (en) Dma descriptor queue read and cache write pointer arrangement
US6934776B2 (en) Methods and apparatus for determination of packet sizes when transferring packets via a network
US8463969B2 (en) Extended message signal interrupt
EP0498201A2 (en) Generic high bandwidth adapter architecture
US8352710B2 (en) Off-loading of processing from a processor blade to storage blades
US5317692A (en) Method and apparatus for buffer chaining in a communications controller
CN112835829B (zh) 多通道dma传输测控信号的方法
US8494010B2 (en) Data transfer device, data transmitting device, data receiving device, and data transfer method
US8356299B2 (en) Interrupt processing method and system
CN111666237B (zh) 具有高速缓存管理功能的dma控制器
CN111538694A (zh) 一种用于网络接口支持多链接和重传的数据缓存方法
CN116301627A (zh) 一种NVMe控制器及其初始化、数据读写方法
CN113794713B (zh) Fc-ae-1553协议桥接mil-std-1553和uart的通讯处理方法
US6961837B2 (en) Method and apparatus for address translation pre-fetch
US20130198548A1 (en) Apparatus and method for saving power of usb device
EP1236091B1 (en) Register arrangement for optimum access
CN116932454B (zh) 数据传输方法、装置、电子设备及计算机可读存储介质
JP6885635B1 (ja) 情報処理装置、情報処理方法及び情報処理装置用プログラム
US11188140B2 (en) Information processing system
JP2000244585A (ja) バスインタフェース回路
JP3458037B2 (ja) スプリットバス制御方式
KR100441884B1 (ko) 패킷 처리 엔진과 메인 프로세서간에 고속 블록 데이터전송을 수행하는 네트워크 시스템 및 그것의 dma운영방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220531

Address after: 518000 9C, building 8, Haiyin Great Wall, Nanshan District, Shenzhen, Guangdong

Applicant after: Wang Bin

Applicant after: Shenzhen Longxin Information Technology Co.,Ltd.

Address before: 518000 9C, building 8, Haiyin Great Wall, Nanshan District, Shenzhen, Guangdong

Applicant before: Wang Bin

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230727

Address after: Unit 12-B, North Science and Technology Innovation Building, No. 9 Yuexing Fifth Road, Gaoxin District Community, Yuehai Street, Nanshan District, Shenzhen City, Guangdong Province, 518000

Patentee after: Shenzhen Longxin Information Technology Co.,Ltd.

Address before: 518000 9C, building 8, Haiyin Great Wall, Nanshan District, Shenzhen, Guangdong

Patentee before: Wang Bin

Patentee before: Shenzhen Longxin Information Technology Co.,Ltd.