CN106156424B - 一种仿真*** - Google Patents

一种仿真*** Download PDF

Info

Publication number
CN106156424B
CN106156424B CN201610522228.6A CN201610522228A CN106156424B CN 106156424 B CN106156424 B CN 106156424B CN 201610522228 A CN201610522228 A CN 201610522228A CN 106156424 B CN106156424 B CN 106156424B
Authority
CN
China
Prior art keywords
module
data
channel
simulation
tested
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
CN201610522228.6A
Other languages
English (en)
Other versions
CN106156424A (zh
Inventor
王星
杨滔
刘海峰
戴继祥
陈迎春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei Haibenlan Technology Co ltd
Original Assignee
Hefei Haibenlan Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hefei Haibenlan Technology Co ltd filed Critical Hefei Haibenlan Technology Co ltd
Priority to CN201610522228.6A priority Critical patent/CN106156424B/zh
Publication of CN106156424A publication Critical patent/CN106156424A/zh
Application granted granted Critical
Publication of CN106156424B publication Critical patent/CN106156424B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]

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)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明提供了一种仿真***,包括:主机模块根据接收的用户待测试设计生成配置文件,以及根据接收的测试参数产生测试激励数据,并分别发送配置文件和测试激励数据至物理通道连接模块,以及从物理通道连接模块获取仿真波形数据,并显示仿真波形数据对应的仿真波形;物理通道连接模块传输配置文件、测试激励数据和仿真波形数据;开发板模块包括FPGA,开发板模块根据配置文件对FPGA进行配置,并根据测试激励数据测试待测试电路模块以生成仿真波形数据,并发送仿真波形数据至物理通道连接模块;待测试电路模块为用户待测试设计在FPGA中映射的电路模块。本发明结构简单、拥有高效路由传输机制和多物理传输通道,且移植灵活方便。

Description

