JP2000347862A - 命令入換え回路 - Google Patents

命令入換え回路

Info

Publication number
JP2000347862A
JP2000347862A JP11161601A JP16160199A JP2000347862A JP 2000347862 A JP2000347862 A JP 2000347862A JP 11161601 A JP11161601 A JP 11161601A JP 16160199 A JP16160199 A JP 16160199A JP 2000347862 A JP2000347862 A JP 2000347862A
Authority
JP
Japan
Prior art keywords
instruction
address
register
rom
stage
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.)
Pending
Application number
JP11161601A
Other languages
English (en)
Inventor
Haruko Aoyama
はる子 青山
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP11161601A priority Critical patent/JP2000347862A/ja
Priority to US09/589,435 priority patent/US6829735B1/en
Priority to DE10028064A priority patent/DE10028064B4/de
Priority to KR1020000030966A priority patent/KR100355630B1/ko
Publication of JP2000347862A publication Critical patent/JP2000347862A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/328Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for runtime instruction patching
    • 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
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/268Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 パイプライン処理するCPUが、ROMコレ
クション機能を作用させる対象アドレスを複数設定して
も、夫々の対象アドレスに対して正しい優先順位が判断
できる命令入換え回路を提供する。 【解決手段】 ROMコレクションユニット3は、対象
アドレスを設定するCAレジスタ31と、ROMコレク
ション機能の可否を制御するCCレジスタ37、及び、
ROMコレクション機能による分岐命令JMPの実行の
可否を示すCRFレジスタ33を備えている。CPU1
は、CRFレジスタ33を参照することで、複数の対象
アドレスに対して正しい優先順位が判断できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、パイプライン処理
するマイクロコンピュータに係り、より詳細には、CP
Uが実際に実行する際に現行命令と修正命令とを入れ換
える命令入換え回路に関するものである。
【0002】
【従来の技術】マスクROMを搭載するシングルチップ
型マイクロコンピュータ(IC)では、マスクROM領
域に記憶されたプログラム中にバグが発見されても、I
C製造後にはこれを修正することはできない。従って、
バグを有するプログラム命令をCPUが読み出す際に、
この命令に代えて修正された命令(修正命令)に入れ換
えて修正プログラムを実行する機能(以下、ROMコレ
クション機能と呼ぶ)が提案されている。
【0003】特開平8−95946号公報には、上記R
OMコレクション機能を有するマイクロコンピュータが
記載されている。図11は、該公報に記載のマイクロコ
ンピュータのブロック図である。マイクロコンピュータ
93は、命令キュー95を有しパイプライン処理するC
PU87と、ROM83にある現行プログラムのバグ部
分のアドレスを格納するレジスタ86と、修正プログラ
ムを格納するRAM84と、命令キュー95に取り込む
べき命令のアドレスを示すフェッチポインタ81と、レ
ジスタ86とフェッチポインタ81との内容を比較し選
択信号92を出力する比較回路85と、修正プログラム
にジャンプする分岐命令を出力する分岐命令出力回路8
9と、選択信号92に基づいてROM83からの現行命
令又は分岐命令出力回路89からの分岐命令のいずれか
を選択する選択回路88とを備えている。選択回路88
は、比較結果が一致した場合に、アドレスのフェッチ段
階でCPU87に分岐命令を出力する。CPU87は、
この分岐命令により、ROM83領域の現行プログラム
のバグ部分を回避し、RAM84領域の修正プログラム
を実行する。
【0004】
【発明が解決しようとする課題】上記公報に記載の技術
は、現行プログラム中のバグ部分の対象アドレスを対象
アドレスレジスタに予め設定して、これとフェッチポイ
ンタとを比較し、ROMコレクション機能を作用させて
修正プログラムを実行させるものである。
【0005】上記公報に記載の技術には、複数のバグに
対して夫々異なる修正ができるとあります。しかし、R
OMコレクション機能を複数の対象アドレスに対応させ
るには、夫々の対象アドレスに対して優先順位を与え、
CPUがこの優先順位を正しく判断できる必要がある。
【0006】本発明は、上記したような従来の技術が有
する問題点を解決するためになされたものであり、RO
Mコレクション機能を作用させる複数の対象アドレスに
対して夫々の優先順位が正しく判断できる命令入換え回
路を提供することを目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するた
め、本発明の命令入換え回路は、実行する命令群を記憶
するROMと、該ROMの命令群に基づいて各命令を順
次にパイプライン処理するCPUと、前記ROMから送
られる現行命令を、所定の条件下で対応する修正命令に
入れ換える入換え機能を有する命令入換え回路におい
て、入換え対象となる命令の対象アドレスを設定する対
象アドレスレジスタと、前記CPUのフェッチステージ
に割り当てられた現行命令のアドレスと前記対象アドレ
スとを比較する比較回路と、該比較回路の比較結果に基
づいて前記現行命令又は対応する修正命令の何れかを選
択する選択回路と、該選択回路が前記修正命令を選択し
た旨を表示する動作フラグとを有するROMコレクショ
ンユニットを、複数の入換え対象の命令に対応して複数
備えることを特徴とする。
【0008】本発明の命令入換え回路は、対象アドレス
レジスタ、比較回路、選択回路、及び、動作フラグを有
するROMコレクションユニットを、複数の対象アドレ
スに対応して複数備えるので、ROMコレクション機能
を作用させる対象アドレスを複数設定でき、且つ、動作
フラグによってそれらの間の優先順位を設定できるの
で、CPUは対象アドレスに対応する修正プログラムを
容易に判断できる。
【0009】本発明の命令入換え回路の好ましい態様で
は、前記動作フラグは前記CPUの実行ステージで設定
される。
【0010】この場合、対象アドレスが検出されたRO
MコレクションユニットがCPUの実行ステージで動作
フラグを立てるので、CPUはその実行ステージで当該
ROMコレクションユニットを選択してアクセスでき、
正しい優先順位を判断できる。ここで、命令のフェッチ
段階で動作フラグを立てることも考えられるが、この場
合にはROMコレクション機能とは関係なく動作フラグ
が立ってしまい、優先順位が定まらない。
【0011】また、前記修正命令を任意に設定できるこ
とも本発明の好ましい態様である。この場合、ICの製
造後に発見されたバグに対応して修正命令を容易に与え
ることができる。
【0012】
【発明の実施の形態】以下、本発明の一実施形態例の命
令入換え回路について図面を参照して説明する。図1
は、本発明の一実施形態例のROMコレクションユニッ
トを備えたマイクロコンピュータのブロック図である。
【0013】本実施形態例のマイクロコンピュータは、
パイプライン処理するCPU1、現行プログラムが記憶
されているROM2、ROMコレクション機能を有する
ROMコレクションユニット3、及び、システムクロッ
ク9を発生するシステムクロック発生ユニット4で構成
される。ROMコレクションユニット3は、複数存在し
ており、CPU1が命令フェッチに際にどのアドレスを
指定するかで、複数のROMコレクションユニット3か
ら所定のROMコレクションユニット3が選択される。
また、本マイクロコンピュータには、図示しないRA
M、及び、外部インターフェイスが配設されており、外
部から修正プログラムを入力できる。
【0014】CPU1、ROM2、及び、ROMコレク
ションユニット3は、システムクロック発生ユニット4
から供給されるシステムクロック9に同期して動作す
る。CPU1は、パイプライン処理される各命令のアド
レス計算を行う際に、命令フェッチステージに割り当て
られた命令のアドレスを、アドレスバス8を介してRO
M2及びROMコレクションユニット3に出力し、ま
た、命令実行ステージに割り当てられた命令のアドレス
を、PCEXステージバス7を介してROMコレクショ
ンユニット3に出力する。
【0015】ROM2は、現行プログラムのアドレス指
定された命令を、データバス5を介してROMコレクシ
ョンユニット3に出力する。ROMコレクションユニッ
ト3は、データバス5から入力した命令、又は、ROM
コレクション機能により入れ換えた命令のいずれかをデ
ータバス10を介してCPU1に出力する。
【0016】ここで、CPU1が行うパイプライン処理
について説明する。CPU1は、命令の処理が完了する
までの1サイクル中に5つのステージを持つ。5つのス
テージは、メモリから命令を読み出す命令フェッチ(I
nstructionFetch)ステージ(以下、I
Fステージと呼ぶ)、命令コードを解析しレジスタの値
を読み出す命令デコード(InstructionDe
code)ステージ(以下、IDステージと呼ぶ)、論
理演算又は算術演算する実行(Execution)ス
テージ(以下、EXステージと呼ぶ)、メモリにデータ
を書き込むメモリ書込み(Memorywrite−i
n)ステージ(以下、MEMステージと呼ぶ)、及び、
レジスタに結果を書き込む書戻し(WriteBac
k)ステージ(以下、WBステージと呼ぶ)である。C
PU1は、各命令に異なるステージを割り当て処理する
ことで、複数の命令を並行処理するパイプライン処理が
できる。
【0017】図2は、図1のCPU1の具体的な構成例
を示すブロック図である。CPU1の内部では、各種の
制御や演算が行われいるが、パイプライン処理される各
命令に対するアドレス計算について説明する。CPU1
は、IDステージにある命令アドレスとその命令コード
とを保持するIF/IDレジスタ11、EXステージに
ある命令アドレスと加算データとセレクト信号25とを
保持するID/EXレジスタ12、MEMステージにあ
る命令アドレスを保持するEX/MEMレジスタ13、
データバス10の命令コードを解読するデコーダ14、
プログラムカウントをアップする加算器15、分岐先ア
ドレスを計算する加算器16、プログラムカウンタに出
力する値を選択するセレクタ17、及び、プログラムカ
ウンタとなるPCレジスタ18を有する。IF/IDレ
ジスタ11、ID/EXレジスタ12、EX/MEMレ
ジスタ13、及び、PCレジスタ18は、保持している
データを出力し入力するデータを保持する動作をシステ
ムクロック9に同期して行う。
【0018】PCレジスタ18は、IFステージにある
命令アドレスをプログラムカウンタ値として保持し、そ
のプログラムカウンタ値を、被加数21として加算器1
5に、保持値としてIF/IDレジスタ11に夫々出力
する。加算器15は、被加数21に各命令の語長である
1を加数22として加算し、セレクタ17に出力する。
セレクタ17は、ID/EXレジスタ12からのセレク
ト信号25がない場合に、加算器15の加算出力を選択
して、アドレスバス8及びPCレジスタ18に出力す
る。PCレジスタ18は、保持値が加算器15の加算出
力に更新されることで、プログラムカウンタをカウント
アップする。
【0019】IF/IDレジスタ11は、保持している
命令アドレスをID/EXレジスタ12に、保持してい
る命令コードをデコーダ14に夫々出力する。IF/I
Dレジスタ11は、PCレジスタ18からの命令アドレ
ス、及び、データバス10からの命令コードを入力して
保持する。デコーダ14は、IF/IDレジスタ11か
らの命令コードを入力し解読して、加算データ及びセレ
クト信号25をID/EXレジスタ12に出力する。デ
コーダ14は、分岐命令以外であれば、加算データとし
て0を出力し、分岐命令であれば、加算データとしてE
Xステージの命令アドレスから分岐先アドレスまでの
値、及び、セレクト信号25を出力する。
【0020】ID/EXレジスタ12は、保持している
命令アドレスを加算器16の被加数23として出力し、
保持している加算データを加算器16の加数24として
出力し、保持しているセレクト信号25があればセレク
タ17に出力する。加算器16は、被加数23に加数2
4を加え、加算出力をEX/MEMレジスタ13及びセ
レクタ17に出力する。
【0021】セレクタ17は、ID/EXレジスタ12
からのセレクト信号25があると、加算器16の加算出
力を選択するので、PCレジスタ18は、プログラムカ
ウンタを分岐先アドレスに更新する。
【0022】図3は、図1のROMコレクションユニッ
ト3の第1実施形態例を示すブロック図である。ROM
コレクションユニット3は、対象アドレスを保持するC
Aレジスタ31、分岐命令出力回路32、ROMコレク
ション機能の実行済みフラグとなるCRFレジスタ3
3、コンパレータ34、35、セレクタ36、ROMコ
レクション機能の動作可否を制御する制御信号102を
発生するCCレジスタ37、ラッチ38、39、及び、
2入力AND41、42で構成される。
【0023】CAレジスタ31は、アドレス入力を周辺
データバス6に接続し、コンパレータ34及び35の第
1アドレス入力に対象アドレス101を出力する。CC
レジスタ37は、セット入力Sを周辺データバス6に接
続し、AND41及び42の第1入力に制御信号102
を入力する。ラッチ38は、アドレス入力をアドレスバ
ス8に、アドレス出力をラッチ39のアドレス入力に接
続する。ラッチ39は、現行アドレス104をコンパレ
ータ34の第2アドレス入力に入力する。コンパレータ
34は、第1比較信号103をAND41の第2入力に
入力する。AND41は、選択信号105をセレクタ3
6の選択入力に入力する。セレクタ36は、第1データ
入力をデータバス5に接続し、分岐命令出力回路32
は、分岐命令JMPをセレクタ36の第2データ入力に
入力する。コンパレータ35は、第2アドレス入力をP
CEXステージバス7に接続し、第2比較信号106を
AND42の第2入力に入力する。AND42は、入換
え信号107をCRFレジスタ33のセット入力Sに入
力する。CRFレジスタ33は、リセット入力Rを周辺
データバス6に接続し、入換えフラグ108を周辺デー
タバス6に入力する。CAレジスタ31、CCレジスタ
37、ラッチ38、ラッチ39、及び、CRFレジスタ
33は、システムクロック9に同期して動作する。
【0024】セレクタ36は、選択信号105がLレベ
ルであれば、ROM2からデータバス5を介して送られ
る現行プログラムの命令コードを選択し、選択信号10
5がHレベルであれば、分岐命令出力回路32からの分
岐命令JMPを選択してデータバス10に出力する。
【0025】図4は、図1のマイクロコンピュータが行
うパイプライン処理の第1例を示すタイムチャートであ
る。このパイプライン処理では、現行プログラム中には
回避領域にジャンプする分岐命令を有しない。CPU1
は、周辺データバス6を介して、CAレジスタ31に対
象アドレス101となる入換え対象の命令アドレスa+
1を設定し、ROMコレクション機能が有効となるよう
にCCレジスタ37をセットして制御信号102をHレ
ベルにし、CRFレジスタ33をリセットして入換えフ
ラグ108をLレベルにする。
【0026】図5は、図4でパイプライン処理されるプ
ログラムの命令アドレスを示す表である。特に指定のな
いかぎり、パイプライン処理される各命令には、プログ
ラムカウンタを強制的に変更する分岐命令以外の一般命
令が採用されている。同図(a)に示したROM2の領
域の現行プログラムには、a−1からa+10までに一
般命令が予め記憶されている。図の例では、アドレスa
−1に命令P、アドレスaに命令Q、アドレスa+1に
命令R、アドレスa+2に命令S、アドレスa+3に命
令T、アドレスa+4に命令U、〜、アドレスa+10
に命令Zが記憶されている。現行プログラムのアドレス
a+1は、ROMコレクション機能を作用させる対象ア
ドレスであり、同図(b)に示した回避領域には、これ
に対応する修正プログラムが格納される。回避領域の修
正プログラムは、アドレスbが命令H、アドレスb+1
が命令I、アドレスb+2が命令J、アドレスb+3が
命令K、〜、アドレスb+4が命令Lであり、全ての命
令が一般命令である。修正プログラムのアドレスb+5
の命令Mは、ROM領域のアドレスa+10にジャンプ
する分岐命令である。
【0027】図6は、図4でプライン処理するCPU1
が行うアドレス計算課程を示す表である。図4及び図6
を参照してパイプライン処理を説明する。期間T1に、
アドレスバス8はアドレスa、データバス10は命令P
の命令コード、PCEXステージバス7はアドレスa−
3、現行アドレス104はアドレスa−1である。CP
U1は、命令PをIFステージとして処理する。以後、
CPU1は、システムクロック9に同期して、各命令を
対応した夫々のステージでパイプライン処理する。期間
T2に、命令PはIDステージに、命令QはIFステー
ジになる。
【0028】期間T3に、対象アドレス101と現行ア
ドレス104との比較結果である第1比較信号103が
Hレベルになり、第1比較信号103と制御信号102
との論理積である選択信号105がHレベルになる。R
OMコレクションユニット3は、セレクタ36が分岐命
令出力回路32からの分岐命令JMPをデータバス10
に出力することで、ROMコレクション機能である命令
入換えを行う。命令PはEXステージに、命令QはID
ステージに、分岐命令JMPはIFステージになる。期
間T4に、命令PはMEMステージに、命令QはEXス
テージに、分岐命令JMPはIDステージに、命令Sは
IFステージになる。
【0029】期間T5に、対象アドレス101とPCE
Xステージバス7との比較結果である第2比較信号10
6がHレベルになり、第2比較信号106と制御信号1
02との論理積である入換え信号107がHレベルにな
る。CRFレジスタ33は、入換え信号107によりセ
ットされ、入換えフラグ108がHレベルになる。CP
U1で行われる処理は、命令PがWBステージに、命令
QがMEMステージに、分岐命令JMPがEXステージ
になる。CPU1は、分岐命令JMPの実行によって、
アドレスバス8のアドレスを修正プログラムの命令Hの
アドレスであるbにするので、実行が現行プログラムか
ら修正プログラムに回避する。
【0030】期間T6に、命令QはWBステージに、命
令HはIFステージになる。期間T7に、命令HはID
ステージに、命令IはIFステージになる。その後、現
行プログラムの命令Zのアドレスa+10にジャンプす
る分岐命令である命令MがEXステージになる。CPU
1は、命令Mの実行によって、アドレスバス8のアドレ
スを現行プログラムの命令Zのアドレスであるa+10
にするので、実行が修正プログラムから現行プログラム
に復帰する。
【0031】図7は、図1のマイクロコンピュータが行
うパイプライン処理の第2例を示すタイムチャートであ
る。第2例では、現行プログラムのアドレスaに記憶さ
れている命令Xが分岐命令である点が、図4のパイプラ
イン処理の第1例と異なる。
【0032】図8は、図7でパイプライン処理されるプ
ログラムの命令アドレスを示す表である。同図(a)に
示したROM2の領域の現行プログラムのアドレスaに
は、回避領域の修正プログラムのアドレスbにジャンプ
する分岐命令の命令Xが記憶されている。
【0033】図9は、図7でパイプライン処理するCP
U1が行うアドレス計算課程を示す表である。図7及び
図9を参照してパイプライン処理を説明する。期間T4
に、命令PがMEMステージに、命令XがEXステージ
になる。CPU1は、命令Xを実行すると、アドレスバ
ス8のアドレスをbにして、回避領域の修正プログラム
を順次に実行する。
【0034】CPU1は、命令Mを実行し現行プログラ
ムに復帰すると、現行プログラムのアドレスa+10か
ら順次に実行するので、ROMコレクション機能によっ
て入れ換えられた分岐命令JMPは実行されない。RO
Mコレクションユニット3は、入換えフラグ108をL
レベルに維持する。
【0035】上記実施形態例によれば、CPU1は、周
辺データバス6を介してCRFレジスタ33の入換えフ
ラグ108を参照することで、ROMコレクション機能
によって入れ換えられた分岐命令JMPが実行されたか
否かを識別する。
【0036】図10は、図1のROMコレクションユニ
ット3の第2実施形態例を示すブロック図である。この
例は、入れ換える命令を任意に設定できる点が第1実施
形態例と異なる。
【0037】ROMコレクションユニット3Aは、図3
のROMコレクションユニット3に加えて、ROMコレ
クション機能によって現行プログラムの命令と入れ換え
る修正命令を格納する命令レジスタ61を備える。命令
レジスタ61は、データ入力が周辺データバス6に接続
され、データ出力がセレクタ36の第2データ入力に接
続されていて、システムクロック9に同期して動作す
る。
【0038】CPU1は、周辺データバス6を介して、
ROMコレクション機能によって現行プログラムの命令
と入れ換える修正命令を命令レジスタ61に任意に設定
する。本実施形態例のROMコレクション機能は、現行
プログラムに対して個々の命令だけを変更したい場合に
採用する。
【0039】上記実施形態例によれば、マイクロコンピ
ュータは、ROMコレクション機能を有しパイプライン
処理を行う際に、バグを有する対象アドレスの命令の入
換え動作だけでプログラムの回避が可能となり、修正プ
ログラムへの回避命令の処理、及び、現行プログラムへ
の復帰命令の処理を伴わないので、スループットが向上
する。
【0040】以上、本発明をその好適な実施形態例に基
づいて説明したが、本発明の命令入換え回路は、上記実
施形態例の構成にのみ限定されるものでなく、上記実施
形態例の構成から種々の修正及び変更を施した命令入換
え回路も、本発明の範囲に含まれる。
【0041】
【発明の効果】以上説明したように、本発明の命令入換
え回路は、ROMコレクション機能によって入れ換えら
れた分岐命令JMPが実行されたか否かを識別するフラ
グを有するため、本発明の命令入換え回路を備えパイプ
ライン処理するマイクロコンピュータは、ROM領域に
ある現行プログラムの修正部分に対して、ROMコレク
ション機能を作用させる対象アドレスを複数設定して
も、夫々の対象アドレスに対して正しい優先順位が判断
できる。
【図面の簡単な説明】
【図1】本発明の一実施形態例のROMコレクションユ
ニットを備えたマイクロコンピュータのブロック図であ
る。
【図2】図1のCPU1の具体的な構成例を示すブロッ
ク図である。
【図3】図1のROMコレクションユニット3の第1実
施形態例を示すブロック図である。
【図4】図1のマイクロコンピュータが行うパイプライ
ン処理の第1例を示すタイムチャートである。
【図5】図4でパイプライン処理されるプログラムの命
令アドレスを示す表である。
【図6】図4でパイプライン処理するCPU1が行うア
ドレス計算課程を示す表である。
【図7】図1のマイクロコンピュータが行うパイプライ
ン処理の第2例を示すタイムチャートである。
【図8】図7でパイプライン処理されるプログラムの命
令アドレスを示す表である。
【図9】図7でパイプライン処理するCPU1が行うア
ドレス計算課程を示す表である。
【図10】図1のROMコレクションユニット3の第2
実施形態例を示すブロック図である。
【図11】特開平8−95946に記載のマイクロコン
ピュータを示すブロック図である。
【符号の説明】
1,87 CPU 2,83 ROM 3 ROMコレクションユニット 4 システムクロック発生ユニット 5,10,91 データバス 6 周辺データバス 7 PCXステージバス 8,82 アドレスバス 9 システムクロック 11 IF/IDレジスタ 12 ID/EXレジスタ 13 EX/MEMレジスタ 14 デコーダ 15,16 加算器 17,36 セレクタ 18 PCレジスタ 21,23 被加数 22,24 加数 25 セレクト信号 31 CAレジスタ 32 分岐命令出力回路 33 CRFレジスタ 34,35 コンパレータ 37 CCレジスタ 38,39 ラッチ 41,42 2入力AND 61 命令レジスタ 101 対象アドレス 102 制御信号 103 第1比較信号 104 現行アドレス 105,92 選択信号 106 第2比較信号 107 入換え信号 108 入換えフラグ 81 フェッチポインタ 84 RAM 85 比較回路 86 レジスタ 88 選択回路 89 分岐命令出力回路 90 シリアルインタフェース 92 選択信号 93 マイクロコンピュータ 94 メモリ 95 命令キュー

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 実行する命令群を記憶するROMと、該
    ROMの命令群に基づいて各命令を順次にパイプライン
    処理するCPUと、前記ROMから送られる現行命令
    を、所定の条件下で対応する修正命令に入れ換える入換
    え機能を有する命令入換え回路において、 入換え対象となる命令の対象アドレスを設定する対象ア
    ドレスレジスタと、前記CPUのフェッチステージに割
    り当てられた現行命令のアドレスと前記対象アドレスと
    を比較する比較回路と、該比較回路の比較結果に基づい
    て前記現行命令又は対応する修正命令の何れかを選択す
    る選択回路と、該選択回路が前記修正命令を選択した旨
    を表示する動作フラグとを有するROMコレクションユ
    ニットを、複数の入換え対象の命令に対応して複数備え
    ることを特徴とする命令入換え回路。
  2. 【請求項2】 前記動作フラグは、前記CPUの実行ス
    テージで設定される、請求項1に記載の命令入換え回
    路。
  3. 【請求項3】 外部入力に基づいて前記修正命令を任意
    に設定可能とした、請求項1又は2に記載の命令入換え
    回路。
