JPH04346127A - 電子装置 - Google Patents

電子装置

Info

Publication number
JPH04346127A
JPH04346127A JP3118799A JP11879991A JPH04346127A JP H04346127 A JPH04346127 A JP H04346127A JP 3118799 A JP3118799 A JP 3118799A JP 11879991 A JP11879991 A JP 11879991A JP H04346127 A JPH04346127 A JP H04346127A
Authority
JP
Japan
Prior art keywords
address
modified
correction
rom
data
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
JP3118799A
Other languages
English (en)
Inventor
Keiichiro Shimada
島田 啓一郎
Katsumi Matsuno
克巳 松野
Sunao Furui
古居 素直
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP3118799A priority Critical patent/JPH04346127A/ja
Priority to CA002068705A priority patent/CA2068705C/en
Priority to DE69228272T priority patent/DE69228272T2/de
Priority to EP92108338A priority patent/EP0514806B1/en
Priority to KR1019920008667A priority patent/KR100276785B1/ko
Publication of JPH04346127A publication Critical patent/JPH04346127A/ja
Priority to US08/368,758 priority patent/US6237120B1/en
Pending legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00—Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02—Addressing or allocation; Relocation
    • G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; 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/22—Microcontrol or microprogram arrangements
    • G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262—Arrangements for next microinstruction selection
    • G06F9/268—Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00—Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02—Addressing or allocation; Relocation
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00—Arrangements for software engineering
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00—Arrangements for software engineering
    • G06F8/60—Software deployment
    • G06F8/65—Updates
    • G06F8/66—Updates of program code stored in read-only memory [ROM]
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; 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/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/328—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for runtime instruction patching
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14—Error detection or correction of the data by redundancy in operations
    • G06F11/1402—Saving, restoring, recovering or retrying

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 Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Memory System (AREA)
  • Document Processing Apparatus (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、専用マイクロコント
ローラ等の電子装置、特に、アドレスコントローラとし
てのセントラルプロセッシングユニット(CPU)等と
、プログラムやデータを固定的に格納したリードオンリ
メモリ(ROM)等を1チップに集積した電子装置に関
する。
【0002】
【従来の技術】従来の電子機器、例えばカメラ一体型ビ
デオカセットレコーダ(以下、カメラ一体型VCRとい
う)等には、電子機器の全体または一部を制御する制御
手段としてワンチップ化されたカスタムLSIの電子装
置、いわゆるマイクロコントローラが搭載されている。
【0003】このようなマイクロコントローラは、一般
に、セントラルプロセッシングユニット(以下、CPU
という)と、リードオンリメモリ(ROM)やランダム
アクセスメモリ(RAM)等のメモリと、入出力ポート
等の周辺回路等から構成される専用マイクロコンピュー
タである。
【0004】ここで、CPUはアドレスコントローラと
してメモリ等へのアクセスを制御し、あるいはプロセッ
サとしてプログラムを実行する。また、ROMにはプロ
グラムやデータ等、搭載される電子機器を制御するため
の情報がファームウエアの形で固定的に格納され、RA
MはCPUにプログラム実行時のワーキングエリア等を
提供し、周辺回路は外部との通信に用いられる。
【0005】従って、カスタムLSIであるマイクロコ
ントローラ等の上述電子装置を妥当な単価で提供するに
は量産が必須である。
【0006】
【発明が解決しようとする課題】近年における電子機器
の高機能化や差別化のため、マイクロコントローラのR
OMに格納されるファームウエアの容量は年々増加し、
カメラ一体型VCRを例にとれば、現在の数10キロバ
イトから数年後には100キロバイトを超えるものと予
想される。
【0007】ファームウエアの品質については、プログ
ラムの構造化や種々の検査により、マイクロコントロー
ラの量産後にバグ(虫)が発生しないように最大限の努
力が払われている。
【0008】万一、量産バグが発見された場合、従来、
外付け回路の追加等による修正や、バグを訂正したマイ
クロコントローラを再度量産して交換する等の対策に多
大の費用と時間と人材とを必要とした。加えて、カメラ
一体型VCRのような部品集積度の高い電子機器の場合
、外付け回路の追加による修正は殆ど不可能になってき
ている。
【0009】そこで、この発明は、マイクロコントロー
ラ等の電子装置のアーキテクチャを、予め量産バグに対
応できるものとすることにより、万一、量産バグが発見
された場合でも外部から修正情報を一度与えるだけでバ
グの回避が可能となる電子装置を提案するものである。
【0010】
【課題を解決するための手段】上述の課題を解決するた
め、この発明においては、情報を固定的に記憶する固定
記憶手段と、アドレス制御を行なうアドレス制御手段と
、外部からの情報を入力する入力手段を一体に集積した
電子装置において、固定記憶手段に記憶された情報の変
更部分に関する修正情報が入力手段を介して外部から入
力されたとき、この修正情報を記憶する修正情報記憶手
段と、固定記憶手段の変更部分へのアドレス制御手段に
よるアクセスをこの固定記憶手段から修正情報記憶手段
へ切り換える切り換え手段とを一体に集積したものであ
る。
【0011】
【作用】この発明の電子装置1を示す図1において、R
OM15に固定的に格納されたファームウエアに、万一
、バグ等の変更を要する部分が発生した場合、ROM1
5における変更を要する部分のアドレス、つまり修正ア
ドレスと、変更後の内容、つまり修正内容等が修正情報
7として、外部記憶手段11から入力手段12とデータ
バス13を介して、修正情報記憶手段(イ)の修正アド
レス記憶部3と修正内容記憶部2に書き込まれる。
【0012】CPU等で構成されるアドレスコントロー
ラ14は、アドレスバス16を介してROM15中の上
記変更を要する部分にアクセスしようした場合、実行ア
ドレスが修正アドレス記憶手段3に記憶された修正アド
レスと等しくなる。このとき、切り換え手段(ロ)の比
較部4はアドレス一致信号5をアクセス変更部6に出力
し、アクセス変更部6により、アクセス制御がROM1
5から修正内容記憶部2に変更される。修正内容の実行
後には、アクセス制御は再びROM15の変更したい部
分の直後のアドレスに戻される。
【0013】このように、修正情報記憶手段(イ)およ
び切り換え手段(ロ)を一体に付加した本発明の電子装
置1によれば、万一、量産バグが発生した場合でも、外
部から修正情報7を与えることにより、容易に量産バグ
の修正が可能となる。
【0014】
【実施例】続いて、この発明の実施例について、図面を
参照して詳細に説明する。
【0015】図1は、この発明の基本構成を示すブロッ
ク図である。この発明の電子装置1は、従来の構成に修
正内容記憶部2および修正アドレス記憶部3からなる修
正情報記憶手段(イ)と、比較部4およびアクセス変更
部6からなる切り換え手段(ロ)を加えたアーキテクチ
ャとされ、ROM15中のファームウエアにバグや変更
を要する部分(以下、修正部分という)が発生した場合
のパッチは次のように行なわれる。
【0016】まず、修正情報7の入力について説明する
。修正情報7はROM15における修正部分のアドレス
または、スタートアドレス(以下、修正アドレスという
)と、修正部分にパッチしたい内容や、パッチ後に復帰
するROM上のアドレス等(以下、修正内容という)で
構成される。修正情報7は、外部記憶手段11から入力
手段12、データバス13を介して修正情報記憶手段(
イ)の修正アドレス記憶部3と修正内容記憶部2に書き
込まれる。
【0017】ここで、この書き込みは、例えば電子装置
1の初期化時ROM15中のローダーによって行なわれ
る。外部記憶手段11は、図では電子装置1の外部に設
けられているが、電子装置1の内部に設けてもよい。修
正アドレス記憶部3は、修正アドレスをラッチするため
の、例えば16ビットのレジスタであり、修正アドレス
を切り換え手段(ロ)の比較部4に出力する。また、修
正内容記憶部2は修正内容を一時記憶するRAMである
。
【0018】次に、ROM15の修正部分のパッチ処理
を説明する。アドレスコントローラ14、例えばCPU
はアドレスバス16を介してROM15のアドレス制御
を行なう。修正部分の修正アドレスに達すると、比較部
4に入力する2つのアドレス、つまり実行アドレスと修
正アドレスは等しくなり、比較部4はアクセス変更部6
にアドレス一致信号5を出力し、アクセス変更部6によ
りアドレスコントローラ14のアドレス制御はROM1
5から修正内容記憶部2に移される。
【0019】修正内容記憶部2に格納された修正内容の
実行後、アドレスコントローラ14のアドレス制御は、
修正内容によって示されるROM15上の修正部分をス
キップしたアドレスに復帰する。このようにして、RO
M15に固定的に格納されたファームウエアの修正部分
のパッチが行なわれる。
【0020】ここで、アクセス変更部6は割り込み制御
回路等に相当する。
【0021】図2は、この発明の一実施例を示すブロッ
ク図であり、パッチ処理の対象がROM15上のプログ
ラムである場合に適用される。なお、図1と同一または
類似のブロックには同一の符号を付してその説明を省略
する。
【0022】EEPROM27に格納された修正情報7
は、通信回線28、通信回路29および8ビットのデー
タバス13を介して、16ビットの割り込み発生アドレ
スレジスタ21とRAM26に書き込まれる。ここで、
EEPROM27は図1の外部記憶手段11に相当し、
通信回線28と通信回路29は入力手段12に相当する
。RAM26の一部は図1の修正内容記憶部2として用
いられ、修正内容はここに書き込まれる。また、割り込
み発生アドレスレジスタ21は修正アドレス記憶部3に
相当し、修正アドレスはここにラッチされる。
【0023】比較部4に相当する16ビットコンパレー
タ22は、アドレスバス16の実行アドレスをモニタし
、修正アドレスに一致すると一致信号5を出力する。
【0024】23aは、ROM15中の修正部分の有無
を示す制御フラグラッチであり、修正情報7が入力する
と、「1」にセットされ、入力がない場合には「0」に
リセットされる。制御フラグラッチ23aが「0」の場
合、スイッチ24は「閉」であり、「1」になると「開
」に制御されるので、一致信号5は割り込み要求信号と
して割り込み制御回路25に入力し、割り込み制御回路
25による割り込み処理により、割り込みベクトルレジ
スタ23bの示すアドレスに制御が移る。
【0025】ここで、この割り込みベクトルレジスタ2
3bにはRAM26に格納した修正内容の先頭アドレス
が修正情報の書き込み時にラッチされているものとする
。また、制御フラグラッチ23a、割り込みベクトルレ
ジスタ23b、スイッチ24および割り込み制御回路2
5は図1のアクセス変更部6に相当する。
【0026】RAM26に格納された修正内容の末尾は
、例えばROM15の修正部分をスキップしたアドレス
へのジャンプ命令等とされるので、制御はRAM26か
らROM15に戻される。ここで、割り込み処理から復
帰にリターン命令でなくジャンプ命令を用いるのは、R
AM15中の修正部分をスキップするためである。また
、これに伴って、割り込み時にスタック等に退避したデ
ータの廃棄等が必要となる。
【0027】図3は、同実施例の動作を示すフローチャ
ートである。
【0028】まず、電源投入後の初期化時、ROM内に
格納されたイニシャルパッチローダーにより、EEPR
OM27に格納された修正情報7のうち、修正アドレス
を割り込み発生アドレスレジスタ21にラッチする(ス
テップST1)。また、修正内容の先頭アドレスを割り
込みベクトルレジスタ23bにラッチする(ステップS
T2)。更に、修正内容をRAM26の所定のアドレス
に書き込み、制御フラグラッチ23aを「1」にセット
する(ステップST3)。
【0029】次に、16ビットコンパレータ22は、ア
ドレスバス16に出力される実行アドレスと割り込み発
生アドレスレジスタ21にラッチされた修正アドレスを
比較し(ステップST4)、不一致の場合割り込みは発
生せず、アクセスはROM15に対して行なわれる(ス
テップST10)。
【0030】一致した場合には、コンパレータ22から
一致信号5がスイッチ24を介して割り込み制御回路2
5に与えられ、割り込みが発生する(ステップST5)
。割り込みが発生すると、割り込みベクトルレジスタ2
3bにラッチされたアドレス、つまりRAM26の修正
内容の先頭アドレスに制御は移り(ステップST7)、
RAM25に格納された修正内容(プログラム)が実行
される(ステップST7)。
【0031】割り込みからの復帰をリターン命令ではな
くジャンプ命令で行なう場合、修正内容の後尾にはスタ
ック等に退避したリターンアドレス等を廃棄する命令が
置かれているので、これを実行する(ステップST8)
。
【0032】最後に、修正プログラムに記されたジャン
プ命令を実行し、制御はROM15の修正部分をスキッ
プしたアドレスに戻される(ステップST9)。この修
正部分への再度のアクセスに備えるため、コンパレータ
22によるアドレス比較は継続して行なわれる(ステッ
プST4)。
【0033】なお、ROM15に複数箇所の修正部分が
ある場合には、上述のフローチャート中、ステップST
7に引き続いて、割り込み発生アドレスレジスタ21と
割り込みベクトルレジスタ23bを、それぞれ次の修正
アドレスと次の修正内容の先頭アドレスに更新すればよ
い。
【0034】また、図2において、スイッチ24を廃し
、制御フラグラッチ23aによってコンパレター22の
動作をオン・オフ制御するようにしてもよい。更に、制
御フラグラッチ23aとスイッチ24を廃し、ROM1
5に修正部分が存在しない場合には、割り込み発生アド
レスレジスタ21に無効アドレスをラッチするようにし
てもよい。
【0035】更に、図において、EEPROM27を電
子装置1の内部に設け、通信回線28にEEPROM書
き込み器を接続して、修正情報をEEPROM27に書
き込むことにより、修正情報が電子装置1の内部に書き
換え可能な状態で常駐するようにしてもよい。
【0036】図4は、この発明の他の実施例を示すブロ
ック図であり、図2と共通の部分には同一符号を付して
、その説明を省略する。
【0037】31はROM15上の修正したい1ワード
のアドレス、つまり修正アドレスを一時記憶するための
修正アドレスレジスタであり、図1の修正アドレス記憶
部3に相当する。32は1ワードの修正データを一時記
憶するための修正データレジスタであり、図1の修正内
容記憶部2に相当する。また、33はデータバス13に
ROM15からのデータを出力するか、または修正デー
タレジスタ32からの修正データを出力するか選択する
スイッチであり、図1のアクセス変更部6に相当する。
【0038】この実施例において、ROM15に格納さ
れた任意の1ワード(プログラムであっても、データで
あってもよい)を、1ワードの修正データによってパッ
チする動作を、図5に示すフローチャートに基づいて説
明する。
【0039】電子装置1の初期化時、ROM15に常駐
するイニシャルパッチローダにより、EEPROM27
から修正情報7を読み込む。即ち、2バイトの修正アド
レスを修正アドレスレジスタ31にラッチし(ステップ
ST11)、1バイトの修正データを修正データレジス
タ32にラッチする(ステップST12)。
【0040】初期化後、コンパレータ22はアドレスバ
ス16に出される実行アドレスを、修正アドレスレジス
タ31に記憶された修正アドレスと比較する(ステップ
ST14)。
【0041】実行アドレスと修正アドレスが不一致の場
合、スイッチ33はROM15側に切り換えられ(ステ
ップST20)、CPU14のROM15へのアクセス
結果として、ROM15中に格納されているデータがデ
ータバス13に出力される(ステップST21)。
【0042】一方、実行アドレスと修正アドレスが一致
した場合、スイッチ33は修正データレジスタ32側に
切り換えられ(ステップST15)るので、CPU14
のROM15へのアクセス結果として、修正データレジ
スタ32にラッチされた修正データがデータバス13に
出力される(ステップST16)。次回の修正に備える
ため、コンパレータ22はアドレス比較を継続して行な
う(ステップST14)。
【0043】図6は、図5に示したフローチャートの動
作例を示す図である。
【0044】図6(A)は、ROM15のアドレスと内
容および修正アドレスレジスタ31、修正データレジス
タ32の内容を示し、ROM15のアドレスA〜Hには
それぞれデータa〜hが固定的に格納されている。この
うち、アドレスEのデータeが誤り箇所であったとする
。この場合、修正アドレスレジスタ31と修正データレ
ジスタ32には、それぞれ修正アドレスEと修正データ
kがラッチされる。
【0045】この実施例において、CPU14によりR
OM15のアドレスA〜Hを順次アクセスした場合の実
行イメージ(プログラムの場合)、または参照イメージ
(データの場合)を図6(B)に示す。即ち、誤り箇所
eは修正内容kで置換されて修正される。
【0046】図7は、この実施例において、ROM15
の複数箇所、例えば2箇所の各1ワードを修正する場合
のフローチャートである。また、図8はその動作例であ
る。なお、図7は、図5に4つのステップST13、S
T17〜19を付加したフローチャートであるので、図
5と重複するステップの説明は省略する。
【0047】図8(A)に示すように、ROM15のア
ドレスBおよびEを修正する場合について説明する。
【0048】まず、ステップST11において、修正ア
ドレスレジスタ31には修正アドレスBがラッチされる
。ステップST12において、修正データレジスタ32
には、修正データとしてこの例では1ワード命令「Lに
飛べ」がラッチされる。また、ステップST13におい
て、RAM26のアドレスL〜Sには図8(A)に示す
データが書き込まれる。
【0049】実行アドレスと修正アドレスBが一致する
と、データバス13には、修正データレジスタ32にラ
ッチされた1ワードの修正データ「Lに飛べ」が出力さ
れ(ステップST16)、CPU14のアドレス制御は
RAM26のアドレスLに移される(ステップST17
)。
【0050】RAM26のアドレスLのデータ「Bの修
正内容」を実行した後、アドレスMのデータ「修正アド
レスレジスタ31の更新命令」と、アドレスNのデータ
「修正データレジスタ32の更新命令」とを順次実行す
る。この結果、修正アドレスレジスタ31には修正アド
レスEがラッチされ、修正データレジスタ32には修正
データ「Pに飛べ」がラッチされる(以上、ステップS
T18)。
【0051】次に、RAM26のアドレスOのデータ「
Cに飛べ」を実行して、CPU14のアドレス制御はR
OM15のアドレスCに移される(ステップST19)
。
【0052】これで第1の誤り箇所bのパッチは完了し
、ステップST14〜ST19、もしくはST14〜S
T21が繰り返される。
【0053】即ち、ROM15のアドレスEにおいて、
CPUのアドレス制御はRAM26のアドレスPに移さ
れ、第2の誤り箇所eが修正される。RAM26のアド
レスQ,Rに記された命令により、修正アドレスレジス
タ31と修正データレジスタ32には、それぞれ修正ア
ドレスBと修正データ「Lに飛べ」が再度ラッチされ、
第1の誤り箇所bの修正に備える。
【0054】図8(B)に、この例による実行イメージ
を示す。
【0055】なお、図8(A)中、RAM26のアドレ
スL,Pに示される「修正内容」は1ワードに限定され
ない。即ち、1ワードの誤り箇所b,eに対する修正内
容は複数ワードであってもよい。
【0056】また、図4に示す他の実施例において、コ
ンパレータ22、修正アドレスレジスタ31および修正
データレジスタ32を複数組備えることにより、複数の
修正箇所に対応するようにしてもよい。
【0057】
【発明の効果】この発明によれば、量産後にファームウ
エアのバグが発見されたり、あるいは変更が生じた場合
、外部から修正情報を与えることで迅速かつ容易に対応
できる効果がある。
【0058】また、従来のように多大な費用、時間およ
び人材を必要とする対応、つまり外付け回路の付加や、
電子装置そのものの再度の量産等による対応が不要とな
る顕著な効果と同時に、外付け回路の付加等による信頼
性低下が防止できる効果がある。
【図面の簡単な説明】
【図1】この発明の基本構成を示すブロック図である。
【図2】この発明の一実施例を示すブロック図である。
【図3】同実施例の動作を示すフローチャートである。
【図4】この発明の他の実施例を示すブロック図である
。
【図5】同実施例の動作を示すフローチャートである。
【図6】同実施例の動作例を示す図である。
【図7】同実施例の他の動作を示すフローチャートであ
る。
【図8】同実施例の他の動作例を示す図である。
【符号の説明】
(イ)修正情報記憶手段 (ロ)切り換え手段 1  本発明の電子装置 2  修正内容記憶部 3  修正アドレス記憶部 4  比較部 5  一致信号 6  アクセス変更部 7  修正情報 11  外部記憶手段 12  入力手段 13  データバス 14  アドレスコントローラ(CPU)15  リー
ドオンリメモリ(ROM)16  アドレスバス 21  割り込み発生アドレスレジスタ22  コンパ
レータ 23a  制御フラグラッチ 23b  割り込みベクトルレジスタ 24  スイッチ 25  割り込み制御回路 26  ランダムアクセスメモリ(RAM)27  書
き換え可能ROM(EEPROM)28  通信回線 29  通信回路 31  修正アドレスレジスタ 32  修正データレジスタ 33  スイッチ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  情報を固定的に記憶する固定記憶手段
    と、アドレス制御を行なうアドレス制御手段と、外部か
    らの情報を入力する入力手段を一体に集積した電子装置
    において、上記固定記憶手段に記憶された情報の変更部
    分に関する修正情報が上記入力手段を介して外部から入
    力されたとき、この修正情報を記憶する修正情報記憶手
    段と、上記固定記憶手段の変更部分への上記アドレス制
    御手段によるアクセスをこの固定記憶手段から上記修正
    情報記憶手段へ切り換える切り換え手段とを一体に集積
    したことを特徴とする電子装置。
JP3118799A 1991-05-23 1991-05-23 電子装置 Pending JPH04346127A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP3118799A JPH04346127A (ja) 1991-05-23 1991-05-23 電子装置
CA002068705A CA2068705C (en) 1991-05-23 1992-05-14 Program patching of a rom
DE69228272T DE69228272T2 (de) 1991-05-23 1992-05-18 Mikrokontroller mit Korrektur von fehlerhafter Information
EP92108338A EP0514806B1 (en) 1991-05-23 1992-05-18 Micro-controller with correction of defective information
KR1019920008667A KR100276785B1 (ko) 1991-05-23 1992-05-22 전자 장치
US08/368,758 US6237120B1 (en) 1991-05-23 1995-01-04 Program patching of a ROM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3118799A JPH04346127A (ja) 1991-05-23 1991-05-23 電子装置

Publications (1)

Publication Number Publication Date
JPH04346127A true JPH04346127A (ja) 1992-12-02

Family

ID=14745405

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3118799A Pending JPH04346127A (ja) 1991-05-23 1991-05-23 電子装置

Country Status (6)

Country Link
US (1) US6237120B1 (ja)
EP (1) EP0514806B1 (ja)
JP (1) JPH04346127A (ja)
KR (1) KR100276785B1 (ja)
CA (1) CA2068705C (ja)
DE (1) DE69228272T2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0876990A (ja) * 1994-09-07 1996-03-22 Seikosha Co Ltd カメラ用制御回路
US6931476B2 (en) 2002-07-19 2005-08-16 Renesas Technology Corp. Electronic apparatus with ROM data correction function
JP2016507848A (ja) * 2013-02-22 2016-03-10 マーベル ワールド トレード リミテッド リードオンリメモリのブートコードパッチ
JP2018160029A (ja) * 2017-03-22 2018-10-11 株式会社東芝 半導体集積回路

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5574926A (en) * 1993-03-11 1996-11-12 Olympus Optical Co., Ltd. One-chip microcomputer system having function for substantially correcting contents of program
EP0615187B1 (en) * 1993-03-11 2000-09-20 Olympus Optical Co., Ltd. One-chip microcomputer system having function for substantially correcting contents of program
EP0649091A1 (en) * 1993-10-13 1995-04-19 International Business Machines Corporation Correction and modification of microprocessor chip operations
US6738894B1 (en) * 1995-02-07 2004-05-18 Hitachi, Ltd. Data processor
FR2764404B1 (fr) * 1997-06-10 2001-03-30 Sagem Procede de commande d'un microprocesseur integre avec une memoire morte de programme et circuit integre pour la mise en oeuvre du procede
JPH1115689A (ja) * 1997-06-19 1999-01-22 Nec Corp ソフトウェアのデバッグ方法及びデバッグ・プログラムを記録した記録媒体
US6973522B1 (en) * 1999-08-10 2005-12-06 Pentax Corporation Microcomputer with program-revision ability
JP3838840B2 (ja) * 2000-01-06 2006-10-25 Necエレクトロニクス株式会社 コンピュータ
JP2003044305A (ja) * 2001-07-26 2003-02-14 Sony Corp 電子装置および修正方法
US7493435B2 (en) * 2003-10-06 2009-02-17 Intel Corporation Optimization of SMI handling and initialization
TWI263940B (en) * 2004-11-23 2006-10-11 Ene Technology Inc Memory device firmware patch method
EP1686467B1 (en) * 2005-01-31 2008-03-12 STMicroelectronics S.r.l. Method and system for correcting errors in read-only memory devices, and computer program product therefor
US7464248B2 (en) 2005-04-25 2008-12-09 Mediatek Incorporation Microprocessor systems and bus address translation methods
US7533240B1 (en) * 2005-06-01 2009-05-12 Marvell International Ltd. Device with mapping between non-programmable and programmable memory
US8156486B2 (en) * 2008-10-29 2012-04-10 Mediatek Inc. Patching devices and methods thereof for patching firmware functions
US8689204B2 (en) * 2009-02-28 2014-04-01 Blackberry Limited Methods and tools for creation of read-only-memory software binary images and corresponding software patches
US20130227343A1 (en) * 2012-02-28 2013-08-29 O2Micro, Inc. Circuits and Methods for Replacing Defective Instructions
US9547489B2 (en) * 2014-03-31 2017-01-17 Qualcomm Incorporated System and method for modifying a sequence of instructions in a read-only memory of a computing device

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4150428A (en) 1974-11-18 1979-04-17 Northern Electric Company Limited Method for providing a substitute memory in a data processing system
JPS5721799B2 (ja) 1975-02-01 1982-05-10
JPS5245232A (en) 1975-10-08 1977-04-09 Hitachi Ltd Micro program modification circuit
US4028679A (en) 1975-10-16 1977-06-07 Bell Telephone Laboratories, Incorporated Memory patching circuit with increased capability
US4028683A (en) 1975-10-16 1977-06-07 Bell Telephone Laboratories, Incorporated Memory patching circuit with counter
US4028684A (en) 1975-10-16 1977-06-07 Bell Telephone Laboratories, Incorporated Memory patching circuit with repatching capability
US4218757A (en) 1978-06-29 1980-08-19 Burroughs Corporation Device for automatic modification of ROM contents by a system selected variable
US4291375A (en) 1979-03-30 1981-09-22 Westinghouse Electric Corp. Portable programmer-reader unit for programmable time registering electric energy meters
US4296470A (en) 1979-06-21 1981-10-20 International Business Machines Corp. Link register storage and restore system for use in an instruction pre-fetch micro-processor interrupt system
JPS56136054A (en) 1980-03-26 1981-10-23 Hitachi Ltd Function assigning circuit
US4319343A (en) 1980-07-16 1982-03-09 Honeywell Inc. Programmable digital memory circuit
US4456966A (en) 1981-02-26 1984-06-26 International Business Machines Corporation Memory system with flexible replacement units
JPS57150019A (en) 1981-03-13 1982-09-16 Hitachi Ltd Control system of terminal device
JPS57196357A (en) 1981-05-29 1982-12-02 Toshiba Corp Data processor
JPS57211651A (en) 1981-06-23 1982-12-25 Toshiba Corp Patch system
US4490783A (en) 1981-07-02 1984-12-25 Texas Instruments Incorporated Microcomputer with self-test of microcode
JPS587067A (ja) * 1981-07-07 1983-01-14 西尾 康雄 二段駐車装置
US4400798A (en) 1981-07-13 1983-08-23 Tektronix, Inc. Memory patching system
JPS5816350A (ja) 1981-07-22 1983-01-31 Toshiba Corp メモリ拡張代替方式
US4542453A (en) * 1982-02-19 1985-09-17 Texas Instruments Incorporated Program patching in microcomputer
US4490812A (en) 1982-09-30 1984-12-25 Mostek Corporation User reprogrammable programmed logic array
US4819154A (en) 1982-12-09 1989-04-04 Sequoia Systems, Inc. Memory back up system with one cache memory and two physically separated main memories
US4769767A (en) 1984-01-03 1988-09-06 Ncr Corporation Memory patching system
US4610000A (en) 1984-10-23 1986-09-02 Thomson Components-Mostek Corporation ROM/RAM/ROM patch memory circuit
FR2573227B1 (fr) 1984-11-09 1987-01-30 Palais Decouverte Dispositif de simulation et de securite pour clavier de saisie de donnees
US4745572A (en) 1985-11-04 1988-05-17 Step Engineering Software editing instrument
US4709324A (en) 1985-11-27 1987-11-24 Motorola, Inc. Data processor control unit having an interrupt service using instruction prefetch redirection
JPS62249231A (ja) 1986-04-23 1987-10-30 Pfu Ltd マイクロプログラム制御処理方式
JPH01503028A (ja) 1986-06-09 1989-10-12 データコンサルト、イ、マルメ、アクチェボラーグ 暗号化及び解読装置
US4751703A (en) 1986-09-16 1988-06-14 International Business Machines Corp. Method for storing the control code of a processor allowing effective code modification and addressing circuit therefor
US4751677A (en) 1986-09-16 1988-06-14 Honeywell Inc. Differential arrangement magnetic memory cell
US4831517A (en) 1986-10-10 1989-05-16 International Business Machines Corporation Branch and return on address instruction and methods and apparatus for implementing same in a digital data processing system
US4802119A (en) * 1987-03-17 1989-01-31 Motorola, Inc. Single chip microcomputer with patching and configuration controlled by on-board non-volatile memory
US4942541A (en) 1988-01-22 1990-07-17 Oms, Inc. Patchification system
JPS6465633A (en) 1987-09-07 1989-03-10 Hitachi Ltd Microprogram controller
JP3023425B2 (ja) 1987-10-09 2000-03-21 株式会社日立製作所 データ処理装置
JPH0199129A (ja) 1987-10-12 1989-04-18 Fujitsu Ltd マイクロプログラム修正方式
JPH01114941A (ja) 1987-10-28 1989-05-08 Fujitsu Ltd プログラム修正方式
JPH01232447A (ja) * 1988-03-11 1989-09-18 Mitsubishi Electric Corp シングル・チップ・マイクロコンピュータ
JPH01286029A (ja) 1988-05-13 1989-11-17 Nec Corp マイクロプログラムのパッチ方式
US4905200A (en) * 1988-08-29 1990-02-27 Ford Motor Company Apparatus and method for correcting microcomputer software errors
US5063499A (en) 1989-01-09 1991-11-05 Connectix, Inc. Method for a correlating virtual memory systems by redirecting access for used stock instead of supervisor stock during normal supervisor mode processing
US5357627A (en) 1989-03-28 1994-10-18 Olympus Optical Co., Ltd. Microcomputer having a program correction function
EP0393290B1 (en) 1989-04-19 1995-08-16 International Business Machines Corporation Memory and peripheral chip select apparatus
US5077737A (en) 1989-08-18 1991-12-31 Micron Technology, Inc. Method and apparatus for storing digital data in off-specification dynamic random access memory devices
JPH03142629A (ja) * 1989-10-30 1991-06-18 Toshiba Corp マイクロコントローラ
GB9011679D0 (en) * 1990-05-24 1990-07-11 Schlumberger Ind Ltd Mask-programmable microprocessors
US5199032A (en) 1990-09-04 1993-03-30 Motorola, Inc. Microcontroller having an EPROM with a low voltage program inhibit circuit
JP3131234B2 (ja) 1991-01-14 2001-01-31 株式会社日立製作所 半導体装置
US5408672A (en) 1991-11-18 1995-04-18 Matsushita Electric Industrial Co. Microcomputer having ROM to store a program and RAM to store changes to the program
JPH06318261A (ja) * 1992-09-18 1994-11-15 Sony Corp 電子装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0876990A (ja) * 1994-09-07 1996-03-22 Seikosha Co Ltd カメラ用制御回路
US6931476B2 (en) 2002-07-19 2005-08-16 Renesas Technology Corp. Electronic apparatus with ROM data correction function
JP2016507848A (ja) * 2013-02-22 2016-03-10 マーベル ワールド トレード リミテッド リードオンリメモリのブートコードパッチ
US9880856B2 (en) 2013-02-22 2018-01-30 Marvell World Trade Ltd. Patching boot code of read-only memory
JP2018160029A (ja) * 2017-03-22 2018-10-11 株式会社東芝 半導体集積回路

Also Published As

Publication number Publication date
US6237120B1 (en) 2001-05-22
DE69228272T2 (de) 1999-06-02
EP0514806B1 (en) 1999-01-27
CA2068705A1 (en) 1992-11-24
CA2068705C (en) 2002-10-22
EP0514806A3 (en) 1993-12-08
EP0514806A2 (en) 1992-11-25
KR100276785B1 (ko) 2001-01-15
KR920022104A (ko) 1992-12-19
DE69228272D1 (de) 1999-03-11

Similar Documents

Publication Publication Date Title
CA2068705C (en) Program patching of a rom
US5454100A (en) Electronic apparatus
US4542453A (en) Program patching in microcomputer
US20070180223A1 (en) Computer system and method of booting the system
JPS63108434A (ja) デジタル・データ処理装置の読取専用メモリのプログラム修正装置
JP3563768B2 (ja) Romプログラム変更装置
US5600807A (en) Programmable controller capable of updating a user program during operation by switching between user program memories
US5799144A (en) Microcomputer for resolving problems found in a program stored in a ROM
JP2000357088A (ja) マイクロプロセッサ及びデータ処理システム
EP1393183B1 (en) Modified harvard architecture processor having data memory space mapped to program memory space with erroneous execution protection
JPH06275084A (ja) 不揮発性半導体記憶装置及びそれを用いたデータ処理装置
CN114047952A (zh) 用于单片机的处理器、方法、单片机和存储介质
JP3810805B2 (ja) 情報修正システム
US6148362A (en) Microcomputer using nonvolatile semiconductor memory to store user code/data
JP3956305B2 (ja) 不揮発性半導体記憶装置およびデータ処理装置
JP2004318403A (ja) 電子制御装置
JPH1131068A (ja) リセットベクタ切替え方法ならびに同方法を用いた情報処理装置
GB2304209A (en) Starting up a processor system
JPH1040094A (ja) ファームウエアのプログラム制御装置
JPH06222917A (ja) 電子装置
JPH1050086A (ja) Eepromを有するマイクロコンピュータ及びその書換方法
JP2000010772A (ja) マイクロコンピュータ
JPH11249887A (ja) プログラム訂正装置
JP2001075798A (ja) 情報処理装置
JPS58208850A (ja) マイクロプログラム格納処理方式