CN106126854B - 一种软硬件协同仿真交易器和仿真系统 - Google Patents
一种软硬件协同仿真交易器和仿真系统 Download PDFInfo
- Publication number
- CN106126854B CN106126854B CN201610522236.0A CN201610522236A CN106126854B CN 106126854 B CN106126854 B CN 106126854B CN 201610522236 A CN201610522236 A CN 201610522236A CN 106126854 B CN106126854 B CN 106126854B
- Authority
- CN
- China
- Prior art keywords
- data
- configuration
- asynchronous fifo
- module
- excited
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
- G06F30/331—Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2117/00—Details relating to the type or aim of the circuit design
- G06F2117/08—HW-SW co-design, e.g. HW-SW partitioning
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种软硬件协同仿真交易器和仿真系统,交易器包括:激励数据输入模块与FPGA中的待测试电路模块相连,用于接收打包的激励数据,并根据打包的激励数据获取激励数据,发送激励数据至待测试电路模块;仿真数据输出模块与待测试电路模块相连,用于接收待测试电路模块生成的仿真波形数据,对仿真波形数据进行打包处理,并输出打包处理后的仿真波形数据;配置模块分别与激励数据输入模块、仿真数据输出模块和待测试电路模块相连,用于接收配置信息,并根据配置信息配置激励数据输入模块、仿真数据输出模块和待测试电路模块。本发明中的软硬件协同仿真交易器为独立于软硬件协同仿真系统的模块,功能扩展更加方便,可靠性和可移植性好。
Description
技术领域
本发明涉及仿真技术领域,特别是涉及一种软硬件协同仿真交易器和一种仿真系统。
背景技术
在集成电路(IC,Intergrated Circuits)设计飞速发展的大环境下,软硬件协同仿真不断被提及、诉求和实现部分专门订制。对于国内软硬件协同技术的发展,目前还没有成熟的硬件仿真加速器。而随着集成电路设计中验证重要性的提升以及IC复杂度的提高,传统的RTL(Register Transfer Level)硬件仿真加速器展现出越来越高的重要性,国内各大IC设计厂商不得不从国际购买RTL硬件仿真加速器,投入巨大的购买资金和维护费用,但是,RTL硬件仿真加速器的实用性和兼容性方面问题不断,这严重局限了国内IC设计的发展。
交易器是Dut(Device Under Test,待测试设计)与上层激励设施进行交互的模块,也是硬件仿真加速器的必要模块。
目前,现有技术中的硬件仿真加速器还没有明确划分交易器,交易器与硬件仿真加速器中的其他功能模块混在一起很难分割,一旦交易器功能发生改变,即需要修改硬件仿真加速器中的全部功能模块,造成交易器的可扩展性和可移植性差,严重阻碍了行业的发展。
发明内容
鉴于上述问题,本发明实施例的目的在于提供一种软硬件协同仿真交易器和相应的一种仿真系统,以解决现有技术中的硬件仿真加速器没有明确划分交易器,造成交易器的可扩展性和可移植性差的问题。
为了解决上述问题,本发明实施例公开了一种软硬件协同仿真交易器,包括激励数据输入模块、仿真数据输出模块和分别与所述激励数据输入模块和所述仿真数据输出模块相连的配置模块,其中,所述激励数据输入模块与FPGA(Fiels-Programmable GateArray,现场可编程门阵列)中的待测试电路模块相连,所述激励数据输入模块用于接收打包的激励数据,并根据所述打包的激励数据获取激励数据,发送所述激励数据至所述待测试电路模块;所述仿真数据输出模块与所述待测试电路模块相连,所述仿真数据输出模块用于接收所述待测试电路模块生成的仿真波形数据,对所述仿真波形数据进行打包处理,并输出打包处理后的仿真波形数据;所述配置模块与所述待测试电路模块相连,所述配置模块用于接收配置信息,并根据所述配置信息配置所述激励数据输入模块、所述仿真数据输出模块和所述待测试电路模块。
可选地,所述配置模块包括第一异步fifo(first in first out,先进先出)、配置信息解析单元、仿真模式配置单元、时钟参数配置单元、时钟控制单元、第二异步fifo配置单元和第三异步fifo配置单元,其中,所述第一异步fifo与所述配置信息解析单元相连,所述第一异步fifo用于接收所述配置信息,并发送所述配置信息至所述配置信息解析单元;所述配置信息解析单元用于解析所述配置信息以生成仿真模式配置参数、时钟配置参数、第二异步fifo配置参数和第三异步fifo配置参数;所述仿真模式配置单元分别与所述配置信息解析单元和所述时钟控制单元相连,所述仿真模式配置单元用于根据所述仿真模式配置参数对所述时钟控制单元进行配置;所述时钟参数配置单元分别与所述配置信息解析单元和所述时钟控制单元相连,所述时钟参数配置单元用于根据所述时钟配置参数对所述时钟控制单元进行配置;所述时钟控制单元与所述待测试电路模块相连,所述时钟控制单元用于在配置后生成所述待测试电路模块的控制时钟,并将所述控制时钟发送至所述待测试电路模块;所述第二异步fifo配置单元分别与所述配置信息解析单元和第二异步fifo相连,所述第二异步fifo配置单元用于根据所述第二异步fifo配置参数配置所述第二异步fifo;所述第三异步fifo配置单元分别与所述配置信息解析单元和第三异步fifo相连,所述第三异步fifo配置单元用于根据所述第三异步fifo配置参数配置所述第三异步fifo。
可选地,所述激励数据输入模块包括所述第二异步fifo、第四异步fifo、激励数据解析单元和激励数据生成单元,其中,所述第四异步fifo与所述激励数据解析单元相连,所述第四异步fifo用于接收所述打包的激励数据,并发送所述打包的激励数据至所述激励数据解析单元;所述激励数据解析单元用于解析出所述打包的激励数据中的第一激励数据,并发送所述第一激励数据;所述激励数据生成单元分别与所述激励数据解析单元和所述第二异步fifo相连,所述激励数据生成单元用于根据所述第一激励数据生成第二激励数据,并将所述第二激励数据发送至所述第二异步fifo;所述第二异步fifo与所述待测试电路模块相连,所述第二异步fifo用于接收所述第二激励数据,并将所述第二激励数据发送至所述待测试电路模块。
可选地,所述仿真数据输出模块包括所述第三异步fifo、第五异步fifo、输出数据处理单元和输出数据打包单元,其中,所述第三异步fifo分别与所述输出数据处理单元和所述待测试电路模块相连,所述第三异步fifo用于接收所述仿真波形数据,并将所述仿真波形数据发送至所述输出数据处理单元;所述输出数据处理单元用于对所述仿真波形数据的位宽进行处理;所述输出数据打包单元与所述输出数据处理单元相连,所述输出数据打包单元用于将处理后的仿真波形数据进行打包,并发送打包后的仿真波形数据;所述第五异步fifo与所述输出数据打包单元相连,所述第五异步fifo用于接收所述打包后的仿真波形数据,并输出所述打包后的仿真波形数据。
可选地,所述第二异步fifo和所述第三异步fifo为深度和数据位宽可配置的异步fifo。
可选地,所述仿真模式配置参数包括紧耦合模式配置参数或松耦合模式配置参数。
可选地,所述时钟配置参数包括相位配置参数、频率配置参数、倍频因子配置参数、分频因子配置参数、占空比配置参数、上升沿使能信号配置参数和下降沿使能信号配置参数中的至少一个。
可选地,所述软硬件协同仿真交易器还包括基于SCE-MI(Standard Co-EmulationModeling Interface,标准协同仿真模型接口)协议的信息输入接口、第一输入管道接口和第一输出管道接口,其中,所述信息输入接口与所述配置模块相连,所述配置模块通过所述信息输入接口接收所述配置信息;所述第一输入管道接口与所述激励数据输入模块相连,所述激励数据输入模块通过所述第一输入管道接口接收所述打包的激励数据;所述第一输出管道接口与所述仿真数据输出模块相连,所述仿真数据输出模块通过所述第一输出管道接口输出打包处理后的仿真波形数据。
可选地,所述软硬件协同仿真交易器还包括基于SCE-MI协议的第二输出管道接口和第二输入管道接口,其中,所述第二输出管道接口分别与所述激励数据输入模块和所述待测试电路模块相连,所述激励数据输入模块通过所述第二输出管道接口发送所述激励数据至所述待测试电路模块;所述第二输入管道接口分别与所述仿真数据输出模块和所述待测试电路模块相连,所述仿真数据输出模块通过所述第二输入管道接口接收所述仿真波形数据。
为了解决上述问题,本发明实施例还公开了一种仿真系统,包括FPGA和至少一个所述的软硬件协同仿真交易器,所述FPGA包括分别与所述至少一个软硬件协同仿真交易器相连的待测试电路模块。
本发明实施例包括以下优点:
第一,本发明实施例中的软硬件协同仿真交易器为独立于软硬件协同仿真系统的模块,推动了软硬件协同仿真系统各功能模块化的进程,使得软硬件协同仿真交易器的功能扩展更加方便;
第二,本发明实施例采用可配置参数的异步fifo以及可配置参数的管道接口等,使得软硬件协同仿真交易器的使用灵活,可根据实际资源使用情况及实际性能进行调整,极大地方便用户操作;
第三,本发明实施例采用基于异步fifo的跨时钟域机制,避免了软硬件协同仿真交易器出现亚稳态,提升了软硬件协同仿真交易器的可靠性;
第四,本发明实施例应用SCE-MI协议标准作为标准接口协议,在规范化接口的同时,增强了软硬件协同仿真交易器的可靠性和移植性。
附图说明
图1是本发明的一种软硬件协同仿真交易器实施例的结构框图;
图2是本发明的另一种软硬件协同仿真交易器实施例的结构框图;
图3是本发明的一种软硬件协同仿真交易器实施例中打包结构的示意图;
图4是本发明的一种软硬件协同仿真交易器实施例中信息输入接口的时序结构的示意图;
图5是本发明的另一种软硬件协同仿真交易器实施例中信息输入接口的时序结构的示意图;
图6是本发明的一种软硬件协同仿真系统实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种软硬件协同仿真交易器1实施例的结构框图,具体可以包括如下模块:激励数据输入模块10、仿真数据输出模块20和分别与激励数据输入模块10和仿真数据输出模块20相连的配置模块30。
其中,激励数据输入模块10与FPGA中的待测试电路模块2相连,激励数据输入模块10用于接收打包的激励数据,并根据打包的激励数据获取激励数据,发送激励数据至待测试电路模块2;仿真数据输出模块20与待测试电路模块2相连,仿真数据输出模块20用于接收待测试电路模块2生成的仿真波形数据,对仿真波形数据进行打包处理,并输出打包处理后的仿真波形数据;配置模块30与待测试电路模块2相连,配置模块30用于接收配置信息,并根据配置信息配置激励数据输入模块10、仿真数据输出模块20和待测试电路模块2。
可选地,在本发明的另一个实施例中,参照图2,配置模块30可以包括第一异步fifo 31、配置信息解析单元32、仿真模式配置单元33、时钟参数配置单元34、时钟控制单元35、第二异步fifo配置单元36和第三异步fifo配置单元37。
其中,第一异步fifo 31与配置信息解析单元32相连,第一异步fifo 31用于接收配置信息,并发送配置信息至配置信息解析单元32;配置信息解析单元32用于解析配置信息以生成仿真模式配置参数、时钟配置参数、第二异步fifo配置参数和第三异步fifo配置参数;仿真模式配置单元33分别与配置信息解析单元32和时钟控制单元35相连,仿真模式配置单元33用于根据仿真模式配置参数对时钟控制单元35进行配置;时钟参数配置单元34分别与配置信息解析单元32和时钟控制单元35相连,时钟参数配置单元34用于根据时钟配置参数对时钟控制单元35进行配置;时钟控制单元35与待测试电路模块2相连,时钟控制单元35用于在配置后生成待测试电路模块2的控制时钟,并将控制时钟发送至待测试电路模块2;第二异步fifo配置单元36分别与配置信息解析单元32和第二异步fifo 11相连,第二异步fifo配置单元36用于根据第二异步fifo配置参数配置第二异步fifo 11;第三异步fifo配置单元37分别与配置信息解析单元32和第三异步fifo 21相连,第三异步fifo配置单元37用于根据第三异步fifo配置参数配置第三异步fifo 21。
具体地,配置信息解析单元32可以根据软硬件协同仿真交易器1所在的整个仿真系统的实际结构来确定相应解析所述配置信息的算法。
具体地,第二异步fifo 11和第三异步fifo 21可以为深度和数据位宽可配置的异步fifo,第二异步fifo配置参数可以包括第二异步fifo深度配置参数和第二异步fifo位宽配置参数,第三异步fifo配置参数可以包括第三异步fifo深度配置参数和第三异步fifo位宽配置参数。
进一步地,第二异步fifo配置单元36可以根据第二异步fifo深度配置参数配置第二异步fifo 11的深度,以及根据第二异步fifo位宽配置参数配置第二异步fifo 11的位宽。进一步地,第三异步fifo配置单元37可以根据第三异步fifo深度配置参数配置第三异步fifo 21的深度,以及根据第三异步fifo位宽配置参数配置第三异步fifo 21的位宽。
可选地,仿真模式配置参数可以包括紧耦合模式配置参数或松耦合模式配置参数。当仿真模式配置参数为紧耦合模式配置参数时,时钟控制单元35在配置后生成待测试电路模块2的控制时钟为紧耦合时钟,待测试电路模块2进入紧耦合模式;当仿真模式配置参数为松耦合模式配置参数时,时钟控制单元35在配置后生成待测试电路模块2的控制时钟为松耦合时钟,待测试电路模块2进入松耦合模式。
可选地,时钟配置参数可以包括相位配置参数、频率配置参数、倍频因子配置参数、分频因子配置参数、占空比配置参数、上升沿使能信号配置参数和下降沿使能信号配置参数中的至少一个。
可选地,在本发明的另一个实施例中,参照图2,激励数据输入模块10可以包括第二异步fifo 11、第四异步fifo 12、激励数据解析单元13和激励数据生成单元14。
其中,第四异步fifo 12与激励数据解析单元13相连,第四异步fifo 12用于接收打包的激励数据,并发送打包的激励数据至激励数据解析单元13;激励数据解析单元13用于解析出打包的激励数据中的第一激励数据,并发送第一激励数据;激励数据生成单元14分别与激励数据解析单元13和第二异步fifo 11相连,激励数据生成单元14用于根据第一激励数据生成第二激励数据,并将第二激励数据发送至第二异步fifo 11;第二异步fifo11与待测试电路模块2相连,第二异步fifo 11用于接收第二激励数据,并将第二激励数据发送至待测试电路模块2。
可选地,在本发明的另一个实施例中,参照图2,仿真数据输出模块20可以包括第三异步fifo 21、第五异步fifo 22、输出数据处理单元23和输出数据打包单元24。
其中,第三异步fifo 21分别与输出数据处理单元23和待测试电路模块2相连,第三异步fifo 21用于接收仿真波形数据,并将仿真波形数据发送至输出数据处理单元23;输出数据处理单元23用于对仿真波形数据的位宽进行处理;输出数据打包单元24与输出数据处理单元23相连,输出数据打包单元24用于将处理后的仿真波形数据进行打包,并发送打包后的仿真波形数据;第五异步fifo 22与输出数据打包单元24相连,第五异步fifo 22用于接收打包后的仿真波形数据,并输出打包后的仿真波形数据。
具体地,当仿真波形数据的位宽小于预设位宽时,输出数据处理单元23用于将仿真波形数据的位宽扩充至预设位宽;当仿真波形数据的位宽大于预设位宽时,若仿真波形数据包括多个预设位宽的数据,则输出数据处理单元23用于将仿真波形数据分成多个预设位宽的数据;当仿真波形数据的位宽大于预设位宽时,若仿真波形数据包括多个预设位宽的数据和一不足预设位宽的数据时,则输出数据处理单元23用于将仿真波形数据分成多个预设位宽的数据,并将该不足预设位宽的数据的位宽扩充至预设位宽。
可选地,在本发明的另一个实施例中,参照图2,软硬件协同仿真交易器1还可以包括基于SCE-MI协议的信息输入接口40、第一输入管道接口50和第一输出管道接口60。其中,信息输入接口40与配置模块30相连,配置模块30通过信息输入接口40接收配置信息;第一输入管道接口50与激励数据输入模块10相连,激励数据输入模块10通过第一输入管道接口50接收打包的激励数据;第一输出管道接口60与仿真数据输出模块20相连,仿真数据输出模块20通过第一输出管道接口60输出打包处理后的仿真波形数据。
可选地,在本发明的另一个实施例中,参照图2,软硬件协同仿真交易器1还可以包括基于SCE-MI协议的第二输出管道接口70和第二输入管道接口80。其中,第二输出管道接口70分别与激励数据输入模块10和待测试电路模块2相连,激励数据输入模块10通过第二输出管道接口70发送激励数据至待测试电路模块2;第二输入管道接口80分别与仿真数据输出模块20和待测试电路模块2相连,仿真数据输出模块20通过第二输入管道接口80接收仿真波形数据。
具体地,输出数据打包单元24可以根据软硬件协同仿真交易器1所在的整个仿真系统的实际结构来将处理后的仿真波形数据进行打包。在本发明的一个实施例中,输出数据打包单元24可以根据图3所示的打包结构将处理后的仿真波形数据进行打包,打包后的仿真波形数据包括路由节点信息、第一输出管道接口60的头信息和负载数据即处理后的仿真波形数据。
以下为基于SCE-MI协议的信息输入接口40的工作过程:
信息输入接口40的时序结构如图4或图5所示,其中,ReceiveReady为信息输入接口40的接收握手信号,TransmitReady为信息输入接口40的传输握手信号,clk为信息输入接口40的参考时钟,d1和d2为信息输入接口40接收的配置信息。其中,当clk时钟的上升沿采样到ReceiveReady为高电平时,表明信息输入接口40可以接收数据。在clk时钟的上升沿之后的某个clk时钟上升沿,配置信息d1和TransmitReady的上升沿同时到来。若在之后下一个clk时钟周期的上升沿时,ReceiveReady为高电平,TransmitReady拉低,配置信息d1被信息输入接口40接收;若在之后下一个clk时钟周期的上升沿时,ReceiveReady为低电平,说明信息输入接口40不能接收数据,此时配置信息d1和TransmitReady均保持不变,直至clk时钟上升沿检测到ReceiveReady为高电平,TransmitReady拉低,配置信息d1被信息输入接口40接收。
其中,参照图4,在本发明的一个实施例中,当待测试电路模块2进入紧耦合模式时,紧耦合模式会冻结clk时钟直到信息输入接口40接收配置信息d1完毕,紧耦合模式可以冻结仿真系统的断点功能、回读功能等,此时,信息输入接口40的时序结构如图4所示。在本发明的另一个实施例中,当待测试电路模块2进入松耦合模式时,松耦合模式不会冻结clk时钟,此时,信息输入接口40的时序结构如图5所示。
第一输入管道接口50、第一输出管道接口60、第二输出管道接口70和第二输入管道接口80的工作过程与信息输入接口40的工作过程类似,以下不再赘述。
需要说明的是,本发明实施例中的软硬件协同仿真交易器的工作时钟可以由MMCM(Mixed-Mode Clock Manager,混合模式时钟管理器)提供。
本发明实施例的软硬件协同仿真交易器包括以下优点:
第一,本发明实施例中的软硬件协同仿真交易器为独立于软硬件协同仿真系统的模块,推动了软硬件协同仿真系统各功能模块化的进程,使得软硬件协同仿真交易器的功能扩展更加方便;
第二,本发明实施例采用可配置参数的异步fifo以及可配置参数的管道接口等,使得软硬件协同仿真交易器的使用灵活,可根据实际资源使用情况及实际性能进行调整,极大地方便用户操作;
第三,本发明实施例采用基于异步fifo的跨时钟域机制,避免了软硬件协同仿真交易器出现亚稳态,提升了软硬件协同仿真交易器的可靠性;
第四,本发明实施例应用SCE-MI协议标准作为标准接口协议,在规范化接口的同时,增强了软硬件协同仿真交易器的可靠性和可移植性。
参照图6,本发明实施例还公开了一种软硬件协同仿真系统,该仿真系统包括FPGA和至少一个上述的软硬件协同仿真交易器1,FPGA包括分别与至少一个软硬件协同仿真交易器1相连的待测试电路模块2。
在本发明的一个实施例中,参照图6,仿真系统还可以包括主机模块3、PCIE(Peripheral Component Interface Express,外围器件快速互联)连接电路4和NoC(Network on Chip,片上网络)路由5。PCIE连接电路4与主机模块3相连,NoC路由5分别与PCIE连接电路4和至少一个软硬件协同仿真交易器1相连。
参照图6,至少一个软硬件协同仿真交易器1由n个软硬件协同仿真交易器1组成,n为大于或等于1的整数,至少一个软硬件协同仿真交易器1位于NoC路由5和待测试电路模块2之间。软硬件协同仿真交易器1用于NoC路由5和待测试电路模块2之间数据的交互传输。主机模块3用于产生激励数据,通过PCIE连接电路4传输至NoC路由5,由并NoC路由5路由给激励数据对应的软硬件协同仿真交易器1,最终软硬件协同仿真交易器1将激励数据传输给待测试电路模块2。仿真波形数据从待测试电路模块2传输到主机模块3为激励数据从主机模块3传输到待测试电路模块2的逆过程。
本发明实施例的仿真系统包括以下优点:
第一,由于软硬件协同仿真交易器为独立于软硬件协同仿真系统的模块,推动了软硬件协同仿真系统各功能模块化的进程,使得软硬件协同仿真交易器的功能扩展更加方便;
第二,由于软硬件协同仿真交易器采用可配置参数的异步fifo以及可配置参数的管道接口等,软硬件协同仿真交易器的使用灵活,可根据实际资源使用情况及实际性能进行调整,极大地方便用户操作;
第三,由于软硬件协同仿真交易器采用基于异步fifo的跨时钟域机制,避免了软硬件协同仿真交易器出现亚稳态,提升了软硬件协同仿真交易器的可靠性;
第四,由于软硬件协同仿真交易器应用SCE-MI协议标准作为标准接口协议,在规范化接口的同时,增强了软硬件协同仿真交易器的可靠性和移植性。
由于仿真系统包括软硬件协同仿真交易器,所以描述的比较简单,相关之处参见软硬件协同仿真交易器实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种软硬件协同仿真交易器和一种仿真系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种软硬件协同仿真交易器,其特征在于,包括激励数据输入模块、仿真数据输出模块和分别与所述激励数据输入模块和所述仿真数据输出模块相连的配置模块,其中,
所述激励数据输入模块与FPGA中的待测试电路模块相连,所述激励数据输入模块用于接收打包的激励数据,并根据所述打包的激励数据获取激励数据,发送所述激励数据至所述待测试电路模块;
所述仿真数据输出模块与所述待测试电路模块相连,所述仿真数据输出模块用于接收所述待测试电路模块生成的仿真波形数据,对所述仿真波形数据进行打包处理,并输出打包处理后的仿真波形数据;
所述配置模块与所述待测试电路模块相连,所述配置模块用于接收配置信息,并根据所述配置信息配置所述激励数据输入模块、所述仿真数据输出模块和所述待测试电路模块;
其中,所述配置模块包括第一异步fifo、配置信息解析单元、仿真模式配置单元、时钟参数配置单元、时钟控制单元、第二异步fifo配置单元和第三异步fifo配置单元;
所述激励数据输入模块包括所述第二异步fifo、第四异步fifo、激励数据解析单元和激励数据生成单元;
所述仿真数据输出模块包括所述第三异步fifo、第五异步fifo、输出数据处理单元和输出数据打包单元。
2.根据权利要求1所述的软硬件协同仿真交易器,其特征在于,
所述第一异步fifo与所述配置信息解析单元相连,所述第一异步fifo用于接收所述配置信息,并发送所述配置信息至所述配置信息解析单元;
所述配置信息解析单元用于解析所述配置信息以生成仿真模式配置参数、时钟配置参数、第二异步fifo配置参数和第三异步fifo配置参数;
所述仿真模式配置单元分别与所述配置信息解析单元和所述时钟控制单元相连,所述仿真模式配置单元用于根据所述仿真模式配置参数对所述时钟控制单元进行配置;
所述时钟参数配置单元分别与所述配置信息解析单元和所述时钟控制单元相连,所述时钟参数配置单元用于根据所述时钟配置参数对所述时钟控制单元进行配置;
所述时钟控制单元与所述待测试电路模块相连,所述时钟控制单元用于在配置后生成所述待测试电路模块的控制时钟,并将所述控制时钟发送至所述待测试电路模块;
所述第二异步fifo配置单元分别与所述配置信息解析单元和第二异步fifo相连,所述第二异步fifo配置单元用于根据所述第二异步fifo配置参数配置所述第二异步fifo;
所述第三异步fifo配置单元分别与所述配置信息解析单元和第三异步fifo相连,所述第三异步fifo配置单元用于根据所述第三异步fifo配置参数配置所述第三异步fifo。
3.根据权利要求2所述的软硬件协同仿真交易器,其特征在于,
所述第四异步fifo与所述激励数据解析单元相连,所述第四异步fifo用于接收所述打包的激励数据,并发送所述打包的激励数据至所述激励数据解析单元;
所述激励数据解析单元用于解析出所述打包的激励数据中的第一激励数据,并发送所述第一激励数据;
所述激励数据生成单元分别与所述激励数据解析单元和所述第二异步fifo相连,所述激励数据生成单元用于根据所述第一激励数据生成第二激励数据,并将所述第二激励数据发送至所述第二异步fifo;
所述第二异步fifo与所述待测试电路模块相连,所述第二异步fifo用于接收所述第二激励数据,并将所述第二激励数据发送至所述待测试电路模块。
4.根据权利要求2所述的软硬件协同仿真交易器,其特征在于,
所述第三异步fifo分别与所述输出数据处理单元和所述待测试电路模块相连,所述第三异步fifo用于接收所述仿真波形数据,并将所述仿真波形数据发送至所述输出数据处理单元;
所述输出数据处理单元用于对所述仿真波形数据的位宽进行处理;
所述输出数据打包单元与所述输出数据处理单元相连,所述输出数据打包单元用于将处理后的仿真波形数据进行打包,并发送打包后的仿真波形数据;
所述第五异步fifo与所述输出数据打包单元相连,所述第五异步fifo用于接收所述打包后的仿真波形数据,并输出所述打包后的仿真波形数据。
5.根据权利要求2所述的软硬件协同仿真交易器,其特征在于,所述第二异步fifo和所述第三异步fifo为深度和数据位宽可配置的异步fifo。
6.根据权利要求2所述的软硬件协同仿真交易器,其特征在于,所述仿真模式配置参数包括紧耦合模式配置参数或松耦合模式配置参数。
7.根据权利要求2所述的软硬件协同仿真交易器,其特征在于,所述时钟配置参数包括相位配置参数、频率配置参数、倍频因子配置参数、分频因子配置参数、占空比配置参数、上升沿使能信号配置参数和下降沿使能信号配置参数中的至少一个。
8.根据权利要求1所述的软硬件协同仿真交易器,其特征在于,还包括基于SCE-MI协议的信息输入接口、第一输入管道接口和第一输出管道接口,其中,
所述信息输入接口与所述配置模块相连,所述配置模块通过所述信息输入接口接收所述配置信息;
所述第一输入管道接口与所述激励数据输入模块相连,所述激励数据输入模块通过所述第一输入管道接口接收所述打包的激励数据;
所述第一输出管道接口与所述仿真数据输出模块相连,所述仿真数据输出模块通过所述第一输出管道接口输出打包处理后的仿真波形数据。
9.根据权利要求1所述的软硬件协同仿真交易器,其特征在于,还包括基于SCE-MI协议的第二输出管道接口和第二输入管道接口,其中,
所述第二输出管道接口分别与所述激励数据输入模块和所述待测试电路模块相连,所述激励数据输入模块通过所述第二输出管道接口发送所述激励数据至所述待测试电路模块;
所述第二输入管道接口分别与所述仿真数据输出模块和所述待测试电路模块相连,所述仿真数据输出模块通过所述第二输入管道接口接收所述仿真波形数据。
10.一种仿真系统,其特征在于,包括FPGA和至少一个根据权利要求1-9中任一项所述的软硬件协同仿真交易器,所述FPGA包括分别与所述至少一个软硬件协同仿真交易器相连的待测试电路模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610522236.0A CN106126854B (zh) | 2016-07-01 | 2016-07-01 | 一种软硬件协同仿真交易器和仿真系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610522236.0A CN106126854B (zh) | 2016-07-01 | 2016-07-01 | 一种软硬件协同仿真交易器和仿真系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106126854A CN106126854A (zh) | 2016-11-16 |
CN106126854B true CN106126854B (zh) | 2019-06-25 |
Family
ID=57469230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610522236.0A Active CN106126854B (zh) | 2016-07-01 | 2016-07-01 | 一种软硬件协同仿真交易器和仿真系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106126854B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106777729A (zh) * | 2016-12-26 | 2017-05-31 | 中核控制系统工程有限公司 | 一种基于fpga的算法库仿真验证平台实现方法 |
CN107563079A (zh) * | 2017-09-11 | 2018-01-09 | 杨宇翔 | 一种基于fpga的协同仿真加速器及仿真系统和方法 |
CN112651207B (zh) * | 2020-12-23 | 2023-06-02 | 中山大学 | 一种异步电路物理实现方法及系统 |
CN112861468B (zh) * | 2021-02-08 | 2022-12-06 | 山东云海国创云计算装备产业创新中心有限公司 | 一种软硬件协同仿真验证的方法、装置和介质 |
CN113190394B (zh) * | 2021-07-02 | 2021-09-28 | 南京宏泰半导体科技有限公司 | 一种面向soc芯片的多时钟域并发测试系统及其测试方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1928877A (zh) * | 2006-08-17 | 2007-03-14 | 电子科技大学 | Soc软硬件一体化设计验证方法 |
CN201212997Y (zh) * | 2008-06-30 | 2009-03-25 | 中国船舶重工集团公司第七〇九研究所 | 一种快速、大容量的fpga联机测试装置 |
CN104866640A (zh) * | 2014-02-26 | 2015-08-26 | 龙羽 | 一种全fifo电路设计方法及其通用验证平台 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6968514B2 (en) * | 1998-09-30 | 2005-11-22 | Cadence Design Systems, Inc. | Block based design methodology with programmable components |
US8356272B2 (en) * | 2011-05-12 | 2013-01-15 | S2C Inc. | Logic verification module apparatus to serve as a hyper prototype for debugging an electronic design that exceeds the capacity of a single FPGA |
-
2016
- 2016-07-01 CN CN201610522236.0A patent/CN106126854B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1928877A (zh) * | 2006-08-17 | 2007-03-14 | 电子科技大学 | Soc软硬件一体化设计验证方法 |
CN201212997Y (zh) * | 2008-06-30 | 2009-03-25 | 中国船舶重工集团公司第七〇九研究所 | 一种快速、大容量的fpga联机测试装置 |
CN104866640A (zh) * | 2014-02-26 | 2015-08-26 | 龙羽 | 一种全fifo电路设计方法及其通用验证平台 |
Non-Patent Citations (1)
Title |
---|
基于FPGA的软硬件协同仿真平台的设计;田野;《中国优秀硕士学位论文全文数据库 信息科技辑》;20110615;第I135-215页 |
Also Published As
Publication number | Publication date |
---|---|
CN106126854A (zh) | 2016-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106126854B (zh) | 一种软硬件协同仿真交易器和仿真系统 | |
CN113656227B (zh) | 一种芯片验证方法、装置、电子设备及存储介质 | |
TWI821414B (zh) | 一種用於仿真系統之控制塊及其電路與製作方法 | |
JP2005174349A (ja) | 電子機器の動作をエミュレートする装置 | |
CN106202685B (zh) | 一种软硬件协同仿真加速器运行环境搭建方法和装置 | |
CN104461812A (zh) | 一种利用已有Verilog BFM构造UVM验证组件的方法 | |
US20090271747A1 (en) | Logic circuit designing device, logic circuit designing method and logic circuit designing program for asynchronous logic circuit | |
CN104866640A (zh) | 一种全fifo电路设计方法及其通用验证平台 | |
Balandin et al. | Co-Modeling of Embedded Networks Using SystemC and SDL | |
Sayinta et al. | A mixed abstraction level co-simulation case study using systemc for system on chip verification | |
Ządek et al. | Improving efficiency of FPGA-in-the-loop verification environment | |
Kamireddy et al. | UVM based reusable verification IP for wishbone compliant SPI master core | |
Wingard | Socket-based design using decoupled interconnects | |
US9727673B1 (en) | Simultaneous simulation of multiple blocks using efficient packet communication to emulate inter-block buses | |
CN104951609B (zh) | 一种处理门级网表中的同步逻辑结构的方法 | |
CN109492239A (zh) | 一种实现仿真波形数据实时分割的装置 | |
Marjanovic | Low vs high level programming for FPGA | |
Bjerregaard et al. | A channel library for asynchronous circuit design supporting mixed-mode modeling | |
Sivakumar et al. | 10GB MAC CORE Verification Reference (Input Monitor) Module | |
Oliveira et al. | Synthesis of robust controllers for GALS_FPGA from multi-burst graph specification | |
Sutisna et al. | Unified HW/SW framework for efficient system level simulation | |
Olenev et al. | Co-modeling of embedded networks using systemc and SDL: From theory to practice | |
Zhenxin et al. | A UML-based approach for heterogeneous IP integration | |
US10521531B1 (en) | System, method, and computer program product for range-based clock analysis associated with the formal verification of an electronic circuit design | |
CN102075372B (zh) | 时间还原方法及应用其的网络仿真系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |