JPH0962501A - Cpuシステム - Google Patents

Cpuシステム

Info

Publication number
JPH0962501A
JPH0962501A JP7221942A JP22194295A JPH0962501A JP H0962501 A JPH0962501 A JP H0962501A JP 7221942 A JP7221942 A JP 7221942A JP 22194295 A JP22194295 A JP 22194295A JP H0962501 A JPH0962501 A JP H0962501A
Authority
JP
Japan
Prior art keywords
rom
instruction
read
cpu
address
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
JP7221942A
Other languages
English (en)
Inventor
Shinko Yamada
眞弘 山田
Yoshitsugu Inoue
喜嗣 井上
Toru Noro
徹 野呂
Tomoki Ishii
智樹 石井
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP7221942A priority Critical patent/JPH0962501A/ja
Publication of JPH0962501A publication Critical patent/JPH0962501A/ja
Pending legal-status Critical Current

Links

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 書き換えが困難なROMにインストラクショ
ンが記憶されている場合にインストラクションの任意の
数の故障やバグに対応する。 【解決手段】 第2のROM107には、第1のROM
201のどのアドレスのインストラクションを代替えル
ーチンに置き換えるための情報が記憶され、この第2の
ROM107の代替えルーチンは第2のRAM103に
DMA転送される。第1のRAM202には第1のRO
M201のアドレスに対応してそのインストラクション
が故障、バグか否かを示す1ビットの代替え情報が記憶
され、選択信号PDとしてセレクタ204の選択端子S
ELに出力される。レジスタ203はトラップ命令のイ
ンストラクションをセレクタ204に出力し、セレクタ
204は選択信号PDがハイの場合に第1のROM20
1の出力信号を、信号PDがローの場合にレジスタ20
3のトラップ命令を選択する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、書き換えが困難な
ROMにインストラクションが記憶されたCPUシステ
ムに関する。
【0002】
【従来の技術】一般に、CPU(以下、本願明細書では
マイクロプロセッサを含めてCPUと言う場合があ
る。)は、記憶手段に記憶されたインストラクションを
読み出し、その内容に従って処理を進行する。インスト
ラクションの記憶手段としてはROMを使用することが
多く、ROMとしてはEEPROM、EPROM、OT
PROM、フラッシュROM、マスクROM等が知られ
ている。この場合、同一内容のROMを大量に必要とす
る場合にはマスクROMが最も安価であるが、マスクR
OMは書き換え不能であるので、開発後にバグが発見さ
れると破棄するしかない。
【0003】また、近年では半導体の集積度の向上によ
り、CPUに対してROM、RAMや周辺回路までが同
一パッケージに収納される。この場合、プログラムの開
発中には書き換え可能なように紫外線消去型のPROM
を用い、量産版ではこのPROMの代わりに書換えが不
可能なマスクROMを用いている。したがって、このマ
スクROMに対して変更が必要になった場合にはチップ
全体を破棄するしかない。
【0004】これに対処する方法としては、例えば特開
昭58−16350号公報に開示されている。この方法
では、記憶部の一部に故障やバグが発見された場合にそ
のアドレスと正しい代替え内容を予め記憶し、このアド
レスと記憶部に与えられるアドレスを比較して一致した
場合に代替え内容に置き換える。
【0005】また、他の方法としては、記憶部の一部に
故障やバグが発見された場合にその正しいインストラク
ションを予めRAMに記憶すると共に、そのRAMへの
ジャンプ命令を記憶することにより広範囲に渡ってイン
ストラクションを修正することができる。
【0006】
【発明が解決しようとする課題】しかしながら、上記方
法では、故障やバグがある記憶部のアドレスと記憶部に
与えられるアドレスを比較して代替え内容に置き換える
ので、予め設計されている比較器の個数しか対応するこ
とができないという問題点がある。なお、アドレス比較
手段を実現するためには多くのハードウエアを必要とす
るのでその個数に限界があり、また、少なすぎる場合に
はこのような機能を組み込んでいながらマスクROMの
再開発が必要となる。また、マスクROMの開発時や代
替え内容記憶部を含む制御回路の開発時には、マスクR
OMの故障やバグの発生はゼロを前提としており、この
時点で何個分のマスクROMの不具合に対処すべきかを
決定することは困難である。
【0007】本発明は上記従来の問題点に鑑み、書き換
えが困難なROMにインストラクションが記憶されてい
る場合にインストラクションの任意の数の故障やバグに
対応することができるCPUシステムを提供することを
目的とする。
【0008】
【課題を解決するための手段】第1の手段は上記目的を
達成するために、予め記憶されたCPUのインストラク
ションがCPUからのリード要求によりリードされるR
OMと、CPUのトラップ命令を出力するトラップ命令
出力手段と、前記ROMのアドレスに対応してそのイン
ストラクションが故障、バグか否かを示す代替え情報が
記憶され、前記ROMのアドレスリード時にその代替え
情報を出力する第1のRAMと、前記第1のRAMから
の代替え情報に基づいて、故障、バグのアドレスリード
時でない場合に前記ROMからリードされたインストラ
クションを選択し、故障、バグのアドレスリード時に前
記トラップ命令出力手段から出力されたトラップ命令を
選択する選択手段と、前記ROMに記憶されたインスト
ラクションの代替えルーチンが記憶された第2のRAM
とを有し、前記CPUは、前記選択手段が前記ROMか
らリードされたインストラクションを選択した場合にそ
のインストラクションを実行し、トラップ命令を選択し
た場合にそのトラップ命令に基づいて前記第2のRAM
に記憶された代替えルーチンを実行することを特徴とす
る。
【0009】第2の手段は、第1の手段において前記C
PU、ROM、トラップ命令出力手段、第1及び第2の
RAM及び選択手段を同一パッケージ内に収納すると共
に、代替えルーチンが記憶された第2のROMを前記パ
ッケージに外付けし、前記第2のROMから前記第2の
RAMに代替えルーチンを転送することを特徴とする。
【0010】第3の手段は、第2の手段において前記第
2のROMから前記第2のRAMに代替えルーチンをD
MA転送することを特徴とする。
【0011】第4の手段は、第1ないし第3の手段にお
いて前記ROMから1バスサイクルでリードされるデー
タ量を1ワードとして、前記第2のRAMからリードさ
れる1ワードが前記ROMの複数ワードに対応すること
を特徴とする。
【0012】第5の手段は、予め記憶されたCPUのイ
ンストラクションがCPUからのリード要求によりリー
ドされる第1のROMと、前記第1のROMのアドレス
に対応してそのインストラクションが故障、バグか否か
を示す代替え情報その代替えルーチンが記憶され、前記
第1のROMのアドレスリード時にその代替え情報を出
力する第2のROMと、前記第2のROMからの代替え
情報に基づいて、故障、バグのアドレスリード時でない
場合に前記ROMからリードされたインストラクション
を選択し、故障、バグのアドレスリード時にCPUのト
ラップ命令を選択して出力するトラップ命令出力手段
と、前記CPUは、前記トラップ命令出力手段から前記
第1のROMからリードされたインストラクションが出
力された場合にそのインストラクションを実行し、トラ
ップ命令が出力された場合にそのトラップ命令に基づい
て前記第2のROMに記憶された代替えルーチンを実行
することを特徴とする。
【0013】第6の手段は、第5の手段において前記第
2のROMに記憶された代替えルーチンをDMA転送す
るためのDRAMを有し、前記CPUは、前記DRAM
にDMA転送された代替えルーチンを実行することを特
徴とする。
【0014】第7の手段は、第5または第6の手段にお
いて前記第1のROMから1バスサイクルでリードされ
るデータ量を1ワードとして、前記第2のROMからリ
ードされる1ワードが前記第1のROMの複数ワードに
対応することを特徴とする。
【0015】
【発明の実施の形態】以下、図面を参照して本発明の実
施の形態について説明する。図1は本発明に係るCPU
システムの一実施形態を示すブロック図、図2は図1の
ROM部を詳細に示すブロック図、図3はCPU部から
のリード要求によりROM部がCPU部にデータを供給
する動作を説明するためのタイミングチャート、図4は
第1のROMと第2のRAMの対応関係を示す説明図で
ある。
【0016】図1において、CPU部101、図2に詳
しく示すROM部102、第2のRAM103及びパラ
レルI/O部104は同一のパッケージ(半導体チッ
プ)105内に収容されている。パラレルI/O部10
4にはバッファ素子である外部I/F106が接続さ
れ、ROM部102には外部の第2のROM107が接
続されている。また、チップ105には外部の基準クロ
ック用発振器(OSC)108が接続されている。RO
M部102は図2に詳しく示すように、第1のROM2
01、第1のRAM202、レジスタ203、セレクタ
204、206、207及びシーケンサ205を有す
る。
【0017】図1において、CPU部101はROM部
102から供給されるインストラクションに従って、第
2のRAM103をワークエリアとして使用しながら処
理を進行し、また、外部とのインタフェースを取るため
にパラレルI/O部104を使用する。外部の第2のR
OM107は、図2に示す第1のROM201の内容の
修正が必要な場合にのみ接続され、ROM部102から
制御される。
【0018】この第2のROM107には、第1のRO
M201のどのアドレスのインストラクションを代替え
ルーチンに置き換えるための情報が記憶され、また、代
替えルーチンのインストラクションが圧縮された形式で
記憶されている。そして、この第2のROM107の代
替えルーチンが第2のRAM103にDMA転送され、
CPU部101はRAM103にDMA転送された代替
えルーチンを実行する。
【0019】図2に示す第1のROM201には、CP
U部101が実行する本来のインストラクションが記憶
され、セレクタ206からのアドレスA〔20:2〕に
応じたインストラクションIROMD〔31:0〕をセ
レクタ204の入力端子Aに出力する。第1のRAM2
02には第1のROM201のアドレスに対応してその
インストラクションが故障、バグか否かを示す1ビット
の代替え情報がシーケンサ205からの信号WD、WP
* に基づいて記憶される。第1のRAM202は第1の
ROM201との間でアドレスバスA〔20:2〕を共
有し、セレクタ206からのアドレスA〔20:4〕に
応じて故障、バグか否かを示す代替え情報を選択信号P
Dとしてセレクタ204の選択端子SELに出力する。
【0020】レジスタ203はトラップ命令のインスト
ラクションREGD〔31:0〕をセレクタ204の入
力端子Bに出力し、セレクタ204は選択信号PDがハ
イの場合に第1のROM201の出力信号を、信号PD
がローの場合にレジスタ203の出力信号を選択する
(出力信号ROMD〔31:0〕)。したがって、第1
のRAM202からローレベルの選択信号PDを出力す
ることにより、第1のROM201のリードデータの代
わりにトラップ命令を信号ROMD〔31:0〕として
出力することができる。
【0021】シーケンサ205は第2のROM107か
らの読み出し制御、第1のRAM202への書き込み制
御、外部の第2のROM107から第2のRAM103
への代替えルーチンのDMA転送の制御等を行う。外部
の第2のROM107はシリアルEEPROMであり、
シーケンサ205からの2本の信号線SCK(クロック
用)、SDA(アドレス/データ転送用)を使用して読
み出しを行うことができる。
【0022】ここで、2本の信号線のみを使用するが、
クロック信号SCKに対するアドレス/データ転送線S
DA上のデータの変化のタイミング及びアドレス/デー
タ転送線SDA上にドライブするデータパターンのシー
ケンスによりリード、ライトを行うことができる。但
し、本実施例では、第2のROM107として専用のラ
イタにより書き込みを行ったEEPROMを使用するの
で、書き込みを行うことはない。
【0023】この第2のROM107から読み出された
データは第1のRAM202の代替え情報と第2のRA
M103の代替えルーチンとなる。この場合、第1のR
AM202と第2のRAM103に書き込む時にはシー
ケンサ205からのバス使用要求信号BREQ* をアサ
ートすることによりバスの使用要求を発行する。CPU
部101はこのバス使用要求を許可する時にはシーケン
サ205に対するバス使用許可信号BGNT* をアサー
トし、シーケンサ205はこのバス使用許可信号BGN
* のアサートを検出してDMA転送を開始する。
【0024】セレクタ206はCPU部101から入力
するアドレス信号ROMA〔20:2〕又はシーケンサ
205から入力するDMA用アドレス信号DMAA〔2
0:2〕をシーケンサ205からの選択信号SEL23
により選択し、アドレスバスA〔20:2〕上及び第1
のROM201、第1のRAM202に出力する。
【0025】セレクタ207はCPU部101から入力
するRAMセレクト信号CPURAMCS* 又はシーケ
ンサ205から入力するDMA用RAMセレクト信号D
MARAMCS* をシーケンサ205からの選択信号S
EL23により選択し、RAMのチップセレクト信号R
AMCS* として出力する。信号線DMA〔31:0〕
は第2のRAM103へDMA転送を行う時のデータバ
スであり、このデータバスDMA〔31:0〕に有効な
データをドライブしている時に信号DMAE*がアサー
トされる。
【0026】次に、図3を参照してCPU部101から
のインストラクションリード要求によりROM部102
がCPU部101にインストラクション又はトラップ命
令を供給する動作を説明する。先ず、CPU部101か
らアドレスバスROMA〔20:2〕に対してA0がド
ライブされる。DMA中でない場合、このアドレスA0
がセレクタ206を介してそのまま第1のROM201
と第1のRAM202のアドレスとして供給され、第1
のROM201はそのデータD0をデータバスIROM
D〔31:0〕を介してセレクタ204に出力する。
【0027】そして、第1のRAM202が例えばハイ
レベルの信号PDを出力した場合には、セレクタ204
は第1のROM201からのデータD0を選択して信号
線ROMD〔31:0〕に出力する。したがって、第1
のROM201からのデータD0がそのままCPU部1
01に供給され、CPU部101はデータD0のインス
トラクションを実行する。
【0028】次に、CPU部101がアドレスバスRO
MA〔20:2〕のA1からリードを行うためにアドレ
スA1をドライブすると、第1のROM201はデータ
D1をデータバスIROMD〔31:0〕に出力する。
そして、第1のRAM202が例えばローレベルの信号
PDを出力した場合には、セレクタ204はレジスタ2
03からのトラップ命令のインストラクション・パター
ンを選択して信号線ROMD〔31:0〕に出力する。
【0029】これにより、CPU部101はトラップ処
理ルーチンにジャンプし、次いで予めDMA転送により
代替えルーチンのインストラクションがダウンロードさ
れている第2のRAM103にジャンプする。そしてC
PU部101は内部のプログラムカウンタの値に対応す
る代替えルーチンのアドレスを求めてその代替えルーチ
ンを実行し、代替えルーチンを終了すると元の第1のR
OM201にジャンプする。したがって、これにより任
意の箇所を代替えルーチンに置き換えることができる。
【0030】図4を参照して第1のROM201と第2
のRAM103の対応関係を説明する。第1のROM2
01にはインストラクションINSTが記憶され、第2
のRAM103は第1のROM201の4ワードに対し
て1ワードのデータを有する。図4では一例として処理
1のルーチンが第1のROM201のアドレス0x00
017までの領域に、また、処理2のルーチンがアドレ
ス0x00018までの領域に記憶されている。
【0031】第2のRAM103は第1のROM201
の内容をそのままCPU部101に供給する(PD=1
の場合)か、またはトラップ命令に置き換えて供給する
(PD=0の場合)かのステートを待つ。今、処理2の
ルーチンを修正するものとするとステート5を「0」と
する。
【0032】この場合、処理2のルーチンの一部である
インストラクションINST23が実行されるが、本実
施例では代替えルーチンでも同様に実行すべき命令であ
る。そこで、代替えルーチンでも実行すべき命令や、実
行による影響を無視できる命令や、実行したことによる
悪影響をその後の代替えルーチンで除去できる命令であ
る場合には、ステート4を「0」にしてインストラクシ
ョンINST23の実行を阻止する必要はなく、ステー
ト5を「0」にすればよい。
【0033】次に、図5及び図6を参照して第2の実施
例を説明する。図5は第2の実施例のCPUシステムを
示すブロック図、図6は第2の実施例の動作を説明する
ためのタイミングチャート、図7は第1、第2のROM
の対応関係を示す説明図である。CPU301は制御A
SIC302との間で32ビットのアドレス/データバ
スSAD〔31:0〕、ALE、リード信号RD* 、ラ
イト信号WR* 、ACK信号ACK* 等の信号線を介し
てインタフェースする。なお、図5では説明上最低限必
要なもののみが示されている。
【0034】第1のROM303はCPU301が実行
する本来のインストラクションが記憶されたマスクRO
Mであり、一例として1MBの容量を有し、データバス
幅は32ビットである(図示D〔31:0〕)。また、
第1のROM303は制御ASIC302から出力され
るアドレスバスA〔20:2〕の内、A19からA2ま
での18ビットを使用する。また、第1のROM303
と制御ASIC302との間は、データバスD〔31:
0〕とチップセレクト信号CS* を介して接続されてい
る。
【0035】第2のROM304は128kビットの容
量を有し、データバス幅が1ビットの紫外線消去型プロ
グラムROM(EPROM)である。この第2のROM
304の前半の64kビットの領域には、第1のROM
303のインストラクションをそのままCPU301に
供給するか否かを示すデータ(代替え情報)が記憶さ
れ、後半の64kビットの領域にはトラップ命令と代替
えルーチンが記憶されている。なお、第1のROM30
3のインストラクションをそのままCPU301に供給
する場合にはPD=1、代替えルーチンをCPU301
に供給する場合にはPD=0が記憶されている。
【0036】また、第2のROM304のチップセレク
ト端子は常にアサートされており、アドレスのみで制御
される。また、第2のROM304と制御ASIC30
2との間は、アドレスバスA〔20:4〕とデータバス
D〔31:0〕とデータバスPDを介して接続されてい
る。
【0037】DRAM305はCPU301が処理を進
行する場合にデータを記憶するために用いられ、データ
バスD〔31:0〕に接続されると共に代替えルーチン
読み出し用の信号DCONを介して制御ASIC302
に接続されている。また、第2のROM304の代替え
ルーチンがDRAM305にDMA転送され、CPU3
01はこの代替えルーチンをDRAM305から制御A
SIC302を介して読み出して実行する。
【0038】次に、図6を参照して動作を説明する。3
2ビットのアドレス/データバスSDA〔31:0〕
は、CPU301がアドレスを出力する時と、外部デバ
イス(制御ASIC302)との間でデータを転送する
時に使用され、アドレス転送時に使用される時にはCP
U301が信号ALEをアサートする。信号ALEのア
サート、ネゲートのタイミングは、制御ASIC302
のトランスペアレント・ラッチのコントロール端子に信
号線ALEを接続し、また、データ入力端子にバスSD
A〔31:0〕を接続した場合に制御ASIC302の
データ出力端子からアドレスのみを取り出すのに適した
タイミングである。
【0039】リード信号RD* とライト信号WR* は共
にアクティブ時にローであり、それぞれCPU301が
リード要求時、ライト要求時にアサートする。ACK信
号ACK* もアクティブ時にローであり、CPU301
からのアクセス要求時に対し、そのバスサイクルを終了
してもよい場合に制御ASIC302がアサートする。
第1のROM303及び第2のROM304に対するア
ドレスバスA〔20:2〕は制御ASIC302により
ドライブされる。
【0040】図6を左側から順番に参照すると、CPU
301がバスSDA〔31:0〕に対してリード要求の
アドレスA0をドライブし、また、信号ALEとリード
信号RD* をドライブすると、制御ASIC302はこ
れを受けてアドレスバスA〔20:2〕のアドレスA0
をドライブする共にチップセレクト信号CS* をアサー
トして第1のROM303からのインストラクションの
リードを開始する。この時、アドレスバスA〔20:
4〕が第2のROM304に接続されているので、第2
のROM304からもアドレスA0に対応するデータが
リードされる。
【0041】所定時間後に第1のROM303、第2の
ROM304からそれぞれデータD0、例えばPD=1
が出力された場合、制御ASIC302はバスSDA
〔31:0〕に出力データD0をドライブし、また、A
CK信号ACK* をアサートする。これにより、CPU
301はアドレスA0へのリード要求に対するデータD
0を受け入れ、そのインストラクションを実行する。
【0042】次にCPU301はアドレスA1のリード
を要求する。このアドレスA1も第1のROM303の
空間であるので、制御ASIC302はアドレスバスA
〔20:2〕のアドレスA0をドライブする共にチップ
セレクト信号CS* をアサートし、第1のROM30
3、第2のROM304からリードを行う。第1のRO
M303、第2のROM304からそれぞれデータD
1、例えばPD=0が出力された場合、制御ASIC3
02はCPU301に対してデータD1の代わりにトラ
ップ命令を出力し、また、ACK信号ACK* をアサー
トしない。
【0043】CPU301はこれによりトラップ処理ル
ーチンにジャンプする。トラップ処理ルーチンでは、予
め第2のROM304の後半領域からDRAM305に
ダウンロードされている代替えルーチンのインストラク
ション領域にジャンプする。ここで、制御ASIC30
2内にはDMAコントローラが設けられ、第1の実施例
と同様にDMAコントローラは代替えルーチンのインス
トラクションを第2のROM304から1ビットずつリ
ードし、32ビット分のデータがたまったらDRAM3
05に書き込む。
【0044】また、第1の実施例と同様にCPU301
は内部のプログラムカウンタの値に対応する代替えルー
チンのアドレスを求めてその代替えルーチンを実行し、
代替えルーチンを終了すると元の第1のROM304に
ジャンプする。したがって、これにより任意の箇所を代
替えルーチンに置き換えることができる。また、図4と
同様に、例えば第1のROM303の4ワードを第2の
RAM304の1ワードに対応させることができる。
【0045】
【発明の効果】以上説明したように請求項1記載の発明
によれば、インストラクションが記憶されたROMのア
ドレスに対応してそのインストラクションの故障、バグ
か否かを示す代替え情報を第1のRAMに記憶する共に
そのインストラクションの代替えルーチンを第2のRA
Mに記憶し、故障、バグのアドレス読み出し時にはRO
Mに記憶されたインストラクションに置き換えて第2の
RAMに記憶された代替えルーチンを実行するようにし
たので、インストラクションの任意の数の故障やバグに
対応することができる。
【0046】請求項2記載の発明によれば、CPU、R
OM、トラップ命令出力手段、第1及び第2のRAM及
び選択手段を同一パッケージ内に収納すると共に、代替
えルーチンが記憶された第2のROMを前記パッケージ
に外付けし、代替えルーチンを前記第2のROMから前
記第2のRAMに転送するので、わずかな部品点数でイ
ンストラクションの任意の数の故障やバグに対応するこ
とができる。
【0047】請求項3記載の発明によれば、DMA転送
により代替えルーチンを第2のROMから第2のRAM
に転送するので、DMA転送とCPUのインストラクシ
ョン処理を並列に処理することができ、処理を高速化す
ることができる。特に第2のROMのデータバス幅が狭
い場合に処理を高速化することができる。
【0048】請求項4記載の発明によれば、ROMから
1バスサイクルでリードされるデータ量を1ワードとし
て、第2のRAMからリードされる1ワードがROMの
複数ワードに対応するので、第2のRAMの容量を減ら
すことができる。
【0049】請求項5記載の発明によれば、インストラ
クションが記憶された第1のROMのアドレスに対応し
てそのインストラクションの故障、バグか否かを示す代
替え情報とそのインストラクションの代替えルーチンを
第2のROMに記憶し、故障、バグのアドレス読み出し
時には第1のROMに記憶されたインストラクションに
置き換えて第2のROMに記憶された代替えルーチンを
実行するようにしたので、インストラクションの任意の
数の故障やバグに対応することができる。
【0050】請求項6記載の発明によれば、DMA転送
により代替えルーチンを第2のROMからDRAMに転
送するので、DMA転送とCPUのインストラクション
処理を並列に処理することができ、処理を高速化するこ
とができる。特に第2のROMのデータバス幅が狭い場
合に処理を高速化することができる。
【0051】請求項7記載の発明によれば、第1のRO
Mから1バスサイクルでリードされるデータ量を1ワー
ドとして、第2のROMからリードされる1ワードが第
1のROMの複数ワードに対応するので、第2のROM
の容量を減らすことができる。
【図面の簡単な説明】
【図1】本発明に係るCPUシステムの一実施例を示す
ブロック図である。
【図2】図1のROM部を詳細に示すブロック図であ
る。
【図3】CPU部からのリード要求によりROM部がC
PU部にデータを供給する動作を説明するためのタイミ
ングチャートである。
【図4】第1のROMと第2のRAMの対応関係を示す
説明図である。
【図5】第2の実施例のCPUシステムを示すブロック
図である。
【図6】第2の実施例の動作を説明するためのタイミン
グチャートである。
【図7】第1、第2のROMの対応関係を示す説明図で
ある。
【符号の説明】
101,301 CPU 102 ROM部 103 第2のRAM 107,304 第2のROM 201,303 第1のROM 202 第1のRAM 203 レジスタ 204 セレクタ 302 制御ASIC 305 DRAM
───────────────────────────────────────────────────── フロントページの続き (72)発明者 石井 智樹 東京都大田区中馬込1丁目3番6号 株式 会社リコー内

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 予め記憶されたCPUのインストラクシ
    ョンがCPUからのリード要求によりリードされるRO
    Mと、 CPUのトラップ命令を出力するトラップ命令出力手段
    と、 前記ROMのアドレスに対応してそのインストラクショ
    ンが故障、バグか否かを示す代替え情報が記憶され、前
    記ROMのアドレスリード時にその代替え情報を出力す
    る第1のRAMと、 前記第1のRAMからの代替え情報に基づいて、故障、
    バグのアドレスリード時でない場合に前記ROMからリ
    ードされたインストラクションを選択し、故障、バグの
    アドレスリード時に前記トラップ命令出力手段から出力
    されたトラップ命令を選択する選択手段と、 前記ROMに記憶されたインストラクションの代替えル
    ーチンが記憶された第2のRAMとを有し、 前記CPUは、前記選択手段が前記ROMからリードさ
    れたインストラクションを選択した場合にそのインスト
    ラクションを実行し、トラップ命令を選択した場合にそ
    のトラップ命令に基づいて前記第2のRAMに記憶され
    た代替えルーチンを実行することを特徴とするCPUシ
    ステム。
  2. 【請求項2】 前記CPU、ROM、トラップ命令出力
    手段、第1及び第2のRAM及び選択手段を同一パッケ
    ージ内に収納すると共に、代替えルーチンが記憶された
    第2のROMを前記パッケージに外付けし、前記第2の
    ROMから前記第2のRAMに代替えルーチンを転送す
    ることを特徴とする請求項1記載のCPUシステム。
  3. 【請求項3】 前記第2のROMから前記第2のRAM
    に代替えルーチンをDMA転送することを特徴とする請
    求項2記載のCPUシステム。
  4. 【請求項4】 前記ROMから1バスサイクルでリード
    されるデータ量を1ワードとして、前記第2のRAMか
    らリードされる1ワードが前記ROMの複数ワードに対
    応することを特徴とする請求項1ないし3のいずれかに
    記載のCPUシステム。
  5. 【請求項5】 予め記憶されたCPUのインストラクシ
    ョンがCPUからのリード要求によりリードされる第1
    のROMと、 前記第1のROMのアドレスに対応してそのインストラ
    クションが故障、バグか否かを示す代替え情報その代替
    えルーチンが記憶され、前記第1のROMのアドレスリ
    ード時にその代替え情報を出力する第2のROMと、 前記第2のROMからの代替え情報に基づいて、故障、
    バグのアドレスリード時でない場合に前記ROMからリ
    ードされたインストラクションを選択し、故障、バグの
    アドレスリード時にCPUのトラップ命令を選択して出
    力するトラップ命令出力手段と、 前記CPUは、前記トラップ命令出力手段から前記第1
    のROMからリードされたインストラクションが出力さ
    れた場合にそのインストラクションを実行し、トラップ
    命令が出力された場合にそのトラップ命令に基づいて前
    記第2のROMに記憶された代替えルーチンを実行する
    ことを特徴とするCPUシステム。
  6. 【請求項6】 前記第2のROMに記憶された代替えル
    ーチンをDMA転送するためのDRAMを有し、前記C
    PUは、前記DRAMにDMA転送された代替えルーチ
    ンを実行することを特徴とする請求項5記載のCPUシ
    ステム。
  7. 【請求項7】 前記第1のROMから1バスサイクルで
    リードされるデータ量を1ワードとして、前記第2のR
    OMからリードされる1ワードが前記第1のROMの複
    数ワードに対応することを特徴とする請求項5または6
    記載のCPUシステム。
