CN112131828B - Data processing method, device and equipment and readable storage medium - Google Patents
Data processing method, device and equipment and readable storage medium Download PDFInfo
- Publication number
- CN112131828B CN112131828B CN202010989115.3A CN202010989115A CN112131828B CN 112131828 B CN112131828 B CN 112131828B CN 202010989115 A CN202010989115 A CN 202010989115A CN 112131828 B CN112131828 B CN 112131828B
- Authority
- CN
- China
- Prior art keywords
- data frame
- data
- address
- storage
- memory
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
技术领域technical field
本申请涉及计算机技术领域,特别涉及一种数据处理方法、装置、设备及可读存储介质。The present application relates to the field of computer technology, and in particular, to a data processing method, apparatus, device, and readable storage medium.
背景技术Background technique
基于FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)验证平台可以灵活修改代码进行测试。上位机会将测试相关数据通过FPGA验证平台上的数据接口发送至FPGA验证平台,以使FPGA验证平台利用这些数据进行代码测试。The verification platform based on FPGA (Field Programmable Gate Array) can flexibly modify the code for testing. The host computer sends the test-related data to the FPGA verification platform through the data interface on the FPGA verification platform, so that the FPGA verification platform can use the data to perform code testing.
在FPGA验证平台中的处理器处理数据之前,数据会先存入缓存,过滤掉这些数据中的冗余帧或者错误帧后,有效数据会存入另一缓存,因此在FPGA验证平台中,设置了二级缓存,测试相关数据会被写入不同缓存,占用的存储资源较多,也降低了FPGA验证平台性能。Before the processor in the FPGA verification platform processes the data, the data will be stored in the cache first. After filtering out redundant frames or error frames in the data, the valid data will be stored in another cache. Therefore, in the FPGA verification platform, set If the second-level cache is installed, the test-related data will be written to different caches, occupying more storage resources and reducing the performance of the FPGA verification platform.
因此,在FPGA验证平台中,如何避免数据占用较多的存储空间,是本领域技术人员需要解决的问题。Therefore, in the FPGA verification platform, how to prevent data from occupying more storage space is a problem that needs to be solved by those skilled in the art.
发明内容SUMMARY OF THE INVENTION
有鉴于此,本申请的目的在于提供一种数据处理方法、装置、设备及可读存储介质,以在FPGA验证平台中,避免数据占用较多的存储空间。其具体方案如下:In view of this, the purpose of the present application is to provide a data processing method, apparatus, device and readable storage medium, so as to avoid data occupying more storage space in the FPGA verification platform. Its specific plan is as follows:
第一方面,本申请提供了一种数据处理方法,应用于FPGA验证平台,包括:In the first aspect, the present application provides a data processing method, which is applied to an FPGA verification platform, including:
利用至少一个数据接口接收待处理的数据帧;Receive data frames to be processed using at least one data interface;
按照存储起止地址将所述数据帧存储至所述FPGA验证平台中的存储器;According to the storage start and end addresses, the data frame is stored in the memory in the FPGA verification platform;
对所述数据帧进行匹配校验,若所述数据帧匹配校验未通过,则保留所述存储起止地址,以便在利用所述数据接口接收到新的数据帧时,按照所述存储起止地址覆盖式存储所述新的数据帧至所述存储器;Perform a matching check on the data frame, and if the data frame matching check fails, the storage start and end addresses are reserved, so that when a new data frame is received by using the data interface, the storage start and end addresses are stored according to the storage start and end addresses. overwriting the new data frame to the memory;
实时统计所述存储器的剩余空间,若所述剩余空间小于预设阈值,则按照读取起止地址读取所述存储器中的已存数据帧后,更新所述读取起止地址和所述存储起止地址。Count the remaining space of the memory in real time, if the remaining space is less than the preset threshold, after reading the stored data frame in the memory according to the read start and end addresses, update the read start and end addresses and the storage start and end address.
优选地,所述对所述数据帧进行匹配校验,包括:Preferably, the performing matching check on the data frame includes:
按照预设匹配规则对所述数据帧进行特征值匹配,以及对所述数据帧进行CRC校验;According to preset matching rules, feature value matching is performed on the data frame, and a CRC check is performed on the data frame;
若特征值匹配通过且CRC校验通过,则确定所述数据帧匹配校验通过;否则,确定所述数据帧匹配校验未通过。If the feature value matches and passes the CRC check, it is determined that the data frame matching check passes; otherwise, it is determined that the data frame matching check fails.
优选地,还包括:Preferably, it also includes:
若所述数据帧匹配校验通过,则更新所述存储起止地址,得到更新起止地址,以便在利用所述数据接口接收到所述新的数据帧时,按照所述更新起止地址存储所述新的数据帧。If the data frame matching check is passed, the storage start and end addresses are updated to obtain the update start and end addresses, so that when the new data frame is received by using the data interface, the new data frame is stored according to the update start and end addresses. data frame.
优选地,所述更新所述存储起止地址,得到更新起止地址,包括:Preferably, the updating of the storage start and end addresses to obtain the update start and end addresses includes:
根据所述存储起止地址和所述数据帧占用的地址长度计算所述更新起止地址。The update start and end addresses are calculated according to the storage start and end addresses and the address length occupied by the data frame.
优选地,所述按照读取起止地址读取所述存储器中的已存数据帧之前,还包括:Preferably, before reading the stored data frame in the memory according to the read start and end addresses, the method further includes:
控制所述数据接口去使能。Control the data interface to be disabled.
优选地,所述更新所述读取起止地址和所述存储起止地址之后,还包括:Preferably, after updating the read start and end addresses and the storage start and end addresses, the method further includes:
控制所述数据接口使能。Control the data interface enable.
优选地,所述按照存储起止地址将所述数据帧存储至所述FPGA验证平台中的存储器之前,还包括:Preferably, before storing the data frame to the memory in the FPGA verification platform according to the storage start and end addresses, the method further includes:
对所述数据帧进行位宽转换,以适配所述FPGA验证平台中的总线位宽;Performing bit width conversion on the data frame to adapt to the bus bit width in the FPGA verification platform;
按照预设格式封装所述数据帧。The data frame is encapsulated according to a preset format.
第二方面,本申请提供了一种数据处理装置,应用于FPGA验证平台,包括:In a second aspect, the present application provides a data processing device, which is applied to an FPGA verification platform, including:
接收模块,用于利用至少一个数据接口接收待处理的数据帧;a receiving module for receiving the data frame to be processed by using at least one data interface;
存储模块,用于按照存储起止地址将所述数据帧存储至所述FPGA验证平台中的存储器;a storage module, configured to store the data frame in the memory in the FPGA verification platform according to the storage start and end addresses;
匹配校验模块,用于对所述数据帧进行匹配校验,若所述数据帧匹配校验未通过,则保留所述存储起止地址,以便在利用所述数据接口接收到新的数据帧时,按照所述存储起止地址覆盖式存储所述新的数据帧至所述存储器;A matching verification module is used to perform matching verification on the data frame. If the data frame matching verification fails, the storage start and end addresses are reserved, so that when a new data frame is received using the data interface , overwriting the new data frame to the memory according to the storage start and end addresses;
管理模块,用于实时统计所述存储器的剩余空间,若所述剩余空间小于预设阈值,则按照读取起止地址读取所述存储器中的已存数据帧后,更新所述读取起止地址和所述存储起止地址。The management module is used to count the remaining space of the memory in real time. If the remaining space is less than a preset threshold, after reading the stored data frames in the memory according to the read start and end addresses, update the read start and end addresses and the storage start and end addresses.
第三方面,本申请提供了一种数据处理设备,包括:In a third aspect, the present application provides a data processing device, including:
存储器,用于存储计算机程序;memory for storing computer programs;
处理器,用于执行所述计算机程序,以实现前述公开的数据处理方法。A processor for executing the computer program to implement the data processing method disclosed above.
第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的数据处理方法。In a fourth aspect, the present application provides a readable storage medium for storing a computer program, wherein when the computer program is executed by a processor, the data processing method disclosed above is implemented.
通过以上方案可知,本申请提供了一种数据处理方法,应用于FPGA验证平台,包括:利用至少一个数据接口接收待处理的数据帧;按照存储起止地址将所述数据帧存储至所述FPGA验证平台中的存储器;对所述数据帧进行匹配校验,若所述数据帧匹配校验未通过,则保留所述存储起止地址,以便在利用所述数据接口接收到新的数据帧时,按照所述存储起止地址覆盖式存储所述新的数据帧至所述存储器;实时统计所述存储器的剩余空间,若所述剩余空间小于预设阈值,则按照读取起止地址读取所述存储器中的已存数据帧后,更新所述读取起止地址和所述存储起止地址。It can be seen from the above solutions that the present application provides a data processing method, which is applied to an FPGA verification platform, including: receiving a data frame to be processed by using at least one data interface; storing the data frame to the FPGA verification according to the storage start and end addresses The memory in the platform; the data frame is checked for matching, and if the matching check of the data frame fails, the storage start and end addresses are reserved, so that when a new data frame is received by using the data interface, according to The storage start and end addresses are overlaid to store the new data frame to the memory; the remaining space of the memory is counted in real time, and if the remaining space is less than a preset threshold, the memory is read according to the read start and end addresses. After the stored data frame, the read start and end addresses and the storage start and end addresses are updated.
可见,本申请在利用至少一个数据接口接收到待处理的数据帧后,首先按照存储起止地址存储数据帧存储器,此时已存储的数据帧可能有效,也可能无效。后续对数据帧进行匹配校验,若数据帧匹配校验未通过,即表明已存储的数据帧无效,因此保留存储起止地址,后续在利用数据接口接收到新的数据帧时,按照存储起止地址覆盖式存储新的数据帧至同一存储器,从而覆盖存储器中已存储的无效数据帧。并且,本申请实时统计存储器的剩余空间,若剩余空间小于预设阈值,则按照读取起止地址读取存储器中的已存数据帧后,更新读取起止地址和存储起止地址,后续按照新的存储起止地址覆盖式存储新的数据帧,从而可提高存储空间利用率。本申请利用存储起止地址和读取起止地址对同一存储空间进行了有效管理,提高存储器的利用率,存储时能够节约存储空间,读取其中的数据后,能够及时更新存储起止地址,以便下次存储新的数据帧时,覆盖式存储新的数据帧,从而可提高FPGA验证平台性能。并且,也无需在FPGA验证平台中设置多级缓存,使用一个缓存空间也能实现。使用一个缓存空间还节约了FPGA验证平台的硬件线路布局空间,为FPGA验证平台的设计实现提供便利。It can be seen that after receiving the data frame to be processed by using at least one data interface, the present application first stores the data frame memory according to the storage start and end addresses, and the stored data frame may be valid or invalid at this time. The data frame is subsequently matched and checked. If the data frame does not pass the match check, it means that the stored data frame is invalid. Therefore, the storage start and end addresses are reserved. When a new data frame is received through the data interface, the storage start and end addresses are used. Overwrite stores new data frames to the same memory, overwriting invalid data frames already stored in memory. In addition, the present application counts the remaining space of the memory in real time. If the remaining space is less than the preset threshold, after reading the stored data frame in the memory according to the read start and end addresses, update the read start and end addresses and the storage start and end addresses, and then follow the new data frames. The start and end addresses of the storage are overwritten to store new data frames, thereby improving the utilization of storage space. The application effectively manages the same storage space by using the storage start and end addresses and the read start and end addresses, improves the utilization rate of the memory, saves the storage space during storage, and after reading the data in it, the storage start and end addresses can be updated in time, so that the next time When a new data frame is stored, the new data frame is overwritten, thereby improving the performance of the FPGA verification platform. Moreover, there is no need to set up multi-level caches in the FPGA verification platform, and it can be implemented using one cache space. Using a buffer space also saves the hardware circuit layout space of the FPGA verification platform, and provides convenience for the design and implementation of the FPGA verification platform.
相应地,本申请提供的一种数据处理装置、设备及可读存储介质,也同样具有上述技术效果。Correspondingly, a data processing apparatus, device and readable storage medium provided by the present application also have the above technical effects.
附图说明Description of drawings
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the accompanying drawings required for the description of the embodiments or the prior art. Obviously, the drawings in the following description are only It is an embodiment of the present application. For those of ordinary skill in the art, other drawings can also be obtained according to the provided drawings without any creative effort.
图1为本申请公开的一种数据处理方法流程图;1 is a flowchart of a data processing method disclosed in the application;
图2为本申请公开的一种数据帧结构示意图;2 is a schematic diagram of a data frame structure disclosed in the application;
图3为本申请公开的一种数据处理方案的框架示意图;FIG. 3 is a schematic framework diagram of a data processing solution disclosed in the application;
图4为在图3示意的框架中进行数据处理的方法流程图;Fig. 4 is the method flow chart of carrying out data processing in the frame shown in Fig. 3;
图5为本申请公开的一种数据处理装置示意图;5 is a schematic diagram of a data processing device disclosed in the application;
图6为本申请公开的一种数据处理设备示意图。FIG. 6 is a schematic diagram of a data processing device disclosed in this application.
具体实施方式Detailed ways
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, but not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
目前,在FPGA验证平台中的处理器处理数据之前,数据会先存入缓存,过滤掉这些数据中的冗余帧或者错误帧后,有效数据会存入另一缓存,因此在FPGA验证平台中,测试相关数据会被多次写入,占用的存储资源较多,也降低了FPGA验证平台性能。为此,本申请提供了一种数据处理方案,能够避免数据占用较多的FPGA验证平台的存储空间。At present, before the processor in the FPGA verification platform processes the data, the data will be stored in the cache first. After filtering out redundant frames or error frames in the data, the valid data will be stored in another cache. Therefore, in the FPGA verification platform , the test-related data will be written multiple times, occupying more storage resources and reducing the performance of the FPGA verification platform. To this end, the present application provides a data processing solution, which can prevent data from occupying more storage space of the FPGA verification platform.
参见图1所示,本申请实施例公开了一种数据处理方法,应用于FPGA验证平台,包括:Referring to FIG. 1 , an embodiment of the present application discloses a data processing method, which is applied to an FPGA verification platform, including:
S101、利用至少一个数据接口接收待处理的数据帧。S101. Use at least one data interface to receive a data frame to be processed.
需要说明的是,数据接口为FPGA验证平台的外设接口,该接口可以为EMAC(Ethernet Media Access Controller,以太网媒体访问控制器)等。FPGA验证平台中可以设置多个数据接口,每个数据接口可看作一个数据通道。It should be noted that the data interface is a peripheral interface of the FPGA verification platform, and the interface may be EMAC (Ethernet Media Access Controller, Ethernet Media Access Controller) or the like. Multiple data interfaces can be set in the FPGA verification platform, and each data interface can be regarded as a data channel.
S102、按照存储起止地址将数据帧存储至FPGA验证平台中的存储器。S102, store the data frame in the memory in the FPGA verification platform according to the storage start and end addresses.
其中,存储起止地址包括存储起始地址和存储结束地址。存储起始地址用于标记存储器中可用空间的起始位置,存储结束地址用于标记已存数据帧在存储器中的结束位置。存储器具体为FPGA验证平台中的存储器。初始状态时,存储起始地址和存储结束地址可均设置为0。正常使用过程中,存储起始地址=存储结束地址+1。The storage start and end addresses include a storage start address and a storage end address. The storage start address is used to mark the start position of the available space in the memory, and the storage end address is used to mark the end position of the stored data frame in the memory. The memory is specifically the memory in the FPGA verification platform. In the initial state, both the storage start address and the storage end address can be set to 0. During normal use, storage start address = storage end address + 1.
在一种具体实施方式中,按照存储起止地址将数据帧存储至FPGA验证平台中的存储器之前,还包括:对数据帧进行位宽转换,以适配FPGA验证平台中的总线位宽;按照预设格式封装数据帧。具体的位宽转换方法可以参照现有技术,本说明书在此不再赘述。In a specific implementation manner, before storing the data frame in the memory in the FPGA verification platform according to the storage start and end addresses, the method further includes: performing bit width conversion on the data frame to adapt to the bus bit width in the FPGA verification platform; Format encapsulates the data frame. For the specific bit width conversion method, reference may be made to the prior art, and details are not described herein again in this specification.
按照预设格式封装数据帧后,再存储封装后的数据帧,可便于处理器读取数据帧时区分不同数据帧。具体的,预设格式可参照图2,图2中的通道号是通道识别码,也就是数据接口的识别码。帧数据为接收到的有效数据帧。帧长度分为以字节为单位和以存储位宽(如32位)为单位两种,用于数据提取和数据传输。帧头校验和是对通道号和上述两个帧长度的16位校验和。帧头和帧尾可以自定义,帧头、帧尾、帧结构、校验和能够有效区分不同数据帧。帧尾校验和是帧数据部分的32位校验和,一般从帧数据部分的第一个数据累加到最后一个数据即可得到帧尾校验和。预设格式可根据实际应用灵活修改。After the data frame is encapsulated according to the preset format, the encapsulated data frame is stored, which is convenient for the processor to distinguish different data frames when reading the data frames. Specifically, reference can be made to FIG. 2 for the preset format. The channel number in FIG. 2 is the channel identification code, that is, the identification code of the data interface. Frame data is the received valid data frame. The frame length is divided into two types: the unit of byte and the unit of storage bit width (such as 32 bits), which are used for data extraction and data transmission. The frame header checksum is a 16-bit checksum of the channel number and the above two frame lengths. The frame header and frame trailer can be customized, and the frame header, frame trailer, frame structure, and checksum can effectively distinguish different data frames. The frame end checksum is the 32-bit checksum of the frame data part. Generally, the frame end checksum can be obtained by accumulating the first data of the frame data part to the last data. The preset format can be flexibly modified according to the actual application.
S103、对数据帧进行匹配校验,若数据帧匹配校验未通过,则保留存储起止地址,以便在利用数据接口接收到新的数据帧时,按照存储起止地址覆盖式存储新的数据帧至存储器。S103, performing a matching check on the data frame, if the data frame matching check fails, the storage start and end addresses are reserved, so that when a new data frame is received by using the data interface, the new data frame is overwritten according to the storage start and end addresses to memory.
在一种具体实施方式中,对数据帧进行匹配校验,包括:按照预设匹配规则对数据帧进行特征值匹配,以及对数据帧进行CRC校验;若特征值匹配通过且CRC校验通过,则确定数据帧匹配校验通过;否则,确定数据帧匹配校验未通过。In a specific implementation manner, performing a matching check on the data frame includes: matching the data frame with eigenvalues according to a preset matching rule, and performing CRC checking on the data frame; if the eigenvalue matching passes and the CRC check passes , it is determined that the data frame matching check has passed; otherwise, it is determined that the data frame matching check has not passed.
其中,预设匹配规则中可以预设需要匹配的特征值,如:接收到的数据帧的帧头、帧类型、帧长度等。对数据帧进行特征值匹配可以检测出数据帧中是否包括FPGA验证平台中的处理器要处理的数据,也可以检测出数据帧是否是FPGA验证平台中的处理器要处理的数据帧。CRC校验具体可参照现有技术,本说明书在此不再赘述。Among them, the preset matching rule may preset characteristic values to be matched, such as: frame header, frame type, frame length, etc. of the received data frame. The feature value matching on the data frame can detect whether the data frame includes the data to be processed by the processor in the FPGA verification platform, and can also detect whether the data frame is the data frame to be processed by the processor in the FPGA verification platform. For details of the CRC check, reference may be made to the prior art, and details are not described herein again in this specification.
在一种具体实施方式中,若数据帧匹配校验通过,则表明数据帧有效,因此更新存储起止地址,得到更新起止地址,以便在利用数据接口接收到新的数据帧时,按照更新起止地址存储新的数据帧至存储器。其中,更新存储起止地址,得到更新起止地址,包括:根据存储起止地址和数据帧占用的地址长度计算更新起止地址。例如:存储起止地址中的存储起始地址为:0,存储结束地址为:0,假设一个数据帧占3个地址长度,那么存储第一个数据帧后,更新起止地址中的存储起始地址为:0+3+1=4,存储结束地址为:0+3=3。后续若要存储新的数据帧,则从第4个地址开始存。In a specific embodiment, if the data frame matching check passes, it indicates that the data frame is valid, so the storage start and end addresses are updated to obtain the update start and end addresses, so that when a new data frame is received by using the data interface, the update start and end addresses are Store the new data frame to memory. Wherein, updating the storage start and end addresses to obtain the update start and end addresses includes: calculating the update start and end addresses according to the storage start and end addresses and the address length occupied by the data frame. For example: the storage start address in the storage start and end addresses is: 0, and the storage end address is: 0. Assuming that a data frame occupies 3 address lengths, after storing the first data frame, update the storage start address in the start and end addresses. It is: 0+3+1=4, and the storage end address is: 0+3=3. If you want to store a new data frame later, start from the fourth address.
若数据帧匹配校验通过,在更新存储起止地址的同时,还需要同时更新读取起止地址,以便处理器读取数据。If the data frame matching check is passed, while updating the storage start and end addresses, it is also necessary to update the read start and end addresses at the same time, so that the processor can read the data.
S104、实时统计存储器的剩余空间,若剩余空间小于预设阈值,则按照读取起止地址读取存储器中的已存数据帧后,更新读取起止地址和存储起止地址。S104. Count the remaining space of the memory in real time, and if the remaining space is less than the preset threshold, after reading the stored data frame in the memory according to the read start and end addresses, update the read start and end addresses and the storage start and end addresses.
需要说明的是,读取起止地址包括读取起始地址和读取结束地址。读取起始地址用于标记处理器要读取的第一个数据帧的起始位置,读取结束地址用于标记已存数据帧在存储器中的结束位置。一般地,读取结束地址-读取起始地址=当前处理器要读取的所有数据帧的总量(假设读取结束地址大于读取起始地址)。It should be noted that the read start and end addresses include a read start address and a read end address. The read start address is used to mark the start position of the first data frame to be read by the processor, and the read end address is used to mark the end position of the stored data frame in the memory. Generally, the read end address - the read start address = the total amount of all data frames to be read by the current processor (assuming that the read end address is greater than the read start address).
更新读取起止地址可按照下述过程执行:假设读取结束地址为10,读取起始地址为5,处理器读取的数据帧占3个地址长度,那么处理器读取该数据帧后,读取起始地址更新为5+3=8,读取结束地址保持不变(假设此过程中没有有效数据帧存储)。若此过程中有有效数据帧存储,那么当前读取结束地址加上当前存储的数据帧占用的地址长度,即为更新后的读取结束地址。Updating the read start and end addresses can be performed according to the following process: Assuming that the read end address is 10, the read start address is 5, and the data frame read by the processor occupies 3 address lengths, then after the processor reads the data frame , the read start address is updated to 5+3=8, and the read end address remains unchanged (assuming no valid data frame is stored in this process). If there is a valid data frame stored in this process, then the current read end address plus the address length occupied by the currently stored data frame is the updated read end address.
在一种具体实施方式中,按照读取起止地址读取存储器中的已存数据帧之前,还包括:控制数据接口去使能。在一种具体实施方式中,更新读取起止地址和存储起止地址之后,还包括:控制数据接口使能。In a specific implementation manner, before reading the stored data frame in the memory according to the read start and end addresses, the method further includes: controlling the data interface to be disabled. In a specific implementation manner, after updating the read start and end addresses and the storage start and end addresses, the method further includes: controlling data interface enable.
为了避免存储器溢出,可以实时统计FPGA验证平台中的存储器的剩余空间,若剩余空间小于预设阈值,则表明存储器即将被写满,为了保障后续数据帧的写入,可以先控制数据接口去使能,即禁止数据接口继续接收数据帧。当按照读取起止地址读取存储器中的已存数据帧,更新读取起止地址和存储起止地址后,可以控制数据接口使能。In order to avoid memory overflow, the remaining space of the memory in the FPGA verification platform can be counted in real time. If the remaining space is less than the preset threshold, it means that the memory is about to be filled. In order to ensure the writing of subsequent data frames, you can first control the data interface to enable Enabled, that is, the data interface is prohibited from continuing to receive data frames. When the stored data frame in the memory is read according to the read start and end addresses, and the read start and end addresses and the storage start and end addresses are updated, the data interface can be controlled to be enabled.
FPGA验证平台中的处理器及时对存储器中的已存数据帧进行处理后,就可以及时更新读取起止地址和存储起止地址,从而为后续数据帧的写入提供便利。存储器可以为RAM(Random Access Memory,随机存取存储器)。After the processor in the FPGA verification platform processes the stored data frame in the memory in time, the read start and end addresses and the storage start and end addresses can be updated in time, thereby facilitating the writing of subsequent data frames. The memory may be RAM (Random Access Memory, random access memory).
可见,本申请实施例在利用至少一个数据接口接收到待处理的数据帧后,首先按照存储起止地址存储数据帧存储器,此时已存储的数据帧可能有效,也可能无效。后续对数据帧进行匹配校验,若数据帧匹配校验未通过,即表明已存储的数据帧无效,因此保留存储起止地址,后续在利用数据接口接收到新的数据帧时,按照存储起止地址覆盖式存储新的数据帧至同一存储器,从而覆盖存储器中已存储的无效数据帧。并且,本申请实时统计存储器的剩余空间,若剩余空间小于预设阈值,则按照读取起止地址读取存储器中的已存数据帧后,更新读取起止地址和存储起止地址,后续按照新的存储起止地址覆盖式存储新的数据帧,从而可提高存储空间利用率。本申请利用存储起止地址和读取起止地址对同一存储空间进行了有效管理,提高存储器的利用率,存储时能够节约存储空间,读取其中的数据后,能够及时更新存储起止地址,以便下次存储新的数据帧时,覆盖式存储新的数据帧,从而可提高FPGA验证平台性能。并且,也无需在FPGA验证平台中设置多级缓存,使用一个缓存空间也能实现。使用一个缓存空间还节约了FPGA验证平台的硬件线路布局空间,为FPGA验证平台的设计实现提供便利。It can be seen that, after receiving the data frame to be processed by using at least one data interface, the embodiment of the present application first stores the data frame memory according to the storage start and end addresses, and the stored data frame may be valid or invalid at this time. The data frame is subsequently matched and checked. If the data frame does not pass the match check, it means that the stored data frame is invalid. Therefore, the storage start and end addresses are reserved. When a new data frame is received through the data interface, the storage start and end addresses are used. Overwrite stores new data frames to the same memory, overwriting invalid data frames already stored in memory. In addition, the present application counts the remaining space of the memory in real time. If the remaining space is less than the preset threshold, after reading the stored data frame in the memory according to the read start and end addresses, update the read start and end addresses and the storage start and end addresses, and then follow the new data frames. The start and end addresses of the storage are overwritten to store new data frames, thereby improving the utilization of storage space. The application effectively manages the same storage space by using the storage start and end addresses and the read start and end addresses, improves the utilization rate of the memory, saves the storage space during storage, and after reading the data in it, the storage start and end addresses can be updated in time, so that the next time When a new data frame is stored, the new data frame is overwritten, thereby improving the performance of the FPGA verification platform. Moreover, there is no need to set up multi-level caches in the FPGA verification platform, and it can be implemented using one cache space. Using a buffer space also saves the hardware circuit layout space of the FPGA verification platform, and provides convenience for the design and implementation of the FPGA verification platform.
本申请实施例公开了一种应用于FPGA验证平台的数据处理方案,该方案的框架示意图请参见图3。The embodiment of the present application discloses a data processing solution applied to an FPGA verification platform. For a schematic diagram of the framework of the solution, please refer to FIG. 3 .
图3仅示意了一条数据通道(对应一个数据接口),在该数据通道上,可配置匹配校验模块、存储模块、存储地址维护模块、流控管理模块,这些模块可直接与处理器进行数据交互。Figure 3 shows only one data channel (corresponding to a data interface). On this data channel, a matching verification module, a storage module, a storage address maintenance module, and a flow control management module can be configured. These modules can directly communicate with the processor for data processing. interact.
当然,也可以设置多条数据通道,可以在每条数据通道上配置匹配校验模块、存储模块、存储地址维护模块、流控管理模块。也可以多条数据通道共用匹配校验模块、存储模块、存储地址维护模块、流控管理模块。Of course, multiple data channels can also be set, and a matching verification module, a storage module, a storage address maintenance module, and a flow control management module can be configured on each data channel. Multiple data channels can also share the matching verification module, storage module, storage address maintenance module, and flow control management module.
匹配校验模块、存储模块、存储地址维护模块、流控管理模块还可以封装为可复用的整体,以便设计实现FPGA验证平台。The matching verification module, storage module, storage address maintenance module, and flow control management module can also be packaged into a reusable whole, so as to design and implement an FPGA verification platform.
具体的,匹配校验模块实时对接收到的数据帧进行特征值匹配和CRC校验,匹配和校验结果直接控制数据帧的存储过程。Specifically, the matching verification module performs feature value matching and CRC verification on the received data frame in real time, and the matching and verification results directly control the storage process of the data frame.
存储地址维护模块实时维护FPGA验证平台中的RAM存储器的存储起止地址、读取起止地址,能够对存储器的存储空间进行管理。The storage address maintenance module maintains the storage start and end addresses and the read start and end addresses of the RAM memory in the FPGA verification platform in real time, and can manage the storage space of the memory.
流控管理模块可根据存储起止地址、读取起止地址计算已存数据量、空间余量等信息,并根据这些信息确定是否产生中断,以控制数据传输流量。还可以配置匹配规则、存储阈值、定时中断阈值、数据接收使能等等。The flow control management module can calculate the information such as the amount of stored data and the space margin according to the start and end addresses of storage and the start and end addresses of reading, and determine whether to generate an interruption according to these information to control the data transmission flow. You can also configure matching rules, storage thresholds, timing interrupt thresholds, data reception enable, and so on.
存储模块(即RAM存储器)是FPGA验证平台中的唯一存储空间,其为真双口RAM,支持读写时钟异步,数据位宽和存储器的总容量随FPGA验证平台中的总线特点以及应用环境灵活配置。The storage module (ie RAM memory) is the only storage space in the FPGA verification platform. It is a true dual-port RAM and supports asynchronous read and write clocks. The data bit width and the total memory capacity vary with the bus characteristics and application environment in the FPGA verification platform. configuration.
参见图4,基于上述框架进行数据处理的具体过程包括:Referring to Figure 4, the specific process of data processing based on the above framework includes:
数据接口接收到数据帧后,该数据帧会传输到匹配校验模块、存储模块、存储地址维护模块,以便匹配校验模块、存储模块、存储地址维护模块尽可能并行工作。After the data interface receives the data frame, the data frame will be transmitted to the matching verification module, the storage module, and the storage address maintenance module, so that the matching verification module, the storage module, and the storage address maintenance module can work in parallel as much as possible.
其中,存储地址维护模块通过维护存储起止地址实现对存储器存储空间的控制。初始时,存储起止地址(包括起始地址stt_addr和结束地址end_addr)为0,接收数据帧后,暂不论该数据帧是否有效,先存储该数据帧。存储结束时,获取已存储数据帧的最后一个ram_addr(RAM存储器中的RAM存储地址)为end_addr。此时,若存储地址维护模块接收到该数据帧有效的信号(该信号由匹配校验模块输出),则stt_addr值更新为end_addr+1,从而得到更新起止地址。若此时存储地址维护模块接收到该数据帧无效的信号,则stt_addr和end_addr保持不变,以便在接收到新的数据帧时,还从原stt_addr开始存储数据帧,这样即可覆盖无效的数据帧。如此循环,便在同一个存储空间中实现了数据帧的接收处理和缓存备用。存储起止地址的每次更新,都标志着一个有效数据帧整帧存储的完成。Wherein, the storage address maintenance module realizes the control of the storage space of the memory by maintaining the storage start and end addresses. Initially, the storage start and end addresses (including the start address stt_addr and the end address end_addr) are 0. After receiving the data frame, regardless of whether the data frame is valid or not, the data frame is stored first. When the storage ends, the last ram_addr (the RAM storage address in the RAM memory) of the stored data frame is obtained as end_addr. At this time, if the storage address maintenance module receives a signal that the data frame is valid (the signal is output by the matching check module), the value of stt_addr is updated to end_addr+1, thereby obtaining the update start and end addresses. If the storage address maintenance module receives a signal that the data frame is invalid at this time, stt_addr and end_addr remain unchanged, so that when a new data frame is received, the data frame is stored from the original stt_addr, so that the invalid data can be overwritten frame. In this way, the receiving processing and buffering of data frames are implemented in the same storage space. Each update of the storage start and end addresses marks the completion of the entire frame storage of a valid data frame.
为保证数据帧存储的完整性和准确性,流控管理模块实时计算存储器的空间余量(free_len),将其与余量阈值(free_thrhd,可以设置为数据帧的最大帧长)作比较,当free_len小于等于余量阈值时,则当前帧存储完成后即禁止数据接口再接收数据,直到free_len大于余量阈值。若free_len大于余量阈值,则产生溢出风险告警,以表示存在丢帧的风险。In order to ensure the integrity and accuracy of the data frame storage, the flow control management module calculates the memory space margin (free_len) in real time, and compares it with the margin threshold (free_thrhd, which can be set to the maximum frame length of the data frame). When free_len is less than or equal to the margin threshold, the data interface is prohibited from receiving data after the current frame is stored until free_len is greater than the margin threshold. If free_len is greater than the margin threshold, an overflow risk alarm is generated to indicate the risk of frame loss.
此时可以控制FPGA验证平台中的处理器及时读取并处理存储器中的数据,以腾出存储器的存储空间。具体的,可以采用如下两种数据读取机制:一、处理器定时读取存储器中的数据,具体的间隔时间可随实际应用设定;二、配置存储阈值(ram_thrhd),当存储器中的已存数据量大于该存储阈值时,产生中断,以提示处理器读取存储器中的已存数据。处理器每次读取数据前,会首先确定存储器中已存数据帧的总长度(data_len),并按照总长度读取数据。每个已存数据帧的长度固定,故已存数据帧的总长度确定后,可据此计算需要读取的数据帧个数,以便逐个读取数据帧。处理器读取并处理存储器中的已存数据后,可以控制数据接口继续接收数据。At this time, the processor in the FPGA verification platform can be controlled to read and process the data in the memory in time to free up the storage space of the memory. Specifically, the following two data reading mechanisms can be used: first, the processor reads the data in the memory regularly, and the specific interval can be set according to the actual application; second, configure the storage threshold (ram_thrhd), when the memory has been When the amount of stored data is greater than the storage threshold, an interrupt is generated to prompt the processor to read the stored data in the memory. Before each time the processor reads data, it first determines the total length (data_len) of the data frame stored in the memory, and reads the data according to the total length. The length of each stored data frame is fixed, so after the total length of the stored data frames is determined, the number of data frames to be read can be calculated accordingly, so as to read the data frames one by one. After the processor reads and processes the stored data in the memory, it can control the data interface to continue to receive data.
需要说明的是,在处理器读取存储器中的已存数据的过程中,读取起止地址需要随之更新。具体的,当处理器定时读取数据,或者存储阈值中断产生时,处理器首先确定已存储的数据帧的总长度。具体的,记录读取起始地址(ram_stt_addr)为当前即将读取的第一个数据帧的起始位置,读取结束地址(ram_end_addr)为当前已存储的最后一个数据帧的结束位置,根据ram_stt_addr和ram_end_addr的偏差,可计算得到已存储的数据帧的总长度,也就是本次可读取的数据总长度data_len(需考虑存储单元的地址循环情况,根据二值大小选定计算方式)。之后,ram_stt_addr值可随着处理器的数据读取递增,或者读取结束后更新为暂存的原ram_end_addr值。这样,处理器读走之前存储的帧数据,ram_stt_addr随之偏移,随着数据的接收,等待下一次数据读取,如此循环。当前数据帧存储时所占用的地址ram_addr与ram_stt_addr的偏差,可计算出实时的空间占用(需考虑存储单元的地址循环情况,根据二值大小选定计算方式),存储器总容量减去该值即得到空间余量free_len。It should be noted that, in the process of the processor reading the stored data in the memory, the read start and end addresses need to be updated accordingly. Specifically, when the processor reads data regularly, or when a storage threshold interrupt occurs, the processor first determines the total length of the stored data frame. Specifically, the record read start address (ram_stt_addr) is the start position of the first data frame to be read currently, and the read end address (ram_end_addr) is the end position of the currently stored last data frame. According to ram_stt_addr The deviation from ram_end_addr can be calculated to obtain the total length of the stored data frame, that is, the total length of data that can be read this time, data_len (the address cycle of the storage unit needs to be considered, and the calculation method is selected according to the binary size). After that, the ram_stt_addr value can be incremented with the data read by the processor, or updated to the original ram_end_addr value temporarily stored after the read is completed. In this way, the processor reads the previously stored frame data, and the ram_stt_addr is shifted accordingly. As the data is received, it waits for the next data read, and so on. The deviation of the addresses ram_addr and ram_stt_addr occupied when the current data frame is stored, the real-time space occupation can be calculated (the address cycle of the storage unit needs to be considered, and the calculation method is selected according to the size of the binary value). The total memory capacity minus this value is Get the space allowance free_len.
其中,因为RAM地址是循环利用的,因此计算已存储的数据帧的长度时,需要考虑存储单元的地址循环情况。例如:RAM的深度为8192(总地址数),则地址范围为0~8191,数据存储到8191后下一个地址循环到0。所以,计算data_len的时候,需要考虑到读取起始地址和读取结束地址的大小。Among them, because the RAM address is recycled, when calculating the length of the stored data frame, it is necessary to consider the address cycle of the storage unit. For example, if the depth of RAM is 8192 (the total number of addresses), the address range is 0 to 8191, and the next address loops to 0 after the data is stored in 8191. Therefore, when calculating data_len, you need to consider the size of the read start address and read end address.
具体的,在存储接收数据帧之前,还可以按照预设格式对数据帧进行封装,封装过程中,可以丢弃原接收数据帧中的冗余数据,还可以将具有相同特征值的不同接收数据帧融合后封装在一个帧中,以提高一个帧中的有效数据占比。Specifically, before storing the received data frame, the data frame can also be encapsulated according to a preset format. During the encapsulation process, redundant data in the original received data frame can be discarded, and different received data frames with the same feature value can also be After fusion, it is encapsulated in a frame to improve the proportion of effective data in a frame.
在本实施例中,FPGA验证平台也可作为ASIC(Application Specific IntegratedCircuit)的验证平台。处理器可以为BOOM处理器,该处理器可与RISC-V指令集、BSD(Berkeley Software Distribution)协议等结合使用。In this embodiment, the FPGA verification platform can also be used as a verification platform for an ASIC (Application Specific Integrated Circuit). The processor may be a BOOM processor, and the processor may be used in combination with a RISC-V instruction set, a BSD (Berkeley Software Distribution) protocol, and the like.
可见,本实施例能够基于对一个存储空间对数据的存储过程进行管理,实现了数据帧的匹配、校验、存储、流控以及数据统计等过程,且不同过程还可以基于实际情况并行执行。同时,还支持通道扩展,实时性高,资源占用少,使用方式简单,适用于大数据量的复杂类型的数据接口。It can be seen that this embodiment can manage the data storage process based on one storage space, and realize the matching, verification, storage, flow control, and data statistics of data frames, and different processes can also be executed in parallel based on actual conditions. At the same time, it also supports channel expansion, with high real-time performance, low resource occupation, and simple usage, which is suitable for complex data interfaces with large amounts of data.
下面对本申请实施例提供的一种数据处理装置进行介绍,下文描述的一种数据处理装置与上文描述的一种数据处理方法可以相互参照。The following describes a data processing apparatus provided by an embodiment of the present application, and a data processing apparatus described below and a data processing method described above can be referred to each other.
参见图5所示,本申请实施例公开了一种数据处理装置,应用于FPGA验证平台,包括:Referring to FIG. 5 , an embodiment of the present application discloses a data processing apparatus, which is applied to an FPGA verification platform, including:
接收模块501,用于利用至少一个数据接口接收待处理的数据帧;a
存储模块502,用于按照存储起止地址将数据帧存储至FPGA验证平台中的存储器;The
匹配校验模块503,用于对数据帧进行匹配校验,若数据帧匹配校验未通过,则保留存储起止地址,以便在利用数据接口接收到新的数据帧时,按照存储起止地址覆盖式存储新的数据帧至存储器;The matching
管理模块504,用于实时统计存储器的剩余空间,若剩余空间小于预设阈值,则按照读取起止地址读取存储器中的已存数据帧后,更新读取起止地址和存储起止地址。The
在一种具体实施方式中,匹配校验模块具体用于:In a specific embodiment, the matching verification module is specifically used for:
按照预设匹配规则对所述数据帧进行特征值匹配,以及对所述数据帧进行CRC校验;若特征值匹配通过且CRC校验通过,则确定所述数据帧匹配校验通过;否则,确定所述数据帧匹配校验未通过。Carry out feature value matching on the data frame according to the preset matching rule, and perform CRC check on the data frame; if the feature value matches and passes the CRC check, it is determined that the data frame matches the check; otherwise, It is determined that the data frame matching check fails.
在一种具体实施方式中,还包括:In a specific embodiment, it also includes:
更新模块,用于若所述数据帧匹配校验通过,则更新所述存储起止地址,得到更新起止地址,以便在利用所述数据接口接收到所述新的数据帧时,按照所述更新起止地址存储所述新的数据帧。an update module, configured to update the storage start and end addresses if the data frame matching check is passed, to obtain the update start and end addresses, so that when the new data frame is received by the data interface, the update start and end addresses are The address stores the new data frame.
在一种具体实施方式中,更新模块具体用于:In a specific embodiment, the update module is specifically used for:
根据所述存储起止地址和所述数据帧占用的地址长度计算所述更新起止地址。The update start and end addresses are calculated according to the storage start and end addresses and the address length occupied by the data frame.
在一种具体实施方式中,还包括:In a specific embodiment, it also includes:
去使能模块,用于控制所述数据接口去使能。A disabling module, configured to control the data interface to be disabled.
在一种具体实施方式中,还包括:In a specific embodiment, it also includes:
使能模块,用于控制所述数据接口使能。The enabling module is used to control the enabling of the data interface.
在一种具体实施方式中,还包括:In a specific embodiment, it also includes:
位宽转换模块,用于对所述数据帧进行位宽转换,以适配所述FPGA验证平台中的总线位宽;a bit-width conversion module for performing a bit-width conversion on the data frame to adapt to the bus bit-width in the FPGA verification platform;
封装模块,用于按照预设格式封装所述数据帧。An encapsulation module, configured to encapsulate the data frame according to a preset format.
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。For the more specific working process of each module and unit in this embodiment, reference may be made to the corresponding content disclosed in the foregoing embodiments, which will not be repeated here.
可见,本实施例提供了一种数据处理装置,该装置可以覆盖已存储的无效数据帧,因此能够节约存储空间和资源,提高FPGA验证平台性能。也无需在FPGA验证平台中设置多级缓存,使用一个缓存空间也能实现。使用一个缓存空间还节约了FPGA验证平台的硬件线路布局空间,为FPGA验证平台的设计实现提供便利。It can be seen that this embodiment provides a data processing apparatus, which can cover the stored invalid data frames, thereby saving storage space and resources and improving the performance of the FPGA verification platform. There is also no need to set up multi-level caches in the FPGA verification platform, and it can be achieved using one cache space. Using a buffer space also saves the hardware circuit layout space of the FPGA verification platform, and provides convenience for the design and implementation of the FPGA verification platform.
下面对本申请实施例提供的一种数据处理设备进行介绍,下文描述的一种数据处理设备与上文描述的一种数据处理方法及装置可以相互参照。The following describes a data processing device provided by an embodiment of the present application. The data processing device described below and the data processing method and apparatus described above can be referred to each other.
参见图6所示,本申请实施例公开了一种数据处理设备,包括:Referring to FIG. 6 , an embodiment of the present application discloses a data processing device, including:
存储器601,用于保存计算机程序;
处理器602,用于执行所述计算机程序,以实现上述任意实施例公开的方法。The
下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种数据处理方法、装置及设备可以相互参照。A readable storage medium provided by an embodiment of the present application is introduced below. A readable storage medium described below and a data processing method, apparatus, and device described above can be referred to each other.
一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的数据处理方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。A readable storage medium for storing a computer program, wherein when the computer program is executed by a processor, the data processing methods disclosed in the foregoing embodiments are implemented. For the specific steps of the method, reference may be made to the corresponding content disclosed in the foregoing embodiments, which will not be repeated here.
本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。References in this application to "first", "second", "third", "fourth", etc. (if any) are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It is to be understood that data so used may be interchanged under appropriate circumstances so that the embodiments described herein can be practiced in sequences other than those illustrated or described herein. Furthermore, the terms "comprising" and "having", and any variations thereof, are intended to cover non-exclusive inclusion, for example, a process, method or apparatus comprising a series of steps or elements is not necessarily limited to those steps or elements expressly listed , but may include other steps or elements not expressly listed or inherent to these processes, methods or apparatus.
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。It should be noted that the descriptions involving "first", "second", etc. in this application are only for the purpose of description, and should not be construed as indicating or implying their relative importance or implying the number of indicated technical features . Thus, a feature delimited with "first", "second" may expressly or implicitly include at least one of that feature. In addition, the technical solutions between the various embodiments can be combined with each other, but must be based on the realization by those of ordinary skill in the art. When the combination of technical solutions is contradictory or cannot be realized, it should be considered that the combination of such technical solutions does not exist. , is not within the scope of protection claimed in this application.
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments, and the same or similar parts between the various embodiments may be referred to each other.
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。The steps of a method or algorithm described in conjunction with the embodiments disclosed herein may be directly implemented in hardware, a software module executed by a processor, or a combination of the two. The software module can be placed in random access memory (RAM), internal memory, read only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other in the technical field. in any other form of readable storage medium that is well known.
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。The principles and implementations of the present application are described herein by using specific examples. The descriptions of the above embodiments are only used to help understand the methods and core ideas of the present application. There will be changes in the specific implementation and application scope. To sum up, the content of this specification should not be construed as a limitation on the application.
Claims (8)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010989115.3A CN112131828B (en) | 2020-09-18 | 2020-09-18 | Data processing method, device and equipment and readable storage medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010989115.3A CN112131828B (en) | 2020-09-18 | 2020-09-18 | Data processing method, device and equipment and readable storage medium |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN112131828A CN112131828A (en) | 2020-12-25 |
| CN112131828B true CN112131828B (en) | 2022-06-17 |
Family
ID=73841509
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010989115.3A Active CN112131828B (en) | 2020-09-18 | 2020-09-18 | Data processing method, device and equipment and readable storage medium |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN112131828B (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113783800B (en) * | 2021-11-10 | 2022-03-01 | 恒生电子股份有限公司 | Data packet processing method and device, computer equipment and readable storage medium |
| CN115766490B (en) * | 2022-10-17 | 2025-06-17 | 北京奕斯伟计算技术股份有限公司 | Method for acquiring calibration data, method, device and equipment for storing calibration data |
| CN116633488A (en) * | 2023-05-22 | 2023-08-22 | 重庆长安汽车股份有限公司 | Data frame storage method, device, vehicle and storage medium |
| CN120474600A (en) * | 2025-04-27 | 2025-08-12 | 中国电信股份有限公司卫星通信分公司 | Data transmission method, device and non-volatile storage medium |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103795502A (en) * | 2014-02-28 | 2014-05-14 | 杭州华三通信技术有限公司 | Data frame check code generating method and device |
| WO2014092551A1 (en) * | 2012-12-13 | 2014-06-19 | Mimos Berhad | System and method for optimal memory management between cpu and fpga unit |
| CN104199783A (en) * | 2014-09-15 | 2014-12-10 | 烽火通信科技股份有限公司 | Method and device for caching and transmitting of Ethernet data frames in FPGA (field programmable gate array) |
| CN109739581A (en) * | 2019-01-29 | 2019-05-10 | 郑州云海信息技术有限公司 | A kind of FPGA partial reconfiguration method, system, device and computer medium |
| CN111142962A (en) * | 2019-11-15 | 2020-05-12 | 北京理工大学 | On-orbit reconstruction method and system of a spaceborne FPGA |
| CN111176884A (en) * | 2019-12-30 | 2020-05-19 | 西安智多晶微电子有限公司 | SEC (Security and Security) verification method and device for FPGA (field programmable Gate array) configuration memory |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB0304807D0 (en) * | 2003-03-03 | 2003-04-09 | Cambridge Internetworking Ltd | Data protocol |
| JP5796447B2 (en) * | 2011-10-07 | 2015-10-21 | 株式会社リコー | Information processing apparatus, validity verification method, validity verification program |
-
2020
- 2020-09-18 CN CN202010989115.3A patent/CN112131828B/en active Active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2014092551A1 (en) * | 2012-12-13 | 2014-06-19 | Mimos Berhad | System and method for optimal memory management between cpu and fpga unit |
| CN103795502A (en) * | 2014-02-28 | 2014-05-14 | 杭州华三通信技术有限公司 | Data frame check code generating method and device |
| CN104199783A (en) * | 2014-09-15 | 2014-12-10 | 烽火通信科技股份有限公司 | Method and device for caching and transmitting of Ethernet data frames in FPGA (field programmable gate array) |
| CN109739581A (en) * | 2019-01-29 | 2019-05-10 | 郑州云海信息技术有限公司 | A kind of FPGA partial reconfiguration method, system, device and computer medium |
| CN111142962A (en) * | 2019-11-15 | 2020-05-12 | 北京理工大学 | On-orbit reconstruction method and system of a spaceborne FPGA |
| CN111176884A (en) * | 2019-12-30 | 2020-05-19 | 西安智多晶微电子有限公司 | SEC (Security and Security) verification method and device for FPGA (field programmable Gate array) configuration memory |
Non-Patent Citations (4)
| Title |
|---|
| Design and implementation of HDLC procedures based on FPGA;Jun Wang等;《IEEE》;20091006;1-4 * |
| 一种可重用的验证平台在核电FPGA仿真测试中的应用;董玲玲等;《自动化博览》;20191231(第12期);91-95 * |
| 基于高性能SOC FPGA阵列的NVM验证架构设计与验证;刘珂等;《计算机研究与发展》;20180131(第02期);41-48 * |
| 无人车激光雷达高速数据采集系统设计;武萌等;《计算机测量与控制》;20130331;第21卷(第03期);819-822 * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN112131828A (en) | 2020-12-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112131828B (en) | Data processing method, device and equipment and readable storage medium | |
| US20140195867A1 (en) | Memory testing with selective use of an error correction code decoder | |
| CN113254368A (en) | Data writing method and data reading method from AXI bus to OPB bus | |
| CN106910528B (en) | Optimization method and device for data inspection of solid state disk | |
| JP7279889B2 (en) | MEMORY BLOCK RECLAIM METHOD AND MEMORY BLOCK RECLAIM DEVICE | |
| CN112347007B (en) | Flash memory data protection method and device, electronic equipment and storage medium | |
| CN103092798B (en) | The method of the access means under SOC(system on a chip) and bus | |
| US10643736B2 (en) | Method, apparatus and electronic device for read/write speed testing | |
| CN104375946B (en) | A kind of method and device of data processing | |
| CN110310693A (en) | In-Line ECC Module with Cache | |
| CN112506827A (en) | Data transmission method, device and equipment based on ADMA controller | |
| CN104156323A (en) | Method and device for reading length of data block of cache memory in self-adaption mode | |
| CN111913668B (en) | A method for checking and correcting the accuracy of memory data under IP multiplexing | |
| EP3125251A1 (en) | Hamming code-based data access method and integrated random access memory | |
| CN115129509B (en) | Data transmission method, device and medium | |
| CN104898989A (en) | Large-volume data storage equipment, large-volume data storage method and large-volume data storage device | |
| CN116881190A (en) | AXI protocol-based transmission information matching method, device, chip and medium | |
| CN107608821A (en) | A kind of method for reading data based on correcting and eleting codes, device, equipment | |
| US20130262947A1 (en) | Information processing apparatus, and method of controlling information processing apparatus | |
| WO2025252089A1 (en) | Data computation verification apparatus and data computation verification method for chip, and chip | |
| CN119225656B (en) | Data writing method, storage device and data writing system | |
| CN104461764B (en) | A kind of FPGA configuration file generation method of built-in CRC check code | |
| CN114662684A (en) | Acceleration method of convolutional neural network and convolutional neural network accelerator | |
| CN118244989A (en) | Log processing method, device, equipment and readable storage medium | |
| CN112732178B (en) | SSD data clearing method and related device |
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 | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20241009 Address after: 2324, Building 1, Aosheng Building, No. 1166 Xinluo Street, High tech Zone, Jinan City, Shandong Province, 250000 Patentee after: Inspur Computer Technology Co.,Ltd. Country or region after: China Address before: 35th floor, S01 building, Inspur science and Technology Park, 1036 Inspur Road, Jinan area, Jinan pilot Free Trade Zone, Jinan City, Shandong Province Patentee before: Shandong Yunhai guochuang cloud computing equipment industry innovation center Co.,Ltd. Country or region before: China |
|
| TR01 | Transfer of patent right |