一种仿真***
技术领域
本发明涉及仿真技术领域,特别是涉及一种仿真***。
背景技术
随着ASIC(Application Specific Integrated Circuit,一种为专门目的而设计的集成电路)和FPGA(Fiels-Programmable Gate Array,现场可编程门阵列)设计技术的发展以及不断增加的IC(Intergrated Circuit,集成电路)设计需求,设计的规模可以达到数百万门甚至上千万门。但是,同时用于***级验证所需的时间和花费的额外资源也相应急剧增加。据统计,在整个IC设计的过程中验证所花费的时间达到甚至超过70%,这严重阻碍了IC设计的发展。缩短验证时间,提高IC设计效率,成为人们迫切需要解决的问题。
传统的验证技术包括仿真(Simulation)和硬件仿效(Hardware Emulation),两种验证技术各有优缺点,人们开始提出将两者相结合的协同仿效(Co-Emulation),目前也有一些协同仿效方案出现。
但是这些协同仿效方案还存在以下缺陷:结构复杂,尤其是硬件结构复杂,需要使用多块FPGA及处理器;缺少路由机制,在大规模设计中容易发生堵塞,数据传输效率低下;物理传输通道单一,且没有应用统一的接口标准或者应用不完善,不易移植。
发明内容
鉴于上述问题,本发明实施例的目的在于提供一种仿真***,以解决目前协同仿效方案实现复杂、缺少路由机制、物理传输通道单一和不易移植的问题。
为了解决上述问题,本发明实施例公开了一种仿真***,包括:主机模块、开发板模块和分别与所述主机模块和所述开发板模块相连的物理通道连接模块,其中,所述主机模块用于根据接收的用户待测试设计生成配置文件,以及根据接收的测试参数产生测试激励数据,并分别发送所述配置文件和所述测试激励数据至所述物理通道连接模块,以及从所述物理通道连接模块获取仿真波形数据,并显示所述仿真波形数据对应的仿真波形;所述物理通道连接模块用于传输所述配置文件、所述测试激励数据和所述仿真波形数据;所述开发板模块包括FPGA,所述开发板模块用于根据所述配置文件对所述FPGA进行配置,并根据所述测试激励数据测试待测试电路模块以生成所述仿真波形数据,并发送所述仿真波形数据至所述物理通道连接模块;所述待测试电路模块为所述用户待测试设计在所述FPGA中映射的电路模块。
具体地,所述主机模块包括:配置文件生成子模块、激励生成子模块、波形回读功能子模块、仿真调试子模块、缓存空间和底层驱动子模块,其中,所述配置文件生成子模块与所述物理通道连接模块相连,所述配置文件生成子模块用于接收所述用户待测试设计,将所述用户待测试设计封装成SCE-MI(Standard Co-Emulation Modeling Interface,标准协同仿真模型接口)协议接口用户待测试设计,并根据所述SCE-MI协议接口用户待测试设计生成所述配置文件,发送所述配置文件至所述物理通道连接模块;所述激励生成子模块与所述缓存空间相连,所述激励生成子模块用于接收所述测试参数,根据所述测试参数产生所述测试激励数据,并将所述测试激励数据存储至所述缓存空间;所述底层驱动子模块分别与所述缓存空间和所述物理通道连接模块双向互联,所述底层驱动子模块用于将所述测试激励数据发送至所述物理通道连接模块,以及将所述物理通道连接模块传输的所述仿真波形数据存储至所述缓存空间;所述波形回读功能子模块与所述缓存空间相连,所述波形回读功能子模块用于从所述缓存空间获取所述仿真波形数据,并调用所述仿真调试子模块显示所述仿真波形数据对应的仿真波形。
具体地,所述主机模块还包括RTL(Resistances-Transistors Logic Circuit),由晶体管和串接在晶体管基极上的电阻组成以实现“或非”逻辑操作的单元门电路)代码转换子模块和综合布局布线子模块,所述配置文件生成子模块包括:Dut(Design UnderTest,待测试设计)输入接口,所述Dut输入接口用于接收所述用户待测试设计;Dut端口解析单元,所述Dut端口解析单元用于对所述用户待测试设计进行解析;SCE-MI协议接口封装单元,所述SCE-MI协议接口封装单元用于将解析后的用户待测试设计封装成所述SCE-MI协议接口用户待测试设计;RTL生成单元,所述RTL生成单元用于调用所述RTL代码转换子模块,以根据所述SCE-MI协议接口用户待测试设计生成RTL底层代码文件;配置文件生成单元,所述配置文件生成单元与所述物理通道连接模块相连,所述配置文件生成单元用于调用所述综合布局布线子模块,以根据所述RTL底层代码文件生成所述配置文件,以及发送所述配置文件至所述物理通道连接模块。
具体地,所述激励生成子模块包括:应用程序接口、用户TB(Test Bench,测试平台)编程接口和激励产生单元,其中,所述应用程序接口用于提供至少一个功能函数;所述用户TB编程接口用于接收所述测试参数和调用所述应用程序接口,以产生所述测试激励数据;所述激励产生单元与所述缓存空间相连,所述激励产生单元用于将所述测试激励数据和对应的Scemi_channel通道ID(Identity,身份标识号码)进行打包封装,并存储至所述缓存空间。
具体地,所述波形回读功能子模块包括:回读单元,所述回读单元与所述缓存空间相连,所述回读单元用于从所述缓存空间获取所述仿真波形数据;波形文件生成单元,所述波形文件生成单元用于根据所述仿真波形数据生成波形文件,并调用所述仿真调试子模块,以根据所述波形文件显示对应的所述仿真波形。
具体地,所述物理通道连接模块包括:JTAG(Joint Test Action Group,联合测试工作组)连接电路,所述JTAG连接电路分别与所述配置文件生成子模块和所述开发板模块相连,所述JTAG连接电路用于传输所述配置文件至所述开发板模块;PCIE(PeripheralComponent Interconnect Express,***器件快速互联)连接电路,所述PCIE连接电路分别与所述底层驱动子模块和所述开发板模块双向互联,当所述底层驱动子模块将所述封装后的测试激励数据发送至所述PCIE连接电路时,所述PCIE连接电路传输所述封装后的测试激励数据至所述开发板模块,以及当所述开发板模块发送所述仿真波形数据至所述PCIE连接电路时,所述PCIE连接电路传输所述仿真波形数据至所述底层驱动子模块;TCP(Transmission Control Protocol,传输控制协议)连接电路,所述TCP连接电路分别与所述底层驱动子模块和所述开发板模块双向互联,当所述底层驱动子模块将所述封装后的测试激励数据发送至所述TCP连接电路时,所述TCP连接电路传输所述封装后的测试激励数据至所述开发板模块,以及当所述开发板模块发送所述仿真波形数据至所述TCP连接电路时,所述TCP连接电路传输所述仿真波形数据至所述底层驱动子模块。
具体地,所述开发板模块包括:JTAG接口子模块、第一IO(Input/Output,输入/输出)插座、第二IO插座和所述FPGA,其中,所述JTAG接口子模块分别与所述JTAG连接电路和所述FPGA相连,所述JTAG接口子模块用于根据所述配置文件对所述FPGA进行配置;所述第一IO插座分别与所述PCIE连接电路和所述FPGA双向互联;所述第二IO插座分别与所述TCP连接电路和所述FPGA双向互联;所述FPGA用于根据所述封装后的测试激励数据测试所述待测试电路模块以生成所述仿真波形数据,并发送所述仿真波形数据至所述第一IO插座或所述第二IO插座。
具体地,所述FPGA包括:可选PCIE通道、可选TCP通道、NoC(Network On Chip,片上网络)单元、多个Scemi_channel通道、Transactor(交换器)单元、波形回读功能模块和所述待测试电路模块,其中,所述可选PCIE通道与所述第一IO插座双向互联,所述可选PCIE通道用于传输所述封装后的测试激励数据、所述仿真波形数据;所述可选TCP通道与所述第二IO插座双向互联,所述可选TCP通道用于传输所述封装后的测试激励数据、所述仿真波形数据;所述NoC单元分别与每个所述Scemi_channel通道、所述可选PCIE通道和所述可选TCP通道双向互联,所述NoC单元用于为所述测试激励数据提供路由通道,并根据所述Scemi_channel通道ID选择Scemi_channel通道,以及为所述仿真波形数据提供回读路由通道,并传输所述仿真波形数据至所述可选PCIE通道或所述可选TCP通道;所述选择的Scemi_channel通道传输所述测试激励数据;所述Transactor单元分别与每个所述Scemi_channel通道和所述待测试电路模块双向互联,且所述Transactor单元与所述波形回读功能模块相连,所述Transactor单元用于对所述测试激励数据进行重组,并发送至所述待测试电路模块,以及从所述波形回读功能模块获取所述仿真波形数据,以及根据所述仿真波形数据对应的回读Scemi_channel通道ID选择回读Scemi_channel通道;所述选择的回读Scemi_channel通道传输所述仿真波形数据;所述待测试电路模块用于根据重组后的测试激励数据生成所述仿真波形数据;所述波形回读功能模块用于获取所述待测试电路模块生成的仿真波形数据,并将所述仿真波形数据和所述回读Scemi_channel通道ID进行打包封装。
具体地,所述NoC单元具有树形路由结构。
具体地,所述波形回读功能模块包括ICAP(Internal Configuration AccessPort,内部配置访问端口)接口或者SelectMAP(并行模式)接口,所述ICAP接口或者所述SelectMAP接口获取所述波形回读数据。
本发明实施例的仿真***包括以下优点:
一、明确分为主机模块、开发板模块和物理通道连接模块三个模块,因此,只需要一台上位机或者服务器、连接线和一个FPGA开发板即可,不需要更多的开发板及硬件结构,结构简易,操作方便;
二、拥有可选PCIE通道和可选TCP通道,因此,具有PCIE接口的上位机或者服务器,以及具有以太网口的上位机或者服务器均可使用,极大地方便用户使用;
三、采用先进的NoC路由机制,从而能使得大数量及多信号数据能稳定高效地传输,大大提高了数据传输效率;
四、使用基于SCE-MI标准接口的Scemi_channel通道,兼容性好,符合行业发展趋势,易于移植。
附图说明
图1是本发明实施例的仿真***的结构框图;
图2是本发明一个实施例的仿真***的结构示意图;
图3是本发明一个实施例的仿真***中测试激励数据的打包封装格式示意图;
图4是本发明一个实施例的仿真***中仿真波形数据的打包封装格式示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明实施例的仿真***的结构框图,具体可以包括如下模块:主机模块1、开发板模块2和分别与主机模块1和开发板模块2相连的物理通道连接模块3。其中,主机模块1例如上位机或服务器等用于根据接收的用户待测试设计生成配置文件,以及根据接收的测试参数产生测试激励数据,并分别发送配置文件和测试激励数据至物理通道连接模块3,以及从物理通道连接模块3获取仿真波形数据,并显示仿真波形数据对应的仿真波形;物理通道连接模块3用于传输配置文件、测试激励数据和仿真波形数据;开发板模块2包括FPGA,开发板模块2例如开发板用于根据配置文件对FPGA进行配置,并根据测试激励数据测试待测试电路模块21以生成仿真波形数据,并发送仿真波形数据至物理通道连接模块3;待测试电路模块21为用户待测试设计在FPGA中映射的电路模块。
具体地,在本发明的一个实施例中,参照图2,主机模块1可以包括:配置文件生成子模块11、激励生成子模块12、波形回读功能子模块13、仿真调试子模块14、缓存空间15和底层驱动子模块16。其中,配置文件生成子模块11与物理通道连接模块3相连,配置文件生成子模块11用于接收用户待测试设计,将用户待测试设计封装成SCE-MI协议接口用户待测试设计,并根据SCE-MI协议接口用户待测试设计生成配置文件,发送配置文件至物理通道连接模块3;激励生成子模块12与缓存空间15相连,激励生成子模块12用于接收测试参数,根据测试参数产生测试激励数据,并将测试激励数据存储至缓存空间15;底层驱动子模块16分别与缓存空间15和物理通道连接模块3双向互联,底层驱动子模块16用于将测试激励数据发送至物理通道连接模块3,以及将物理通道连接模块3传输的仿真波形数据存储至缓存空间15;波形回读功能子模块13与缓存空间15相连,波形回读功能子模块13用于从缓存空间15获取仿真波形数据,并调用仿真调试子模块14显示仿真波形数据对应的仿真波形。其中,配置文件生成子模块11、激励生成子模块12和波形回读功能子模块13可以为设置在主机模块中的应用软件。
具体地,在本发明的一个实施例中,参照图2,主机模块1还可以包括RTL代码转换子模块17例如Bsc软件和综合布局布线子模块18例如Vivado软件,配置文件生成子模块11可以包括:Dut输入接口111、Dut端口解析单元112、SCE-MI协议接口封装单元113、RTL生成单元114和配置文件生成单元115。其中,Dut输入接口111用于接收用户待测试设计;Dut端口解析单元112用于对用户待测试设计进行解析;SCE-MI协议接口封装单元113用于根据Accellera组织(电子设计自动化行业的一个致力于标准化的组织)颁布的标准协同仿真模型接口协议将解析后的用户待测试设计封装成SCE-MI协议接口用户待测试设计;RTL生成单元114用于调用RTL代码转换子模块17,以根据SCE-MI协议接口用户待测试设计生成RTL底层代码文件;配置文件生成单元115与物理通道连接模块3相连,配置文件生成单元115用于调用综合布局布线子模块18,以根据RTL底层代码文件生成配置文件,以及发送配置文件至物理通道连接模块3。
具体地,在本发明的一个实施例中,参照图2,激励生成子模块12可以包括应用程序接口121、用户TB编程接口122和激励产生单元123。其中,应用程序接口121用于提供至少一个功能函数;用户TB编程接口122用于接收测试参数和调用应用程序接口121,以产生测试激励数据;激励产生单元123与缓存空间15相连,激励产生单元123用于将测试激励数据和对应的Scemi_channel通道ID进行打包封装,并存储至缓存空间15。
具体地,在本发明的一个实施例中,参照图2,波形回读功能子模块13可以包括回读单元131和波形文件生成单元132。其中,回读单元131与缓存空间15相连,回读单元131用于从缓存空间15获取仿真波形数据;波形文件生成单元132用于根据仿真波形数据生成波形文件,并调用仿真调试子模块14,以根据波形文件显示对应的仿真波形。
具体地,在本发明的一个实施例中,参照图2,物理通道连接模块3可以包括JTAG连接电路31例如JTAG连接线、PCIE连接电路32例如PCIE连接线和TCP连接电路33例如TCP连接线。其中,JTAG连接电路31分别与配置文件生成子模块11和开发板模块2相连,JTAG连接电路31用于传输配置文件至开发板模块2;PCIE连接电路32分别与底层驱动子模块16和开发板模块2双向互联,当底层驱动子模块16将封装后的测试激励数据发送至PCIE连接电路32时,PCIE连接电路32传输封装后的测试激励数据至开发板模块2,以及当开发板模块2发送仿真波形数据至PCIE连接电路32时,PCIE连接电路32传输仿真波形数据至底层驱动子模块16;TCP连接电路33分别与底层驱动子模块16和开发板模块2双向互联,当底层驱动子模块16将封装后的测试激励数据发送至TCP连接电路33时,TCP连接电路33传输封装后的测试激励数据至开发板模块2,以及当开发板模块2发送仿真波形数据至TCP连接电路33时,TCP连接电路33传输仿真波形数据至底层驱动子模块16。
具体地,在本发明的一个实施例中,参照图2,开发板模块2可以包括JTAG接口子模块22、第一IO插座23、第二IO插座24和FPGA。其中,JTAG接口子模块22分别与JTAG连接电路31和FPGA相连,JTAG接口子模块22用于根据配置文件对FPGA进行配置;第一IO插座23分别与PCIE连接电路32和FPGA双向互联;第二IO插座24分别与TCP连接电路33和FPGA双向互联;FPGA用于根据封装后的测试激励数据测试待测试电路模块21以生成仿真波形数据,并发送仿真波形数据至第一IO插座23或第二IO插座24。
具体地,在本发明的一个实施例中,参照图2,FPGA可以包括:可选PCIE通道25、可选TCP通道26、NoC单元27、多个Scemi_channel通道例如Scemi_channel通道0、Scemi_channel通道1……Scemi_channel通道n、Transactor单元28、波形回读功能模块29和待测试电路模块21。其中,可选PCIE通道25与第一IO插座23双向互联,可选PCIE通道25用于传输封装后的测试激励数据、仿真波形数据;可选TCP通道26与第二IO插座24双向互联,可选TCP通道26用于传输封装后的测试激励数据、仿真波形数据;NoC单元27分别与每个Scemi_channel通道、可选PCIE通道25和可选TCP通道26双向互联,NoC单元27用于为测试激励数据提供路由通道,并根据Scemi_channel通道ID选择Scemi_channel通道,以及为仿真波形数据提供回读路由通道,并传输仿真波形数据至可选PCIE通道25或可选TCP通道26;选择的Scemi_channel通道传输测试激励数据;Transactor单元28分别与每个Scemi_channel通道和待测试电路模块21双向互联,且Transactor单元28与波形回读功能模块29相连,Transactor单元28用于对测试激励数据进行重组,并发送至待测试电路模块21,以及从波形回读功能模块29获取仿真波形数据,以及根据仿真波形数据对应的回读Scemi_channel通道ID选择回读Scemi_channel通道;选择的回读Scemi_channel通道传输仿真波形数据;待测试电路模块21用于根据重组后的测试激励数据生成仿真波形数据;波形回读功能模块29用于获取待测试电路模块21生成的仿真波形数据,并将仿真波形数据和回读Scemi_channel通道ID进行打包封装。其中,每个Scemi_channel通道的两端可以分别具有基于SCE-MI2.0或SCE-MI2.0及以上的标准接口,从而大大提高了仿真***地兼容性。
其中,NoC单元27可以具有树形路由结构或其它结构,波形回读功能模块29可以包括ICAP接口或者SelectMAP接口,ICAP接口或者SelectMAP接口获取波形回读数据。
具体地,在本发明的一个实施例中,参照图2,可选PCIE通道25可以包括PCIE_CORE单元251和Pcie_to_noc_bridge单元252。其中,PCIE_CORE单元251与第一IO插座23双向互联,PCIE_CORE单元251用于将PCIE连接电路32传输至第一IO插座23的封装后的测试激励数据进行重组,并传输至Pcie_to_noc_bridge单元252,同时PCIE_CORE单元251将Pcie_to_noc_bridge单元252传输的仿真波形数据进行分组并传输至第一IO插座23;Pcie_to_noc_bridge单元252分别与PCIE_CORE单元251和NoC单元27双向互联,Pcie_to_noc_bridge单元252用于将PCIE_CORE单元251传输的重组和封装后的测试激励数据进行重组并传输至NoC单元27,并将NoC单元27传输的仿真波形数据进行分组并传输至PCIE_CORE单元251。其中,PCIE_CORE单元251可以设置在链路层,Pcie_to_noc_bridge单元252作为PCIE_CORE单元251与NoC单元27之间的连接桥。
具体地,在本发明的一个实施例中,参照图2,可选TCP通道26可以包括TCP_CORE单元261和Tcp_to_noc_bridge单元262。其中,TCP_CORE单元261与第二IO插座24双向互联,TCP_CORE单元261用于将TCP连接电路33传输至第二IO插座24的封装后的的测试激励数据进行重组,并传输至Tcp_to_noc_bridge单元262,同时TCP_CORE单元261将Tcp_to_noc_bridge单元262传输的仿真波形数据进行分组并传输至第二IO插座24;Tcp_to_noc_bridge单元262分别与TCP_CORE单元261和NoC单元27双向互联,Tcp_to_noc_bridge单元262用于将TCP_CORE单元261传输的重组和封装后的测试激励数据进行重组并传输至NoC单元27,并将NoC单元27传输的仿真波形数据进行分组并传输至TCP_CORE单元261。其中,TCP_CORE单元261可以设置在链路层,Tcp_to_noc_bridge单元262作为TCP_CORE单元261与NoC单元27之间的连接桥。
具体地,在实际应用中,用户可以通过Dut输入接口111编写用户待测试设计,进而RTL生成单元114调用RTL代码转换子模块17例如Bsc软件等,生成用户待测试设计所有相关的RTL底层代码文件,然后配置文件生成单元115调用综合布局布线子模块18例如Vivado软件等对RTL底层代码文件进行综合和实现以生成bit型的配置文件,再通过JTAG连接电路31传输至开发板模块2上的JTAG接口子模块22,最后通过JTAG接口子模块22对FPGA进行配置,从而实现开发板模块2的配置过程。
具体地,在实际应用中,用户可以通过用户TB编程接口122的测试平台产生测试激励数据,然后激励产生单元123对测试激励数据、对应的Scemi_channel通道ID和NoC节点信息进行打包封装,打包封装格式如图3所示。进而激励产生单元123将封装后的测试激励数据放进缓存空间15中,再通过底层驱动子模块16将封装后的测试激励数据发送至物理通道连接模块3。当底层驱动子模块16将封装后的测试激励数据发送至PCIE连接电路32时,驱动中的封装后的测试激励数据依次经过第一IO插座23,再经过PCIE_CORE单元251重组还原成图3所示的数据格式,并通过Pcie_to_noc_bridge单元252传输至NoC单元27;当底层驱动子模块16将封装后的测试激励数据发送至TCP连接电路33时,驱动中的封装后的测试激励数据依次经过第二IO插座24,再经过TCP_CORE单元261重组还原成图3所示的数据格式,并通过Tcp_to_noc_bridge单元262传输至NoC单元27。进而NoC单元27根据NoC节点信息为测试激励数据提供路由通道,然后根据Scemi_channel通道ID选择Scemi_channel通道,Transactor单元28对Scemi_channel通道传输的测试激励数据进行重组,然后发送至待测试电路模块21,至此完成测试激励数据的传输过程。
具体地,在实际应用中,波形回读功能模块29可以获取待测试电路模块21生成的仿真波形数据,并将仿真波形数据、回读Scemi_channel通道ID和回读NoC节点信息进行打包封装,打包封装格式如图4所示。进而Transactor单元28从波形回读功能模块29获取仿真波形数据,然后根据回读Scemi_channel通道ID选择回读Scemi_channel通道,选择的回读Scemi_channel通道传输仿真波形数据至NoC单元27,NoC单元27根据回读NoC节点信息提供回读路由通道。当NoC单元27传输仿真波形数据至可选PCIE通道25时,仿真波形数据依次经过Pcie_to_noc_bridge单元252、PCIE_CORE单元251、第一IO插座23、PCIE连接电路32至底层驱动子模块16;当NoC单元27传输仿真波形数据至可选TCP通道26时,仿真波形数据依次经过Tcp_to_noc_bridge单元262、TCP_CORE单元261、第二IO插座24、TCP连接电路33至底层驱动子模块16。底层驱动子模块16将仿真波形数据存储至缓存空间15,再由波形回读功能子模块13中的波形文件生成单元132进行处理并生成波形文件,最后波形文件生成单元132调用仿真调试子模块14例如Verdi等软件进行波形显示,用户查看波形,至此完成仿真波形数据的回读显示过程。
具体地,在本发明的一个实施例中,上述仿真***在应用时,主机模块1为上位机,开发板模块2为开发板,用户通过上位机编写用户待测试设计和产生测试激励数据,然后对开发板进行配置和测试,最后回读测试产生的仿真波形数据,用户在上位机上查看波形即可,从而用户完成整个仿真过程。
本发明实施例的仿真***包括以下优点:
一、明确分为主机模块、开发板模块和物理通道连接模块三个模块,因此,只需要一台上位机或者服务器、连接线和一个FPGA开发板即可,不需要更多的开发板及硬件结构,结构简易,操作方便;
二、拥有可选PCIE通道和可选TCP通道,因此,具有PCIE接口的上位机或者服务器,以及具有以太网口的上位机或者服务器均可使用,极大地方便了用户使用;
三、采用先进的NoC路由机制,从而能使得大数量及多信号数据能稳定高效地传输,大大提高了数据传输效率;
四、使用基于SCE-MI2.0或SCE-MI2.0及以上的标准接口,兼容性大大增加例如可兼容SCE-MI 1.0接口,符合行业发展趋势,易于移植。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种仿真***,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (9)

