JP2008090408A - マイクロコンピュータ、データ書込み装置およびその書込み方法 - Google Patents

マイクロコンピュータ、データ書込み装置およびその書込み方法 Download PDF

Info

Publication number
JP2008090408A
JP2008090408A JP2006267976A JP2006267976A JP2008090408A JP 2008090408 A JP2008090408 A JP 2008090408A JP 2006267976 A JP2006267976 A JP 2006267976A JP 2006267976 A JP2006267976 A JP 2006267976A JP 2008090408 A JP2008090408 A JP 2008090408A
Authority
JP
Japan
Prior art keywords
writer
microcomputer
data
terminal
signal
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
JP2006267976A
Other languages
English (en)
Inventor
Shuji Takahashi
修二 高橋
Kunio Niwa
邦夫 丹羽
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.)
NEC Electronics Corp
Original Assignee
NEC Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2006267976A priority Critical patent/JP2008090408A/ja
Priority to US11/905,367 priority patent/US20080082704A1/en
Publication of JP2008090408A publication Critical patent/JP2008090408A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4213Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with asynchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Microcomputers (AREA)

Abstract

【課題】近年、不揮発性メモリ内蔵マイコンに搭載される不揮発性メモリの容量が格段に増加してきたことにより、不揮発性メモリに対する書込み処理の簡便化および高速化が望まれてきている。
【解決手段】本発明のデータ書込み装置の書込み方法は、フラッシュライタからフラッシュマイコンへ書込みデータ等を送信する場合には、MDATA信号の立ち下がりエッジ信号をハンドシェーク用の信号として使用し、一方、フラッシュマイコンからフラッシュライタへ応答データを送信する場合には、MDATA信号の立ち上がりエッジ信号をハンドシェーク用の信号として使用することを特徴とする。
【選択図】図5

Description

