CN103995789B - 一种直接内存存取的实现系统及方法 - Google Patents

一种直接内存存取的实现系统及方法 Download PDF

Info

Publication number
CN103995789B
CN103995789B CN201410245401.3A CN201410245401A CN103995789B CN 103995789 B CN103995789 B CN 103995789B CN 201410245401 A CN201410245401 A CN 201410245401A CN 103995789 B CN103995789 B CN 103995789B
Authority
CN
China
Prior art keywords
data
message
module
operation management
management maintainance
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
CN201410245401.3A
Other languages
English (en)
Other versions
CN103995789A (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.)
Shanghai Feixun Data Communication Technology Co Ltd
Original Assignee
Shanghai Feixun Data Communication 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 Shanghai Feixun Data Communication Technology Co Ltd filed Critical Shanghai Feixun Data Communication Technology Co Ltd
Priority to CN201410245401.3A priority Critical patent/CN103995789B/zh
Publication of CN103995789A publication Critical patent/CN103995789A/zh
Application granted granted Critical
Publication of CN103995789B publication Critical patent/CN103995789B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供一种直接内存存取的实现系统,包括:交换模块用于当源模块发出DMA请求并将产生的报文和数据传输出去;切换模块用于在接收到源模块发出的DMA请求和报文和数据时将其直接发送;数据报文控制模块用于响应DMA请求,根据预存的数据报文优先级判断报文和数据是否处于紧急状态,若是,中央处理模块处理报文和数据;若否,将报文和数据写入数据报文控制模块下挂的随机存储模块缓存,当数据报文控制模块检测到中央处理模块处理完处于紧急状态的报文和数据后,读取缓存在随机存储模块中的报文和数据,中央处理模块处理处理报文和数据。本发明实现了FPGA下挂的DDR与CPU实现的共享内存,大大提高系统对大数据与报文的处理能力,提升CPU处理系统事件的效率。

Description

