JPH09244902A - ダウンロード回路 - Google Patents

ダウンロード回路

Info

Publication number
JPH09244902A
JPH09244902A JP5447096A JP5447096A JPH09244902A JP H09244902 A JPH09244902 A JP H09244902A JP 5447096 A JP5447096 A JP 5447096A JP 5447096 A JP5447096 A JP 5447096A JP H09244902 A JPH09244902 A JP H09244902A
Authority
JP
Japan
Prior art keywords
program
processor
download
memory
processors
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.)
Withdrawn
Application number
JP5447096A
Other languages
English (en)
Inventor
Kenichi Uchino
健一 内野
Koichi Kihara
弘一 木原
Takehisa Takeuchi
偉久 竹内
Jiro Aso
二郎 麻生
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP5447096A priority Critical patent/JPH09244902A/ja
Publication of JPH09244902A publication Critical patent/JPH09244902A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 運用中などにプログラム変更が発生しても電
源断やプログラムROMの交換等を行うことなく、プロ
グラム内容の変更を外部からダウンロードすることがで
きるダウンロード回路を提供する。 【解決手段】ダウンロード回路は、プログラムを書き換
え可能なEPROM12及びEEPROM13と、この
EPROM12及びEEPROM13にバスを介して接
続され、EPROM12又はEEPROM13に格納さ
れたプログラムを処理するプロセッサ11(プロセッサ
#0)と、外部から更新プログラムを供給する上位CP
U14と、プログラム書き換え時、上位CPU14の出
力線をEPROM12のバスに接続して、上位CPU1
4からのプログラムをプロセッサ11にダウンロード
し、ダウンロード終了後、ダウンロードされたプログラ
ムをEEPROM13に転送するように制御する制御手
段20を備えた構成とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プロセッサにプロ
グラムをダウンロードするダウンロード回路に関する。
【0002】
【従来の技術】シングルチップマイクロコンピュータ
は、マイクロプロセッサを中心としてプログラムやデー
タの記憶用のROM及びRAMと各種の周辺制御機能を
内部バスなどによりシングルチップとして集積化したも
のである。各種の仕様は、ROMに書き込むプログラム
を変えることによって任意に変更することができる。
【0003】最近ではシステム開発のデバッグごとにマ
スクROMを変更する時間損失を回避するため、プログ
ラムROMを不揮発性メモリ、例えばEPROM(eras
ableprogrammable ROM),EEPROM(electrically
erasable programmable ROM)とし、プログラム開発・
修正時間の短縮の大幅な短縮を図っている。
【0004】図7は単一プロセッサの構成例であり、プ
ロセッサ1はEPROM2のプログラムに従って処理を
行う。また、図8に示すように、1ボード上に複数のプ
ロセッサ(#0,#N)3,4と、プロセッサ#0,#
Nにプログラムを供給するEPROM(#0,#N)
5,6とが搭載された装置がある。図8に示すように複
数のプロセッサ#0,#Nを用いるものとしては、例え
ば通信用のプロセッサがあり、プロセッサ3,4に対し
それぞれ個別のEPROM5,6を有している。各プロ
セッサ3,4は、個別のEPROM5,6のプログラム
に従って各々の処理を行う。
【0005】また、プログラム変更が生じたときは、プ
ログラムROMの交換又はプログラムの書き換えを行っ
ていた。
【0006】
【発明が解決しようとする課題】しかしながら、このよ
うな従来の装置では、プロセッサに対しそれぞれプログ
ラムROMを設ける構成となっていたため、プロセッサ
を増やす毎にプログラムROMが増え、コストが増大す
るという問題点があった。
【0007】また、同様な理由で、運用中などにプログ
ラム変更が発生した場合、プログラムROMの交換等を
しなければならず、電源断を行わなければならないとい
う問題点があった。
【0008】本発明は、運用中などにプログラム変更が
発生しても電源断やプログラムROMの交換等を行うこ
となく、プログラム内容の変更を外部からダウンロード
することができるダウンロード回路を提供することを目
的とする。
【0009】また、本発明は、プロセッサをマルチ接続
するような装置において、各プロセッサに対し、個別の
プログラムROMを用意する必要をなくし、共通のプロ
グラムROMから各々のプログラムにダウンロードを可
能にするとともに、プログラム内容の変更を外部からダ
ウンロードすることにより、各プロセッサへのダウンロ
ードを可能にするダウンロード回路を提供することを目
的とする。
【0010】
【課題を解決するための手段】本発明に係るダウンロー
ド回路は、プログラムを書き換え可能なメモリと、該メ
モリにバスを介して接続され、該メモリに格納されたプ
ログラムを処理するプロセッサと、外部からプログラム
を供給する供給手段と、プログラム書き換え時、供給手
段の出力線をメモリのバスに接続して、該供給手段のプ
ログラムをプロセッサにダウンロードし、ダウンロード
終了後、ダウンロードされたプログラムを該メモリに転
送するように制御する制御手段とを備えた構成とする。
【0011】また、ダウンロード回路は、メモリに複数
のプロセッサが接続されており、制御手段は、プログラ
ム書き換え時、供給手段の出力線をメモリのバスに接続
して、供給手段のプログラムを第1のプロセッサにダウ
ンロードし、ダウンロード終了後、第1のプロセッサに
ダウンロードされたプログラムを該メモリに転送し、さ
らに該メモリに転送されたプログラムを他のプロセッサ
にダウンロードするように制御するように構成する。
【0012】また、ダウンロード回路は、ダウンロード
状態を監視する監視手段を備え、メモリに複数のプロセ
ッサが接続されており、制御手段は、プログラム書き換
え時、供給手段の出力線をメモリのバスに接続して、供
給手段のプログラムを第1のプロセッサにダウンロード
し、ダウンロード終了後、第1のプロセッサにダウンロ
ードされたプログラムを該メモリに転送し、さらに該メ
モリに転送されたプログラムを他のプロセッサに一斉に
ダウンロードするように制御し、監視手段は、ダウンロ
ード時全てのプロセッサが正常にダウンロードしている
ことを監視するように構成する。
【0013】さらに、供給手段は、制御手段に接続され
たマイクロコンピュータであってもよい。
【0014】
【発明の実施の形態】本発明に係るダウンロード回路
は、通信用のプロセッサ等のダウンロード回路に適用す
ることができる。
【0015】図1は本発明の第1の実施形態に係るダウ
ンロード回路の構成図である。図1に示すダウンロード
回路は、プロセッサが単一時のダウンロード回路に適用
した例である。
【0016】図1において、11はプロセッサ、12は
EPROM、13はEEPROM、14は上位CPU
(供給手段)、15は制御回路、16は双方向バッフ
ァ、17,18はバッファ、19はRAMである。
【0017】上記制御回路15、双方向バッファ16及
びバッファ17,18は、全体としてバスを切り換えて
外部からのプログラム内容の変更をプロセッサにダウン
ロードするように制御する制御手段20を構成する。
【0018】上記プロセッサ11は、EPROM12又
はEEPROM13に格納されたプログラムに従って処
理を行うもので、データ入力端子D、システムリセット
入力端子RST、ダウンロード信号(以下、DONE信
号という)出力端子DONE、書き込みイネーブル(W
E:Write Enable)信号出力端子WE、出力イネーブル
(OE:Output Enable)信号出力端子OEを備えてい
る。
【0019】データ入力端子Dには、EPROM12、
EEPROM13、又は上位CPU14からのプログラ
ムやデータが入力され、また、出力端子DONEからは
ダウンロード完了時にDONE信号が双方向バッファ1
6に出力される。また、書き込みイネーブル信号出力端
子WE、出力イネーブル信号出力端子OEからは、デー
タの書き込み/読み出しを制御するWE信号、OE信号
がRAM19又はEEPROM13に出力される。ま
た、システムリセット入力端子RSTに、正論理でリセ
ット信号が入力されると、システムリセットとなりプロ
セッサ11がダウンロードを開始する。
【0020】上記EPROM12は、プロセッサ11で
使用するプログラムやデータを格納する書き換え可能な
ROMであり、ブート用プログラムとオペレーション用
アプリケーションプログラムがあらかじめ書き込まれて
いる。プログラム変更がない場合には、EPROM12
に格納されたオペレーション用アプリケーションプログ
ラム及びデータは常時プロセッサ11に出力され、プロ
セッサ11はこのEPROM12のプログラムを実行す
る。
【0021】上記EEPROM13は、プログラム変更
後、EPROM12に替わってプログラムやデータをプ
ロセッサ11に供給する電気的に書き換え可能なROM
である。具体的には、後述する図2に示す処理に従っ
て、EPROM12の内容、及び上位CPU14からの
ダウンロードプログラムが、プロセッサ11及びRAM
19から書き込まれる。したがって、プログラム変更後
には、EEPROM13に格納されたプログラム及びデ
ータがプロセッサ11に出力され、プロセッサ11はこ
のEEPROM13のプログラムを実行する。
【0022】上記上位CPU14は、ダウンロード回路
全体を制御する装置であり、プログラム内容変更時には
制御回路15にプログラム内容変更要求を出力して制御
回路15を制御し、ダウンロードプログラムをプロセッ
サ11にダウンロードする。
【0023】上記制御回路15は、上位CPU14から
のプログラム内容変更要求に従って双方向バッファ16
及びバッファ17,18を制御する。すなわち、制御回
路15は、上位CPU14からのプログラム内容変更要
求に従って、双方向バッファ16にDIR信号を出力し
て双方向バッファ16のバスをEPROM12側からプ
ロセッサ11方向に、又はその逆方向に切り換える制御
を行うとともに、バッファ17,18に制御信号を出力
してバッファ17,18のうち何れか一方をオンし、E
PROM12側からプロセッサ11方向に、又は上位C
PU14からプロセッサ11方向にバスを切り換える制
御を行う。
【0024】上記双方向バッファ16は、バスを切り換
えるゲート回路であり、プロセッサ11からのDONE
信号をGate端子に、また制御回路15からのDIR
信号DIR端子に受けてバスの接続/遮断を行う。例え
ば、プロセッサ11からのDONE信号「H」をGat
e信号として受けるとアサートし、制御回路15からの
DIR信号によりバスをEPROM12側からプロセッ
サ11方向に通過するようにバスを切り換える。
【0025】上記バッファ17,18は、制御回路15
からの制御信号により何れか一方がオン/オフしてバス
を、EPROM12側からプロセッサ11方向に、又は
上位CPU14からプロセッサ11方向に切り換える。
【0026】上記RAM19は、ダウンロードされたプ
ログラムを一時的に格納するメモリであり、プロセッサ
11からのWE信号、OE信号により書き込み/読み出
しが制御される。なお、プロセッサ11の内部RAMの
容量がダウンロードされたプログラムを一旦格納できる
容量であれば、この外部RAM19は不要である。
【0027】このように、プロセッサ11は、上位CP
U14側と、EPROM12及びEEPROM13のR
OM側の2つのバスに接続された構成となっている。
【0028】次に、上述のように構成されたダウンロー
ド回路の動作を説明する。
【0029】図1に示すように、プロセッサ11は、上
位CPU14側と、EPROM12及びEEPROM1
3のROM側の2つのバスに接続されており、通常はE
PROM12又はEEPROM13に格納されたプログ
ラムに従って処理を行うが、上位CPU14からのプロ
グラム内容変更要求があると、上位CPU14からダウ
ンロードされたプログラムをEEPROM13に格納す
る処理を行う。そして、プログラム内容変更後はEEP
ROM13にダウンロードされたプログラムに従って処
理を行うものである。
【0030】まず、制御回路15は、プログラム内容変
更要求がない通常時には、双方向バッファ16及びバッ
ファ17,18にDIR信号及び制御信号を出力して以
下のように制御する。すなわち、通常時には、ROM側
からプロセッサ11へ信号が通るように、双方向バッフ
ァ16にDIR信号を出力し、バッファ17,18に制
御信号を出力してバッファ18をオンする。これによ
り、双方向バッファ16及びバッファ17,18のバス
が切り換わりROM側からプロセッサ11へ信号が通る
ようになる。また、システムリセット時にもROM側か
らプロセッサ11へ信号が流れるようにしておく。
【0031】上位CPU14からプログラム内容変更要
求があると、制御回路15は、双方向バッファ16及び
バッファ17,18にDIR信号及び制御信号を出力し
て、プロセッサ11からROM側(EEPROM13)
へ信号が通るように、双方向バッファ16のバスを切り
換え、バッファ17をオン(バッファ18はオフ)す
る。これにより、双方向バッファ16及びバッファ1
7,18のバスが切り換わりプロセッサ11からEEP
ROM13に信号が通るようになる。
【0032】プログラム内容変更要求により上述したバ
スの切り換えが行われると、プロセッサ11は双方向バ
ッファ16のGate端子にDONE信号「H」を出力
して双方向バッファ16をアサートする。ここで、プロ
セッサ11は、システムリセット後、DONE信号
「H」を出力し、ダウンロード終了後DONE信号
「L」を出力する。双方向バッファ16は、プロセッサ
11からのDONE信号をGate端子にGate信号
として受け、信号が「H」の間アサートしてバスを接続
状態にする。このDONE信号は、プロセッサ11がダ
ウンロード終了後ROM側のバスを切り離す役割もす
る。
【0033】なお、プロセッサ11がこのような出力信
号を持っていない場合には、外部レジスタ等でセット/
リセットをかけるようにしてもよい。
【0034】次いで、上位CPU14からダウンロード
されたプログラムは、プロセッサ11に接続されたRA
M19に一旦格納される。なお、プロセッサ11の内部
RAMの容量がダウンロードされたプログラムを一旦格
納できる容量であれば、内部RAMに格納する。
【0035】以下、図2の処理フローを参照しながらダ
ウンロード回路の動作について更に詳細に説明する。
【0036】図2は単一プロセッサ11を有するダウン
ロード回路のダウンロード動作を示すフローチャートで
あり、図中STはフローの各ステップを示す。
【0037】まず、ステップST1でプロセッサ11の
システムリセットをオンし、ROM側にバスを接続す
る。次いで、ステップST2でEPROM12からプロ
グラムを読み込みを開始し、ステップST3でプログラ
ムのダウンロードを完了すると、ステップST4でダウ
ンロードしたプログラムに基づいて通常のオペレーショ
ンを開始する。
【0038】すなわち、リセット投入時プロセッサ11
のDONE信号が「H」となり、双方向バッファ16の
Gate信号がアサートされる。双方向バッファ16の
DIR信号は制御回路15により制御され、EPROM
12からプロセッサ11方向に信号が通過する状態にな
っている。したがって、立ち上げ時は、EPROM12
側にバスは接続され、プロセッサ11はEPROM12
の内容を読み込み、ダウンロードする。
【0039】プロセッサ11は、ダウンロードが完了す
るとDONE信号をネゲートし、EPROM12をバス
から切り離し、通常のオペレーションを開始する。
【0040】ステップST5で上位CPU14からプロ
グラム変更要求を制御回路15が受信すると、ステップ
ST6で制御回路15は上位CPU14側からプロセッ
サ11へ信号が通過するようにバスを切り換える。具体
的には、制御回路15は、上位CPU14からのプログ
ラム内容変更要求に従って、双方向バッファ16にDI
R信号を出力して双方向バッファ16のバスをEPRO
M12側からプロセッサ11方向に切り換える制御を行
うとともに、バッファ17,18に制御信号を出力して
バッファ17をオンし、上位CPU14からプロセッサ
11方向にバスを切り換える制御を行う。
【0041】次いで、ステップST7で上位CPU14
からプロセッサ11に接続されたRAM19にダウンロ
ードを行い、ステップST8でダウンロードが完了する
と、ステップST9でRAM19に格納されたプログラ
ムをEEPROM13にコピーしてステップST4に戻
り通常のオペレーションを開始する。ここで、上位CP
U14からプロセッサ11に接続されたRAM19への
ダウンロードについては既に述べている。
【0042】プロセッサ11は、上位CPU14からダ
ウンロードされたプログラムを外部RAM19若しくは
内部RAMに保持し、ダウンロードプログラム受信終了
後このRAM19からEEPROM13にコピーするこ
とで、プログラム内容の変更を行い、EEPROM13
に更新された新しいプログラムでの通常オペレーション
状態に移行する。
【0043】以上説明したように、本実施形態に係るダ
ウンロード回路は、プログラムを書き換え可能なEPR
OM12及びEEPROM13と、このEPROM12
及びEEPROM13にバスを介して接続され、EPR
OM12又はEEPROM13に格納されたプログラム
を処理するプロセッサ11(プロセッサ#0)と、外部
から更新プログラムを供給する上位CPU14と、プロ
グラム書き換え時、上位CPU14の出力線をEPRO
M12のバスに接続して、上位CPU14からのプログ
ラムをプロセッサ11にダウンロードし、ダウンロード
終了後、ダウンロードされたプログラムをEEPROM
13に転送するように制御する制御手段20を備えた構
成としているので、運用中などにプログラム変更が発生
しても電源断やプログラムROMの交換等を行うことな
く、プログラム内容の変更を外部からダウンロードする
ことができる。
【0044】図3は本発明の第2の実施形態に係るダウ
ンロード回路の構成を示す回路図であり、プロセッサが
マルチ接続された場合のダウンロード回路に適用した例
である。実際上はこの第2の実施形態のように、プロセ
ッサがマルチ接続された装置において特に有効となる。
なお、本実施形態に係るダウンロード回路の説明にあた
り図1に示すダウンロード回路と同一構成部分には同一
符号を付して重複部分の説明を省略する。
【0045】図3において、11,21,22はマルチ
接続されたプロセッサ、12はEPROM、13はEE
PROM、14は上位CPU、15は制御回路、16は
双方向バッファ、17,18,23,24はバッファ、
19,25,26はRAM、27,28,29はAND
ゲート、30,31はORゲートである。
【0046】上記プロセッサ11,21,22、EPR
OM12、EEPROM13、制御回路15、双方向バ
ッファ16、バッファ17,18,23,24、RAM
19,25,26、ANDゲート27,28,29、O
Rゲート30,31は、例えば1枚のボード上に搭載さ
れる。
【0047】上記制御回路15、双方向バッファ16及
びバッファ17,18,23,24は、全体としてバス
を切り換えて外部からのプログラム内容の変更をプロセ
ッサ11,21,22にダウンロードするように制御す
る制御手段40を構成する。
【0048】上記プロセッサ11,21,22は、EP
ROM12又はEEPROM13に格納されたプログラ
ムに従って通常オペレーション処理、あるいはダウンロ
ード処理を行うもので、データ入力端子D、システムリ
セット入力端子RST、スタート信号入力端子STAR
T、DONE信号出力端子DONE、各種メモリ制御用
の書き込みイネーブル信号出力端子WE、出力イネーブ
ル信号出力端子OEを備えている。なお、説明の便宜
上、プロセッサ11,21,22は、それぞれプロセッ
サ#0,#1,#Nと表す。
【0049】データ入力端子Dには、EPROM12、
EEPROM13、又は上位CPU14からのプログラ
ムやデータが入力され、また、出力端子DONEはAN
Dゲート27,28,29を介して双方向バッファ1
6、バッファ17,18に接続される。また、ANDゲ
ート27,28,29の他方の入力端子には、正論理の
システムリセット信号を反転した信号が入力され、AN
Dゲート27,28,29はDONE信号とリセット信
号の反転信号とのAND論理をとり双方向バッファ1
6,バッファ23,24にそれぞれ出力する。
【0050】前述したように、DONE信号は双方向バ
ッファ16,バッファ23,24のGate信号をプロ
セッサ#0,#1,#Nでアサートするための信号であ
り、プロセッサ#0,#1,#Nは、リセット後「H」
を出力し、ダウンロード終了後「L」を出力する。本実
施例では、マルチ接続されたプロセッサ#0,#1,#
Nが確実に双方向バッファ16,バッファ23,24を
アサートできるように、リセットが終了してシステムリ
セット信号が「L」になってからプロセッサ#0,#
1,#NからのDONE信号が双方向バッファ16,バ
ッファ23,24が出力される。
【0051】この場合、DONE信号を次段プロセッサ
のリセット信号に入力し、例えばプロセッサ#0のダウ
ンロード終了まで、次段のプロセッサ#1に対し、リセ
ットを保持する。
【0052】このように、前段のプロセッサがダウンロ
ードを終了すると、次段のプロセッサがダウンロードを
開始するように接続されている。
【0053】さらに、最終段のプロセッサ#NのDON
E信号は、スタート信号として接続される全プロセッサ
に分配し、全プロセッサのダウンロードが終了したこと
を通知する。
【0054】また、書き込みイネーブル信号出力端子W
E、出力イネーブル信号出力端子OEからは、データの
書き込み/読み出しを制御するWE信号、OE信号がR
AM19又は、ORゲート30,31を介してEPRO
M12又はEEPROM13に出力される。
【0055】上記EPROM12は、プロセッサ#0,
#1,#Nで使用するプログラムやデータを格納する書
き換え可能なROMであり、ブート用プログラムとオペ
レーション用アプリケーションプログラムがあらかじめ
書き込まれている。プログラム変更がない場合には、E
PROM12に格納されたオペレーション用アプリケー
ションプログラム及びデータは常時プロセッサ#0,#
1,#Nに出力され、プロセッサ#0,#1,#Nはこ
のEPROM12のプログラムを実行する。
【0056】上記EEPROM13は、プログラム変更
後、EPROM12に替わってプログラムやデータをプ
ロセッサ#0,#1,#Nに供給する電気的に書き換え
可能なROMである。変更プログラム格納用として用い
る。具体的には、後述する図4に示す処理に従って、E
PROM12の内容、及び上位CPU14からのダウン
ロードプログラムが、プロセッサ#0,#1,#N及び
RAM19から書き込まれる。したがって、プログラム
変更後には、EEPROM13に格納されたプログラム
及びデータがプロセッサ#0,#1,#Nに出力され、
プロセッサ#0,#1,#NはこのEEPROM13の
プログラムを実行する。
【0057】上記上位CPU14は、ダウンロード回路
全体を制御する装置であり、プログラム内容変更時には
制御回路15にプログラム内容変更要求を出力して制御
回路15を制御し、ダウンロードプログラムをプロセッ
サ#0,#1,#Nにダウンロードする。
【0058】上記制御回路15は、上位CPU14から
のプログラム内容変更要求に従って双方向バッファ16
及びバッファ17,18を制御する。すなわち、制御回
路15は、上位CPU14からのプログラム内容変更要
求に従って、双方向バッファ16にDIR信号を出力し
て双方向バッファ16のバスをEPROM12側からプ
ロセッサ#0,#1,#N方向に、又はその逆方向に切
り換える制御を行うとともに、バッファ17,18に制
御信号を出力してバッファ17,18のうち何れか一方
をオンし、EPROM12側からプロセッサ#0,#
1,#N方向に、又は上位CPU14からプロセッサ#
0,#1,#N方向にバスを切り換える制御を行う。
【0059】上記双方向バッファ16は、バスを切り換
えるゲート回路であり、プロセッサ11からのDONE
信号をGate端子に、また制御回路15からのDIR
信号DIR端子に受けてバスの接続/遮断を行う。例え
ば、プロセッサ#0,#1,#NからのDONE信号
「H」をGate信号として受けるとアサートし、制御
回路15からのDIR信号によりバスをEPROM12
側からプロセッサ11方向に通過するようにバスを切り
換える。
【0060】上記バッファ23,24は、バスを切り換
えるゲート回路であり、プロセッサ#1,#NからのD
ONE信号をGate端子に受けてバスの接続/遮断を
行う。本実施形態では、プロセッサ#0以外はEEPR
OM13への転送(書き込み)は行わないこととしてい
るので、双方向バッファではなく、片方向バッファとす
る。バッファ23,24は、プロセッサ#1,#Nから
のDONE信号「H」をGate信号として受けるとア
サートする。
【0061】上記RAM19,25,26は、ダウンロ
ードされたプログラムを一時的に格納するメモリであ
り、プロセッサ#0,#1,#NからのWE信号、OE
信号により書き込み/読み出しが制御される。なお、プ
ロセッサ#0,#1,#Nの内部RAMの容量がダウン
ロードされたプログラムを一旦格納できる容量であれ
ば、この外部RAM19,25,26は不要である。
【0062】このように、マルチ接続されたプロセッサ
#0,#1,#Nは、上位CPU14側と、EPROM
12及びEEPROM13のROM側の2つのバスに接
続された構成となっている。
【0063】次に、上述のように構成されたダウンロー
ド回路の動作を説明する。
【0064】リセット投入時には、プロセッサ#0は双
方向バッファ16のGate端子にDONE信号「H」
を出力して双方向バッファ16をアサートする。ここ
で、プロセッサ#0は、システムリセット後、DONE
信号「H」を出力し、ダウンロード終了後DONE信号
「L」を出力する。双方向バッファ16は、プロセッサ
#0からのDONE信号をGate端子にGate信号
として受け、信号が「H」の間アサートしてEPROM
12からプロセッサ方向に信号が通過する状態にする。
【0065】このとき、プロセッサ#0は次段(すなわ
ち、プロセッサ#1)のリセット信号を自プロセッサの
ダウンロードが完了するまで保持しておく。
【0066】プロセッサ#1は、プロセッサ#0のダウ
ンロードが完了するとダウンロードを開始する。
【0067】このようにして、プロセッサ#Nまで1段
づつダウンロードを行っていく。
【0068】最終段のプロセッサ#Nは、ダウンロード
が完了するとすべてのプロセッサのダウンロードが完了
したことを全プロセッサに通知する。これを受信したプ
ロセッサは、通常オペレーションに移行する。
【0069】以下、図4の処理フローを参照しながらダ
ウンロード回路の動作について詳細に説明する。
【0070】図4はマルチ接続されたプロセッサ#0〜
#Nを有するダウンロード回路の動作を示すフローチャ
ートである。
【0071】まず、ステップST11でプロセッサ#0
のシステムリセットをオンし、ROM側にバスを接続す
る。次いで、ステップST12でプロセッサ#0がEP
ROM12からプログラムを読み込みを開始するととも
に、プロセッサ#1〜#Nをリセットし、ステップST
13でプログラムのダウンロードを完了する。
【0072】すなわち、リセット投入時プロセッサ#0
のDONE信号が「H」となり、双方向バッファ16の
Gate信号がアサートされる。双方向バッファ16の
DIR信号は制御回路15により制御され、EPROM
12からプロセッサ#0方向に信号が通過する状態にな
っている。したがって、立ち上げ時は、EPROM12
側にバスは接続され、プロセッサ#0はEPROM12
の内容を読み込み、ダウンロードする。
【0073】このとき、プロセッサ#0は次段(すなわ
ち、プロセッサ#1)のリセット信号を自プロセッサの
ダウンロードが完了するまで保持しておく。
【0074】次いで、ステップST14で次段のプロセ
ッサ#x(ここでは、プロセッサ#1)(但し、1≦x
≦N)がEPROM12からプログラムを読み込み、ス
テップST15でxがNになったか(x=Nか)否かを
判別し、x=NでないときはステップST16でxをイ
ンクリメント(x=x+1)してステップST14に戻
る。
【0075】このようにして、上記ステップST14〜
ステップST16でプロセッサ#1〜#Nについてダウ
ンロードが行われる。例えば、プロセッサ#1は、プロ
セッサ#0のダウンロードが完了するとダウンロードを
開始し、以下順にプロセッサ#Nまで1段づつダウンロ
ードを行っていく。
【0076】全プロセッサのダウンロードが完了すると
(ステップST17)、ステップST18でダウンロー
ドしたプログラムに基づいて通常のオペレーションを開
始する。
【0077】すなわち、最終段のプロセッサ#Nは、ダ
ウンロードが完了すると、DONE信号は、スタート信
号として接続される全プロセッサに分配し、全プロセッ
サのダウンロードが終了したことを全プロセッサに通知
する。これを受信したプロセッサ#1〜#Nは、通常オ
ペレーションに移行する。
【0078】ステップST19で上位CPU14からプ
ログラム変更要求を制御回路15が受信すると、ステッ
プST20で制御回路15は上位CPU14側からプロ
セッサ#0へ信号が通過するようにバスを切り換える。
具体的には、制御回路15は、上位CPU14からのプ
ログラム内容変更要求に従って、双方向バッファ16に
DIR信号を出力して双方向バッファ16のバスをEP
ROM12側からプロセッサ#0方向に切り換える制御
を行うとともに、バッファ17,18に制御信号を出力
してバッファ17をオンし、上位CPU14からプロセ
ッサ#0方向にバスを切り換える制御を行う。
【0079】次いで、ステップST21で上位CPU1
4からプロセッサ#0に接続されたRAM19にダウン
ロードを行い、ステップST22でダウンロードが完了
すると、ステップST9でRAM19に格納されたプロ
グラムをEEPROM13にコピーする。
【0080】プロセッサ#0は、上位CPU14からダ
ウンロードされたプログラムを外部RAM19若しくは
内部RAMに保持し、ダウンロードプログラム受信終了
後このRAM19からEEPROM13にコピーするこ
とで、プログラム内容の変更を行う。
【0081】次いで、ステップST24でプロセッサ#
0はプロセッサ#1〜#Nにリセット投入する。すなわ
ち、プロセッサ#0は自プロセッサのダウンロードが完
了すると、DONE信号をアサートすることにより、プ
ロセッサ#1をリブートさせる。
【0082】上記ステップST24でプロセッサ#1〜
#Nにリセット投入すると、ステップST25で次段の
プロセッサ#x(ここでは、プロセッサ#1)が、最新
プログラムがコピーされたEEPROM13からプログ
ラムを読み込み、ステップST26でxがNになったか
(x=Nか)否かを判別し、x=Nでないときはステッ
プST27でxをインクリメント(x=x+1)してス
テップST25に戻る。ステップST26でxがNにな
ると、ステップST28に進み、全プロセッサのダウン
ロードが完了すると、ステップST18に戻ってダウン
ロードしたプログラムに基づいて通常のオペレーション
を開始する。
【0083】このように、上記ステップST25〜ステ
ップST27でプロセッサ#Nまで1段づつリブートし
ていき、全プロセッサがリブートを終了すると、通常オ
ペレーションに移行する。
【0084】以上説明したように、第2の実施形態に係
るダウンロード回路は、プログラムを書き換え可能なE
PROM12及びEEPROM13と、このEPROM
12及びEEPROM13にバスを介して接続され、E
PROM12又はEEPROM13に格納されたプログ
ラムを処理するマルチ接続されたプロセッサ#0,#
1,#Nと、外部から更新プログラムを供給する上位C
PU14と、プログラム書き換え時、上位CPU14の
出力線をEPROM12のバスに接続して、上位CPU
14からのプログラムをプロセッサ11にダウンロード
し、ダウンロード終了後、プロセッサ#0にダウンロー
ドされたプログラムをEEPROM13に転送し、さら
にEEPROM13に転送されたプログラムを他のプロ
セッサ#1,#Nに順時ダウンロードするように制御す
る制御手段40を備えた構成としているので、各プロセ
ッサ#0〜#Nに対し、ダウンロード制御を行うことに
より、EPROM12及びEEPROM13の共有化を
図ることができ、さらに運用中のプログラム変更を可能
にするという効果を得ることができる。
【0085】したがって、プロセッサ#0〜#Nに対し
共通化したEPROM12及びEEPROM13を用い
れば済むので、プロセッサが増えてもコストが増大する
ことはない。また、運用中などにプログラム変更が発生
した場合でも、上記ダウンロード制御を行うことによ
り、電源断やプログラムROM等の交換が不要となると
いう優れた効果がある。
【0086】第2の実施形態に係るダウンロード回路で
は、プロセッサ毎にダウンロードしていくことからマル
チ接続されたプロセッサの数が増えると、ブート時間が
長くなってしまうことが考えられる。そこで、プロセッ
サの数が増えても一度にダウンロードが可能なダウンロ
ード回路を以下の第3の実施形態で示す。
【0087】図5は本発明の第3の実施形態に係るダウ
ンロード回路の構成を示す回路図であり、プロセッサが
マルチ接続された場合のダウンロード回路に適用した例
である。なお、本実施形態に係るダウンロード回路の説
明にあたり図3に示すダウンロード回路と同一構成部分
には同一符号を付して重複部分の説明を省略する。
【0088】図5において、11,21,22はマルチ
接続されたプロセッサ、12はEPROM、13はEE
PROM、14は上位CPU、15は制御回路、16は
双方向バッファ、17,18,23はバッファ、19,
25,26はRAM、41は調停回路(監視手段)、4
2,43はANDゲート、44,45,46はORゲー
トである。
【0089】上記プロセッサ11,21,22は、デー
タ入力端子D、システムリセット入力端子RST、スタ
ート信号入力端子STARTN、ロード監視端子AC
K、DONE信号出力端子DONE、各種メモリ制御用
の書き込みイネーブル信号出力端子WE、出力イネーブ
ル信号出力端子OEを備えている。
【0090】データ入力端子Dには、EPROM12、
EEPROM13、又は上位CPU14からのプログラ
ムやデータが入力され、また、プロセッサ11の出力端
子DONEはANDゲート42を介して双方向バッファ
16に接続される。また、プロセッサ21の出力端子D
ONEはORゲート44を介してプロセッサ11,2
1,22のスタート信号入力端子STARTNに接続さ
れ、プロセッサ22の出力端子DONEはANDゲート
43を介してバッファ23に接続されるとともに、OR
ゲート44の他方の入力端子に接続される。また、AN
Dゲート42,43の他方の入力端子には、正論理のシ
ステムリセット信号を反転した信号が入力され、AND
ゲート42,43はDONE信号とリセット信号の反転
信号とのAND論理をとり双方向バッファ16,バッフ
ァ23にそれぞれ出力する。
【0091】また、バッファ23の出力側は、各プロセ
ッサ#1〜#Nデータ入力端子Dに接続される。
【0092】また、プロセッサ21,22のEPROM
12への出力イネーブル信号出力端子EPROMOE1
〜N、EEPROM13への出力イネーブル信号出力端
子EEPROMOE1〜N、及びロード監視端子ACK
1〜Nは、調停回路41に入力される。
【0093】また、調停回路41の出力イネーブル信号
出力端子EPROMOE0は、ORゲート45を介して
EPROM12のOE端子に接続され、出力イネーブル
信号出力端子EEPROMOE0は、ORゲート46を
介してEPROM12のOE端子に接続される。
【0094】また、プロセッサ11のEPROM12へ
の出力イネーブル信号出力端子EPROMOE0は、O
Rゲート45を介してEPROM12のOE端子に接続
され、EEPROM13への出力イネーブル信号出力端
子EEPROMOE0は、ORゲート46を介してEP
ROM12のOE端子に接続される。
【0095】上記調停回路41は、プロセッサ21,2
2からのロード監視端子ACK1〜Nの各端子からのA
CK信号入力を基に、ROM(EPROM12、EEP
ROM13)に対するアドレス生成、ダウンロード時に
全てのプロセッサ21,22が同じタイミングで正常に
ロードできているかを監視する回路である。
【0096】前述したように、DONE信号は双方向バ
ッファ16,バッファ23のGate信号をプロセッサ
#0,#1,#Nでアサートするための信号であり、プ
ロセッサ#0,#1,#Nは、リセット後「H」を出力
し、ダウンロード終了後「L」を出力する。本実施例で
は、プロセッサ#0のDONE信号をプロセッサ#1,
#Nのリセット信号RSTに出力する。これにより、プ
ロセッサ#0のDONE信号をネゲートするとプロセッ
サ#1,#Nが一斉にダウンロードを開始する。
【0097】このように、プロセッサ#0がダウンロー
ドを終了すると、プロセッサ#1,#Nが一度にダウン
ロードできるように構成されている。
【0098】さらに、プロセッサ#1,#Nが正常にダ
ウンロードが完了したとき「0」を検出し、これをST
ARTN信号として全プロセッサ通知する機能を備えて
いる。
【0099】以下、図6の処理フローを参照しながらダ
ウンロード回路の動作について詳細に説明する。図6の
処理フローの説明にあたり、図4の処理フローのステッ
プと同一処理ステップには同一番号を付している。
【0100】まず、ステップST11でプロセッサ#0
のシステムリセットをオンし、ROM側にバスを接続す
る。次いで、ステップST12でプロセッサ#0がEP
ROM12からプログラムを読み込みを開始するととも
に、プロセッサ#1〜#Nをリセットし、ステップST
13でプログラムのダウンロードを完了する。
【0101】すなわち、リセット投入時プロセッサ#0
のDONE信号が「H」となり、双方向バッファ16の
Gate信号がアサートされる。双方向バッファ16の
DIR信号は制御回路15により制御され、EPROM
12からプロセッサ#0方向に信号が通過する状態にな
っている。したがって、立ち上げ時は、EPROM12
側にバスは接続され、プロセッサ#0はEPROM12
の内容を読み込み、ダウンロードする。
【0102】プロセッサ#0のDONE信号がネゲート
されると、ステップST31でプロセッサ#1,#Nは
一斉にダウンロードを開始する。
【0103】この時、調停回路15は、全てのプロセッ
サの読みこぼしがないようプロセッサ#1,#Nから出
力される全てのACK信号ACK1〜Nを監視して、正
常にダウンロードできるように制御する。
【0104】全プロセッサのダウンロードが完了すると
(ステップST17)、ステップST32でプロセッサ
#1,#NのDONE信号をネゲートして正常動作に移
行し、ステップST18でダウンロードしたプログラム
に基づいて通常のオペレーションを開始する。
【0105】このように、第3の実施形態に係るダウン
ロード回路は、ダウンロード状態を監視する調停回路4
1を備えているので、全てのプロセッサが正常にダウン
ロードしていることを監視することにより、EEPRO
M13に転送されたプログラムを他の全てのプロセッサ
#1,#Nに一斉にダウンロードすることができ、ダウ
ンロード時間の大幅な短縮を図ることができる。
【0106】なお、上記各実施形態では、マルチ接続さ
れたプロセッサに対するダウンロード回路に適用した例
であるが、接続されるプロセッサの種類、接続形態はど
のようなものであってもよい。例えば、1枚のボード上
にいくつかのプロセッサが搭載されていてもよく、同じ
プログラムで動作するものであればボードが分離してい
ても構わない。さらに、プロセッサの一部又は全部が、
例えばDSPで構成されていてもよい。
【0107】また、上記各実施形態では、変更プログラ
ム格納用としてEEPROMを用いているが、勿論これ
には限定されずフラッシュメモリ等を用いることも可能
である。また、外部からプログラムを供給する供給手段
として上位CPUを用いているが、プログラムを供給で
きるものであればCPUには限らない。
【0108】さらに、上記ダウンロード回路を構成す
る、メモリやバッファ、ゲート回路等の数、種類接続状
態などは前述した上述の実施形態に限られないことは言
うまでもない。
【0109】
【発明の効果】本発明に係るダウンロード回路では、プ
ログラムを書き換え可能なメモリと、該メモリにバスを
介して接続され、該メモリに格納されたプログラムを処
理するプロセッサと、外部からプログラムを供給する供
給手段と、プログラム書き換え時、供給手段の出力線を
メモリのバスに接続して、該供給手段のプログラムをプ
ロセッサにダウンロードし、ダウンロード終了後、ダウ
ンロードされたプログラムを該メモリに転送するように
制御する制御手段とを備えた構成としているので、運用
中などにプログラム変更が発生しても電源断やプログラ
ムROMの交換等を行うことなく、プログラム内容の変
更を外部からダウンロードすることができる。
【0110】また、本発明に係るダウンロード回路は、
メモリに複数のプロセッサが接続されており、制御手段
は、プログラム書き換え時、供給手段の出力線をメモリ
のバスに接続して、供給手段のプログラムを第1のプロ
セッサにダウンロードし、ダウンロード終了後、第1の
プロセッサにダウンロードされたプログラムを該メモリ
に転送し、さらに該メモリに転送されたプログラムを他
のプロセッサにダウンロードするように制御するように
構成しているので、各プロセッサに対し、個別のプログ
ラムROMを用意する必要をなくし、共通のプログラム
ROMから各々のプログラムにダウンロードを可能にす
るとともに、プログラム内容の変更を外部からダウンロ
ードすることにより、各プロセッサへのダウンロードが
可能になる。
【図面の簡単な説明】
【図1】本発明を適用した第1の実施形態に係るダウン
ロード回路の構成を示すブロック図である。
【図2】上記ダウンロード回路のダウンロード動作を説
明するためのフローチャートである。
【図3】本発明を適用した第2の実施形態に係るダウン
ロード回路の構成を示すブロック図である。
【図4】上記ダウンロード回路のダウンロード動作を説
明するためのフローチャートである。
【図5】本発明を適用した第3の実施形態に係るダウン
ロード回路の構成を示すブロック図である。
【図6】上記ダウンロード回路のダウンロード動作を説
明するためのフローチャートである。
【図7】従来のプロセッサとメモリの関係を説明するた
めの図である。
【図8】従来のプロセッサとメモリの関係を説明するた
めの図である。
【符号の説明】
11,21,22 プロセッサ、12 EPROM、1
3 EEPROM、14 上位CPU(供給手段)、1
5 制御回路、16 双方向バッファ、17,18,2
3,24 バッファ、19,25,26 RAM、2
0,40 制御手段、41 調停回路(監視手段)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 麻生 二郎 東京都港区虎ノ門1丁目7番12号 沖電気 工業株式会社内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 プログラムを書き換え可能なメモリと、 該メモリにバスを介して接続され、該メモリに格納され
    たプログラムを処理するプロセッサと、 外部からプログラムを供給する供給手段と、 プログラム書き換え時、前記供給手段の出力線を前記メ
    モリのバスに接続して、該供給手段のプログラムを前記
    プロセッサにダウンロードし、ダウンロード終了後、ダ
    ウンロードされたプログラムを該メモリに転送するよう
    に制御する制御手段とを備えたことを特徴とするダウン
    ロード回路。
  2. 【請求項2】 上記請求項1に記載のダウンロード回路
    において、 前記メモリに複数のプロセッサが接続されており、 前記制御手段は、プログラム書き換え時、前記供給手段
    の出力線を前記メモリのバスに接続して、前記供給手段
    のプログラムを第1のプロセッサにダウンロードし、ダ
    ウンロード終了後、第1のプロセッサにダウンロードさ
    れたプログラムを該メモリに転送し、さらに該メモリに
    転送されたプログラムを他のプロセッサにダウンロード
    するように制御することを特徴とするダウンロード回
    路。
  3. 【請求項3】 上記請求項1に記載のダウンロード回路
    において、 ダウンロード状態を監視する監視手段を備え、 前記メモリに複数のプロセッサが接続されており、 前記制御手段は、プログラム書き換え時、前記供給手段
    の出力線を前記メモリのバスに接続して、前記供給手段
    のプログラムを第1のプロセッサにダウンロードし、ダ
    ウンロード終了後、第1のプロセッサにダウンロードさ
    れたプログラムを該メモリに転送し、さらに該メモリに
    転送されたプログラムを他のプロセッサに一斉にダウン
    ロードするように制御し、 前記監視手段は、ダウンロード時全てのプロセッサが正
    常にダウンロードしていることを監視することを特徴と
    するダウンロード回路。
  4. 【請求項4】 前記供給手段は、前記制御手段に接続さ
    れたマイクロコンピュータであることを特徴とする請求
    項1記載のダウンロード回路。
JP5447096A 1996-03-12 1996-03-12 ダウンロード回路 Withdrawn JPH09244902A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5447096A JPH09244902A (ja) 1996-03-12 1996-03-12 ダウンロード回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5447096A JPH09244902A (ja) 1996-03-12 1996-03-12 ダウンロード回路

Publications (1)

Publication Number Publication Date
JPH09244902A true JPH09244902A (ja) 1997-09-19

Family

ID=12971571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5447096A Withdrawn JPH09244902A (ja) 1996-03-12 1996-03-12 ダウンロード回路

Country Status (1)

Country Link
JP (1) JPH09244902A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013522803A (ja) * 2010-03-22 2013-06-13 クアルコム,インコーポレイテッド マルチプロセッサシステムにおける1次プロセッサから1つまたは複数の2次プロセッサへの実行可能ソフトウェア画像の直接分散ローディング
US9058191B2 (en) 2010-03-22 2015-06-16 Qualcomm Incorporated Direct transfer of executable software image to memory allocated by target processor based on transferred image header

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013522803A (ja) * 2010-03-22 2013-06-13 クアルコム,インコーポレイテッド マルチプロセッサシステムにおける1次プロセッサから1つまたは複数の2次プロセッサへの実行可能ソフトウェア画像の直接分散ローディング
KR101412173B1 (ko) * 2010-03-22 2014-06-25 퀄컴 인코포레이티드 다중―프로세서 시스템에서 1차 프로세서로부터 하나 이상의 2차 프로세서로의 실행 가능 소프트웨어 이미지의 직접적인 분산 로딩
US8838949B2 (en) 2010-03-22 2014-09-16 Qualcomm Incorporated Direct scatter loading of executable software image from a primary processor to one or more secondary processor in a multi-processor system
US9058191B2 (en) 2010-03-22 2015-06-16 Qualcomm Incorporated Direct transfer of executable software image to memory allocated by target processor based on transferred image header
CN105718419B (zh) * 2010-03-22 2019-04-16 高通股份有限公司 在多处理器系统中将可执行软件图像从主要处理器直接分散加载到一个或一个以上次要处理器

Similar Documents

Publication Publication Date Title
US6154838A (en) Flash ROM sharing between processor and microcontroller during booting and handling warm-booting events
US5125081A (en) Inter-configuration changing controller based upon the connection and configuration information among plurality of clusters and the global storage
JPH02267634A (ja) 割込み処理装置
JPH11242592A (ja) 固定フラッシュロムのデータ更新装置及びデータ更新方法
TW403880B (en) Relocatable code storage in an integrated circuit with an embedded microcontroller
JP2001350738A (ja) フラッシュメモリ内蔵マイクロコンピュータ
CN114661368A (zh) 一种芯片及其启动方法
US6473843B2 (en) Alternate access mechanism for saving and restoring state of write-only register
JP2000194551A (ja) フラッシュメモリ書換え回路
JPH09244902A (ja) ダウンロード回路
JP3514651B2 (ja) リブート制御装置
US6418540B1 (en) State transfer with throw-away thread
JP7468112B2 (ja) インタフェース回路およびインタフェース回路の制御方法
KR100465610B1 (ko) 온-칩 프로그래밍 능력을 가지는 내장된 플래시 메모리를 구비한 마이크로컴퓨터 및 상기 내장된 플래시 메모리에 데이터를프로그램하는 방법
JPH11338687A (ja) プログラム書換システム
JP2853593B2 (ja) ダウンロード装置
JP2000029673A (ja) プログラム制御システム
JPH03268007A (ja) シーケンスコントローラ
JPH0240760A (ja) 情報処理装置
JP2005266948A (ja) コアi/oカードを実装したシステムボード
JPH01205339A (ja) マイクロコンピュータシステム
JPH04175927A (ja) プログラムのパッチ方式
JPH0764937A (ja) マイクロコンピュータシステム及びそれに使用されるマイクロコンピュータ
JPS60230238A (ja) マイクロプログラム制御装置
JPH1139278A (ja) プロセッサおよびメモリアクセス方法

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030603