本発明は不揮発性メモリ内蔵マイクロコンピュータに対するデータの書込み装置およびその書込み方法に関し、特にハンドシェーク通信を介したデータの書込み装置およびその書込み方法に関する。
データの書換えが可能である不揮発性メモリには、バイト単位での書換えが可能なEEPROM(Electrically Erasable Programmable Read Only Memory)や、ブロック単位の書換えが可能なフラッシュメモリ等がある。このような不揮発性メモリを内蔵するマイクロコンピュータ(マイコン)は、ユーザのシステム上で利用される様々なデータやプログラムを、内蔵する不揮発性メモリに格納する。データやプログラムを不揮発性メモリ内蔵マイコンへ書込む際には、ハンドシェーク通信方式によるデータ転送が用いられてきた。
ハンドシェーク通信方式とは、送信側が受信側に対しデータ転送を行う際に、受信側からの確認信号(ACK)に応答して、送信側がデータ転送を開始する方式をいう。このハンドシェーク通信方式によれば、信頼性の高い通信を行うことができる。
特許文献1には、ハンドシェーク通信方式を用いて、フラッシュメモリ内蔵マイコン(フラッシュマイコン)にデータを書込む技術が開示されている。図8は、特許文献1のフラッシュ書込み装置80のブロック図を示す。フラッシュ書込み装置80は、フラッシュライタ81と、フラッシュマイコン82を備える。また、フラッシュマイコン82は、シリアル送受信部83と、ポート部84と、フラッシュメモリ部85と、制御部86を有している。さらに、制御部86は、シリアル送受信制御部87と、ポート制御部88と、フラッシュメモリ制御部89のサブブロックを有する。
フラッシュライタ81とフラッシュマイコン82との間は、3線式シリアル通信の場合には、ハンドシェーク用の信号を送受信するハンドシェーク専用線を含め、4本の通信線で接続されている。図8では、フラッシュライタ81からシリアル送受信部83へのシリアルクロック出力と、フラッシュライタ81からシリアル送受信部83へのデータ出力と、シリアル送受信部83からフラッシュライタ81へのデータ出力を行うための配線が、フラッシュライタ81とシリアル送受信部83の間にそれぞれ接続されている。また、ハンドシェーク用の信号を送受信するための配線がフラッシュライタ81とポート部84との間に接続されている。これらの4本の通信線を使用することで、フラッシュライタ81は、フラッシュマイコン82が内蔵するフラッシュメモリ部85への書込みを実行する。
図8では、フラッシュライタ81からフラッシュメモリ部85への書込みデータの転送を行う前に、まず、ポート部84で管理されている複数の端子のうちからハンドシェーク用の信号の送受信を行うためのハンドシェーク用の端子を決定する。ハンドシェーク用の端子を決定するために、フラッシュライタ81は、シリアル送受信部83に対し、シリアルクロックを送信するとともに、ハンドシェーク設定コマンドおよびハンドシェーク端子情報を送信する。シリアル送受信部83は、受信したハンドシェーク設定コマンドとハンドシェーク端子情報を制御部86へ出力する。制御部86の中のシリアル送受信制御部87は、ハンドシェーク設定コマンドおよびハンドシェーク端子情報を正常に受信したことを示すACK信号を、シリアル送受信部83を介して、フラッシュライタ81へ送信する。また、制御部86の中のポート制御部88は、ハンドシェーク端子情報に基づいて、ポート部84における複数の端子のうちから1つをハンドシェーク用の端子として決定する。
このようにして、ハンドシェーク通信が可能な状態に設定し、特許文献1のフラッシュ書込み装置80は、ハンドシェーク用の専用線を使用したハンドシェーク通信方式を使って、フラッシュライタ81からフラッシュマイコン82が内蔵するフラッシュメモリ部85にデータを書込む。
また、特許文献2には、スレーブ装置とマスタ装置との間のデータの転送において、ハンドシェーク用の専用線を使用せずにデータの送信を行う技術が開示されている。図9に、特許文献2のスレーブ装置90とマスタ装置91との接続関係を示す。スレーブ装置90は、スレーブ出力端子(SO)と、スレーブ入力端子(SI)と、スレーブクロック端子(SCLK)と、外部割込み入力端子(Ext Int)を有する。マスタ装置91は、マスタ入力端子(MI)と、マスタ出力端子(MO)と、マスタクロック端子(MCLK)を有する。
スレーブ装置90とマスタ装置91は、3本の配線で接続されている。SOとMIがバスラインSDによって接続され、スレーブ装置90からマスタ装置91へバスラインSD上をスレーブデータ(SD)が送信される。SIとMOがバスラインMDによって接続され、マスタ装置91からスレーブ装置90へバスラインMD上をマスタデータ(MD)が送信される。SCLKとMCLKがバスラインCLKによって接続され、マスタ装置91からスレーブ装置90へバスラインCLKによってクロック(CLK)が送信される。また、Ext Intは、MOと接続され、スレーブ装置90の応答性向上のために利用される。
次に、図9のスレーブ装置90およびマスタ装置91のデータの転送方法について説明する。図10は、スレーブ装置90からマスタ装置91へデータを送信する場合を示す。MDおよびSDの初期値は、‘H’レベルとする。また、1回のデータ送信は、8ビットであり、図10では、H7〜H0とA7〜A0の2回のデータ送信が行われている。
まず、t0において、スレーブ装置90は、バスラインSDを‘H’レベル→‘L’レベルに遷移させて、マスタ装置91へエッジ信号を送信する。同期のためのT1期間経過後、t1において、マスタ装置91は、バスラインSD上のエッジ信号を検出して受信モードに移行し、バスラインMDを‘H’レベル→‘L’レベルに設定する。このようにして発生したエッジ信号は、スレーブ装置90に対して、マスタ装置91がすでに受信可能な状態であることを知らせる。
バスラインMD上のエッジ信号が発生してからT2期間の経過後、t2において、マスタ装置91は、バスラインCLK上にCLKを出力する。スレーブ装置90は、CLKの発生に伴い、バスラインSD上に、データH7を出力する。t3において、マスタ装置91は、CLKの立ち上がりエッジで、バスラインSD上のデータH7を取得する。このようにして、データH6〜H0までのスレーブ装置90からマスタ装置91へのデータ送信が繰り返される。
t4において、データH0の転送が完了し、マスタ装置91からのCLK出力が停止する。t4からT3期間の間、マスタ装置91は、取得したデータH7〜H0のメモリ(不図示)への転送を行う。
そして、t5において、マスタ装置91は、バスラインMDを‘L’レベル→‘H’レベルとしてエッジ信号をスレーブ装置90に送信する。これにより、スレーブ装置90は、マスタ装置91がすでに受信の準備が完了していることを知り、t6において、バスラインCLK上にCLKが、バスラインSD上にA7が出力されて、データの送信が開始する。A6〜A0も同様に、スレーブ装置90からマスタ装置91へ送信される。
また、図11は、マスタ装置91からスレーブ装置90へデータを送信する場合を示す。マスタ装置91からスレーブ装置90へデータを送信する場合には、バスラインMDを介して、データH7〜H0およびA7〜A0を送信する。つまり、バスラインSDとバスラインMDの役割が、逆となる。これ以外は、基本的に、スレーブ装置90からマスタ装置91へデータを送信する場合と同じになる。
以上のように、特許文献2のスレーブ装置90とマスタ装置91との間のデータ転送においては、特許文献1のようなハンドシェーク用の専用線を使用せずに、データを送信するために使用されるデータ線であるバスラインSDおよびバスラインMDの2本の信号線を利用して、ハンドシェーク通信を行っている。すなわち、特許文献2では、送信側(スレーブ装置90/マスタ装置91)は、データ線(バスラインSD/バスラインMD)を介して、データ送信の開始について同意を求めるリクエスト信号であるエッジ信号を受信側(マスタ装置91/スレーブ装置90)へ送信する。受信側は、当該エッジ信号を検出し、データ線(バスラインMD/バスラインSD)を介して、データ転送を認める確認信号(ACK)であるエッジ信号を送信側へ返信する。送信側は、当該エッジ信号の受信をトリガとして、データの転送を開始する。
特開2001−357690 特開2001−274862
しかしながら、近年、不揮発性メモリ内蔵マイコンに搭載される不揮発性メモリの容量が格段に増加してきたことにより、不揮発性メモリに対する書込み時間の短縮化が重要となってきた。そのため、ハンドシェーク通信方式による書込み処理の簡便化および高速化が望まれてきている。
本発明に係るマイクロコンピュータは、不揮発性メモリと、ライタからクロックが入力される第1の端子と、前記ライタから書込みデータが入力される第2の端子と、前記ライタへ応答データを出力する第3の端子と、を有し、前記不揮発性メモリへ前記書込みデータを書込むマイクロコンピュータであって、前記第3の端子から、第1のエッジ信号を前記ライタへ出力し、前記第1のエッジ信号に応答して、前記ライタから出力される前記クロックが、前記第1の端子に入力され、前記第1のエッジ信号に応答して前記ライタから出力される前記クロックに同期して、前記ライタから出力される前記書込みデータが、前記第2の端子に入力され、前記書込みデータの前記第2の端子への入力後、前記第3の端子から、第2のエッジ信号を出力し、前記第2のエッジ信号に応答して、前記ライタから出力される前記クロックが、前記第1の端子に入力され、前記第2のエッジ信号に応答して前記ライタから出力される前記クロックに同期して、前記第3の端子から、前記応答データを出力することを特徴とする。
また、本発明に係るデータ書込み装置の書込み方法は、不揮発性メモリを有するマイクロコンピュータと、前記不揮発性メモリへのデータの書込みを実行するライタとが、該ライタから前記マイクロコンピュータへクロックが送信される第1のラインと、前記ライタから前記マイクロコンピュータへ書込みデータが送信される第2のラインと、前記マイクロコンピュータから前記ライタへ応答データが送信される第3のラインと、で接続されるデータ書込み装置の書込み方法であって、前記マイクロコンピュータが、前記第3のラインを用いて第1のエッジ信号を前記ライタへ送信する第1の処理と、前記ライタが、前記第1のエッジ信号に応答して、前記第1のラインを用いて前記クロックを前記マイクロコンピュータへ送信する第2の処理と、前記ライタが、前記第2の処理で送信する前記クロックに同期して、前記第2のラインを用いて前記書込みデータを前記マイクロコンピュータへ送信する第3の処理と、前記第3の処理後、前記マイクロコンピュータが、前記第3のラインを用いて第2のエッジ信号を前記ライタへ送信する第4の処理と、前記ライタが、前記第2のエッジ信号に応答して、前記第1のラインを用いて前記クロックを前記マイクロコンピュータへ送信する第5の処理と、前記マイクロコンピュータが、前記第5の処理で前記ライタから送信された前記クロックを受信し、該受信した前記クロックに同期して、前記第3のラインを用いて前記応答データを前記ライタへ送信する第6の処理と、を含むことを特徴とする。
また、本発明に係るデータ書込み装置は、不揮発性メモリを有するマイクロコンピュータと、前記不揮発性メモリへのデータの書込みを実行するライタとが、該ライタから前記マイクロコンピュータへクロックが送信される第1のラインと、前記ライタから前記マイクロコンピュータへ書込みデータが送信される第2のラインと、前記マイクロコンピュータから前記ライタへ応答データが送信される第3のラインと、で接続されるデータ書込み装置であって、前記マイクロコンピュータが、前記第3のラインを用いて第1のエッジ信号を前記ライタへ送信し、前記ライタが、前記第1のエッジ信号に応答して、前記第1のラインを用いて前記クロックを前記マイクロコンピュータへ送信し、前記ライタが、前記第1のエッジ信号に応答して出力する前記クロックに同期して、前記第2のラインを用いて前記書込みデータを前記マイクロコンピュータへ送信し、前記マイクロコンピュータが、前記書込みデータの受信後、前記第3のラインを用いて第2のエッジ信号を前記ライタへ送信し、前記ライタが、前記第2のエッジ信号に応答して、前記第1のラインを用いて前記クロックを前記マイクロコンピュータへ送信し、前記第2のエッジ信号に応答して前記ライタから出力される前記クロックに同期して、前記マイクロコンピュータが、前記第3のラインを用いて前記応答データを前記ライタへ送信することを特徴とする。
本発明によれば、ハンドシェーク通信方式による書込み処理を簡便化、高速化することが可能となり、不揮発性メモリ内蔵マイコンが内蔵する不揮発性メモリに対する書込み時間を短縮することができる。
以下、本発明の好ましい実施の形態について、図面を参照して詳細に説明する。なお、実施の形態においては、フラッシュメモリ内蔵マイクロコンピュータ(フラッシュマイコン)を用いて説明をするが、これに限定されることはなく、フラッシュメモリ以外の不揮発性メモリ(EEPROMやFeRAM(Ferroelectric Random Access Memory)等)を内蔵するマイクロコンピュータ(マイコン)であってもよい。
実施の形態
図1は、本発明の実施の形態に係るデータ書込み装置10のブロック図である。図1に示すように、データ書込み装置10は、フラッシュライタ11と、フラッシュメモリを内蔵するフラッシュマイコン12を備える。フラッシュライタ11は、フラッシュマイコン12が内蔵するフラッシュメモリにデータを書込むための装置である。
フラッシュライタ11は、WSCK端子110と、WSO端子111と、WSI端子112と、WOA端子113と、WOB端子114と、WI端子115を有する。また、フラッシュマイコン12は、MSCK端子120と、MSI端子121と、MSO端子122と、MRST端子123と、MMODE端子124を有する。
WSCK端子110とMSCK端子120は、SCK信号線で接続され、当該SCK信号線を介して、フラッシュライタ11からフラッシュマイコン12へシリアルクロック(SCK信号)が送信される。WSO端子111とMSI端子121は、WDATA線で接続され、当該WDATA線を介して、フラッシュライタ11からフラッシュマイコン12へシリアルのデータ信号(WDATA信号)が送信される。WSI端子112とMSO端子122は、MDATA線で接続され、当該MDATA線を介して、フラッシュマイコン12からフラッシュライタ11へシリアルのデータ信号(MDATA信号)が送信される。WOA端子113とMRST端子123は、RST信号線で接続され、当該RST信号線を介して、フラッシュライタ11からフラッシュマイコン12へリセット信号(RST信号)が送信される。WOB端子114とMMODE端子124は、MODE信号線で接続され、当該MODE信号線を介して、フラッシュライタ11からフラッシュマイコン12へ動作モード設定信号(MODE信号)が送信される。
また、WI端子115は、フラッシュマイコン12に内蔵されるフラッシュメモリに書込むためのデータである書込みデータ等を、フラッシュライタ11へ入力するためのデータ入力端子である。なお、フラッシュライタ11とフラッシュマイコン12との間には、ハンドシェーク用の専用線は、存在しない。
次に、図2を用いて、フラッシュライタ11の詳細について説明する。図2は、本発明の実施の形態に係るフラッシュライタ11のブロック図を示す。フラッシュライタ11は、図1に示される6つの端子に接続されたフラッシュライタ制御用マイコン20を有する。フラッシュライタ制御用マイコン20は、CPU(Central Processing Unit)21と、ROM(Read Only Memory)22と、SRAM(Static Random Access Memory)23とI/F(Interface)部24と、バス25を有する。
CPU21は、バス25に接続され、当該バス25を介して、ROM22、SRAM23およびI/F部24に、それぞれアクセス可能とされている。
ROM22は、バス25に接続されている。ROM22は、フラッシュライタ11を制御するためのプログラムが格納されており、当該プログラムをCPU21が読出して実行することによって、フラッシュライタ11の制御が行われる。
SRAM23は、バス25に接続されている。SRAM23は、WI端子115等の入力端子から入力されたデータの格納場所として使用されるとともに、CPU21がROM22から読出したプログラムを格納する場所としても使用される。
I/F部24は、バス25と、図1で示される6つの端子と接続される。また、I/F部24は、ポート部240と、ポート制御部241と、シリアル送受信制御部242と、シリアルクロック生成部243のサブブロックを有する。
ポート部240は、図1で示される6つの端子と接続される。フラッシュライタ制御用マイコン20の各端子は、汎用的に使用することができる。汎用的とは、所定の端子を、例えば、入力端子、出力端子、若しくは、入出力端子として選択して使用することができ、さらに、シリアル通信として使用する場合には、シリアルクロック出力端子、シリアルデータ出力端子、およびシリアルデータ入力端子として使用することができる。ポート部240は、ポート制御部241と接続され、フラッシュライタ制御用マイコン20の端子の設定は、ポート制御部241から出力される制御信号によって行われる。また、ポート部240は、ポート制御部241から出力される制御信号を受けて、出力端子として設定された所定の端子の出力を、特定の論理レベルに維持する機能も有する。例えば、WOA端子113が出力端子として設定される場合に、当該WOA端子113の出力を‘H’レベルに固定したり、‘H’→‘L’レベルに遷移させたりすることもできる。
ポート制御部241は、フラッシュライタ制御用マイコン20の各端子の設定および出力信号の論理レベルを制御するための制御信号をポート部240へ出力する。また、ポート制御部241は、バス25と接続され、ポート制御部241から出力される信号は、CPU21からの命令によって制御される。
シリアル送受信制御部242は、バス25と、ポート部240に接続され、フラッシュライタ制御用マイコン20の端子が、シリアル通信用の端子として設定された場合のシリアル通信の制御を行う。具体的には、フラッシュマイコン12から送信されポート部240から入力されるシリアルデータをシリアルクロックに同期させて取り込み、当該取り込んだシリアルデータを複数ビットのパラレルデータに変換して、CPU21またはSRAM23へ出力する。また、CPU21またはSRAM23から入力される複数ビットのパラレルデータをシリアルデータに変換して、シリアルクロックに同期させてポート部240を介してフラッシュマイコン12へ出力する。なお、データのパラレル−シリアル(シリアル−パラレル)変換は、例えば、シフトレジスタによって行うことができる。
シリアルクロック生成部243は、ポート部240と、シリアル送受信制御部242に接続される。シリアルクロック生成部243は、シリアル送受信制御部242の制御信号を受けて、シリアルクロックを生成し、生成したシリアルクロックをポート部240およびシリアル送受信制御部242へ出力する。
なお、図2では、フラッシュライタ11の制御用プログラムの格納場所をROM22としたがこれに限定されることはなく、例えば、フラッシュメモリのような書換え可能な不揮発性メモリであっても構わない。また、一時的なデータの格納場所として、SRAM23を使用しているが、これについても限定されることはなく、例えば、DRAM(Dynamic Random Access Memory)であっても構わない。
続いて、図3を用いて、フラッシュマイコン12の詳細について説明する。図3は、本発明の実施の形態に係るフラッシュマイコン12のブロック図を示す。フラッシュマイコン12は、図1に示される5つの端子の他に、CPU30と、フラッシュメモリ31と、ROM32と、SRAM33と、I/F部34と、バス35を有する。
CPU30は、バス35に接続され、当該バス35を介して、フラッシュメモリ31、ROM32、SRAM33およびI/F部34に、それぞれアクセス可能とされている。さらに、CPU30は、MRST端子123およびMMODE端子124と接続される。CPU30は、MRST端子123を介して入力されるRST信号を受けて、フラッシュマイコン12のリセット(初期化処理)を行う。また、CPU30は、MMODE端子124を介して入力されるMODE信号に基づいて、フラッシュマイコン12が動作する動作モードを設定する。フラッシュマイコン12の動作モードには、ユーザのシステムで動作する通常動作モードと、フラッシュライタ11と接続されてフラッシュメモリ31にデータを書込むための書込み動作モードがある。
フラッシュメモリ31は、バス35と接続され、フラッシュライタ11から送信される書込みデータを格納する。また、フラッシュメモリ31は、フラッシュメモリ制御部310およびメモリセルアレイ311のサブブロックを有する。フラッシュメモリ制御部310は、メモリセルアレイ311に対するデータの書込み、読出しおよび消去の各処理を実行する。
ROM32は、バス35に接続されている。ROM32は、フラッシュマイコン12の動作を制御するためのプログラムが格納されており、当該プログラムをCPU30が読出して実行することによって、フラッシュマイコン12の動作の制御が行われる。また、ROM32に格納されるプログラムには、フラッシュメモリ31の書込み、読出しおよび消去を制御するためのプログラム(ファームウェア)も含まれており、フラッシュメモリ制御部310は、このファームウェアに基づいて、メモリセルアレイ311に対する書込み等の処理を実行する。
SRAM33は、バス35に接続されている。SRAM33は、フラッシュライタ11からI/F部34を介してフラッシュマイコン12が受信した書込みデータや書込み先を示すアドレス、各種コマンド(以下、書込みデータ等という)を、一時的に格納するための場所として使用されるとともに、CPU30がROM32から読出したプログラムを格納する場所としても使用される。
I/F部34は、バス35と、図1で示される3つの端子(MSCK端子120、MSI端子121、MSO端子122)と接続される。また、I/F部34は、ポート部340と、ポート制御部341と、シリアル送受信制御部342のサブブロックを有する。
ポート部340は、図1で示される3つの端子と接続される。図2のフラッシュライタ制御用マイコン20内のポート部240と同じように、ポート部340に接続される3つの各端子の設定(端子の種類と出力信号の論理レベル)は、ポート制御部341から行われる。
ポート制御部341およびシリアル送受信制御部342の機能についても、図2のフラッシュライタ制御用マイコン20内のポート制御部241およびシリアル送受信制御部242と基本的に同様である。但し、シリアルクロックの生成は、フラッシュライタ11側でのみ行われるため、シリアル送受信制御部342は、フラッシュライタ11から送信されるシリアルクロックを受信して、当該受信したシリアルクロックに同期したシリアル通信の制御を行う。
なお、図2の場合と同様に、図3においても、ROM32やSRAM33に限定されることはない。
次に、図4を用いて、本発明の実施の形態に係るデータ書込み装置10の動作について説明する。図4は、本発明の実施の形態に係るフラッシュライタ11とフラッシュマイコン12の動作フローを示す。なお、図4では、1回のデータ転送に関連するフラッシュライタ11とフラッシュマイコン12の処理のみを示している。
まず、S4−1において、フラッシュライタ11の動作モードの設定が行われる。詳細には、CPU21が、ROM22からフラッシュライタ11を制御するためのプログラムを読出して実行し、フラッシュライタ11が、フラッシュライタとして動作可能な状態へ移行する。動作モードの設定が行われると、その後のフラッシュライタ11の動作は、ROM22に格納されたプログラムに基づいて制御される。なお、プログラムの実行においては、ROM22から読出したプログラムを一旦SRAM23に格納し、SRAM23からプログラムを読出して実行するようにしてもよい。
S4−2において、CPU11は、フラッシュライタ11の端子の設定を行う。詳細には、CPU21は、ポート部240およびポート制御部241を介して、WSCK端子110をシリアルクロック(SCK信号)を出力するための出力端子として、WSO端子111をシリアルデータであるWDATA信号を出力するための出力端子として、WSI端子112をシリアルデータであるMDATA信号を入力するための入力端子として、WOA端子113をRST信号を出力するための出力端子として、WOB端子114をMODE信号を出力するための出力端子として、WI端子115をフラッシュマイコンへ転送する書込みデータ等を入力するための入力端子として、それぞれ設定する。また、WSCK端子110、WSO端子111、WOA端子112およびWOB端子114の各出力端子は、すべて初期状態として、‘H’レベルに設定される。
S4−3において、フラッシュマイコン12へ転送される書込みデータ等が、WI端子115を介して、外部から入力される。入力された書込みデータ等は、SRAM23に格納される。なお、S4−3の処理は、S4−1やS4−2の処理の前に持ってきても構わない。但し、その場合には、WI端子115は、書込みデータ等を入力可能な専用の入力端子であるか、若しくは、フラッシュライタ11の電源投入後の初期状態としては、WI端子115は、入力端子として設定されている必要がある。
A4−1において、フラッシュライタ11は、フラッシュマイコン12に対して、リセットを行うための信号を送信する。詳細には、CPU21は、ポート部240およびポート制御部241を介して、WOA端子113の出力を、‘H’レベル→‘L’レベルに遷移させ、‘L’レベルのRST信号をフラッシュマイコン12へ送信する。フラッシュマイコン12は、MRST端子123から‘L’レベルのRST信号を受信し、内部ブロックのリセット(初期化処理)を行う。
A4−2において、フラッシュライタ11は、書込み動作モードを設定するための信号(書込み動作モード設定信号)をフラッシュマイコン12へ送信する。詳細には、CPU21は、ポート部240およびポート制御部241を介して、WOB端子114の出力を、‘H’レベル→‘L’レベルに遷移させ、‘L’レベルのMODE信号をフラッシュマイコン12へ送信する。フラッシュマイコン12は、MMODE端子124から‘L’レベルのMODE信号を受信する。
A4−3において、フラッシュライタ11は、A4−1でフラッシュマイコン12に対して実行したリセットを解除するための信号を送信する。詳細には、CPU21は、ポート部240およびポート制御部241を介して、WOA端子113の出力を、‘L’レベル→‘H’レベルに遷移させ、‘H’レベルのRST信号をフラッシュマイコン12へ送信する。これにより、フラッシュマイコン12のリセット状態が解除される。
S4−4において、フラッシュマイコン12は、動作モードの選択を行う。詳細には、CPU30は、MRST端子123から入力されるRST信号の立ち上がりエッジのタイミング(リセット状態が解除されたとき)において、MMODE端子124に入力されているMODE信号の論理レベルを確認する。MODE信号の論理レベルが‘H’レベルである場合には、通常動作モードが、MODE信号の論理レベルが‘L’レベルである場合には、書込み動作モードが、CPU30によって選択される。ここでは、‘L’レベルのMODE信号が入力されているので、CPU30は、書込み動作モードを選択する。
S4−5において、フラッシュマイコン12の動作モードの設定が行われる。詳細には、CPU30がROM32から書込み動作モードに対応したプログラムを読出して実行し、フラッシュマイコン12が、フラッシュライタ11からデータ転送を受けてフラッシュメモリ31への書込み動作が可能な状態へ移行する。書込み動作モードの設定が行われると、その後のフラッシュマイコン12の動作は、ROM32に格納されたプログラムに基づいて制御される。なお、フラッシュライタ11の場合と同じように、プログラムの実行においては、ROM32から読出したプログラムを一旦SRAM33に格納し、SRAM33からプログラムを読出して実行するようにしてもよい。
S4−6において、CPU30は、フラッシュマイコン12の端子の設定を行う。詳細には、CPU30は、ポート部340およびポート制御部341を介して、MSCK端子120をシリアルクロック(SCK信号)を入力するための入力端子として、MSI端子121をシリアルデータであるWDATA信号を入力するための入力端子として、WSO端子122をシリアルデータであるMDATA信号を出力するための出力端子として、それぞれ設定する。また、MSO端子122の出力端子は、初期状態として、‘H’レベルに設定される。
フラッシュマイコン12における書込み動作モードの設定および端子の設定が完了すると、A4−4において、フラッシュマイコン12は、書込みデータ等の受信準備が完了したことを通知する信号をフラッシュライタ11へ送信する。詳細には、CPU30が、ポート部340およびポート制御部341を介して、MSO端子122の出力を、‘H’レベル→‘L’レベルに遷移させ、MDATA信号の立ち下がりエッジ信号をフラッシュライタ11へ送信する。これにより、フラッシュライタ11は、フラッシュマイコン12の受信準備が完了していることを認識する。
フラッシュライタ11は、A4−4におけるMDATA信号の立ち下がりエッジ信号に応答して、A4−5aにおいて、シリアルクロックをフラッシュマイコン12へ送信する。また、フラッシュライタ11は、当該シリアルクロックに同期して、A4−5bにおいて、書込みデータ等をフラッシュマイコン12へ送信する。詳細には、MDATA信号の立ち下がりエッジ信号を検出したCPU21は、SRAM23に格納されている書込みデータ等を読出し、シリアル送受信制御部242に対しシリアル送信するように命令する。シリアル送受信制御部242は、シリアルクロック生成部243に対し、シリアルクロックを生成するように制御信号を出力する。シリアルクロック生成部243で生成されたシリアルクロックは、シリアル送受信制御部242とポート部240へ出力される。シリアル送受信制御部は、シリアルクロックに同期して、書込みデータ等のパラレルーシリアル変換を行いポート部240へ出力する。ポート部240は、入力されたシリアルクロックとシリアルの書込みデータ等を、WSCK端子110およびWSO端子111を介して、SCK信号およびWDATA信号としてフラッシュマイコン12へ送信する。
S4−7において、フラッシュマイコン12は、書込みデータ等の受信処理を行う。詳細には、MSI端子121から入力される書込みデータ等は、ポート部340を介して、シリアル送受信制御部342に入力される。シリアル送受信制御部342は、シリアルの書込みデータ等に対してシリアル−パラレル変換を行い、パラレルの書込みデータ等を生成し、SRAM33へ出力する。SRAM33に格納された書込みデータ等は、CPU30によって読出され、読出された書込みデータ等に含まれるチェックサムデータから、当該データ転送が正常に行われたかどうかの確認を行う。また、それとともに、受信した書込みデータ等の種類を判別する。すなわち、フラッシュライタ11から送信される書込みデータ等には、フラッシュメモリ31に実際に書込まれる書込みデータそのものの他に、メモリセルアレイ311のどの番地にデータを書込むのかを指定するアドレスデータや、各種コマンド(例えば、消去コマンドや書込みコマンド)が含まれるため、CPU30は、受信した書込みデータ等の内容を把握する。
S4−8において、ファームウェア処理、すなわち、書込み等に関する処理が行われる。詳細には、CPU30は、ROM32からフラッシュメモリ31のアクセスを制御するためのファームウェアを読出して実行する。その後の書込み処理は、このファームウェアによって制御される。CPU30は、SRAM33から書込みデータ等を読出し、フラッシュメモリ制御部310へ出力する。フラッシュメモリ制御部310は、メモリセルアレイ311の所定の番地に、書込みデータを書込む。データの書込みが終了した後には、ベリファイ処理が行われ、書込んだデータと期待値との比較が行われる。
S4−9において、フラッシュマイコン12は、S4−7およびS4−8の各処理が正常に行われ、フラッシュライタ11から送信された書込みデータのフラッシュメモリ31への書込み処理が正常に完了できたかどうかの書込み処理結果の判定を行う。S4−7のステップにおいて、チェックサムのエラーが検出されず、かつ、S4−8のステップにおいて、ベリファイ処理の結果が一致となった場合には、フラッシュメモリ31への書込みが正常に行われたと判断する。
A4−6において、フラッシュマイコン12は、S4−9の結果をフラッシュライタ11へ送信する準備ができたことを、送信準備完了通知をもって、フラッシュライタ11へ知らせる。詳細には、CPU30は、ポート部340およびポート制御部341を介して、MSO端子122の出力を、‘L’レベル→‘H’レベルに遷移させ、MDATA信号の立ち上がりエッジ信号をフラッシュライタ11へ送信する。これにより、フラッシュライタ11は、フラッシュマイコン12の送信準備が完了しており、シリアルクロックの送信が要求されていることを認識する。
フラッシュライタ11は、A4−6におけるMDATA信号の立ち上がりエッジ信号に応答して、A4−7aにおいて、シリアルクロックをフラッシュマイコン12へ送信する。また、フラッシュマイコン12は、受信したシリアルクロックに同期して、A4−7bにおいて、応答データをフラッシュライタ11へ送信する。詳細には、MDATA信号の立ち上がりエッジを検出したCPU21は、シリアル送受信制御部242に対しシリアルクロックを送信するように命令する。シリアル送受信制御部242は、シリアルクロック生成部243に対し、シリアルクロックを生成するように制御信号を出力する。シリアルクロック生成部243で生成されたシリアルクロックは、ポート部240へ出力される。ポート部240は、入力されたシリアルクロックを、WSCK端子110を介して、フラッシュマイコン12へ送信する。MSCK端子120から入力されたシリアルクロックは、ポート部340を介して、シリアル送受信部制御部342に入力される。シリアル送受信制御部は、CPU30から出力された応答データ(S4−9の結果)のパラレル−シリアル変換を行い、シリアルの応答データとして、ポート部340へ出力する。ポート部340に入力されたシリアルの応答データは、MSO端子122を介して、MDATA信号として、フラッシュライタ11へ送信される。WSI端子112から入力されたシリアルの応答データは、ポート部240を介して、シリアル送受信制御部242に入力される。シリアル送受信制御部242は、シリアルの応答データをシリアルクロック生成部243から入力されるシリアルクロックに同期して取得するとともに、シリアルーパラレル変換を行い、パラレルの応答データを生成して、CPU21へ出力する。これにより、CPU21は、応答データを確認することによって、A4−5bにおいて送信した書込みデータの書込み処理が正常に行われたかどうかを把握することができる。応答データの結果が、正常な書込み処理の完了を示すものであった場合には、次の書込みデータに関連する処理に移行する。一方、応答データがエラーを示すものであった場合には、書込みデータ等の再送信等のエラー処理を実行する。
次に、図5〜7のタイミングチャートを用いて、フラッシュライタ11とフラッシュマイコン12との間で送受信される信号のタイミングについて説明する。なお、図5〜7においては、フラッシュライタ11とフラッシュマイコン12との間で送受信されるデータの大きさを8bitとして説明するが、これに限定されることはない。
図5は、本発明の実施の形態に係るフラッシュライタ11とフラッシュマイコン12との間で送受信される信号のタイミングチャート(正常な書込みが行われた場合)を示したものである。図5では、フラッシュライタ11からフラッシュマイコン12へ送信される書込みデータ等を、「01100010」とし、フラッシュマイコン12からフラッシュライタ11へ送信される正常な書込みが行われたことを示す応答データを、「00111100」とする。
t0〜t3の期間は、フラッシュマイコン12の動作モードを設定する期間である。t0において、RST信号が‘H’レベル→‘L’レベルに遷移し、フラッシュマイコン12にリセットがかかる。RST信号が‘L’レベルであるt0〜t2の間は、フラッシュマイコン12のリセット状態がつづく。t1において、フラッシュマイコン12に対し、書込み動作モードが設定されるように、フラッシュライタ11がMODE信号を‘H’レベル→‘L’レベルに遷移させる。t2において、RST信号が‘L’レベル→‘H’レベルに遷移し、フラッシュマイコン12のリセット状態が解除されるとともに、フラッシュマイコン12は、MODE信号の‘L’レベルに基づいて書込み動作モードへ移行する。
t3〜t4の期間は、フラッシュライタ11とフラッシュマイコン12との間で、書込みデータ等の転送を開始するためのハンドシェーク(HS)通信処理が行われる期間である。t3において、フラッシュマイコン12は、書込みデータ等の受信が可能な状態にあることをフラッシュライタ11に伝えるために、MDATA信号を‘H’レベル→‘L’レベルに遷移させて立ち下がりエッジ信号を生成し、フラッシュライタ11に送信する。フラッシュライタ11は、立ち下がりエッジ信号を受信し、すでにフラッシュマイコン12が、受信可能な状態にあることを知る。フラッシュライタ11は、MDATA信号の立ち下がりエッジ信号に応答して、t4において、SCK信号としてシリアルクロックを送信するとともに、WDATA信号として書込みデータ等のシリアル送信を開始する。
t4〜t5の期間は、フラッシュライタ11からフラッシュマイコン12へ書込みデータ等が送受信される期間である。WDATA信号は、フラッシュライタ11からSCK信号の立ち下がりエッジに同期して送信され、フラッシュマイコン12ではSCK信号の立ち上がりエッジでWDATA信号を受信する。この期間において、「01100010」の8bitのシリアルデータの送受信が行われる。なお、フラッシュライタ11は、書込みデータ等の送信後のWDATA信号を、t5において、‘H’レベルに設定する。
t5〜t6の期間は、フラッシュマイコン12が、受信した書込みデータ等の通信エラーの有無の確認、受信した書込みデータ等の内容の確認、フラッシュメモリ31への書込み処理、書込んだデータのベリファイ処理、一連の書込みに関する処理が正常に行われたかどうかの判断が行われる期間である。これらのすべては、フラッシュマイコン12の内部で行われるものであるため、この期間におけるフラッシュライタ11とフラッシュマイコン12との間のデータ通信は行われない。
t6〜t7の期間は、フラッシュライタ11とフラッシュマイコン12との間で、一連の書込みに関する処理が正常に行われたかどうかを示す応答データの転送を開始するためのハンドシェーク(HS)通信処理が行われる期間である。t6において、フラッシュマイコン12は、応答データの送信が可能な状態にあることをフラッシュライタ11に伝えるために、MDATA信号を‘L’レベル→‘H’レベルに遷移させて立ち上がりエッジ信号を生成し、フラッシュライタ11に送信する。フラッシュライタ11は、立ち上がりエッジ信号を受信し、すでにフラッシュマイコン12が、送信可能な状態にあることを知る。フラッシュライタ11は、MDATA信号の立ち上がりエッジ信号に応答して、t7において、SCK信号としてシリアルクロックを開始する。また、フラッシュマイコン12は、このシリアルクロックに同期して、フラッシュライタ11へ応答データの送信を開始する。
t7〜t8の期間は、フラッシュマイコン12からフラッシュライタ11へ応答データが送受信される期間である。MDATA信号は、フラッシュマイコン12からSCK信号の立ち下がりエッジに同期して送信され、フラッシュライタ11ではSCK信号の立ち上がりエッジでWDATA信号を受信する。この期間において、「00111100」の8bitのシリアルデータの送受信が行われる。なお、フラッシュマイコン12は、応答データの送信後のMDATA信号を、t8において、‘H’レベルに設定する。
図5においては、t7〜t8における応答データは、正常な書込みが行われたことを示すものであるため、t8以降の期間は、次のデータの書込み処理へ移行する。
図6は、本発明の実施の形態に係るフラッシュライタ11とフラッシュマイコン12との間で送受信される信号のタイミングチャート(正常な書込みが行われなかった場合)を示したものである。図6では、フラッシュライタ11からフラッシュマイコン12へ送信される書込みデータ等を、「01100011」とし、フラッシュマイコン12からフラッシュライタ11へ送信される正常な書込みが行われなかったことを示す応答データを、「11000011」とする。
図5の場合との相違点は、書込みデータ等や応答データが異なるだけであるため、基本的に図6の信号変化のタイミングは、図5の場合と同じである。但し、図6での応答データは、正常な書込みが行われなかったことを示すものであるため、t8以降の処理は、エラー処理となる。エラー処理の具体的な内容としては、再度、同じ書込みデータ等をフラッシュマイコン12へ転送して再書込み処理をする場合や、書込み処理を諦めて不図示の出力端子によりフラッシュライタ11がユーザに対して、警告信号を発する処理を行う場合が考えられる。
また、正常な書込みが行われなかったことを示す応答データは、その原因ごとに異なる応答データを用意し、フラッシュライタ11へ送信するようにしてもよい。例えば、フラッシュライタ11からフラッシュマイコン12への書込みデータ等の送受信自体がうまくいかなかったために書込み処理がエラーとなってしまった場合には、応答データ=「11100011」とし、フラッシュライタ11からフラッシュマイコン12への書込みデータ等の送受信はうまくいったが、フラッシュメモリ31への書込みの際にエラーが起こった(ベリファイエラー)場合には、応答データ=「11000011」というように、異なるものを適用してもよい。
さらに、応答データにも、チェックサム等の通信エラーを確認する手段を含めてもよい。これにより、応答データに通信エラーが生じた場合には、フラッシュライタ11は、再度フラッシュマイコン12に対して、応答データを送信するように要求することができる。
なお、図6では、図5とは異なり、フラッシュライタ11またはフラッシュマイコン12から送信される最後のシリアルデータの論理が、双方とも「1」(‘H’レベル)であるため、図5のt5またはt8での‘L’レベル→‘H’レベルの遷移に相当する処理は、不要となる。また、図5のt5におけるWDATA信号の‘L’レベル→‘H’レベルの遷移は、必ずしも必要な処理ではない。しかし、図5のt8におけるMDATA信号の‘L’レベル→‘H’レベルの遷移は、MDATA信号自体がハンドシェーク処理に使用されるため、必要な処理である。
図7は、本発明の実施の形態に係るフラッシュライタ11とフラッシュマイコン12との間で送受信される信号のタイミングチャート(連続して書込みデータ等を送信する場合)を示したものである。図7に示す通り、フラッシュライタ11からフラッシュマイコン12へ2種類の書込みデータ等(「01100010」、「11110000」)を連続して送信している。また、フラッシュマイコン12は、t5〜t6の間には、書込みに関連する処理は行わずに、受信した書込みデータ等をSRAM33に格納する処理等だけを行っている。
前述の通り、フラッシュライタ11からフラッシュマイコン12へ書込みデータ等を送信する場合には、MDATA信号の立ち下がりエッジ信号をハンドシェーク用の信号として使用し、一方、フラッシュマイコン12からフラッシュライタ11へ応答データを送信する場合には、MDATA信号の立ち上がりエッジ信号をハンドシェーク用の信号として使用する。つまり、図7の例においては、1回目の「01100010」の書込みデータ等の送信後、MDATA信号が‘L’レベルのままでは、2回目の「11110000」の書込みデータ等を送信するために必要なMDATA信号の立ち下がりエッジ信号を作り出せない。そこで、図7のt6において、一旦MDATA信号を‘L’レベル→‘H’レベルに遷移させた後、再びt7において、‘H’レベル→‘L’レベルに遷移させている。なお、図5の場合も同様の理由により、図5のt8においてMDATA信号を‘L’レベル→‘H’レベルに遷移させておかないと、t8以降に行われる次データの送受信処理に行われるハンドシェーク用の信号を生成することができない。但し、‘L’レベル→‘H’レベルに遷移されるタイミングは、t8でなくても構わず、次データの書込み処理に影響がないタイミングであれば、どのタイミングで行っても構わない。
このように、本発明の実施の形態では、フラッシュライタ11からフラッシュマイコン12へ書込みデータ等を転送する場合には、MDATA信号の立ち下がりエッジ信号をハンドシェーク用の信号として使用し、一方、フラッシュマイコン12からフラッシュライタ11へ応答データを転送する場合には、MDATA信号の立ち上がりエッジ信号をハンドシェーク用の信号として使用する。すなわち、フラッシュライタ11からの信号を受けて、フラッシュマイコン12が書込み動作モードに移行した後のフラッシュライタ11とフラッシュマイコン12との間のデータの送受信においては、MDATA信号が送信されるMDATA線の1本の信号線のみを利用して、ハンドシェーク通信を実現する。このようなハンドシェーク通信による不揮発性メモリ内蔵マイコンへの書込み処理方式は、従来の方式と比較してより簡便な方式であるため、本発明のハンドシェーク通信の制御(処理)が容易となる。これによって、不揮発性メモリ内蔵マイコンへの書込み処理時間の高速化が、可能となる。
以上の通り、本発明の実施の形態に基づいて詳細に説明したが、本発明は、本発明の主旨を変更しない限り、種々の変形が可能である。例えば、各信号の論理レベルを逆にしても構わない。すなわち、図5において、t0におけるWDATA信号およびMDATA信号の初期値を‘L’レベルとし、t3のMDATA信号のハンドシェーク用のエッジ信号を立ち上がりエッジ信号に、t8のMDATA信号のハンドシェーク用のエッジ信号を立ち下がりエッジ信号に、それぞれ変更しても構わない。
本発明の実施の形態に係るデータ書込みシステム10のブロック図である。 本発明の実施の形態に係るフラッシュライタ11のブロック図である。 本発明の実施の形態に係るフラッシュマイコン12のブロック図である。 本発明の実施の形態に係るフラッシュライタ11とフラッシュマイコン12の動作を示す動作フローである。 本発明の実施の形態に係るフラッシュライタ11とフラッシュマイコン12との間で送受信される信号のタイミングチャート(正常な書込みが行われた場合)である。 本発明の実施の形態に係るフラッシュライタ11とフラッシュマイコン12との間で送受信される信号のタイミングチャート(正常な書込みが行われなかった場合)である。 本発明の実施の形態に係るフラッシュライタ11とフラッシュマイコン12との間で送受信される信号のタイミングチャート(連続して書込みデータ等を送信する場合)である。 従来のフラッシュ書込み装置80のブロック図である。 従来のスレーブ装置90とマスタ装置91との接続関係を示す図である。 従来のスレーブ装置90からマスタ装置91へデータを送信する場合のタイミングチャートである。 従来のマスタ装置91からスレーブ装置90へデータを送信する場合のタイミングチャートである。
符号の説明
10 データ書込み装置
11、81 フラッシュライタ
110 WSCK端子
111 WSO端子
112 WSI端子
113 WOA端子
114 WOB端子
115 WI端子
12、82 フラッシュマイコン
120 MSCK端子
121 MSI端子
122 MSO端子
123 MRST端子
124 MMODE端子
20 フラッシュライタ制御用マイコン
21、30 CPU
22、32 ROM
23、33 SRAM
24、34 I/F部
240、340、84 ポート部
241、341、88 ポート制御部
242、342、87 シリアル送受信制御部
243 シリアルクロック生成部
25、35 バス
31 フラッシュメモリ
310、89 フラッシュメモリ制御部
311 メモリセルアレイ
80 フラッシュ書込み装置
83 シリアル送受信部
85 フラッシュメモリ部
86 制御部
90 スレーブ装置
91 マスタ装置

