发明内容
本发明的主要目的在于提供一种成本低、灵活性强且仿真真实性好的SOC芯片仿真系统及方法。
为了达到上述目的,本发明提出一种SOC芯片仿真系统,包括:SOC芯片以及与所述SOC芯片连接的可编程器件,其中:
所述SOC芯片,用于为所述可编程器件提供模拟电路仿真功能;
所述可编程器件,用于接收外部PC机发送的操作指令;利用所述SOC芯片提供的模拟电路功能,并仿真所述SOC芯片的数字电路功能执行所述操作指令。
优选地,该系统还包括:通信单元,连接所述外部PC机与可编程器件,用于传输所述可编程器件与所述外部PC机之间的数据。
优选地,该系统还包括:存储单元,与所述可编程器件连接,用于存储所述SOC芯片仿真系统的相关数据。
优选地,所述可编程器件包括:
数字电路单元,用于仿真所述SOC芯片的数字电路功能;
控制单元,用于对所述操作指令进行译码,并根据所述操作指令控制所述SOC芯片、数字电路单元以及存储单元进行相应操作。
优选地,所述操作指令至少包括程序运行、停止、单步运行、断点控制、芯片复位和/或将用户程序写入存储单元。
优选地,所述存储单元至少包括SRAM、FLASH或E2PROM。
优选地,所述通信单元至少包括USB接口或RS-232C接口。
本发明还提出一种仿真SOC芯片的方法,包括以下步骤:
可编程器件接收外部PC机发送的操作指令;
对所述操作指令进行译码;
利用所述SOC芯片提供的模拟电路功能,并仿真所述SOC芯片的数字电路功能执行所述操作指令。
优选地,该方法还包括:
将所述操作指令的执行结果反馈至所述外部PC机。
优选地,该方法还包括:
对所述仿真SOC芯片的相关数据进行存储。
本发明提出的一种SOC芯片仿真系统及方法,通过仿真SOC芯片的数字电路功能,并利用SOC芯片的模拟电路功能实现对SOC芯片的真实性仿真,本发明对SOC芯片的仿真功能强大,灵活性强,仿真真实性好,并且成本低。
具体实施方式
本发明实施例解决方案主要是:通过仿真SOC芯片的数字电路功能,并利用SOC芯片的模拟电路功能实现对SOC芯片的真实性仿真,灵活性强,仿真真实性好,且成本低。
如图1所示,本发明一实施例提出一种SOC芯片仿真系统,包括:SOC芯片11、通信单元12、存储单元13以及可编程器件14,其中:SOC芯片11、通信单元12、存储单元13均与可编程器件14连接。
本实施例中通信单元12作为可编程器件14对外部的通信接口,用来连接可编程器件14与外部PC(Personal Computer,个人计算机)机,传输可编程器件14与外部PC机之间的通信数据。
SOC芯片11用于为可编程器件14提供模拟电路仿真功能;SOC芯片11中包含了微处理器/微控制器、存储器以及其他专用功能逻辑,其电路部分主要包括模拟电路以及数字电路部分,模拟电路部分主要体现SOC芯片的相关性能,比如电压等,数字电路部分主要体现SOC芯片的相关功能,比如定时器、看门狗电路以及PWM(Pulse Width Modulation,脉宽调制)等,由于SOC芯片的模拟电路部分通常难以改变,难于仿真,而SOC芯片的数字电路部分通过相关协议可以很好的实现仿真,本实施例SOC芯片仿真系统保留了原有SOC芯11中的模拟电路功能部分,对于SOC芯片11中的数字电路功能部分进行仿真,减少用户程序的修改以及改造SOC芯片11带来的资源浪费。
可编程器件14用于接收外部PC机发送的操作指令,利用SOC芯11提供的模拟电路功能,并仿真SOC芯片11的数字电路功能执行上述操作指令。
存储单元13用于存储SOC芯片仿真系统的相关数据,比如用户程序等。
具体地,本实施例SOC芯片仿真系统为了实现对SOC芯片11的真实仿真,仅利用了SOC芯片11中的模拟电路部分功能,而将SOC芯片11中的数字电路功能分离出来,通过可编程器件14仿真SOC芯片11的数字电路功能,在对外部PC机发来的操作指令进行相应操作时,可编程器件14与SOC芯片11进行数据通信,利用SOC芯片11提供的模拟电路功能,并仿真SOC芯片11的数字电路功能执行上述操作指令。
本实施例可编程器件14包括:数字电路单元141以及控制单元142,其中:
数字电路单元141与SOC芯片11的数字电路完全兼容,时序也完全一样,数字电路单元141用来替代SOC芯片11中的数字电路,以达到仿真SOC芯片11的数字电路功能的目的;
控制单元142用于对外部PC机发来的操作指令进行译码,并根据操作指令控制SOC芯片11、数字电路单元141以及存储单元13进行相应操作,根据操作指令的不同,控制单元142还会将操作指令的执行结果反馈给外部PC机。
上述操作指令包括程序运行、停止、单步运行、断点控制、芯片复位以及将用户程序写入存储单元等。
以单步运行操作指令为例,当用户需要调试程序时,通过外部PC机上的相关按钮操作PC机,PC机通过通信单元12向可编程器件14中的控制单元142发送单步运行的操作指令,控制单元142对接收的操作指令进行译码,译码的过程即为对操作指令进行分析解码的过程,通过分析,控制单元142确认操作指令为单步运行指令,则对其他相关单元进行控制,具体控制过程为:控制单元142控制数字电路单元141执行一条命令后停止运行,若上述单步运行指令与SOC芯片11的模拟电路有关,控制单元142则通过与SOC芯片11通信,改变SOC芯片11中模拟电路的有关状态和参数;同理,若上述单步运行指令与存储单元13有关,控制单元142则控制存储单元13进行相应的数据存储与读取操作。
本实施例中存储单元13可以为SRAM(静态只读存储器)、FLASH(闪存)或E2PROM(可擦出可编程存储器)等。
通信单元12可以为USB(Universal Serial BUS,通用串行总线)接口或RS-232C接口等。其中,RS-232C为标准协议,其全称是EIA-RS-232C标准,其中EIA(Electronic Industry Association)代表美国电子工业协会,RS(ecommeded standard)代表推荐标准,232是标识号,C代表RS232的最新一次修改(1969年),在这之前,有RS232B、RS232A。目前在PC机上的COM1、COM2接口即为RS-232C接口。
本实施例通过仿真SOC芯片11的数字电路功能,并利用SOC芯片11的模拟电路功能实现对SOC芯片11的真实性仿真,本发明对SOC芯片11的仿真功能强大,灵活性强,仿真真实性好,并且成本低。
如图2所示,本发明一实施例提出一种仿真SOC芯片的方法,包括:
步骤S101,可编程器件接收外部PC机发送的操作指令;
当用户需要PC机执行某种操作,比如需要调试程序时,通过PC机向可编程器件发送相应的操作指令,该操作指令可以是程序运行、停止、单步运行、断点控制、芯片复位以及将用户程序写入存储单元等。
本实施例中,可编程器件通过通信单元与外部PC机进行通信,实现相关数据的传输。
其中通信单元可以为USB接口或RS-232C接口等。
步骤S102,对操作指令进行译码;
可编程器件收到外部PC机发来的相关操作指令后,对操作指令进行译码,译码的过程即为对操作指令进行分析解码的过程,通过分析,可编程器件即可根据操作指令进行相应操作,实现对SOC芯片的仿真。
步骤S103,利用SOC芯片提供的模拟电路功能,并仿真SOC芯片的数字电路功能执行操作指令。
本实施例中SOC芯片用于为可编程器件提供模拟电路仿真功能;SOC芯片中包含了微处理器/微控制器、存储器以及其他专用功能逻辑,其电路部分主要包括模拟电路以及数字电路部分,模拟电路部分主要体现SOC芯片的相关性能,比如电压等,数字电路部分主要体现SOC芯片的相关功能,比如定时器、看门狗电路以及PWM等,由于SOC芯片的模拟电路部分通常难以改变,难于仿真,而SOC芯片的数字电路部分通过相关协议可以很好的实现仿真。本实施例SOC芯片仿真系统保留了原有SOC芯片中的模拟电路功能部分,对于SOC芯片中的数字电路功能部分进行仿真,减少用户程序的修改以及改造SOC芯片带来的资源浪费。
可编程器件根据译码后的操作指令控制其中的数字电路功能部分执行相应的操作,若上述操作指令与SOC芯片的模拟电路有关,则可编程器件通过与SOC芯片进行通信,改变SOC芯片中模拟电路的有关状态和参数,以达到真实仿真SOC芯片的目的。根据操作指令的不同,可编程器件还会将操作指令的执行结果反馈给外部PC机;若涉及到相关数据的读取与存储,可编程器件还需要根据相应的操作指令控制外部存储单元对数据执行存储或读取等操作。
本实施例中可编程器件具体可包括数字电路单元及控制单元,数字电路单元与SOC芯片的数字电路完全兼容,时序也完全一样,数字电路单元用来替代SOC芯片中的数字电路,以达到仿真SOC芯片的数字电路功能的目的;控制单元用来对外部PC机发来的操作指令进行译码,并根据操作指令控制SOC芯片、数字电路单元以及外部的存储单元进行相应操作,根据操作指令的不同,控制单元还会将操作指令的执行结果反馈给外部PC机。
以单步运行操作指令为例,当用户需要调试程序时,通过外部PC机上的相关按钮操作PC机,PC机通过通信单元向可编程器件中的控制单元发送单步运行的操作指令,控制单元对接收的操作指令进行译码,译码的过程即为对操作指令进行分析解码的过程,通过分析,控制单元确认操作指令为单步运行指令,则对其他相关单元进行控制,具体控制过程为:控制单元控制数字电路单元执行一条命令后停止运行,若上述单步运行指令与SOC芯片的模拟电路有关,控制单元则通过与SOC芯片通信,改变模拟电路的有关状态和参数;同理,若上述单步运行指令与存储单元有关,控制单元则控制存储单元进行相应的数据存储与读取操作。
本实施例中存储单元可以为SRAM、FLASH或E2PROM等。
本发明实施例SOC芯片仿真系统及方法,通过仿真SOC芯片的数字电路功能,并利用SOC芯片的模拟电路功能实现对SOC芯片的真实性仿真,对SOC芯片的仿真功能强大,灵活性强,仿真真实性好,并且成本低。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。