JPH0876990A - カメラ用制御回路 - Google Patents

カメラ用制御回路

Info

Publication number
JPH0876990A
JPH0876990A JP21388694A JP21388694A JPH0876990A JP H0876990 A JPH0876990 A JP H0876990A JP 21388694 A JP21388694 A JP 21388694A JP 21388694 A JP21388694 A JP 21388694A JP H0876990 A JPH0876990 A JP H0876990A
Authority
JP
Japan
Prior art keywords
program
counter
storage means
control circuit
selecting
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
JP21388694A
Other languages
English (en)
Inventor
Hiroyuki Saito
浩幸 斉藤
Noriyuki Osato
規之 大里
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.)
Seikosha KK
Original Assignee
Seikosha KK
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 Seikosha KK filed Critical Seikosha KK
Priority to JP21388694A priority Critical patent/JPH0876990A/ja
Priority to DE1995133100 priority patent/DE19533100A1/de
Priority to GB9518295A priority patent/GB2293033A/en
Publication of JPH0876990A publication Critical patent/JPH0876990A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30181Instruction operation extension or modification
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Details Of Cameras Including Film Mechanisms (AREA)

Abstract

(57)【要約】 (修正有) 【構成】 カメラを制御する演算手段22と、第1、第
2のプログラムの実行アドレスを格納する第1、第2の
カウンタ20,18と、アドレスを比較し相等しい場合
に出力を行う比較手段17と、複数のプログラムを格納
する第1および第2の記憶手段11,15と、記憶手段
のいずれかを選択し選択したプログラムを前記第1の制
御回路に出力する選択手段16と、第2の記憶手段のプ
ログラムの命令数を保持し実行に応じて変化し実行終了
時に信号を出力する第3のカウンタ17と、比較手段の
出力に応じて選択手段に第2の記憶手段を選択させかつ
第3のカウンタの出力に応じて選択手段に第1の記憶手
段を選択させる制御手段23とを有している。 【効果】 製品として完成した後でも、EEPROMの
データを書き換えることにより、マスクROM化された
プログラムに対して追加や変更が可能となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はカメラ用制御回路に関す
るものである。
【0002】
【従来の技術】1度だけ書き込みできるいわゆるマスク
タイプのリード・オンリ・メモリ(以下マスクROMと
いう)を内蔵した1チップマイクロコンピュータは、集
積回路(以下ICという)の規模も小さくでき、コスト
的に有利であるため、非常に広い分野で使用されてい
る。
【0003】
【発明が解決しようとする課題】しかしながらマスクR
OM内に書かれるプログラムやデータは、ICの製造時
に書き込まれるために、ICが完成した後はプログラム
を変更することができない。
【0004】このため、ICの完成後にプログラムの誤
りが発見された場合は、IC自体を作り直す必要があ
り、日程と開発費用がかさむ。また、IC自体の製造時
ではなく、このICを搭載した製品が製造されている途
中でミスが発見された場合は多大な損害を被ることにな
る。
【0005】このプログラムミスで発生する損害を少し
でも低く抑えるため、マスクROMで作ったプログラム
のミスした部分を他の書き換え可能な不揮発性メモリ、
とりわけEEPROM(エレクトリック・イレーサブル
・プログラマブル・リード・オンリ・メモリ)のデータ
で置換できるようにする。これにより従来は不可能であ
ったマスクROMプログラムの修正ができ、ICが完成
した後に何らかのプログラムミスが発見されたとして
も、ICを作り直すことなく、EEPROM内のデータ
の変更によって対策を講じることができる。
【0006】
【課題を解決するための手段】上記の課題を解決するた
め、本発明のカメラ用制御回路においては、カメラを制
御する複数のプログラムに従って動作する演算手段と、
第1のプログラムの実行アドレスを格納する第1のカウ
ンタと、第2のプログラムの実行アドレスを格納する第
2のカウンタと、前記第1および第2のカウンタに格納
されたアドレスを比較し相等しい場合に出力を行う比較
手段と、前記複数のプログラムを格納する第1および第
2の記憶手段と、前記第1および第2の記憶手段のいず
れかを選択し選択したプログラムを前記第1の制御回路
に出力する選択手段と、前記第2の記憶手段のプログラ
ムの命令数を保持し実行に応じて変化し実行終了時に信
号を出力する第3のカウンタと、前記比較手段の出力に
応じて前記選択手段に前記第2の記憶手段を選択させか
つ前記第3のカウンタの出力に応じて前記選択手段に第
1の記憶手段を選択させる制御手段とを有している。
【0007】また、請求項2の発明においては、前記第
1の記憶手段はリード・オンリ・メモリ(ROM)であ
り、かつ前記第2の記憶手段は読み書き可能のメモリと
している。
【0008】また、請求項3の発明においては、前記演
算回路に接続されたエレクトリック・イレーサブル・プ
ログラマブル・リード・オンリ・メモリ(EEPRO
M)を有し、前記演算回路の動作開始時に前記演算回路
は前記第2の記憶手段と前記第2および第3のカウンタ
とに前記EEPROMの内容を転送するようにしてい
る。
【0009】
【実施例】本発明の実施例のブロック図を図1に示す。
ROM11はIC製造時にチップ10内に配置されるマ
スクROMであり、アプリケーションのプログラムが格
納されている。ランダムアクセスメモリ(以下RAMと
いう)12は、プログラム実行時に一時的にデータを格
納するために用意されている。ステップレジスタ13は
追加または変更したい命令のデータ数を格納するための
レジスタで、0x〜Fxの内容が格納される。ここでx
は16進数であることを意味する記号である。
【0010】モードレジスタ14は、命令の「追加」を
するのか、「変更」をするのか、あるいは「無視」する
のかを指定するためのレジスタである。「追加」なら
0、「変更」なら1、「無視」なら2をモードレジスタ
14に格納する。コマンドレジスタ15は、追加または
変更して実行する命令コードが格納される16バイトの
レジスタである。マルチプレクサ16はROM11とコ
マンドレジスタ15とを信号によって選択し、バス24
を通じて選択された方の命令を後述の演算回路22に出
力する。コマンドアドレスカウンタ17はアドレス設定
回路18とプログラムカウンタ20の内容を比較し、こ
れらが一致した場合に後述のPC制御回路23に信号を
出力するレジスタである。後のPC制御回路23からの
信号により、保持された一致信号はクリアされる。アド
レス設定回路18は命令の追加または変更をするROM
11のアドレスを指定するためのレジスタである。
【0011】プログラムカウンタ20はROM11のア
ドレスを指定するもので、各命令の実行にあたって1を
加えられ、ジャンプ命令、コール命令、リターン命令の
実行時はその命令の分岐先のアドレスがセットされる。
スタックポインタ21はサブルーチンコールした際に、
プログラムカウンタ20の内容を一時的に記憶するため
のもので、サブルーチンから戻るときにはスタックポイ
ンタ21の内容をプログラムカウンタ20にセットす
る。演算回路22はマルチプレクサ16から出力された
プログラムに従ってカメラの動作を制御する。PC制御
回路23は命令を追加または実行するためにマルチプレ
クサ16を制御し、またプログラムカウンタ20および
コマンドアドレスカウンタ17の制御を行うための回路
である。
【0012】その他に液晶制御回路25、DAコンバー
タ26、ADコンバータ27、発振回路32、タイマ2
8、インタフェース29の各回路部がバス24を通じて
接続され、EEPROM30がインタフェース29に接
続されている。
【0013】演算回路22が起動し、ROM11内に格
納されているプログラムが実行された後、EEPROM
30内の所定アドレスに格納されているプログラム命令
と、モードフラグと命令数および変更ポイントを指定す
るアドレスを読み込み、それぞれのデータをステップレ
ジスタ13、モードレジスタ14、コマンドレジスタ1
5、アドレス設定回路18の各レジスタにセットする。
これらの処理はROM11の下位アドレスにあらかじめ
格納されており、演算回路22が起動するたびに同じ処
理を行う。この処理を実行後、カメラ用に作られたプロ
グラムであれば、公知のレリーズスイッチやズームスイ
ッチの条件により、一連の露出作動またはストロボ充電
制御、フィルム給送制御、ズーム制御などを行う。
【0014】いま、撮影レンズをズーム制御するプログ
ラムにミスがあり、カメラのズームスイッチを押して撮
影レンズがズーム駆動している最中に、ストロボを発光
させてしまうような命令コードが誤って含まれていたと
する。カメラにとってストロボの誤発光は致命的な欠陥
であり、即製造中止となるべき重大なミスである。
【0015】ここでEEPROM30内に前記ステップ
レジスタ13、モードレジスタ14、コマンドレジスタ
15、アドレス設定回路18の値を書き込むことによ
り、プログラムの誤っている部分を変更し、前記ストロ
ボ誤発光の対策を行う。すなわち、ズーム制御中のプロ
グラムのストロボ誤発光をさせている命令コードの格納
されているROM11のアドレスをアドレス設定回路1
8に、その命令コードに置き換わる命令コードをコマン
ドレジスタ15に、命令変更のモードを示すデータをモ
ードレジスタ14に、変更後の命令数に相当する数をス
テップレジスタ13にセットする。カメラのズーム制御
スイッチを押され、ズームの処理実行中にプログラムの
誤りがあるアドレスに達すると、コマンドアドレスカウ
ンタ17からアドレス設定回路18とプログラムカウン
タ20の一致信号が出力される。コマンドアドレスカウ
ンタ17の一致信号をPC制御回路23が受け、マルチ
プレクサ16に対しROM11の切換信号を出力する。
従って次の命令からはコマンドレジスタ15の内容によ
って命令が実行される。
【0016】図2は、「変更」を行う場合のプログラム
の動作を表す。ここで、ROM11のアドレス0109
xからアドレス010CxまでをEEPROM30のア
ドレス002Fxからアドレス0032xまでで置換す
るものとする。コマンドレジスタ15内の命令数である
4はステップレジスタ13内に格納されているので、ス
テップレジスタ13の内容を一度PC制御回路23に転
送した後、コマンドレジスタ15の命令が1バイト実行
されるごとに1を引くと同時に、コマンドレジスタ15
のアドレス指定をするコマンドアドレスカウンタ17に
1を加える。このとき、プログラムカウンタ20にも1
を加える。これらを繰り返し、PC制御回路23に取り
込んだ命令ステップ数の値が0になると、PC制御回路
23はマルチプレクサ16に対し切り換え信号を出力す
ると同時に、コマンドアドレスカウンタ17に対してク
リア信号を出力し、コマンドアドレスカウンタ17を初
期値に戻した上で、ROM11内のプログラムに戻る。
【0017】図3は、「追加」を行う場合のプログラム
の動作経路を表す。ここで、ROM11のアドレス01
08xと0109xの間にEEPROM30のアドレス
002Exからアドレス0032xまでの命令を追加す
るものとする。まずPC制御回路23はマルチプレクサ
16に対し切り換え信号を出力し、EEPROM30内
のプログラムの実行に移る。コマンドレジスタ15内の
命令数である4はステップレジスタ13内に格納されて
いるので、ステップレジスタ13の内容を一度PC制御
回路23に転送した後、コマンドレジスタ15の命令が
1バイト実行されるごとに1を引くと同時に、コマンド
レジスタ15のアドレス指定をするコマンドアドレスカ
ウンタ17に1を加える。ROM11のプログラムの実
行に戻った際にアドレスが狂うのを防ぐため、プログラ
ムカウンタ20はそのまま保持される。これらを繰り返
し、ステップレジスタ13で指定された命令の数だけ実
行されるとPC制御回路23はマルチプレクサ16に対
し再び切り換え信号を出力すると同時に、コマンドアド
レスカウンタ17に対してクリア信号を出力し、コマン
ドアドレスカウンタ17を初期値に戻した上で、ROM
11内のプログラムに戻る。
【0018】たとえばストロボを誤発光させている命令
を削除したければ、何も行わないノンオペレーションコ
ード(NOP)をコマンドレジスタ15に設定し、モー
ドレジスタ14には1(変更)を設定すれば、ストロボ
誤発光は禁止されることになる。
【0019】また、「追加」の変形として、ある特定の
アドレス以降の特定長の命令コードの動作を行わせたく
ない場合に、その命令コードの終端アドレスの次のアド
レスにジャンプするコードをコマンドレジスタ15に設
定しておけば、その命令コードは実行されず、実質的に
この特定長の命令コードを「削除」したことになる。
【0020】なお、以上の実施例では命令の置き換えと
削除とを別々に説明したが、組み合わせて行う構成を取
った場合は、より複雑なプログラムミスに対応できる。
またプログラムの修正ポイントおよび修正可能な命令数
は適宜増減させてもよいことは言うまでもない。
【0021】さらに、本実施例ではEEPROMはEE
PROM30がインタフェース29を介して外部に接続
されているものとしているが、チップ10に内蔵しても
よい。その他の回路についても、チップ10への内蔵、
外部接続の別は設計上の理由などにより、適宜変更が可
能である。
【0022】
【発明の効果】製品として完成した後でも、EEPRO
Mのデータを書き換えることにより、マスクROM化さ
れたプログラムに対して追加や変更が可能となる。この
ため、プログラムミスの修正が簡単になり、修正のため
の日時とコストとを最小限に留めるという多大な効果が
得られる。
【図面の簡単な説明】
【図1】本発明の実施例のカメラ用制御回路のブロック
図である。
【図2】本発明の実施例の命令コードの変更を行う場合
の説明図である。
【図3】本発明の実施例の命令コードの追加を行う場合
の説明図である。
【符号の説明】
22 演算回路(演算手段) 20 プログラムカウンタ(第1のカウンタ) 18 アドレス設定回路(第2のカウンタ) 17 コマンドアドレスカウンタ(比較手段) 11 ROM(第1の記憶手段) 15 コマンドレジスタ(第2の記憶手段) 16 マルチプレクサ(選択手段) 17 コマンドアドレスカウンタ(第3のカウンタ) 23 PC制御回路(制御手段)

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 カメラを制御する複数のプログラムに従
    って動作する演算手段と、第1のプログラムの実行アド
    レスを格納する第1のカウンタと、第2のプログラムの
    実行アドレスを格納する第2のカウンタと、前記第1お
    よび第2のカウンタに格納されたアドレスを比較し相等
    しい場合に出力を行う比較手段と、前記複数のプログラ
    ムを格納する第1および第2の記憶手段と、前記第1お
    よび第2の記憶手段のいずれかを選択し選択したプログ
    ラムを前記第1の制御回路に出力する選択手段と、前記
    第2の記憶手段のプログラムの命令数を保持し実行に応
    じて変化し実行終了時に信号を出力する第3のカウンタ
    と、前記比較手段の出力に応じて前記選択手段に前記第
    2の記憶手段を選択させかつ前記第3のカウンタの出力
    に応じて前記選択手段に第1の記憶手段を選択させる制
    御手段とを有することを特徴とするカメラ用制御回路。
  2. 【請求項2】 前記第1の記憶手段はリードオンリメモ
    リ(ROM)であり、かつ前記第2の記憶手段は読み書
    き可能のメモリであることを特徴とする請求項1に記載
    のカメラ用制御回路。
  3. 【請求項3】 前記演算回路に接続されたエレクトリッ
    ク・イレーサブル・プログラマブル・リードオンリメモ
    リ(EEPROM)を有し、前記演算回路の動作開始時
    に前記演算回路は前記第2の記憶手段と前記第2および
    第3のカウンタとに前記EEPROMの内容を転送する
    ことを特徴とする請求項1に記載のカメラ用制御回路。