一种直接内存存取的实现系统及方法
技术领域
本发明属于网络通信技术领域,特别是涉及一种直接内存存取的实现系统及方法。
背景技术
在大数据交换的机架式设备中,交换中每时每刻有大量的OAM(操作(operation)、管理(administration)、维护(maintenance))报文和数据需要上报到CPU中,需要与CPU实现共享。但是CPU本身也承载着大量的系统其他的管理任务工作。
在传统设计中,通常会采用交换中的PCIe中总线与CPU的总线进行通信时交换这些报文和数据信息。这样做本身会占据CPU大量的运行时隙,保证这些数据和报文都得到相应的处理,这实际上是降低了系统本身的系统效率。在现有一些设备CPU大数据量的处理过程中一般采用CPU的内部DMA控制器的操作,来实现数据直接通过I/O交换工作方式,达到内存中。这种方式中,首先是PCIe设备发出DMA(Direct Memory Access,直接内存存取)请求,CPU接受到请求后会响应该请求。此时CPU将工作方式更改为DMA操作方式,此时CPU放弃对内存的控制,转由DMA控制器直接控制。由CPU内部的DMA控制器对内存寻址,决定数据传送的内存单元地址和数据的量,并执行响应的数据传送的操作。当数据操作完成后,DMA控制器向CPU报告操作完成。此时CPU重新获得内存的控制权。在CPU的DMA方式,虽然可以满足将PCIe设备将大量的OAM报文和数据写入内存中。但是其缺点有1)是在CPU内部的DMA方位内存的阶段中,内存的效能没有充分发挥。相当一部分的内存工作周期是空闲的。这是因为PCIe设备在传送两个数据之间的间隔一般总是大于内存的存储周期。2)CPU在执行DMA方式的时候会放弃对系统总线上的内存的操作。此时,CPU如果有些内存操作时被禁止的,实际上此时的CPU处于一个挂起状态(即非正常工作状态)。这也是降低了CPU的处理系统事件的效率大大降低。
因而,如何提供一种直接内存存取的实现系统及方法,以解决现有技术中的等种种缺陷,实已成为本领域从业者亟待解决的技术问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种直接内存存取的实现系统及方法,用于解决现有技术中在CPU内部的DMA方式内存阶段,内存效能无法充分发挥,相当一部分的内存工作周期是空闲的,且CPU在执行DMA方式的时候会放弃对系统总线上的内存的操作,此时CPU如果禁止某些内存操作时,CPU处于挂起状态,这样便降低了CPU的处理系统事件的效率大大降低的问题。
为实现上述目的及其他相关目的,本发明一方面提供一种直接内存存取的实现系统,应用于与产生操作管理维护报文和数据的源模块连接的大数据交换的机架式设备中,所述机架式设备包括用于处理所述操作管理维护报文和数据的中央处理模块,所述直接内存存取的实现系统包括:与所述源模块连接的交换模块,用于当所述源模块发出DMA请求并将产生的操作管理维护报文和数据传输至所述交换模块时根据所述源模块的识别符再将所述操作管理维护报文和数据转发出去;与所述交换模块连接的切换模块还与所述中央处理模块和一数据报文控制模块连接,用于在接收到所述源模块发出的DMA请求和所述操作管理维护报文和数据时将其直接发送至所述数据报文控制模块;与所述中央处理模块连接的所述数据报文控制模块用于响应所述DMA请求,根据预存的数据报文优先级判断所述操作管理维护报文和数据是否处于紧急状态,若是,则令所述中央处理模块处理所述操作管理维护报文和数据;若否,则将所述操作管理维护报文和数据写入所述数据报文控制模块下挂的多个随机存储模块进行缓存,当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后,读取缓存在所述随机存储模块中的操作管理维护报文和数据,令所述中央处理模块处理处理所述操作管理维护报文和数据。
优选地,所述切换模块包括第一传输通道和第二传输通道,还用于当接收到DMA请求和操作管理维护报文和数据时将操作管理维护报文和数据通过所述第一传输通道直接发送给所述数据报文控制模块;当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据,将传输通道从所述第一传输通道切换至第二传输通道,通过所述第二传输通道将未处于紧急状态的操作管理维护报文和数据传输给所述中央处理模块,令所述中央处理模块处理处理所述操作管理维护报文和数据。
优选地,所述数据报文控制模块包括:用于判断所述操作管理维护报文和数据是否处于紧急状态的判断单元;符合PCIe接口协议、用于传输操作管理维护报文和数据的数据传输单元;用于缓存两个不同时钟域间数据报文的跨时钟域的数据缓存单元;用于检测所述中央处理模块是否处理完处于紧急状态的操作管理维护报文和数据的检测单元;及用于控制所述随机存储模块、及对缓存在所述随机存储模块进行读写操作的缓存控制单元。
优选地,所述数据传输单元为PCIe-IP核,所述PCIe-IP核中包括用于初始PCIe-IP核参数的初始单元。
优选地,所述数据缓存单元包括双时钟异步写入先入先出单元和双时钟异步读取先入先出单元,其中,所述双时钟异步写入先入先出单元用于在判断出所述操作管理维护报文和数据未处于紧急状态时将所述操作管理维护报文和数据写入其中;所述双时钟异步读取先入先出单元用于在所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后通过所述缓存控制单元从随机存储模块中读取缓其中的操作管理维护报文和数据,并通过所述数据传输单元将所述操作管理维护报文和数据通过所述切换模块传输至所述中央处理模块。
优选地,所述交换模块和所述切换模块、所述切换模块与所述数据报文控制模块、及所述切换模块和所述中央处理模块都是通过PCIe总线连接的。
本发明另一方面还提供一种直接内存存取的实现方法,应用于与产生操作管理维护报文和数据的源模块连接的大数据交换的机架式设备中的直接内存存取的实现系统,所述机架式设备包括用于处理所述操作管理维护报文和数据的中央处理模块,所述直接内存存取的实现系统包括与所述源模块连接的交换模块,与所述交换模块连接的切换模块,所述切换模块还与所述中央处理模块和数据报文控制模块连接,及下挂在所述数据报文控制模块的多个随机存储模块,所述直接内存存取的实现方法包括:所述源模块发出DMA请求并将产生的操作管理维护报文和数据传输至所述交换模块;所述交换模块根据所述源模块的识别符再将所述操作管理维护报文和数据转发至所述切换模块;所述切换模块在接收到所述源模块发出的DMA请求和所述操作管理维护报文和数据时将其直接发送至所述数据报文控制模块;所述数据报文控制模块响应所述DMA请求,根据预存的数据报文优先级判断所述操作管理维护报文和数据是否处于紧急状态,若是,则令所述中央处理模块处理所述操作管理维护报文和数据;若否,则将所述操作管理维护报文和数据写入所述数据报文控制模块下挂的多个随机存储模块进行缓存,当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后,读取缓存在所述随机存储模块中的操作管理维护报文和数据,令所述中央处理模块处理处理所述操作管理维护报文和数据。
优选地,所述直接内存存取的实现方法还包括:当接收到DMA请求和操作管理维护报文和数据时将操作管理维护报文和数据通过所述第一传输通道直接发送给所述数据报文控制模块;当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据,将传输通道从所述第一传输通道切换至第二传输通道,通过所述第二传输通道将未处于紧急状态的操作管理维护报文和数据传输给所述中央处理模块,令所述中央处理模块处理处理所述操作管理维护报文和数据。
优选地,所述直接内存存取的实现方法还包括:在判断出所述操作管理维护报文和数据未处于紧急状态时将所述操作管理维护报文和数据写入所述数据报文控制模块中;在所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后从随机存储模块中读取缓存其中的操作管理维护报文和数据,并将操作管理维护报文和数据通过所述切换模块传输至所述中央处理模块。
优选地,所述直接内存存取的实现方法还包括:在所述数据报文控制模块接收到DMA请求和所述操作管理维护报文和数据时初始化所述数据报文控制模块中的PCIe-IP核参数。
如上所述,本发明的直接内存存取的实现系统及方法,具有以下有益效果:实现了FPGA下挂在的DDR2与CPU实现的共享内存的功能,同时,这种共享方式不占用CPU内部的总线,并不影响CPU的其他管理方式,而且更加快速、灵活的实现CPU对数据和OAM报文的处理。
附图说明
图1显示为本发明直接内存存取的实现系统原理结构示意图。
图2显示为本发明直接内存存取的实现系统中数据报文控制模块的原理结构图。
图3显示为本发明直接内存存取的实现系统中数据报文控制模块将操作管理维护报文和数据写入随机存储模块的过程图。
图4显示为本发明直接内存存取的实现系统中数据报文控制模块从随机存储模块读取操作管理维护报文和数据的过程图。
图5显示为本发明直接内存存取的实现方法流程图。
图6显示为本发明直接内存存取的实现方法中步骤S4的具体流程图。
元件标号说明
1 直接内存存取的实现系统
11 交换模块
12 切换模块
13 数据报文控制模块
131 判断单元
132 数据传输单元
133 数据缓存单元
1331 双时钟异步写入先入先出单元
1332 双时钟异步读取先入先出单元
134 检测单元
135 缓存控制单元
14 随机存储模块
2 源模块
3 机架式设备
31 中央处理模块
S1~S7 步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本发明的发明原理为:DMA存储操作:交换芯片产生大量的OAM报文和数据,通过PCIe总线,送到PCIe桥接芯片。PCIe桥接芯片并未将OAM数据报文直接传送给CPU进行处理,而是将其转发给FPGA。FPGA通过PCIe IP Megacore实现了PCIe接口协议,从而接收到这些数据和OAM报文。然后FPGA内部的PCIe Megacore将接收到的这些报文,通过发送到FPGA内部的一个双时钟的异步的WRITE FIFO中进行存储。而此时WRITE FIFO中的另一端将这些数据通过FPGA的DDR2控制器写入到下挂在FPGA下的DDR2中去;DMA读取操作:通过FPGA中的DDR2控制器将数据从DDR2内存单元中读出,并送入对应的异步Read FIFO中,然后PCIeMegacore再从ReadFIFO中取走刚才的数据,再通过PCIe总线,通过PCIe桥发送给CPU进行处理。
其中,OAM报文和数据是指根据运营商网络运营的实际需要,通常将网络的管理工作划分为3大类:操作(Operation)、管理(Administration)和维护(Maintenance)。操作主要完成日常网络和业务进行的分析、预测、规划和配置工作;维护主要是对网络及其业务的测试和故障管理等进行的日常操作活动。
OAM功能进行了定义:
1)性能监控并产生维护信息,根据这些信息评估网络的稳定性;
2)通过定期查询的方式检测网络故障,产生各种维护和告警信息;
3)通过调度或者切换到其它的实体,旁路失效实体,保证网络的正常运行;
4)将故障信息传递给管理实体。
实施例一
本实施例提供一种直接内存存取的实现系统1,该系统1应用于与产生操作管理维护报文和数据的源模块2连接的大数据交换的机架式设备3中,所述机架式设备包括用于处理所述操作管理维护报文和数据的中央处理模块31,请参阅图1,显示为直接内存存取的实现系统的原理结构图,所述直接内存存取的实现系统1包括:交换模块11、切换模块12、数据报文控制模块13及多个随机存储模块14。在本实施例中,所述随机存储模块14可以采用DDR2或DDR3等。
所述交换模块11与所述源模块2连接用于当所述源模块2发出DMA(直接内存存取)请求并将所述源模块2产生的操作管理维护报文和数据传输至所述交换模块11时,所述交换模块11根据所述源模块2的识别符再将所述操作管理维护报文和数据转发至所述切换模块13。在本实施例中,所述源模块2为终端设备,包括PC机、笔记本电脑等等。本实施例中,为了截获发给中央处理模块31的数据报文才会根据所述源模块2的识别符将所述操作管理维护报文和数据转发给所述切换模块12进行处理。
所述切换模块12与所述交换模块11连接,还与中央处理模块31和所述数据报文控制模块13连接,所述切换模块12用于在接收到所述源模块2发出的DMA请求和其产生的操作管理维护报文和数据时将所述操作管理维护报文和数据直接发送至所述数据报文控制模块13。在本实施例中,所述切换模块12具有第一传输通道和第二传输通道,当所述切换模块12首次接收到DMA请求和操作管理维护报文和数据时将操作管理维护报文和数据通过所述第一传输通道直接发送给所述数据报文控制模块13。在本实施例中,所述切换模块12为PCIe桥接芯片。
所述数据报文控制模块13与所述中央处理模块31连接应用于接收DMA请求和操作管理维护报文和数据,响应所述源模块2发出的DMA请求,并根据预存在所述数据报文模块13中的数据报文优先级判断接收到的所述操作管理维护报文和数据是否处于紧急状态,若操作管理维护报文和数据处于紧急状态,所述数据报文控制模块13再将操作管理维护报文和数据返回至所述切换模块12,所述切换模块12将传输通道从所述第一传输通道切换至第二传输通道,通过所述第二传输通道将处于紧急状态的操作管理维护报文和数据传输给所述中央处理模块31,令所述中央处理模块31处理所述操作管理维护报文和数据;若所述操作管理维护报文和数据没有处于紧急状态,则将所述操作管理维护报文和数据写入所述数据报文控制模块13下挂的多个随机存储模块14进行缓存,当所述数据报文控制模块13检测到所述中央处理模块31处理完处于紧急状态的操作管理维护报文和数据后,读取缓存在所述随机存储模块中的操作管理维护报文和数据,所述数据报文控制模块13再将操作管理维护报文和数据返回至所述切换模块12,所述切换模块12将传输通道从所述第一传输通道切换至第二传输通道,通过所述第二传输通道将未处于紧急状态的操作管理维护报文和数据传输给所述中央处理模块31,令所述中央处理模块31处理处理所述操作管理维护报文和数据。在本实施例中,所述数据报文控制模块13为一FPGA。
请参阅图2,显示为直接内存存取的实现系统中数据报文控制模块的原理结构图,所述数据报文控制模块13包括判断单元131、数据传输单元132、数据缓存单元133、检测单元134、及缓存控制单元135。其中,所述判断单元131用于判断接收到的所述操作管理维护报文和数据是否处于紧急状态的判断单元。所述数据传输单元132符合PCIe接口协议、用于传输操作管理维护报文和数据。在所述数据传输单元132为PCIe IP核,所述PCIe-IP核中包括用于初始PCIe-IP核参数的初始单元。所述数据缓存单元133用于缓存两个不同时钟域间数据报文的跨时钟域的数据缓存单元。所述数据缓存单元133包括双时钟异步写入先入先出单元1331(WRITE FIFO)和双时钟异步读取先入先出单元(READ FIFO)1332,其中,所述双时钟异步写入先入先出单元1331用于在判断出所述操作管理维护报文和数据未处于紧急状态时,同时发出写入命令,根据所述写入命令将所述操作管理维护报文和数据写入。其中;所述双时钟异步读取先入先出单元1332用于在所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后发出读取命令,根据所述读取命令通过所述缓存控制单元134从随机存储模块14中读取缓存其中的操作管理维护报文和数据,并通过所述数据传输单元132将所述操作管理维护报文和数据传输至所述切换模块13。所述检测单元134与所述数据传输单元132、所述中央处理模块31连接,用于检测所述中央处理模块31是否处理完处于紧急状态的操作管理维护报文和数据。所述缓存控制单元135用于控制所述随机存储模块14、及对缓存在所述随机存储模块14进行读写操作。在本实施例中,由于数据传输单元132与缓存控制单元135处理数据报文的速度不一致,因此,在所述数据报文控制模块13中设置双时钟异步写入先入先出单元1331(WRITE FIFO)和双时钟异步读取先入先出单元(READ FIFO)1332以便所述数据传输单元132与缓存控制单元135可以按照各自的速度进行读取和写入操作。请参阅图3和图4,显示为直接内存存取的实现系统中数据报文控制模块将操作管理维护报文和数据写入随机存储模块的过程图和直接内存存取的实现系统中数据报文控制模块从随机存储模块读取操作管理维护报文和数据的过程图。
在本实施例中,所述交换模块11和所述切换模块12、所述切换模块12与所述数据报文控制模块13、及所述切换模块12和所述中央处理模块31都是通过PCIe总线连接的。
本实施例所述的直接内存存取的实现系统实现了FPGA下挂在的随机存储模块(DDR2)与CPU实现的共享内存的功能。同时,这种共享方式不占用CPU内部的总线,从而并不影响CPU的其他管理方式,而且所述直接内存存取的实现系统可以快速、灵活的实现CPU对OAM报文和数据的处理,大大提高了CPU处理系统事件的效率。
实施例二
本实施例提供一种直接内存存取的实现方法,应用于与产生操作管理维护报文和数据的源模块连接的大数据交换的机架式设备中的直接内存存取的实现系统,所述机架式设备包括用于处理所述操作管理维护报文和数据的中央处理模块,所述直接内存存取的实现系统包括与所述源模块连接的交换模块,与所述交换模块连接的切换模块,所述切换模块还与所述中央处理模块和数据报文控制模块连接,及下挂在所述数据报文控制模块的多个随机存储模块,请参阅图5,显示为直接内存存取的实现方法流程图,所述直接内存存取的实现方法包括:
S1,当所述源模块发出DMA(直接内存存取)请求并将所述源模块产生的操作管理维护报文和数据传输至所述交换模块时,所述交换模块根据所述源模块的识别符再将所述操作管理维护报文和数据转发至所述切换模块。在本实施例中,为了截获发给中央处理模块的数据报文才会根据所述源模块的识别符将所述操作管理维护报文和数据转发给所述切换模块进行处理。
S2,所述切换模块在接收到所述源模块发出的DMA请求和其产生的操作管理维护报文和数据时将所述操作管理维护报文和数据直接发送至所述数据报文控制模块。在本实施例中,所述切换模块具有第一传输通道和第二传输通道,当所述切换模块首次接收到DMA请求和操作管理维护报文和数据时将操作管理维护报文和数据通过所述第一传输通道直接发送给所述数据报文控制模块。在本实施例中,所述切换模块为PCIe桥接芯片。
S3,所述数据报文控制模块接收DMA请求和操作管理维护报文和数据,响应所述源模块发出的DMA请求,并根据预存在所述数据报文模块中的数据报文优先级判断接收到的所述操作管理维护报文和数据是否处于紧急状态,若操作管理维护报文和数据处于紧急状态,则执行步骤S4;若操作管理维护报文和数据没有处于紧急状态,执行步骤S6。在本步骤中,所述数据报文控制模块接收到DMA请求和所述操作管理维护报文和数据时初始化所述数据报文控制模块中的PCIe-IP核参数。
S4,将所述操作管理维护报文和数据写入所述数据报文控制模块下挂的多个随机存储模块进行缓存,当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后,读取缓存在所述随机存储模块中的操作管理维护报文和数据,所述数据报文控制模块再将操作管理维护报文和数据返回至所述切换模块。所述数据报文控制模块包括判断单元、数据传输单元、数据缓存单元(双时钟异步写入先入先出单元和双时钟异步读取先入先出单元)、检测单元、及缓存控制单元。具体地讲,请参阅图6,显示为步骤S4的具体流程图,步骤S4包括:
S41,当判断单元判断出所述操作管理维护报文和数据没有处于紧急状态,所述数据传输单元接收所述操作管理维护报文和数据;
S42,通过双时钟异步写入先入先出单元存储所述操作管理维护报文和数据,发送写入命令,并将所述操作管理维护报文和数据发送至缓存控制单元;
S43,所述缓存控制单元根据所述写入命令将所述操作管理维护报文和数据写入到所述随机存储模块中;
S44,检测所述中央处理模块是否已处理完处于紧急状态的操作管理维护报文和数据,若否,则继续检测;若是,则执行下一步;
S45,在检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后所述缓存控制单元发出读取命令;
S46,根据所述读取命令通过所述缓存控制单元从随机存储模块中读取缓存其中的操作管理维护报文和数据,并通过所述数据传输单元将所述操作管理维护报文和数据传输至所述切换模块。
S5,所述切换模块将传输通道从所述第一传输通道切换至第二传输通道,通过所述第二传输通道将未处于紧急状态的操作管理维护报文和数据传输给所述中央处理模块,令所述中央处理模块处理处理所述操作管理维护报文和数据,结束进程。
S6,所述数据报文控制模块再将操作管理维护报文和数据返回至所述切换模块。
S7,所述切换模块将传输通道从所述第一传输通道切换至第二传输通道,通过所述第二传输通道将处于紧急状态的操作管理维护报文和数据传输给所述中央处理模块,令所述中央处理模块处理所述操作管理维护报文和数据,结束进程。
本发明所述的直接内存存取的实现系统及方法实现了FPGA下挂在的DDR2与CPU实现的共享内存的功能。同时,这种共享方式不占用CPU内部的总线。从而并不影响CPU的其他管理方式。而且更加快速,灵活的实现CPU对数据和OAM报文的处理。同时提高了机架式设备对大量数据与报文的处理能力,同时不影响系统CPU的处理效率的情况下。本发明经过验证,就数据的读取效率而言,比采用CPU内部DMA控制器,整体提升了25%的速度。且对系统的适应性更好,设计更加灵活。由于FPGA属于可编程器件,即可以根据系统的实际具体的需求进行相应的设计。
所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (10)