1.一种仿真***,其特征在于,包括:主机模块、开发板模块和分别与所述主机模块和所述开发板模块相连的物理通道连接模块,其中,
所述主机模块用于根据接收的用户待测试设计生成配置文件,以及根据接收的测试参数产生测试激励数据,并分别发送所述配置文件和所述测试激励数据至所述物理通道连接模块,以及从所述物理通道连接模块获取仿真波形数据,并显示所述仿真波形数据对应的仿真波形;
所述物理通道连接模块用于传输所述配置文件、所述测试激励数据和所述仿真波形数据;
所述开发板模块包括FPGA,所述开发板模块用于根据所述配置文件对所述FPGA进行配置,并根据所述测试激励数据测试待测试电路模块以生成所述仿真波形数据,并发送所述仿真波形数据至所述物理通道连接模块;所述待测试电路模块为所述用户待测试设计在所述FPGA中映射的电路模块;
所述主机模块包括:配置文件生成子模块、激励生成子模块、波形回读功能子模块、仿真调试子模块、缓存空间和底层驱动子模块,其中,
所述配置文件生成子模块与所述物理通道连接模块相连,所述配置文件生成子模块用于接收所述用户待测试设计,将所述用户待测试设计封装成SCE-MI协议接口用户待测试设计,并根据所述SCE-MI协议接口用户待测试设计生成所述配置文件,发送所述配置文件至所述物理通道连接模块;
所述激励生成子模块与所述缓存空间相连,所述激励生成子模块用于接收所述测试参数,根据所述测试参数产生所述测试激励数据,并将所述测试激励数据存储至所述缓存空间;
所述底层驱动子模块分别与所述缓存空间和所述物理通道连接模块双向互联,所述底层驱动子模块用于将所述测试激励数据发送至所述物理通道连接模块,以及将所述物理通道连接模块传输的所述仿真波形数据存储至所述缓存空间;
所述波形回读功能子模块与所述缓存空间相连,所述波形回读功能子模块用于从所述缓存空间获取所述仿真波形数据,并调用所述仿真调试子模块显示所述仿真波形数据对应的仿真波形。
2.根据权利要求1所述的仿真***,其特征在于,所述主机模块还包括RTL代码转换子模块和综合布局布线子模块,所述配置文件生成子模块包括:
Dut输入接口,所述Dut输入接口用于接收所述用户待测试设计;
Dut端口解析单元,所述Dut端口解析单元用于对所述用户待测试设计进行解析;
SCE-MI协议接口封装单元,所述SCE-MI协议接口封装单元用于将解析后的用户待测试设计封装成所述SCE-MI协议接口用户待测试设计;
RTL生成单元,所述RTL生成单元用于调用所述RTL代码转换子模块,以根据所述SCE-MI协议接口用户待测试设计生成RTL底层代码文件;
配置文件生成单元,所述配置文件生成单元与所述物理通道连接模块相连,所述配置文件生成单元用于调用所述综合布局布线子模块,以根据所述RTL底层代码文件生成所述配置文件,以及发送所述配置文件至所述物理通道连接模块。
3.根据权利要求1所述的仿真***,其特征在于,所述激励生成子模块包括:应用程序接口、用户TB编程接口和激励产生单元,其中,
所述应用程序接口用于提供至少一个功能函数;
所述用户TB编程接口用于接收所述测试参数和调用所述应用程序接口,以产生所述测试激励数据;
所述激励产生单元与所述缓存空间相连,所述激励产生单元用于将所述测试激励数据和对应的Scemi_channel通道ID进行打包封装,并存储至所述缓存空间。
4.根据权利要求1所述的仿真***,其特征在于,所述波形回读功能子模块包括:
回读单元,所述回读单元与所述缓存空间相连,所述回读单元用于从所述缓存空间获取所述仿真波形数据;
波形文件生成单元,所述波形文件生成单元用于根据所述仿真波形数据生成波形文件,并调用所述仿真调试子模块,以根据所述波形文件显示对应的所述仿真波形。
5.根据权利要求3所述的仿真***,其特征在于,所述物理通道连接模块包括:
JTAG连接电路,所述JTAG连接电路分别与所述配置文件生成子模块和所述开发板模块相连,所述JTAG连接电路用于传输所述配置文件至所述开发板模块;
PCIE连接电路,所述PCIE连接电路分别与所述底层驱动子模块和所述开发板模块双向互联,当所述底层驱动子模块将封装后的测试激励数据发送至所述PCIE连接电路时,所述PCIE连接电路传输所述封装后的测试激励数据至所述开发板模块,以及当所述开发板模块发送所述仿真波形数据至所述PCIE连接电路时,所述PCIE连接电路传输所述仿真波形数据至所述底层驱动子模块;
TCP连接电路,所述TCP连接电路分别与所述底层驱动子模块和所述开发板模块双向互联,当所述底层驱动子模块将所述封装后的测试激励数据发送至所述TCP连接电路时,所述TCP连接电路传输所述封装后的测试激励数据至所述开发板模块,以及当所述开发板模块发送所述仿真波形数据至所述TCP连接电路时,所述TCP连接电路传输所述仿真波形数据至所述底层驱动子模块。
6.根据权利要求5所述的仿真***,其特征在于,所述开发板模块包括:JTAG接口子模块、第一IO插座、第二IO插座和所述FPGA,其中,
所述JTAG接口子模块分别与所述JTAG连接电路和所述FPGA相连,所述JTAG接口子模块用于根据所述配置文件对所述FPGA进行配置;
所述第一IO插座分别与所述PCIE连接电路和所述FPGA双向互联;
所述第二IO插座分别与所述TCP连接电路和所述FPGA双向互联;
所述FPGA用于根据所述封装后的测试激励数据测试所述待测试电路模块以生成所述仿真波形数据,并发送所述仿真波形数据至所述第一IO插座或所述第二IO插座。
7.根据权利要求6所述的仿真***,其特征在于,所述FPGA包括:可选PCIE通道、可选TCP通道、NoC单元、多个Scemi_channel通道、Transactor单元、波形回读功能模块和所述待测试电路模块,其中,
所述可选PCIE通道与所述第一IO插座双向互联,所述可选PCIE通道用于传输所述封装后的测试激励数据、所述仿真波形数据;
所述可选TCP通道与所述第二IO插座双向互联,所述可选TCP通道用于传输所述封装后的测试激励数据、所述仿真波形数据;
所述NoC单元分别与每个所述Scemi_channel通道、所述可选PCIE通道和所述可选TCP通道双向互联,所述NoC单元用于为所述测试激励数据提供路由通道,并根据所述Scemi_channel通道ID选择Scemi_channel通道,以及为所述仿真波形数据提供回读路由通道,并传输所述仿真波形数据至所述可选PCIE通道或所述可选TCP通道;所述选择的Scemi_channel通道传输所述测试激励数据;
所述Transactor单元分别与每个所述Scemi_channel通道和所述待测试电路模块双向互联,且所述Transactor单元与所述波形回读功能模块相连,所述Transactor单元用于对所述测试激励数据进行重组,并发送至所述待测试电路模块,以及从所述波形回读功能模块获取所述仿真波形数据,以及根据所述仿真波形数据对应的回读Scemi_channel通道ID选择回读Scemi_channel通道;所述选择的回读Scemi_channel通道传输所述仿真波形数据;
所述待测试电路模块用于根据重组后的测试激励数据生成所述仿真波形数据;
所述波形回读功能模块用于获取所述待测试电路模块生成的仿真波形数据,并将所述仿真波形数据和所述回读Scemi_channel通道ID进行打包封装。
8.根据权利要求7所述的仿真***,其特征在于,所述NoC单元具有树形路由结构。
9.根据权利要求7所述的仿真***,其特征在于,所述波形回读功能模块包括ICAP接口或者SelectMAP接口,所述ICAP接口或者所述SelectMAP接口获取所述波形回读数据。
CN201610522228.6A 2016-07-01 2016-07-01 一种仿真*** Active CN106156424B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610522228.6A CN106156424B (zh) 2016-07-01 2016-07-01 一种仿真***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610522228.6A CN106156424B (zh) 2016-07-01 2016-07-01 一种仿真***

