模拟器及模拟方法技术

技术编号:2863780 阅读:198 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种用软件模拟处理器的动作的模拟器。该模拟器包括:进行输入命令的解析/处理的命令输入部件(111);存储处理器的执行命令和数据的寄存器单元(100);存储运算用数据的寄存器单元(101);根据执行命令而访问存储器单元及寄存器单元的控制单元(102);存储指定的资源信息和每个资源信息的R/W信息的资源信息存储部件(103);将对控制单元中的存储器单元和寄存器单元的访问目的地及R/W类别与存储于资源信息存储部件中的资源信息及R/W信息进行比较,进行访问目的地是否由资源信息及R/W信息许可的资源访问分析的资源访问分析部件(104)。

【技术实现步骤摘要】

本专利技术涉及用软件模拟DSP(Digital Signal Processor)等处理器的动作的模拟器(simulator)及其相关技术。
技术介绍
在面向合并的软件开发中,采用以下的过程。首先,用C/C++等高级语言来记述源码。此外,对于重视性能(处理量、资源使用量等)的部分,进行使用汇编语言的编码。接着,将编码后的软件在模拟作为靶的DSP等资源(寄存器、存储器等)和动作的模拟器上执行,进行源码的调试等。这里,模拟器在调试时使用,具有在个人计算机(PC)和工作站(WS)等主处理器上进行动作,使执行中的软件按某一定时停止,参照各种资源(寄存器、存储器等)的状态,同时将值置位(set)在各种资源中等的功能。而在专利文献1(日本特开平5-233317号公报)公开了具有在软件执行后,显示对预先用命令指定的存储器进行写入的函数名的功能的模拟器。以下,说明专利文件1公开的软件模拟器。图33(a)是专利文献1的软件模拟器的流程图,图33(b)表示由专利文件1公开的软件模拟器编制的区域访问用表。在图33(a)的步骤3300中,输入命令,在步骤3301中,输入的命令被解析。解析的结果,如果输入的命令是区域访问命令,则在步骤3303中进行区域访问的处理。在步骤3303中,在输入的命令为setacc命令的情况下,根据用命令指定的地址信息,编制图33(b)所示的区域访问用表3308。而在输入的命令不是setacc命令,而是getacc命令的情况下,在区域访问用表3308中,显示与用命令指定的地址信息一致的函数名。接着,在步骤3304中,进行是否为命令的执行命令的判定,在不是命令的执行命令时,处理返回步骤3300。在是命令的执行命令时,在步骤3305中命令被执行,在步骤3306中,进行是否在用setacc命令指定的区域中进行写入的判定。在步骤3306中,判定执行的命令是否为存储器访问命令,在不是存储器访问命令的情况下处理结束。在执行的命令是存储器访问命令,写入目的地包含在存储于区域访问用表3308中的地址信息的情况下,包含执行命令的函数名被存储在区域访问用表3308中。接着,在步骤3307中,判断命令的执行是否结束,在继续进行命令的执行时,处理进至步骤3305,在结束的情况下,处理返回步骤3300。按以上那样的结构,专利文献1的模拟器在软件执行后,显示向预先用命令指定的存储器进行写入的函数名。但是,在现有的模拟器中,不具备软件开发者检验没有意图的对资源(寄存器、存储器等)的访问(读取、写入)的功能,以及检验对资源(寄存器、存储器等)的访问时的数据是否为软件开发者意图的值的功能。在由于没有意图的访问和数据(读取、写入)而使软件产生异常动作时,软件开发者重复进行软件的执行、停止、资源状态的参照,需要鉴别软件上的问题场所,软件开发效率显著下降。此外,现有的模拟器在模拟时,以执行命令为单位,具有某一命令是否被执行的检验和保留历史的功能。但是,在执行命令为按照某一寄存器值而切换处理(例如寄存器值为0时分支到指定的地址等)的附带条件命令的情况下,由于没有检验附带条件命令在什么条件下执行的功能,所以不能确认开发的软件在所有条件下是否进行有意图的动作。在专利文献1中公开的软件模拟器中,也不能检验对寄存器的访问及来自存储器的读取。而且,即使对于对存储器的写入,仅在软件执行后显示函数名的历史,所以不能鉴别有问题的写入在哪儿。
技术实现思路
本专利技术的第一目的在于,提供能够提高软件开发效率的模拟器。本专利技术的第二目的在于,提供能够提高开发的软件的完成性的模拟器。第一专利技术的模拟器用多个模拟单元表现包含处理器的单元,从而模拟处理器的动作,多个模拟单元具有表现存储处理器的执行命令和数据的存储器的存储器单元;表现处理器的寄存器的寄存器单元;以及表现对存储器单元和/或寄存器进行访问的控制器的控制单元。模拟器包括对输入的命令进行解析并操作多个模拟单元的命令输入部件;以及检验控制单元对存储器单元和/或寄存器单元进行访问的资源访问的部件。在第二专利技术的模拟器中,检验资源访问的部件包括存储资源信息的资源信息存储部件,资源信息包含存储器单元的存储区范围和存储器单元的读写类别、寄存器单元的寄存器类别和寄存器单元的读写类别;以及资源访问分析部件,参照资源信息来分析资源访问是否合适。在第三专利技术的模拟器中,资源信息由命令指定。在第四专利技术的模拟器中,资源信息被作为数据来准备,数据由命令指定。在第五专利技术的模拟器中,资源信息存储部件还存储处理器的执行命令的地址范围信息,资源访问分析部件还参照处理器的执行命令的地址范围信息来分析执行命令是否合适。根据这些结构,预先指定执行命令地址范围、许可访问的资源、访问类别(读取、写入)等的分配信息,可以进行命令的执行。因此,可以检测违反指定的分配信息的处理,并通知软件开发者。其结果,在因软件的问题而产生没有意图的对资源的访问时,容易鉴别问题场所,提高软件开发效率。第六专利技术的模拟器用多个模拟单元表现包含处理器的单元,从而模拟处理器的动作,多个模拟单元具有表现存储处理器的执行命令和数据的存储器的存储器单元;表现处理器的寄存器的寄存器单元;以及表现对存储器单元和/或寄存器进行访问的控制器的控制单元。模拟器包括对输入的命令进行解析并操作多个模拟单元的命令输入部件;以及检验控制单元对存储器单元和/或寄存器单元进行访问的数据访问的部件。在第七专利技术的模拟器中,检验数据访问的部件包括存储数据信息的数据信息存储部件,数据信息包含存储器单元的存储区范围和存储器单元的读写类别、寄存器单元的寄存器类别和寄存器单元的读写类别;以及数据访问分析部件,参照数据信息来分析数据访问是否合适。在第八专利技术的模拟器中,数据信息由命令指定。在第九专利技术的模拟器中,所述数据信息被作为数据而准备,数据由命令指定。在第十专利技术的模拟器中,数据信息存储部件还存储处理器的执行命令的地址范围信息,数据访问分析部件还参照处理器的执行命令的地址范围信息来分析执行命令是否合适。根据这些结构,预先指定执行命令地址范围、许可访问的资源、数据范围(最小值、最大值)等的模拟信息,进行命令的执行。因此,可以检测与违反了指定的模拟信息的处理,可以通知软件开发者。其结果,在因软件的问题,产生没有意义的对资源的数据访问时,容易鉴别问题场所,提高软件开发效率。在第十一专利技术的模拟器中,用多个模拟单元表现包含处理器的单元,从而模拟处理器的动作,多个模拟单元具有表现存储处理器的执行命令和数据的存储器的存储器单元;表现处理器的寄存器的寄存器单元;以及表现对存储器单元和/或寄存器进行访问的控制器的控制单元;模拟器包括对输入的命令进行解析并操作多个模拟单元的命令输入部件;以及检验存储器单元和/或寄存器单元是否在被初始化的部件。在第十二专利技术的模拟器中,检验存储器单元和/或寄存器单元是否被初始化的部件包括资源初始化信息存储部件,存储表示存储器单元和/或寄存器单元是否在被初始化的信息;以及资源初始化分析部件,参照资源初始化信息存储部件,分析控制单元在对存储器单元和/或寄存器单元进行访问时访问目的地是否被初始化。根据这些结构,准备对各资源的初始化信息,可在进行对资源的访问的命令执行时检测对未初始化资源的访问处理,并且可通知软件开发者。其结本文档来自技高网
...

