CN1078319A - 具有用于访问空闲模式的运行/停止端的微处理器 - Google Patents
具有用于访问空闲模式的运行/停止端的微处理器 Download PDFInfo
- Publication number
- CN1078319A CN1078319A CN92112044A CN92112044A CN1078319A CN 1078319 A CN1078319 A CN 1078319A CN 92112044 A CN92112044 A CN 92112044A CN 92112044 A CN92112044 A CN 92112044A CN 1078319 A CN1078319 A CN 1078319A
- Authority
- CN
- China
- Prior art keywords
- microprocessor
- code translator
- instruction
- streamline
- sequencer
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 18
- 238000012790 confirmation Methods 0.000 claims 4
- 238000011084 recovery Methods 0.000 claims 2
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 claims 1
- 230000004048 modification Effects 0.000 abstract 2
- 238000012986 modification Methods 0.000 abstract 2
- 230000006870 function Effects 0.000 description 19
- 230000008569 process Effects 0.000 description 4
- 238000003745 diagnosis Methods 0.000 description 3
- 238000011079 streamline operation Methods 0.000 description 3
- 239000002253 acid Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 238000004171 remote diagnosis Methods 0.000 description 2
- 150000007513 acids Chemical class 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
- G06F11/3656—Software debugging using additional hardware using a specific debug interface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3869—Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Microcomputers (AREA)
- Advance Control (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
一种具有空闲模式的微处理器。它提供能在外
部被确认的非常迅速的中断。芯片上的运行/停止
端被确认以便进入和保持空闲模式。设置了可被称
为“应答端”的附加端来指出微处理器何时处于空闲
状态。在一条指令执行之后、下一指令执行前,对空
闲模式确认,此时执行单元已结束对第一条指令的寄
存器、标志和存储器的修改,但还没有开始对下一条
指令进行这样的修改。在空闲模式,译码器不将指令
送到流水线功能块中。可设第二控制单元以及相应
端口,来将简单的指令直接发送给执行单元。
Description
本发明涉及微处理器。具体而言,本发明涉及能被外部电气端触发的微处理器的空闲状态。当该电气端信号被认定时,它进入微处理器被通电但不执行指令的空闲状态。本发明对硬件或软件的调试、远程诊断和多处理器的同步是有用的。
通常的微处理器在由编程人员确定的一系列指令的控制下运行。指令可以是存储在存储器中的宏指令,它们被传送给译码器,译码器将它们译码为一条或多条微指令序列。微指令是执行单元认识的一系列二进制数字。微指令从指令译码器被顺序地送往执行单元。
为了更快地运行,许多微处理器采用“流水线技术”,在这一技术中多条微指令被重叠执行。流水线包括被顺序执行的几个阶段。指令从一个阶段执行到另一个阶段;在一条指令完成一个阶段和移到下一个阶段之后,随后的指令就移入这一阶段去占据其位置。这样指令就被迅速地取指、译码和执行。流水线操作的一个实例是宏指令被译码为微指令,后者被顺序地传送给执行单元或“数据通道”,执行单元或“数据通道”执行这些微指令以便完成在微指令中规定的操作。执行单元可包括多个通用寄存器、运算单元(ALU)、控制寄存器和一些控制逻辑。经过流水线的指令流由中央控制单元来控制。
当在程序执行期间产生也许是由硬件故障或软件错误引起的问题时,例如,如果微处理器完全停止运行或者它开始输出无意义的数据,那么确定问题的原因也许非常困难。通常当出现一个软件错误时,软件调试程序是够用的。当出现硬件故障时,需要较低级别的机制,例如在线仿真器或其它硬件调试程序。
如果这个微处理器是安置在远距离处的计算机的一个部件,那么在用户用电话报告故障后,专家诊断会很困难。如果系统已停机,即已“崩溃”,也许就不能进行直接的键盘控制。即使键盘还能使用,而正在进行故障分析的专家可能实际上在另一个地方。在这种情况下,通常需要昂贵的服务请求。提供能在远距离处被诊断的微处理器是有益的。
特别是为了有助于确定问题的原因,提供不需要软件介入或控制而能由外部信号中止其运行的微处理器是有益的,这样就能对微处理器进行分析以便确定问题的原因。
当应用软件编程人员第一次开发一个程序时也可能出现问题。为了辅助应用软件编程人员进行开发,已开发了各种调试工具。调试工具可设置在计算机的硬件之中,或者它们可能就是一个软件-硬件的组合体。一种调试技术涉及在程序码的某些位置处设置断点。当在程序运行期间遇到断点时,断点可以在下一个合适的位置处暂停程序运行并将程序的运行转入到调试状态。因为程序运行的正常流动被断点所中断,所以断点可被看作一种中断。
当中断出现时,不管它由断点或任何其它类型的中断引起,通常都将指令指针的内容推入堆栈并且还保存一个或多个寄存器的内容。出于多种原因这一信息、指令指针以及某些寄存器的内容和标志也被保存下来。原因之一是处理器状态可能包含对被调用的子程序的成功运行必不可少的信息,例如指令指针、标志和条件代码。原因之二是保存这一中断信息很有用,当中断完成其操作后它能使程序在中断出现的地方恢复运行。保存这一中断信息需要时间,这样就减慢了中断处理过程。此外,保存寄存器或读出服务程序的指令的简单动作会干扰诊断,特别是在高速缓冲存储器一致性问题的场合中。
为了按照前面的方法暂停微处理器的运行,可以对“保持”端进行确认。保持端阻止微处理占用高速缓冲存储器和主存储器之间的存储器总线。保持端对DMA(直接存储器存取)操作尤其有用。但是,当保持端被确认后,微处理器继续运行直到它需要使用存储器总线为止,并且只在这里它才停止运行。因此,微处理器何处和何时将停止运行是不确定的。如果微处理器具有机载的高速缓冲存储器(微处理器常见的部件),不确定性就增大了。高速缓冲存储器通常存储用过的指令和数据。在一个具有高速缓冲存储器的微处理器中,有可能仅使用高速缓冲存储器的指令和数据就能进行相当长时间的各种操作而不需要对主存储器进行访问,在这种情况下,在保持端已被确认之后微处理器可能运行很长时间之后才停止。
本发明提供具有操作的空闲模式,即具有在指令之间的边界处存在的“空闲状态”的微处理器。在空闲状态中,译码器不对边界之外的另外的指令译码。但是,微处理器的其它许多功能仍然是可运行的。本发明对实现调试和远距离诊断系统是有用的,对同步并行运行的微处理器也是有用的。
此处描述的微处理器包括称为“运行/停止端”,即“R/S端”的电气端,该电气端被设置在微处理器芯片上以便接收电信号。微处理器包括流水线功能块,该功能块包括指令译码器、执行单元和中央控制单元,后者包括中断优先器和流水线定序器。中央控制单元监督和控制指令译码器并且利用它的流水线定序器来监督和控制经过流水线的指令的流动。R/S端被电连接到中央控制单元。具体而言,R/S端与中断优先器相接。设置了可称作“应答端”的附加端以便指出微处理器何时处于空闲状态。此外,可将附加的电路连接到微处理器的执行单元和控制单元以便在傍路指令指针更新时(作为译码和发送指令的一部分常常会这样做)直接由该电路提供指令和控制信息。
根据本发明的方法,R/S端被确认以便访问空闲模式。在R/S端被确认期间微处理器保持在空闲模式中。当R/S端不被确认时,指令执行从中断处恢复。空闲模式被确认时,在中断优先器中指示一高优先级的中断。结果是译码器在当前执行的指令完成之后暂停运行并“退回”到在流水线中的下一条指令的开始处,这样就将微处理器暂停在指令边界处。由于微处理器的流水线性质;退回是必要的,在流水线中,流水线的较早阶段在先前的指令已被结束执行之前就开始被执行。在运行被暂停之后,微处理器处于空闲模式中,应答端指示微处理器处于这一模式,在最佳实施例中,暂停指令译码器是由流水线定序器来完成的,它不允许把对译码器和执行单元之间的流水线的控制传送给译码器,这样就禁止译码器提供更多的指令。
“指令边界”是从执行单元的角度来观察的。指令边界可被定义为指令之间的这样的时刻,即当执行单元已为第一条指令修改完寄存器、标志和存储器,但还没有开始为流水线中的下一条指令修改寄存器、标志和存储器的时候。
在空闲模式中的指令边界处,当R/S端处于被确认时译码器不能发送另外的指令给执行单元,但时钟还正常运行并且微处理器的其它功能也是可运行的。控制是外部的;除了R/S端被解除确认外该端不能被滥用。
这种微处理器可包括附加电路,例如用于发送简单指令的第二控制单元。在空闲模式中,该第二控制单元可被用来直接给执行单元提供指令而绕过译码器。此外还可连接一个串行接口到第二控制单元以便在微处理器处于空闲模式时输入命令和其它信息。
本发明具有许多优点包括迅速中断以及由外部访问该中断等。本发明可在微处理器必须被中止运行的任何操作中得到应用。本发明对总线控制、调试、诊断、多处理器同步和直接存储器存取操作也是很有用的。
图1 是采用本发明的微处理器的方框图。
图2 是表示根据本发明构造的微处理器的运行方式的流程图。
图3 是流水线中的一系列指令的图表,以说明流水线操作和指令边界。
参看附图会更好地理解本发明,附图中相同的部分以相同的标号来标记。
本发明在Intel 80X 86系列中实施,因此根据其特定的体系结构来描述本发明。但是,本发明也可在其它微处理器的体系结构中实施,因此本发明不限于所描述的实施例。
参看图1,数字形式的电信号10被传送给运行/停止(R/S)端12。R/S端12被设置在标准微处理器芯片的外部,它在该微处理器外部即为通常形式的电气管脚。
设置了中央控制单元14以便执行为通常计算机所共有的各种功能。流水线功能块15由中央控制单元14控制。流水线功能块15可以是许多常规配置中的任一种,例如被广泛使用的Intel i486微处理器就包括典型的流水线功能块。
最佳实施例的流水线功能块15包括预取指单元17和指令译码器18,预取指单元17作为存储单元之间的宏指令传送的缓冲单元;还包括微代码存储器和定序器19,译码器18将从中取出微代码,以便将复杂的指令译码为一系列微指令,还有用于在译码器18和微代码存储器和定序器19之间进行选择的多路转换器20。多路转换器20的输出传送给执行单元22。
中央控制单元14包括中断优先器24。R/S端12连接在中断优先器24上,后者拥有可表明中断是否已被请求的标志。在中断优先器24内,R/S端12请求非常高级别的中断,该中断具有在指令边界处中止流水线功能块15运行的作用。指令边界处即指在当前执行的指令的执行结束和处理器状态(例如寄存器)已被更新之后。在最佳实施例中,中央控制单元14包括流水线定序器25,流水线定序器25控制经过流水线功能块15的指令的流动。为了在指令边界处暂停流水线功能块15,流水线定序器25允许以第一指令结束执行阶段,并更新处理器的状态。但是,流水线中的下一条指令将被阻滞,所以随后来的指令就不能执行完,译码器18随时准备再发送该条指令。事实上,中央控制单元14的流水线定序器25控制流水线功能块15,以便不再向执行单元22提供另外的指令。参照附图3,下面将更详细地说明流水线和指令边界。在其它的实施例中,可能采用不同的暂停指令译码器18运行的方法。例如,可以设置直接暂停指令译码器18的运行或阻止将下一条指令传送给译码器18的控制电路。
流水线功能块15和中央控制单元14通过交换信号进行通信。中央控制单元14能觉查出执行何时结束(指令边界已通过执行阶段),也能觉查出流水线功能块15何时停止运行。当检测到这一停止状态时,微处理器就进入空闲状态。然后,中央控制单元14将一信号传送给设置在微处理器外表面的应答端26。这一应答端26可与任何合适的检测器连接,例如用于检测空闲状态的传感器28。
执行单元22中有寄存器块30,后者包括通用寄存器、控制寄存器和其它适合于特定微处理器的寄存器。执行单元22还包括用来进行算术操作的算术逻辑单元(ALU)31。在典型的处理过程中,对于简单的宏指令,由译码器18将一系列微指令提供给执行单元22,或者如果宏指令很复杂就由微代码单元19来提供。例如,如果将要由译码器18译码的指令是复杂的,那么微代码定序器19就被要求提供微指令序列,它们被顺序地送往执行单元22以便执行。
流水线功能块15以任何常规的方式从存储器获得宏指令和数据,指令高速缓冲存储器32被用来将指令传送给预取指单元17。指令高速缓冲存储器32被连接到总线接口单元33,后者还被连接到数据高速缓冲存储器34、缓冲器36和主存储器38。指令高速缓冲存储器32、总线接口单元33、数据高速缓冲存储器34和缓冲器36是由中央控制单元14来控制的。
为了在微处理器处于空闲状态时将信息从外部信息源传入微处理器中,还可包括串行端口40。当指令译码器18不工作时串行端口40能够操作,因此串行端口40具有独立于微处理器的其它部件而执行通信功能的电路。可将第二控制单元42连接到串行端口40以便提供更多的功能,例如接收和存储可能通过串行端口40传送的数据和指令。第二控制单元42可以包括一些控制逻辑和一些用于存储指令、数据或其它有用信息的寄存器。在某些实施例中,第二控制单元42的电路可被包含在串行端口40的电路之中。
第二控制单元42通过多路转换器20与执行单元22相耦合。第二控制单元42还被连接到中央控制单元14以便提供控制和协议信息。在错误或故障的调试和诊断期间,第二控制单元42联合串行端口40为外部控制提供了有用的手段。
现在参看图2,它是说明由R/S端口访问空闲状态的操作的流程图。在方框50中R/S端12被以任何通常的方式来确认。例如,如果R/S端12是低电平有效,那么就发出低电平电信号10。这样一来,如方框52所示,中断被置为高优先级。然后如判断方框54所示,微处理器等待下一条指令边界通过执行阶段。指令边界和执行阶段在图3中详细描述。当遇到边界时,如方框56所示,译码器被阻止发送另外的指令。实施阻止微指令发送也就是要阻止指令指针改变或更新。当暂停了译码器18的执行时,应答端26如方框58所示被确认以便告知传感器28或任何其它传感装置微处理器处于空闲状态和微处理器不在执行指令。如判断方框60所示,微处理器将一直处于空闲状态直到R/S端12已被解除确认为止。当这种情况出现时,译码器18和流水线功能块15的其它部分的正常操作如方框62所示被恢复并且应答端26如方框64所示被解除确认。
现在参看图3,它是说明在本发明的最佳实施例中实施的流水线操作和指令边界的图表。流水线的各阶段由图3的表的左边列的条目来表示。指令各步骤间的时间间隔由水平的号数T1、T2等等来表示。流水线中的第一个阶段是“PF”阶段,即由预取指单元17执行的预取指阶段。在这一阶段中,从高速缓冲存储器或其它存储器获取用大写字母“I”表示的宏指令,并将这一指令缓冲后传送给译码单元18。阶段“D1”包括在最佳实施例中的译码器18和微指令存储器和定序器19之内进行的指令译码。被发送的微指令由小写字母“i”来表示。在“D2”阶段中,对微指令执行地址生成处理-分段和页面操作。“EX”阶段包括微指令所要求的所有的执行操作。紧随EX阶段的最后阶段是“WB”即“写回”阶段。这一阶段中,在执行阶段被计算或从存储器中被读出的数据被写入寄存器文件中并将标志更新。
为说明起见,从时刻T1开始,在预取指(PF)单元的缓冲器中有宏指令I1。宏指令I0被提供给D1阶段。作为响应,D1单元已经发出包括微指令i01、i02和i03的一系列微指令。微指令i01已经过多个阶段到达EX阶段;微指令i02已经由流水线到达D2阶段,微指令i03将要由阶段D1在下一个时刻T2发送。在时间间隔T2,D1阶段还必须发送另一条微指令i04,微指令i03已到达阶段D2,微指令i02在EX阶段中。微指令i01已被结束执行,处理器状态已被更新,它现在处于WB阶段。在这一例子中,从宏指令I0中发送的最后的微指令是i04。因此,在下一个时间间隔T3,下一条宏指令I1进入D1阶段,它的第一条微指令i11被发送。指令边界被定义在这条微指令i11和先前的宏指令I0的最后的微指令i04之间。在流水线功能块15的随后的时间间隔T4和T5指令边界被继续定义。
移到时间间隔T5,从宏指令I0中最后被发送的微指令i04,已结束执行阶段,它现在处于WB阶段中。在微指令i11得到机会进入WB阶段之前,可在下一个时间间隔T6中实现空闲模式。空闲模式可如在说明书的其它地方描述的那样被访问。在时间间隔T6的检测模式之内,阶段D2、EX和WB能被另一个装置、例如图1描述的第二控制单元42来访问。在空闲模式之内,阶段D1已被阻滞,所以对于宏指令I1,在检测模式被解除确认之后将要被发送的第一条微指令是i11。在整个空闲模式存在期间,阶段D1不向前移动也不改变,因此,指令指针和其它处理器状态信息不被更新,除非由第二控制单元42流出的指令特别指示要这样做。
Claims (16)
1、具有能被外部电信号访问的空闲状态的微处理器,其特征在于所说微处理器包括:
设置能由外部电信号确认的电气端;
与该电气端相连的中断优先器;一旦由外部电信号确认,即设定了中断;
与该中断优先器连接的指令译码器;以及
根据R/S端的确认而在随后的指令边界处暂停操作的装置,该装置使得在R/S端被确认期间不能发送后续指令去执行。
2、如权利要求1的微处理器,其特征在于还包括提供表明微处理是否处于空闲状态的信号的应答端。
3、如权利要求1的微处理器,其特征在于还包括与译码器和中断优先器以及流水线定序器连接的流水线功能块,其中的暂停执行的装置包括控制流水线定序器的装置,以便阻止译码器利用流水线功能块。
4、如权利要求1的微处理器,其特征在于还包括根据R/S端的解除确认,从解除确认时刻存在的处理器状态开始微处理器的操作的装置。
5、如权利要求4的微处理器,特征在于还包括提供表明微处理是否处于空闲状态的信号的应答端。
6、如权利要求1的微处理器,其特征在于还包括含有与译码器相连的含有控制逻辑的执行单元。
7、如权利要求6的微处理器,其特征在于还包括含有中断优先器、流水线定序器和控制逻辑的控制单元,其中的R/S端具有能控制流水线定序器以便阻止译码器利用流水线功能块的中断优先级。
8、如权利要求1的微处理器,其特征在于还包括:
第二控制单元;
与第二控制单元相连的串行端口,所说串行端口被用来接收来自微处理器外部的指令;
含有控制逻辑的执行单元;以及
与第二控制单元、执行单元和中断优选器相连的流水线功能块。
9、如权利要求8的微处理器,其特征在于还包括含有中断优先器、流水线定序器和控制逻辑的控制单元,其中的R/S端具有能控制流水线定序器以便在R/S端被确认期间阻止译码器利用流水线功能块的中断优先级。
10、操作具有外部R/S端和译码器的方法,其特征在于包括以下步骤:
(a)确认R/S端;和
(b)在随后的指令边界处暂停译码器的执行以便在R/S端被确认期间在指令边界处暂停译码。
11、如权利要求10的方法,其特征在于所说暂停译码器的执行的步骤(b)还包括控制流水线定序器以便阻止译码器利用流水线功能块。
12、如权利要求10的方法,其特征在于还包括在随后的指令边界处暂停译码器执行之后确认应答端的步骤。
13、如权利要求10的方法,其特征在于包括以下步骤:
(c)解除确认R/S端;和
(d)在R/S端被解除确认后恢复译码器的执行。
14、如权利要求13的方法,其特征在于还包括在译码器已被恢复执行后解除确认应答端的步骤。
15、如权利要求13的方法,其特征在于所说暂停译码器的执行的步骤(b)包括控制流水线定序器以便禁止译码器利用流水线功能块的步骤,并且其中所说恢复译码器的执行的步骤(d)包括控制流水线定序器以便允许译码器利用流水线功能块的步骤。
16、如权利要求10的方法,其特征在于还包括根据所述步骤(a)在控制单元中设置主优先级中断,所述高优先级中断触发所说步骤(b)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US87471692A | 1992-04-27 | 1992-04-27 | |
US874,716 | 1992-04-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1078319A true CN1078319A (zh) | 1993-11-10 |
CN1040158C CN1040158C (zh) | 1998-10-07 |
Family
ID=25364407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN92112044A Expired - Lifetime CN1040158C (zh) | 1992-04-27 | 1992-09-30 | 具有用于访问空闲模式的运行/停止端的微处理器 |
Country Status (7)
Country | Link |
---|---|
US (1) | US5488728A (zh) |
JP (1) | JPH0689201A (zh) |
KR (1) | KR930022195A (zh) |
CN (1) | CN1040158C (zh) |
DE (1) | DE4311441C2 (zh) |
GB (1) | GB2266605B (zh) |
HK (1) | HK1006883A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102890624A (zh) * | 2011-07-20 | 2013-01-23 | 国际商业机器公司 | 用于管理无序毫码控制操作的方法和系统 |
CN109460254A (zh) * | 2018-09-25 | 2019-03-12 | 杭州旗捷科技有限公司 | 一种指令处理方法、cpu交互系统及采用该系统的耗材芯片 |
CN111857813A (zh) * | 2015-05-18 | 2020-10-30 | 北京忆芯科技有限公司 | 调度微指令序列的方法及装置 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0540730A (ja) * | 1991-08-06 | 1993-02-19 | Mitsubishi Electric Corp | マイクロコンピユータ |
JP2734992B2 (ja) * | 1994-07-25 | 1998-04-02 | 日本電気株式会社 | 情報処理装置 |
US5678003A (en) * | 1995-10-20 | 1997-10-14 | International Business Machines Corporation | Method and system for providing a restartable stop in a multiprocessor system |
US5983340A (en) * | 1995-12-07 | 1999-11-09 | Conexant Systems, Inc. | Microprocessor system with flexible instruction controlled by prior instruction |
US6112298A (en) * | 1996-12-20 | 2000-08-29 | Texas Instruments Incorporated | Method for managing an instruction execution pipeline during debugging of a data processing system |
US5915083A (en) * | 1997-02-28 | 1999-06-22 | Vlsi Technology, Inc. | Smart debug interface circuit for efficiently for debugging a software application for a programmable digital processor device |
US6112316A (en) * | 1997-12-03 | 2000-08-29 | Micron Electronics, Inc. | System for use of bus parking states to communicate diagnostic information |
US6092219A (en) * | 1997-12-03 | 2000-07-18 | Micron Technology, Inc. | Method for use of bus parking states to communicate diagnostic information |
US6405335B1 (en) | 1998-02-25 | 2002-06-11 | Texas Instruments Incorporated | Position independent testing of circuits |
EP0943996B1 (en) * | 1998-03-20 | 2003-06-11 | Texas Instruments Incorporated | Processor having real-time execution control for debug functions without a debug monitor |
US7058862B2 (en) * | 2000-05-26 | 2006-06-06 | Texas Instruments Incorporated | Selecting different 1149.1 TAP domains from update-IR state |
US6601183B1 (en) * | 1999-09-30 | 2003-07-29 | Silicon Graphics, Inc. | Diagnostic system and method for a highly scalable computing system |
US6728915B2 (en) | 2000-01-10 | 2004-04-27 | Texas Instruments Incorporated | IC with shared scan cells selectively connected in scan path |
US6769080B2 (en) | 2000-03-09 | 2004-07-27 | Texas Instruments Incorporated | Scan circuit low power adapter with counter |
US20030100133A1 (en) * | 2001-11-26 | 2003-05-29 | Eidson Michael A. | System-on-chip breakpoint synchronization |
JP4409349B2 (ja) * | 2004-04-27 | 2010-02-03 | Okiセミコンダクタ株式会社 | デバッグ回路およびデバッグ制御方法 |
US7840845B2 (en) * | 2005-02-18 | 2010-11-23 | Intel Corporation | Method and system for setting a breakpoint |
US9223714B2 (en) | 2013-03-15 | 2015-12-29 | Intel Corporation | Instruction boundary prediction for variable length instruction set |
US10776115B2 (en) * | 2015-09-19 | 2020-09-15 | Microsoft Technology Licensing, Llc | Debug support for block-based processor |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4010448A (en) * | 1974-10-30 | 1977-03-01 | Motorola, Inc. | Interrupt circuitry for microprocessor chip |
US4149244A (en) * | 1976-06-07 | 1979-04-10 | Amdahl Corporation | Data processing system including a program-executing secondary system controlling a program-executing primary system |
US4403287A (en) * | 1981-08-24 | 1983-09-06 | Bell Telephone Laboratories, Incorporated | Microprocessor architecture having internal access means |
US4547849A (en) * | 1981-12-09 | 1985-10-15 | Glenn Louie | Interface between a microprocessor and a coprocessor |
US4680698A (en) * | 1982-11-26 | 1987-07-14 | Inmos Limited | High density ROM in separate isolation well on single with chip |
US5036453A (en) * | 1985-12-12 | 1991-07-30 | Texas Instruments Incorporated | Master/slave sequencing processor |
US5125088A (en) * | 1986-09-08 | 1992-06-23 | Compaq Computer Corporation | Computer system speed control at continuous processor speed |
JPS63250702A (ja) * | 1987-04-07 | 1988-10-18 | Hitachi Ltd | シ−ケンスコントロ−ラ |
US5032983A (en) * | 1987-04-10 | 1991-07-16 | Tandem Computers Incorporated | Entry point mapping and skipping method and apparatus |
US5329471A (en) * | 1987-06-02 | 1994-07-12 | Texas Instruments Incorporated | Emulation devices, systems and methods utilizing state machines |
EP0306644B1 (en) * | 1987-07-06 | 1997-11-12 | Hitachi, Ltd. | Data processor having a break function |
US4896289A (en) * | 1987-07-29 | 1990-01-23 | Xitron, Inc. | Expansion interface board system for connecting several personal computers to an electronic typesetter connected to a host personal computer |
JPH0198313A (ja) * | 1987-10-09 | 1989-04-17 | Nec Corp | 同期化回路 |
US5084814A (en) * | 1987-10-30 | 1992-01-28 | Motorola, Inc. | Data processor with development support features |
US5056015A (en) * | 1988-03-23 | 1991-10-08 | Du Pont Pixel Systems Limited | Architectures for serial or parallel loading of writable control store |
US4945536A (en) * | 1988-09-09 | 1990-07-31 | Northern Telecom Limited | Method and apparatus for testing digital systems |
JPH031231A (ja) * | 1989-02-09 | 1991-01-07 | Nec Corp | マイクロプログラム制御装置 |
US4949360A (en) * | 1989-08-08 | 1990-08-14 | International Business Machines Corporation | Synchronizing circuit |
US5276824A (en) * | 1990-01-08 | 1994-01-04 | Motorola, Inc. | Data processor having a multi-stage instruction pipe and selection logic responsive to an instruction decoder for selecting one stage of the instruction pipe |
JP2526688B2 (ja) * | 1990-02-22 | 1996-08-21 | 三菱電機株式会社 | プログラマブルコントロ―ラおよびシ―ケンスプログラムの部分実行方法 |
US5128970A (en) * | 1990-12-20 | 1992-07-07 | Unisys Corporation | Non-return to zero synchronizer |
EP0503117B1 (de) * | 1991-03-13 | 1995-06-28 | Siemens Aktiengesellschaft | Prozessorschaltung |
US5254942A (en) * | 1991-04-25 | 1993-10-19 | Daniel D'Souza | Single chip IC tester architecture |
US5353424A (en) * | 1991-11-19 | 1994-10-04 | Digital Equipment Corporation | Fast tag compare and bank select in set associative cache |
US5281664A (en) * | 1992-07-20 | 1994-01-25 | Ford Motor Company | Polymer compositions and methods of making same |
ATE311022T1 (de) * | 2004-03-22 | 2005-12-15 | Delphi Tech Inc | Verbindungselement für elektrische leiter |
-
1992
- 1992-08-28 GB GB9218303A patent/GB2266605B/en not_active Expired - Lifetime
- 1992-09-30 CN CN92112044A patent/CN1040158C/zh not_active Expired - Lifetime
- 1992-10-22 KR KR1019920019430A patent/KR930022195A/ko not_active Application Discontinuation
-
1993
- 1993-01-27 JP JP5029708A patent/JPH0689201A/ja active Pending
- 1993-04-07 DE DE4311441A patent/DE4311441C2/de not_active Expired - Lifetime
-
1994
- 1994-10-31 US US08/332,373 patent/US5488728A/en not_active Expired - Lifetime
-
1998
- 1998-06-22 HK HK98105914A patent/HK1006883A1/xx not_active IP Right Cessation
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102890624A (zh) * | 2011-07-20 | 2013-01-23 | 国际商业机器公司 | 用于管理无序毫码控制操作的方法和系统 |
CN102890624B (zh) * | 2011-07-20 | 2015-08-19 | 国际商业机器公司 | 用于管理无序毫码控制操作的方法和系统 |
CN111857813A (zh) * | 2015-05-18 | 2020-10-30 | 北京忆芯科技有限公司 | 调度微指令序列的方法及装置 |
CN109460254A (zh) * | 2018-09-25 | 2019-03-12 | 杭州旗捷科技有限公司 | 一种指令处理方法、cpu交互系统及采用该系统的耗材芯片 |
Also Published As
Publication number | Publication date |
---|---|
JPH0689201A (ja) | 1994-03-29 |
CN1040158C (zh) | 1998-10-07 |
US5488728A (en) | 1996-01-30 |
GB9218303D0 (en) | 1992-10-14 |
GB2266605B (en) | 1995-10-11 |
DE4311441A1 (de) | 1993-10-28 |
GB2266605A (en) | 1993-11-03 |
DE4311441C2 (de) | 1997-07-17 |
HK1006883A1 (en) | 1999-03-19 |
KR930022195A (ko) | 1993-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1040158C (zh) | 具有用于访问空闲模式的运行/停止端的微处理器 | |
CN108139908B (zh) | 移动前缀指令 | |
EP0528585B1 (en) | Data processing system with internal instruction cache | |
AU628163B2 (en) | Method and apparatus for detecting and correcting errors in a pipelined computer system | |
US7805638B2 (en) | Multi-frequency debug network for a multiprocessor array | |
CN104205064A (zh) | 将程序事件记录事件向运行时间检测事件的变换 | |
CN101667154A (zh) | 用于改善片上仿真系统中高级语言的仿真速度的装置和方法 | |
KR20130112034A (ko) | 데이터 처리장치의 디버깅 | |
CN104364769A (zh) | 处理器特性的运行时间检测监控 | |
US20080184055A1 (en) | Instruction-based timer control during debug | |
JPS6229815B2 (zh) | ||
EP1034472A2 (en) | An instruction decoder | |
US6968410B2 (en) | Multi-threaded processing of system management interrupts | |
US5253349A (en) | Decreasing processing time for type 1 dyadic instructions | |
JPH065522B2 (ja) | 入出力制御処理延期装置 | |
CN100474266C (zh) | 一种用于数字信号处理器的调试系统及其调试方法 | |
JPH1049373A (ja) | パイプライン・デジタル・プロセッサにおいて多重で高精度の事象を操作する方法と装置 | |
JP2705121B2 (ja) | 電子計算機システム | |
JP2808757B2 (ja) | デバッグ用マイクロプロセッサ | |
AU608874B2 (en) | Fast emulator using slow processor | |
CA1075362A (en) | Diagnose instruction for a modular data processing system | |
SU1124316A1 (ru) | Микро-ЭВМ | |
SU1520533A1 (ru) | Электронна вычислительна машина | |
SU1226452A2 (ru) | Микропрограммное устройство управлени | |
JPS61118840A (ja) | 電子計算機の制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C15 | Extension of patent right duration from 15 to 20 years for appl. with date before 31.12.1992 and still valid on 11.12.2001 (patent law change 1993) | ||
OR01 | Other related matters | ||
C17 | Cessation of patent right | ||
CX01 | Expiry of patent term |
Expiration termination date: 20120930 Granted publication date: 19981007 |