执行来自多个指令源的指令的处理器和方法

文档序号:6469514阅读:513来源:国知局
专利名称:执行来自多个指令源的指令的处理器和方法
技术领域
本发明一般涉及执行来自多个指令源的指令的处理器和方法,更具体地说,它涉及内部处理器,其中内部处理器的执行过程由外部处理器来控制。
先有技术说明传统处理器即CPU通常包括至少一个处理单元和一个控制单元,这些单元包括各种处理和控制电路,还包括一组寄存器,用于暂时存储指令、存储器地址以及数据等。控制单元中的控制电路负责包括如下步骤的机器或指令周期取指令、对操作码进行解码以及将信息路由选择到预定的实体,并为CPU的全部操作提供适当的控制信号。程序指令和数据从主存储器中取出。
但是在某些情况下,却需要对集成在通用芯片或专用芯片上的处理器进行控制。例如,在芯片的测试阶段或者甚至在芯片的实操作中,需要完全控制处理器的执行过程并读取处理器的内部状态信息。
美国专利US-A-5410544公开了一种设备,它用于测试包含了经内部总线与寄存器相连接的内部处理器的装置。在一个实施例中,这种设备对带有内部处理器的快闪存储器单元提供外部控制。对内部处理器进行编程,使其能够执行一种算法,该算法在被执行时会对所述装置进行操作。当内部处理器执行算法时,内部总线被内部处理器用来访问状态数据。该设备包括设置在所述装置外部的外部处理器、设置在所述装置上的接口和开关。该接口与内部和外部处理器相连接,用于接收许多来自外部处理器的命令。可以从外部处理器发送到接口单元的指令的示例是读取状态或读取存储器。这些命令中包含了能够指示内部处理器去执行储存在内部处理器中的算法的能力。通过发出另一个命令,即“陷阱门”命令,外部处理器就可以控制某些寄存器,从而由内部处理器来模拟算法的执行。
发明概述根据本发明,提供一种布置在芯片上的改进内部处理器,它允许以透明且有效的方式从外部处理器来进行控制。
这个目的可以由内部处理器来实现,使得可以按照本发明执行来自多个指令源的指令。布置在内部处理器中的接口可以与至少一个外部指令源相连接,使得可以交错执行来自多个指令源的指令,执行过程由外部指令源来控制。
本发明的一个优点在于外部处理器可以有效地控制内部处理器的操作,并可以用内部处理器同样的方式来访问内部处理器的内部状态。
附图简述为了更详细地说明本发明及其优点和功能,下面将结合附图对最佳实施例进行详细说明,附图中

图1是根据本发明的内部处理器框图,该处理器与外部处理器相连接;和图2是图1中内部处理器中指令周期的流程图。
发明详细说明参考图1,图1中说明了一个能够解释并执行程序的处理器或CPU1。在某些情况下,这种处理器集成在通用芯片或专用芯片上。因此,根据本发明的处理器就称作内部处理器。根据本发明的内部处理器被设计成由另一个称作外部处理器2的处理器来控制。
与通用处理器类似,本发明的一个实施例包括数据处理单元3和程序控制单元4。处理单元3又包括各种处理电路(图中未标出),控制单元4包括各种控制电路5。高速寄存器也包含在处理器1中,用于暂时储存指令、存储器地址以及数据。控制单元4取指令、对操作码进行解码以及生成用于处理器其它组件的控制信号并通过处理器各部分(寄存器、存储器等)来对数据和信息进行路由。为了使各元件保持同步,时钟电路(图中未示出)被用来产生定时信号。
在实施例中,程序和数据储存在主存储器和片上(on chip)主存储器6中。数据传送在存储器6和数据寄存器7之间进行,所用的存储器地址储存在地址寄存器8中。要解码及执行的指令的操作码储存在指令寄存器9中。要执行的下一条指令的地址储存在另一个称作程序计数器10的寄存器中。
在处理器的指令周期期间出现连续动作或操作,将在图2的流程图中进行说明。
根据本发明,如果指令已由外部处理器2提供,则要执行的下一条指令(操作码或操作数)则从接口11中取出,并加载到控制单元4的指令寄存器9中。外部处理器可以为内部处理器1提供连续指令,即指令流。但是,如果外部处理器2没有提供任何指令,则下一条指令则从主存储器6、RAM或高速缓冲存储器中取出。该指令由控制电路5来进行解码和解释,并由数据处理单元来执行。结果保存在数据处理单元3的适当寄存器中或主存储器6中。
这样,通过两种指令源,即主存储器6和经接口11连接的外部处理器2,提供了两种不同的指令流。这两种指令流几乎是完全独立的。程序计数器10是可用于两种指令流之间的唯一直接交互作用(theonly direct interaction)。
当指令由外部处理器提供时,这些指令由内部处理器经接口11取出并执行。如果外部处理器2没有再提供指令,则为内部处理器1的程序计数器提供下一条指令的地址,内部处理器1的正常操作继续进行。在取出下一条指令之后,程序计数器10自动递增。因此,外部处理器2可以有效地控制内部处理器的操作。但反过来却不行。
为了进行适当的操作,外部处理器在某些情况下可能需要接口11的反馈信息。
尽管通过本发明的具体实施例描述了本发明,然而显然本发明提供了一种完全能满足上述目标和优点的处理器,或者,对本领域的技术人员来说,显然可以进行修改和变化。
如上所述,在本发明的其它实施例中,处理器可以是通用或专用芯片的一部分。这样,在某些情况下的处理器具有完全不同的设计并例如包括诸如专用寄存器的附加寄存器,以方便分支控制;提供对一个以上指令进行同时处理的装置;以及各种数据处理能力等。但是,处理器仍具有某种接口,使得所述处理器可以至少从两种不同源获取其指令,其中一种源控制内部处理器的执行过程。
权利要求
1.一种用于执行来自多个指令源(2;6)的指令的内部处理器,其特征在于接口装置(11)可连接到至少一个外部指令源(2),允许交错执行来自所述指令源(2;6)的指令,其执行过程由所述外部指令源进行控制。
2.根据权利要求1的内部处理器,其特征在于所述接口(11)连接到所述内部处理器(1)的程序寄存器(10),用于由所述外部指令源(2)对所述内部处理器(1)执行顺序控制。
3.根据权利要求1或2的内部处理器(1),其特征在于所述接口(11)连接到所述内部处理器(1)的指令寄存器(9),用于由所述外部指令源(2)对所述内部处理器(1)执行顺序控制。
4.根据上述权利要求中任何一项的内部处理器(1),其特征在于所述处理器获取指令的主存储装置(6)。
5.根据上述权利要求中任何一项的内部处理器(1),其特征在于外部处理器连接到所述接口(11)并提供指令给所述内部处理器(1)。
6.一种在内部处理器(1)中执行来自多个指令源(2;6)的指令的方法,其特征在于所述方法包括以下步骤对于外部指令源(2)提供的每条指令,对所述指令进行解码并执行;不然从另一个指令源(6)取指令,对所述指令进行解码并执行。
7.根据权利要求6的方法,其特征在于包括以下步骤从由所述外部指令源(2)确定的所述另一个指令源(6)的存储单元取指令。
全文摘要
一种用于执行来自多个指令源(2;6)的指令的内部处理器(1),其中,接口装置(11)可连接到至少一个外部指令源(2),允许交错执行来自指令源(2;6)的指令,其执行过程由外部指令源进行控制。
文档编号G06F15/78GK1337023SQ00802820
公开日2002年2月20日 申请日期2000年1月13日 优先权日1999年1月18日
发明者S·桑德斯特伦, S·伦德贝里 申请人:安讯士公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1