Claims (15)

  1. 不揮発性メモリと、ライタからクロックが入力される第1の端子と、前記ライタから書込みデータが入力される第2の端子と、前記ライタへ応答データを出力する第3の端子と、を有し、前記不揮発性メモリへ前記書込みデータを書込むマイクロコンピュータであって、
    前記第3の端子から、第1のエッジ信号を前記ライタへ出力し、
    前記第1のエッジ信号に応答して、前記ライタから出力される前記クロックが、前記第1の端子に入力され、
    前記第1のエッジ信号に応答して前記ライタから出力される前記クロックに同期して、前記ライタから出力される前記書込みデータが、前記第2の端子に入力され、
    前記書込みデータの前記第2の端子への入力後、前記第3の端子から、第2のエッジ信号を出力し、
    前記第2のエッジ信号に応答して、前記ライタから出力される前記クロックが、前記第1の端子に入力され、
    前記第2のエッジ信号に応答して前記ライタから出力される前記クロックに同期して、前記第3の端子から、前記応答データを出力することを特徴とするマイクロコンピュータ。
  2. 前記書込みデータの前記第2の端子への入力後から前記第2のエッジ信号に応答して前記ライタから出力される前記クロックが前記第1の端子に入力されるまでに、前記ライタとの間で、前記第2の端子を介したハンドシェーク通信を行わないことを特徴とする請求項1に記載のマイクロコンピュータ。
  3. 前記書込みデータの前記第2の端子への入力後から前記第2のエッジ信号に応答して前記ライタから出力される前記クロックが前記第1の端子に入力されるまでに、前記第2の端子に入力される信号の論理レベルが変化しないことを特徴とする請求項1に記載のマイクロコンピュータ。
  4. 前記第1のエッジ信号に応答して前記ライタから出力される前記クロックが前記第1の端子に入力される前に、前記ライタとの間で、前記第2の端子を介したハンドシェーク通信を行わないことを特徴とする請求項1ないし3に記載のマイクロコンピュータ。
  5. 前記第1のエッジ信号は、第1の論理レベルから第2の論理レベルの変化により構成され、前記第2のエッジ信号は、前記第2の論理レベルから前記第1の論理レベルの変化により構成されることを特徴とする請求項1ないし4に記載のマイクロコンピュータ。
  6. 前記書込みデータの書込み処理が正常に行われた場合には、正常な書込み処理が完了したことを示す旨の前記応答データを送信し、前記書込みデータの書込み処理が正常に行われなかった場合には、正常な書込み処理が完了しなかったことを示す旨の前記応答データを送信することを特徴とする請求項1ないし5に記載のマイクロコンピュータ。
  7. 前記ライタからのリセット信号が入力される第4の端子と、
    前記ライタからの動作モード設定信号が入力される第5の端子と、を備え、
    前記リセット信号の論理レベルが変化したときの前記動作モード設定信号の論理レベルに基づいて、書込み動作モードへの動作モードの遷移を行うことを特徴とする請求項1ないし6に記載のマクロコンピュータ。
  8. 不揮発性メモリを有するマイクロコンピュータと、前記不揮発性メモリへのデータの書込みを実行するライタとが、該ライタから前記マイクロコンピュータへクロックが送信される第1のラインと、前記ライタから前記マイクロコンピュータへ書込みデータが送信される第2のラインと、前記マイクロコンピュータから前記ライタへ応答データが送信される第3のラインと、で接続されるデータ書込み装置の書込み方法であって、
    前記マイクロコンピュータが、前記第3のラインを用いて第1のエッジ信号を前記ライタへ送信する第1の処理と、
    前記ライタが、前記第1のエッジ信号に応答して、前記第1のラインを用いて前記クロックを前記マイクロコンピュータへ送信する第2の処理と、
    前記ライタが、前記第2の処理で送信する前記クロックに同期して、前記第2のラインを用いて前記書込みデータを前記マイクロコンピュータへ送信する第3の処理と、
    前記第3の処理後、前記マイクロコンピュータが、前記第3のラインを用いて第2のエッジ信号を前記ライタへ送信する第4の処理と、
    前記ライタが、前記第2のエッジ信号に応答して、前記第1のラインを用いて前記クロックを前記マイクロコンピュータへ送信する第5の処理と、
    前記マイクロコンピュータが、前記第5の処理で前記ライタから送信された前記クロックを受信し、該受信した前記クロックに同期して、前記第3のラインを用いて前記応答データを前記ライタへ送信する第6の処理と、を含むことを特徴とするデータ書込み装置の書込み方法。
  9. 前記第3の処理後から前記第5の処理までの間に、前記ライタと前記マイクロコンピュータは、前記第2のラインを用いてハンドシェーク通信を行わないことを特徴とする請求項8に記載のデータ書込み装置の書込み方法。
  10. 前記第3の処理後から前記第5の処理までの間に、前記第2のライン上の信号の論理レベルが変化しないことを特徴とする請求項8に記載のデータ書込み装置の書込み方法。
  11. 前記第2の処理前に、前記ライタと前記マイクロコンピュータは、前記第2のラインを用いてハンドシェーク通信を行わないことを特徴とする請求項8ないし10に記載のデータ書込み装置の書込み方法。
  12. 前記第1のエッジ信号は、第1の論理レベルから第2の論理レベルの変化により構成され、前記第2のエッジ信号は、前記第2の論理レベルから前記第1の論理レベルの変化により構成されることを特徴とする請求項8ないし11に記載のデータ書込み装置の書込み方法。
  13. 前記第6の処理において、前記マイクロコンピュータは、前記書込みデータの書込み処理が正常に行われた場合には、正常な書込み処理が完了したことを示す旨の前記応答データを送信し、前記書込みデータの書込み処理が正常に行われなかった場合には、正常な書込み処理が完了しなかったことを示す旨の前記応答データを送信することを特徴とする請求項8ないし12に記載のデータ書込み装置の書込み方法。
  14. 前記マイクロコンピュータと前記ライタとが、前記ライタから前記マイクロコンピュータへリセット信号が送信される第4のラインと、前記ライタから前記マイクロコンピュータへ動作モード設定信号が送信される第5のラインとで接続され、
    前記第1の処理の前に、前記マイクロコンピュータは、前記第4のラインの論理レベルが変化したときの前記第5のラインの論理レベルに基づいて、書込み動作モードへの動作モードの遷移を行うことを特徴とする請求項8ないし13に記載のデータ書込み装置の書込み方法。
  15. 不揮発性メモリを有するマイクロコンピュータと、前記不揮発性メモリへのデータの書込みを実行するライタとが、該ライタから前記マイクロコンピュータへクロックが送信される第1のラインと、前記ライタから前記マイクロコンピュータへ書込みデータが送信される第2のラインと、前記マイクロコンピュータから前記ライタへ応答データが送信される第3のラインと、で接続されるデータ書込み装置であって、
    前記マイクロコンピュータが、前記第3のラインを用いて第1のエッジ信号を前記ライタへ送信し、
    前記ライタが、前記第1のエッジ信号に応答して、前記第1のラインを用いて前記クロックを前記マイクロコンピュータへ送信し、
    前記ライタが、前記第1のエッジ信号に応答して出力する前記クロックに同期して、前記第2のラインを用いて前記書込みデータを前記マイクロコンピュータへ送信し、
    前記マイクロコンピュータが、前記書込みデータの受信後、前記第3のラインを用いて第2のエッジ信号を前記ライタへ送信し、
    前記ライタが、前記第2のエッジ信号に応答して、前記第1のラインを用いて前記クロックを前記マイクロコンピュータへ送信し、
    前記第2のエッジ信号に応答して前記ライタから出力される前記クロックに同期して、前記マイクロコンピュータが、前記第3のラインを用いて前記応答データを前記ライタへ送信することを特徴とするデータ書込み装置。