Publications (2)

Publication Number Publication Date
CN106156424A CN106156424A (zh) 2016-11-23
CN106156424B true CN106156424B (zh) 2023-11-14

Family

ID=58061882

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610522228.6A Active CN106156424B (zh) 2016-07-01 2016-07-01 一种仿真***

Country Status (1)

Country Link
CN (1) CN106156424B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106777729A (zh) * 2016-12-26 2017-05-31 中核控制***工程有限公司 一种基于fpga的算法库仿真验证平台实现方法
CN108875106B (zh) * 2017-05-15 2021-10-22 中国科学院微电子研究所 一种电路设计的移植方法和***
CN109491280B (zh) * 2017-09-13 2020-08-07 合肥海本蓝科技有限公司 一种实现软硬件互锁的装置
CN109492239B (zh) * 2017-09-13 2023-11-14 合肥海本蓝科技有限公司 一种实现仿真波形数据实时分割的装置
CN110673021B (zh) * 2019-11-05 2021-09-10 桂林电子科技大学 一种基于NoC的边界扫描测试控制方法及控制器接口
CN110955966A (zh) * 2019-11-25 2020-04-03 北京无线电计量测试研究所 综合原子时数据模拟方法及***
CN111324109A (zh) * 2020-03-16 2020-06-23 北京和利时***工程有限公司 一种信号仿真***及方法
CN112511537B (zh) * 2020-11-30 2023-01-24 深圳国微晶锐技术有限公司 一种sce-mi协议桥及仿真***
CN112395228B (zh) * 2021-01-20 2021-04-30 北京燧原智能科技有限公司 协议转换桥接电路、知识产权核以及***级芯片

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0601135D0 (en) * 2006-01-20 2006-03-01 Spiratech Ltd Modelling and simulation method
CN100399341C (zh) * 2006-03-31 2008-07-02 电子科技大学 一种矢量模式软硬件协同仿真/验证方法
CN101159492A (zh) * 2007-09-11 2008-04-09 Ut斯达康通讯有限公司 一种用于sdh逻辑设计的仿真验证***及其方法
US20130227367A1 (en) * 2012-01-17 2013-08-29 Allen J. Czamara Test IP-Based A.T.E. Instrument Architecture

