CN114492261A - 一种芯片仿真系统 - Google Patents

一种芯片仿真系统 Download PDF

Info

Publication number
CN114492261A
CN114492261A CN202210122480.3A CN202210122480A CN114492261A CN 114492261 A CN114492261 A CN 114492261A CN 202210122480 A CN202210122480 A CN 202210122480A CN 114492261 A CN114492261 A CN 114492261A
Authority
CN
China
Prior art keywords
chip
simulated
simulation
upper computer
processor module
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
Application number
CN202210122480.3A
Other languages
English (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.)
Shanghai Holychip Electronic Co ltd
Original Assignee
Beijing Xinxian Electronic 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 Beijing Xinxian Electronic Technology Co ltd filed Critical Beijing Xinxian Electronic Technology Co ltd
Publication of CN114492261A publication Critical patent/CN114492261A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • 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/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • 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
    • 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/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明揭示了一种芯片仿真系统,包括上位机和与其通信的待仿真的芯片。本发明实现了显著降低芯片仿真系统的类型的目的,不仅免除了传统EV芯片的使用,而且有利于通过上位机,例如PC机、工控机等性能强大的计算设备,对需要仿真的芯片实现单步、全速运行、中断三种仿真。甚至,利用上位机强大的计算能力和丰富的IO接口,同时对多个芯片进行仿真。

Description