JP2006267976A 2006-09-29 2006-09-29 マイクロコンピュータ、データ書込み装置およびその書込み方法 Withdrawn JP2008090408A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006267976A JP2008090408A (ja) 2006-09-29 2006-09-29 マイクロコンピュータ、データ書込み装置およびその書込み方法
US11/905,367 US20080082704A1 (en) 2006-09-29 2007-09-28 Data processing apparatus for data transmission and reception and data transfer method for data transfer system including the data processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006267976A JP2008090408A (ja) 2006-09-29 2006-09-29 マイクロコンピュータ、データ書込み装置およびその書込み方法

Publications (1)

Publication Number Publication Date
JP2008090408A true JP2008090408A (ja) 2008-04-17

Family

ID=39262328

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006267976A Withdrawn JP2008090408A (ja) 2006-09-29 2006-09-29 マイクロコンピュータ、データ書込み装置およびその書込み方法

Country Status (2)

Country Link
US (1) US20080082704A1 (ja)
JP (1) JP2008090408A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022172270A (ja) * 2018-12-13 2022-11-15 マイクロン テクノロジー,インク. ファームウェアの状態に基づく自動パワーダウン

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2456517A (en) * 2008-01-15 2009-07-22 Andrzej Radecki Serial data communication circuit for use with transmission lines using both data and clock to enable recovery of data synchronously

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS607538A (ja) * 1983-06-27 1985-01-16 Dainippon Screen Mfg Co Ltd デ−タ転送制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022172270A (ja) * 2018-12-13 2022-11-15 マイクロン テクノロジー,インク. ファームウェアの状態に基づく自動パワーダウン
US11847014B2 (en) 2018-12-13 2023-12-19 Micron Technology, Inc. Automated power down based on state of firmware