1.一种直接内存存取的实现系统,应用于与产生操作管理维护报文和数据的源模块连接的大数据交换的机架式设备中,所述机架式设备包括用于处理所述操作管理维护报文和数据的中央处理模块,其特征在于,所述直接内存存取的实现系统包括:
与所述源模块连接的交换模块,用于当所述源模块发出DMA请求并将产生的操作管理维护报文和数据传输至所述交换模块时根据所述源模块的识别符再将所述操作管理维护报文和数据转发出去;
与所述交换模块连接的切换模块还与所述中央处理模块和一数据报文控制模块连接,用于在接收到所述源模块发出的DMA请求和所述操作管理维护报文和数据时将其直接发送至所述数据报文控制模块;
与所述中央处理模块连接的所述数据报文控制模块用于响应所述DMA请求,根据预存的数据报文优先级判断所述操作管理维护报文和数据是否处于紧急状态,若是,则令所述中央处理模块处理所述操作管理维护报文和数据;若否,则将所述操作管理维护报文和数据写入所述数据报文控制模块下挂的多个随机存储模块进行缓存,当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后,读取缓存在所述随机存储模块中的操作管理维护报文和数据,令所述中央处理模块处理所述操作管理维护报文和数据。
2.根据权利要求1所述的直接内存存取的实现系统,其特征在于:所述切换模块包括第一传输通道和第二传输通道,还用于当接收到DMA请求和操作管理维护报文和数据时将操作管理维护报文和数据通过所述第一传输通道直接发送给所述数据报文控制模块;当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据,将传输通道从所述第一传输通道切换至第二传输通道,通过所述第二传输通道将未处于紧急状态的操作管理维护报文和数据传输给所述中央处理模块,令所述中央处理模块处理所述操作管理维护报文和数据。
3.根据权利要求1所述的直接内存存取的实现系统,其特征在于:所述数据报文控制模块包括:
用于判断所述操作管理维护报文和数据是否处于紧急状态的判断单元;
符合PCIe接口协议、用于传输操作管理维护报文和数据的数据传输单元;
用于缓存两个不同时钟域间数据报文的跨时钟域的数据缓存单元;
用于检测所述中央处理模块是否处理完处于紧急状态的操作管理维护报文和数据的检测单元;及
用于控制所述随机存储模块、及对缓存在所述随机存储模块进行读写操作的缓存控制单元。
4.根据权利要求3所述的直接内存存取的实现系统,其特征在于:所述数据传输单元为PCIe-IP核,所述PCIe-IP核中包括用于初始PCIe-IP核参数的初始单元。
5.根据权利要求3所述的直接内存存取的实现系统,其特征在于:所述数据缓存单元包括双时钟异步写入先入先出单元和双时钟异步读取先入先出单元,其中,所述双时钟异步写入先入先出单元用于在判断出所述操作管理维护报文和数据未处于紧急状态时将所述操作管理维护报文和数据写入其中;所述双时钟异步读取先入先出单元用于在所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后通过所述缓存控制单元从随机存储模块中读取缓其中的操作管理维护报文和数据,并通过所述数据传输单元将所述操作管理维护报文和数据通过所述切换模块传输至所述中央处理模块。
6.根据权利要求1所述的直接内存存取的实现系统,其特征在于:所述交换模块和所述切换模块、所述切换模块与所述数据报文控制模块、及所述切换模块和所述中央处理模块都是通过PCIe总线连接的。
7.一种直接内存存取的实现方法,应用于与产生操作管理维护报文和数据的源模块连接的大数据交换的机架式设备中的直接内存存取的实现系统,所述机架式设备包括用于处理所述操作管理维护报文和数据的中央处理模块,所述直接内存存取的实现系统包括与所述源模块连接的交换模块,与所述交换模块连接的切换模块,所述切换模块还与所述中央处理模块和数据报文控制模块连接,及下挂在所述数据报文控制模块的多个随机存储模块,其特征在于,所述直接内存存取的实现方法包括:
所述源模块发出DMA请求并将产生的操作管理维护报文和数据传输至所述交换模块;
所述交换模块根据所述源模块的识别符再将所述操作管理维护报文和数据转发至所述切换模块;
所述切换模块在接收到所述源模块发出的DMA请求和所述操作管理维护报文和数据时将其直接发送至所述数据报文控制模块;
所述数据报文控制模块响应所述DMA请求,根据预存的数据报文优先级判断所述操作管理维护报文和数据是否处于紧急状态,若是,则令所述中央处理模块处理所述操作管理维护报文和数据;若否,则将所述操作管理维护报文和数据写入所述数据报文控制模块下挂的多个随机存储模块进行缓存,当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后,读取缓存在所述随机存储模块中的操作管理维护报文和数据,令所述中央处理模块处理所述操作管理维护报文和数据。
8.根据权利要求7所述的直接内存存取的实现方法,其特征在于:所述直接内存存取的实现方法还包括:当接收到DMA请求和操作管理维护报文和数据时将操作管理维护报文和数据通过第一传输通道直接发送给所述数据报文控制模块;当所述数据报文控制模块检测到所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据,将传输通道从所述第一传输通道切换至第二传输通道,通过所述第二传输通道将未处于紧急状态的操作管理维护报文和数据传输给所述中央处理模块,令所述中央处理模块处理所述操作管理维护报文和数据。
9.根据权利要求7所述的直接内存存取的实现方法,其特征在于:所述直接内存存取的实现方法还包括:在判断出所述操作管理维护报文和数据未处于紧急状态时将所述操作管理维护报文和数据写入所述数据报文控制模块中;在所述中央处理模块处理完处于紧急状态的操作管理维护报文和数据后从随机存储模块中读取缓存其中的操作管理维护报文和数据,并将操作管理维护报文和数据通过所述切换模块传输至所述中央处理模块。
10.根据权利要求7所述的直接内存存取的实现方法,其特征在于:所述直接内存存取的实现方法还包括:在所述数据报文控制模块接收到DMA请求和所述操作管理维护报文和数据时初始化所述数据报文控制模块中的PCIe-IP核参数。
CN201410245401.3A 2014-06-04 2014-06-04 一种直接内存存取的实现系统及方法 Active CN103995789B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410245401.3A CN103995789B (zh) 2014-06-04 2014-06-04 一种直接内存存取的实现系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410245401.3A CN103995789B (zh) 2014-06-04 2014-06-04 一种直接内存存取的实现系统及方法