一种芯片仿真系统
技术领域
本发明属于芯片领域,特别涉及一种芯片仿真系统。
背景技术
在芯片领域,芯片公司向用户交付芯片时,往往还要提供EV芯片以使得用户能够通过EV芯片来仿真交付的芯片的功能。
然而,芯片公司向同一或不同用户提供的芯片往往包括多种不同型号。现有技术中,典型的,为每种不同型号的芯片配套提供一种对应的EV芯片以仿真该型号的芯片。这导致芯片公司需要提供足够多的不同型号的EV芯片乃至芯片仿真系统,还进一步使得芯片公司和用户均不方便使用、维护和管理,体验非常不好。
本领域亟需一种摆脱传统EV芯片的芯片仿真系统。
发明内容
有鉴于此,本发明提出一种免除EV芯片的解决方案。为此,本发明揭示了一种芯片仿真系统,其特征在于:
所述芯片仿真系统免除EV芯片;
所述芯片仿真系统包括:上位机,以及与上位机连接的待仿真的芯片;
其中,
所述芯片仿真系统通过上位机与待仿真的芯片的通信,通过上位机运行仿真程序,实现对所述待仿真的芯片的如下三种仿真:单步、全速运行、中断。
优选的,
在所述三种仿真的过程中,所述仿真程序无需写入待仿真的芯片中的存储器。
优选的,
在所述三种仿真的过程中,所述上位机将所述仿真程序传输至所述待仿真的芯片中的处理器模块。
优选的,
所述上位机每发送一条指令至所述待仿真的芯片中的处理器模块,所述处理器模块每执行该条指令,则实施了如下仿真:单步。
优选的,
在所述上位机中对仿真程序设置断点,每当所述上位机发送指令至所述待仿真的芯片中的处理器模块,通过单步一步步的执行到断点时,所述处理器模块则实施了如下仿真:中断。
优选的,
所述待仿真的芯片还包括:高速串并转换模块;
其中,所述高速串并转换模块的速度高于所述待仿真的芯片中的存储器的速度;
通过所述上位机将需要进行全速运行仿真的所有指令,以串行的方式传输至所述高速串并转换模块,并最终以并行的方式临时暂存至所述高速串并转换模块;
所述高速串并转换模块将所述全速运行仿真的所有指令,一次性、持续性的发送至所述处理器模块,以使得所述处理器模块实施如下仿真:全速运行。
优选的,
所述上位机通过所述待仿真的芯片中的2个端口,连接到所述待仿真的芯片的处理器模块。
优选的,
对于待仿真的芯片中的存储器与待仿真的芯片中的处理器模块,所述上位机旁路所述存储器与处理器模块的数据传输路径,以此实现上位机与待仿真的芯片的通信。
优选的,
所述存储器为OTP存储器。
优选的,
所述2个端口是复用端口。
本发明具备如下技术效果:
通过上述方案,本发明实现了显著降低芯片仿真系统的类型的目的,不仅免除了传统EV芯片的使用,而且有利于通过上位机,例如PC机、工控机等性能强大的计算设备,对需要仿真的芯片实现单步、全速运行、中断(也称断点)三种仿真。甚至,利用上位机强大的计算能力和丰富的IO接口,同时对多个芯片进行仿真。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明的一个实施例中所述芯片仿真系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图1,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
参见图1,在一个实施例中,本发明揭示了一种芯片仿真系统,其特征在于:
所述芯片仿真系统免除EV芯片;
所述芯片仿真系统包括:上位机,以及与上位机连接的待仿真的芯片;
其中,
所述芯片仿真系统通过上位机与待仿真的芯片的通信,通过上位机运行仿真程序,实现对所述待仿真的芯片的如下三种仿真:单步、全速运行、中断。
本实施例的关键在于巧妙的抛弃了传统的EV芯片进行仿真的方案,经由上位机和待仿真的芯片,直接建立二者的通信,并以此实现芯片仿真系统。通过该实施例,本发明实现了显著降低芯片仿真系统的类型的目的,不仅免除了传统EV芯片的使用,而且有利于通过上位机,例如PC机、工控机等性能强大的计算设备,对需要仿真的芯片实现单步、全速运行、中断(也称断点)三种仿真。甚至,利用上位机强大的计算能力和丰富的IO接口,同时对多个芯片进行仿真。
在另一个实施例中,
在所述三种仿真的过程中,所述仿真程序无需写入待仿真的芯片中的存储器。
在另一个实施例中,
在所述三种仿真的过程中,所述上位机将所述仿真程序传输至所述待仿真的芯片中的处理器模块。
以此,实现芯片自身对其处理器模块的仿真,甚至,对芯片自身其他模块例如外设模块的仿真。
在另一个实施例中,
所述上位机每发送一条指令至所述待仿真的芯片中的处理器模块,所述处理器模块每执行该条指令,则实施了如下仿真:单步。
在另一个实施例中,
在所述上位机中对仿真程序设置断点,每当所述上位机发送指令至所述待仿真的芯片中的处理器模块,通过单步一步步的执行到断点时,所述处理器模块则实施了如下仿真:中断。
对于上述单步和中断的实施例而言,能够理解,这属于本发明利用上位机进行仿真时的显著优势,其利用上位机和待仿真的芯片中的处理器模块的数据传输路径,即可轻松实现单步和中断的仿真。
在另一个实施例中,
所述待仿真的芯片还包括:高速串并转换模块;
其中,所述高速串并转换模块的速度高于所述待仿真的芯片中的存储器的速度;
通过所述上位机将需要进行全速运行仿真的所有指令,以串行的方式传输至所述高速串并转换模块,并最终以并行的方式临时暂存至所述高速串并转换模块;
所述高速串并转换模块将所述全速运行仿真的所有指令,一次性、持续性的发送至所述处理器模块,以使得所述处理器模块实施如下仿真:全速运行。
对于该实施例而言,其核心体现了本发明对于现有技术作出的贡献。相比单步和中断两种仿真,如何巧妙的设计全速运行仿真的实现方式,是本发明的关键。问题的关键在于:不同类型的芯片中自带的存储器的速度可能并不相同,既不直接使用芯片中自带的存储器,却又要仿真以测试芯片的全速运行能力——为此,发明人巧妙的利用了串并转换模块,之所以高速,其高速的相对概念,恰恰是指:串并转换模块的速度高于所述待仿真的芯片中的存储器的速度。高出多少,其阈值取决于仿真的苛刻度和芯片的设计参数。能够理解,阈值过高,则失去仿真意义,因为其明显超出当前待仿真的芯片自身的设计参数,无意义。
在另一个实施例中,
所述上位机通过所述待仿真的芯片中的2个端口,连接到所述待仿真的芯片的处理器模块。
能够理解,2个端口中,其中1个端口用于串行的输入指令(和/或数据)到芯片的处理器模块中,另1个端口可以用于上位机与待仿真的芯片的交互,例如反馈某些信息至上位机。
在另一个实施例中,
对于待仿真的芯片中的存储器与待仿真的芯片中的处理器模块,所述上位机旁路所述存储器与处理器模块的数据传输路径,以此实现上位机与待仿真的芯片的通信。
显而易见的,本实施例巧妙的在芯片原有的存储器与处理器模块之间的路径上进行了旁路,以便本发明的芯片仿真系统充分利用该路径。某种程度上讲,芯片原有的存储器与处理器模块之间的路径被复用了。
在另一个实施例中,
所述存储器为OTP存储器。
在另一个实施例中,
所述2个端口是复用端口。
在另一个实施例中,
当所述芯片仿真系统连接多个待仿真的芯片时,其通过选通信号来选通某个待仿真的芯片。更优的,选通信号通过地址译码的方式生成。
在另一个实施例中,
所述芯片仿真系统通过上位机多次写入不同的仿真程序以反复仿真:多种不同型号的芯片中的任一模块的功能。
能够理解,典型的,对于OTP存储器而言,由于本领域出于成本的考虑只支持一次写入,所以本实施例乃至本发明均可通过上位机轻而易举的多次写入不同的仿真程序以反复仿真:多种不同型号的芯片中的任一模块的功能。仿真完毕后,再考虑向真实的芯片中的OTP存储器写入程序。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种芯片仿真系统,其特征在于:
所述芯片仿真系统免除EV芯片;
所述芯片仿真系统包括:上位机,以及与上位机连接的待仿真的芯片;
其中,
所述芯片仿真系统通过上位机与待仿真的芯片的通信,通过上位机运行仿真程序,实现对所述待仿真的芯片的如下三种仿真:单步、全速运行、中断。
2.如权利要求1所述的芯片仿真系统,其中,优选的,
在所述三种仿真的过程中,所述仿真程序无需写入待仿真的芯片中的存储器。
3.如权利要求1所述的芯片仿真系统,其中,
在所述三种仿真的过程中,所述上位机将所述仿真程序传输至所述待仿真的芯片中的处理器模块。
4.如权利要求1所述的芯片仿真系统,其中,
所述上位机每发送一条指令至所述待仿真的芯片中的处理器模块,所述处理器模块每执行该条指令,则实施了如下仿真:单步。
5.如权利要求1所述的芯片仿真系统,其中,
在所述上位机中对仿真程序设置断点,每当所述上位机发送指令至所述待仿真的芯片中的处理器模块,通过单步一步步的执行到断点时,所述处理器模块则实施了如下仿真:中断。
6.如权利要求1所述的芯片仿真系统,其中,
所述待仿真的芯片还包括:高速串并转换模块;
其中,所述高速串并转换模块的速度高于所述待仿真的芯片中的存储器的速度;
通过所述上位机将需要进行全速运行仿真的所有指令,以串行的方式传输至所述高速串并转换模块,并最终以并行的方式临时暂存至所述高速串并转换模块;
所述高速串并转换模块将所述全速运行仿真的所有指令,一次性、持续性的发送至所述处理器模块,以使得所述处理器模块实施如下仿真:全速运行。
7.如权利要求1所述的芯片仿真系统,其中,
所述上位机通过所述待仿真的芯片中的2个端口,连接到所述待仿真的芯片的处理器模块。
8.如权利要求1所述的芯片仿真系统,其中,
对于待仿真的芯片中的存储器与待仿真的芯片中的处理器模块,所述上位机旁路所述存储器与处理器模块的数据传输路径,以此实现上位机与待仿真的芯片的通信。
9.如权利要求2所述的芯片仿真系统,其中,
所述存储器为OTP存储器。
10.如权利要求7所述的芯片仿真系统,其中,
所述2个端口是复用端口。
CN202210122480.3A 2021-08-10 2022-02-09 一种芯片仿真系统 Pending CN114492261A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110916288 2021-08-10
CN2021109162887 2021-08-10