Also Published As

Publication number Publication date
CN106156424A (zh) 2016-11-23

Similar Documents

Publication Publication Date Title
CN106156424B (zh) 一种仿真***
US6182247B1 (en) Embedded logic analyzer for a programmable logic device
CN100585422C (zh) 用于对模块化测试***进行仿真的方法和***
CN1818912B (zh) 可扩展可重配置的原型***及方法
US6212490B1 (en) Hybrid circuit model simulator for accurate timing and noise analysis
CN113342583B (zh) 芯片验证***、方法、装置、设备和存储介质
CN104268078B (zh) 一种基于参数化ip测试用例集合的芯片自动化验证方法
WO2019167081A1 (en) System and method for emulation and simulation of rtl (design under test) using fpga
CN103530211B (zh) 一种基于uvm平台的pcie回环自检测的方法
CN110750949B (zh) 一种基于ibis模型模拟***级封装剂量率效应的方法
US6197605B1 (en) Method and device for test vector analysis
CN102130951A (zh) 一种服务器及其可编程逻辑器件的远程升级方法
CN102768692B (zh) 应用于fpga测试的导航布局布线方法
WO2024130861A1 (zh) 一种云原生的硬件逻辑仿真fpga加速方法及***
CN104461812A (zh) 一种利用已有Verilog BFM构造UVM验证组件的方法
CN106293625A (zh) 一种配置寄存器的方法和装置
CN112732508A (zh) 一种基于Zynq的可配置通用IO测试***及测试方法
CN105956302A (zh) 一种可配置的抗辐射芯片前端网表自动生成方法
US20110153305A1 (en) Software extensions to a high level description language simulator to provide infrastructure for analog, mixed-signal, RF modeling and verification
CN116894411A (zh) 带dma接口的spi模块验证平台和方法
CN116776785A (zh) 一种集成芯片的被动模式验证方法及***
CN101290640B (zh) 集成电路设计的验证方法及装置
CN104569791A (zh) Ip硬核无损测试结构及其实现方法
CN105897494A (zh) 网络传输速率的测试方法
WO2003021495A2 (en) Model-based logic design

Legal Events

Date Code Title Description
C06 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