【技术保护点】
一种模拟器,用多个模拟单元表现包含处理器的单元,从而模拟所述处理器的动作,其特征在于,所述多个模拟单元具有:表现存储所述处理器的执行命令和数据的存储器的存储器单元;表现所述处理器的寄存器的寄存器单元;以及表现 对所述存储器单元和/或所述寄存器单元进行访问的控制器的控制单元;所述模拟器包括:对输入的命令进行解析并操作所述多个模拟单元的命令输入部件;以及检验所述控制单元对所述存储器单元和/或所述寄存器单元进行访问的资源访问的部 件。

【技术特征摘要】
JP 2003-10-22 361914/031.一种模拟器,用多个模拟单元表现包含处理器的单元,从而模拟所述处理器的动作,其特征在于,所述多个模拟单元具有表现存储所述处理器的执行命令和数据的存储器的存储器单元;表现所述处理器的寄存器的寄存器单元;以及表现对所述存储器单元和/或所述寄存器单元进行访问的控制器的控制单元;所述模拟器包括对输入的命令进行解析并操作所述多个模拟单元的命令输入部件;以及检验所述控制单元对所述存储器单元和/或所述寄存器单元进行访问的资源访问的部件。2.如权利要求1所述的模拟器,其特征在于,检验所述资源访问的部件包括存储资源信息的资源信息存储部件,所述资源信息包含所述存储器单元的存储区范围和所述存储器单元的读写类别、所述寄存器单元的寄存器类别和所述寄存器单元的读写类别;以及资源访问分析部件,参照所述资源信息来分析资源访问是否合适。3.如权利要求1所述的模拟器,其中,所述资源信息由所述命令指定。4.如权利要求1所述的模拟器,其中,所述资源信息被作为数据来准备,所述数据由所述命令指定。5.如权利要求2所述的模拟器,其中,所述资源信息存储部件还存储所述处理器的执行命令的地址范围信息,所述资源访问分析部件还参照所述处理器的执行命令的地址范围信息来分析执行命令是否合适。6.一种模拟器,用多个模拟单元表现包含处理器的单元,从而模拟所述处理器的动作,其特征在于,所述多个模拟单元具有表现存储所述处理器的执行命令和数据的存储器的存储器单元;表现所述处理器的寄存器的寄存器单元;以及表现对所述存储器单元和/或所述寄存器进行访问的控制器的控制单元;所述模拟器包括对输入的命令进行解析并操作所述多个模拟单元的命令输入部件;以及检验所述控制单元对所述存储器单元和/或所述寄存器单元进行访问的数据访问的部件。7.如权利要求6所述的模拟器,其中,检验所述数据访问的部件包括存储数据信息的数据信息存储部件,所述数据信息包含所述存储器单元的存储区范围和所述存储器单元的读写类别、所述寄存器单元的寄存器类别和所述寄存器单元的读写类别;以及数据访问分析部件,参照所述数据信息来分析数据访问是否合适。8.如权利要求6所述的模拟器,其中,所述数据信息由所述命令指定。9.如权利要求6所述的模拟器,其中,所述数据信息被作为数据而准备,所述数据由所述命令指定。10.如权利要求7所述的模拟器,其中,所述数据信息存储部件还存储所述处理器的执行命令的地址范围信息,所述数据访问分析部件还参照所述处理器的执行命令的地址范围信息来分析执行命令是否合适。11.一种模拟器,用多个模拟单元表现包含处理器的单元,从而模拟所述处理器的动作,其特征在于,所述多个模拟单元具有表现存储所述处理器的执行命令和数据的存储器的存储器单元;表现所述处理器的寄存器的寄存器单元;以及表现对所述存储器单元和/或所述寄存器进行访问的控制器的控制单元;所述模拟器包括对输入的命令进行解析并操作所述多个模拟单元的命令输入部件;以及检验所述存储器单元和/或所述寄存器单元是否被初始化的部件。12.如权利要求11所述的模拟器,其中,检验所述存储器单元和/或所述寄存器单元是否被初始化的部件包括资源初始化信息存储部件,存储表示所述存储器单元和/或所述寄存器单元是否被初始化的信息;以及资源初始化分析部件,参照所述资源初始化信息存储部件,分析所述控制单元在对所述存储器单元和/或所述寄存器单元进行访问时访问目的地是否被初始化。13.一种模拟器,用多个模拟单元表现包含处理器的单元,从而模拟所述处理器的动作,其特征在于,所述多个模拟单元具有表现存储所述处理器的执行命令和数据的存储器的存储器单元;表现所述处理器的寄存器的寄存器单元;以及表现对所述存储器单元和/或所述寄存器进行访问的控制器的控制单元;所述模拟器包括对输入的命令进行解析并操作所述多个模拟单元的命令输入部件;以及检验所述控制单元执行的附带条件命令的执行状态的部件。14.如权利要求13所述的模拟器,其中,检验所述存储器单元执行的附带条件命令的执行状态的部件包括附带条件命令执行状态分析部件,在所述控制单...

【专利技术属性】
技术研发人员:近藤孝宏中村刚樽木麻衣子米泽友纪
申请(专利权)人:松下电器产业株式会社
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1