CN105701298A - 基于PowerPC SoC架构的仿真平台设计方法 - Google Patents
基于PowerPC SoC架构的仿真平台设计方法 Download PDFInfo
- Publication number
- CN105701298A CN105701298A CN201610024843.4A CN201610024843A CN105701298A CN 105701298 A CN105701298 A CN 105701298A CN 201610024843 A CN201610024843 A CN 201610024843A CN 105701298 A CN105701298 A CN 105701298A
- Authority
- CN
- China
- Prior art keywords
- instruction
- design
- simulation
- module
- framework
- 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.)
- Pending
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/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
-
- 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)
- Microelectronics & Electronic Packaging (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种基于PowerPC SoC架构的仿真平台设计方法,包括:指令集仿真,采用QEMU虚拟机的动态二进制翻译技术作为PowerPC SoC架构仿真平的指令集仿真器进行指令集仿真;对仿真平台中关键组件建模,基于SystemC事务级建模方法,完成了对主设备模块和从设备模块的精确建模,设计出具有完整功能的PowerPC SoC架构的仿真平台;中断设计,实现仿真平台的中断***。本发明实现了软硬件的协同仿真,降低了设计风险和纠错成本,加快了产品的设计流程,缩短了产品的上市周期,同时通过扩展指令集和IP模块的功能,对硬件开发有着一定的指导意义。
Description
技术领域
本发明涉及一种仿真平台设计方法。特别是涉及一种基于SystemC事务级建模,在PowerPCSoC仿真平台基础之上的基于PowerPCSoC架构的仿真平台设计方法。
背景技术
基于ESL(ESL,ElectronicSystemLevel)的SoC设计可以快速地搭建硬件平台,并快速开发/验证软件应用程序,进而确定***的最优架构,实现SoC的软硬件的协同设计。ESL设计包含两种技术,一种是基于事务级建模的方法,该方法可利用SystemC语言对硬件模块的行为进行精确建模,并以此完成***验证及设计空间探测,但精确的建模导致所描述的硬件平台仿真速度过慢,无法运行规模较大的***/应用软件,如操作***,高清视频解码等。另一种方法为虚拟机技术,侧重于对硬件功能的描述。因此,仿真速度较快,可运行操作***等大规模***或应用软件,但是过粗的建模精度导致无法对SoC架构的优劣进行评估。如何综合以上两种方法的优点,在保证ESL设计精度的同时提高仿真速度已成为SoC设计方法学领域所关心的问题。
PowerPC是一种由POWER架构衍生出来的精简指令集架构的中央处理器。PowerPC架构被公认为第二代高性能精简指令集计算机的代表。PowerPC具有高性能,高稳定性,可靠性,良好的软件兼容,芯片性能选择范围大等优势,不仅用于大型服务器,个人PC上,而且广泛应用于汽车电子、航空电子、监控设备、打印设备、工业控制、医疗设备等领域。
发明内容
本发明所要解决的技术问题是,提供一种在保证ESL设计精度的同时提高仿真速度,使得用户在没有真实的硬件条件下就能够进行软件和硬件的协同开发以及功能验证的基于PowerPCSoC架构的仿真平台设计方法。
本发明所采用的技术方案是:一种基于PowerPCSoC架构的仿真平台设计方法,包括如下步骤:
1)指令集仿真,采用QEMU虚拟机的动态二进制翻译技术作为PowerPCSoC架构仿真平的指令集仿真器进行指令集仿真;
2)对仿真平台中关键组件建模,基于SystemC事务级建模方法,完成了对主设备模块和从设备模块的精确建模,设计出具有完整功能的PowerPCSoC架构的仿真平台;
3)中断设计,实现仿真平台的中断***。
步骤1)所述的指令集仿真是在QEMU中PowerPC架构的基础上实现的,首先将所有PowerPC指令集添加到QEMU的指令表中,然后根据PowerPC指令的操作码去查找QEMU指令表中的对应指令。
所述的QEMU指令表中包含两部分,第一部分是根据指令操作码的定义,把操作的数值存入QEMU指令表中,形成指令表的索引;第二部分是为了实现任一指令的功能所对应的函数,所述函数把相应指令分解成微操作。
步骤1)所述的指令集仿真具体包括:
创建op.c文件,并定义所有的微操作函数;op.c文件中每一个微操作函数,都会生成一个固定的微操作特征值函数,微操作特征值函数为每一个微操作分配一个固定的特征值,定义在创建的gen_op.h文件中,在创建的translate.c文件中将PowerPC指令翻译成多个微操作特征值函数,进而生成微操作特征值数组,根据微操作特征值数组,查找op.c文件所生成的微操作索引表,生成TB块指令Buffer,构成PowerPC的指令集仿真器,从而进行指令集仿真。
步骤2)中所述的主设备模块包括SystemCWrapper和指令集仿真器;所述的从设备模块包括:存储器、tty显示器、framebuffer帧缓存图片显示模块和time时钟模块。
步骤2)所述的对主设备模块的精确建模包括:
SystemCWrapper实现一个类,在所述SystemCWrapper实现的类上提供一个用于指令集仿真器访问存储器的函数接口ISStomemoryaccess,主设备模块实现两个线程,一个线程用于实现译码流程,根据当前的PC值进行译码工作;另外一个线程用于实现中断处理功能;每一个线程内部均为while(1)循环结构,以保证主设备模块的持续运行;主设备模块需要主动向从设备模块发送读写请求,通过主设备模块的read和write接口通过总线去读取相应从设备模块的数据;取指令需要频繁地访问存储器,会浪费大量***时间,为了节省这部分***访存时间,通过所述SystemCWrapper实现的类上的函数接口,使指令集仿真器能够直接访问存储器从而获取指令和数据;每一个主设备模块都有一个地址映射表,用于记录所有从设备的地址空间,通过所述地址映射表确定主设备模块要访问的从设备模块的所对应的编号。
用于实现译码流程的线程中,每次循环体内翻译一个TB块的程序并执行;中断线程中,每当有中断到来时唤醒中断线程,处理中断,标记中断标志位;在下一次译码流程开始时,如果发现已有中断,保存当前PC值和状态寄存器,跳转到中断偏移向量,执行相应的中断服务程序,处理中断。
步骤2)所述的对从设备模块的精确建模包括:
从设备模块中,寄存器以32位位宽形式定义,地址按4位对齐,实现两个线程,一个线程用于实现从设备模块基本功能,主要描述从设备模块的基本功能;一个线程发出中断,用于向主设备模块告知从设备已经完成主设备所要求的功能,每一个线程内部均为while(1)循环结构,以保证从设备模块的持续运行,通过睡眠唤醒机制实现从设备之间的同步。
步骤3)所述的中断设计,实现仿真平台的中断***是,
首先设计一个可读标志位,所述标志位是在可用的地址空间内开辟一块地址空间,称作同步全局变量;所述同步全局变量用一个byte表示,0表示不可读,1表示可读,为了保证地址对齐,开辟32位即4byte的地址空间,开始时,把所述的同步全局变量置成0,之后往从设备模块写入数据,启动从设备模块开始工作,然后进入循环阶段判断同步全局变量是否置成1,如果同步全局变量为0,表明从设备模块运行尚未结束,则循环等待;如果置成1,则表明从设备模块运行结束,应用程序继续执行;
PowerPC架构的中断向量地址为0x500,当有中断发生的时候,指令集仿真器首先保存当前的PC值和状态寄存器,然后修改当前PC值为0x500,保证下次译码时取得的指令是地址0x500的指令,在0x500地址处通过memcopy函数,把一条跳转指令添加到0x500地址上,然后跳转到中断服务程序的首地址,执行中断服务程序;
所述中断服务程序包括汇编程序和C程序,为了保证应用程序的正常运行,中断服务程序需要保存现场,中断服务程序利用汇编程序保存现场:选取一片可用的地址空间,把所有的通用寄存器和状态寄存器压入所述的地址空间中,之后调用跳转指令,使汇编程序跳转至C程序;C程序主要功能是实现中断服务,把同步全局变量置成1进行中断处理,中断处理完毕后,跳转回汇编程序;此时汇编程序恢复现场,把压入地址空间中的通用寄存器和状态寄存器出栈,当所有寄存器出栈完毕后,调用指令rfi返还PC指针和状态寄存器,应用程序继续执行,从而完成基于PowerPCSoC架构的高层次仿真平台的设计。
本发明的基于PowerPCSoC架构的仿真平台设计方法,实现了软硬件的协同仿真,降低了设计风险和纠错成本,加快了产品的设计流程,缩短了产品的上市周期。符合SoC设计领域对电子***级设计精度和速度的双重要求高层次仿真平台的应用,使得用户在没有真实的硬件条件下就能够进行软件和硬件的协同开发以及功能验证。PowerPC架构作为精简指令集的代表,产品也广泛应用于各行各业。在基于PowerPC架构的高层次仿真平台进行软件开发,缩短了PowerPC架构的产品的开发周期,同时通过扩展指令集和IP模块的功能,对硬件开发有着一定的指导意义。
附图说明
图1是生成Buffer指令的流程图;
图2是本发明的基于PowerPCSoC架构的仿真平台框架;
图3是本发明中中断***的调用示意图。
具体实施方式
下面结合实施例和附图对本发明的基于PowerPCSoC架构的仿真平台设计方法做出详细说明。
本发明的基于PowerPCSoC架构的仿真平台设计方法,综合基于事务级建模以及虚拟机技术两种方法的优点,利用QEMU虚拟机的动态二进制翻译的方法针对PowerPC405系列处理器进行了指令集仿真器的设计。并基于SystemC事务级建模方法,完成了对从设备模块,中断模块、DCR寄存器等PowerPCSoC中关键组件的精确建模,准确地模拟了SoC的硬件行为。最后,在所设计的PowerPCSoC仿真平台基础之上,设计了软件的开发流程,实现了SoC的软硬件协同设计。
本发明的基于PowerPCSoC架构的仿真平台设计方法,包括如下步骤:
1)指令集仿真,采用QEMU虚拟机的动态二进制翻译技术作为PowerPC405系列的指令集仿真器进行指令集仿真;
所述的指令集仿真是在QEMU中PowerPC架构的基础上实现的,首先将所有PowerPC指令集添加到QEMU的指令表中,然后根据PowerPC指令的操作码去查找QEMU指令表中的对应指令;所述的指QEMU令表中包含两部分,第一部分是根据指令操作码的定义,把操作的数值存入QEMU指令表中,形成指令表的索引;第二部分是为了实现任一指令的功能所对应的函数,所述函数把相应指令分解成微操作。
所述的指令集仿真如图1所示,具体包括:
创建op.c文件,并定义所有的微操作函数,在程序编译过程中,由op.c文件生成微操作索引表;同时op.c文件中每一个微操作函数,都会生成一个固定的微操作特征值函数,微操作特征值函数为每一个微操作分配一个固定的特征值,定义在创建的gen_op.h文件中,在创建的translate.c文件中将PowerPC指令翻译成多个微操作特征值函数,进而生成微操作特征值数组,根据微操作特征值数组,查找由op.c文件生成的微操作索引表,生成TB块指令Buffer,构成PowerPC的指令集仿真器,从而进行指令集仿真。
2)对仿真平台中关键组件建模,基于SystemC事务级建模方法,完成了对主设备模块和从设备模块等关键组件的精确建模,设计出具有较完整功能的PowerPCSoC架构的仿真平台;
所述的主设备模块包括SystemCWrapper和指令集仿真器;平台的***设备都继承一个从设备类,从设备类实现读写接口,接收主设备发送的数据请求。所述的从设备模块包括:存储器、tty显示器、framebuffer帧缓存图片显示模块和time时钟模块。
如图2所示,所述的对主设备模块的精确建模包括:
SystemCWrapper实现一个类,在所述SystemCWrapper实现的类上提供一个用于指令集仿真器访问存储器的函数接口ISStomemoryaccess,主设备模块实现两个线程,一个线程用于实现译码流程,根据当前的PC值进行译码工作;另外一个线程用于实现中断处理功能;每一个线程内部均为while(1)循环结构,以保证主设备模块的持续运行;用于实现译码流程的线程中,每次循环体内翻译一个TB块的程序并执行;中断线程中,每当有中断到来时唤醒中断线程,处理中断,标记中断标志位;在下一次译码流程开始时,如果发现已有中断,保存当前PC值和状态寄存器,跳转到中断偏移向量,执行相应的中断服务程序,处理中断。主设备模块需要主动向从设备模块发送读写请求,通过主设备模块的read和write接口通过总线去读取相应从设备模块的数据;取指令需要频繁地访问存储器,会浪费大量***时间,为了节省这部分***访存时间,通过所述SystemCWrapper实现的类上的函数接口,使指令集仿真器能够直接访问存储器从而获取指令和数据;每一个主设备模块都有一个地址映射表,用于记录所有从设备的地址空间,通过所述地址映射表确定主设备模块要访问的从设备模块的所对应的编号。
如图2所示,所述的对从设备模块的精确建模包括:
从设备模块中,寄存器以32位位宽形式定义,地址按4位对齐,跟主设备类似,实现两个线程,一个线程用于实现从设备模块基本功能,主要描述从设备模块的基本功能;例如tty模块中,该线程的主要功能就是把主设备写来的数据打印到虚拟的终端上,又如framebuffer模块,根据写来的数据,经过复杂的数据处理,把图像一帧一帧显示在帧缓存中。一个线程发出中断,用于向主设备模块告知从设备已经完成主设备所要求的功能,等待从设备模块基本功能实现进入睡眠后,给主设备模块发送中断,通知主设备模块已处理完数据。每一个线程内部均为while(1)循环结构,以保证从设备模块的持续运行,通过睡眠唤醒机制实现从设备之间的同步。
3)中断设计,实现仿真平台的中断***。
如图3所示,所述的中断设计,实现仿真平台的中断***是,应用程序首先初始化同步全局变量,给设备传输数据,启动设备,然后进入堵塞状态等待设备运转结束;设备工作完成会向CPU发出中断;CPU进行中断服务程序处理后,应用程序可以继续执行。
首先保证功能正确,应用程序启动设备后应该进入堵塞状态。如果应用程序是非堵塞的,那么很容易产生错误,应用程序可能在设备完成运算前读取数据。所以需要设计一个特殊的可读标志位,该标志位可以设计在模块中设计一个特殊的位,也可在可用的地址空间内开辟这么一块地址空间。前者类似轮询的方式,后者更类似中断的方式,所以本发明采用开辟一片地址空间的方法,如图3中该位被称作同步全局变量。即首先设计一个可读标志位,所述标志位是在可用的地址空间内开辟一块地址空间,称作同步全局变量;
所述同步全局变量用一个byte表示,0表示不可读,1表示可读,为了保证地址对齐,开辟32位即4byte的地址空间,应用程序开始时,把所述的同步全局变量置成0,之后往从设备模块写入数据,启动从设备模块开始工作,然后进入循环阶段判断同步全局变量是否置成1,如果同步全局变量为0,表明从设备模块运行尚未结束,则循环等待;如果置成1,则表明从设备模块运行结束,应用程序继续执行;
PowerPC架构的中断向量地址为0x500,当有中断发生的时候,指令集仿真器首先保存当前的PC值和状态寄存器,然后修改当前PC值为0x500,保证下次译码时取得的指令是地址0x500的指令,在0x500地址处通过memcopy函数,把一条跳转指令添加到0x500地址上,然后跳转到中断服务程序的首地址,执行中断服务程序;
所述中断服务程序包括汇编程序和C程序,为了保证应用程序的正常运行,中断服务程序需要保存现场,中断服务程序利用汇编程序保存现场:选取一片可用的地址空间,把所有的通用寄存器和状态寄存器压入所述的地址空间中,之后调用跳转指令,使汇编程序跳转至C程序;C程序主要功能是实现中断服务,把同步全局变量置成1进行中断处理,中断处理完毕后,跳转回汇编程序;此时汇编程序恢复现场,把压入地址空间中的通用寄存器和状态寄存器出栈,压栈和出栈的操作就是对寄存器进行存取的操作,使用stw(存)和lwz(取)可完成。当所有寄存器出栈完毕后,调用指令rfi返还PC指针和状态寄存器,应用程序继续执行,从而完成基于PowerPCSoC架构的仿真平台的设计。
Claims (9)
1.基于PowerPCSoC架构的仿真平台设计方法,其特征在于,包括如下步骤:
1)指令集仿真,采用QEMU虚拟机的动态二进制翻译技术作为PowerPCSoC架构仿真平的指令集仿真器进行指令集仿真;
2)对仿真平台中关键组件建模,基于SystemC事务级建模方法,完成了对主设备模块和从设备模块的精确建模,设计出具有完整功能的PowerPCSoC架构的仿真平台;
3)中断设计,实现仿真平台的中断***。
2.根据权利要求1所述的基于PowerPCSoC架构的仿真平台设计方法,其特征在于,步骤1)所述的指令集仿真是在QEMU中PowerPC架构的基础上实现的,首先将所有PowerPC指令集添加到QEMU的指令表中,然后根据PowerPC指令的操作码去查找QEMU指令表中的对应指令。
3.根据权利要求2所述的基于PowerPCSoC架构的仿真平台设计方法,其特征在于,所述的QEMU指令表中包含两部分,第一部分是根据指令操作码的定义,把操作的数值存入QEMU指令表中,形成指令表的索引;第二部分是为了实现任一指令的功能所对应的函数,所述函数把相应指令分解成微操作。
4.根据权利要求1所述的基于PowerPCSoC架构的仿真平台设计方法,其特征在于,步骤1)所述的指令集仿真具体包括:
创建op.c文件,并定义所有的微操作函数;op.c文件中每一个微操作函数,都会生成一个固定的微操作特征值函数,微操作特征值函数为每一个微操作分配一个固定的特征值,定义在创建的gen_op.h文件中,在创建的translate.c文件中将PowerPC指令翻译成多个微操作特征值函数,进而生成微操作特征值数组,根据微操作特征值数组,查找op.c文件所生成的微操作索引表,生成TB块指令Buffer,构成PowerPC的指令集仿真器,从而进行指令集仿真。
5.根据权利要求1所述的基于PowerPCSoC架构的仿真平台设计方法,其特征在于,步骤2)中所述的主设备模块包括SystemCWrapper和指令集仿真器;所述的从设备模块包括:存储器、tty显示器、framebuffer帧缓存图片显示模块和time时钟模块。
6.根据权利要求1所述的基于PowerPCSoC架构的仿真平台设计方法,其特征在于,步骤2)所述的对主设备模块的精确建模包括:
SystemCWrapper实现一个类,在所述SystemCWrapper实现的类上提供一个用于指令集仿真器访问存储器的函数接口ISStomemoryaccess,主设备模块实现两个线程,一个线程用于实现译码流程,根据当前的PC值进行译码工作;另外一个线程用于实现中断处理功能;每一个线程内部均为while(1)循环结构,以保证主设备模块的持续运行;主设备模块需要主动向从设备模块发送读写请求,通过主设备模块的read和write接口通过总线去读取相应从设备模块的数据;取指令需要频繁地访问存储器,会浪费大量***时间,为了节省这部分***访存时间,通过所述SystemCWrapper实现的类上的函数接口,使指令集仿真器能够直接访问存储器从而获取指令和数据;每一个主设备模块都有一个地址映射表,用于记录所有从设备的地址空间,通过所述地址映射表确定主设备模块要访问的从设备模块的所对应的编号。
7.根据权利要求7所述的基于PowerPCSoC架构的仿真平台设计方法,其特征在于,用于实现译码流程的线程中,每次循环体内翻译一个TB块的程序并执行;中断线程中,每当有中断到来时唤醒中断线程,处理中断,标记中断标志位;在下一次译码流程开始时,如果发现已有中断,保存当前PC值和状态寄存器,跳转到中断偏移向量,执行相应的中断服务程序,处理中断。
8.根据权利要求1所述的基于PowerPCSoC架构的仿真平台设计方法,其特征在于,步骤2)所述的对从设备模块的精确建模包括:
从设备模块中,寄存器以32位位宽形式定义,地址按4位对齐,实现两个线程,一个线程用于实现从设备模块基本功能,主要描述从设备模块的基本功能;一个线程发出中断,用于向主设备模块告知从设备已经完成主设备所要求的功能,每一个线程内部均为while(1)循环结构,以保证从设备模块的持续运行,通过睡眠唤醒机制实现从设备之间的同步。
9.根据权利要求1所述的基于PowerPCSoC架构的仿真平台设计方法,其特征在于,步骤3)所述的中断设计,实现仿真平台的中断***是,
首先设计一个可读标志位,所述标志位是在可用的地址空间内开辟一块地址空间,称作同步全局变量;所述同步全局变量用一个byte表示,0表示不可读,1表示可读,为了保证地址对齐,开辟32位即4byte的地址空间,开始时,把所述的同步全局变量置成0,之后往从设备模块写入数据,启动从设备模块开始工作,然后进入循环阶段判断同步全局变量是否置成1,如果同步全局变量为0,表明从设备模块运行尚未结束,则循环等待;如果置成1,则表明从设备模块运行结束,应用程序继续执行;
PowerPC架构的中断向量地址为0x500,当有中断发生的时候,指令集仿真器首先保存当前的PC值和状态寄存器,然后修改当前PC值为0x500,保证下次译码时取得的指令是地址0x500的指令,在0x500地址处通过memcopy函数,把一条跳转指令添加到0x500地址上,然后跳转到中断服务程序的首地址,执行中断服务程序;
所述中断服务程序包括汇编程序和C程序,为了保证应用程序的正常运行,中断服务程序需要保存现场,中断服务程序利用汇编程序保存现场:选取一片可用的地址空间,把所有的通用寄存器和状态寄存器压入所述的地址空间中,之后调用跳转指令,使汇编程序跳转至C程序;C程序主要功能是实现中断服务,把同步全局变量置成1进行中断处理,中断处理完毕后,跳转回汇编程序;此时汇编程序恢复现场,把压入地址空间中的通用寄存器和状态寄存器出栈,当所有寄存器出栈完毕后,调用指令rfi返还PC指针和状态寄存器,应用程序继续执行,从而完成基于PowerPCSoC架构的高层次仿真平台的设计。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610024843.4A CN105701298A (zh) | 2016-01-15 | 2016-01-15 | 基于PowerPC SoC架构的仿真平台设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610024843.4A CN105701298A (zh) | 2016-01-15 | 2016-01-15 | 基于PowerPC SoC架构的仿真平台设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105701298A true CN105701298A (zh) | 2016-06-22 |
Family
ID=56227427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610024843.4A Pending CN105701298A (zh) | 2016-01-15 | 2016-01-15 | 基于PowerPC SoC架构的仿真平台设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105701298A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107797462A (zh) * | 2016-09-01 | 2018-03-13 | 欧姆龙株式会社 | 仿真器联动装置、控制方法、信息处理程序以及记录介质 |
CN108038283A (zh) * | 2017-11-30 | 2018-05-15 | 北京时代民芯科技有限公司 | 一种虚拟时钟同步的高效高覆盖率SoC验证平台 |
CN109426503A (zh) * | 2017-07-21 | 2019-03-05 | 华为技术有限公司 | 提供仿真激励的方法及装置 |
CN109710229A (zh) * | 2018-12-11 | 2019-05-03 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向gpu芯片图形管线单元架构验证方法及平台 |
CN111353263A (zh) * | 2018-12-21 | 2020-06-30 | 创发信息科技(苏州)有限公司 | 软硬件设计与验证平台*** |
CN113703920A (zh) * | 2021-08-27 | 2021-11-26 | 烽火通信科技股份有限公司 | 一种硬件仿真方法及平台 |
CN114625108A (zh) * | 2022-03-21 | 2022-06-14 | 北京经纬恒润科技股份有限公司 | 一种仿真测试方法及装置 |
CN115374017A (zh) * | 2022-10-26 | 2022-11-22 | 统信软件技术有限公司 | 一种仿真运行可执行文件时抓取现场的方法及计算设备 |
CN115421861A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种通用的TMS320C55x处理器指令集虚拟化仿真方法 |
CN115421860A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种通用的sparc处理器指令集虚拟化仿真方法 |
CN115421862A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种51单片机处理器指令集虚拟化仿真方法 |
CN115421865A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种dsp c6713处理器指令集虚拟化仿真方法 |
CN115421863A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种通用的mips64处理器指令集虚拟化仿真方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102221987A (zh) * | 2011-05-11 | 2011-10-19 | 西安电子科技大学 | 基于嵌入式专用指令集处理器的指令集编码方法 |
-
2016
- 2016-01-15 CN CN201610024843.4A patent/CN105701298A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102221987A (zh) * | 2011-05-11 | 2011-10-19 | 西安电子科技大学 | 基于嵌入式专用指令集处理器的指令集编码方法 |
Non-Patent Citations (1)
Title |
---|
孙铭泽: "基于PowerPC SoC架构的高层次仿真平台设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107797462A (zh) * | 2016-09-01 | 2018-03-13 | 欧姆龙株式会社 | 仿真器联动装置、控制方法、信息处理程序以及记录介质 |
CN109426503A (zh) * | 2017-07-21 | 2019-03-05 | 华为技术有限公司 | 提供仿真激励的方法及装置 |
CN109426503B (zh) * | 2017-07-21 | 2022-05-31 | 华为技术有限公司 | 提供仿真激励的方法及装置 |
CN108038283A (zh) * | 2017-11-30 | 2018-05-15 | 北京时代民芯科技有限公司 | 一种虚拟时钟同步的高效高覆盖率SoC验证平台 |
CN109710229A (zh) * | 2018-12-11 | 2019-05-03 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向gpu芯片图形管线单元架构验证方法及平台 |
CN111353263A (zh) * | 2018-12-21 | 2020-06-30 | 创发信息科技(苏州)有限公司 | 软硬件设计与验证平台*** |
CN113703920A (zh) * | 2021-08-27 | 2021-11-26 | 烽火通信科技股份有限公司 | 一种硬件仿真方法及平台 |
CN113703920B (zh) * | 2021-08-27 | 2023-08-08 | 烽火通信科技股份有限公司 | 一种硬件仿真方法及平台 |
CN114625108A (zh) * | 2022-03-21 | 2022-06-14 | 北京经纬恒润科技股份有限公司 | 一种仿真测试方法及装置 |
CN114625108B (zh) * | 2022-03-21 | 2024-01-30 | 北京经纬恒润科技股份有限公司 | 一种仿真测试方法及装置 |
CN115421860A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种通用的sparc处理器指令集虚拟化仿真方法 |
CN115421862A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种51单片机处理器指令集虚拟化仿真方法 |
CN115421865A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种dsp c6713处理器指令集虚拟化仿真方法 |
CN115421863A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种通用的mips64处理器指令集虚拟化仿真方法 |
CN115421863B (zh) * | 2022-09-14 | 2023-04-28 | 北京计算机技术及应用研究所 | 一种通用的mips64处理器指令集虚拟化仿真方法 |
CN115421865B (zh) * | 2022-09-14 | 2023-04-28 | 北京计算机技术及应用研究所 | 一种dsp c6713处理器指令集虚拟化仿真方法 |
CN115421861A (zh) * | 2022-09-14 | 2022-12-02 | 北京计算机技术及应用研究所 | 一种通用的TMS320C55x处理器指令集虚拟化仿真方法 |
CN115421862B (zh) * | 2022-09-14 | 2023-09-26 | 北京计算机技术及应用研究所 | 一种51单片机处理器指令集虚拟化仿真方法 |
CN115421860B (zh) * | 2022-09-14 | 2023-10-20 | 北京计算机技术及应用研究所 | 一种通用的sparc处理器指令集虚拟化仿真方法 |
CN115421861B (zh) * | 2022-09-14 | 2023-10-31 | 北京计算机技术及应用研究所 | 一种通用的TMS320C55x处理器指令集虚拟化仿真方法 |
CN115374017A (zh) * | 2022-10-26 | 2022-11-22 | 统信软件技术有限公司 | 一种仿真运行可执行文件时抓取现场的方法及计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105701298A (zh) | 基于PowerPC SoC架构的仿真平台设计方法 | |
CN110603528B (zh) | 调试***和方法 | |
US8549468B2 (en) | Method, system and computer readable storage device for generating software transaction-level modeling (TLM) model | |
US9552448B2 (en) | Method and apparatus for electronic system model generation | |
Yeh et al. | A fast cycle-accurate instruction set simulator based on QEMU and SystemC for SoC development | |
US20220091907A1 (en) | Processor based logic simulation acceleration and emulation system | |
EP3532936B1 (en) | Debugging system and method | |
US11475199B1 (en) | Parallelizing simulation and hardware co-simulation of circuit designs through partitioning | |
CN103440373A (zh) | 一种多dsp***的互联配置模拟方法 | |
CN117075969A (zh) | 面向risc-v处理器特权指令集一致性的形式验证方法及装置 | |
US20120197625A1 (en) | Data-dependency-Oriented Modeling Approach for Efficient Simulation of OS Preemptive Scheduling | |
US8886512B2 (en) | Simulation apparatus, computer-readable recording medium, and method | |
CN116450430A (zh) | 处理器的验证方法、验证***以及存储介质 | |
Acquaviva et al. | Semi-automatic generation of device drivers for rapid embedded platform development | |
US20140244232A1 (en) | Simulation apparatus and simulation method | |
JP2000259445A (ja) | ソフトウェア/ハードウェア協調シミュレーション方法 | |
Ko et al. | Hardware-in-the-loop simulation for CPU/GPU heterogeneous platforms | |
Díaz et al. | Virtual Platform of FPGA based SoC for Power Electronics Applications | |
US20230114858A1 (en) | Circuit design simulation and clock event reduction | |
Bass et al. | A perspective on microcomputer software | |
Mueller et al. | Verification of real-time properties for hardware-dependent software | |
Helmstetter et al. | Fast and accurate TLM simulations using temporal decoupling for FIFO-based communications | |
Lin et al. | Speeding up SoC virtual platform simulation by data-dependency-aware synchronization and scheduling | |
Dömer | Transaction level modeling of computation | |
Kim et al. | Early software development and verification methodology using hybrid emulation platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160622 |