Publications (2)

Publication Number Publication Date
CN103995789A CN103995789A (zh) 2014-08-20
CN103995789B true CN103995789B (zh) 2017-08-04

Family

ID=51309961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410245401.3A Active CN103995789B (zh) 2014-06-04 2014-06-04 一种直接内存存取的实现系统及方法

Country Status (1)

Country Link
CN (1) CN103995789B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105868134B (zh) * 2016-04-14 2018-12-28 烽火通信科技股份有限公司 高性能多口ddr控制器及其实现方法
CN110532205B (zh) * 2019-07-17 2021-04-06 浙江大华技术股份有限公司 数据传输方法、装置、计算机设备和计算机可读存储介质
CN112291087B (zh) * 2020-10-19 2022-08-26 苏州盛科通信股份有限公司 Oam错误状态上报的实现方法和装置
CN114449030B (zh) * 2021-12-27 2024-03-12 天翼云科技有限公司 一种互联网服务系统、方法、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101184092A (zh) * 2007-12-10 2008-05-21 华中科技大学 环境感知可重构的移动终端通信处理器
CN101478473A (zh) * 2008-01-02 2009-07-08 中兴通讯股份有限公司 用于gpon olt的mac上行调度方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002244993A (ja) * 2001-02-14 2002-08-30 Canon Inc Dma転送制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101184092A (zh) * 2007-12-10 2008-05-21 华中科技大学 环境感知可重构的移动终端通信处理器
CN101478473A (zh) * 2008-01-02 2009-07-08 中兴通讯股份有限公司 用于gpon olt的mac上行调度方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
T_MPLS网络的OAM监测处理;朱冬艳等;《光通信技术》;20080208;全文 *