JP7221942A 1995-08-30 1995-08-30 Cpuシステム Pending JPH0962501A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7221942A JPH0962501A (ja) 1995-08-30 1995-08-30 Cpuシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7221942A JPH0962501A (ja) 1995-08-30 1995-08-30 Cpuシステム

Publications (1)

Publication Number Publication Date
JPH0962501A true JPH0962501A (ja) 1997-03-07

Family

ID=16774577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7221942A Pending JPH0962501A (ja) 1995-08-30 1995-08-30 Cpuシステム

Country Status (1)

Country Link
JP (1) JPH0962501A (ja)

Similar Documents

Publication Publication Date Title
EP0597441A1 (en) Microprocessor having a bus-width change function
JP4136359B2 (ja) マイクロコンピュータ
JP3230262B2 (ja) 電子装置及びその固定情報修正方法
US20090089488A1 (en) Memory system, memory read method and program
WO2005073850A1 (ja) 半導体装置及びその起動処理方法
US20100287426A1 (en) Memory checking system and method
JP2009181579A (ja) 機能を呼び出す方法、サブシステムおよびシステム
US7596036B2 (en) Memory control circuit, microcomputer, and data rewriting method
JPH0962501A (ja) Cpuシステム
CN1185574C (zh) 具有内置测试功能的处理器及其处理方法
US20010052114A1 (en) Data processing apparatus
US7203867B2 (en) Processor system, processor and arithmetic processing method
US20040148499A1 (en) Method and apparatus for programming revision identification numbers
JP2000293376A (ja) ブートプログラムの切替回路及び切替方法
JP3358214B2 (ja) 電子装置
CN1187687C (zh) 减少电脑初始设定元件的方法及装置
US20040103267A1 (en) Data processor having cache memory
JPH10143448A (ja) メモリシステム
JP3130798B2 (ja) バス転送装置
JPH08249206A (ja) スタック領域破壊検出機能付き計算機
JP2003337668A (ja) 画像形成装置及びそのメモリクリア方法
JP2000503792A (ja) マイクロプロセッサおよびスタックメモリを有する回路装置
JPH1139213A (ja) マイクロコンピュータ
JP4438740B2 (ja) 画像形成装置
JP2003178596A (ja) 半導体集積回路