JP21388694A 1994-09-07 1994-09-07 カメラ用制御回路 Pending JPH0876990A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP21388694A JPH0876990A (ja) 1994-09-07 1994-09-07 カメラ用制御回路
DE1995133100 DE19533100A1 (de) 1994-09-07 1995-09-07 Steuerschaltung für elektronisches Gerät
GB9518295A GB2293033A (en) 1994-09-07 1995-09-07 Control circuit enabling program modification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21388694A JPH0876990A (ja) 1994-09-07 1994-09-07 カメラ用制御回路

Publications (1)

Publication Number Publication Date
JPH0876990A true JPH0876990A (ja) 1996-03-22

Family

ID=16646651

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21388694A Pending JPH0876990A (ja) 1994-09-07 1994-09-07 カメラ用制御回路

Country Status (3)

Country Link
JP (1) JPH0876990A (ja)
DE (1) DE19533100A1 (ja)
GB (1) GB2293033A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011154505A (ja) * 2010-01-27 2011-08-11 Seiko Epson Corp 演算処理装置及び演算実行方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2330428B (en) * 1997-09-23 2000-05-24 Winbond Electronics Corp Apparatus for repairing faulty program segments in embedded microprocessor systems
DE10133994A1 (de) * 2001-07-12 2003-01-30 Conti Temic Microelectronic Verfahren zum Betrieb eines von einem Prozessor gesteuerten Systems

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03186927A (ja) * 1989-12-18 1991-08-14 Olympus Optical Co Ltd マイクロコンピュータのプログラム変更装置
JPH04252334A (ja) * 1991-01-28 1992-09-08 Olympus Optical Co Ltd マイクロコンピュータのプログラム変更装置
JPH04346127A (ja) * 1991-05-23 1992-12-02 Sony Corp 電子装置
JPH06131171A (ja) * 1990-05-24 1994-05-13 Schlumberger Ind Ltd マスク・プログラマブル・マイクロプロセッサ
JPH06222917A (ja) * 1993-01-26 1994-08-12 Sony Corp 電子装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3934227A (en) * 1973-12-05 1976-01-20 Digital Computer Controls, Inc. Memory correction system
US4688173A (en) * 1982-04-26 1987-08-18 Sharp Kabushiki Kaisha Program modification system in an electronic cash register
US4802119A (en) * 1987-03-17 1989-01-31 Motorola, Inc. Single chip microcomputer with patching and configuration controlled by on-board non-volatile memory
US4905200A (en) * 1988-08-29 1990-02-27 Ford Motor Company Apparatus and method for correcting microcomputer software errors
GB2250838A (en) * 1990-12-11 1992-06-17 Honda Motor Co Ltd Patching a program stored in ROM

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03186927A (ja) * 1989-12-18 1991-08-14 Olympus Optical Co Ltd マイクロコンピュータのプログラム変更装置
JPH06131171A (ja) * 1990-05-24 1994-05-13 Schlumberger Ind Ltd マスク・プログラマブル・マイクロプロセッサ
JPH04252334A (ja) * 1991-01-28 1992-09-08 Olympus Optical Co Ltd マイクロコンピュータのプログラム変更装置
JPH04346127A (ja) * 1991-05-23 1992-12-02 Sony Corp 電子装置
JPH06222917A (ja) * 1993-01-26 1994-08-12 Sony Corp 電子装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011154505A (ja) * 2010-01-27 2011-08-11 Seiko Epson Corp 演算処理装置及び演算実行方法