Also Published As

Publication number Publication date
CN103995789A (zh) 2014-08-20

Similar Documents

Publication Publication Date Title
CN106411790B (zh) 基于智能变电站保护控制系统的数据传输方法
CN103995789B (zh) 一种直接内存存取的实现系统及方法
CN103324592B (zh) 一种数据迁移控制方法、数据迁移方法及装置
CN100570566C (zh) 一种异构多核间协调调度的方法及异构多核系统
US20090138597A1 (en) system and method for accessing memory
CN104899170B (zh) 分布式智能平台管理总线ipmb连接方法及atca机框
CN104009976B (zh) 一种用于多主站系统之间的实时通信方法及其设备
CN105677608A (zh) 一种多主rs485总线仲裁方法及系统
CN102035688B (zh) 一种快速控制网络链路访问设计方法
CN104798010B (zh) 至少部分的串行存储协议兼容帧转换
CN106648896A (zh) 一种Zynq芯片在异构称多处理模式下双核共享输出外设的方法
CN106814657A (zh) 基于ARM的嵌入式实时EtherCAT主站构建方法
CN103558812B (zh) 基于fpga和arm的mvb网络四类设备网卡
CN104486185A (zh) 一种核电厂控制系统通讯方法及系统
CN103312614B (zh) 一种组播报文处理方法、线卡及通信设备
CN105763488A (zh) 数据中心汇聚核心交换机及其背板
CN107168810A (zh) 一种计算节点内存共享系统及读、写操作内存共享方法
CN104601490B (zh) 网络设备的流控方法和流控装置以及网络设备
CN104281587B (zh) 一种建立连接的方法及装置
CN105530153A (zh) 网络内的从设备通信方法、通信网络、主设备及从设备
TW201424295A (zh) 匯流排訊號監測裝置及方法
CN105283864B (zh) 管理裸机客户
CN104699649A (zh) 一种多分支串行总线接口及数据交换方法
CN105871761A (zh) 一种高阶矩阵开关、片上网络及通信方法
Vivekanand et al. Feasibility of using AM3358 beagle board for networked realtime signal acquisition

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PP01 Preservation of patent right

Effective date of registration: 20180313

Granted publication date: 20170804

PP01 Preservation of patent right
PD01 Discharge of preservation of patent
PD01 Discharge of preservation of patent

Date of cancellation: 20210313

Granted publication date: 20170804

PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20210313

Granted publication date: 20170804

PD01 Discharge of preservation of patent
PD01 Discharge of preservation of patent

Date of cancellation: 20240313

Granted publication date: 20170804