Publications (1)

Publication Number Publication Date
CN114492261A true CN114492261A (zh) 2022-05-13

Family

ID=81477821

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210122480.3A Pending CN114492261A (zh) 2021-08-10 2022-02-09 一种芯片仿真系统

Country Status (1)

Country Link
CN (1) CN114492261A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1399724A (zh) * 1999-09-24 2003-02-26 明导公司 仿真系统中使用的具有集成调试功能的可重构集成电路
CN101329650A (zh) * 2007-06-20 2008-12-24 上海华虹集成电路有限责任公司 智能卡仿真器
CN101751323A (zh) * 2008-11-28 2010-06-23 上海华虹集成电路有限责任公司 微处理器芯片仿真器及断点设置的方法
US20100318345A1 (en) * 2009-06-12 2010-12-16 Cadence Design Systems Inc. System and Method Implementing Full-Rate Writes For Simulation Acceleration
CN104077204A (zh) * 2014-07-22 2014-10-01 无锡中微爱芯电子有限公司 可重构的8位rsic单片机仿真器
CN106354598A (zh) * 2016-10-14 2017-01-25 无锡中微爱芯电子有限公司 一种基于快闪存储器的一次性可编程微控制器调试方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1399724A (zh) * 1999-09-24 2003-02-26 明导公司 仿真系统中使用的具有集成调试功能的可重构集成电路
CN101329650A (zh) * 2007-06-20 2008-12-24 上海华虹集成电路有限责任公司 智能卡仿真器
CN101751323A (zh) * 2008-11-28 2010-06-23 上海华虹集成电路有限责任公司 微处理器芯片仿真器及断点设置的方法
US20100318345A1 (en) * 2009-06-12 2010-12-16 Cadence Design Systems Inc. System and Method Implementing Full-Rate Writes For Simulation Acceleration
CN104077204A (zh) * 2014-07-22 2014-10-01 无锡中微爱芯电子有限公司 可重构的8位rsic单片机仿真器
CN106354598A (zh) * 2016-10-14 2017-01-25 无锡中微爱芯电子有限公司 一种基于快闪存储器的一次性可编程微控制器调试方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
吴厚航: "《深入浅出玩转FPGA(第3版)》", 30 June 2017, 北京航空航天大学出版社, pages: 64 - 66 *
周立功主编: "《ARM嵌入式系统基础教程》", 31 January 2021, 北京航空航天大学出版社, pages: 181 - 183 *

Similar Documents

Publication Publication Date Title
US7058855B2 (en) Emulation interface system
CN107907814B (zh) 一种提高芯片量产测试效率的方法
CN100422953C (zh) 利用HDL扩展串口的SoC系统在线调试方法
US7437282B2 (en) Method and apparatus to provide alternative stimulus to signals internal to a model actively running on a logic simulation hardware emulator
CN105335548A (zh) 一种用于ice的mcu仿真方法
CN101923505A (zh) 外围组件互连快速插槽的测试系统及测试方法
US7478027B2 (en) Systems, methods, and media for simulation of integrated hardware and software designs
CN103793263A (zh) 一种基于PowerPC处理器的DMA事务级建模方法
CN106528414B (zh) 处理器芯片仿真器
CN111176926B (zh) 一种基于双口sram的ip核仿真系统及仿真方法
CN114492261A (zh) 一种芯片仿真系统
CN105677505A (zh) 一种基于串口管理ipmi的方法
CN103678244A (zh) 一种不使用应用处理器的智能设备
CN105677606A (zh) 总线设备的热插拔方法及总线装置
CN104572515A (zh) 跟踪模块、方法、系统和片上系统芯片
CN204189089U (zh) 一种服务器
CN100357909C (zh) 一种仿真器芯片
CN100524323C (zh) 一种数据缓存单元及其实现方法
CN106484584A (zh) 处理器芯片仿真器
CN203149572U (zh) 基于fpga芯片的eda综合实验平台
CN203117963U (zh) 提供图形化接脚接口的调试系统与装置
CN103049214B (zh) 磁盘阵列卡以及具有扩充功能的磁盘阵列系统
CN104834613A (zh) 用以存取虚拟机的计算机系统及方法
CN101354730B (zh) 一种仿真器芯片的仿真方法
CN109558324A (zh) 一种检测方法及设备

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
TA01 Transfer of patent application right

Effective date of registration: 20230629

Address after: No. 618, Zhongde Road, Xiaokunshan Town, Songjiang District, Shanghai, 201600

Applicant after: SHANGHAI HOLYCHIP ELECTRONIC Co.,Ltd.

Address before: 1110-7, floor 11, No. 18, Zhongguancun Street, Haidian District, Beijing 100089

Applicant before: Beijing Xinxian Electronic Technology Co.,Ltd.

TA01 Transfer of patent application right