JPH10222482A - マイクロコンピュータおよび該マイクロコンピュータを含むシステム - Google Patents
マイクロコンピュータおよび該マイクロコンピュータを含むシステムInfo
- Publication number
- JPH10222482A JPH10222482A JP9024892A JP2489297A JPH10222482A JP H10222482 A JPH10222482 A JP H10222482A JP 9024892 A JP9024892 A JP 9024892A JP 2489297 A JP2489297 A JP 2489297A JP H10222482 A JPH10222482 A JP H10222482A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- chip
- signal
- interrupt
- 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
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Microcomputers (AREA)
- Semiconductor Memories (AREA)
- Dram (AREA)
Abstract
よびコストの増大を防ぐとともに、システムに組み込ん
だ後にもメモリ内容を自由に入れ換えることができ、か
つ、予期しない動作によって内容が破壊されることがな
いオンチップメモリを備えたマイクロコンピュータおよ
び該マイクロコンピュータを用いたシステムを提供する
こと。 【解決手段】 CPUとアドレスバスABと書き込み読
み出し可能な第1および第2のオンチップメモリMEM
1,MEM2とを具備し、第1のオンチップメモリME
M1は、データ書き込み命令により、常時書き込み動作
が可能であるように制御され、第2のオンチップメモリ
MEM2は、データ書き込み命令により、特定の動作状
態(特定の割り込み)のときのみ書き込み動作が可能に
なるように制御されるとともに、外部MEM3よりデー
タを取り込む手段PPを備える。
Description
にメモリ(オンチップメモリ)を搭載したマイクロコン
ピュータに係り、特に、オンチップメモリの一部の領域
に対して必要なプログラムやデータをダウンロードする
ときのみ書込みを許可するようにしたマイクロコンピュ
ータおよび該マイクロコンピュータを用いたシステムに
関する。
て、部品点数の削減およびデータのアクセス速度向上の
ために、オンチップのリード・オンリー・メモリ(RO
M)を設けておき、必要なプログラムや定数データをこ
のROMに格納するようにしたものが従来からある。こ
こで使用されるROMには、チップ製造時に必要なプロ
グラムやデータ全てを予め書き込んでしまうマスクRO
Mのようなタイプの他、例えば、特開昭61−5165
9号公報に示されているような、後から電気的に内容を
書き替えることが可能なEPROMを同一チップ上に搭
載した例も知られている。EPROMは、頻繁にプログ
ラム内容を修正・改良するような場合には、後から電気
的に内容を自由に変更することができる点で有効であ
る。また、少量しか生産しないため専用のマスクROM
搭載チップを開発していたのではコストがかかりすぎて
しまう用途等においては、未書込みのEPROMを同一
チップ上に搭載した1チップマイクロコンピュータをス
トックしておき、必要とする数の1チップマイクロコン
ピュータのEPROMだけにプログラムやデータを書き
込むようにして、製品のコストを削減できる利点もあ
る。
きプログラムやデータが非常に大きくなり、コストに見
合ったチップサイズで搭載可能なオンチップROMの容
量では入りきらない用途が出てきている。例えば、同一
のシステムをいくつかの用途に使用するためには、全て
の用途に必要なプログラムやデータを予めオンチップR
OMに書き込んでおかなければならないが、その場合、
単一の用途向けのバージョンに比べて非常に大きな容量
のメモリを搭載しなければならず、チップ面積が増大し
てコストの点で大きな問題があった。
Mを搭載した例は、システムに組み込む前にメモリの内
容を書き替えることは可能であるが、一度システムに組
み込まれてしまうとそのシステムの利用者が必要に応じ
て内容を入れ換えることはできないという問題があっ
た。その理由は、オンチップEPROMの内容を変更す
るためには特別の装置が必要であり、システム内で自由
に書き替えることができないことによる。
用した場合は、システム内でも自由に書き換えが可能な
ため、最大の容量を必要とする用途に合わせた容量を搭
載しておけばよい。そして、ある用途に使用するときに
は、最初に必要なプログラムや定数データだけをダウン
ロードすればよい。しかしながらこの手法では、システ
ムとして動作中は内容が変更されてはいけないプログラ
ムや定数データまでが、予期しない動作によって内容が
破壊される危険があり、大事なデータの処理には適用し
にくいという問題がある。
にしてチップ面積およびコストの増大を防ぐとともに、
システムに組み込んだ後にもメモリ内容を自由に入れ換
えることができ、かつ、予期しない動作によって内容が
破壊されることがないオンチップメモリを備えたマイク
ロコンピュータおよび該マイクロコンピュータを用いた
システムを提供することにある。
ュータは、上記目的を達成するために、CPUと、該C
PUからアドレスが供給されるアドレスバス(AB)
と、該アドレスバス(AB)に接続され、与えられたア
ドレスによってアクセスされ読み出し書き込みが可能な
第1および第2のオンチップメモリ(MEM1,MEM
2)とを具備するマイクロコンピュータ(LSI)であ
って、第1のオンチップメモリ(MEM1)は、データ
書き込み命令により、常時書き込み動作が可能であるよ
うに制御され、第2のオンチップメモリ(MEM2)
は、データ書き込み命令により、特定の動作状態(特定
の割り込み)のときのみ書き込み動作が可能になるよう
に制御されるとともに、外部(外部メモリMEM3)よ
りデータを取り込む手段を備えることを特徴としてい
る。また、第2のオンチップメモリは、特定の割込から
抜けたときにはいかなる書き込み動作も受けつけなくな
るような制御手段を有している。
CPUと、2つのアドレス領域間でデータ転送を実行す
るダイレクトメモリアクセスコントローラ(DMAC)
と、前記CPUまたは前記DMACからアドレスが供給
されるアドレスバス(AB)と、与えられたアドレスに
よってアクセスされ読み出し書き込みが可能な第1およ
び第2のオンチップメモリ(MEM1,MEM2)とを
具備するマイクロコンピュータであって、第1のオンチ
ップメモリ(MEM1)はデータ書き込み命令により常
時書き込み動作が可能であるように制御され、第2のオ
ンチップメモリ(MEM2)はデータ書き込み命令では
書き込み動作は実行されず、DMACからのアクセスに
よってのみ書き込み動作が可能になるように制御される
とともに、外部(外部メモリ)よりデータを取り込む手
段を備えることを特徴としている。また、前記第2のオ
ンチップメモリ(MEM2)はダイナミック型のランダ
ム・アクセス・メモリで構成されることを特徴としてい
る。さらに、本発明のシステムは、前記いずれかのマイ
クロコンピュータを用いて構成されることを特徴として
いる。
は、プログラムやデータを格納するオンチップメモリ領
域に必要なプログラムやデータをダウンロードするとき
にのみ書き込み可能になるような制御機構を設け、それ
以外の場合はRAMでありながらリード・オンリー・メ
モリとして動作させるようにしている。この構成によ
り、ダウンロード動作以外での予期しない動作によって
内容が破壊される危険を排除しつつ、用途によってプロ
グラムやデータの書き換え可能なオンチップメモリを搭
載したマイクロコンピュータを実現することが可能とな
る。またこの構成によると、用途によって必要なプログ
ラムやデータを入れることができるため、予め全てのプ
ログラムやデータを記憶しておく必要がなくなるため、
オンチップメモリを大容量にする必要がなくなり、面積
やコストの増大を防ぐことができる。
ードするときにのみ書き込み可能になるような制御機構
としては、ある特定の割り込みが受けつけられたときの
みイネーブル状態となり、その割り込みルーチンを抜け
る動作を実行したときにディセーブル状態になる制御信
号を設けることによって実現できる。また、直接データ
転送動作を制御するDMACを搭載し、複数搭載してい
る場合はその内の少なくとも1つが動作するときにのみ
イネーブル状態となり、それ以外の動作ではディセーブ
ル状態になる制御信号を設けることによっても実現でき
る。
する。図1は、本発明を適用した1チップマイコンを組
み込んだシステムのブロック図の一実施例である。同図
において、LSIは本発明を適用した1チップマイコ
ン、MEM1はチップ上に内蔵された第1のオンチップ
メモリ、MEM2はチップ上に内蔵された第2のオンチ
ップメモリ、CPUは与えられたプログラムに従って処
理を実行するセントラル・プロセッシング・ユニット
(中央処理装置)、SP1はチップ上に搭載された第1
のシリアルポート(シリアルポート1)、SP2はチッ
プ上に搭載された第2のシリアルポート(シリアルポー
ト2)、INTは割り込み処理回路、ADECはシリア
ルポートSP1およびSP2等の周辺モジュールに割り
当てられているメモリマップレジスタのアドレスを検知
して制御信号を生成するアドレスデコーダ、PPは外部
とデータの入出力を行うためのパラレルポート、MEM
3は1チップマイコンLSIの外部に設けられた外部メ
モリである。
プされた周辺モジュールとのデータの転送や制御コマン
ドを送るため、アドレスを監視し、該当アドレスを検知
した場合にアクセスされた周辺モジュールに対してそれ
を知らせる信号を送出する。本実施例ではシリアルポー
トSP1およびSP2を制御対象としている。シリアル
ポートSP1およびSP2は、各々送受信データを割り
込み処理によって転送するための割り込み要求信号SI
RQ1(SP1の受信割り込み用),SORQ1(SP
1の送信割り込み用),SIRQ2(SP2の受信割り
込み用),SORQ2(SP2の送信割り込み用)を割
り込み処理回路INTに出力する。割り込み処理回路I
NTは、その他、外部より3つの割り込み要求信号IR
Q1,IRQ2,IRQ3を受け取る。要求された割り
込み要因はコード化され割り込み要求コードREQ
[2:0]としてCPUに送られる。CPUは要求され
た割り込みを受け付け可能状態になったとき、受け付け
許可信号IACKを割り込み処理回路INTに返送する
とともに、割り込み処理の実行を開始する。
り込み処理回路INTは、該当する割り込み要求元にそ
の情報を個別の割り込み受け付け信号群IACKnとし
て返送する。該割り込み受け付け信号群IACKnを受
け取ったそれぞれの割り込み要求元はそれに応じて対応
する要求信号をネゲートする。
メインルーチンへリターンする命令を実行し、リターン
命令実行信号IRTNを割り込み処理回路INTへ送
る。割り込み処理回路INTでは、受け取ったリターン
命令実行信号IRTNおよび先述の受け付け許可信号I
ACKを、第2のオンチップメモリMEM2への書き込
みイネーブル信号ENを生成するために使用する。内蔵
された第1のオンチップメモリMEM1および第2のオ
ンチップメモリMEM2は、データのリード/ライト動
作に必要な制御信号群CNT1およびCNT2をCPU
から受け取り、その制御に従って動作する。外部メモリ
MEM3については、パラレルポートPPが一旦制御信
号群CNT3をCPUより受け取り、その後、パラレル
ポートPPから改めて外部メモリMEM3の制御に必要
な制御信号を外部メモリMEM3に供給するように構成
されている。
Iがサポートする全アドレス空間の一部を第1のオンチ
ップメモリMEM1および第2のオンチップメモリME
M2に割り当て、残りの空間は全て外部メモリMEM3
に割り当てられているものとする。第2のオンチップメ
モリMEM2は、その他に割り込み処理回路INTから
書き込みイネーブル信号ENを受け取り、該書き込みイ
ネーブル信号ENがイネーブル状態を示しているときに
のみCPUからライト制御がきたらそれを実行するよう
になっている。書き込みイネーブル信号ENがディセー
ブル状態を示しているときは、たとえCPUからライト
制御がきていても実行しない。パラレルポートPPは、
アドレスが外部メモリMEM3に割り当てられた領域で
あるとき、CPUの制御信号群CNT3に従って外部メ
モリMEM3をアクセスし、必要なデータ転送を実行す
る。
ロック図の一例である。同図において、PRIORは、
送られてくる割り込み要求信号(IRQ1〜IRQ3,
SIRQ1〜SIRQ2,SORQ1〜SORQ2)の
中から予め定められた優先順位に従ってCPUに送る割
り込み要求を選択し、該選択された割り込み要求のコー
ドを生成するプライオリティエンコーダであり、EGE
Nは、第2のオンチップメモリMEM2に対して書き込
みイネーブル信号ENを生成する書き込み許可信号生成
回路であり、AGENは、CPUが割り込み要求を受け
付けたとき、該受け付けられた割り込み要求元に対して
個別に割り込み許可信号を生成する個別割り込み受け付
け許可信号生成回路である。なお、同図中のCK1およ
びCK2はクロック信号を示している。
てきた割り込み要求信号(IRQ1〜IRQ3,SIR
Q1〜SIRQ2,SORQ1〜SORQ2)は、クロ
ック信号CK1のタイミングで一旦ラッチされた後、プ
ライオリティエンコーダPRIORに入力される。プラ
イオリティエンコーダPRIORは、同時に複数の割り
込み要求が発生したとき、予め定められた優先順位に従
ってCPUに送るべき割り込み要求を選択する。
を説明するためのものであり、(a)はプライオリティ
エンコーダPRIORの真理値の例を示す図であり、
(b)は生成する割り込み要求コード(REQ[2:
0])の定義例を示す図である。図3(a)は、各割り
込み要求の優先順位がIRQ1>IRQ2>IRQ3>
SORQ2>SIRQ2>SORQ1>SIRQ1の順
に定義されている例である。例えば、割り込み要求信号
IRQ1がきたとき、たとえ他の割り込み要求が同時に
きていたとしても(*;Dont’careで示される)、プ
ライオリティエンコーダPRIORは、該割り込み要求
信号IRQ1を最優先に受け付けるべき割り込み要求と
して選択し、そのコードである割り込み要求コードRE
Q[2:0]=(111)を生成することを表してい
る。
成された割り込み要求コードREQ[2:0]は、クロ
ック信号CK2のタイミングでCPUへ出力されるとと
もに、個別割り込み受け付け許可信号生成回路AGEN
および書き込み許可信号生成回路EGENにも入力さ
れ、これら両回路でも使用される。なお、以下の例で
は、第2のオンチップメモリMEM2が書き込み可能と
なる割り込み要因IRQ1を最優先割り込みとして定義
しているが、第2のオンチップメモリMEM2に対する
割り込み要因IRQ1の優先度についてはもっと低くて
もよいことは言うまでもない。
GENは、割り込み要求コードREQ[2:0]によっ
て要求された割り込みがCPUによって受け付けられた
とき、CPUから受け付け許可信号IACKを受け取
り、どの割り込み要求が受け付けられたのかを判別して
個別割り込み受け付け信号群IACKnを生成し、クロ
ック信号CK2のタイミングで出力する。さらに詳しく
いえば、個別割り込み受け付け信号群IACKnは、割
り込み受け付け信号IACK1,IACK2,IACK
3,SOAK2,SIAK2,SOAK1,SIAK1
からなっている。これらの割り込み受け付け信号は、そ
れぞれ、割り込み要求信号IRQ1,IRQ2,IRQ
3,SORQ2,SIRQ2,SORQ1,SIRQ1
の要求に対応する受け付け信号になっている。
成回路AGENの真理値の例を示す図である。図4から
わかるように、個別割り込み受け付け信号群IACKn
はCPUからの受け付け許可信号IACKとプライオリ
ティデコーダPRIORからの割り込み要求コードRE
Q[2:0]によって生成される(図2参照)。例え
ば、受け付け許可信号IACKが1で、REQ[2]と
REQ[0]が1のときにはIACK3だけに許可信号
1が出力される。
Nと各メモリモジュールの関連を示す図である。第1の
オンチップメモリの書き込み/読み出し制御信号CNT
1は、アドレスストローブ信号AS1と書き込みイネー
ブル信号WE1とからなり、第2のオンチップメモリの
書き込み/読み出し制御信号群CNT2は、アドレスス
トローブ信号AS2と書き込みイネーブル信号WE2と
からなっている。また、同図では省略されているが、外
部メモリMEM3の書き込み/読み出し制御信号群CN
T3は、アドレスストローブ信号AS3と書き込みイネ
ーブル信号WE3とからなっている。本発明はオンチッ
プメモリMEM1および2の具体的なハードウエア構成
には直接関係がないので図5では省略している。一般的
なメモリ技術において周知のように、書き込みイネーブ
ル信号によってメモリへの書き込み可否が制御される。
セット信号RESETによって初期化(レジスタREG
1が0レベル出力状態)されると、第2のオンチップメ
モリMEM2への書き込みイネーブル信号ENをクリア
(0レベル)してディセーブル状態にし、それによって
第2のオンチップメモリMEM2への書き込みイネーブ
ル信号WE2の入力を禁止している。従って、通常の状
態では第2のオンチップメモリMEM2は書き込み禁止
状態であり、実質的にリード・オンリー・メモリ(RO
M)と等価な機能を果たしている。
付け時/終了時のタイミングチャートを示す図である。
図6(a)に基づいて割り込み要求信号IRQ1の受け
付け時の動作を説明する。第2のオンチップメモリを書
き込み可能とする割り込み要求信号IRQ1が外部から
入力されると、プライオリティエンコーダPRIORは
割り込み要求コードREQ[2:0]=(111)を生
成し(図3参照)、クロック信号CK2のタイミングで
CPUへ出力する(図2参照)。CPUが割り込み要求
を受け付けると、受け付け許可信号IACKを発行し、
この信号が書き込み許可信号生成回路EGENに入力さ
れる。これにより書き込み許可信号生成回路EGENで
は、IACK=1,REQ[2]=1,REQ[1]=
1,REQ[0]=1,IRTN=0となるため、論理
積回路ANDの出力が「1」、論理和回路ORの出力が
「0」となり、クロック信号CK2のタイミングでレジ
スタREG1をセット(ハイレベル出力状態)し、書き
込みイネーブル信号ENがイネーブル状態になり、第2
のオンチップメモリMEM2が書き込み可能状態にな
る。従って、書き込みイネーブル信号ENがイネーブル
状態の間に第2のオンチップメモリMEM2に必要なデ
ータまたはプログラムをダウンロードすればよい。
信号IRQ1の終了時の動作を説明する。IRQ1割り
込みが終了するとCPUはリターン命令を実行し、クロ
ック信号CK1のタイミングで書き込み許可信号生成回
路EGENに対してリターン命令実行信号IRTNを発
行する。リターン命令実行信号IRTNを受け取った書
き込み許可信号生成回路EGENでは、論理積回路AN
Dの出力が「0」、論理和回路ORの出力が「1」とな
り、クロック信号CK2のタイミングでレジスタREG
1をリセット(ロウレベル出力状態)し、書き込みイネ
ーブル信号ENがディセーブル状態になって第2のオン
チップメモリMEM2が書き込み不可状態になる。リタ
ーン命令実行信号IRTNは1周期のパルス信号であ
り、1周期後、ネゲートされる。
プメモリMEM2は外部割り込みIRQ1が受け付けら
れ、その割り込みルーチンが実行されているときにのみ
書き込みイネーブル信号ENがイネーブル状態になって
書き込みが可能になるので、この割り込みを第2のオン
チップメモリMEM2へのプログラムダウンロード処理
ルーチンとして使用することにより、他の動作中は第2
のオンチップメモリMEM2をRAMでありながらリー
ド・オンリー・メモリとして動作させることができ、予
期しない動作によって内容が破壊される危険を防止する
ことができる。なお命令フェッチ動作については、本発
明とは無関係であるため、回路構成および説明は省略し
た。以下の例でも同様である。
信号生成回路EGENは、外部割り込み要求信号IRQ
1による割り込み処理ルーチンが実行中は他の割り込み
は受け付けられないことを仮定した実施例であるが、I
RQ1割り込み処理ルーチン実行中に他の割り込み要求
が発生したときは、実行中の処理を途中で止めたくない
場合がある。このような場合は、図7に示すように、書
き込みイネーブル信号ENを反転した信号でプライオリ
ティエンコーダPRIORの割り込み要求信号入力を禁
止する割り込み禁止回路を付加すればよい。この構成に
よれば、書き込みイネーブル信号ENがイネーブル状態
のときはその反転信号(ロウレベル)と各割り込み要求
信号の論理積信号(ロウレベル)がプライオリティエン
コーダPRIORに入力されるため、結果的にIRQ1
割り込み処理ルーチン実行中は、他の割り込み要求がマ
スクされる。なお、図7には優先度の最も高いIRQ1
割り込みの処理ルーチンが実行中のときのみ他の割り込
み要求をマスクする例を示したが、他の割り込み実行中
でも同じ様にして別の割り込みをマスクする具体的な方
法は様々知られており、そのような場合にも本発明を適
用できることは言うまでもない。
チン実行中に他の割り込み要求が発生したとき、IRQ
1割り込み処理を一時的に中断して要求された他の割り
込み処理を先に実行し、他の割り込み処理が終了した後
にIRQ1割り込み処理を再開するようにしたい場合が
ある。このような場合、後から要求された他の割り込み
処理を実行している間は、一時的に第2のオンチップメ
モリMEM2への書き込みをディセーブル状態にしてお
き、他の割り込み処理を終了した後IRQ1割り込み処
理を再開したときに再度第2のオンチップメモリMEM
2への書き込みをイネーブル状態にする必要がある。
許可信号生成回路の一実施例を示す図である。また、図
9はそのときのタイミングチャートを示す図であり、
(a)はIRQ1処理実行中に他の割り込みを受付けた
時のタイミングチャートを示し、(b)は他の割り込み
実行終了後、IRQ1処理へ復帰する時のタイミングチ
ャートを示している。まず、IRQ1割り込みの処理ル
ーチンが実行中に他の割り込み要求が発生した場合の動
作を説明する。IRQ1割り込みの処理ルーチンが実行
中に他の割り込み要求が発生すると、割り込み要求コー
ドREQ[2:0]はIRQ1以外のコード(111以
外のコード)を示すので、図8のレジスタREG2は受
け付け許可信号IACKが入力されるとクリア(リセッ
ト)され、書き込みイネーブル信号ENはディセーブル
状態になる。このとき、遅延回路DELAYによって保
持されている直前のレジスタREG2の状態、すなわち
セット状態はデータバスDBに出力され、常時書き込み
が可能なメモリMEM1にその情報が退避される。以上
図9(a)参照。
実行中に割り込んだ処理が終了した場合の動作を説明す
る。IRQ1割り込みの処理ルーチンが実行中に割り込
んだ処理が終了すると、リターン命令が実行され、リタ
ーン命令実行信号IRTNが発行される。図8の書き込
み許可信号生成回路EGENでは、リターン命令実行信
号IRTNを受け取ると同時に、先ほど退避した情報が
メモリMEM1からデータバスDBを経て入力され、フ
リップフロップのセット信号がイネーブルとなるので、
レジスタREG2はセットされ、書き込みイネーブル信
号ENがイネーブル状態に復帰する。以上図9(b)参
照。図8の回路構造から、IRQ1以外の割り込みが多
重化したとしても、IRQ1以外の割り込み処理中には
書き込みイネーブル信号ENは決してセットされないこ
とは明らかである。
実施例では、第2のオンチップメモリMEM2が書き込
み可能となる割り込み要因として外部割り込みIRQ1
としているが、本発明はこの割り込み要因に限定される
ものではない。例えば、シリアルポートSP1の割り込
み要求であるSIRQ1を第2のオンチップメモリME
M2が書き込み可能となる割り込み要因とすると、SP
1で受信したデータのみ第2のオンチップメモリMEM
2に書き込むことが可能となり、シリアルポートによる
プログラムのダウンロード機能を備えることができる。
さらに、第2のオンチップメモリMEM2が書き込み可
能となる割り込み要因は、ただ1つのみに限定されるも
のではない。複数の割り込みにオンチップメモリMEM
2への書き込みを許す機能を備えることも、本発明の実
施例のひとつである。
処理回路INTにあるレジスタREG1を別の回路構成
(レジスタREG3)にした例である。すなわち、本実
施例ではフリップフロップの代わりにトライステートイ
ンバータを用いたリセット付きラッチ回路を用いてレジ
スタREG3を構成している。機能や動作は図5と全く
同一である。同様に図8のレジスタREG2について
も、図11に示すようなトライステートインバータを用
いたリセット付きラッチ回路を用いた構成のレジスタR
EG3(図10のレジスタREG3と同じ構成)でも同
じ機能や動作を実現することができる。
2の書き込みイネーブル信号ENの生成回路を割り込み
処理回路INT内に設けていたが、本発明はこれに限定
されるものではない。例えばCPUが第2のオンチップ
メモリMEM2への書き込みを可能にする割り込みを受
け付けたことを認識し、メモリ・ライト命令をデコード
したとき、もしアドレスが第2のオンチップメモリME
M2領域ならば、その時点でその命令をキャンセルし、
必要ならばエラー処理を実行することでも実現可能であ
る。本発明の上記目的を達成するには、ある特定の割り
込み動作中にのみ第2のオンチップメモリMEM2への
書き込みを許可するものであれば如何なる構成でもよい
ことは明らかである。
た1チップマイコンを組み込んだシステムのブロック図
の別の実施例である。本実施例は、例えば、外部に備え
られた大容量のマスクROMに保存されているいくつか
のアプリケーションプログラムのうち用途に応じたプロ
グラムだけをDMAコントローラを用いて内蔵されてい
る第2のオンチップメモリMEM2に転送するようにし
た例であり、この構成は多用途システムを実現するのに
適している。
た1チップマイコン、MEM1はチップ上に内蔵された
第1のオンチップメモリ、MEM2はチップ上に内蔵さ
れた第2のオンチップメモリ、CPUは与えられたプロ
グラムに従って処理を実行するセントラルプロセッシン
グユニット(中央処理装置)、DMACは指定された2
つのメモリ領域間のデータ転送を、CPUを介さずに直
接実行するためのダイレクト・メモリ・アクセス・コン
トローラ回路、BSCはCPUまたはDMACから要求
されるメモリアクセスのためのバス使用権要求をチェッ
クしてバスの使用順序を制御し、各メモリへの制御信号
を生成するバス・コントローラ、ADECはDMAC等
の周辺モジュールに割り当てられているメモリマップレ
ジスタのアドレスを検知して制御信号を生成するアドレ
スデコーダ、パラレルポートPPは外部とデータの入出
力を行うためのパラレルポート、MEM3はLSIの外
部に設けられた外部メモリである。
と同様、メモリマップされた周辺モジュールとのデータ
の転送や、制御コマンドを送るため、アドレスを監視
し、該当アドレスを検知するとアクセスされた周辺モジ
ュールに対してそれを知らせる信号を送る。本実施例で
はDMACを制御対象としている。DMACはあるメモ
リ領域間のデータ転送を行なうとき、バス使用権を得る
ためにバス・コントローラBSCに対してバス権要求信
号DMRQを送る。
可信号DMAKが返ってくると、DMACは直ちに必要
なデータ転送動作を開始する。まず、ソースデータを格
納しているアドレスをアドレスバスABに出力し、ソー
スメモリから読み出されたデータをデータバスDBを介
して受け取る。このときはメモリ読み出しであるので、
バス・コントローラBSCに対して書き込み動作信号D
WEをディセーブル状態にする。次に、送り先のメモリ
アドレスをABに出力し、格納すべきデータをDBへ出
力する。このときはメモリ書き込みであるので、バス・
コントローラBSCに対して書き込み動作信号DWEを
イネーブル状態にする。メモリに対する書き込み/読み
出し制御はバス・コントローラBSCが行なう。
き、DMACと同様にバス使用権を得るためにバス・コ
ントローラBSCに対してバス権要求信号CMRQを送
る。バス・コントローラBSCからバス使用許可信号C
MAKが返ってくると、CPUは必要なメモリアクセス
動作を実行する。メモリ・リードの場合は読み出すべき
アドレスをアドレスバスABに出力し、ソースメモリか
ら読み出されたデータをデータバスDBを介して受け取
る。このとき、バス・コントローラBSCに対して書き
込み動作信号CWEをディセーブル状態にする。メモリ
・ライトの場合は書き込み先のメモリアドレスをABに
出力し、格納すべきデータをDBへ出力する。このと
き、バス・コントローラBSCに対して書き込み動作信
号CWEをイネーブル状態にする。
1,第2のオンチップメモリMEM2はデータのリード
/ライト動作に必要な制御信号群CNT4,CNT5を
バス・コントローラBSCから受け取り、その制御に従
って動作する。外部メモリMEM3については、パラレ
ルポートPPが一旦制御信号群CNT6をバス・コント
ローラBSCより受け取り、パラレルポートPPが改め
て外部メモリMEM3の制御に必要な制御信号を供給す
る。パラレルポートPPはアドレスが外部メモリ領域で
あるとき、CPUの制御信号群CNT6に従って外部メ
モリMEM3をアクセスし、必要なデータ転送を実行す
る。
よびCPUから送られてくるバス使用権要求信号DMR
Q,CMRQを受け取り、許可信号DMAK,CMAK
信号を返すと共に、書き込みイネーブル信号DWE,C
WEの状態およびアドレスバスAB上の情報から、該当
メモリに必要な制御信号群を生成する。図13はバス・
コントローラBSCのより詳細なブロック図である。バ
ス・コントローラBSCは少なくとも制御回路およびス
テートマシンを構成するランダム論理回路STATE
(以下、単にSTATEという)と、出力信号の出力タ
イミングを決めて1周期間出力を保持するスタティック
ラッチ回路SLH1およびステート信号ST1,ST0
をラッチして次のサイクルのステートおよび出力信号を
決めるために再びSTATEに状態をフィードバックさ
せる遅延用ラッチ回路SLH2からなっている。各メモ
リの書き込み/読み出し制御信号群CNT4,CNT
5,CNT6は、各々アドレスストローブ信号AS4,
AS5,AS6および書き込みイネーブル信号WE4,
WE5,WE6とからなっている。
15はステート・コードの定義図、図16および図17
はそれぞれDMACおよびCPUによるメモリアクセス
時のバス・コントローラBSC動作のタイミングチャー
トを示す図である。図16(a)はDMACによる第1
のオンチップメモリMEM1アクセス時のタイミングチ
ャート、図16(b)はDMACによる第2のオンチッ
プメモリMEM2アクセス時のタイミングチャート、図
17(a)はCPUによる第1のオンチップメモリME
M1アクセス時のタイミングチャートであり、図17
(b)はCPUによる第2のオンチップメモリMEM2
アクセス時のタイミングチャートである。
がきたとき(図16)、STATEは現在バスが使われ
ているかどうかを調べ、使われていなければ使用許可信
号をDMACへ返す。同時にDMACがバスを使用して
いることを示すステート・コードをST1,ST0に反
映する。図15の定義よりST1=1,ST0=0とな
る。次のサイクルでは、このステート・コードがラッチ
SLH2を経てPST1,PST0信号としてSTAT
E回路入力にフィードバックされる。次に、STATE
回路はPST1=1,PST0=0である(図14のN
o.12〜18)と、DMACがバス使用権を持っていること
を認識してDWE信号をチェックし、書き込み(No.15
〜17)か読み出し(同No.12〜14)かを判定する。ま
た、このときのアドレスバスAB上のアドレス値を確認
して該当するメモリに対してアドレスストローブ信号お
よび書き込みイネーブル信号を出力する。
にたとえCPUからバス使用権要求がきたとしても、許
可信号CMAKは発行しない(No.12〜18)。アドレス
ストローブ信号および書き込みイネーブル信号を受け取
ったメモリは、読み出しならば指定されたアドレスから
読み出されたデータをデータバスDBへ出力し、書き込
みならばデータバスDB上のデータを指定されたアドレ
スへ書き込む。なお図14によれば、DMACはオンチ
ップメモリMEM2への書き込みも他のメモリと同様に
実行できるようになっている。
きたとき(図17)、STATEは現在バスが使われて
いるかどうかを調べて使われていなければ使用許可信号
をCPUへ返す。同時にCPUがバスを使用しているこ
とを示すステート・コードをST1,ST0に反映す
る。図15の定義よりST1=0,ST0=1となる。
次のサイクルでは、このステート・コードがラッチSL
H2を経てPST1,PST0信号としてSTATE回
路入力にフィードバックされる。次に、STATE回路
はPST1=0,PST0=1であると(No.5〜11)、
CPUがバス使用権を持っていることを認識してCWE
信号をチェックし、書き込みか、読み出しかを判定す
る。またこのときのアドレスバスAB上のアドレス値を
確認して該当するメモリに対してアドレスストローブ信
号および書き込みイネーブル信号を出力する。
たとえDMACからバス使用権要求がきたとしても、許
可信号DMAKは発行しない(No.5〜11)。アドレスス
トローブ信号および書き込みイネーブル信号を受け取っ
たメモリは、読み出しならば指定されたアドレスから読
み出されたデータをデータバスDBへ出力し、書き込み
ならばデータバスDB上のデータを指定されたアドレス
へ書き込む。なお図14によれば、CPUはオンチップ
メモリMEM2への書き込みはできず、もしアドレスが
オンチップメモリMEM2領域でかつCWEがイネーブ
ルになっていても、バス・コントローラBSCはそれを
無視するようになっている(No.9。図17(b)参
照)。このように本実施例によれば、オンチップメモリ
MEM2にはDMACでのみデータの書き込みが許さ
れ、CPUの書き込み命令実行によって誤ってオンチッ
プメモリMEM2内のデータを消去してしまう危険を防
止することができる。
同時にバス使用権要求信号がきた場合は、DMACに優
先的に使用権を許可するようになっているが(No.4)、
本発明は特にこれに限定されるものではなく、CPUに
優先権があるように制御しても構わないことは言うまで
もない。
て、ソースからの読み出しと格納先へのデータ書き込み
動作を分離し、各々別々にバス使用権を要求していた
が、両者を一体化してひとつの動作として制御すること
も可能である。例えば、図18のような真理値および図
19のようなステートマシン・コード定義のSTATE
にすれば、図20のタイミングチャートに示すように、
1度のバス使用権獲得で連続的に動作させることができ
る。なお、図20ではオンチップメモリMEM1からオ
ンチップメモリMEM2へのデータ転送動作例を示して
いる。これを拡張すればさらに複数のデータ転送を連続
して実行するバースト転送動作も実現できる。これらの
データ転送動作としてのDMACの機能のバラエティ
は、本発明とは直接関係なく、ここで示した例以外の転
送方式でも本発明の実施を妨げないことは明らかであろ
う。
チップ・メモリの具体的な構成については言及していな
かったが、通常はスタティック型のランダム・アクセス
・メモリ(SRAM)で構成することになると考えられ
るが、単位面積当りの実装密度の点から、ダイナミック
型のランダム・アクセス・メモリ(DRAM)で構成し
てもよい。この場合、リフレッシュ動作が必要になる
が、定められた時間毎にCPUによって実行するか、ま
たはメモリ自体にセルフリフレッシュ動作回路を設けて
実行すればよい。
ば、プログラムやデータを格納するオンチップメモリ領
域に必要なプログラムやデータをダウンロードするとき
のみ書き込み可能になるような制御機構を設け、それ以
外の場合はRAMでありながらリード・オンリー・メモ
リとして動作させることにより、ダウンロード動作以外
での予期しない動作によって重要なデータやプログラム
が破壊される危険を排除しつつ、用途によってプログラ
ムやデータの書き換え可能なオンチップメモリを搭載す
ることが可能となる。
ードするときのみ書き込み可能になるような制御機構と
しては、ある特定の割り込みが受けつけられたときのみ
イネーブル状態となり、その割り込みルーチンをぬける
動作を実行したときにディセーブル状態になる制御信号
を設けることによって実現できる。また、直接データ転
送動作を制御するダイレクト・メモリ・アクセス・コン
トローラを搭載し、複数搭載している場合はその内の少
なくとも1つが動作するときのみイネーブル状態とな
り、それ以外の動作ではディセーブル状態になる制御信
号を設けることによっても実現できる。
は、複数の応用を本発明に適用したシステムに装備する
場合に特に有効性を発揮する。例えば、外部メモリME
M3の少なくとも一部を大容量で安価なROMで構成
し、そこに本発明を適用したシステムに装備される複数
の応用プログラムやそれに必要な定数データを格納して
おき、必要なときに必要なプログラムのみを図1の割り
込みまたは図12のDMACによって第2のオンチップ
メモリMEM2にダウンロードするようにすれば、使用
する全てのプログラムを予め内蔵しておく必要がなくな
り、チップ面積を低減できる。また、本発明を内蔵プロ
グラム可変機能として利用すれば、外部メモリMEM3
の代わりに別のシステムから必要なプログラムや定数デ
ータを通信によって受け取り、直接第2のオンチップメ
モリMEM2にダウンロードするようなシステムを実現
することも可能になる。このようなシステム形態は、今
後通信機能を備えた携帯型情報機器では非常に有効にな
ると考えられる。
大を不要にしてチップ面積およびコストの増大を防ぐと
ともに、システムに組み込んだ後にもメモリ内容を自由
に入れ換えることができ、かつ、予期しない動作によっ
て内容が破壊されることがないオンチップメモリを備え
たマイクロコンピュータおよび該マイクロコンピュータ
を用いたシステムを得ることができる。
ブロック図である。
および割り込みコード信号(REQ[2:0])の定義
を示す図である。
図である。
る。
のタイミングチャートを示す図である。
する機能を持つ割り込み処理回路の例である。
より詳細なブロック図である。
き、および他の割り込み実行終了後IRQ1へ復帰する
ときのタイミングチャートを示す図である。
である。
例である。
細なブロック図である。
0])の定義である。
セス時のタイミングチャートを示す図である。
ス時のタイミングチャートを示す図である。
TEの真理値を表す図である。
[2:0]のコード定義である。
時のタイミングチャート図である。
リ MEM2:LSI上に内蔵された第2のオンチップメモ
リ MEM3:LSIの外部メモリ CPU:セントラルプロセッシングユニット SP1,SP2:シリアルポート INT:割り込み処理回路 ADEC:メモリマップレジスタのアドレスを検知して
制御信号を生成するアドレスデコーダ PP:パラレルポート DB:データバス AB:アドレスバス REQ[2:0]:割り込み要求コード IRQ1,IRQ2,IRQ3:外部割り込み要求信号 SORQ1:シリアルポートSP1の送信用割り込み要
求信号 SIRQ1:シリアルポートSP1の受信用割り込み要
求信号 SORQ2:シリアルポートSP2の送信用割り込み要
求信号 SIRQ2:シリアルポートSP2の受信用割り込み要
求信号 PRIOR:プライオリティエンコーダ EGEN:書き込み許可信号生成回路 AGEN:個別割り込み受け付け許可信号生成回路 IACKn:割り込み受け付け信号群 IACK1:IRQ1の割り込み受け付け信号 IACK2:IRQ2の割り込み受け付け信号 IACK3:IRQ3の割り込み受け付け信号 SOAK1:SORQ1の割り込み受け付け信号 SIAK1:SIRQ1の割り込み受け付け信号 SOAK2:SORQ2の割り込み受け付け信号 SIAK2:SIRQ2の割り込み受け付け信号 RESET:リセット信号 EN:オンチップメモリMEM2の書き込みイネーブル
信号 IACK:CPUから書き込み許可信号生成回路EGE
Nへの受け付け許可信号 AND:論理積回路 REG1,REG2,REG3,REG4:レジスタ IRTN:リターン命令実行信号 DELAY:遅延回路 BSC:バス・コントローラ DMRQ:DMACのバス権要求信号 CMRQ:CPUのバス権要求信号 DMAK:DMACへのバス使用許可信号 CMRQ:CPUへのバス使用許可信号 DWE:DMACのための書き込み動作信号 CWE:CPUのための書き込み動作信号 CNT1,CNT2,CNT3,CNT4,CNT5,
CNT6:メモリのリード/ライト動作に必要な制御信
号群 STATE:制御論理およびステートマシンを構成する
ランダム論理回路 SLH1,SLH2:スタティックラッチ回路 AS1,AS2,AS3,AS4,AS5,AS6:ア
ドレスストローブ信号 WE1,WE2,WE3,WE4,WE5,WE6:書
き込みイネーブル信号 ST1,ST0:ステート・コード信号 PST1,PST0:前サイクルのステート・コード信
号
Claims (6)
- 【請求項1】 CPU(中央処理装置)と、該CPUか
らアドレスが供給されるアドレスバスと、該アドレスバ
スに接続され、与えられたアドレスによってアクセスさ
れる第1および第2のオンチップメモリとを少なくとも
具備するマイクロコンピュータであって、 前記第1および第2のオンチップメモリは、書き込みお
よび読み出しが可能なメモリ回路で構成され、 前記第1のオンチップメモリは、データ書き込み命令に
より、常時書き込み動作が可能であるように制御され、 前記第2のオンチップメモリは、データ書き込み命令に
より、特定の動作状態のときのみ書き込み動作が可能に
なるように制御されるとともに、外部よりデータを取り
込む手段を備えることを特徴とするマイクロコンピュー
タ。 - 【請求項2】 前記特定の動作状態は、特定の割込が受
け付けられた状態であることを特徴とする請求項1記載
のマイクロコンピュータ。 - 【請求項3】 前記第2のオンチップメモリは、前記特
定の割込から抜けたときにはいかなる書き込み動作も受
けつけなくなるような制御手段を有することを特徴とす
る請求項2記載のマイクロコンピュータ。 - 【請求項4】 CPU(中央処理装置)と、2つのアド
レス領域間でデータ転送を実行するダイレクトメモリア
クセスコントローラと、少なくとも前記CPUまたは前
記ダイレクトメモリアクセスコントローラからアドレス
が供給されるアドレスバスと、 前記アドレスバスに接続され、与えられたアドレスによ
ってアクセスされる第1および第2のオンチップメモリ
とを少なくとも具備するマイクロコンピュータであっ
て、 前記第1および第2のオンチップメモリは、書き込みお
よび読み出しが可能なメモリ回路で構成され、 前記第1のオンチップメモリは、少なくともデータ書き
込み命令からのアクセスにより、常時書き込み動作が可
能であるように制御され、 前記第2のオンチップメモリは、データ書き込み命令で
は書き込み動作は実行されず、前記ダイレクトメモリア
クセスコントローラからのアクセスによってのみ書き込
み動作が可能になるように制御されるとともに、外部よ
りデータを取り込む手段を備えることを特徴とするマイ
クロコンピュータ。 - 【請求項5】 少なくとも前記第2のオンチップメモリ
はダイナミック型のランダム・アクセス・メモリで構成
されることを特徴とする請求項1ないし4のいずれか1
項に記載のマイクロコンピュータ。 - 【請求項6】 請求項1ないし5のいずれか1項に記載
のマイクロコンピュータを用いたことを特徴とするシス
テム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9024892A JPH10222482A (ja) | 1997-02-07 | 1997-02-07 | マイクロコンピュータおよび該マイクロコンピュータを含むシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9024892A JPH10222482A (ja) | 1997-02-07 | 1997-02-07 | マイクロコンピュータおよび該マイクロコンピュータを含むシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10222482A true JPH10222482A (ja) | 1998-08-21 |
Family
ID=12150847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9024892A Pending JPH10222482A (ja) | 1997-02-07 | 1997-02-07 | マイクロコンピュータおよび該マイクロコンピュータを含むシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10222482A (ja) |
-
1997
- 1997-02-07 JP JP9024892A patent/JPH10222482A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100805603B1 (ko) | 집적 회로 | |
US7411859B2 (en) | Multi-port memory device for buffering between hosts | |
US7730268B2 (en) | Multiprocessor system having an input/output (I/O) bridge circuit for transferring data between volatile and non-volatile memory | |
US7299323B2 (en) | Memory controller having a read-modify-write function | |
US7581054B2 (en) | Data processing system | |
JP4226085B2 (ja) | マイクロプロセッサ及びマルチプロセッサシステム | |
US4835684A (en) | Microcomputer capable of transferring data from one location to another within a memory without an intermediary data bus | |
US6516378B1 (en) | Microprocessor for controlling busses | |
US5640531A (en) | Enhanced computer operational system using auxiliary mini-cache for enhancement to general cache | |
US5537609A (en) | Mini cache operational module for enhancement to general cache | |
KR20010006839A (ko) | 마이크로 컴퓨터, 전자 기기 및 에뮬레이션 방법 | |
US7310717B2 (en) | Data transfer control unit with selectable transfer unit size | |
JP2000194551A (ja) | フラッシュメモリ書換え回路 | |
JPH10222482A (ja) | マイクロコンピュータおよび該マイクロコンピュータを含むシステム | |
JP2008176518A (ja) | マイクロコンピュータ | |
JP4227789B2 (ja) | 集積回路装置およびデータ処理システム | |
US6651152B1 (en) | Microcomputer including download circuit controlling data download to plurality of memories | |
EP0380844A2 (en) | Method and means for interfacing a system control unit for a multi-processor system with the system main memory | |
JPH04104358A (ja) | マイクロコンピュータ装置 | |
JP3323341B2 (ja) | エミュレーション用プロセッサおよびそれを搭載したエミュレータ | |
JP3219422B2 (ja) | キャッシュメモリ制御方式 | |
JP2004334257A (ja) | メモリアクセスシステム及びメモリアクセス装置 | |
JPH1139278A (ja) | プロセッサおよびメモリアクセス方法 | |
JP4322284B2 (ja) | シングルチップマイクロコンピュータ | |
JP5270605B2 (ja) | マイクロコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070727 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080727 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 7 Free format text: PAYMENT UNTIL: 20080727 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 8 Free format text: PAYMENT UNTIL: 20090727 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090727 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 9 Free format text: PAYMENT UNTIL: 20100727 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 10 Free format text: PAYMENT UNTIL: 20110727 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110727 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 11 Free format text: PAYMENT UNTIL: 20120727 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120727 Year of fee payment: 11 |