处理器系统、处理器以及运算处理方法

文档序号:6359350阅读:206来源:国知局
专利名称:处理器系统、处理器以及运算处理方法
技术领域
本发明涉及可更新存储于第1程序存储部的第1程序的至少其中一部分,或可调试的处理器系统、处理器以及运算处理方法。
背景技术
单片微型计算机(以下称单片微机)往往在内部具备带屏蔽的ROM。这种带屏蔽的ROM在制造时预先装入微代码,但由于这种带屏蔽的ROM不能改写,故一旦微代码有错误时,微机本身就必须调换,维修性能差,微代码校正时的花费大。
为解决上述问题,当程序ROM内的微代码存在错误时,能只更新该错误所在的处理器系统已付之实用。
这种现有的处理器系统中,具备存储改错后的微代码的程序RAM,存储程序ROM中的微代码的错误地址的ROM地址寄存器,存储程序RAM中应执行的地址的强制转移目的地pc寄存器,判断程序计数器是否与存储于ROM地址寄存器的错误地址一致的地址比较器,在判定为一致时将程序计数器的值变更为强制转移目的地pc寄存器的值。这样,开始执行存储于程序RAM中的正确的微代码。
然而,当微代码中存在多个错误时,必须在每个错误所在处设置ROM地址寄存器与强制转移目的地pc寄存器,电路规模变得大了。
此外,这种现有的处理器系统只是将错误的微代码置换成正确的微代码,而不具备调试程序ROM中的微代码的功能。因此,为了进行微代码的调试,必须增加调试专用电路,相应的电路规模变大了。

发明内容
本发明的处理器系统,具备收纳第1程序的第1程序存储部;收纳第2程序的第2程序存储部;输出所述第1及第2程序的执行地址的程序计数器;存储所述第1程序中的第1地址的第1地址存储部;存储所述第2程序中的第2地址的第2地址存储部;判断所述程序计数器与所述第1地址是否一致的比较部;当所述比较部判断为一致时,变更所述程序计数器为所述第2地址的地址变更部;及更新所述第1地址存储部存储的所述第1地址与所述第2地址存储部存储的所述第2地址用的数据总线。
本发明的处理器,具备输出第1程序存储部存储的第1程序与第2程序存储部存储的第2程序的执行地址的程序计数器,判断所述程序计数器与第1地址存储部存储的所述第1程序中的第1地址是否一致的比较部,当所述比较部判断为一致时,将所述程序计数器变更为所述第2地址存储部存储的所述第2程序中的第2地址的地址变更部,更新所述第1地址存储部存储的所述第1地址、所述第2地址存储部存储的所述第2地址用的数据总线。


