JP2011248456A - 電子装置およびマイクロコントローラ - Google Patents
電子装置およびマイクロコントローラ Download PDFInfo
- Publication number
- JP2011248456A JP2011248456A JP2010118506A JP2010118506A JP2011248456A JP 2011248456 A JP2011248456 A JP 2011248456A JP 2010118506 A JP2010118506 A JP 2010118506A JP 2010118506 A JP2010118506 A JP 2010118506A JP 2011248456 A JP2011248456 A JP 2011248456A
- Authority
- JP
- Japan
- Prior art keywords
- terminals
- input
- output
- data
- microcontroller
- 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
Images
Landscapes
- Microcomputers (AREA)
Abstract
【課題】シリアル通信を用いて複数の不揮発性メモリに同じデータの書き込みを行うマイクロコントローラにおいて、書き込みの確認処理を簡素化することを目的とする。
【解決手段】マイクロコントローラ1のチップセレクト出力端子CS1〜CS3は、その各々が、複数の不揮発性メモリ2a〜2cのうち1つおよび調停回路3の入力端子の1つ3b、3d、3fに接続され、不揮発性メモリ2a〜2cのデータ出力端子OUTは、それぞれ調停回路3の入力端子の1つ3a、3c、3eに接続され、調停回路3の出力端子3gは、マイクロコントローラ1のシリアルデータの入力端子M−INに接続され、調停回路3は更に、入力端子3b、3d、3fへ入力される信号がすべてオンとなっているときは、入力端子3a、3c、3eに入力される信号がすべてオンである場合にのみ、出力端子3gから出力される信号がオンとなるように構成されている。
【選択図】図1
【解決手段】マイクロコントローラ1のチップセレクト出力端子CS1〜CS3は、その各々が、複数の不揮発性メモリ2a〜2cのうち1つおよび調停回路3の入力端子の1つ3b、3d、3fに接続され、不揮発性メモリ2a〜2cのデータ出力端子OUTは、それぞれ調停回路3の入力端子の1つ3a、3c、3eに接続され、調停回路3の出力端子3gは、マイクロコントローラ1のシリアルデータの入力端子M−INに接続され、調停回路3は更に、入力端子3b、3d、3fへ入力される信号がすべてオンとなっているときは、入力端子3a、3c、3eに入力される信号がすべてオンである場合にのみ、出力端子3gから出力される信号がオンとなるように構成されている。
【選択図】図1
Description
本発明は、電子装置およびマイクロコントローラに関するものである。
従来、クロック同期式シリアル通信を用いて不揮発性メモリにデータの書き込みを行うマイクロコントローラが広く用いられている(例えば、特許文献1〜3参照)。典型的な例としては、図9に示すように、マイクロコントローラ81とEEPROM82(不揮発性メモリの一例に相当する)が信号線83〜86を介して接続されている。
この場合、マイクロコントローラ81は、図10に示すような処理を行うことで、EEPROM82へのデータの書き込みおよび書き込みの確認を実現する。すなわち、マイクロコントローラ81は、ステップ901でCS1信号線84のチップセレクト信号をオンし、続いてステップ902でマイクロコントローラOUT信号線85を介してデータ書き込みコマンド(アドレス指定および書き込むデータも含む)をEEPROM82に送信する。続いてステップ903でCS1信号線84のチップセレクト信号をオフすることで、クロック信号線83の信号タイミングに従ってEEPROM82にデータが書き込まれる。続いてマイクロコントローラ81は、ステップ904で再度CS1信号線84のチップセレクト信号をオンし、さらにステップ904で、データの書き込みが完了するまで待ち、マイクロコントローラIN信号線86の信号がオンされると、書き込みが完了したと判定してステップ906に進み、CS1信号線84のチップセレクト信号を再度オフする。
芹井滋喜、「SPIインターフェースの使いかた」、トランジスタ技術、CQ出版株式会社、2006年5月、6月号、p.153−154
また、1つのマイクロコントローラに複数の不揮発性メモリを接続し、同じデータをそれら複数の不揮発性メモリのそれぞれに記録することが考えられる。このような扱いの対象となるデータは、例えば、マイクロコントローラを備えた装置において、できる限り消失を防ぎたいようなデータである。
この場合、非特許文献1に記載されているような接続構造のマスタ(マイクロコントローラ)と複数のスレーブ(EEPROM)を用いることが考えられる。より具体的には、図11に示すように、1つのマイクロコントローラ91から伸びたクロック信号線CK93、マスタOUT1スレーブIN信号線94、マスタIN1スレーブOUT信号線95が3つに分岐して3つのEEPROM92a〜92cに対して並列に接続され、また、3本のCS信号線96a〜96cが、マイクロコントローラ91から3つのEEPROM92a〜92cのそれぞれに対して接続されている。このようにすることで、EEPROM92a〜92cの数が増えても、マイクロコントローラ91側のCK、OUT、IN端子の数が変化しないので、マイクロコントローラ91内のシリアル通信用のリソースを節約することができる。
この場合、マイクロコントローラ91がEEPROM92a〜92cのそれぞれに同じデータを書き込んで書き込みの確認を行うためには、例えば図12のような処理を実行する。
すなわち、CS1〜CS3端子のすべてからの出力をオンとすることでEEPROM92a〜92cを選択し(ステップ905)、次にマイクロコントローラ91のOUT1端子からデータ書き込みコマンド(アドレス指定および書き込むデータも含む)をEEPROM92a〜92cに出力し(ステップ910)、次にCS1〜CS3端子のすべてからの出力をオフとすることでEEPROM92a〜92cにデータの書き込みを開始させる(ステップ915)。
そしてその後、第1EEPROM92aにおける書き込みの確認をするため、CS1端子からの出力をオンとし(ステップ920)、次にマイクロコントローラ91のIN端子がオンになるまで待ち(ステップ925)、オンになると、第1EEPROM92aにおける書き込みが終了したと判定し、続いてCS1端子からの出力をオフとすることで第1EEPROM92aの選択を解除する(ステップ930)。
そして、ステップ920〜930と同等の処理を第2EEPROM92bに対して行い(ステップ935〜945)、続いて、ステップ920〜930と同等の処理を第3EEPROM92cに対して行う(ステップ935〜945)。このようにすることで、EEPROM92a〜92cに対して同時に同じデータの書き込みを開始できるので、全体の書き込みに要する時間が短縮できる。
しかしながら、上記の処理では、EEPROMの書き込みの確認処理を1つ1つ順番に行わなければならないので、処理が複雑になる。これは、クロック同期式シリアル通信に限らず、クロック非同期式シリアル通信においても発生する。
本発明は、このように処理が複雑となるという問題に鑑み、シリアル通信を用いて複数の不揮発性メモリに同じデータの書き込みを行うマイクロコントローラにおいて、書き込みの確認処理を簡素化することを目的とする。
上記目的を達成するための請求項1に記載の発明は、マイクロコントローラ(1)と、複数の不揮発性メモリ(2a〜2c)とを備え、前記マイクロコントローラ(1)がシリアル通信を用いて前記複数の不揮発性メモリ(2a〜2c)に同じデータの書き込みを行う電子装置であって、前記電子装置は更に調停回路(3)を備え、前記マイクロコントローラ(1)から前記複数の不揮発性メモリ(2a〜2c)に対して前記シリアル通信によってデータを送信するための1個のデータ出力端子(M−OUT)は、前記複数の不揮発性メモリ(2a〜2c)の入力端子(IN)に接続され、前記マイクロコントローラ(1)から前記複数の不揮発性メモリ(2a〜2c)を個別に選択するためのチップセレクト信号を出力する複数のチップセレクト出力端子(CS1〜CS3)は、その各々が、前記複数の不揮発性メモリ(2a〜2c)のうち1つおよび前記調停回路(3)の入力端子の1つ(3b、3d、3f)に接続され、前記マイクロコントローラ(1)に対して前記シリアル通信によってデータを送信するために設けられた前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)は、それぞれ前記調停回路(3)の入力端子の1つ(3a、3c、3e)に接続され、前記調停回路(3)の出力端子(3g)は、前記マイクロコントローラ(1)のシリアルデータの入力端子(M−IN)に接続され、前記調停回路(3)は更に、前記チップセレクト出力端子(CS1〜CS3)と接続された入力端子(3b、3d、3f)へ入力される信号がすべてオンとなっているときは、前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)と接続された入力端子(3a、3c、3e)に入力される信号がすべてオンである場合にのみ、前記マイクロコントローラ(1)のシリアルデータの入力端子(M−IN)と接続された出力端子(3g)から出力される信号がオンとなるように構成されていることを特徴とする電子装置である。
このようになっていることで、複数の不揮発性メモリ(2a〜2c)へのデータの書き込み開始後、すべてのチップセレクト出力端子(CS1〜CS3)の出力信号をオンとすれば、不揮発性メモリ(2a〜2c)のすべてにおいて書き込みが終わったタイミングで、不揮発性メモリ(2a〜2c)のすべてのデータ出力端子(OUT)の出力信号がオンとなり、マイクロコントローラ(1)のシリアルデータの入力端子(M−IN)にオンの信号が入力される。したがって、複数の不揮発性メモリ(2a〜2c)の書き込みの確認処理を1つ1つ順番に行うのではなく、マイクロコントローラ(1)のシリアルデータの入力端子(M−IN)の出力信号がオンかオフかを判定するだけで、すべての不揮発性メモリ(2a〜2c)の書き込み完了を判定することができる。すなわち、書き込みの確認処理を簡素化することができる。
また、請求項2に記載の発明は、請求項1に記載の電子装置において、前記マイクロコントローラ(1)は、前記複数の不揮発性メモリ(2a〜2c)において書き込みデータの書き込みが開始した後、前記チップセレクト出力端子(CS1〜CS3)のすべての出力をオンとし、その後、前記マイクロコントローラ(1)の前記シリアルデータの入力端子(M−IN)への入力信号がオンかオフかに基づいて、前記複数の不揮発性メモリ(2a〜2c)のすべてにおいて前記書き込みデータの書き込みが完了したか否かを判定することを特徴とする。
また、請求項3に記載の発明は、請求項1または2に記載の電子装置において、前記調停回路(3)は更に、前記チップセレクト出力端子(CS1〜CS3)と接続された入力端子(3b、3d、3f)へ入力される信号のうち1つの入力端子(3b)に入力される信号のみがオンとなっているときは、前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)と接続された入力端子(3a、3c、3e)のうち、前記1つの入力端子(3b)と同じ不揮発性メモリ(2a)に接続されている入力端子(3a)から出力される信号のオン、オフと、前記マイクロコントローラ(1)のシリアルデータの入力端子(M−IN)に接続された出力端子(3g)から出力される信号のオン、オフとが、一致するように構成されていることを特徴とする。
このようになっていることで、マイクロコントローラ(1)は、複数の不揮発性メモリ(2a〜2c)に書き込まれたデータを、シリアル通信を用いた周知の方法で、複数の不揮発性メモリ(2a〜2c)のうち任意の不揮発性メモリから記憶したデータを読み出して使用することができる。これは、チップセレクト出力端子(CS1〜CS3)から出力する信号のうちいずれか1つのみをオンとすれば、調停回路(3)の出力端子3gからの出力は、当該1つのチップセレクト出力端子に接続された不揮発性メモリのデータ出力端子(OUT)の出力と同じになるからである。
また、請求項4に記載の発明は、マイクロコントローラ(1’)と、複数の不揮発性メモリ(2a〜2c)とを備え、前記マイクロコントローラ(1’)がシリアル通信を用いて前記複数の不揮発性メモリ(2a〜2c)に同じデータの書き込みを行う電子装置であって、前記マイクロコントローラ(1’)は、CPU(18)と、前記CPU(18)によって制御されるシリアル通信インターフェース(17a)と、前記CPU(18)によって制御される汎用入出力ポート(16)と、出力端子(3g)および複数の入力端子(3a〜3f)を備えた調停回路(3)と、複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)とを備え、前記複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)は、前記マイクロコントローラ(1’)から前記複数の不揮発性メモリ(2a〜2c)のそれぞれに対して前記シリアル通信によってデータを送信するための複数のデータ出力端子(M−OUT)と、前記複数の不揮発性メモリ(2a〜2c)を個別に選択するチップセレクト信号を前記マイクロコントローラ(1’)の外部に出力するための複数のチップセレクト出力端子(CS1〜CS3)と、前記複数の不揮発性メモリ(2a〜2c)から前記シリアル通信によって送信されたデータを受け付けるためのデータ受付端子(D1〜D3)と、を含み、前記複数のデータ出力端子(M−OUT)のそれぞれは、前記複数の不揮発性メモリ(2a〜2c)のうち異なる1つの不揮発性メモリの入力端子(IN)に接続され、前記複数のチップセレクト出力端子(CS1〜CS3)のそれぞれは、前記複数の不揮発性メモリ(2a〜2c)のうち異なる1つの不揮発性メモリのチップセレクト入力端子(CS)に接続されると共に、前記マイクロコントローラ(1’)の内部において前記汎用入出力ポート(16)の複数の端子のうち異なる1つに接続され、前記チップセレクト信号は、前記汎用入出力ポートの前記複数の端子のうち、前記複数のチップセレクト出力端子(CS1〜CS3)に接続される入出力端子から出力されるようになっており、前記調停回路(3)の前記複数の入力端子(3a〜3f)は、第1のグループに属する入力端子(3b、3d、3f)と、第2のグループに属する入力端子(3a、3c、3e)とに分かれ、前記複数のチップセレクト出力端子(CS1〜CS3)から前記マイクロコントローラ(1’)の外部に出力されるチップセレクト信号のオン、オフは、前記調停回路(3)の前記第1のグループに属する複数の入力端子(3b、3d、3f)に入力されるチップセレクト信号のオン、オフと、一致するように構成されており、前記複数のデータ受付端子(D1〜D3)は、前記複数の不揮発性メモリ(2a〜2c)のうち異なる1つの不揮発性メモリのデータ出力端子(OUT)に接続されると共に、前記マイクロコントローラ(1’)の内部において前記調停回路(3)の前記第2のグループに属する複数の入力端子(3a、3c、3e)に対して1対1に接続可能となっており、前記調停回路(3)の前記出力端子(3g)は、前記シリアル通信インターフェース(17a)においてシリアルデータの入力を受けるためのデータ入力端子(I)に接続可能となっており、前記調停回路(3)は更に、前記第1のグループに属する複数の入力端子(3b、3d、3f)に入力される前記チップセレクト信号がすべてオンとなっているときは、前記第2のグループに属する入力端子(3a、3c、3e)に入力される信号がすべてオンである場合にのみ、前記シリアル通信インターフェース(17a)のデータ入力端子(I)と接続可能な前記出力端子(3g)から出力される信号がオンとなるように構成されていることを特徴とする電子装置である。
このようになっていることで、複数の不揮発性メモリ(2a〜2c)へのデータの書き込み開始後、すべてのチップセレクト出力端子(CS1〜CS3)の出力信号をオンとすれば、不揮発性メモリ(2a〜2c)のすべてにおいて書き込みが終わったタイミングで、不揮発性メモリ(2a〜2c)のすべてのデータ出力端子(OUT)の出力信号がオンとなり、シリアル通信インターフェース(17a)のシリアルデータの入力端子(I)にオンの信号が入力される。したがって、複数の不揮発性メモリ(2a〜2c)の書き込みの確認処理を1つ1つ順番に行うのではなく、シリアル通信インターフェース(17a)のシリアルデータの入力端子(I)の出力信号がオンかオフかを判定するだけで、すべての不揮発性メモリ(2a〜2c)の書き込み完了を判定することができる。すなわち、書き込みの確認処理を簡素化することができる。
また、マイクロコントローラ(1’)の内部に調停回路(3)を設けることで、マイクロコントローラ(1’)の外部に調停回路専用の電子部品を設ける必用がなくなり、その結果、電子部品数が削減されることで、電子装置内のスペース取りが容易になる。
また、請求項5に記載の発明は、請求項4に記載の電子装置において、前記マイクロコントローラ(1’)は、更に切替回路(4)を備え、前記切替回路(4)は、第1種のスイッチ(SW1〜SW3)を備え、前記複数のチップセレクト出力端子(CS1〜CS3)は、前記マイクロコントローラ(1’)の内部において、前記切替回路(4)を介して前記調停回路(3)の前記第1のグループに属する複数の入力端子(3b、3d、3f)に1対1に接続されると共に、それぞれが、前記切替回路(4)を介して前記汎用入出力ポート(16)の複数の端子のうち異なる1つに接続され、前記第1種のスイッチ(SW1〜SW3)が第1の状態にあるとき、前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)は、前記切替回路(4)を介してそれぞれ前記汎用入出力ポート(16)の端子の1つに接続され、前記第1種のスイッチ(SW1〜SW3)が第2の状態にあるとき、前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)は、前記切替回路(4)を介してそれぞれ前記調停回路(3)の前記第2のグループに属する複数の入力端子(3a、3c、3e)の1つに接続されることを特徴とする。
このようになっていることで、マイクロコントローラ(1’)の複数のデータ受付端子(D1〜D3)は、第1の状態では汎用入出力用ポート用の外部端子として使用でき、第2の状態では不揮発性メモリ(2a〜2b)のデータ出力端子(OUT)からシリアルデータを受信するための端子として使用できる。このように、電子装置の用途に応じて、スイッチの状態をあらかじめ設定することで、データ受付端子(D1〜D3)の機能を、シリアル通信用の端子と、汎用ポート用の端子の間で、適宜切り替えることができる。したがって、このマイクロコントローラ(1’)を、本発明の電子装置以外の装置に流用することができると共に、マイクロコントローラ(1’)の外部端子の使用数を節約することができる。
また、請求項6に記載の発明は、請求項5に記載の電子装置において、前記マイクロコントローラ(1’)は、更に第2種のスイッチ(SW4)を備え、前記複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)は、更にリザーブ端子(RV)を含み、前記第2種のスイッチ(SW4)が第1の状態にあるとき、前記リザーブ端子(RV)が前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)に接続され、前記第2種のスイッチ(SW4)が第2の状態にあるとき、前記調停回路(3)の前記出力端子(3g)が前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)に接続されることを特徴とする。
このようになっていることで、調停回路(3)をバイパスしてシリアル通信インターフェース(17a)のデータ入力端子(I)へ信号を入力したい場合は、第2種のスイッチ(SW4)が第1の状態となるようにすればよい。このように、シリアル通信インターフェース(17a)のデータ入力端子(I)には、リザーブ端子(RV)からの信号を受ける汎用のデータ入力端子として使用できる。
また、請求項7に記載の発明は、請求項4ないし7のいずれか1つに記載の電子装置において、前記マイクロコントローラ(1’)は、前記複数の不揮発性メモリ(2a〜2c)において書き込みデータの書き込みが開始した後、前記チップセレクト出力端子(CS1〜CS3)のすべての出力をオンとし、その後、前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)への入力信号がオンかオフかに基づいて、前記複数の不揮発性メモリ(2a〜2c)のすべてにおいて前記書き込みデータの書き込みが完了したか否かを判定することを特徴とする。
また、請求項8に記載の発明は、請求項4ないし7のいずれか1つに記載の電子装置において、前記調停回路(3)は更に、前記第1のグループに属する複数の入力端子(3b、3d、3f)へ入力される信号のうち1つの入力端子(3b)に入力される信号のみがオンとなっているときは、前記第2のグループに属する複数の入力端子(3a、3c、3e)のうち、前記1つの入力端子(3b)と同じ不揮発性メモリ(2a)に接続されている入力端子(3a)から出力される信号のオン、オフと、前記シリアル通信インターフェース(17a)のシリアルデータの入力端子(I)に接続可能な出力端子(3g)から出力される信号のオン、オフとが、一致するように構成されていることを特徴とする。
このようになっていることで、マイクロコントローラ(1’)は、複数の不揮発性メモリ(2a〜2c)に書き込まれたデータを、シリアル通信を用いた周知の方法で、複数の不揮発性メモリ(2a〜2c)のうち任意の不揮発性メモリから読み出して使用することができる。これは、チップセレクト出力端子(CS1〜CS3)から出力する信号のうちいずれか1つのみをオンとすれば、調停回路(3)の出力端子(3g)からの出力は、当該1つのチップセレクト出力端子に接続された不揮発性メモリのデータ出力端子(OUT)の出力と同じになるからである。
また、請求項9に記載の発明は、複数の外部の装置(2a〜2c)とシリアル通信を行うことができるマイクロコントローラであって、CPU(18)と、前記CPU(18)によって制御されるシリアル通信インターフェース(17a)と、前記CPU(18)によって制御される汎用入出力ポート(16)と、出力端子(3g)および複数の入力端子(3a〜3f)を備えた調停回路(3)と、複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)と、を備え、前記複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)は、前記複数の外部の装置(2a〜2c)のそれぞれに対して前記シリアル通信によってデータを送信するための複数のデータ出力端子(M−OUT)と、前記複数の外部の装置(2a〜2c)を個別に選択するチップセレクト信号を出力するための複数のチップセレクト出力端子(CS1〜CS3)と、前記複数の外部の装置(2a〜2c)から前記シリアル通信によって送信されたデータを受け付けるためのデータ受付端子(D1〜D3)と、を含み、前記複数のチップセレクト出力端子(CS1〜CS3)のそれぞれは、当該マイクロコントローラの内部において前記汎用入出力ポート(16)の複数の端子のうち異なる1つに接続され、前記チップセレクト信号は、前記汎用入出力ポートの前記複数の端子のうち、前記複数のチップセレクト出力端子(CS1〜CS3)に接続される入出力端子から出力されるようになっており、前記調停回路(3)の前記複数の入力端子(3a〜3f)は、第1のグループに属する入力端子(3b、3d、3f)と、第2のグループに属する入力端子(3a、3c、3e)とに分かれ、前記第1のグループに属する入力端子(3b、3d、3f)と前記第2のグループに属する入力端子(3a、3c、3e)とは1対1に対応し、前記複数のチップセレクト出力端子(CS1〜CS3)から当該マイクロコントローラの外部に出力されるチップセレクト信号のオン、オフは、前記調停回路(3)の前記第1のグループに属する複数の入力端子(3b、3d、3f)に入力されるチップセレクト信号のオン、オフと、一致するように構成されており、前記複数のデータ受付端子(D1〜D3)は、当該マイクロコントローラの内部において前記調停回路(3)の前記第2のグループに属する複数の入力端子(3a、3c、3e)に対して1対1に接続可能となっており、前記調停回路(3)の前記出力端子(3g)は、前記シリアル通信インターフェース(17a)においてシリアルデータの入力を受けるためのデータ入力端子(I)に接続可能となっており、前記調停回路(3)は更に、前記第1のグループに属する複数の入力端子(3b、3d、3f)に入力される前記チップセレクト信号がすべてオンとなっているときは、前記第2のグループに属する入力端子(3a、3c、3e)に入力される信号がすべてオンである場合にのみ、前記シリアル通信インターフェース(17a)のデータ入力端子(I)と接続可能な前記出力端子(3g)から出力される信号がオンとなるように構成されていることを特徴とするマイクロコントローラである。
このように構成されたマイクロコントローラにおいて、当該マイクロコントローラのデータ出力端子(M−OUT)を、当該複数の不揮発性メモリ(2a〜2c)の入力端子(IN)に接続し、複数のチップセレクト出力端子(CS1〜CS3)の各々を、当該複数の不揮発性メモリ(2a〜2c)のうち1つに接続し、また、複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)を、データ受付端子(D1〜D3)に接続させることで、複数の不揮発性メモリ(2a〜2c)へのデータの書き込み開始後、すべてのチップセレクト出力端子(CS1〜CS3)の出力信号をオンとすれば、不揮発性メモリ(2a〜2c)のすべてにおいて書き込みが終わったタイミングで、不揮発性メモリ(2a〜2c)のすべてのデータ出力端子(OUT)の出力信号がオンとなり、シリアル通信インターフェース(17a)のシリアルデータの入力端子(I)にオンの信号が入力される。したがって、複数の不揮発性メモリ(2a〜2c)の書き込みの確認処理を1つ1つ順番に行うのではなく、シリアル通信インターフェース(17a)のシリアルデータの入力端子(I)の出力信号がオンかオフかを判定するだけで、すべての不揮発性メモリ(2a〜2c)の書き込み完了を判定することができる。すなわち、書き込みの確認処理を簡素化することができる。
また、マイクロコントローラ(1’)の内部に調停回路(3)を設けることで、マイクロコントローラ(1’)の外部に調停回路専用の電子部品を設ける必用がなくなり、その結果、電子部品数が削減されることで、電子装置内のスペース取りが容易になる。
また、請求項10に記載の発明は、請求項9に記載のマイクロコントローラにおいて、更に切替回路(4)を備え、前記切替回路(4)は、第1種のスイッチ(SW1〜SW3)を備え、前記複数のチップセレクト出力端子(CS1〜CS3)は、当該マイクロコントローラの内部において、前記切替回路(4)を介して前記調停回路(3)の前記第1のグループに属する複数の入力端子(3b、3d、3f)に1対1に接続されると共に、それぞれが、前記切替回路(4)を介して前記汎用入出力ポート(16)の前記複数の端子のうち異なる1つに接続され、前記第1種のスイッチ(SW1〜SW3)が第1の状態にあるとき、前記データ受付端子(D1〜D3)は、前記切替回路(4)を介してそれぞれ前記汎用入出力ポート(16)の端子の1つに接続され、前記第1種のスイッチ(SW1〜SW3)が第2の状態にあるとき、前記データ受付端子(D1〜D3)は、前記切替回路(4)を介してそれぞれ前記調停回路(3)の前記第2のグループに属する複数の入力端子(3a、3c、3e)の1つに接続されることを特徴とする。
このようになっていることで、マイクロコントローラの複数のデータ受付端子(D1〜D3)は、第1の状態では汎用入出力用ポート用の外部端子として使用でき、第2の状態では不揮発性メモリ(2a〜2b)のデータ出力端子(OUT)からシリアルデータを受信するための端子として使用できる。このように、マイクロコントローラの用途に応じて、スイッチの状態を設定することで、データ受付端子(D1〜D3)の機能を、シリアル通信用の端子と、汎用ポート用の端子の間で、適宜切り替えることができる。したがって、マイクロコントローラの外部端子の使用数を節約することができる。
また、請求項11に記載の発明は、請求項10に記載のマイクロコントローラにおいて、更に第2種のスイッチ(SW4)を備え、前記複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)は、更にリザーブ端子(RV)を含み、前記第2種のスイッチ(SW4)が第1の状態にあるとき、前記リザーブ端子(RV)が前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)に接続され、前記第2種のスイッチ(SW4)が第2の状態にあるとき、前記調停回路(3)の前記出力端子(3g)が前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)に接続されることを特徴とする。
このようになっていることで、調停回路(3)をバイパスしてシリアル通信インターフェース(17a)のデータ入力端子(I)へ信号を入力したい場合は、第2種のスイッチ(SW4)が第1の状態となるようにすればよい。このように、シリアル通信インターフェース(17a)のデータ入力端子(I)には、リザーブ端子(RV)からの信号を受ける汎用のデータ入力端子として使用できる。
また、請求項12に記載の発明は、請求項9ないし11のいずれか1つに記載のマイクロコントローラにおいて、前記複数の外部の装置は複数の不揮発性メモリ(2a〜2c)であり、前記CPU(18)は、前記複数の不揮発性メモリ(2a〜2c)において書き込みデータの書き込みが開始した後、前記チップセレクト出力端子(CS1〜CS3)のすべての出力をオンとし、その後、前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)の出力信号がオンかオフかに基づいて、前記複数の不揮発性メモリ(2a〜2c)のすべてにおいて前記書き込みデータの書き込みが完了したか否かを判定することを特徴とする。
また、請求項13に記載の発明は、請求項9ないし12のいずれか1つに記載のマイクロコントローラにおいて、前記調停回路(3)は更に、前記第1のグループに属する複数の入力端子(3b、3d、3f)へ入力される信号のうち1つの入力端子(3b)に入力される信号のみがオンとなっているときは、前記第2のグループに属する複数の入力端子(3a、3c、3e)のうち、前記1つの入力端子(3b)と対応する入力端子(3a)から出力される信号のオン、オフと、前記シリアル通信インターフェース(17a)のシリアルデータの入力端子(I)に接続可能な出力端子(3g)から出力される信号のオン、オフとが、一致するように構成されていることを特徴とする。
このようになっていることで、マイクロコントローラ(1’)は、複数の不揮発性メモリ(2a〜2c)に書き込まれたデータを、クロック同期式シリアル通信を用いた周知の方法で、複数の不揮発性メモリ(2a〜2c)のうち任意の不揮発性メモリから読み出して使用することができる。これは、チップセレクト出力端子(CS1〜CS3)から出力する信号のうちいずれか1つのみをオンとすれば、調停回路(3)の出力端子3gからの出力は、当該1つのチップセレクト出力端子に接続された不揮発性メモリのデータ出力端子(OUT)の出力と同じになるからである。
なお、上記および特許請求の範囲における括弧内の符号は、特許請求の範囲に記載された用語と後述の実施形態に記載される当該用語を例示する具体物等との対応関係を示すものである。
(第1実施形態)
以下、本発明の第1実施形態について説明する。図1に、本実施形態に係る電子装置10の構成を示す。
以下、本発明の第1実施形態について説明する。図1に、本実施形態に係る電子装置10の構成を示す。
この電子装置10は、車両に搭載され、図1に示す通り、マイクロコントローラ1、複数のEEPROM2a〜2c(不揮発性記憶媒体の一例に相当する)、および調停回路3を備え、これら構成要素1〜3が複数の信号線で接続されている。
そしてこの電子装置10において、マイクロコントローラ1は、マイクロコントローラ1の外部にあるEEPROM2a〜2cのそれぞれに対してデータの書き込みおよび読み出しを行えるようになっている。さらにマイクロコントローラ1は、消失すると大きな悪影響が生じるようなデータを、EEPROM2a〜2cのすべてに記録させることで、当該データの冗長性を高める。つまり、何らかの要因でEEPROM2a〜2cのいずれか1つに記録された当該データの記録内容が壊れても、残りの2つのEEPROMには同じデータが残っているので、マイクロコントローラ1は、EEPROM2a〜2c中から読み出したデータの多数決によって、正しいデータを採用することができる。このようにデータに対して、非常に高い信頼性を求められる例としては、宇宙衛星等に搭載されるマイコン等が考えられる。
ここで、マイクロコントローラ1の構成について説明する。マイクロコントローラ1は、データバス11、ユーザが書き換え可能なROM(フラッシュROM等)12、RAM13、タイマ14、A/Dコンバータ15を備えている。これら構成要素11〜15は、いずれも周知のものである。また、マイクロコントローラ1は、いずれも周知の汎用入出力ポート16、2つのシリアル通信インターフェース17a、17b、およびCPU18も備えている。また、マイクロコントローラ1は、マイクロコントローラ1の外部と接続するための外部端子を(例えば、後述する外部端子M−CK、M−OUT、M−IN、CS1〜CS3)を、複数(例えば100個以上)有している。
汎用入出力ポート16は、複数個(例えば、100個以上)の入出力端子を備え、CPU18の制御に従って、各入出力端子を介して、1ビットずつの入出力制御を行うことのできるポートである。汎用入出力ポート16の入出力端子は、それぞれマイクロコントローラ1の外部端子に接続されている。
シリアル通信インターフェース17aは、クロック同期式シリアル通信用のインターフェースであり、CPU18によってトリガされハードウェアフロー制御により所定ビット数(例えば8ビット、16ビット)を単位としてシリアル通信を行う通信インターフェース回路である。このシリアル通信インターフェース17aは、3つの端子K、O、Iを有している。端子Kは、クロック同期式シリアル通信用におけるクロック信号を生成して出力するためのクロック出力端子であり、端子Oは、クロック同期式シリアル通信用における送信用のシリアルデータを生成して出力するためのデータ出力端子であり、端子Iは、クロック同期式シリアル通信用においてシリアルデータの入力を受けるためのデータ入力端子である。シリアル通信インターフェース17bも、シリアル通信インターフェース17aと同等の機能を有するインターフェースである。
本実施形態では、シリアル通信インターフェース17aは、EEPROM2a〜2cに対してクロック同期式シリアル通信を用いてデータの書き込みおよび読み出しを行うために用いられる。そして、シリアル通信インターフェース17bは、他の用途に用いられてもよいし、あるいは未使用のままであってもよい。
シリアル通信のリソースであるシリアル通信インターフェース17a、17bの数(本実施形態では2個)は、汎用入出力ポート16の端子の数よりも遙かに少ない。したがって、汎用入出力ポート16の入出力端子の使用個数を節約したいという要請よりも、シリアル通信インターフェース17a、17bの使用個数を節約したいという要請の方が遙かに強い。
なお、シリアル通信インターフェース17aのクロック出力端子K、データ出力端子O、データ入力端子Iと内部で接続するマイクロコントローラ1の外部端子を、それぞれ、クロック出力端子M−CK、データ出力端子M−OUT、データ入力端子M−INという。
したがって、クロック出力端子M−CKは、シリアル通信インターフェース17aがクロック同期式シリアル通信のために生成したクロック信号を当該マイクロコントローラ1の外部に出力する端子である。また、データ出力端子M−OUTは、シリアル通信インターフェース17aがクロック同期式シリアル通信で送信するために生成したデータを当該マイクロコントローラの外部に出力する端子である。データ入力端子M−INは、シリアル通信インターフェース17aがクロック同期式シリアル通信で受信するデータが入力される端子である。
また、汎用入出力ポート16の入出力端子のうち3つにそれぞれ接続する外部端子を、チップセレクト出力端子CS1、チップセレクト出力端子CS2、チップセレクト出力端子CS3という。
CPU18は、ROM12に記録されているプログラムを実行することで、種々の処理を実現する。例えば、電子装置10がイモビライザECUである場合は、キー符号と所定の識別符号との照合処理、および、車両駆動源の始動を許可する信号を駆動源の制御装置に出力する処理等を実現する。そして、その処理の際、RAM13を作業領域として使用し、また、必用に応じて、汎用入出力ポート16、シリアル通信インターフェース17a、17b等を制御する。
次に、EEPROM2a〜2cについて説明する。EEPROM2a〜2cは、クロック同期式シリアル通信方式によってデータの書き込みおよび読み出しができる周知のシリアルEEPROMであり、それぞれが、クロック入力端子CK、チップセレクト入力端子CS、データ入力端子IN、データ出力端子OUTを備えている。これらの端子を介した信号の入出力に応じたEEPROM2a〜2cの作動については、後述する。
ここで、マイクロコントローラ1の端子とEEPROM2a〜2cの端子との配線構造について説明する。マイクロコントローラ1のクロック出力端子M−CKには、クロック信号線L1の一端が接続され、このクロック信号線L1は3つに分岐して、それぞれ並列にEEPROM2a〜2cのクロック入力端子CKに接続されている。
したがって、1個のクロック出力端子M−CKからクロック同期式シリアル通信のためのクロック信号が出力され、このクロック信号は、クロック信号線L1を介して、EPROM2a〜2cのクロック入力端子CKに共に入力される。
また、マイクロコントローラ1のデータ出力端子M−OUTには、マイコンOUT信号線L2の一端が接続され、このマイコンOUT信号線L2は3つに分岐して、それぞれ並列にEEPROM2a〜2cのデータ入力端子INに接続されている。このマイコンOUT信号線L2は、マイクロコントローラ1からEEPROM2a〜2cに対してクロック同期式シリアル通信によってデータを送信するための信号線である。
したがって、1個のデータ出力端子M−OUTからクロック同期式シリアル通信によってデータが出力され、このデータは、クロック信号線L2を介して、EPROM2a〜2cのクデータ入力端子INに共に入力される。
また、マイクロコントローラ1のチップセレクト出力端子CS1、CS2、CS3には、それぞれ、チップセレクト信号線L3、L4、L5の一端が接続され、チップセレクト信号線L3、L4、L5の他の一端が、それぞれ第1EEPROM2a、第1EEPROM2b、第1EEPROM2cのチップセレクト入力端子CSに接続されている。
これらチップセレクト出力端子CS1、CS2、CS3は、第1EEPROM2a、第1EEPROM2b、第1EEPROM2cをそれぞれ個別に選択するためのチップセレクト信号を出力するための端子である。
ここで、調停回路3について説明する。図1に示すように、調停回路3は、複数の入力端子3a〜3gを有している。そして、チップセレクト信号線L3、L4、L5が分岐してそれぞれ入力端子3b、3d、3f(第1のグループに属する入力端子に相当する)に接続されている。つまり、チップセレクト信号線L3、L4、L5は、その各々が、マイクロコントローラ1のチップセレクト出力端子C1、C2、C3の1つから伸びて2つに分岐し、EEPROM2a〜2cのうち対応するEEPROMおよび調停回路3に並列に接続されている。
また、EEPROM2a〜2cのデータ出力端子OUTには、それぞれメモリOUT信号線L6〜L8の一端が接続され、このメモリOUT信号線L6〜L8の他の一端は、それぞれ調停回路3の入力端子3a、3c、3e(第2のグループに属する入力端子に相当する)に接続されている。
また、調停回路3の出力端子3gには、マイコンIN信号線L9の一端が接続され、マイコンIN信号線L9の他の一端は、マイクロコントローラ1の入力端子M−INに接続されている。
図2に、この調停回路3の内部構成を示す。調停回路3は、その内部に、(例えばCMOSの)論理回路301〜311を備えている。そして、ANDゲート301の2つの入力端子はそれぞれ入力端子3a、3bと接続され、ANDゲート302の2つの入力端子はそれぞれ入力端子3c、3dと接続され、ANDゲート303の2つの入力端子はそれぞれ入力端子3e、3fと接続される。このように、入力端子3a、3bは互いに対応関係にあり、入力端子3c、3dは互いに対応関係にあり、入力端子3e、3fは互いに対応関係にある。すなわち、第1のグループに属する入力端子3b、3d、3fは、第2のグループに属する入力端子3a、3c、3eと1対1の対応関係にある。
また、ANDゲート304の2つの入力端子はそれぞれ入力端子3b、3dと接続され、ANDゲート305の2つの入力端子はそれぞれANDゲート301、302の出力端子と接続され、ANDゲート306の2つの入力端子はそれぞれANDゲート305、303の出力端子と接続され、ORゲート307の2つの入力端子はそれぞれANDゲート301、302の出力端子と接続され、ORゲート308の2つの入力端子はそれぞれANDゲート303、ORゲート307の出力端子と接続され、NANDゲート309の2つの入力端子はそれぞれ入力端子3fおよびANDゲート304の出力端子と接続され、ANDゲート310の2つの入力端子はそれぞれORゲート308、NANDゲート309の出力端子と接続され、ORゲート311の2つの入力端子はそれぞれANDゲート306、ANDゲート310の出力端子と接続される。そしてORゲート311の出力端子は端子3gに接続される。
したがって、この調停回路3の入力と出力の真理値は、図3に示すようなものになる。この図3では、第1EEPROM:OUTが入力端子3aの入力値を意味し、第2EEPROM:OUTが入力端子3cの入力値を意味し、第3EEPROM:OUTが入力端子3eの入力値を意味し、CS1、CS2、CS3それぞれ入力端子3b、3d、3fの入力値を意味し、M−INが出力端子3gの出力を意味する。なお、図3では、信号電圧のH(ハイ)がオン(論理値1)に相当し、信号電圧のL(ロウ)がオフ(論理値0)に相当する正論理を採用しているが、他の例として負論理を採用してもよい。
この図3の最下行に示すように、CS1、CS2、CS3がすべてオンとなっている場合は、第1EEPROM:OUT、第2EEPROM:OUT、第3EEPROM:OUTのすべてがオンであるときに限り、M−INがオンとなり、第1EEPROM:OUT、第2EEPROM:OUT、第3EEPROM:OUTのうち1つでもオフであれば、M−INがオフとなる。
また、この図3の第3行〜第5行に示すように、CS1、CS2、CS3のうちいずれか1つのみがオンとなっている場合は、そのオンとなっている端子に入力されるチップセレクト信号がいずれか1つのEEPROMに入力されていることになるが、入力端子3a、3c、3eのうち、当該1つのEEPROMのデータ出力端子OUTと接続されている端子の値と、M−INとが一致する。
このような構成となっていることで、調停回路3全体としては、複数のチップセレクト信号線L3〜L5のすべての出力がオンとなっているとき、複数のメモリOUT信号線L6〜L8すべての出力がオンであるときに限り、端子3gから出力される信号がオンとなり、それ以外のときに、端子3gから出力される信号がオフとなる。
また、複数のチップセレクト信号線L3〜L5のうち1つのチップセレクト信号線のみの信号がオンとなっているとき、複数のメモリOUT信号線L6〜L8のうち、当該1つのチップセレクト信号線と同じEEPROMに接続されているメモリOUT信号線の出力のオン、オフと、端子3gから出力される信号のオン、オフとが、一致するようになる。
なお、入力端子3aからANDゲート301の入力側端子までの信号線、端子3cからANDゲート302の入力側端子までの信号線、および、端子3eからANDゲート303の入力側端子までの信号線には、それぞれプルダウン回路312、313、314が接続されている。これらプルダウン回路312、313、314は、入力端子3a、3c、3eに入力される信号が不定(ハイインピーダンス状態)となることを防ぐためのものである。なお、今回はメモリOUT信号L6〜L8がH(ハイ)の状態で、書込完了を意味しているので、信号が不定(ハイインピーダンス状態)の場合に、書換中を意味するようプルダウン回路312,313,314を採用している。メモリOUT信号L6〜L8がL(ロウ)の状態で、書込完了を意味するEEPROMを採用する場合、プルダウン回路312、313、314をプルアップ回路に置き換えてもよい。
以下、上記のような構成の電子装置10の作動について説明する。マイクロコントローラ1のCPU18は、作動中、EEPROM2a〜2cに同じデータ(例えば、識別符号)を記録して当該データの冗長性を高める必要性が発生したとき、図4に示すような同一データ書き込みおよび書き込み確認処理のプログラムの実行を開始する。なお、データの冗長性を高める必要性が発生したか否かは、どのような情報に基づいて判定してもよい。例えば、図示しない振動センサからの出力値が所定のレベルを超えた場合、図示しない車外温度センサの出力値が所定温度(例えば50°)を超えた場合に、データの冗長性を高める必要性が発生したと判定してもよい。あるいは、電子装置10に接続された操作部(図示せず)に対してユーザが所定の操作を行った場合に、データの冗長性を高める必要性が発生したと判定してもよい。以下、EEPROM2a〜2cのすべてに書き込むデータを、書き込みデータという。
図5は、同一データ書き込みおよび書き込み確認処理時の電子装置10のシーケンス図であり、図6は、同一データ書き込みおよび書き込み確認処理時の調停回路3のタイミングチャートである。以下、図4〜図6を参照して、同一データ書き込みおよび書き込み確認処理時の作動について説明する。なお、シリアル通信インターフェース17aは、マイクロコントローラ1の作動中に、通信コマンド送信中に端子K、M−CKを介してクロック信号線L1にクロック信号を出力している。また、同一データ書き込みおよび書き込み確認処理の開始時、チップセレクト出力端子CS1、CS2、CS3から出力するチップセレクト信号はすべてオフとなっている。また、各EEPROM2a〜2cのデータ出力端子OUTからの信号は、調停回路3のプルダウン回路312〜314がなければハイインピーダンス状態となるが、調停回路3のプルダウン回路312〜314があるために、オフ(ロウ)状態となる。
同一データ書き込みおよび書き込み確認処理においてCPU18は、まずステップ105で、汎用入出力ポート16を制御して、チップセレクト出力端子CS1、CS2、CS3から出力するチップセレクト信号201(図5参照)をすべてオンとすることで、全EEPROM2a〜2cを選択する。これによって、図6のタイムスロット1と2の境目のタイミングにおいて、調停回路3の入力端子3b、3d、3fに入力されるチップセレクト信号201もオンとなる。
続いてステップ110では、シリアル通信インターフェース17aを制御して、端子Oおよびマイクロコントローラ1のデータ出力端子OUTからマイコンOUT信号線L2にデータ書き込みコマンド202をシリアル送信する。このデータ書き込みコマンド202には、データ書き込みを意味するオペコード、書き込み先アドレスのデータ、および、書き込みデータが含まれる。
すると、EEPROM2a〜2cのそれぞれは、データ入力端子INから受けた当該データ書き込みコマンド202の内容を一時保持する。
続いてステップ115では、汎用入出力ポート16を制御して、チップセレクト出力端子CS1、CS2、CS3から出力するチップセレクト信号203のすべてをオフとする。これによって、図6のタイムスロット6と7の間のタイミングにおいて、調停回路3の入力端子3b、3d、3fに入力されるチップセレクト信号203もオフとなる。
すると、EEPROM2a〜2cのそれぞれは、チップセレクト入力端子CS1〜3から受けるチップセレクト信号203がオフになったタイミングで、保持しているデータ書き込みコマンドの内容に従って、書き込みデータを、書き込み先アドレスに記録し始める。したがって、チップセレクト信号203のオフは、EEPROM2a〜2cに対する書き込み開始命令の送信に相当する。
このように、EEPROM2a〜2cのそれぞれに対して、EEPROM2a〜2cのうち他のEEPROMにおけるデータの書き込み終了を待たずに、同時に書き込みコマンド202の送信および書き込み開始の命令を送信することで、同時並行的にEEPROM2a〜2cにおけるデータの書き込みが行われるので、EEPROM2a〜2cに対して順番に書き込みを行う場合に比べ、全体の書き込みに要する時間が短縮される。また、3つのEEPROM2a〜2cに書き込みコマンドを送るためにマイクロコントローラ1が実際に行う送信処理は、3回でなく1回で済む。したがってその分、図4の処理のプログラムのサイズが低減される。
なお、EEPROM2a〜2cに書き込まれる書き込みデータはすべて同じなので、EEPROM2a〜2cのそれぞれが書き込み完了に要する時間は、概ね同じであると考えられるが、製品間のばらつき等の要因により、完全に一致する可能性は低い。図5の例では、第1EEPROM2aの書き込み期間204よりも第2EEPROM2bの書き込み期間205の方が長く、かつ、第3EEPROM2cの書き込み期間206は第1EEPROM2aの書き込み期間204よりも長くかつ第2EEPROM2bの書き込み期間205よりも短い。
これらステップ105〜115までの処理が、EEPROM2a〜2cのすべてへの書き込み処理に相当する。続いてCPU18は、全EEPROM2a〜2cへのデータ書き込みの確認を行う処理(ステップ120〜130)に入り、まずステップ120で、汎用入出力ポート16を制御して、チップセレクト出力端子CS1、CS2、CS3から出力するチップセレクト信号207をすべてオンとすることで、全EEPROM2a〜2cを選択する。これによって、図6のタイムスロット7と8の境目のタイミングにおいて、調停回路3の入力端子3b、3d、3fに入力されるチップセレクト信号207もオンとなる。
この、チップセレクト出力端子CS1、CS2、CS3からのチップセレクト信号207をオンにすると、各EEPROM2a〜2cのデータ出力端子OUTからの信号は、そのEEPROMにおいてデータの書き込みが続いていればオフ(Busy)となり、データの書き込みが終了していればオン(Ready)となる。
続いてステップ125では、全EEPROM2a〜2cにおいて書き込みデータの書き込みが完了するまで待つ。より具体的には、マイクロコントローラ1のデータ入力端子M−INに入力される信号(より具体的には、シリアル通信インターフェース17aのデータ入力端子Iに入力される信号)がオンとなるまで(すなわちメモリOUT信号線のL9の信号がオンとなるまで)待つ。
ステップ120の終了段階で、調停回路3に入力される3つのチップセレクト信号のすべてがオンとなっているので、図3の真理値表に示したように、マイクロコントローラ1のデータ入力端子M−INに入力される信号は、入力端子3a、3c、3eへの入力がすべてオンとなったときに限りオンとなり、それ以外はオフとなる。
それ故、図5に示すEEPROM2a〜2cのすべてのデータ書き込み期間204〜206が終了するまでは、図6のタイムスロット8〜17に示すように、マイクロコントローラ1のデータ入力端子M−INに入力される信号はオフである。
EEPROM2a〜2cのデータ出力端子OUTからの信号208〜210は、当該EEPROMの書き込みが終わるタイミングでオフからオンに切り替わる(図6のタイムスロット10と11の境界、12と13の境界、17と18の境界)。そして、すべてのデータ書き込み期間204〜206が終了した時点で、調停回路3の出力端子3gからマイクロコントローラ1のデータ入力端子M−INに入力される信号211もオンに切り替わる。
するとCPU18は、ステップ125で全書き込みデータの書き込みが完了したと判定し、続いてステップ130に進み、汎用入出力ポート16を制御して、チップセレクト出力端子CS1〜CS3から出力するチップセレクト信号212をオフとする。これによって、図6のタイムスロット18と19の間のタイミングにおいて、調停回路3の入力端子3b、3e、3fに入力されるチップセレクト信号212もオフとなる。すると、調停回路3からマイクロコントローラ1のデータ入力端子M−INに入力される信号もオフに切り替わる。
なお、CPU18は、このようにしてEEPROM2a〜2cに書き込まれたデータを、クロック同期式シリアル通信を用いた周知の方法で、EEPROM2a〜2cのうち任意のEEPROMから読み出して使用することができる。これは、汎用入出力ポート16を制御して、チップセレクト出力端子CS1、CS2、CS3から出力する信号のうちいずれか1つ(例えばチップセレクト出力端子CS1の出力信号)のみをオンとすれば、調停回路3の出力端子3gからの出力は、当該1つのチップセレクト出力端子に接続されたEEPROM(例えばEEPROM2a)のデータ出力端子OUTの出力と同じになるからである。
以上説明した通り、本実施形態のマイクロコントローラ1は、複数のEEPROM2a〜2cに同じデータを書き込むようになっているが、そのために使用するシリアル通信のリソース(すなわちシリアル通信インターフェース17a)は1つのみである。
これは、本実施形態の電子装置10において、マイクロコントローラ1のクロック出力端子CKの出力信号線およびデータ出力端子OUTの出力信号線のそれぞれを、EEPROM2a〜2cに対して並列的に接続し、EEPROM2a〜2cのすべてのデータ出力端子OUTを調停回路3に接続させ、調停回路3内において、各EEPROM用のチップセレクト信号線L3〜L5の信号のオン、オフに応じて、それらデータ出力端子OUTからの出力を取捨選択しているからである。
より具体的には、マイクロコントローラ1のクロック出力端子CKから伸びるクロック信号線L1が3つに分岐してそれぞれ並列にEEPROM2a〜2cのクロック入力端子CKに接続されており、マイクロコントローラ1のデータ出力端子から伸びるマイコンOUT信号線L2が3つに分岐して、それぞれ並列にEEPROM2a〜2cのデータ入力端子INに接続されている。更に、EEPROM2a〜2cのデータ出力端子OUTから伸びるメモリOUT信号線L6〜L8は、それぞれ調停回路3の入力端子3a、3c、3eに接続され、また、汎用入出力ポート16に繋がるチップセレクト出力端子CS1、CS2、CS3からEEPROM2a〜2cのチップセレクト入力端子CSまでそれぞれ伸びるチップセレクト信号線L3、L4、L5も、調停回路3の端子に接続されている。
そして調停回路3では、チップセレクト信号線L3〜L5のすべてにおいて信号がオンとなっているときは、複数のメモリOUT信号線L6〜L8の信号がすべてオンである場合にのみ、端子3gから出力される信号がオンとなる。また調停回路3は、チップセレクト信号線L3〜L5のうち1つのチップセレクト信号線のみがオンとなっているとき、複数のメモリOUT信号線L6〜L8のうち、当該1つのチップセレクト信号線と同じEEPROMに接続されているメモリOUT信号線の出力信号のオン、オフと、端子3gから出力される信号のオン、オフとが、一致するようになっている。
このようになっていることで、EEPROM2a〜2cがいくつあっても、それらEEPROM2a〜2cのクロック入力端子CKはシリアル通信インターフェース17aの同じ端子Kに接続され、それらEEPROM2a〜2cのデータ入力端子INはシリアル通信インターフェース17aの同じ端子Oに接続され、また、それらEEPROM2a〜2cのデータ出力端子OUTからの信号はシリアル通信インターフェース17aの同じ端子Iに入力される。
したがって、EEPROM2a〜2cがいくつあっても、それらEEPROM2a〜2cのために使用するシリアル通信インターフェース17aは1つで済む。つまり、図10で示したような構成に比べ、マイクロコントローラ1内におけるシリアル通信用のリソースを節約することができる。
また、複数のEEPROM2a〜2cにおいて書き込みデータの書き込みが開始された後、チップセレクト信号線L3〜L5のすべての信号をオンとすれば、EEPROM2a〜2cのすべてにおいて書き込みが終わったタイミングで、調停回路3の出力端子3gから出力される信号がオンとなるので、複数のEEPROM2a〜2cの書き込みの確認処理を図12のように1つ1つ順番に行うのではなく、データ入力端子M−INの出力信号がオンかオフかを判定するだけで、全EEPROM2a〜2cの書き込み完了を判定することができる。すなわち、書き込みの確認処理を簡素化することができる。
そして、複数のEEPROM2a〜2cの書き込みの確認処理を図12のように1つ1つ順番に行う場合に比べ、ステップ940、955の処理が不要となるので、その分だけ、書き込みの確認にかかる時間が低減される。
また、書き込みが完了したか否かの判定(ステップ125)においては、EEPROM2a〜2cのいずれについても、マイクロコントローラ1の同じデータ入力端子IN(シリアル通信インターフェース17aの端子I)の入力信号を参照すればよい。したがって、判定の対象となるEEPROM毎に、信号を参照する端子が異なるような場合に比べ、参照対象の端子が低減される。したがって、図4の処理のプログラムにおいては、参照対象の端子の入力信号を示すための変数(または関数)が1つで済むので、プログラムが簡易になり、プログラムサイズが低減される。
また、調停回路3をマイクロコントローラ1の外部に設けるので、マイクロコントローラ1自体は、通常の汎用的なものを用いることができる。
(第2実施形態)
次に、本発明の第2実施形態について説明する。図7に、本実施形態に係る電子装置10’の構成を示す。本実施形態が第1実施形態と異なるのは、本実施形態の調停回路3がマイクロコントローラ1’の内部に組み込まれていることである。なお、図7と図1において同一の符号が付された構成要素は、互いに同一の機能を有するものであり、ここではそれらの詳細についての説明は省略する。
次に、本発明の第2実施形態について説明する。図7に、本実施形態に係る電子装置10’の構成を示す。本実施形態が第1実施形態と異なるのは、本実施形態の調停回路3がマイクロコントローラ1’の内部に組み込まれていることである。なお、図7と図1において同一の符号が付された構成要素は、互いに同一の機能を有するものであり、ここではそれらの詳細についての説明は省略する。
本実施形態のマイクロコントローラ1’は、第1実施形態で説明した構成要素11〜18に加え、調停回路3および切替回路4を備えている。そして、マイクロコントローラ1’には、マイクロコントローラ1’の外部と接続するための外部端子として、更に3つの共用端子D1、D2、D3およびリザーブ端子RVが設けられている。共用端子D1、D2、D3は、それぞれ信号線L6、L7、L8を介して第1EEPROM2a、第2EEPROM2b、第3EEPROM2cのデータ出力端子OUTに接続されている。したがって、共用端子D1、D2、D3は、複数の不揮発性メモリ2a〜2cからシリアル通信によって送信されたデータを受け付けるための端子である。
また、本実施形態では、リザーブ端子RVは未使用状態となっている。また、チップセレクト出力端子CS1、CS2、CS3は、それぞれ信号線L3、L4、L5を介して第1EEPROM2a、第2EEPROM2b、第3EEPROM2cのチップセレクト入力端子CSに接続されている。
また、CS出力端子CS1〜CS3、共用端子D1〜D3のそれぞれは、マイクロコントローラ1’の内部において切替回路4に接続されるようになっている。また、切替回路4からは12本の信号線が伸び、それらのうちの6本は調停回路3の互いに異なる入力端子に接続され、他の6本は汎用入出力ポートの互いに異なる入出力端子に接続される。
また、調停回路3の出力端子3gは、スイッチSW4に接続され、このスイッチSW4を介してシリアル通信インターフェース17aのデータ入力端子Iに接続されている。また、リザーブ端子RVも、マイクロコントローラ1’の内部においてスイッチSW4に接続されている。
なお、本実施形態の調停回路3は、マイクロコントローラ1’内の回路として構成されている点を除けば、その入出力機能は第1実施形態と同じである。
図8に、切替回路4等の構成を示す。切替回路4内においては、チップセレクト出力端子CS1からマイクロコントローラ1’の内部に伸びた信号線が2本に分岐し、分岐した一端が汎用入出力ポート16の入出力端子に接続し、分岐したもう一端が調停回路3の入力端子3bに接続される。また、チップセレクト出力端子CS2から伸びた信号線が2本に分岐し、分岐した一端が汎用入出力ポート16の入出力端子に接続し、分岐したもう一端が調停回路3の入力端子3dに接続される。また、チップセレクト出力端子CS3から伸びた信号線が2本に分岐し、分岐した一端が汎用入出力ポート16の入出力端子に接続し、分岐したもう一端が調停回路3の入力端子3fに接続される。これら入力端子3b、3d、3fは、第1のグループに属する入力端子である。なお本実施形態では、汎用入出力ポート16の入出力端子のうち、チップセレクト出力端子CS1〜CS3と接続する入出力端子は、チップセレクト信号を出力するための端子として用いられる。
このような構成となっているので、汎用入出力ポート16から1つのチップセレクト信号が出力されると、そのチップセレクト信号はチップセレクト出力端子CS1〜CS3のいずれかからマイクロコントローラ1’の外部に出力されると共に、調停回路3の対応する入力端子3b、3d、3eのいずれかに入力される。例えば、汎用入出力ポート16から第1EEPROM2a向けのチップセレクト信号が出力されると、そのチップセレクト信号はチップセレクト出力端子CS1からマイクロコントローラ1’の外部に出力されると共に、調停回路3の入力端子3bに入力される。
したがって、第1実施形態と同様、チップセレクト出力端子CS1から出力されるチップセレクト信号のオン、オフと、入力端子3bに入力されるチップセレクト信号のオン、オフとが一致し、チップセレクト出力端子CS2から出力されるチップセレクト信号のオン、オフと、入力端子3dに入力されるチップセレクト信号のオン、オフとが一致し、チップセレクト出力端子CS3から出力されるチップセレクト信号のオン、オフと、入力端子3fに入力されるチップセレクト信号のオン、オフとが一致する。
また、スイッチSW4は、リザーブ端子RVのマイクロコントローラ1’内部側を当該データ入力端子Iに接続する第1の状態と、調停回路3の出力端子3gをシリアル通信インターフェース17aのデータ入力端子Iに接続する第2の状態と、を切り替えることができるようになっている。
また、切替回路4はスイッチSW1、SW2、SW3(いずれも第1種のスイッチの一例に相当する)を備え、共用端子D1〜D3がマイクロコントローラ1’の内部でそれぞれスイッチSW1〜SW3の端子a1〜a3に接続されている。
これらスイッチSW1〜SW3は、それぞれ端子a1〜a3を端子b1〜b3に接続する第1の状態と、端子a1〜a3を端子c1〜c3に接続する第2の状態とを、切り替えることができるようになっている。そして端子b1〜b3は、それぞれ汎用入出力ポート16の異なる端子に接続され、端子c1〜c3は、それぞれ調停回路の入力端子3a、3c、3eに接続される。これら入力端子3a、3c、3eは、第2のグループに属する入力端子である。
このような構成となっているので、共用端子D1〜D3(複数のデータ受付端子の一例に相当する)は調停回路3の入力端子3a、3c、3eに1対1に接続可能である。
なお、スイッチSW4の状態は、調停回路3に含まれるレジスタ3rの値に従って変化するようになっており、スイッチSW1〜SW3の状態は、切替回路4に含まれるレジスタ4aの値に従って変化するようになっている。マイクロコントローラ1’の起動時、CPU18はROM12から所定の設定プログラムを読み出すことで、その設定プログラム中であらかじめ定められたレジスタ値を、当該レジスタ17r、4aに設定する。すると、スイッチSW1〜SW4は、設定されたレジスタ値に従って状態を変化させる(または状態を維持する)。
この設定プログラム自体は、電子装置10’の製造者によってROM12に書き込まれる。具体的には、電子装置10’の製造者が、マイクロコントローラ1’を電子装置10’に組み込む際に、所定の書き込み装置を用いて、ROM12に対して設定プログラムを書き込む。
このような構成の電子装置10’において、スイッチSW4が出力端子3gをシリアル通信インターフェース17aのデータ入力端子Iに接続させ、かつ、スイッチSW1〜3がそれぞれ端子a1〜a3を端子c1〜c3に接続させるよう、上記設定プログラム中の上記レジスタ値をあらかじめ決定しておけば、EEPROM2a〜2cのデータ出力端子OUTは、それぞれ共用端子D1〜D3を介し、さらに切替回路4を介してそれぞれ調停回路3の入力端子の1つ3a、3c、3eに接続され、調停回路3の出力は、データ入力端子Iに入力される。
したがって、第1実施形態と同様に、CPU18が図4の処理を実行することで、図5、図6に示したような作動で、EEPROM2a〜2cのすべてに同じ書き込みデータが書き込まれ、書き込み確認も簡略化され、書き込み確認が早く終わり、書き込み確認のためのプログラムのデータサイズが低減される。
このように、マイクロコントローラ1’の内部に調停回路3を設けることで、マイクロコントローラ1’の外部に調停回路専用の回路基板等を設ける必用がなくなり、その結果、電子装置10’内のスペース取りが容易になる。
また、マイクロコントローラ1’を電子装置10’のような構成に用いるのではなく、切替回路4に接続されているマイクロコントローラ1’の共用端子D1〜D3を汎用入出力ポート16用の端子として使用したい場合は、スイッチSW1〜SW3が端子a1〜a3をそれぞれ端子b1〜b3に接続させるよう、上記設定プログラム中の上記レジスタ値をあらかじめ設定しておけばよい。
このように、マイクロコントローラ1’の共用端子D1〜D3は、第1の状態では汎用入出力用ポート用の外部端子として使用でき、第2の状態ではEEPROM2a〜2bのデータ出力端子OUTからシリアルデータを受信するための端子として使用できる。このように、電子装置10’の用途に応じて、上記設定プログラム中の上記レジスタ値をあらかじめ設定することで、端子D1〜D3の機能を、シリアル通信用の端子と、汎用ポート用の端子の間で、適宜切り替えることができる。したがって、マイクロコントローラ1’の外部端子の使用数を節約することができる。
また、マイクロコントローラ1’の外部から調停回路3をバイパスしてシリアル通信インターフェース17aのデータ入力端子Iへ信号を入力したい場合は、スイッチSW4が第1の状態でリザーブ端子RVをデータ入力端子Iに接続させるよう、上記設定プログラム中の上記レジスタ値をあらかじめ設定しておき、さらに、リザーブ端子RVに外部からの信号を入力するようにすればよい。
このように、シリアル通信インターフェース17aのデータ入力端子Iには、リザーブ端子RVからの信号を受ける汎用のデータ入力端子として使用でき、第2の状態では調停回路3を介して信号を受けるデータ入力端子として使用できる。
(他の実施形態)
以上、本発明の実施形態について説明したが、本発明の範囲は、上記実施形態のみに限定されるものではなく、本発明の各発明特定事項の機能を実現し得る種々の形態を包含するものである。
以上、本発明の実施形態について説明したが、本発明の範囲は、上記実施形態のみに限定されるものではなく、本発明の各発明特定事項の機能を実現し得る種々の形態を包含するものである。
例えば、上記実施形態の電子装置10は、車両に搭載されるECUであったが、この電子装置10は、車両に搭載されず、車両とは無関係な装置であってもよく、例えば、動画の録画および再生装置等であってもよい。
また、上記実施形態は、同じデータが記録される複数の不揮発性記憶媒体として、EEPROM2a〜2cを例示したが、必ずしもこのようになっておらずともよく、複数の不揮発性記憶媒体としては、シリアル通信方式によってデータの書き込みができる不揮発性記憶媒体であれば、どのようなものを採用してもよい。
また上記実施形態では、クロック同期式シリアル通信方式で不揮発性記憶媒体へのデータの書き込みおよび読み出しを行うようになっているが、クロック非同期式シリアル通信方式で不揮発性記憶媒体へのデータの書き込みおよび読み出しを行うようになっていてもよい。この場合、クロック非同期式シリアル通信に対する不揮発性記憶媒体としては、非同期シリアル通信を有するEEPROMも存在する。クロック非同期式シリアル通信方式を採用する場合は、クロック信号を送受信するための端子は不要となる。
また、上記実施形態の調停回路3の回路構成は、必ずしも図2に示したようなものでなくともよい。調停回路3は、チップセレクト信号線L3〜L5のすべての信号がオンとなっているとき、複数のメモリOUT信号線L6〜L8の信号がすべてオンである場合にのみ、端子3gから出力される信号がオンとなり、かつ、チップセレクト信号線L3〜L5のうち1つのチップセレクト信号線のみがオンとなっているとき、複数のメモリOUT信号線L6〜L8のうち、当該1つのチップセレクト信号線と同じEEPROMに接続されているメモリOUT信号線の出力のオン、オフと、端子3gから出力される信号のオン、オフとが、一致するようになっていれば、どのような回路構成であってもよい。第2実施形態における調停回路3についても同様である。
また、第2実施形態の電子装置10’に用いられるマイクロコントローラ1’は、電子装置10’に組み込まれていない単体としても、本発明の特徴的な構成を有している。すなわち、マイクロコントローラ1’は、複数の外部端子として、複数の外部の装置(上記実施形態では不揮発性記憶媒体2a〜2cであるが、他の装置であってもよい)のそれぞれに対してシリアル通信によってデータを送信するための複数のデータ出力端子M−OUTと、複数の外部の装置を個別に選択するチップセレクト信号を出力可能な複数のチップセレクト出力端子CS1〜CS3と、複数の外部の装置からシリアル通信によって送信されたデータを受け付け可能なデータ受付端子D1〜D3と、を含み、複数のチップセレクト出力端子CS1〜CS3のそれぞれは、当該マイクロコントローラの内部において汎用入出力ポート16の複数の端子のうち異なる1つに接続され、チップセレクト信号は、汎用入出力ポートの複数の端子のうち、複数のチップセレクト出力端子CS1〜CS3に接続される入出力端子から出力可能になっており、調停回路3の上記複数の入力端子3a〜3fは、第1のグループに属する入力端子3b、3d、3fと、第2のグループに属する入力端子3a、3c、3eとに分かれ、第1のグループに属する入力端子3b、3d、3fと第2のグループに属する入力端子3a、3c、3eとは1対1に対応し、複数のチップセレクト出力端子CS1〜CS3から当該マイクロコントローラの外部に出力されるチップセレクト信号のオン、オフは、調停回路3の第1のグループに属する複数の入力端子3b、3d、3fに入力されるチップセレクト信号のオン、オフと、一致するように構成されており、複数のデータ受付端子D1〜D3は、当該マイクロコントローラの内部において調停回路3の第2のグループに属する複数の入力端子3a、3c、3eに対して1対1に接続可能となっており、調停回路3の出力端子3gは、シリアル通信インターフェース17aにおいてシリアルデータの入力を受けるためのデータ入力端子Iに接続可能となっており、調停回路3は更に、第1のグループに属する複数の入力端子3b、3d、3fに入力されるチップセレクト信号がすべてオンとなっているときは、第2のグループに属する入力端子3a、3c、3eに入力される信号がすべてオンである場合にのみ、シリアル通信インターフェース17aのデータ入力端子Iと接続可能な前記出力端子3gから出力される信号がオンとなるように構成されている。
このように構成されたマイクロコントローラ1’において、クロック出力端子M−CKを複数の不揮発性メモリ2a〜2cのクロック入力端子CKに接続し、当該マイクロコントローラのデータ出力端子M−OUTを、当該複数の不揮発性メモリ2a〜2cの入力端子INに接続し、複数のチップセレクト出力端子CS1〜CS3の各々を、当該複数の不揮発性メモリ2a〜2cのうち1つ(例えば不揮発性メモリ2a)に接続し、また、当該複数の不揮発性メモリ2a〜2cのデータ出力端子OUTを、当該不揮発性メモリ(例えば不揮発性メモリ2a)に接続される第1のグループの入力端子(例えば入力端子3b)と対応する第2のグループの入力端子(例えば入力端子3a)に接続させることで、複数の不揮発性メモリ2a〜2cへのデータの書き込み開始後、すべてのチップセレクト出力端子CS1〜CS3の出力信号をオンとすれば、不揮発性メモリ2a〜2cのすべてにおいて書き込みが終わったタイミングで、不揮発性メモリ2a〜2cのすべてのデータ出力端子OUTの出力信号がオンとなり、シリアル通信インターフェース17aのシリアルデータの入力端子Iにオンの信号が入力される。
また、調停回路3において、EEPROM2a〜2cのデータ出力端子OUTの出力がBUSYでもREADYでもないとき、EEPROM2a〜2cのデータ出力端子OUTの出力が不定(ハイインピーダンス状態)とならずにオフとなる場合は、プルダウン回路312〜33cは無くてもよい。
また、第2実施形態においては、共用端子D1〜D3を調停回路3との接続専用に用いる場合、切替回路4のスイッチSW1〜SW3は省略し、共用端子D1〜D3を、それぞれ調停回路3の入力端子3a、3c、3eに接続するようになっていてもよい。SW4も省略し、調停回路3の出力端子3gを、シリアル通信インターフェース17aのデータ入力端子Iに直接接続するようになっていてもよい。
1、1’ マイクロコントローラ
2a〜2c EEPROM
3 調停回路
4 切替回路
10、10’ 電子装置
16 汎用入出力ポート
17a、17b シリアル通信インターフェース
18 CPU
204〜206 データ書き込み期間
301〜311 論理回路
312〜314 プルダウン回路
2a〜2c EEPROM
3 調停回路
4 切替回路
10、10’ 電子装置
16 汎用入出力ポート
17a、17b シリアル通信インターフェース
18 CPU
204〜206 データ書き込み期間
301〜311 論理回路
312〜314 プルダウン回路
Claims (13)
- マイクロコントローラ(1)と、複数の不揮発性メモリ(2a〜2c)とを備え、前記マイクロコントローラ(1)がシリアル通信を用いて前記複数の不揮発性メモリ(2a〜2c)に同じデータの書き込みを行う電子装置であって、
前記電子装置は更に調停回路(3)を備え、
前記マイクロコントローラ(1)から前記複数の不揮発性メモリ(2a〜2c)に対して前記シリアル通信によってデータを送信するための1個のデータ出力端子(M−OUT)は、前記複数の不揮発性メモリ(2a〜2c)の入力端子(IN)に接続され、
前記マイクロコントローラ(1)から前記複数の不揮発性メモリ(2a〜2c)を個別に選択するためのチップセレクト信号を出力する複数のチップセレクト出力端子(CS1〜CS3)は、その各々が、前記複数の不揮発性メモリ(2a〜2c)のうち1つおよび前記調停回路(3)の入力端子の1つ(3b、3d、3f)に接続され、
前記マイクロコントローラ(1)に対して前記シリアル通信によってデータを送信するために設けられた前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)は、それぞれ前記調停回路(3)の入力端子の1つ(3a、3c、3e)に接続され、
前記調停回路(3)の出力端子(3g)は、前記マイクロコントローラ(1)のシリアルデータの入力端子(M−IN)に接続され、
前記調停回路(3)は更に、前記チップセレクト出力端子(CS1〜CS3)と接続された入力端子(3b、3d、3f)へ入力される信号がすべてオンとなっているときは、前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)と接続された入力端子(3a、3c、3e)に入力される信号がすべてオンである場合にのみ、前記マイクロコントローラ(1)のシリアルデータの入力端子(M−IN)と接続された出力端子(3g)から出力される信号がオンとなるように構成されていることを特徴とする電子装置。 - 前記マイクロコントローラ(1)は、前記複数の不揮発性メモリ(2a〜2c)において書き込みデータの書き込みが開始した後、前記チップセレクト出力端子(CS1〜CS3)のすべての出力をオンとし、その後、前記マイクロコントローラ(1)の前記シリアルデータの入力端子(M−IN)への入力信号がオンかオフかに基づいて、前記複数の不揮発性メモリ(2a〜2c)のすべてにおいて前記書き込みデータの書き込みが完了したか否かを判定することを特徴とする請求項1に記載の電子装置。
- 前記調停回路(3)は更に、前記チップセレクト出力端子(CS1〜CS3)と接続された入力端子(3b、3d、3f)へ入力される信号のうち1つの入力端子(3b)に入力される信号のみがオンとなっているときは、前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)と接続された入力端子(3a、3c、3e)のうち、前記1つの入力端子(3b)と同じ不揮発性メモリ(2a)に接続されている入力端子(3a)から出力される信号のオン、オフと、前記マイクロコントローラ(1)のシリアルデータの入力端子(M−IN)に接続された出力端子(3g)から出力される信号のオン、オフとが、一致するように構成されていることを特徴とする請求項1または2に記載の電子装置。
- マイクロコントローラ(1’)と、複数の不揮発性メモリ(2a〜2c)とを備え、前記マイクロコントローラ(1’)がシリアル通信を用いて前記複数の不揮発性メモリ(2a〜2c)に同じデータの書き込みを行う電子装置であって、
前記マイクロコントローラ(1’)は、CPU(18)と、前記CPU(18)によって制御されるシリアル通信インターフェース(17a)と、前記CPU(18)によって制御される汎用入出力ポート(16)と、出力端子(3g)および複数の入力端子(3a〜3f)を備えた調停回路(3)と、複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)とを備え、
前記複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)は、前記マイクロコントローラ(1’)から前記複数の不揮発性メモリ(2a〜2c)のそれぞれに対して前記シリアル通信によってデータを送信するための複数のデータ出力端子(M−OUT)と、前記複数の不揮発性メモリ(2a〜2c)を個別に選択するチップセレクト信号を前記マイクロコントローラ(1’)の外部に出力するための複数のチップセレクト出力端子(CS1〜CS3)と、前記複数の不揮発性メモリ(2a〜2c)から前記シリアル通信によって送信されたデータを受け付けるためのデータ受付端子(D1〜D3)と、を含み、
前記複数のデータ出力端子(M−OUT)のそれぞれは、前記複数の不揮発性メモリ(2a〜2c)のうち異なる1つの不揮発性メモリの入力端子(IN)に接続され、
前記複数のチップセレクト出力端子(CS1〜CS3)のそれぞれは、前記複数の不揮発性メモリ(2a〜2c)のうち異なる1つの不揮発性メモリのチップセレクト入力端子(CS)に接続されると共に、前記マイクロコントローラ(1’)の内部において前記汎用入出力ポート(16)の複数の端子のうち異なる1つに接続され、
前記チップセレクト信号は、前記汎用入出力ポートの前記複数の端子のうち、前記複数のチップセレクト出力端子(CS1〜CS3)に接続される入出力端子から出力されるようになっており、
前記調停回路(3)の前記複数の入力端子(3a〜3f)は、第1のグループに属する入力端子(3b、3d、3f)と、第2のグループに属する入力端子(3a、3c、3e)とに分かれ、
前記複数のチップセレクト出力端子(CS1〜CS3)から前記マイクロコントローラ(1’)の外部に出力されるチップセレクト信号のオン、オフは、前記調停回路(3)の前記第1のグループに属する複数の入力端子(3b、3d、3f)に入力されるチップセレクト信号のオン、オフと、一致するように構成されており、
前記複数のデータ受付端子(D1〜D3)は、前記複数の不揮発性メモリ(2a〜2c)のうち異なる1つの不揮発性メモリのデータ出力端子(OUT)に接続されると共に、前記マイクロコントローラ(1’)の内部において前記調停回路(3)の前記第2のグループに属する複数の入力端子(3a、3c、3e)に対して1対1に接続可能となっており、
前記調停回路(3)の前記出力端子(3g)は、前記シリアル通信インターフェース(17a)においてシリアルデータの入力を受けるためのデータ入力端子(I)に接続可能となっており、
前記調停回路(3)は更に、前記第1のグループに属する複数の入力端子(3b、3d、3f)に入力される前記チップセレクト信号がすべてオンとなっているときは、前記第2のグループに属する入力端子(3a、3c、3e)に入力される信号がすべてオンである場合にのみ、前記シリアル通信インターフェース(17a)のデータ入力端子(I)と接続可能な前記出力端子(3g)から出力される信号がオンとなるように構成されていることを特徴とする電子装置。 - 前記マイクロコントローラ(1’)は、更に切替回路(4)を備え、
前記切替回路(4)は、第1種のスイッチ(SW1〜SW3)を備え、
前記複数のチップセレクト出力端子(CS1〜CS3)は、前記マイクロコントローラ(1’)の内部において、前記切替回路(4)を介して前記調停回路(3)の前記第1のグループに属する複数の入力端子(3b、3d、3f)に1対1に接続されると共に、それぞれが、前記切替回路(4)を介して前記汎用入出力ポート(16)の複数の端子のうち異なる1つに接続され、
前記第1種のスイッチ(SW1〜SW3)が第1の状態にあるとき、前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)は、前記切替回路(4)を介してそれぞれ前記汎用入出力ポート(16)の端子の1つに接続され、
前記第1種のスイッチ(SW1〜SW3)が第2の状態にあるとき、前記複数の不揮発性メモリ(2a〜2c)のデータ出力端子(OUT)は、前記切替回路(4)を介してそれぞれ前記調停回路(3)の前記第2のグループに属する複数の入力端子(3a、3c、3e)の1つに接続されることを特徴とする請求項4に記載の電子装置。 - 前記マイクロコントローラ(1’)は、更に第2種のスイッチ(SW4)を備え、
前記複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)は、更にリザーブ端子(RV)を含み、
前記第2種のスイッチ(SW4)が第1の状態にあるとき、前記リザーブ端子(RV)が前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)に接続され、
前記第2種のスイッチ(SW4)が第2の状態にあるとき、前記調停回路(3)の前記出力端子(3g)が前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)に接続されることを特徴とする請求項5に記載の電子装置。 - 前記マイクロコントローラ(1’)は、前記複数の不揮発性メモリ(2a〜2c)において書き込みデータの書き込みが開始した後、前記チップセレクト出力端子(CS1〜CS3)のすべての出力をオンとし、その後、前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)への入力信号がオンかオフかに基づいて、前記複数の不揮発性メモリ(2a〜2c)のすべてにおいて前記書き込みデータの書き込みが完了したか否かを判定することを特徴とする請求項4ないし6のいずれか1つに記載の電子装置。
- 前記調停回路(3)は更に、前記第1のグループに属する複数の入力端子(3b、3d、3f)へ入力される信号のうち1つの入力端子(3b)に入力される信号のみがオンとなっているときは、前記第2のグループに属する複数の入力端子(3a、3c、3e)のうち、前記1つの入力端子(3b)と同じ不揮発性メモリ(2a)に接続されている入力端子(3a)から出力される信号のオン、オフと、前記シリアル通信インターフェース(17a)のシリアルデータの入力端子(I)に接続可能な出力端子(3g)から出力される信号のオン、オフとが、一致するように構成されていることを特徴とする請求項4ないし7のいずれか1つに記載の電子装置。
- 複数の外部の装置(2a〜2c)とシリアル通信を行うことができるマイクロコントローラであって、
CPU(18)と、
前記CPU(18)によって制御されるシリアル通信インターフェース(17a)と、
前記CPU(18)によって制御される汎用入出力ポート(16)と、
出力端子(3g)および複数の入力端子(3a〜3f)を備えた調停回路(3)と、
複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)と、を備え、
前記複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)は、前記複数の外部の装置(2a〜2c)のそれぞれに対して前記シリアル通信によってデータを送信するための複数のデータ出力端子(M−OUT)と、前記複数の外部の装置(2a〜2c)を個別に選択するチップセレクト信号を出力可能な複数のチップセレクト出力端子(CS1〜CS3)と、前記複数の外部の装置(2a〜2c)から前記シリアル通信によって送信されたデータを受け付け可能なデータ受付端子(D1〜D3)と、を含み、
前記複数のチップセレクト出力端子(CS1〜CS3)のそれぞれは、当該マイクロコントローラの内部において前記汎用入出力ポート(16)の複数の端子のうち異なる1つに接続され、
前記チップセレクト信号は、前記汎用入出力ポートの前記複数の端子のうち、前記複数のチップセレクト出力端子(CS1〜CS3)に接続される入出力端子から出力可能になっており、
前記調停回路(3)の前記複数の入力端子(3a〜3f)は、第1のグループに属する入力端子(3b、3d、3f)と、第2のグループに属する入力端子(3a、3c、3e)とに分かれ、前記第1のグループに属する入力端子(3b、3d、3f)と前記第2のグループに属する入力端子(3a、3c、3e)とは1対1に対応し、
前記複数のチップセレクト出力端子(CS1〜CS3)から当該マイクロコントローラの外部に出力されるチップセレクト信号のオン、オフは、前記調停回路(3)の前記第1のグループに属する複数の入力端子(3b、3d、3f)に入力されるチップセレクト信号のオン、オフと、一致するように構成されており、
前記複数のデータ受付端子(D1〜D3)は、当該マイクロコントローラの内部において前記調停回路(3)の前記第2のグループに属する複数の入力端子(3a、3c、3e)に対して1対1に接続可能となっており、
前記調停回路(3)の前記出力端子(3g)は、前記シリアル通信インターフェース(17a)においてシリアルデータの入力を受けるためのデータ入力端子(I)に接続可能となっており、
前記調停回路(3)は更に、前記第1のグループに属する複数の入力端子(3b、3d、3f)に入力される前記チップセレクト信号がすべてオンとなっているときは、前記第2のグループに属する入力端子(3a、3c、3e)に入力される信号がすべてオンである場合にのみ、前記シリアル通信インターフェース(17a)のデータ入力端子(I)と接続可能な前記出力端子(3g)から出力される信号がオンとなるように構成されていることを特徴とするマイクロコントローラ。 - 更に切替回路(4)を備え、
前記切替回路(4)は、第1種のスイッチ(SW1〜SW3)を備え、
前記複数のチップセレクト出力端子(CS1〜CS3)は、当該マイクロコントローラの内部において、前記切替回路(4)を介して前記調停回路(3)の前記第1のグループに属する複数の入力端子(3b、3d、3f)に1対1に接続されると共に、それぞれが、前記切替回路(4)を介して前記汎用入出力ポート(16)の前記複数の端子のうち異なる1つに接続され、
前記第1種のスイッチ(SW1〜SW3)が第1の状態にあるとき、前記データ受付端子(D1〜D3)は、前記切替回路(4)を介してそれぞれ前記汎用入出力ポート(16)の端子の1つに接続され、
前記第1種のスイッチ(SW1〜SW3)が第2の状態にあるとき、前記データ受付端子(D1〜D3)は、前記切替回路(4)を介してそれぞれ前記調停回路(3)の前記第2のグループに属する複数の入力端子(3a、3c、3e)の1つに接続されることを特徴とする請求項9に記載のマイクロコントローラ。 - 更に第2種のスイッチ(SW4)を備え、
前記複数の外部端子(M−CK、CS1〜CS3、M−OUT、D1〜D3、RV)は、更にリザーブ端子(RV)を含み、
前記第2種のスイッチ(SW4)が第1の状態にあるとき、前記リザーブ端子(RV)が前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)に接続され、
前記第2種のスイッチ(SW4)が第2の状態にあるとき、前記調停回路(3)の前記出力端子(3g)が前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)に接続されることを特徴とする請求項10に記載のマイクロコントローラ。 - 前記複数の外部の装置は複数の不揮発性メモリ(2a〜2c)であり、
前記CPU(18)は、前記複数の不揮発性メモリ(2a〜2c)において書き込みデータの書き込みが開始した後、前記チップセレクト出力端子(CS1〜CS3)のすべての出力をオンとし、その後、前記シリアル通信インターフェース(17a)の前記シリアルデータの入力端子(I)の出力信号がオンかオフかに基づいて、前記複数の不揮発性メモリ(2a〜2c)のすべてにおいて前記書き込みデータの書き込みが完了したか否かを判定することを特徴とする請求項9ないし11のいずれか1つに記載のマイクロコントローラ。 - 前記調停回路(3)は更に、前記第1のグループに属する複数の入力端子(3b、3d、3f)へ入力される信号のうち1つの入力端子(3b)に入力される信号のみがオンとなっているときは、前記第2のグループに属する複数の入力端子(3a、3c、3e)のうち、前記1つの入力端子(3b)と対応する入力端子(3a)から出力される信号のオン、オフと、前記シリアル通信インターフェース(17a)のシリアルデータの入力端子(I)に接続可能な出力端子(3g)から出力される信号のオン、オフとが、一致するように構成されていることを特徴とする請求項請求項9ないし12のいずれか1つに記載のマイクロコントローラ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010118506A JP2011248456A (ja) | 2010-05-24 | 2010-05-24 | 電子装置およびマイクロコントローラ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010118506A JP2011248456A (ja) | 2010-05-24 | 2010-05-24 | 電子装置およびマイクロコントローラ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011248456A true JP2011248456A (ja) | 2011-12-08 |
Family
ID=45413674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010118506A Pending JP2011248456A (ja) | 2010-05-24 | 2010-05-24 | 電子装置およびマイクロコントローラ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011248456A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013153714A1 (ja) * | 2012-04-12 | 2013-10-17 | Necカシオモバイルコミュニケーションズ株式会社 | 情報処理装置 |
US9747994B2 (en) | 2015-08-27 | 2017-08-29 | Kabushiki Kaisha Toshiba | Memory system |
CN110265070A (zh) * | 2015-09-25 | 2019-09-20 | 意法半导体(鲁塞)公司 | 具有存储器尺寸的非易失性存储器设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07175720A (ja) * | 1993-12-21 | 1995-07-14 | Tokimec Inc | データ記憶体を用いたデータ処理装置 |
JPH0863444A (ja) * | 1994-08-22 | 1996-03-08 | Mitsubishi Denki Semiconductor Software Kk | Eeprom内蔵マイクロコンピュータ及びeeprom内蔵マイクロコンピュータの製造方法 |
JP2000066949A (ja) * | 1998-08-19 | 2000-03-03 | Sharp Corp | データ記録再生装置およびデータ記録再生装置のメモリアクセス方法 |
JP2001297014A (ja) * | 2000-04-12 | 2001-10-26 | Sony Corp | 信号処理装置及びその方法 |
JP2004164182A (ja) * | 2002-11-12 | 2004-06-10 | Matsushita Electric Ind Co Ltd | 半導体集積回路 |
JP2004192051A (ja) * | 2002-12-06 | 2004-07-08 | Ricoh Co Ltd | 共用端子制御装置 |
JP2010141504A (ja) * | 2008-12-10 | 2010-06-24 | Denso Corp | 車載装置、及びプログラム |
-
2010
- 2010-05-24 JP JP2010118506A patent/JP2011248456A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07175720A (ja) * | 1993-12-21 | 1995-07-14 | Tokimec Inc | データ記憶体を用いたデータ処理装置 |
JPH0863444A (ja) * | 1994-08-22 | 1996-03-08 | Mitsubishi Denki Semiconductor Software Kk | Eeprom内蔵マイクロコンピュータ及びeeprom内蔵マイクロコンピュータの製造方法 |
JP2000066949A (ja) * | 1998-08-19 | 2000-03-03 | Sharp Corp | データ記録再生装置およびデータ記録再生装置のメモリアクセス方法 |
JP2001297014A (ja) * | 2000-04-12 | 2001-10-26 | Sony Corp | 信号処理装置及びその方法 |
JP2004164182A (ja) * | 2002-11-12 | 2004-06-10 | Matsushita Electric Ind Co Ltd | 半導体集積回路 |
JP2004192051A (ja) * | 2002-12-06 | 2004-07-08 | Ricoh Co Ltd | 共用端子制御装置 |
JP2010141504A (ja) * | 2008-12-10 | 2010-06-24 | Denso Corp | 車載装置、及びプログラム |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013153714A1 (ja) * | 2012-04-12 | 2013-10-17 | Necカシオモバイルコミュニケーションズ株式会社 | 情報処理装置 |
US9747994B2 (en) | 2015-08-27 | 2017-08-29 | Kabushiki Kaisha Toshiba | Memory system |
CN110265070A (zh) * | 2015-09-25 | 2019-09-20 | 意法半导体(鲁塞)公司 | 具有存储器尺寸的非易失性存储器设备 |
CN110265070B (zh) * | 2015-09-25 | 2023-05-23 | 意法半导体(鲁塞)公司 | 具有存储器尺寸的非易失性存储器设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5695724B2 (ja) | 混合されたタイプのメモリデバイスを動作させるシステムおよび方法 | |
KR100843280B1 (ko) | 메모리 시스템 및 그것의 데이터 전송 방법 | |
EP2021896B1 (en) | Method of inter-integrated circuit addressing and devices for performing the same | |
CN105474319A (zh) | 用于配置混合存储器模块的存储器的i/o的设备及方法 | |
CN106066834A (zh) | 具有多设备消息传输的总线通信 | |
KR20100087324A (ko) | 동기식 직렬 인터페이스 nand를 위한 설정 액세스 및 변경을 위한 시스템 및 방법 | |
US20080270654A1 (en) | Bus System for Selectively Controlling a Plurality of Identical Slave Circuits Connected to the Bus and Method Therefore | |
CN106598886B (zh) | I/o总线共享存储器系统 | |
CN116450552B (zh) | 基于i2c总线异步批量读写寄存器的方法及系统 | |
JP2006190132A (ja) | 制御プログラムダウンロード装置 | |
CN107145465B (zh) | 串行外设接口spi的传输控制方法、装置及系统 | |
WO2011060703A1 (zh) | 一种电可擦除可编程只读存储器的实现方法和装置 | |
CN113626350A (zh) | 系统部件和系统部件的应用 | |
CN106445470A (zh) | 芯片中的配置寄存器的初始化方法和初始化装置 | |
CN101421705B (zh) | 具有高储存容量的多媒体卡 | |
JP2011248456A (ja) | 電子装置およびマイクロコントローラ | |
KR20080078977A (ko) | Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템 | |
US20050182885A1 (en) | Semiconductor integrated circuit | |
JP5476956B2 (ja) | 通信システム及び通信方法 | |
US8312206B2 (en) | Memory module and memory module system | |
CN107122323B (zh) | 在多模总线的多引脚传输数据的方法及装置 | |
CN111179996B (zh) | 数据校准装置及其校准数据存写方法 | |
US9377957B2 (en) | Method and apparatus for latency reduction | |
WO2010013427A1 (ja) | 集積回路 | |
JP2007148622A (ja) | インターフェース設定方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120906 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140318 |