JP11161601A 1999-06-08 1999-06-08 命令入換え回路 Pending JP2000347862A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP11161601A JP2000347862A (ja) 1999-06-08 1999-06-08 命令入換え回路
US09/589,435 US6829735B1 (en) 1999-06-08 2000-06-07 Computer system having a ROM correction unit
DE10028064A DE10028064B4 (de) 1999-06-08 2000-06-07 Computersystem mit ROM-Korrektureinheiten
KR1020000030966A KR100355630B1 (ko) 1999-06-08 2000-06-07 롬 정정 유닛을 구비하는 컴퓨터 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11161601A JP2000347862A (ja) 1999-06-08 1999-06-08 命令入換え回路

Publications (1)

Publication Number Publication Date
JP2000347862A true JP2000347862A (ja) 2000-12-15

Family

ID=15738266

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11161601A Pending JP2000347862A (ja) 1999-06-08 1999-06-08 命令入換え回路

Country Status (4)

Country Link
US (1) US6829735B1 (ja)
JP (1) JP2000347862A (ja)
KR (1) KR100355630B1 (ja)
DE (1) DE10028064B4 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007249636A (ja) * 2006-03-16 2007-09-27 Kenwood Corp Romコレクション管理装置及びromコレクション管理方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100410557B1 (ko) * 2001-11-19 2003-12-18 주식회사 하이닉스반도체 프로그램 수정 가능한 마이크로컨트롤러 및 구동방법
JP4194310B2 (ja) * 2002-07-19 2008-12-10 株式会社ルネサステクノロジ 電子装置
JP6478562B2 (ja) 2013-11-07 2019-03-06 株式会社半導体エネルギー研究所 半導体装置
JP6393590B2 (ja) * 2013-11-22 2018-09-19 株式会社半導体エネルギー研究所 半導体装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5816350A (ja) * 1981-07-22 1983-01-31 Toshiba Corp メモリ拡張代替方式
JPH02165342A (ja) * 1988-12-20 1990-06-26 Nec Corp マイクロプロセサを有する演算処理装置
JP3810805B2 (ja) 1992-09-19 2006-08-16 ソニー株式会社 情報修正システム
JPH0764784A (ja) * 1993-08-31 1995-03-10 Nec Corp マイクロコンピュータ
JPH089435A (ja) * 1994-06-15 1996-01-12 Nec Corp 選択呼出受信機
JPH0895946A (ja) * 1994-09-22 1996-04-12 Nec Corp マイクロコンピュータ
JPH08185319A (ja) 1994-12-27 1996-07-16 Toshiba Corp マイクロコンピュータ及びそのプログラム訂正方法
JPH09198245A (ja) 1996-01-19 1997-07-31 Matsushita Electric Ind Co Ltd ディジタルシグナルプロセッサ
JPH09319569A (ja) 1996-05-31 1997-12-12 Mitsubishi Electric Corp マイクロコンピュータ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007249636A (ja) * 2006-03-16 2007-09-27 Kenwood Corp Romコレクション管理装置及びromコレクション管理方法