图1为本发明的处理器系统的一实施形态的框图。
图2为示出图1的处理器系统的处理动作的流程图。
图3为示出这种命令串之一例。
图4示出进行调试时的处理顺序的流程图。
具体实施方法以下参照附图具体说明本发明的处理器系统、处理器以及运算处理方法。
图1为本发明的处理器系统的一实施形态的框图。图1的处理器系统具备收纳微代码本身的程序ROM1,对微代码所含各命令进行译码的指令译码器2,收纳用于校正微代码中错误处的经更新的微代码的程序RAM3,存储表示程序ROM1所收纳的微代码中的错误处的地址的ROM地址寄存器4,输出微代码的执行地址的程序计数器5,存储微代码中有错误时的转移目的地地址的强制转移目的地pc寄存器6,检测ROM地址寄存器4所存储的地址与程序计数器5是否一致的地址比较部7,在两地址一致时将程序计数器5变更为转移目的地地址的选择器8,以及在外部之间进行数据收发的微机IF部9(外部IF部)。
图1的处理器系统中,指令译码器2、ROM地址寄存器4、强制转移目的地pc寄存器6及微机IF部9连接到共同的数据总线上。
图1的全部构成可以收纳在单片的IC内,也可以将芯片构成分为处理器与外部存储器。在划分芯片构成时,处理器上设置例如图1的指令译码器2、ROM地址寄存器4、程序计数器5、强制转移目的地pc寄存器6、地址比较部7、选择器8以及微机IF9。
图2为示出图1的处理器系统的处理动作的流程图。以下参照图1及图2说明本实施形态的处理动作。在以下的说明中设程序ROM1中的微代码有多个错误。
首先,将表示微代码中时间上最早的错误处的ROM地址从外部经由微机IF部9与数据总线10存储到地址寄存器4。同样,将存储经更新的微代码的程序RAM3的地址从外部经由微机IF部9与数据总线10存储到强制转移目的地pc寄存器6(步骤S1)。
其后,程序计数器5开始计数动作(步骤S2)。以程序计数器5作为地址从程序ROM1读出命令,用指令译码器译码,执行命令(步骤S3)。
与此同时,地址比较部7检测程序计数器5与ROM地址寄存器4所存储的ROM地址是否一致(步骤S4),如不一致,返回上述步骤S2、S3的处理。
如在步骤S4中检测出为一致时,选择器8便变更程序计数器5为强制转移目的地pc寄存器6所存储的强制转移目的地地址(步骤S5)。
强制转移目的地地址指明了程序RAM3中经更新的微代码,所以在以后执行程序RAM 3中的经更新的微代码来取代程序ROM1中错误的微代码。
此外,ROM地址寄存器4中存储表示程序ROM1中的微代码的下一个错误处的地址。同样,强制转移目的地pc寄存器6中存储程序RAM3中的经更新的微代码的地址(步骤S6)。然后返回步骤S2~S6的处理。
作为上述步骤S1和S6中将地址存储到ROM地址寄存器4或强制转移目的地pc寄存器6中的方法,有如上述的自外部供给的地址经由微机IF与数据总线10存储到各寄存器的方法与按照程序RAM3中的程序存储到各寄存器的方法。
在后者的情况下,例如在程序RAM3中的程序中事先记录了存储ROM地址寄存器4或强制转移目的地pc寄存器6的地址的命令。
图4示出这种命令串之一例。图3的例中首先在程序计数器5为000时,将100地址号码的地址存到ROM地址寄存器4。程序计数器变5为001时,将10地址号码的地址存到强制转移目的地pc寄存器6。程序计数器5为002时,允许强制转移。程序计数器5变为003时,转移到80地址号码,执行经更新的程序。
然后,程序计数器5到010时,将下一个错误处存到ROM寄存器,在011时存储强制转移目的地pc寄存器6。以后,程序计数器5到达030时也作同样处理。
这样,本实施形态中由于设计成能经由数据总线10将多种地址反复存储到ROM地址寄存器4与强制转移目的地pc寄存器6,故即使程序ROM1中的微代码存在多个错误,也可不增大电路规模,执行与各错误对应的更新微代码。因此程序的维护性变好。
图1的处理器系统也可用于程序ROM1的调试。这时,利用来自如图1的虚线所示的连接于微机IF的主计算机11的指示来进行调试。调试中有两种方法只断开程序ROM1内的指定地址位置进行调试的方法与每一步骤地执行程序ROM1内的程序的方法。
前者的情况用图4的处理次序进行调试。
首先,根据主计算机11经微机IF的指示将调试程序存入程序RAM3中(步骤S11)。其次,根据主计算机11经微机IF的指示将进行程序ROM1内的调试的起始地址存入ROM地址寄存器4。同样,将调试时的转移方地址(这时为程序RAM3内的调试程序的起始地址)存到强制转移目的地pc寄存器6(步骤S12)。
接着,开始执行程序ROM1内的程序(步骤S13)。当程序计数器5与ROM地址寄存器4的值一致时,就根据强制转移目的地pc寄存器6的值执行程序RAM3内的调试程序(步骤S14)。
这种调试程序中例如执行将任意的存储器及寄存器的值经由微机IF传送到主计算机11那样的处理。这样,能对程序ROM1内的任意的地址范围进行调试(步骤S15)。此外,在调试程序中,也可将新的值存到ROM地址寄存器4与强制转移目的地pc寄存器6,也可以对程序ROM1内的多个地址连续地进行调试。
在调试程序中,进行利用间接寻址或堆栈的返回,回到原来的程序ROM1的处理(步骤S16)。以下重复步骤S13~S16的处理。
在每1步骤都执行程序ROM1内的程序的情况下,上述步骤S11~S14的次序是相同的。在步骤S14开始执行调试程序后,在调试程序中使ROM地址寄存器4加1。接着重复步骤S13以后的处理。
这样,根据本实施形态,即使没有设置调试用的专用硬件,也可以进行程序ROM1内的程序的调试。因此,程序的开发变得容易。
权利要求
1.一种处理器系统,其特征在于,具备收纳第1程序的第1程序存储部;收纳第2程序的第2程序存储部;输出所述第1及第2程序的执行地址的程序计数器;存储所述第1程序中的第1地址的第1地址存储部;存储所述第2程序中的第2地址的第2地址存储部;判断所述程序计数器与所述第1地址是否一致的比较部;当所述比较部判断一致时,变更所述程序计数器为所述第2地址的地址变更部;更新所述第1地址存储部存储的所述第1地址与所述第2地址存储部存储的所述第2地址用的数据总线。
2.如权利要求1所述的处理器系统,其特征在于,具备命令译码器,用于将从所述第1及第2的程序存储部读出的命令译码后的结果供给所述数据总线,根据所述命令译码器的出力更新所述第1地址存储部存储的所述第1地址与所述第2地址存储部存储的所述第2地址。
3.如权利要求2所述的处理器系统,其特征在于,所述第1程序包含用于将多种所述第1地址分别存储到所述第1地址存储部的多个命令,和用于将多种所述第2地址分别存储到所述第2地址存储部的多个命令;所述第1地址存储部按照所述第1程序分别在不同的时刻依次存储多种所述第1地址;所述第2地址存储部按照所述第1程序分别在不同的时刻依次存储多种所述第2地址。
4.如权利要求1所述的处理器系统,其特征在于,具备接口部,用于进行将外部供给的所述第1及第2地址通过所述数据总线存储到所述第1及第2程序存储部的控制。
5.如权利要求1所述的处理器系统,其特征在于,所述第1程序存储部是ROM,所述第2程序存储部是可改写的存储器,所述第2程序是用于更新所述第1程序的至少其中一部分的程序。
6.如权利要求1所述的处理器系统,其特征在于,所述第2程序是用于进行所述第1程序中的任意地方的调试的调试程序,所述第1地址是进行所述第1程序中调试的地方的起始地址,所述第2地址是所述调试程序的起始地址。
7.如权利要求6所述的处理器系统,其特征在于,具备接口部,用于进行将来自外部经由所述数据总线供给的所述第2程序、所述第1地址以及所述第2地址分别存储在所述第2程序存储部、所述第1地址存储部以及所述第2地址存储部的控制,同时进行将所述调试程序的执行结果供给外部的控制。
8.一种处理部,其特征在于,具备输出第1程序存储部存储的第1程序与第2程序存储部存储的第2程序的执行地址的程序计数器,判断所述程序计数器与第1地址存储部存储的所述第1程序中的第1地址是否一致的比较部,当所述比较部判断为一致时,将所述程序计数器变更为所述第2地址存储部存储的所述第2程序中的第2地址的地址变更部,更新所述第1地址存储部存储的所述第1地址、所述第2地址存储部存储的所述第2地址用的数据总线。
9.如权利要求8所述的处理器,其特征在于,具备将从所述第1及第2程序存储部读出的命令经译码后的结果供给所述数据总线的命令译码器,根据所述命令译码器的输出更新所述第1地址存储部存储的所述第1地址与所述第2地址存储部存储的所述第2地址。
10.如权利要求9所述的处理器,其特征在于,所述第1程序包含将多种所述第1地址分别存储于所述第1地址存储部用的多个命令与将多种所述第2地址分别存储于所述第2地址存储部用的多个命令,具备按照所述第1程序分别以不同的时刻进行将多种所述第1地址依次存储到所述第1地址存储部的控制的第1地址存储控制部,与按照所述第2程序分别以不同的时刻进行将多种所述第2地址依次存储到所述第2地址存储部的控制的第2地址存储控制部。
11.如权利要求8所述的处理器,其特征在于,具备进行将外部供给的所述第1及第2地址通过所述数据总线存储到所述第1及第2程序存储部的控制的接口部。
12.如权利要求8所述的处理器,其特征在于,所述第1程序存储部是ROM,所述第2程序存储部是可改写的存储器,所述第2程序是更新所述第1程序的至少其中一部分用的程序。
13.如权利要求8所述的处理器,其特征在于,所述第2程序是进行所述第1程序中的任意地方的调试用的调试程序,所述第1程序是进行所述第1程序中的调试的地方的起始地址,所述第2地址是所述调试程序的起始地址。
14.如权利要求13所述的处理器,其特征在于,具备进行将通过数据总线从外部供给的所述第2程序、所述第1地址以及所述第2地址分别存储到所述第2程序存储部、所述第1地址存储部以及所述第2地址存储部的控制,同时进行将所述调试程序的执行结果供给外部的控制的接口部。
15.一种运算处理方法,其特征在于,从程序计数器输出第1程序存储部存储的第1程序与第2程序存储部存储的第2程序的执行地址,判断所述程序计数器是否与第1地址存储部存储的所述第1程序中的第1地址一致,如判断一致时,就将所述程序计数器变更为所述第2地址存储部存储的所述第2程序中的第2地址。
16.如权利要求15所述的运算处理方法,其特征在于,将从所述第1及第2程序存储部读出的命令经命令译码器译码后的结果供给所述数据总线,根据所述命令译码器的输出更新所述第1地址存储部存储的所述第1地址与所述第2地址存储部存储的所述第2地址。
17.如权利要求16所述的运算处理方法,其特征在于,所述第1程序包含用于将多种所述第1地址分别存储于所述第1地址存储部的多个命令与用于将多种所述第2地址分别存储于所述第2地址存储部的多个命令,按照所述第1程序,分别在不同的时刻进行将多种所述第1地址依次存储到所述第1地址存储部的控制,按照所述第2程序,分别在不同地时刻进行将多种所述第2地址依次存储到所述第2地址存储部的控制.
18.如权利要求15所述的运算处理方法,其特征在于,进行将从外部供给的所述第1及第2地址经所述数据总线存储到所述第1及第2程序存储部的控制。
19.如权利要求15所述的运算处理方法,其特征在于,所述第1程序存储部是ROM,所述第2程序存储部是可改写的存储器,所述第2程序是更新所述第1程序的至少其中一部分用的程序。
20.如权利要求15所述的运算处理方法,其特征在于,所述第2程序是进行所述第1程序中的任意地方的调试用的调试程序,所述第1地址是进行所述第1程序中的调试的地方的起始地址,所述第2地址是所述调试程序的起始地址。
21.如权利要求20所述的运算处理方法,其特征在于,进行将来自外部经所述数据总线供给的第2程序、所述第1地址以及所述第2地址分别存储到所述第2程序存储部、所述第1地址存储部以及所述第2地址存储部的控制,同时进行将所述调试程序的执行结果供给外部的控制。
全文摘要
本发明的处理器系统,具备收纳第1程序的第1程序存储部;收纳第2程序的第2程序存储部;输出所述第1及第2程序的执行地址的程序计数器;存储所述第1程序中的第1地址的第1地址存储部;存储所述第2程序中的第2地址的第2地址存储部;判断所述程序计数器与所述第1地址是否一致的比较部;当所述比较部判断为一致时,变更所述程序计数器为所述第2地址的地址变更部;更新所述第1地址存储部存储的所述第1地址与所述第2地址存储部存储的所述第2地址用的数据总线。
文档编号G06F11/36GK1497460SQ03127238
公开日2004年5月19日 申请日期2003年9月30日 优先权日2002年9月30日
发明者若杉纯 申请人:株式会社东芝
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1