CN114064547B - PCIe-based communication protocol stack hardware acceleration architecture construction method - Google Patents

PCIe-based communication protocol stack hardware acceleration architecture construction method Download PDF

Info

Publication number
CN114064547B
CN114064547B CN202111369382.1A CN202111369382A CN114064547B CN 114064547 B CN114064547 B CN 114064547B CN 202111369382 A CN202111369382 A CN 202111369382A CN 114064547 B CN114064547 B CN 114064547B
Authority
CN
China
Prior art keywords
data
interface
pcie
fpga
protocol stack
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
CN202111369382.1A
Other languages
Chinese (zh)
Other versions
CN114064547A (en
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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202111369382.1A priority Critical patent/CN114064547B/en
Publication of CN114064547A publication Critical patent/CN114064547A/en
Application granted granted Critical
Publication of CN114064547B publication Critical patent/CN114064547B/en
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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明是一种基于PCIe的通信协议栈硬件加速架构构建方法,属于通信技术领域。本发明采用PCIe通用接口实现通信协议栈与FPGA的数据交互,通信协议栈仿真平台搭建在PC上,FPGA使用AXI总线架构进行数据传输;PCIe通用接口的软件接口集成在通信协议栈仿真平台中,硬件接口中设置有XDMA IP核;FPGA中设置MIG、AXIDMA、DDR和FIFO IP核。本发明通过AXIDMA实现了数据由AXI4总线向AXI4‑Stream总线的搬移,加快了FPGA内部数据传输速度,同时通过FIFO保证了电路中的时序同步;通过上位机中断清除设置,可以无限制向FPGA发送数据且不被打断;PCIe通用接口适用性强。

Figure 202111369382

The invention relates to a method for constructing a PCIe-based communication protocol stack hardware acceleration framework, belonging to the technical field of communication. The present invention adopts the PCIe general interface to realize the data interaction between the communication protocol stack and the FPGA, the communication protocol stack simulation platform is built on the PC, and the FPGA uses the AXI bus architecture for data transmission; the software interface of the PCIe general interface is integrated in the communication protocol stack simulation platform, XDMA IP core is set in the hardware interface; MIG, AXIDMA, DDR and FIFO IP core are set in FPGA. The invention realizes the transfer of data from the AXI4 bus to the AXI4-Stream bus through AXIDMA, accelerates the internal data transmission speed of the FPGA, and at the same time ensures the timing synchronization in the circuit through the FIFO; through the host computer interrupt clear setting, it can be sent to the FPGA without limit The data will not be interrupted; the PCIe universal interface has strong applicability.

Figure 202111369382

Description

一种基于PCIe的通信协议栈硬件加速架构构建方法A PCIe-based communication protocol stack hardware acceleration architecture construction method

技术领域technical field

本发明属于通信技术领域,涉及通信协议栈中信号传输及信号处理的半实物仿真技术,具体涉及一种基于PCIe(高速串行计算机扩展总线标准)的通信协议栈硬件加速架构构建方法。The invention belongs to the technical field of communication, and relates to a hardware-in-the-loop simulation technology of signal transmission and signal processing in a communication protocol stack, in particular to a method for constructing a communication protocol stack hardware acceleration framework based on PCIe (high-speed serial computer expansion bus standard).

背景技术Background technique

在5G信息量急速增大的环境下,高速数据传输一直被重点关注。高速数据传输的主要特点是数据量大、数据传输速度快,而视频图像在传输中一直占较大比例,因此如何在通信系统中高速并准确的传输视频图像一直是专家研究的重点。In an environment where the amount of 5G information is rapidly increasing, high-speed data transmission has been focused on. The main characteristics of high-speed data transmission are large data volume and fast data transmission speed, and video images have always accounted for a large proportion of transmission, so how to transmit video images at high speed and accurately in communication systems has always been the focus of expert research.

在数据传输系统中,数据传输总线协议一开始遵循ISA(工业标准体系结构)总线,由于它只能支持16位I/O(输入/输出)设备,最大的传输速度也只有16MB/s,已经跟不上高速发展的数据传输领域而被淘汰。第二代传输协议是PCI(外设部件互连标准)总线,采用并行传输,通用性和开发性更强,但最高速度只有133MB/s,已经无法满足现有的高速数据传输系统。PCIe总线克服了PCI总线的缺点让数据传输的性能得到了很大的提升,它采用端到端、全双工、差分信号进行信号传输,避免了信号之间的干扰,可以满足设备独享通道带宽,提高了数据传输的质量,现在被广泛应用在高速数据传输的系统中,例如:小型嵌入式系统、大型服务器系统中等。In the data transmission system, the data transmission bus protocol initially follows the ISA (Industry Standard Architecture) bus, because it can only support 16-bit I/O (input/output) devices, and the maximum transmission speed is only 16MB/s, which has already Can not keep up with the rapid development of the field of data transmission and be eliminated. The second-generation transmission protocol is the PCI (Peripheral Component Interconnection Standard) bus, which adopts parallel transmission and has stronger versatility and development, but the maximum speed is only 133MB/s, which cannot meet the existing high-speed data transmission system. The PCIe bus overcomes the shortcomings of the PCI bus and greatly improves the performance of data transmission. It uses end-to-end, full-duplex, and differential signals for signal transmission, avoiding interference between signals, and can satisfy the exclusive channel of the device. Bandwidth improves the quality of data transmission and is now widely used in high-speed data transmission systems, such as: small embedded systems, large server systems, etc.

FPGA(现场可编程逻辑门阵列)相比于通用计算机计算速度更快,FPGA在信号处理时可并行运行,处理速度快,但对于精度复杂的运算不如PC(个人计算机)计算机,PC计算机具备相当强大的数据处理能力,通常情况下会将需要进行高精度复杂的计算交由计算机负责,复杂度低且运算量大的计算由FPGA负责。以上情况涉及到PC与FPGA间大规模数据传输的问题,因此构建PC与FPGA的高速数据传输系统成为当前的研究趋势。对通信协议栈中信号传输及信号处理的半实物仿真有助于上述问题的研究。但通信系统中音、视频占较大比例,针对其通信协议栈实物仿真难度较大。Compared with general-purpose computers, FPGA (Field Programmable Logic Gate Array) has a faster calculation speed. FPGA can run in parallel during signal processing, and the processing speed is fast, but it is not as good as PC (personal computer) computers for complex precision operations. PC computers have considerable Powerful data processing capability, under normal circumstances, high-precision and complex calculations will be handled by the computer, and low-complexity and large-scale calculations will be performed by the FPGA. The above situation involves the problem of large-scale data transmission between PC and FPGA, so building a high-speed data transmission system between PC and FPGA has become a current research trend. The hardware-in-the-loop simulation of signal transmission and signal processing in the communication protocol stack is helpful to the research of the above problems. However, in the communication system, audio and video account for a large proportion, and it is difficult to simulate the communication protocol stack in kind.

发明内容Contents of the invention

本发明目的是提供一种基于PCIe的通信协议栈硬件加速架构构建方法,适用于视频、图像传输场景,使用PCIe接口完成PC协议栈和FPGA的交互及信号处理加速,为软硬件数据交互提供了一种有效解决方案。本发明把现实场景中的视频图像传入仿真协议栈中,构建一个完整的视频图像传输协议栈半实物仿真平台,同时为通信协议栈半实物仿真提供了一种的思路。The purpose of the present invention is to provide a PCIe-based communication protocol stack hardware acceleration architecture construction method, which is suitable for video and image transmission scenarios, and uses the PCIe interface to complete the interaction between the PC protocol stack and the FPGA and the acceleration of signal processing, providing data interaction between software and hardware. An effective solution. The invention transfers the video image in the real scene into the simulation protocol stack, constructs a complete hardware-in-the-loop simulation platform of the video image transmission protocol stack, and provides an idea for the communication protocol stack hardware-in-the-loop simulation.

本发明实现的基于PCIe的通信协议栈硬件加速架构构建方法,采用PCIe通用接口实现通信协议栈与FPGA的数据交互,通信协议栈仿真平台搭建在PC上,FPGA中使用AXI总线架构进行数据的传输。PCIe通用接口包括PCIe通用接口软件接口和PCIe通用接口硬件接口。PCIe通用接口软件接口集成在通信协议栈仿真平台中。PCIe通用接口硬件接口中设置有XDMA IP核。FPGA中设置有MIG IP核、AXIDMA IP核、DDR(双倍速率同步动态随机存储器)和FIFO(先进先出)存储器。The PCIe-based communication protocol stack hardware acceleration framework construction method implemented by the present invention adopts the PCIe general interface to realize the data interaction between the communication protocol stack and the FPGA, the communication protocol stack simulation platform is built on the PC, and the FPGA uses the AXI bus architecture for data transmission . The PCIe general interface includes a PCIe general interface software interface and a PCIe general interface hardware interface. The PCIe general interface software interface is integrated in the communication protocol stack simulation platform. The PCIe general interface hardware interface is provided with an XDMA IP core. The FPGA is provided with MIG IP core, AXIDMA IP core, DDR (Double Rate Synchronous Dynamic Random Access Memory) and FIFO (First In First Out) memory.

所述PCIe通用接口硬件接口中,设置XDMA的pcie_mgt接口接收上位机传入的数据,再由M_AXI接口将数据输出通过MIG保存在FPGA的DDR中,此时数据在AXI4总线上;AXIDMA的MM2S通道获取所述DDR中的数据并转换为AXI4-Stream总线上的数据;所述FPGA内部使用AXI4-Stream总线读取数据;FPGA的数据处理模块对数据处理完成后,先将数据传输进入FIFO的M_AXIS接口,同步电路中的时钟信号,再将数据从FIFO的S_AXIS流出返回DDR中;XDMA的M_AXI接口通过MIG将DDR中的数据读到自己的内存中再由pcie_mgt接口返回到上位机;In the described PCIe general interface hardware interface, the pcie_mgt interface of XDMA is set to receive the data that host computer imports, then by M_AXI interface, data output is saved in the DDR of FPGA by MIG, and this moment data is on AXI4 bus line; MM2S channel of AXIDMA Obtain the data in the DDR and convert it into data on the AXI4-Stream bus; the FPGA internally uses the AXI4-Stream bus to read data; after the data processing module of the FPGA completes the data processing, it first transmits the data into the M_AXIS of the FIFO The interface synchronizes the clock signal in the circuit, and then returns the data from the S_AXIS of the FIFO to the DDR; the M_AXI interface of XDMA reads the data in the DDR to its own memory through the MIG and returns it to the host computer through the pcie_mgt interface;

所述PCIe通用接口硬件接口中,设置XDMA的usr_irq_req接口接收AXIDMA产生的中断信号并传输给上位机;PC传给FPGA内部的控制命令由AXI4-Lite总线传输。In the PCIe general interface hardware interface, the usr_irq_req interface of XDMA is set to receive the interrupt signal generated by AXIDMA and transmit it to the host computer; the control command transmitted by PC to FPGA is transmitted by AXI4-Lite bus.

所述的上位机PC通过FPGA中AXIDMA产生的中断信号判断数据在FPGA中传输的情况,由XDMA的usr_irq_req接口接收AXIDMA的中断信息并向PC传输;当中断信号由1变0,代表AXIDMA正常工作,可以传输数据;当中断信号由0变1,代表数据传输已经结束,需要清除中断才能继续传输数据。Described upper computer PC judges the situation that data is transmitted in FPGA by the interruption signal that AXIDMA produces in FPGA, receives the interruption information of AXIDMA by the usr_irq_req interface of XDMA and transmits to PC; When interruption signal changes 0 by 1, represents AXIDMA normal work , data can be transmitted; when the interrupt signal changes from 0 to 1, it means that the data transmission has ended, and the interrupt needs to be cleared to continue to transmit data.

相对于现有技术,本发明的优点与积极效果在于:(1)本发明所设计的PCIe通用接口的硬件电路通过AXIDMA实现了数据由AXI4总线向AXI4-Stream总线的搬移,加快了FPGA内部数据传输的速度,同时通过FIFO保证了电路中的时序同步。(2)本发明还实现了上位机中断清除的设置,保证了PC可以无限制的向FPGA发送数据且不被打断。(3)本发明中PCIe通用接口实现了将数据搬移到FPGA中做数据处理的功能,同时把PCIe接口与特定的程序解耦,使得任何C程序都可以调用,应用适用性强。Compared with the prior art, the advantages and positive effects of the present invention are: (1) the hardware circuit of the PCIe universal interface designed by the present invention has realized the movement of data from the AXI4 bus to the AXI4-Stream bus by the AXIDMA, which has accelerated the FPGA internal data The speed of transmission, while ensuring the timing synchronization in the circuit through FIFO. (2) The present invention also realizes the setting of interrupt clearing of the upper computer, which ensures that the PC can send data to the FPGA without restriction without being interrupted. (3) The PCIe universal interface in the present invention realizes the function of moving data to the FPGA for data processing, and decouples the PCIe interface from specific programs at the same time, so that any C program can be called, and the application applicability is strong.

附图说明Description of drawings

图1是本发明的基于PCIe的通信协议栈硬件加速架构的示意图;Fig. 1 is the schematic diagram of the PCIe-based communication protocol stack hardware acceleration framework of the present invention;

图2是本发明的PCIe通用接口硬件电路和FPGA的主要结构设计示意图;Fig. 2 is the main structural design schematic diagram of PCIe universal interface hardware circuit of the present invention and FPGA;

图3是本发明架构中上位机传输数据和进行控制的流程示意图;Fig. 3 is a schematic flow diagram of upper computer transmitting data and controlling in the framework of the present invention;

图4是本发明实施例中ILA调试位置的示意图;Fig. 4 is the schematic diagram of ILA debugging position in the embodiment of the present invention;

图5是本发明所设置的图像的采集与还原模块的功能示意图;Fig. 5 is the functional diagram of the acquisition and restoration module of the image provided by the present invention;

图6是本发明实施例中ILA数据采集结果的示意图;(a)XDMA到DDR的数据;(b)DDR到AXIDMA的数据;(c)AXI4总线转换到AXI4-Stream总线的数据;(d)DDR返回到XDMA的数据;Fig. 6 is the schematic diagram of ILA data collection result in the embodiment of the present invention; (a) XDMA to the data of DDR; (b) DDR to the data of AXIDMA; (c) AXI4 bus line is converted to the data of AXI4-Stream bus line; (d) DDR returns data to XDMA;

图7是本发明实施例中接收端图像在不同SNR(信噪比)下的显示的灰度图像。FIG. 7 is a grayscale image of images displayed at the receiving end under different SNR (Signal-to-Noise Ratio) in an embodiment of the present invention.

具体实施方式Detailed ways

下面将结合附图和实施例对本发明作进一步的详细说明。The present invention will be further described in detail with reference to the accompanying drawings and embodiments.

本发明实施例在视频传输场景下,提供的一种基于PCIe的通信协议栈硬件加速架构构建方法,如图1所示,PC上安装Linux系统,在Linux系统下搭建通信协议栈仿真平台,视频图像采集模块采集到的数据作为协议栈仿真平台的用户数据,通过协议栈数据流输入接口输入仿真平台;PCIe通用接口作为数据传输通道,实现通信协议栈与FPGA的数据交互,完成通信协议栈数据处理功能转移到FPGA做硬件仿真加速的功能。PCIe通用接口由软件和硬件共同完成。PCIe通用接口软件接口设置在PC机上。通信协议栈仿真平台通过PCIe通用接口软件接口访问PCIe通用接口硬件接口。In the video transmission scenario, the embodiment of the present invention provides a method for constructing a PCIe-based communication protocol stack hardware acceleration architecture. As shown in FIG. The data collected by the image acquisition module is used as the user data of the protocol stack simulation platform, which is input into the simulation platform through the protocol stack data stream input interface; the PCIe general interface is used as the data transmission channel to realize the data interaction between the communication protocol stack and FPGA, and complete the communication protocol stack data. The processing function is transferred to FPGA for hardware simulation acceleration function. The PCIe general interface is implemented by both software and hardware. The PCIe general interface software interface is set on the PC. The communication protocol stack simulation platform accesses the PCIe general interface hardware interface through the PCIe general interface software interface.

在硬件方面,本发明实施提出在FPGA中使用AXI总线架构进行通信,使用XDMA作为硬件电路中的PCIe总线IP核。AXI总线包括AXI4、AXI4-Stream和AXI4-Lite总线。XDMA通过AXI4(Advanced eXtensible Interface)总线访问FPGA内部数据,且PC在访问AXI4总线时必须通过访问地址来传递数据,而AXI4-Stream总线相对于AXI4总线不需要访问地址就能直接读写数据,可以加快数据传输的速度,所以本发明提出在FPGA内部使用AXI4-Stream总线读取数据。同时使用DDR和AXIDMA完成AXI4总线到AXI4-Stream总线数据搬移功能。In terms of hardware, the implementation of the present invention proposes to use the AXI bus architecture in the FPGA for communication, and use XDMA as the PCIe bus IP core in the hardware circuit. AXI buses include AXI4, AXI4-Stream and AXI4-Lite buses. XDMA accesses FPGA internal data through the AXI4 (Advanced eXtensible Interface) bus, and the PC must pass the data through the access address when accessing the AXI4 bus, while the AXI4-Stream bus can directly read and write data without accessing the address compared to the AXI4 bus. The speed of data transmission is accelerated, so the present invention proposes to use the AXI4-Stream bus to read data inside the FPGA. At the same time, DDR and AXIDMA are used to complete the data transfer function from the AXI4 bus to the AXI4-Stream bus.

PCIe通用接口的硬件电路如图2所示,使用了XDMA IP核。FPGA中设置了MIG、AXIDMA、DDR和FIFO存储器等IP核。DDR是FPGA中的数据存储器;FIFO主要负责调节电路中的时钟同步问题。XDMA主要负责PC和FPGA内部DDR的数据传输,是PCIe数据传输的控制器;MIG主要负责FPGA中AXI4总线与DDR的数据通信;AXIDMA具有数据搬移的功能,可以将AXI4总线上的数据搬移到AXI4-Stream和AXI4-Lite总线上来。本发明改进了IP核之间的时间、数据、控制等信号之间的交互逻辑,下面具体说明。The hardware circuit of the PCIe general interface is shown in Figure 2, using the XDMA IP core. IP cores such as MIG, AXIDMA, DDR and FIFO memory are set in the FPGA. DDR is the data memory in FPGA; FIFO is mainly responsible for adjusting the clock synchronization problem in the circuit. XDMA is mainly responsible for the data transmission of DDR inside PC and FPGA, and is the controller of PCIe data transmission; MIG is mainly responsible for the data communication between AXI4 bus and DDR in FPGA; AXIDMA has the function of data transfer, which can move the data on AXI4 bus to AXI4 -Stream and AXI4-Lite bus come up. The present invention improves the interaction logic among signals such as time, data and control among IP cores, which will be described in detail below.

首先,PC传入数据由XDMA的pcie_mgt接口接收,M_AXI接口再将数据输出并保存在DDR中,此时数据在AXI4总线上。如图2所示,芯片XDMA_0从pcie_mgt接口接收PC数据,经从器件AXI_interconnect_0和AXI_interconnect_1输入模块MIG_7series_0,控制输出到FPGA的DDR。PC到FPGA的数据传输完成后,FPGA会对收到的数据进行处理。First, the incoming data from the PC is received by the pcie_mgt interface of XDMA, and the M_AXI interface outputs the data and saves it in DDR. At this time, the data is on the AXI4 bus. As shown in Figure 2, the chip XDMA_0 receives PC data from the pcie_mgt interface, and inputs the module MIG_7series_0 through the slave devices AXI_interconnect_0 and AXI_interconnect_1 to control the DDR output to the FPGA. After the data transmission from PC to FPGA is completed, FPGA will process the received data.

其次,AXIDMA的MM2S通道获取DDR中的数据并转换为AXI4-Stream总线上的数据。FPGA对数据处理完成后,先将数据传输进入FIFO的M_AXIS接口用来同步电路中的时钟信号,然后数据流从FIFO的S_AXIS流出返回DDR中,在XDMA的M_AXI接口通过MIG将DDR中的数据读到自己的内存中再由pcie_mgt接口返回到PC,至此PC到FPGA的数据传输完成。Secondly, the MM2S channel of AXIDMA acquires the data in DDR and converts it into data on the AXI4-Stream bus. After the FPGA completes the data processing, it first transfers the data into the M_AXIS interface of the FIFO to synchronize the clock signal in the circuit, then the data stream flows out from the S_AXIS of the FIFO and returns to the DDR, and reads the data in the DDR through the MIG on the M_AXI interface of the XDMA to its own memory and then returned to the PC through the pcie_mgt interface, and the data transmission from the PC to the FPGA is completed.

在此架构中PC机通过FPGA中AXIDMA产生的中断信号判断数据在FPGA中传输的情况,由XDMA的usr_irq_req接口接收AXIDMA的中断信息并向PC传输中断信息;本发明实施例中,当中断信号由1变0,代表AXIDMA正常工作,可以传输数据;当中断信号由0变1,代表数据传输已经结束,需要清除中断才能继续传输数据。FPGA的控制命令由AXI4-Lite总线负责,此方法将数据总线和命令总线分开,提高了系统的便捷性。在图2中XDMA的M_AXI_LITE接口将PC的控制信号传给AXIDMA的S_AXI_LITE接口实现对AXIDMA的开启和关闭的控制。由于XDMA、DDR和AXIDMA都使用AXI总线,本发明使用AXI Interconnect实现AXI总线的互联,改善了互联时序并且提高了系统性能。当FPGA对数据进行处理时会存在时序不同步,通过FIFO可以使各个模块的时序同步。In this framework, PC judges the situation that data is transmitted in FPGA by the interruption signal that AXIDMA produces in FPGA, receives the interruption information of AXIDMA by the usr_irq_req interface of XDMA and transmits interruption information to PC; In the embodiment of the present invention, when interruption signal is transmitted by 1 changes to 0, which means that AXIDMA is working normally and can transmit data; when the interrupt signal changes from 0 to 1, it means that the data transmission has ended, and the interrupt needs to be cleared to continue to transmit data. The control commands of the FPGA are handled by the AXI4-Lite bus. This method separates the data bus and the command bus, which improves the convenience of the system. In Figure 2, the M_AXI_LITE interface of XDMA transmits the control signal of PC to the S_AXI_LITE interface of AXIDMA to control the opening and closing of AXIDMA. Since XDMA, DDR and AXIDMA all use the AXI bus, the present invention uses the AXI Interconnect to realize the interconnection of the AXI bus, which improves the interconnection timing and system performance. When the FPGA processes data, there will be timing asynchrony, and the timing of each module can be synchronized through the FIFO.

硬件电路搭建成功后,PC协议栈通过访问PCIe的设备文件向FPGA发送传输数据和控制信息。PC软件的设计思路如图3所示:首先,PC把要传输的数据保存在一片连续的内存中,采用内存映射访问PCIe的设备文件;访问h2c接口把数据传到特有地址的DDR中,访问c2h接口把数据从对应地址的DDR中取出。其次对照AXIDMA用户手册访问AXIDMA寄存器,控制AXIDMA的开关和清除中断;访问event接口获取AXIDMA中断状态,中断存在则清除中断。如图3所示,具体地,PC协议栈通过访问PCIe的设备文件向FPGA发送传输数据和控制信息的过程包括:(1)内存映射到lite接口,传输命令控制给AXIDMA;(2)把内存中的数据从PCIe传到DDR;(3)启动AXIDMA的MM2S通道,数据从DDR搬移到AXIDMA的AXI4_Stream接口,一次数据传输完成,AXIDMA产生中断信号发送给PC协议栈,中断清除之后数据可以继续传输数据;(4)在FPGA中对数据做硬件加速处理;(5)启动AXIDMA的S2MM通道进行数据搬移,将处理后的数据搬移到DDR,同时产生中断信号发送给PC协议栈,清除中断信号可继续搬移数据;(6)从DDR中把数据传回协议栈。After the hardware circuit is built successfully, the PC protocol stack sends transmission data and control information to the FPGA by accessing the PCIe device file. The design idea of the PC software is shown in Figure 3: first, the PC stores the data to be transmitted in a continuous memory, and uses memory mapping to access the PCIe device file; accesses the h2c interface to transfer the data to the DDR with a unique address, and accesses the The c2h interface fetches the data from the DDR corresponding to the address. Secondly, refer to the AXIDMA user manual to access the AXIDMA register, control the AXIDMA switch and clear the interrupt; access the event interface to obtain the AXIDMA interrupt status, and clear the interrupt if the interrupt exists. As shown in Figure 3, specifically, the process of PC protocol stack sending transmission data and control information to FPGA by accessing PCIe device files includes: (1) memory mapping to lite interface, transmission command control to AXIDMA; (2) memory (3) Start the MM2S channel of AXIDMA, and move the data from DDR to the AXI4_Stream interface of AXIDMA. After a data transmission is completed, AXIDMA generates an interrupt signal and sends it to the PC protocol stack. After the interrupt is cleared, the data can continue to be transmitted data; (4) perform hardware acceleration processing on the data in the FPGA; (5) start the S2MM channel of AXIDMA to move the data, move the processed data to the DDR, and generate an interrupt signal to the PC protocol stack at the same time, clear the interrupt signal can Continue to move the data; (6) transfer the data back to the protocol stack from the DDR.

由于XDMA和DDR这两个IP核仿真难度大,工作量繁重,本发明提出采用上位机通信加FPGA在线逻辑分析的传输架构验证。在FPGA在线逻辑分析中,ILA(Integrated LogicAnalyzer,集成逻辑分析器)的位置如图4所示,在XDMA的输入和输出接口、DDR的数据输入输出接口和AXIDMA的输入输出接口加入ILA IP核抓取信号,然后观察FPGA中信号传输是否正确。Since the simulation of the two IP cores of XDMA and DDR is difficult and the workload is heavy, the present invention proposes a transmission architecture verification using upper computer communication and FPGA online logic analysis. In FPGA online logic analysis, the position of ILA (Integrated LogicAnalyzer, integrated logic analyzer) is shown in Figure 4. Add the ILA IP core to the input and output interface of XDMA, the data input and output interface of DDR and the input and output interface of AXIDMA Take the signal, and then observe whether the signal transmission in the FPGA is correct.

打开VIVADO的硬件管理器,就会显示调试界面。ILA抓取信号是通过设置触发条件实现的,AXI总线遵循握手协议,只有tready和tvaild信号同时为高电平的时候,数据才能进行传输。ready和tvaild信号为AXI4-Stream接口信号,tvaild信号表示主设备正在驱动一个有效的传输,tready信号表示从设备在当前周期能够接收一次传输,当ready和tvaild信号都置高位时,数据可以进行传输。设置tready或者tvaild信号为触发条件,通过PC向DMA寄存器传输控制信号让tready信号发生改变,再对程序单步调试,观察ILA抓取到的数据,可以完成本发明提出的传输架构验证。注意每次触发信号被触发之后,需要重新设置触发条件进行下一次信号的抓取。改变抓取深度确定抓取前后数据比例,方便前后数据传输的对比。Open the hardware manager of VIVADO, and the debugging interface will be displayed. The ILA capture signal is realized by setting the trigger condition. The AXI bus follows the handshake protocol. Only when the tready and tvaild signals are high at the same time, the data can be transmitted. The ready and tvaild signals are AXI4-Stream interface signals. The tvaild signal indicates that the master device is driving an effective transmission. The tready signal indicates that the slave device can receive a transmission in the current cycle. When both the ready and tvaild signals are set to high, the data can be transmitted. . Set the tready or tvaild signal as the trigger condition, transmit the control signal to the DMA register through the PC to change the tready signal, and then debug the program step by step, and observe the data captured by the ILA to complete the verification of the transmission architecture proposed by the present invention. Note that after each trigger signal is triggered, it is necessary to reset the trigger condition to capture the next signal. Change the capture depth to determine the data ratio before and after capture, so as to facilitate the comparison of data transmission before and after.

OAI(OpenAirInterface)项目是在Linux系统下基于C语言实现的3GPP协议栈仿真平台,PCIe通用接口软件接口(即软件驱动程序)和上位机程序也是基于C语言编写的,因此本发明将PCIe通用接口的软件接口程序集成到了OAI项目,将PCIe主机程序封装成函数,函数输入参数是传输数据,返回值为FPGA处理后的数据。根据OAI编译规则定义一个PCIe_interface文件存储PCIe_interface函数,并将此文件封装在tools文件夹中,同时将宏定义和头文件添加到其他文件中,并且在OAI对应的编译文件中加入编译语句。经过验证,PCIe通用接口软件接口成功集成到OAI协议栈的物理层中,该接口可在仿真系统中的特定地方被调用。The OAI (OpenAirInterface) project is a 3GPP protocol stack emulation platform based on the C language under the Linux system, and the PCIe general interface software interface (i.e. software driver) and the host computer program are also written based on the C language, so the present invention uses the PCIe general interface The software interface program is integrated into the OAI project, and the PCIe host program is encapsulated into a function. The input parameter of the function is the transmission data, and the return value is the data processed by the FPGA. Define a PCIe_interface file to store the PCIe_interface function according to the OAI compilation rules, encapsulate this file in the tools folder, add macro definitions and header files to other files, and add compilation statements to the OAI corresponding compilation file. After verification, the PCIe general interface software interface is successfully integrated into the physical layer of the OAI protocol stack, and this interface can be called at a specific place in the simulation system.

在上位机的通信协议栈仿真平台中还设置有图像采集与还原模块。本发明将现实场景下采集的视频图像传入协议栈仿真平台中,模拟视频传输场景下的协议栈硬件加速架构。由于协议栈仿真平台搭建在Linux系统下,具有UVC功能的设备被用来采集视频图像,V4L2是在Linux操作系统下实现UVC功能的API接口,协议栈可以通过此接口编写视频图像采集和还原模块。以OAI下行仿真链路为例:如图5所示,将OAI中随机生成的用户数据替换为设备采集到视频图像,并备份数据,在数据处理完成之后将前后数据进行对比。An image acquisition and restoration module is also set in the communication protocol stack simulation platform of the upper computer. The invention transfers the video images collected in the real scene into the protocol stack simulation platform, and simulates the hardware acceleration framework of the protocol stack in the video transmission scene. Since the protocol stack simulation platform is built under the Linux system, devices with UVC functions are used to capture video images. V4L2 is an API interface for realizing UVC functions under the Linux operating system. The protocol stack can write video image acquisition and restoration modules through this interface. . Take the OAI downlink simulation link as an example: as shown in Figure 5, replace the randomly generated user data in OAI with video images collected by the device, and back up the data, and compare the before and after data after the data processing is completed.

由于外界采集到的视频图像信息数据量很大,可以采用压缩编码方式对视频图像进行压缩,减少数量,降低视频传输时间,压缩后的数据再输入到协议栈。在链路级下行模拟信道中,仿真平台的图像采集与还原模块将传输入的用户数据量存储在一个列表中,可通过设置不同的参数确定一帧时间传输的数据量。由于视频图像占用的内存不固定,OAI仿真平台一帧传输的数据量无法完成视频传输,所以图像采集与还原模块将视频分成n帧传输,若最后一帧剩余的数据少于固定的传输长度则末尾补0,n为正整数。在每一帧的数据链路中数据流在发送端之前输入,接收端解码后接收数据流并存储在空白的内存中,然后将下一帧的数据保存在前一帧数据的最后一位地址处。当视频传输结束后,接收端接收到所有数据,本发明将此内存中的数据变成为可视化图像,观察不同SNR下图像的数据传输情况。Due to the large amount of video image information collected from the outside world, compression coding can be used to compress video images to reduce the number and video transmission time, and the compressed data is then input to the protocol stack. In the downlink analog channel at the link level, the image acquisition and restoration module of the simulation platform stores the amount of transmitted user data in a list, and the amount of data transmitted in one frame time can be determined by setting different parameters. Since the memory occupied by the video image is not fixed, the amount of data transmitted by one frame of the OAI simulation platform cannot complete the video transmission, so the image acquisition and restoration module divides the video into n frames for transmission. If the remaining data of the last frame is less than the fixed transmission length, then Add 0 at the end, and n is a positive integer. In the data link of each frame, the data stream is input before the sending end, and the receiving end decodes and receives the data stream and stores it in a blank memory, and then saves the data of the next frame in the last bit address of the previous frame data place. After the video transmission ends, the receiving end receives all the data, and the present invention converts the data in the memory into a visualized image, and observes the data transmission of images under different SNRs.

为了验证通用接口的正确性,传入FPGA中的数据没有做任何处理就被返回PC中。当仿真协议栈中的数据通过PCIe通用接口传向FPGA时要根据图4提出的调试流程验证PCIe通用接口。ILA抓取的数据结果如图6所示,从图中可以看到从XDMA到DDR的数据和从DDR到AXIDMA的数据一样,从AXIDMA返回到XDMA的数据也是一样,PCIe通用接口验证成功。In order to verify the correctness of the common interface, the data passed into the FPGA is returned to the PC without any processing. When the data in the simulation protocol stack is transmitted to the FPGA through the PCIe general interface, the PCIe general interface should be verified according to the debugging process proposed in Figure 4. The data captured by ILA is shown in Figure 6. From the figure, it can be seen that the data from XDMA to DDR is the same as the data from DDR to AXIDMA, and the data returned from AXIDMA to XDMA is also the same. The PCIe universal interface verification is successful.

以OAI仿真平台为例,将PCIe_interface通用软件接口嵌入该平台中,在下行链路仿真平台中调用PCIe通用软件接口,将输入接口前后的数据进行对比,数据完全一样。通过以上验证可以确定PCIe已经成功集成到OAI仿真平台中。相应地,对于其他基于C语言的仿真平台,只需把本发明设计的PCIe_interface文件导入相应的平台,就可以实现与FPGA交互的功能。Taking the OAI simulation platform as an example, the PCIe_interface general software interface is embedded in the platform, and the PCIe general software interface is invoked in the downlink simulation platform, and the data before and after the input interface are compared, and the data are exactly the same. Through the above verification, it can be determined that PCIe has been successfully integrated into the OAI simulation platform. Correspondingly, for other simulation platforms based on C language, only need to import the PCIe_interface file designed by the present invention into the corresponding platform, the function of interacting with FPGA can be realized.

对于整个图像传输仿真平台,按照图5的方案将摄像头采集到的图像经过压缩输入到OAI中,把传输前后的数据对比。观察不同SNR值对传输数据的影响。如图7所示,摄像头采集的图像被处理成Linux系统可以直接观察的形式,SNR的取值从-10到19,随着SNR数值的增加,图像由显示不可视到逐渐完整,完整的表现出SNR对图像数据传输的影响,视频传输场景下的协议栈仿真平台搭建成功。本发明提供的架构对搭建协议栈半实物仿真平台提供了思路,有一定的参考价值。For the entire image transmission simulation platform, according to the scheme in Figure 5, the images collected by the camera are compressed and input into OAI, and the data before and after transmission are compared. Observe the effect of different SNR values on the transmitted data. As shown in Figure 7, the image collected by the camera is processed into a form that can be directly observed by the Linux system. The SNR value ranges from -10 to 19. With the increase of the SNR value, the image changes from being invisible to gradually complete and complete. The influence of SNR on image data transmission is shown, and the protocol stack simulation platform under the video transmission scenario is successfully built. The framework provided by the invention provides ideas for building a semi-physical simulation platform of the protocol stack, and has certain reference value.

除说明书所述的技术特征外,均为本专业技术人员的已知技术。本发明省略了对公知组件和公知技术的描述,以避免赘述。上述实施例中所描述的实施方式也并不代表与本申请相一致的所有实施方式,在本发明技术方案的基础上,本领域技术人员不需要付出创造性的劳动即可做出的各种修改或变形仍在本发明的保护范围内。Except for the technical features described in the instructions, all are known technologies by those skilled in the art. Descriptions of well-known components and well-known technologies are omitted in the present invention to avoid redundant description. The implementations described in the above examples do not represent all implementations consistent with the present application. On the basis of the technical solution of the present invention, various modifications can be made by those skilled in the art without creative work Or deformation is still within the protection scope of the present invention.

Claims (6)

1.一种基于PCIe的通信协议栈硬件加速架构构建方法,采用PCIe通用接口实现通信协议栈与FPGA的数据交互,通信协议栈仿真平台搭建在上位机PC上,FPGA中使用AXI总线架构进行数据的传输;其特征在于,所述PCIe通用接口包括PCIe通用接口软件接口和PCIe通用接口硬件接口;PCIe通用接口软件接口集成在通信协议栈仿真平台中;其中,PCIe表示高速串行计算机扩展总线标准,FPGA表示现场可编程逻辑门阵列;1. A PCIe-based communication protocol stack hardware acceleration architecture construction method, using PCIe general interface to realize the data interaction between the communication protocol stack and FPGA, the communication protocol stack simulation platform is built on the upper computer PC, and the AXI bus architecture is used in the FPGA for data transmission; it is characterized in that, described PCIe general interface comprises PCIe general interface software interface and PCIe general interface hardware interface; PCIe general interface software interface is integrated in communication protocol stack emulation platform; Wherein, PCIe represents high-speed serial computer expansion bus standard , FPGA stands for Field Programmable Logic Gate Array; 所述PCIe通用接口硬件接口中设置有XDMA IP核;所述FPGA中设置有AXIDMA IP核、MIGIP核、DDR和FIFO存储器;其中,DDR表示双倍速率同步动态随机存储器,FIFO代表先进先出;Described PCIe universal interface hardware interface is provided with XDMA IP core; Described FPGA is provided with AXIDMA IP core, MIGIP core, DDR and FIFO memory; Wherein, DDR represents double rate synchronous dynamic random access memory, and FIFO represents first-in-first-out; 所述PCIe通用接口硬件接口中,设置XDMA的pcie_mgt接口接收上位机传入的数据,再由M_AXI接口将数据输出通过MIG保存在FPGA的DDR中,此时数据在AXI4总线上;AXIDMA的MM2S通道获取所述DDR中的数据并转换为AXI4-Stream总线上的数据;所述FPGA内部使用AXI4-Stream总线读取数据;FPGA对数据处理完成后,先将数据传输进入FIFO的M_AXIS接口,同步电路中的时钟信号,再将数据从FIFO的S_AXIS流出返回DDR中;XDMA的M_AXI接口通过MIG将DDR中的数据读到自己的内存中再由pcie_mgt接口返回到上位机;In the described PCIe general interface hardware interface, the pcie_mgt interface of XDMA is set to receive the data that host computer imports, then by M_AXI interface, data output is saved in the DDR of FPGA by MIG, and this moment data is on AXI4 bus line; MM2S channel of AXIDMA Obtain the data in the DDR and convert it into data on the AXI4-Stream bus; the FPGA internally uses the AXI4-Stream bus to read the data; after the FPGA completes the data processing, it first transmits the data into the M_AXIS interface of the FIFO, and synchronizes the circuit The clock signal in the FIFO, and then return the data from the S_AXIS of the FIFO to the DDR; the M_AXI interface of XDMA reads the data in the DDR to its own memory through the MIG and returns it to the host computer through the pcie_mgt interface; 所述PCIe通用接口硬件接口中,设置XDMA的usr_irq_req接口接收AXIDMA产生的中断信号并传输给上位机;PC传给FPGA内部的控制命令由AXI4-Lite总线传输。In the PCIe general interface hardware interface, the usr_irq_req interface of XDMA is set to receive the interrupt signal generated by AXIDMA and transmit it to the host computer; the control command transmitted by PC to FPGA is transmitted by AXI4-Lite bus. 2.根据权利要求1所述的一种基于PCIe的通信协议栈硬件加速架构构建方法,其特征在于,所述的上位机PC通过FPGA中AXIDMA产生的中断信号判断数据在FPGA中传输的情况,由XDMA的usr_irq_req接口接收AXIDMA的中断信息并向PC传输;当中断信号由1变0,代表AXIDMA正常工作,可以传输数据;当中断信号由0变1,代表数据传输已经结束,需要清除中断才能继续传输数据。2. a kind of communication protocol stack hardware acceleration framework construction method based on PCIe according to claim 1, is characterized in that, described upper computer PC judges the situation that data is transmitted in FPGA by the interruption signal that AXIDMA in FPGA produces, The usr_irq_req interface of XDMA receives the interrupt information of AXIDMA and transmits it to the PC; when the interrupt signal changes from 1 to 0, it means that AXIDMA is working normally and can transmit data; when the interrupt signal changes from 0 to 1, it means that the data transmission has ended, and the interrupt needs to be cleared. Continue to transfer data. 3.根据权利要求1所述的一种基于PCIe的通信协议栈硬件加速架构构建方法,其特征在于,所述上位机PC的通信协议栈仿真平台,向FPGA发送传输数据和控制信息时,首先,将要传输的数据保存在一片连续的内存中,采用内存映射访问PCIe的设备文件;访问h2c接口把数据传到DDR中,访问c2h接口把数据从对应地址的DDR中取出;其次,访问AXIDMA寄存器,控制AXIDMA的开关和清除中断,PC访问event接口获取AXIDMA中断状态,中断存在则清除中断。3. a kind of communication protocol stack hardware acceleration framework construction method based on PCIe according to claim 1, is characterized in that, the communication protocol stack emulation platform of described upper computer PC, when sending transmission data and control information to FPGA, first , store the data to be transmitted in a continuous memory, use memory mapping to access the PCIe device file; access the h2c interface to transfer the data to the DDR, access the c2h interface to retrieve the data from the DDR at the corresponding address; secondly, access the AXIDMA register , control the AXIDMA switch and clear the interrupt, the PC accesses the event interface to obtain the AXIDMA interrupt status, and clears the interrupt if the interrupt exists. 4.根据权利要求1所述的一种基于PCIe的通信协议栈硬件加速架构构建方法,其特征在于,所述的通信协议栈仿真平台中设置有图像采集与还原模块,用于读取采集的视频图像存储在一个列表中,确定一帧时间传输的数据量,将视频分成n帧传输,n为正整数。4. a kind of communication protocol stack hardware acceleration framework construction method based on PCIe according to claim 1, is characterized in that, is provided with image acquisition and reduction module in described communication protocol stack emulation platform, is used for reading acquisition Video images are stored in a list, determine the amount of data transmitted in one frame time, and divide the video into n frames for transmission, where n is a positive integer. 5.根据权利要求1所述的一种基于PCIe的通信协议栈硬件加速架构构建方法,其特征在于,所述架构,采用上位机通信加FPGA在线逻辑分析的方式进行验证,在XDMA的输入和输出接口、DDR的数据输入输出接口和AXIDMA的输入输出接口加入集成逻辑分析器ILA IP核抓取信号,然后观察FPGA中信号传输是否正确。5. a kind of PCIe-based communication protocol stack hardware acceleration framework construction method according to claim 1, it is characterized in that, described framework adopts the mode of host computer communication to add FPGA online logic analysis to verify, input and in XDMA The output interface, the data input and output interface of DDR and the input and output interface of AXIDMA are added to the integrated logic analyzer ILA IP core to capture the signal, and then observe whether the signal transmission in the FPGA is correct. 6.根据权利要求1所述的一种基于PCIe的通信协议栈硬件加速架构构建方法,其特征在于,所述的PCIe通用接口软件接口的实现方式是:将PCIe主机程序封装成函数,函数输入参数是传输数据,返回值为FPGA处理后的数据;根据OAI编译规则定义一个PCIe_interface文件存储PCIe_interface函数,并将该文件封装在tools文件夹中,同时将宏定义和头文件添加到其他文件中,并且在OAI对应的编译文件中加入编译语句。6. a kind of PCIe-based communication protocol stack hardware acceleration framework construction method according to claim 1, is characterized in that, the implementation mode of described PCIe general interface software interface is: the PCIe host program is encapsulated into a function, and the function input The parameter is the transmission data, and the return value is the data processed by the FPGA; define a PCIe_interface file to store the PCIe_interface function according to the OAI compilation rules, and encapsulate the file in the tools folder, and add macro definitions and header files to other files, And add compilation statement in the compilation file corresponding to OAI.
CN202111369382.1A 2021-11-15 2021-11-15 PCIe-based communication protocol stack hardware acceleration architecture construction method Active CN114064547B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111369382.1A CN114064547B (en) 2021-11-15 2021-11-15 PCIe-based communication protocol stack hardware acceleration architecture construction method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111369382.1A CN114064547B (en) 2021-11-15 2021-11-15 PCIe-based communication protocol stack hardware acceleration architecture construction method

Publications (2)

Publication Number Publication Date
CN114064547A CN114064547A (en) 2022-02-18
CN114064547B true CN114064547B (en) 2023-06-13

Family

ID=80278061

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111369382.1A Active CN114064547B (en) 2021-11-15 2021-11-15 PCIe-based communication protocol stack hardware acceleration architecture construction method

Country Status (1)

Country Link
CN (1) CN114064547B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770424A (en) * 2010-01-05 2010-07-07 天津七一二通信广播有限公司 Data acquisition and emulation system suitable for underlying protocol stack of digital communication terminal
CN109783954A (en) * 2019-01-23 2019-05-21 北京轩宇信息技术有限公司 A kind of IES joint FPGA hardware emulation acceleration system
CN111416654A (en) * 2020-03-16 2020-07-14 北京邮电大学 Satellite virtualization gateway station transmission architecture based on hardware acceleration

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7752472B2 (en) * 2006-06-28 2010-07-06 Broadcom Corporation Protocol and interface between a LAN on motherboard (LOM) and a powered device (PD) for a personal computing device (PCD)

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770424A (en) * 2010-01-05 2010-07-07 天津七一二通信广播有限公司 Data acquisition and emulation system suitable for underlying protocol stack of digital communication terminal
CN109783954A (en) * 2019-01-23 2019-05-21 北京轩宇信息技术有限公司 A kind of IES joint FPGA hardware emulation acceleration system
CN111416654A (en) * 2020-03-16 2020-07-14 北京邮电大学 Satellite virtualization gateway station transmission architecture based on hardware acceleration

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Zynq-7000的视频采集平台设计;王浩宇;漆晶;谭歆;;工业控制计算机(04);全文 *

Also Published As

Publication number Publication date
CN114064547A (en) 2022-02-18

Similar Documents

Publication Publication Date Title
US5493672A (en) Concurrent simulation of host system at instruction level and input/output system at logic level with two-way communication deadlock resolution
US20020059052A1 (en) Co-simulation of network components
US20110307847A1 (en) Hybrid system combining TLM simulators and HW accelerators
WO2018218954A1 (en) Verification platform and verification method, and computer storage medium
CN114880977B (en) Software and hardware joint simulation system, method, device, equipment and storage medium
CN103714029A (en) Novel two-line synchronous communication protocol and application
CN108768981B (en) IP core for realizing Powerlink industrial real-time Ethernet communication
CN108650136A (en) A kind of design method of master/slave station card that realizing the communication of Powerlink industry real-time ethernets
CN108333566A (en) A kind of portable radar test system and test method based on ZYNQ
CN112131741A (en) A real-time dual-core single-machine hardware-in-the-loop simulation architecture and simulation method
CN116414526B (en) Simulation device and method based on virtual machine
CN108062234B (en) System and method for realizing server host to access BMC FLASH through mailbox protocol
CN115454881B (en) Debugging system and debugging method of RISC-V architecture
WO2019173018A1 (en) Non-intrusive on-chip debugger with remote protocol support
CN105956267A (en) Equipment modeling language based embedded type emulated serial port and modeling method thereof
CN114064547B (en) PCIe-based communication protocol stack hardware acceleration architecture construction method
CN100422953C (en) On-line debugging method for SoC system using HDL to expand serial port
CN118860952B (en) A RDMA cross-host interconnection communication system based on PCIe NTB
CN106294228A (en) Input and output extended chip and its verification method
CN115622896A (en) AXI4 high-speed bus and multi-queue simulation verification method and simulation verification device
CN114428702A (en) Information physical test system containing general interface module
CN113326670A (en) Prototype verification system, method, processing unit and equipment
CN105183954B (en) A kind of universal serial bus health monitoring platform based on PXI
WO2021164452A1 (en) Method for data synchronization between host end and fpga accelerator
WO2017012459A1 (en) System bus device response timeout processing method and apparatus, and storage medium

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