Also Published As

Publication number Publication date
DE19533100A1 (de) 1996-03-14
GB9518295D0 (en) 1995-11-08
GB2293033A (en) 1996-03-13

Similar Documents

Publication Publication Date Title
US5357627A (en) Microcomputer having a program correction function
EP0554917B1 (en) Digital signal processing system having two instruction memories accessed by a processor under control of host
TWI402749B (zh) 微處理器及其可複寫非依電性狀態之新值寫入方法
US5938774A (en) Apparatus for repairing faulty program segments in embedded microprocessor systems
JP3563768B2 (ja) Romプログラム変更装置
US3939455A (en) Microprocessor having an interface for connection of external devices
US5046040A (en) Microprogram control apparatus using don't care bits as part of address bits for common instructions and generating variable control bits
US6925522B2 (en) Device and method capable of changing codes of micro-controller
JP2000339177A (ja) Eit処理機能を備えるマイクロプロセッサ及びeit処理方法
JPH0876990A (ja) カメラ用制御回路
US6148362A (en) Microcomputer using nonvolatile semiconductor memory to store user code/data
JPH03186927A (ja) マイクロコンピュータのプログラム変更装置
KR100280590B1 (ko) 전자 장치
JPH07262162A (ja) マイクロプロセッサ
GB2292470A (en) Rom patching
JP2001306316A (ja) 制御回路およびそれを用いた半導体装置
JP3542529B2 (ja) フラッシュ内蔵マイコンのプログラムリンク方法
GB2330428A (en) ROM program patching in an embedded microprocessor
KR20020029921A (ko) 정적 기억 장치 내의 마이크로 명령어를 수정하는 방법 및장치
KR100654477B1 (ko) 프로세서 동작 방법
JP3022608B2 (ja) マイクロコンピュータのプログラム変更装置
JP6603100B2 (ja) メモリ制御装置及びメモリ制御方法
JP3575052B2 (ja) 電子装置
JPH08194614A (ja) マイクロコンピュータ
SU213421A1 (ru) Устройство управления