CN1437723A - 外部微代码 - Google Patents

外部微代码 Download PDF

Info

Publication number
CN1437723A
CN1437723A CN00819242A CN00819242A CN1437723A CN 1437723 A CN1437723 A CN 1437723A CN 00819242 A CN00819242 A CN 00819242A CN 00819242 A CN00819242 A CN 00819242A CN 1437723 A CN1437723 A CN 1437723A
Authority
CN
China
Prior art keywords
processor
microcode
programming
code
registers
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
Application number
CN00819242A
Other languages
English (en)
Other versions
CN100354820C (zh
Inventor
H·钦
G·坦加杜赖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN1437723A publication Critical patent/CN1437723A/zh
Application granted granted Critical
Publication of CN100354820C publication Critical patent/CN100354820C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30101Special purpose registers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

本发明的某些实施方案包括一个计算机系统,这一计算机系统包括总线、处理器、以及处理器之外的计算机可读介质。计算机可读介质通过总线耦合于处理器,并存储可实现微代码功能的指令。本发明的某些其它实施方案包括一种把固件用作微代码的方法。该方法包括把编程的代码存储在固件中,并执行编程的代码。该方法还包括更新与处理器上的一个逻辑单元相关联的一个或多个寄存器,以响应对编程的代码的执行,并根据存储在寄存器中的一个值控制处理器上的逻辑单元的一个或多个功能。

Description

外部微代码
发明领域
本发明涉及处理器,更具体地说,本发明涉及针对处理器的微代码。
发明背景
可以把一个计算机系统划分成三个基本的模块:一个中央处理单元(CPU)、存储器、以及输入/输出(I/O)单元。通过一条总线把这些模块互相连接在一起。一个输入设备,例如一个键盘、鼠标器、磁盘驱动器、模拟至数字转换器等,用于把指令和数据经由I/O单元输入到计算机系统。这些指令和数据可存储于存储器中。CPU检索存储在存储器中的数据,并根据所存储的指令做出的指示处理数据。可以把结果存回到存储器中或经由I/O单元输出到一个输出设备上,例如输出到一台打印机、阴极射线管(CRT)显示器、数字至模拟转换器、液晶显示器(LCD)等设备上。
CPU(此处将其称为处理器)的功能是执行程序。程序包括一组指令。把每一指令划分成一或多个叫做微指令或微操作的操作。处理器执行微指令的一种方式是,从一或多个源寄存器读取操作数,并把结果存储在一或多个目标寄存器中。寄存器是处理器中的一个临时存储区,用于容纳处理器所使用的数据。寄存器存储位(bit)。一个位是一个二进制数字,表示值“0”或值“1”。可以把不同的寄存器用于不同的功能。例如,可交替地把通用寄存器用于容纳针对逻辑和算术操作的操作数。例如,可以经由各种标志位把专用寄存器用于容纳状态信息。
与仅仅使用硬件逻辑相比,混合使用编程的代码和硬件逻辑,可更容易地实现某些处理器操作。例如,这些操作可以是使用编程的代码简化逻辑实现的处理器内部操作或一条复杂的指令(或指令操作的一部分)。用于简化逻辑实现的编程代码的叫做“微代码”。传统上,把微代码嵌入到微处理器中,因为微代码与硬件逻辑紧密地耦合在一起。传统的微代码是驻留在一个处理器内的预编程的二进制位。
然而,微代码的传统实现拥有若干缺点。例如,由于微代码的每一位占据了宝贵的管芯(die)面积,所以微代码通常在尺寸方面会受到限制,并且十分昂贵。随着处理器的日趋复杂,微代码的尺寸也将变得越来越大,从而占据了处理器硅片的一个很大的比例。另外,由于传统的微代码驻留在处理器的内部,所以只有重复整个处理器的设计和制造周期才能改变微代码一非常类似于对硬件逻辑的改变。
出于这些和其它方面的原因,产生了对本发明的需求。
发明概述
本发明的某些实施方案包括一个计算机系统,这一计算机系统包括一条总线、一个处理器、以及一个处理器之外的计算机可读介质。这一计算机可读介质通过总线耦合于处理器,并存储实现微代码功能的指令。
通过参照附图以及通过阅读以下的详细描述,本发明的其它和更多的实施方案、方面、以及优点将变得十分明显。
附图简述
图1是根据本发明的一个系统的一个示例的实施方案的方框图。
图2A是图1中所示处理器和固件的一个示例的实施方案的更详细的方框图。
图2B是图1中所示处理器的一个可选实施方案的方框图以及存储在一个计算机可读介质上的外部微代码。
图3是图2A中所示处理器和面向具体机器的寄存器的一个示例的实施方案的更详细的方框图。
图4是图3中所示的面向具体机器的寄存器的一个示例的实施方案的更详细的方框图。
图5是把固件用作根据本发明的一个示例的实施方案的微代码的一个方法的流程图。
图6是使用根据本发明的一个实施方案的外部微代码的一个方法的一个可选实施方案的流程图。
发明详述
在以下所描述的示例的实施方案中,至少针对一个处理器的某些微代码驻留在外部于该处理器的一个计算机可读介质中。在以下对实施方案的详细的描述中,将参照形成实施方案的一部分的附图,其中通过说明可实践本发明的具体实施方案的方式进行描述。人们将会领悟到:在不背离本发明的范围的情况下,可以使用其它的实施方案以及进行结构上的修改。
图1是本发明的一个示例的实施方案的一个系统,例如一个计算机系统105,的方框图。计算机系统105包括一条总线100、键盘接口101、外部存储器102、海量存储设备103、处理器104、以及固件106。总线100可以是一条单总线,也可以为多条总线的组合。总线100提供了系统中各部件之间的通信链路。键盘接口101可以是一个专用的设备,也可以驻留在另一个设备中,例如驻留在一个总线控制器或其它控制设备中。键盘接口101允许把一个键盘耦合于系统,并把来自键盘的信号传输于系统。外部存储器102可以包括一个动态随机存取存储器(DRAM)设备、一个静态随机存取存储器(SRAM)设备,或其它存储器设备。外部存储器102存储来自海量存储设备103和处理器104的信息供处理器104之用。海量存储设备103可以是一个硬盘驱动器、一个软盘驱动器、一个CD-ROM设备、或一个闪速存储器设备等。海量存储设备103把信息提供给外部存储器102。固件106是以数据或指令编程的非易失存储器。固件106的例子包括,但不局限于,只读存储器(ROM)、可编程的只读存储器(PROM)、可电子擦除的可编程的只读存储器(EEPROM)、以及闪速存储器。
处理器104可以,但不局限于,与诸如Intel结构处理器(由加利福尼亚Santa Clara的Intel公司制造的,Intel公司是本发明的受让人)等处理器兼容。在一些可选的实施方案中,处理器104可以与PowerPCTM结构处理器以及AlphaTM结构处理器等兼容。
在先前的系统中,处理器利用存储在处理器中的微代码生成用于控制各种处理器硬件的行为的信号。然而与先前的系统不同,本发明的实施方案允许某些先前作为微代码存储在处理器104中的编程的代码存储在一个处理器之外104的计算机可读介质中。处理器之外的计算机可读介质的例子包括,但不局限于海量存储设备103、固件106、以及存储器102。在一个实施方案中,计算机可读介质存储针对无表现关键操作的微代码指令。无表现关键操作的例子包括(但不局限于)超高速缓存清理、使超高速缓存无效、设置和读取处理器特性与配置、机器检查处理、浮点计算、处理器诊断、Intel32位结构处理(针对向后兼容特性)、鉴别、平台管理中断、诊断与调试功能等。
图2A是图1中所示处理器和固件的一个示例的实施方案的更详细的方框图。在本发明一个实施方案中,固件206存储用于控制处理器204的操作的编程的代码210。此处把存储在固件206中的编程的代码210称作“固件代码”。在一个示例的实施方案中,固件代码210使用具体针对一台特定机器或具体针对一种特定型号的机器的寄存器实现微操作。此处把这些寄存器叫做“面向具体机器的寄存器”。这些面向具体机器的寄存器可作为固件206和处理器204之间的一个接口。
在图2A中所示的示例的实施方案中,处理器204包括一系列面向具体机器的寄存器(MSR)208。在一个实施方案中,把一或多个MSR208与处理器204的一或多个功能单元关联在一起。例如,可以把一组MSR与一条外部总线单元关联在一起,同时可以把另一组MSR与处理器的超高速缓存关联在一起。每一个MSR208存储一个或多个位。在各功能单元之间MSR208的大小可不尽相同。当处理器204执行存储在
固件206中的固件代码210时,更新MSR208所存储的位。在一个实施方案中,存储在MSR208中的每一个位的值影响着与MSR208相关联的处理器204的功能单元的行为。在一个可选实施方案中,存储在MSR208中的一个或多个位的值影响不同于与MSR208相关的功能单元的处理器的一个功能单元的行为。MSR允许把固件用作供处理器使用的外部微代码,如以下参照图3、4、5进一步描述。
然而,本发明的实施方案并不局限于在固件中存储微指令。也可以考虑那些拥有用于执行存储在任何处理器之外的计算机可读介质上的微代码操作的指令的可选实施方案。而且,本发明的实施方案也不局限于把寄存器用作一个针对存储在计算机可读介质上的外部微代码的接口。在一个可选实施方案中,外部微代码在不使用MSR的情况下直接操纵处理器上的硬件逻辑。
图2B是图1中所示处理器的一个可选实施方案的方框图以及存储在一个计算机可读介质中的外部微代码。在本发明的一个实施方案中,一个计算机可读介质220(处理器之外)存储用于控制处理器224的操作的编程的代码222。处理器之外的计算机可读介质的实例包括,但不局限于海量存储设备、固件以及存储器。此处把存储在计算机可读介质中的编程的代码222称作“外部微代码”。在一个示例的实施方案中,外部微代码222在未使用图2A中所示寄存器的情况下,通过控制处理器224上的硬件逻辑实现了微代码操作。在一个可选实施方案中,外部微代码222把图2A中所示的寄存器用作处理器硬件逻辑的一个接口,实现了微操作。在又一个实施方案中,外部微代码222使用图2A中所示寄存器的一个组合并通过直接触发处理器硬件逻辑,实现了微操作。
图3是图2A中的示例的实施方案中所示处理器和面向具体机器的寄存器的一个更详细的方框图。图3中所示的处理器304包括一个控制寄存器存取总线(CRAB)总线306、一个数据控制单元310、以及多个功能单元308a、308b、308c、308d、308e、308f、308g、308h、308i、308j、308k。
CRAB306提供了处理器304的功能单元308a~308k和数据控制单元310之间的通信链路。数据控制单元310执行所提供的各种指令,以控制系统的操作。在一个实施方案中,数据控制单元310从存储器或从固件或从任何其它处理器之外的计算机可读介质获取一条指令。然后,数据控制单元310把这一指令解码成一或多个操作,该一个或多个操作被称作微指令。在一个实施方案中,针对每一微指令的逻辑源和目标寄存器为通用寄存器。根据本发明的一个实施方案,针对从固件所取的某些微指令的逻辑源和目标寄存器为面向具体机器的寄存器之一,例如针对功能单元E308e的MSR314。
在一个实施方案中,多个功能单元308a、308b、308c、308d、308e、308f、308g、308h、308i、308j、308k代表了处理器的内部硬件逻辑。在图3中所示的示例的实施方案中,功能单元E308e代表一个L1指令超高速缓存;功能单元F308f代表L1数据超高速缓存;功能单元H308h代表一个L2超高速缓存;功能单元I308i代表一个后侧总线控制器;功能单元J308j代表一个前侧总线控制器。在一个实施方案中,处理器304的一或多个功能单元308a~308k拥有一个与该功能单元相关联的MSR314寄存器。图3包括针对L1指令超高速缓存的功能单元E308e的一个分解图。与功能单元E308e相关联的是解码逻辑312和一或多个MSR寄存器314。解码逻辑312确定CRAB306上的一条指令的MSR地址。功能单元E308e还包括一或多个MSR,将参照图4对它们更详细地加以描述。
图4是图3中所示MSR的一个实施方案的更详细的方框图。如图4中所示,针对功能单元E的MSR402之一控制L1指令超高速缓存406的某些功能,把每一个MSR,例如把针对功能单元E的MSR402耦合于针对处理器的内部逻辑,一个MSR寄存器中的每一位或每组位410影响处理器的行为。例如,MSR402的一个位412控制L1指令超高速缓存406中的一个超高速缓存行的使无效操作。当把MSR位4设置为“1”时,将会触发使L1指令超高速缓存中超高速缓存行无效的控制逻辑408。
图5是把固件用作根据本发明的一个实施方案的微代码的方法的一个实施方案的流程图。在一个实施方案中,把编程的代码存储在固件中(方框502)。例如,以汇编语言把编程的代码的存储在固件中。由一个处理器执行编程的代码(方框504),以及更新或读取与处理器上的一个逻辑单元相关联的一或多个寄存器,以响应对编程的代码的执行(方框506)。在一个实施方案中,编程的代码的中的一或多个指令导致处理器把一个值从处理器的通用寄存器之一移向一个面向具体机器的寄存器(MSR)。这一指令更新存储在MSR中的一或多个位。在图4中所示的示例的实施方案中,CRAB总线把数据传输到将要被更新的MSR寄存器中。在一个可选的实施方案中,编程的代码中的一条指令通过把MSR中的一个值移向一个通用寄存器,读一个MSR。在另一个实施方案中,把MSR用于与外部微代码交流信息,例如交流关于处理器当前状态的信息或关于过去事件的信息。根据存储在寄存器中的一个值,控制处理器上的逻辑单元的一或多个功能(方框508)。把固件用作如图5中所示的微代码的一个方法的一个实施方案,允许通过使用具体的汇编语言指令改变MSR位值。
图3、4、以及5说明了把微代码指令存储在固件中并把面向具体机器的寄存器用作一个接口的本发明的一些示例的实施方案。然而,本发明的实施方案并不局限于把微代码指令存储于固件中。而且,本发明的实施方案也不局限于把寄存器用作一个针对外部微代码的接口。在一些可选实施方案中,把微代码存储在任何处理器之外的计算机可读介质上,和/或在不使用面向具体机器的寄存器的情况下微代码直接操纵处理器上的硬件逻辑。
图6是使用根据本发明的一个实施方案的外部微代码的一个方法的一个可选的实施方案的流程图。如图6中所示,该方法从把编程的代码存储在一个处理器之外的计算机可读介质上开始(方框602)。处理器执行编程的代码(方框604)。控制处理器的一或多个功能,以响应对编程的代码的执行(方框606)。在一个实施方案中,通过直接触发处理器上的硬件控制一或多个功能,以响应对编程的代码的执行(方框606)。在另一个实施方案中,通过更新一或多个与处理器上的一个逻辑单元相关联的寄存器来控制处理器的一或多个功能,以响应对编程的代码的执行(方框606)。在又一个实施方案中,通过触发处理器硬件逻辑和通过操纵多个寄存器,控制一或多个功能(方框606)。
通过使用存储在处理器之外的微代码,实现微代码的开销明显地降低,因为消除了对微代码的代码大小的限制。而且也能够很容易地对根据本发明的一个实施方案的外部微代码重新加以编程,因而可更容易地对微代码进行调试。重新编程的能力也使改错成为可能,十分类似一个软件补丁,甚至是处理器在市场上脱销以后。本发明的实施方案克服了必需把微代码紧密耦合于处理器逻辑的传统要求,它要求必须把微代码放置在处理器管芯上。
尽管此处已对一些具体的实施方案进行了说明与描述,但本领域中的普通技术人员将会领悟到:可以考虑用任何配置替代所描述的这些具体的实施方案以达到同样目的。本申请旨在覆盖对本发明的任何更新或变更。因此,本发明将仅由权利要求和其等价的要求加以限定。

Claims (20)

1.一个计算机系统,该计算机系统包括:
总线;
处理器;以及
处理器之外的并通过总线耦合于处理器的计算机可读介质,所述计算机可读介质将存储实现微代码功能的指令。
2.权利要求1的计算机系统,其中,所述计算机可读介质为固件。
3.权利要求1的计算机系统,其中,所述计算机可读介质为海量存储器。
4.权利要求1的计算机系统,其中,通过触发处理器硬件逻辑实现微代码功能。
5.权利要求1的计算机系统,其中,处理器还包括多个与处理器的一或多个功能单元相关联的寄存器。
6.权利要求5的计算机系统,其中,通过更新多个寄存器中的一个或多个寄存器实现微代码功能。
7.权利要求5的计算机系统,其中,通过读取多个寄存器中的一个或多个寄存器实现微代码功能。
8.权利要求5的计算机系统,其中,通过触发处理器硬件逻辑和通过操纵多个寄存器实现微代码功能。
9.一种方法,该方法包括:
把编程的代码存储在处理器之外的计算机可读介质上;
通过处理器执行编程的代码;以及
控制处理器的一或多个功能,以响应对编程的代码的执行。
10.权利要求9的方法,其中,通过直接触发处理器上的硬件来控制一或多个功能,以响应对编程的代码的执行。
11.权利要求9的方法,其中,通过更新与处理器上的逻辑单元相关联的一个或多个寄存器来控制一个或多个功能,以响应对编程的代码的执行。
12.权利要求9的方法,其中,通过触发处理器硬件逻辑和通过操纵多个寄存器控制一个或多个功能。
13.权利要求9的方法,其中,一个或多个功能为无表现关键功能。
14.权利要求13的方法,其中,所述无表现关键功能选自一组功能,该组功能包括:
超高速缓存清理、使超高速缓存无效、设置处理器特性、读取处理器特性、机器检查处理、浮点计算、处理器诊断、针对向后兼容特性的Intel32位结构处理、鉴别、平台管理中断、诊断与调试功能等。
15.一种把固件用作微代码的方法,该方法包括:
把编程的代码存储在处理器之外的固件中;
通过处理器执行编程的代码;
更新与处理器上的逻辑单元相关联的一个或多个寄存器,以响应对编程的代码的执行;以及
根据存储在一个或多个寄存器中的值,控制处理器上的逻辑单元的一个或多个功能。
16.权利要求15的方法,该方法还包括:
根据存储在与逻辑单元相关联的寄存器之一中的值,控制处理器上的第二逻辑单元的一个或多个功能。
17.权利要求15的方法,该方法还包括对固件中编程的代码重新编程。
18.一种处理器,该处理器包括:
多个逻辑单元;以及
与所述多个逻辑单元中的每一个相关联的一个或多个寄存器,当响应外部微代码指令对寄存器之一进行更新时,一个或多个寄存器将触发处理器硬件逻辑功能。
19.权利要求18的处理器,其中,一个或多个所述寄存器与二个或更多个逻辑单元相关联。
20.一种产品,该产品包括:
一种计算机可读介质,该计算机可读介质存储用作微代码的编程代码,该计算机可读介质驻留在处理器之外。
CNB008192421A 1999-12-31 2000-12-29 外部微代码 Expired - Fee Related CN100354820C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US47662299A 1999-12-31 1999-12-31
US09/476,622 1999-12-31

Publications (2)

Publication Number Publication Date
CN1437723A true CN1437723A (zh) 2003-08-20
CN100354820C CN100354820C (zh) 2007-12-12

Family

ID=23892595

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB008192421A Expired - Fee Related CN100354820C (zh) 1999-12-31 2000-12-29 外部微代码

Country Status (6)

Country Link
US (1) US20030110367A1 (zh)
EP (1) EP1242874A1 (zh)
CN (1) CN100354820C (zh)
AU (1) AU2745001A (zh)
HK (1) HK1047172A1 (zh)
WO (1) WO2001050251A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100483345C (zh) * 2003-11-20 2009-04-29 国际商业机器公司 用于传送二进制代码图像的装置、系统与方法
CN102591616A (zh) * 2011-12-29 2012-07-18 北京并行科技有限公司 浮点计算性能确定装置和方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090228693A1 (en) * 2007-05-22 2009-09-10 Koenck Steven E System and method for large microcoded programs
US7693167B2 (en) * 2007-05-22 2010-04-06 Rockwell Collins, Inc. Mobile nodal based communication system, method and apparatus
US20090228686A1 (en) * 2007-05-22 2009-09-10 Koenck Steven E Energy efficient processing device
US7843554B2 (en) * 2008-04-25 2010-11-30 Rockwell Collins, Inc. High dynamic range sensor system and method
US20120110562A1 (en) * 2010-10-27 2012-05-03 David Heinrich Synchronized firmware update

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS538034A (en) * 1976-06-30 1978-01-25 Toshiba Corp Electronic computer
US4399505A (en) * 1981-02-06 1983-08-16 Data General Corporaton External microcode operation in a multi-level microprocessor
DE3176193D1 (en) * 1981-12-29 1987-06-19 Ibm Control unit connectable to a pair of memories having different speeds
US4514803A (en) * 1982-04-26 1985-04-30 International Business Machines Corporation Methods for partitioning mainframe instruction sets to implement microprocessor based emulation thereof
US4928223A (en) * 1982-10-06 1990-05-22 Fairchild Semiconductor Corporation Floating point microprocessor with directable two level microinstructions
JP2559382B2 (ja) * 1986-11-05 1996-12-04 株式会社日立製作所 情報処理装置
JPH0812646B2 (ja) * 1989-03-03 1996-02-07 三菱電機株式会社 半導体集積回路
AU7305491A (en) * 1990-01-29 1991-08-21 Teraplex, Inc. Architecture for minimal instruction set computing system
US5222244A (en) * 1990-12-20 1993-06-22 Intel Corporation Method of modifying a microinstruction with operands specified by an instruction held in an alias register
GB2261753B (en) * 1991-11-19 1995-07-12 Intel Corp Multi-mode microprocessor with electrical pin for selective re-initialization of processor state
US5438668A (en) * 1992-03-31 1995-08-01 Seiko Epson Corporation System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer
JPH08504044A (ja) * 1992-11-23 1996-04-30 セイコーエプソン株式会社 マイクロコード・キャッシュ・システム及び方法
EP0651332B1 (en) * 1993-10-29 2001-07-18 Advanced Micro Devices, Inc. Linearly addressable microprocessor cache
US5900025A (en) * 1995-09-12 1999-05-04 Zsp Corporation Processor having a hierarchical control register file and methods for operating the same
US6141740A (en) * 1997-03-03 2000-10-31 Advanced Micro Devices, Inc. Apparatus and method for microcode patching for generating a next address

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100483345C (zh) * 2003-11-20 2009-04-29 国际商业机器公司 用于传送二进制代码图像的装置、系统与方法
CN102591616A (zh) * 2011-12-29 2012-07-18 北京并行科技有限公司 浮点计算性能确定装置和方法
CN102591616B (zh) * 2011-12-29 2016-06-29 北京并行科技股份有限公司 浮点计算性能确定装置和方法

Also Published As

Publication number Publication date
HK1047172A1 (zh) 2003-02-07
CN100354820C (zh) 2007-12-12
US20030110367A1 (en) 2003-06-12
AU2745001A (en) 2001-07-16
EP1242874A1 (en) 2002-09-25
WO2001050251A1 (en) 2001-07-12

Similar Documents

Publication Publication Date Title
US4794517A (en) Three phased pipelined signal processor
US6151669A (en) Methods and apparatus for efficient control of floating-point status register
US6332186B1 (en) Vector register addressing
US5134693A (en) System for handling occurrence of exceptions during execution of microinstructions while running floating point and non-floating point instructions in parallel
EP0198214B1 (en) Branch control in a three phase pipelined signal processor
EP1010065B1 (en) Coprocessor data access control
JP3121565B2 (ja) 浮動小数点実行ユニットにおける状態フラグ及び条件コードの保持装置及び方法
US4323963A (en) Hardware interpretive mode microprocessor
JP3233163B2 (ja) メモリ拡張スキームを切り替える疑似直線バンクを有するマイクロコントローラ
CN106547518A (zh) 用于加速器的低等待时间调用的装置和方法
CN103098020A (zh) 由多个指令集使用的寄存器间映射
CN1484786A (zh) 在单指令多数据通路结构中的非整数倍大小阵列循环处理
CN1708745A (zh) 减少多线程处理器中寄存器文件端口的方法和装置
JP2653037B2 (ja) データ処理システム
CN1305133A (zh) 适应性强的通用输入/输出系统
US6370639B1 (en) Processor architecture having two or more floating-point status fields
EP2215544B1 (en) Enhanced microprocessor or microcontroller
CN1437723A (zh) 外部微代码
WO1985001136A1 (en) Processor with depictor-linked microcode and logic circuitry
KR100864890B1 (ko) 데이터 처리장치에서의 소스 레지스터 록킹
US6578059B1 (en) Methods and apparatus for controlling exponent range in floating-point calculations
US5991874A (en) Conditional move using a compare instruction generating a condition field
US6212539B1 (en) Methods and apparatus for handling and storing bi-endian words in a floating-point processor
JP2933027B2 (ja) 複数命令並列発行/実行管理装置
Bowen Formal specification and documentation of microprocessor instruction sets

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20071212

Termination date: 20101229