首页 / 用于数据记录仪的数据状态转移方法、系统及FPGA芯片

用于数据记录仪的数据状态转移方法、系统及FPGA芯片公开 发明

技术领域

[0001] 本发明涉及数据记录仪技术领域,尤其涉及一种用于数据记录仪的数据状态转移方法、系统及FPGA芯片。

相关背景技术

[0002] 数据记录仪是一种功能强大的设备,它专门用于收集、存储和管理多种类型的数据,广泛应用于工业自动化、汽车电子、环境监测以及科研等多个领域。这些设备能够处理的数据类型多样,包括但不限于温度、压力、湿度、电压等常规物理量,还涵盖了复杂的通信数据,如CAN(Controller Area Network,控制器局域网)数据和LIN(Local Interconnect Network,局部连接网络)数据。
[0003] 但是,传统数据记录仪的内部存储容量往往有限,这在很大程度上限制了其能够存储的数据量。如果数据记录仪存在大量的通信接口,采用PS(Process System,处理系统)端等传统处理器直接读取和写入这些数据,将会占用大量的处理器资源,影响到系统的整体性能和响应速度,甚至导致数据记录仪失去功能。

具体实施方式

[0029] 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的子样本可以相互组合。
[0030] 需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0031] 在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
[0032] 本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
[0033] 除非另有说明,术语“多个”表示两个或两个以上。
[0034] 本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
[0035] 术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
[0036] 下面是对本申请涉及的技术名词以及背景技术进行的介绍和解释:
[0037] 数据记录仪,是一种用于收集、存储和管理各种类型数据的设备,它在许多应用领域中发挥着重要作用,包括工业自动化、汽车电子、环境监测和科研等;数据记录仪可以处理多种数据类型,如温度、压力、湿度、电压、CAN数据、LIN数据等。
[0038] FPGA(Field‑Programmable Gate Array现场可编程逻辑门阵列),是一种可以在现场进行编程的集成电路,其中,FPGA内部包含大量的逻辑块和连接资源,用户可以通过编程对这些资源进行配置,以实现特定的逻辑功能;FPGA可以使用硬件描述语言来编写设计代码,并通过综合工具将代码转化为FPGA可以理解的配置数据。
[0039] 结合图1所示,本公开实施例提供了一种用于数据记录仪的数据状态转移方法,应用于FPGA芯片,用于数据记录仪的数据状态转移方法包括:
[0040] 步骤S101,响应于捕获准备状态,对各缓存区域分别进行数据查询;若查询到任一缓存区域中的数据队列存储有目标数据,进入头部读取状态;
[0041] 其中,数据记录仪包括多个通信接口,且通信接口与缓存区域一一对应;
[0042] 其中,目标数据通过对通信接口进行数据捕获得到;
[0043] 步骤S102,响应于头部读取状态,从缓存区域中的数据头部队列读取目标数据对应的数据头部信息,进入存储请求状态;
[0044] 其中,数据头部信息根据目标数据生成;
[0045] 步骤S103,响应于存储请求状态,根据数据头部信息请求数据存储地址,进入数据读取状态;
[0046] 步骤S104,响应于数据读取状态,从缓存区域的数据队列中提取目标数据,并按照数据存储地址存储数据头部信息和目标数据。
[0047] 采用本公开实施例提供的用于数据记录仪的数据状态转移方法,通过捕获准备状态查询数据队列中的目标数据,通过头部读取状态读取该目标数据对应的数据头部信息,通过存储请求状态根据数据头部信息确定数据存储地址,通过数据读取状态提取数据头部信息对应的目标数据,并按照数据存储地址存储数据头部信息和目标数据。这样,相较于利用处理系统端通过接口驱动直接读取接口数据,通过FPGA芯片建立数据缓冲区逐,同时,通过数据状态转移实现接口数据流转,能够有效避免处理系统端因数据接口过多导致占用大量处理器资源的问题,从而提高数据读取效率。
[0048] 在一些实施例中,FPGA芯片包括处理系统端,以通过处理系统端实现系统管理,其中,处理系统端包括R核和A核。
[0049] 在一些实施例中,R核,即Cortex‑R系列处理器,是用于嵌入式实时系统的处理器核心,该处理器以高性能、可靠性和实时响应能力而著称。
[0050] 在一些实施例中,A核,即Cortex‑A系列处理器,是应用处理器核,通常用于高性能计算和通用操作系统的执行,具有多级流水线、超标量执行、乱序执行等高级特性,使其能够高效处理多线程和多任务。
[0051] 在一些实施例中,若接收到处理系统端发送的开始指令,内部状态机开始跳转数据状态,轮询所有通信接口分别对应的数据头部队列;如果任一数据头部队列存在数据头部信息,则将数据头部信息从数据头部队列取出,并利用FDMA(Frequency Division Multiple Access,频分多址)存储到DDR(Double Data Rate,双倍速率同步动态随机存取存储器)中;当DDR的数据量达到配置数据量之后,内部状态机将数据状态转移至初始状态,并通过拉高中断信号生成中断;在轮询数据头部队列的过程中,若没有数据传输,则通过计数器开始统计数据查询时长;若在统计过程中查询到任一数据头部队列,将数据查询时长清零;若数据查询时长达到预设等待时长,则内部状态机将数据状态转移至初始状态,并通过拉高中断信号生成中断。
[0052] 在一些实施例中,中断信号是一种异步信号,用于通知处理器或其他控制单元,某个外部事件或内部条件已经发生,并请求处理器立即处理该事件或条件。
[0053] 可选地,若通信接口为CAN接口,用于数据记录仪的数据状态转移方法还包括:利用FPGA芯片中的R核对预设的中断寄存器进行监测;若监测到CAN接口的中断信号,根据中断信号获取CAN数据寄存器;若CAN数据寄存器中存在CAN接口数据,则根据CAN接口数据对应的ID寄存器和DCL寄存器对CAN接口数据进行过滤,并读取过滤后的CAN接口数据;利用FPGA芯片中的A核捕获过滤后的CAN接口数据;将捕获到的CAN接口数据作为目标数据存储到对应的数据队列;根据目标数据生成数据头部信息,并将数据头部信息存储到对应的数据头部队列。
[0054] 结合图2所示,本公开实施例提供了一种用于数据记录仪的CAN接口构架,包括CAN接口、CAN数据捕获模块(CAN_Bridge)、R核(Core_R)、CAN数据采集模块(CAN_Store)和A核(Core_A);CAN接口,连接外部CAN总线;CAN数据捕获模块,通过AXI‑Lite(Advanced eXtensible Interface‑Lite,轻量版高级可扩展接口)连接CAN接口,其中,CAN数据捕获模块用于将捕获到的CAN接口数据发送至CAN数据采集模块;R核,通过AXI‑Lite连接CAN数据捕获模块,其中,R核用于控制CAN数据捕获模块,以对外部CAN总线进行通信;CAN数据采集模块,连接CAN数据捕获模块,其中,CAN数据采集模块用于将捕获到的CAN接口数据存储到DDR;A核,连接CAN数据采集模块,其中,A核用于控制CAN数据采集模块。
[0055] 在一些实施例中,CAN接口采用CANFD IP(Controller Area Network Flexible Data‑rate IP核)核,是一种常用于汽车和工业领域的通信协议IP(Intellectual Property,知识产权)核,它在保持CAN协议基本特性的同时,增加了一些新的特性,主要是在数据传输速率和数据长度上的增强。
[0056] 在一些实施例中,CANFD IP核无法自定义接口,CAN接口对内只允许一个AXI‑Lite总线,而利用R核通过AXI‑Lite总线连接CAN接口,对于R核来说,每路CAN接口都是单独的AXI总线,根据总线地址区分每个CAN接口的通道号。
[0057] 在一些实施例中,R核通过CAN驱动配置CAN接口的工作模式、速率、ID过滤选项等。
[0058] 在一些实施例中,R核通过CAN驱动控制CAN接口发送数据,并对中断寄存器进行监测;若中断寄存器中存在CAN接口的中断信号,则通过CAN驱动判断CAN接口的中断信号是否属于“发送完成中断”;若该中断信号属于“发送完成中断”,则确认数据发送完成,并清除终端信号。
[0059] 在一些实施例中,R核对中断寄存器进行监测;若接收到CAN接口的中断信号,根据中断信号获取CAN接口对应的数据寄存器;若数据寄存器中存在CAN接口数据,则读取相关的ID寄存器和DCL寄存器,以根据ID(Identity,身份标识符)寄存器和DCL(Data Control Language,数据控制语言)寄存器的内容判断是否需要读取数据寄存器中的CAN接口数据;若不需要读取,则清空数据寄存器中的数据;若需要读取,则R核控制CAN数据捕获模块捕获CAN接口数据,同时,A核控制CAN数据采集模块将捕获到的CAN接口数据存储到DDR。
[0060] 在一些实施例中,当R核读取数据时,通过CAN数据捕获模块捕获AXI‑Lite总线中的CAN接口数据,并将捕获到的CAN接口数据存储到缓存区域,A核通过AXI‑Lite总线控制CAN数据采集模块将捕获到的CAN接口数据存储到DDR,A核再将CAN接口数据存储到数据记录仪。
[0061] 结合图3所示,本公开实施例提供了一种CAN数据采集模块,包括CAN通信单元、缓存区域、CAN数据存储单元;CAN通信单元,连接处理系统端,其中,CAN通信单元用于获取数据存储空间、数据存储地址、开始信号、通道选择指令、清除终端指令、寄存器清零指令;缓存区域如图4所示,包括数据队列(DATA_BUF)和数据头部队列(HEAT_BUF),数据队列和数据头部队列均基于FIFO(First In First Out,先进先出队列)建立,其中,缓存区域用于将CAN数据捕获模块发送的CAN接口数据作为目标数据存储到数据队列,同时,记录目标数据的时间戳、数据长度、通道号等,得到目标数据对应的数据头部信息,将数据头部信息存储到数据头部队列中;CAN数据存储单元,连接缓存区域,其中,CAN数据存储单元用于向缓存区域请求目标数据和数据头部信息,并将目标数据和数据头部信息存储到DDR中。
[0062] 可选地,若通信接口为LIN接口,用于数据记录仪的数据状态转移方法还包括:利用FPGA芯片中的R核控制LIN接口接收LIN接口数据;利用FPGA芯片中的A核捕获LIN接口数据,将捕获到的LIN接口数据作为目标数据存储到对应的数据队列;根据目标数据生成数据头部信息,并将数据头部信息存储到对应的数据头部队列。
[0063] 结合图5所示,本公开实施例提供了一种用于数据记录仪的LIN接口构架,包括LIN接口、R核、LIN数据采集模块(LIN_Store)、A核;LIN接口,连接外部LIN总线;R核,连接LIN接口,其中,R核用于通过AXI‑Lite控制LIN接口,以对外部LIN总线进行通信;LIN数据采集模块,连接LIN接口,其中,LIN数据采集模块用于对LIN接口进行数据捕获,得到LIN接口数据,并将LIN接口数据存储到DDR中;A核,连接LIN数据采集模块,其中,A核用于控制LIN数据采集模块。
[0064] 结合图6所示,本公开实施例提供了LIN功能模块,LIN功能模块分别连接LIN接口和LIN数据采集模块,其中,LIN功能模块包括LIN通信单元、LIN数据单元、LIN校验单元和LIN控制单元;LIN通信单元连接处理系统端,其中,LIN通信单元用于对处理系统端进行通信;LIN数据单元连接LIN接口,其中,LIN数据单元用于实现数据发送功能和数据接收功能,同时,当LIN接口作为主机节点,则LIN数据单元通过LIN接口发送帧头数据,当LIN接口作为从机节点,则LIN数据单元根据接收到的帧头数据进行自同步;LIN校验单元连接LIN数据单元,其中,LIN校验单元支持标准型校验和或增强型校验和,标准型校验和是将每字节数据进行二进制加法,如果和大于等于256,那么将结果减去255,增强型校验和的功能是在标准型校验和的基础上加上一个PID(Protected Identifier,受保护标识符);LIN控制单元分别连接LIN通信单元、LIN数据单元和LIN数据采集模块,其中,LIN控制单元对从LIN数据单元接收到的数据进行重新打包,得到目标数据;将目标数据输出到LIN数据采集模块,并通过LIN通信单元向处理系统端发送中断信号。
[0065] 可选地,用于数据记录仪的数据状态转移方法还包括:响应于捕获初始状态,若LIN接口为主机节点,且主机节点接收到帧头发送指令,进入帧头发送状态;响应于帧头发送状态,按照当前数据速率向从机节点发送帧头数据,根据预设的主机配置信息进入数据接收状态、数据发送状态或捕获初始状态,其中,帧头数据包括同步间隔段、同步段和受保护标识符中的至少一种;响应于数据接收状态,按照预设的数据接收长度接收LIN接口数据,进入接收判定状态;响应于接收判定状态,若LIN接口数据已经接收完成,进入数据校验状态,并且,若LIN接口数据未接收完成,进入数据接收状态;响应于数据校验状态,对LIN接口数据进行数据校验,进入捕获初始状态;响应于数据发送状态,获取待发送数据,并将待发送数据发送至LIN总线,进入校验发送状态;响应于校验发送状态,获取待发送数据对应的校验信息,并将校验信息发送至LIN总线,进入捕获初始状态。
[0066] 在一些实施例中,接收到控制模块的开始请求之后发送帧头数据;如果未在数据发送状态或者数据接收状态,那么帧头发送完毕之后返回到捕获初始状态,否则,进入数据发送状态或者数据接收状态。
[0067] 在一些实施例中,同步间隔段用于标识帧的开始,并确保总线在帧传输前处于空闲状态,其中,至少是持续13位的显性电平;由于帧中所有间隔或总线空闲时都必须保持隐性电平,且帧中其他字段不会发出大于9位的显性电平,因此同步间隔可以标志一个帧的开始。
[0068] 在一些实施例中,同步段用于从机节点与主机节点之间的时钟同步,其中,固定发送0x55,转换为二进制为01010101b,即先发送最低有效位LSB,最后发送最高有效位MSB。
[0069] 在一些实施例中,受保护标识符用于标识帧的类型和目的地。
[0070] 在一些实施例中,校验信息包括校验和,用于对LIN接口数据进行校验,以确保数据正确性。
[0071] 在一些实施例中,通过LIN校验单元分局校验和对LIN接口数据进行校验。
[0072] 可选地,用于数据记录仪的数据状态转移方法还包括:响应于捕获初始状态,若LIN接口为从机节点,且从机节点接收到同步间隔段,进入自同步状态;响应于自同步状态,根据接收到的同步段进行自同步,进入标识符校验状态;响应于标识符校验状态,根据接收到的受保护标识符对LIN总线对应的总线标识符进行校验,得到标识符校验结果;若标识符校验结果包括校验通过,则根据预设的从机配置信息进入数据接收状态或数据发送状态;若标识符校验结果包括校验失败,则进入捕获初始状态。
[0073] 在一些实施例中,响应于自同步状态,从机节点通过同步段检测下降沿,记录下降沿次数并且在第一个下降沿开始进行时钟计数,当下降沿记录次数为4时停止时钟计数,此时将计数值除以8即可得到同步速率。
[0074] 结合图7所示,本公开实施例提供了一种用于数据记录仪的数据状态转移方法,其中,数据状态包括捕获初始状态(IDLE)、帧头发送状态(MFRAME)、自同步状态(SYNC)、标识符校验状态(PID)、数据发送状态(TX_PKT)校验发送状态(TX_CHK)、数据接收状态(RX_PKT)、接收判定状态(RE_END)、数据校验状态(RX_CHK)。
[0075] 捕获初始状态,用于若LIN接口为主机节点,且主机节点接收到帧头发送指令,进入帧头发送状态;若LIN接口为从机节点,且从机节点接收到同步间隔段,进入自同步状态。
[0076] 帧头发送状态,用于将同步间隔段、同步段和受保护标识符组成一个数据包,得到帧头数据,按照主机速率发送帧头数据,并根据预设的主机配置信息判断转移至数据接收状态、数据发送状态或捕获初始状态。
[0077] 自同步状态,用于接收0x55同步信号进行自同步,并进入标识符校验状态,同时,如果LIN接口未打开自同步那么不进行自同步,其中,若LIN接口为从机节点,无论处于何种状态,只要检测到同步间隔段,都会进入自同步状态。
[0078] 标识符校验状态,用于根据LIN总线的总线标识符与受保护标识符之间进行奇偶校验,得到标识符校验结果;若标识符校验结果包括校验通过,则根据预设的从机配置信息进入数据接收状态或数据发送状态;若标识符校验结果包括校验失败,则进入捕获初始状态。
[0079] 数据发送状态,用于获取待发送数据,根据当前波特率以标准串口格式发送至LIN总线,进入校验发送状态。
[0080] 校验发送状态,用于计算数据校验和,将数据校验和以1字节的标准串口数据格式发送至LIN总线,进入捕获初始状态。
[0081] 数据接收状态,用于接收1字节标准串口格式的LIN接口数据,进入接收判定状态。
[0082] 接收判定状态,用于判断LIN接口数据是否接收完成;,若LIN接口数据已经接收完成,进入数据校验状态,并且,若LIN接口数据未接收完成,进入数据接收状态。
[0083] 数据校验状态,用于数据校验状态,对LIN接口数据进行数据校验,不论校验是否通过,进入捕获初始状态。
[0084] 结合图8所示,本公开实施例提供了一种LIN数据采集模块,包括LIN通信单元、缓存区域、LIN数据存储单元;LIN通信单元,连接处理系统端,其中,LIN通信单元用于获取数据存储空间、数据存储地址、开始信号、通道选择指令、清除终端指令、寄存器清零指令;缓存区域包括数据队列(DATA_BUF)和数据头部队列(HEAT_BUF),其中,缓存区域用于将LIN数据捕获模块发送的LIN接口数据作为目标数据存储到数据队列,同时,记录目标数据的时间戳、数据长度、通道号等,得到目标数据对应的数据头部信息,将数据头部信息存储到数据头部队列中;LIN数据存储单元,连接缓存区域,其中,LIN数据存储单元用于向缓存区域请求目标数据和数据头部信息,并将目标数据和数据头部信息存储到DDR中。
[0085] 可选地,响应于捕获准备状态,对各缓存区域分别进行数据查询,包括:响应于捕获准备状态,更新数据查询时长,并且,若数据查询时长小于预设等待时长,则根据队列读取数量从各缓存区域中确定目标区域,并对目标区域的数据队列进行数据查询,进入队列计数状态;响应于队列计数状态,进入计数等待状态,并且,在预设的查询等待周期之后,更新队列读取数量;响应于计数等待状态,若队列读取数量完成更新,进入捕获准备状态。
[0086] 可选地,用于数据记录仪的数据状态转移方法还包括:响应于捕获初始状态,若从FPGA芯片中的处理系统端接收到开始信号,则进入捕获准备状态;响应于捕获准备状态,若数据查询时长大于或等于预设等待时长,则进入捕获完成状态;响应于捕获完成状态,向处理系统端发送中断信号,进入捕获初始状态。
[0087] 可选地,用于数据记录仪的数据状态转移方法还包括:响应于数据读取状态,从缓存区域的数据队列中提取目标数据之后,进入存储等待状态;响应于存储等待状态,若按照数据存储地址将数据头部信息和目标数据存储至预设的数据存储空间,则进入空间判断状态;响应于空间判断状态,获取数据存储空间的当前数据长度;若当前数据长度大于或等于预设长度阈值,则进入捕获完成状态;若当前数据长度小于预设长度阈值,则进入队列计数状态。
[0088] 结合图9所示,本公开实施例提供了一种用于数据记录仪的数据状态转移方法,其中,数据状态包括捕获准备状态(READY_DET)、队列计数状态(ROLL_CNT)、计数等待状态(ROLL_CNT_WT)、头部读取状态(RE_HEADER)、存储请求状态(WR_DDR_REQ)、数据读取状态(RE_DATA)、存储等待状态(WT_DONE)、空间判断状态(JUDGE_SIZE)、捕获完成状态(FINISH_REQ)。
[0089] 捕获初始状态,用于等待处理系统端发送开始信号,并在接收到开始信号之后进入捕获准备状态,并重置通道计数器。
[0090] 捕获准备状态,用于判断目标区域的数据队列中是否存在数据,同时,判断数据查询时长是否超时;若没有超时且数据队列存在数据,则进入头部读取状态;若没有超时且数据队列不存在数据,则进入队列计数状态;若已经超时,则进入捕获完成状态。
[0091] 队列计数状态,用于通过内置的通道计数器按照查询等待周期延时更新队列读取数量,同时,进入计数等待状态。
[0092] 计数等待状态,用于等待通道计数器发生变化,并在通道计数器发生变化之后进入捕获准备状态。
[0093] 头部读取状态,用于从目标区域的数据头部队列中读取对应的数据头部信息,将数据头部信息放入待存储队列,进入存储请求状态。
[0094] 存储请求状态,用于发送AXI写入请求,以根据数据头部信息请求数据存储空间对应的数据存储地址和突发长度,其中,数据存储空间为DDR中的至少一部分数据区域;更新数据存储空间的数据长度寄存器,进入数据读取状态,其中,数据长度寄存器用于存储数据存储空间的的当前数据长度。
[0095] 数据读取状态,从缓存区域的数据队列中提取目标数据,按照数据存储地址存储数据头部信息和目标数据,进入存储等待状态。
[0096] 存储等待状态,用于等待数据头部信息和目标数据的存储操作完成,进入空间判断状态。
[0097] 空间判断状态,用于根据预设长度阈值对比数据存储空间的当前数据长度;若当前数据长度大于或等于预设长度阈值,则进入捕获完成状态;若当前数据长度小于预设长度阈值,则进入队列计数状态。
[0098] 捕获完成状态,用于向处理系统端发送中断信号,进入捕获初始状态。
[0099] 结合图10所示,本公开实施例提供了一种用于数据记录仪的数据状态转移系统,应用于FPGA芯片,用于数据记录仪的数据状态转移系统包括:
[0100] 捕获准备模块1001用于响应于捕获准备状态,对各缓存区域分别进行数据查询,其中,数据记录仪包括多个通信接口,且通信接口与缓存区域一一对应;若查询到任一缓存区域中的数据队列存储有目标数据,进入头部读取状态,目标数据通过对通信接口进行数据捕获得到;
[0101] 头部读取模块1002用于响应于头部读取状态,从缓存区域中的数据头部队列读取目标数据对应的数据头部信息,进入存储请求状态,其中,数据头部信息根据目标数据生成;
[0102] 存储请求模块1003用于响应于存储请求状态,根据数据头部信息请求数据存储地址,进入数据读取状态;
[0103] 数据读取模块1004用于响应于数据读取状态,从缓存区域的数据队列中提取目标数据,并按照数据存储地址存储数据头部信息和目标数据。
[0104] 采用本公开实施例提供的用于数据记录仪的数据状态转移系统,通过捕获准备状态查询数据队列中的目标数据,通过头部读取状态读取该目标数据对应的数据头部信息,通过存储请求状态根据数据头部信息确定数据存储地址,通过数据读取状态提取数据头部信息对应的目标数据,并按照数据存储地址存储数据头部信息和目标数据。这样,相较于利用处理系统端通过接口驱动直接读取接口数据,通过FPGA芯片建立数据缓冲区逐,同时,通过数据状态转移实现接口数据流转,能够有效避免处理系统端因数据接口过多导致占用大量处理器资源的问题,从而提高数据读取效率。
[0105] 本公开实施例还提供了一种FPGA芯片,包括:处理器及存储器;存储器用于存储计算机程序,处理器用于执行存储器存储的计算机程序,以使FPGA芯片执行上述的方法。
[0106] 图11示出了适于用来实现本申请实施例的FPGA芯片的计算机系统的结构示意图。需要说明的是,图11示出的FPGA芯片的计算机系统1100仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
[0107] 如图11所示,计算机系统1100包括中央处理单元(Central Processing Unit,CPU)1101,其可以根据存储在只读存储器(Read‑Only Memory,ROM)1102中的程序或者从储存部分1108加载到随机访问存储器(Random Access Memory,RAM)1103中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 1103中,还存储有系统操作所需的各种程序和数据。CPU 1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(Input/Output,I/O)接口1105也连接至总线1104。
[0108] 以下部件连接至I/O接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1107;包括硬盘等的储存部分1108;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入储存部分1108。
[0109] 本实施例公开的FPGA芯片,包括处理器、存储器、收发器和通信接口,存储器和通信接口与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于进行通信,处理器和收发器用于运行计算机程序,使FPGA芯片执行如上方法的各个步骤。
[0110] 以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选地,并且操作的顺序可以变化。一些实施例的部分和子样本可以被包括在或替换其他实施例的部分和子样本。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的子样本、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它子样本、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
[0111] 本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0112] 本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些子样本可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0113] 附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

当前第1页 第1页 第2页 第3页
相关技术
数据记录仪相关技术
方法系统相关技术
冯玖江发明人的其他相关专利技术