Also Published As

Publication number Publication date
US20080082704A1 (en) 2008-04-03

Similar Documents

Publication Publication Date Title
KR101507194B1 (ko) 직렬 인터페이스 nand
KR101507628B1 (ko) 동기 직렬 인터페이스 nand의 데이터 판독을 위한 시스템 및 방법
JP5351130B2 (ja) 混合されたタイプのメモリデバイスを動作させるシステムおよび方法
US8819377B2 (en) System and method of operating memory devices of mixed type
KR100673013B1 (ko) 메모리 컨트롤러 및 그것을 포함한 데이터 처리 시스템
JP4550439B2 (ja) Ecc制御装置
JP4734033B2 (ja) 記憶装置
CN101836258A (zh) 菊花链存储器配置和用途
KR20080052019A (ko) 메모리 시스템 및 그것의 데이터 전송 방법
JP2004005699A (ja) Nandフラッシュメモリインタフェース装置
JP2006004079A (ja) 記憶装置
WO2011060703A1 (zh) 一种电可擦除可编程只读存储器的实现方法和装置
JP2003317489A (ja) 不揮発性半導体記憶装置、そのデータ書き込み制御方法およびプログラム
CN112925569A (zh) 一种固件数据处理方法、装置、设备及存储介质
KR20080078977A (ko) Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템
JP2008090408A (ja) マイクロコンピュータ、データ書込み装置およびその書込み方法
EP2194458A2 (en) Request processing device, request processing system, and access testing method
JP2006031123A (ja) Usbメモリ装置およびusbメモリ装置制御プログラム
JP4793798B2 (ja) マイクロコンピュータ
JP4005950B2 (ja) マイクロコントローラ
US20090043945A1 (en) Non-Volatile Memory System and Method for Reading Data Therefrom
KR100298904B1 (ko) 플래쉬메모리의 인터페이스 방법
CN113326215B (zh) 一种spi nor及nand闪存传输模式识别方法
JP4453314B2 (ja) 複数のモードで読み書きが可能な記憶装置
JP2008071290A (ja) メモリコントローラおよびホストコンピュータ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100119

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20100316