Also Published As

Publication number Publication date
KR20010015000A (ko) 2001-02-26
DE10028064B4 (de) 2006-03-02
US6829735B1 (en) 2004-12-07
DE10028064A1 (de) 2001-03-22
KR100355630B1 (ko) 2002-10-11

Similar Documents

Publication Publication Date Title
US6460135B1 (en) Data type conversion based on comparison of type information of registers and execution result
JPH07281896A (ja) 情報処理装置
TW400469B (en) Device capable of fixing programs in embedded microprocessor
US7493473B2 (en) Method of executing instructions using first and second control units that share a state register
JPH02227730A (ja) データ処理システム
EP2159691A1 (en) Simultaneous multithreaded instruction completion controller
JP2008305185A (ja) プロセッサ装置及び複合条件処理方法
JP2000347862A (ja) 命令入換え回路
JPH0743648B2 (ja) 情報処理装置
US7415599B1 (en) Instruction operation and operand memory location determined based on preceding instruction operation and operand memory location
JPH02242434A (ja) タスクのスケジューリング方法
US20080244240A1 (en) Semiconductor device
US20030061468A1 (en) Forwarding the results of operations to dependent instructions quickly
US6789185B1 (en) Instruction control apparatus and method using micro program
US7222219B2 (en) Memory control method and memory control apparatus for pipeline processing
EP1132813A2 (en) Computer with high-speed context switching
JP2883465B2 (ja) 電子計算機
JP2000112754A (ja) データ処理装置
JPH0876996A (ja) プログラマブルコントローラ
JP2001290638A (ja) コンピュータシステム及び命令入換え方法
JPH11306044A (ja) データプロセッサ
JPH06162067A (ja) ベクトル命令制御装置および制御方法
US7003543B2 (en) Sticky z bit
JP3850156B2 (ja) 命令処理装置
JP4702004B2 (ja) マイクロコンピュータ

Legal Events

Date Code Title Description
A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20040521