JP2004021421A - Control method for memory device, its program, and recording medium - Google Patents

Control method for memory device, its program, and recording medium Download PDF

Info

Publication number
JP2004021421A
JP2004021421A JP2002173127A JP2002173127A JP2004021421A JP 2004021421 A JP2004021421 A JP 2004021421A JP 2002173127 A JP2002173127 A JP 2002173127A JP 2002173127 A JP2002173127 A JP 2002173127A JP 2004021421 A JP2004021421 A JP 2004021421A
Authority
JP
Japan
Prior art keywords
address
eeprom
slave
memory device
access
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.)
Granted
Application number
JP2002173127A
Other languages
Japanese (ja)
Other versions
JP4083474B2 (en
Inventor
Takashi Ide
井手 崇
Masaaki Kawakami
河上 正明
Masaru Tsubooka
坪岡 賢
Tsutomu Itai
板井 力
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP2002173127A priority Critical patent/JP4083474B2/en
Publication of JP2004021421A publication Critical patent/JP2004021421A/en
Application granted granted Critical
Publication of JP4083474B2 publication Critical patent/JP4083474B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Memory System (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a control method for a memory device allowing a control program to be switched into a control program in use for an EEPROM while automatically discriminating the type of access pattern of the EEPROM simply by replacing the serial EEPROM having the same pin position and a different access pattern in the same place without using extra hardware. <P>SOLUTION: Random read processing for a 1-bite address is tried on each slave address of the serial EEPROM. When an acknowledge signal is returned in S3 after specifying the slave address following a start bit, the slave address is determined to be effective. When it is not returned, the slave address is determined to be ineffective. The above read processing is continued for the effective slave address. When the acknowledgement signal is returned in S7 after specifying the slave address following the start bit, a 1-bite address EEPROM is set, and when it is not returned, a 2-bite address EEPROM is set. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、EEPROMのアクセス形態の種類の判別に関するものである。
【0002】
【従来の技術】
シリアルEEPROMの制御方法は大きく分けて2種類あり、2線式タイプと3線式タイプとがある。以下、2線式によるシリアルEEPROMの制御方法を簡単に説明する。
【0003】
2線式によるシリアルEEPROMの制御方法に使用されるインタフェースとしてIC(Inter IC Communication)バスがある。現在、ICバスに対応したシリアルEEPROMは小型で基板実装面積をとらないという利点、単価が安いという利点がある反面、アドレスビットが8ビットであるため、ICバス上での最大接続数である8個のメモリを搭載しても最大メモリ空間は16Kビットしかない。
【0004】
シリアルEEPROMとの通信においては、後述する図4に示すように、チップセレクト信号(A,A,A)がTRUEのときにシリアル同期用クロック(SCL)に同期してインストラクション用コマンド、アドレス、データを連続で送ることになる。通常のシステム設計による通信形態では、CS(チップセレクト信号)、SDA(データ信号)、SCL(シリアルクロック信号)に対応して設けられているI/Oレジスタを操作して各信号のビット値を操作するか、もしくは、1本のレジスタにライト、リードなどのオペレーションコマンドとアドレス、さらにはデータの書き込みのときは書き込みデータを、レジスタにセットしてクロックに同期させて1ビットずつデータを出力している。
8ビット(=以下1バイトとする)アドレスのEEPROMの場合、伝送フォーマット(EEPROMにデータを書き込む場合)は図7(c)のようになる。伝送においては、スタート・コンディションビットからストップ・コンディションビットまでが1つの伝送動作の単位となる。伝送開始後、スタート・コンディションに続いてスレーブアドレスとリード/ライトコマンドビットとで構成される8ビットデータがホストからEEPROMに送信される。続く2バイト目がアドレス、3バイト目がデータとなる。
【0005】
上述の通り、アドレスが1バイトの場合、ICバス上の最大メモリ空間は16Kビットとなる。しかし、これでは容量不足になるケースが増えてきたため、アドレス・フィールドを2バイトにして16Kを超える容量のEEPROMが使われるようになってきた。
【0006】
なお、EEPROMにはシリアルEEPROMよりも容量が大きくてピン配置が異なるパラレルEEPROMがある。特開平10−320267には、開発設計の途中で容量不足になった場合に対処するため、最初はシリアルEEPROMでメモリシステムを構成していたものを、途中でパラレルEEPROMで構成するように切り替えるようにする際、切り替え前と切り替え後とで同一のソフトにより制御可能とするメモリ制御装置および方法が提案されている。
【0007】
これに対して、1バイトアドレスのシリアルEEPROMと2バイトアドレスのシリアルEEPROMとは、ピン配置が全く同じである。従って、メモリシステムの設計上、1バイトアドレスのシリアルEEPROMと2バイトアドレスのシリアルEEPROMとは、互いに同じ実装箇所やソケットに対して差し替えることができる。しかし、1バイトアドレスのEEPROMと2バイトアドレスのEEPROMとでは通信タイミングが異なるため、互いに同じ実装箇所やソケットに対して差し替えを行って両者の制御切り替えを行いたい場合、システム設計後に対処するのは困難となる。例えば、設計段階で1バイトアドレスのEEPROMでは容量不足が発覚して、2バイトアドレスのEEPROMに変更を要する場合でも、再度2バイトのリード、ライト処理方法を設計しなければならなかった。
【0008】
従って、両タイプのシリアルEEPROMの一方から他方へ使用を切り替える際に、両者のそれぞれを制御するプログラムを切り替える行程として、従来では、以下のようなことが考えられる。
(a)特開平10−320267号公報のように、両タイプのシリアルEEPROMをハードウェアの相違から区別することができるように、ICバスを1バイトアドレス用と2バイトアドレス用とにそれぞれ用意して、EEPROMがいずれに装着されているかを判定し、判定結果に従ってプログラムを切り替える。
(b)EEPROMを差し替えたことを人が判定して、タイプに応じたプログラムを人が切り替える、または入れ替える。
【0009】
【発明が解決しようとする課題】
しかしながら、上記(a)の方法では、1バイトアドレスのEEPROMと2バイトアドレスのEEPROMとが同じ実装箇所やソケットに対して差し替えて使用することができるにも関わらず、両タイプのそれぞれに専用のICバスを備える必要がある。従って、余分なハードウェアを追加しなければならないという問題点がある。
【0010】
また、上記(b)の方法では、EEPROMを差し替える際に、人がBIOSプログラムを入れ替えたり、DIPスイッチを予め設けて人が切り替えたりする必要があって容易な切り替えができないという問題点がある。
【0011】
本発明は、上記従来の問題点に鑑みなされたものであり、その目的は、余分なハードウェアを設けることなく、同じ箇所にピン配置が同じでアクセス形態の異なるシリアルEEPROMを差し替えるだけで、そのEEPROMのアクセス形態の種類を自動的に判別し、制御プログラムをそのEEPROM用の制御プログラムに切り替えることのできるメモリ装置の制御方法、およびそのプログラム、ならびに記録媒体を提供することにある。
【0012】
【課題を解決するための手段】
本発明のメモリ装置の制御方法は、上記課題を解決するために、ピン配置が同じで互いにアクセス形態の種類が異なるシリアルEEPROMを同じ箇所に差し替えて装着することが可能なメモリ装置に対して、装着された上記シリアルEEPROMへのアクセスを制御するための制御プログラムを有効に設定するメモリ装置の制御方法であって、上記メモリ装置に装着された上記シリアルEEPROMの上記アクセス形態の種類を、上記シリアルEEPROMに所定のアクセスを行って上記シリアルEEPROMから得られる応答内容に基づいて判別し、上記アクセス形態の種類の判別結果に従って、予め用意された上記制御プログラムを有効に設定することを特徴としている。
【0013】
上記の発明によれば、ピン配置が同じでアクセス形態の種類が異なるシリアルEEPROMが同じ箇所に装着されていても、装着されたシリアルEEPROMに所定のアクセスを行ってどのような応答内容が得られるかによって、アクセス形態の種類を判別する。そして、その判別結果に従って、装着されたシリアルEEPROMへのアクセスを制御するために予め用意された制御プログラムを有効に設定する。
【0014】
従って、余分なハードウェアを設けることなく、同じ箇所にピン配置が同じでアクセス形態の異なるシリアルEEPROMを差し替えるだけで、そのEEPROMのアクセス形態の種類を自動的に判別し、制御プログラムをそのEEPROM用の制御プログラムに切り替えることのできるメモリ装置の制御方法を提供することができる。
【0015】
また、上記のようにアクセス形態の種類の判別を行って、その判別結果に基づいてアクセス条件を設定するようにすれば、メモリ装置の製品出荷時にアクセス条件を固定する必要がないので、シリアルEEPROMの制御プログラムを汎用性のある仕様にすることができ、コストダウンにもつながる。さらに、制御プログラムの設定ミスなどによる不具合が発生する危険性もなくなる。さらに、将来的にシリアルEEPROMのメモリ拡張が行われても、新たにソフトウェアの対応を行う必要がなくなる。
【0016】
さらに本発明のメモリ装置の制御方法は、上記課題を解決するために、上記所定のアクセスは、上記シリアルEEPROMのワードアドレスサイズを判別することにより上記アクセス形態の種類を判別することができるアクセスであることを特徴としている。
【0017】
上記の発明によれば、所定のアクセスによってシリアルEEPROMのワードアドレスサイズを判別することによりアクセス形態の種類を判別するので、新たにハードウェアを追加することなくソフトウェアでアクセス形態の種類を判別することが容易になる。
【0018】
さらに本発明のメモリ装置の制御方法は、上記課題を解決するために、 上記所定のアクセスにおいては、最も小さいワードアドレスサイズから順次ワードアドレスサイズが大きくなる順で、候補となる各上記アクセス形態の種類に対応する任意のワードアドレスでスレーブとしての上記シリアルEEPROMへのリードを試み、上記シリアルEEPROMからエラーが発生しない応答内容が得られるワードアドレスサイズに対応する上記アクセス形態の種類を正しい上記アクセス形態の種類と判定することを特徴としている。
【0019】
上記の発明によれば、ワードアドレスサイズの小さい順にスレーブであるシリアルEEPROMへのリードを試みて、エラーが発生しないときのワードアドレスサイズに対応するアクセス形態の種類を、装着されたシリアルEEPROMのアクセス形態の種類とする。エラーが発生するのは、スレーブであるシリアルEEPROMの本来のワードアドレスサイズより小さいサイズのワードアドレスしか出力されなかった場合である。
【0020】
従って、正しいアクセス形態の種類を判別する途上で、正しいアクセス形態の種類に対応するワードアドレスサイズよりも大きなワードアドレスサイズに対応するアクセス形態の種類によるアクセスによって、既に書き込まれているデータが上書きされてしまうことがなく、シリアルEEPROMのデータが保護された状態でアクセス形態の種類を判別することができる。
【0021】
さらに本発明のメモリ装置の制御方法は、上記課題を解決するために、スレーブとしての上記シリアルEEPROMへのワードアドレス出力後のスタートコンディション出力に続くリード指定スレーブアドレス出力に対して、アクノリッジ信号が上記シリアルEEPROMから所定時間以内に返らなければ上記エラーが発生したと判定することを特徴としている。
【0022】
上記の発明によれば、アクノリッジ信号の所定時間以内での有無によりエラーの発生の有無を判定するので、エラーの発生の有無を容易に判定することができる。
【0023】
さらに本発明のメモリ装置の制御方法は、上記課題を解決するために、正しい上記アクセス形態の種類を判別した後に、ワードアドレスの有効ビット数を確認することを特徴としている。
【0024】
上記の発明によれば、正しいアクセス形態の種類を判別した後に有効なビット数を確認するので、シリアルEEPROMの容量が判明し、シリアルEEPROMを利用する際に正しくアクセスを行うことができる。
【0025】
さらに本発明のメモリ装置の制御方法は、上記課題を解決するために、全スレーブアドレスについてワードアドレスサイズまたはワードアドレスの有効ビット数を判定し、全スレーブアドレスの全容量が所定容量未満であるか、異なるワードアドレスサイズのスレーブが混在しているかの場合に上記シリアルEEPROMの装着エラーと判定して報知することを特徴としている。
【0026】
上記の発明によれば、全スレーブアドレスの全容量が所定容量未満であるか、異なるワードアドレスサイズのスレーブが混在しているかすればシリアルEEPROMの装着エラーであるので、全スレーブアドレスについてのワードアドレスサイズまたはワードアドレスの有効ビット数の判定からこの装着エラーを判定して報知することにより、誤って装着されたシリアルEEPROMの交換を促すことができる。
【0027】
さらに本発明のメモリ装置の制御方法は、上記課題を解決するために、上記所定のアクセスは、スレーブアドレスの有効および無効を判別することにより上記アクセス形態の種類を判別することができるアクセスであることを特徴としている。
【0028】
上記の発明によれば、シリアルEEPROMの差し替えによってワードアドレスで参照できるアドレス空間、すなわち有効なスレーブアドレスも変化するため、所定のアクセスによってスレーブアドレスの有効および無効を判別することによりアクセス形態の種類を判別する。すなわち、指定したスレーブアドレスに対応するデバイスまたはページの存在の有無を判別することにより、アクセス形態の種類を判別する。従って、新たにハードウェアを追加することなくソフトウェアでアクセス形態の種類を判別することが容易になる。
【0029】
さらに本発明のメモリ装置の制御方法は、上記課題を解決するために、上記シリアルEEPROMの待機状態から行われるスタートコンディション出力に続くスレーブアドレス出力に対して、アドレス指定したスレーブからアクノリッジ信号が所定時間以内に返れば上記スレーブアドレスが有効であると判定し、上記所定時間以内に返らなければ上記スレーブアドレスが無効であると判定することを特徴としている。
【0030】
上記の発明によれば、アクノリッジ信号の所定時間以内における有無によってスレーブアドレスの有効および無効を判別するので、有効および無効の判別を容易に行うことができる。
【0031】
さらに本発明のメモリ装置の制御方法は、上記課題を解決するために、上記メモリ装置の起動時に上記アクセス形態の種類の判別を行って判別結果を記憶させ、上記メモリ装置の使用時には上記判別結果に従って上記制御プログラムを有効に設定することを特徴としている。
【0032】
上記の発明によれば、メモリ装置の起動時に得たシリアルEEPROMのアクセス形態の種類の判別結果に従って制御プログラムを有効にするので、シリアルEEPROMにアクセスを行うたびにアクセス形態の種類を判別せずに済む。
【0033】
また、本発明のプログラムは、上記課題を解決するために、前記のいずれかのメモリ装置の制御方法をコンピュータに実行させることを特徴としている。
【0034】
上記の発明によれば、メモリ装置の制御方法を汎用性の高いものとすることができる。
【0035】
また、本発明の記録媒体は、上記課題を解決するために、上記プログラムをコンピュータ読取可能に記録したことを特徴としている。
【0036】
上記の発明によれば、メモリ装置の制御方法を実行させるプログラムをコンピュータに供給しやすくなる。
【0037】
【発明の実施の形態】
本発明の実施の形態について、図1ないし図11を用いて説明すれば、以下の通りである。
【0038】
図2に、本実施の形態に係るメモリ装置を含むコンピュータシステム1の構成を示す。コンピュータシステム1は、CPU2、メモリ装置3、フラッシュROM4、RAM5、およびASIC6を備えている。
【0039】
CPU2はコンピュータシステム1の全体を制御する。メモリ装置3はICバスインタフェース3a、ICバス3b、およびEEPROM3cを備えている。ICバスインタフェース3aはマスタとして、ICバス3bに接続されたICチップであるスレーブとしてのEEPROM3cに対する通信を制御する。(以後、ICバスインタフェース3aをマスタ3aと称する)フラッシュROM4、RAM5、およびASIC6はコンピュータシステム1の動作に必要なICあるいはLSIとして適宜設けられたものである。特に、RAM5は後述するようにEEPROM3cのアクセス形態の種類を判別した結果を、メモリ装置3の動作時に蓄えるようになっている。
【0040】
図3に、EEPROM3cのチップ形態の外観図を示す。EEPROM3cはICバス3bのような2線式のバスに対応したシリアルEEPROMであり、8本のピンを備えている。ピンA・A・AはそれぞれEEPROM3cのデバイスアドレスを決定するため各ビット値に応じた接続が行われるピン、ピンSDAはシリアルデータの入出力が行われるピン、ピンSCLはシリアルクロックが入力されるピン、ピンWPはライトプロテクト用の信号が入力されるピン、ピンVCCは1.8V〜6Vの範囲の電源電圧に接続されるピン、ピンVSSはGNDに接続されるピンである。
【0041】
図4に、上記EEPROM3cの内部構成を示す。前記ピンの名称で各ピンに入力される信号を表すものとすれば、信号SCLおよび信号A・A・Aはステートカウンタ/スレーブアドレス比較回路31に入力される。ステートカウンタ/スレーブアドレス比較回路31はクロック情報をコントロール回路32に送出する。また、信号A・A・Aは前述したように固定であり、コントロール回路32から送られてくる信号SDAに含まれるデバイスアドレスおよびページアドレスを含むスレーブアドレスが内部に備えたスレーブアドレスと一致するか否かを、信号A・A・Aを用いた比較演算を行って確認する。コントロール回路32はスタート/ストップ回路33によって信号SDAのスタートビット、ストップビット、スレーブアドレス、ワードアドレスの各ビット情報を信号SCLのタイミングで取り込ませ、また、スタート/ストップ回路33からスタートビットやストップビットの入力情報を得て、データリードやデータライトを制御する。
【0042】
スタート/ストップ回路33によって取り込まれたワードアドレスはワードアドレスバッファ34に送られ、ワードアドレスバッファ34はワードアドレスをロウとコラムとに分割し、Xデコーダ35がロウのデコードを行い、コラムデコーダ36がコラムのデコードを行う。また、信号WPはコントロール回路32に入力されるようになっており、ライトプロテクトがかかっていないときは、データライトにおいて信号SDAのデータはデータレジスタ37に蓄えられ、データレジスタ37はワードアドレスに従ってデータをEEPROMセルアレイ39に書き込む。同図では、一例としてEEPROMセルアレイ39を128×256または256×256のセルアレイとして図示している。また、書き込みに際してはコントロール回路32の制御により高電圧/タイミングコントロール回路38が高電圧を発生させてデータレジスタ37に送出するようになっている。
【0043】
また、データリードにおいては、コラムデコーダ36がデータの読み出しバッファとなり、コラムデコーダ36は取り込んだデータをセンスアンプ/シフトレジスタ40へ送出し、センスアンプ/シフトレジスタ40はデータの増幅とシリアル化とを行って出力回路41に送出する。出力回路41はこのような読み出されたデータや、マスタとの通信応答に用いられるアクノリッジ信号をコントロール回路32の制御によってICバス3bへ出力する。出力回路41の出力部はオープン・ドレイン出力になっており、外部に設けられた抵抗Rによりプルアップされるようになっている。
【0044】
次に、図5を用いて、メモリ装置3に1バイトアドレスのEEPROM3cを装着した場合のスレーブアドレスについて説明する。
【0045】
図5ではメモリ装置3に1バイトアドレスのEEPROM3cを2つ装着する場合を示しており、それぞれをEEPROM31c・32cとしている。EEPROM31cについてはピンA・A・AはいずれもGNDに接続されており、EEPROM32cについてはピンA・AはいずれもGNDに接続されており、ピンAは電源Vddに接続されている。これにより、EEPROM31cのデバイスアドレスは“0”、EEPROM32cのデバイスアドレスは“4”となる。
【0046】
そして、EEPROM31c・32cは内部にそれぞれ、256×8ビットの容量を1ページ分として4ページ備えている。各ページアドレスは(P,P)=‘00’、‘01’、‘10’、‘11’となる。信号SDAでスレーブアドレスを指定するときには、Aのビットと、A・Aのビットの代わりとしてのP,Pとを指定する。すなわち、信号SDA上でのデバイスアドレスを構成するA・Aは無効となる。これにより、1バイトアドレスのEEPROM3cを装着したメモリ装置3ではスレーブアドレスは000〜111の8通りあることになる。1つのICバスではスレーブアドレスは8通りまでなので、このバスには同種のEEPROMをこれ以上増設できないということになる。
【0047】
次に、図6を用いて、メモリ装置3に2バイトアドレスのEEPROM3cを装着した場合のスレーブアドレスについて説明する。
【0048】
図6では図5の1バイトアドレスのEEPROMを2バイトアドレスのEEPROMに置き換えた場合を示しており、それぞれをEEPROM33c・34cとしている。すなわち、1バイトアドレスのEEPROM3cと2バイトアドレスのEEPROM3cとは互いに同じ箇所に差し替えて装着することができるようになっている。EEPROM33cについてはピンA・A・AはいずれもGNDに接続されており、EEPROM34cについてはピンA・AはいずれもGNDに接続されており、ピンAは電源Vddに接続されている。これにより、EEPROM33cのデバイスアドレスは“0”、EEPROM34cのデバイスアドレスは“4”となる。
【0049】
そして、EEPROM33c・34cは内部にそれぞれ、2k(または4k,8k)×8ビットの容量を備えていてページは備えていない。従って、信号SDAでスレーブアドレスを指定するときには、A・A・Aの各ビットを指定する。これにより、2バイトアドレスのEEPROM3cを装着したメモリ装置3ではスレーブアドレスは100と000との2通りあることになり、その他のスレーブアドレスは無効となる。
【0050】
次に、図7に、上記のメモリ装置3データリードおよびデータライトにおける通信手順を示す。
【0051】
図7(a)は、2バイトアドレスのEEPROM3cに対するランダムリードの手順を示す。マスタ3aから出力された信号SDAでは、スタートビットに続いて1・0・1・0の後にスレーブアドレスがA・A・Aの形態で指定され、その後にライトコマンドが続く。このスレーブアドレスを確認したEEPROM3cはアクノリッジ信号をマスタ3aに返すと、次の1バイトでワードアドレスの上位ビット側の情報(1stワードアドレス)を取り込んでアクノリッジ信号をマスタ3aに返す。そして次の1バイトでワードアドレスの下位ビット側の情報(2ndワードアドレス)を取り込んでアクノリッジ信号をマスタ3aに返す。すると、マスタ3aからスタートビットとそれに続くスレーブアドレスとリードコマンドとが出力される。アクノリッジ信号をマスタ3aに返すと、EEPROM3cは読み出した8ビットのデータをマスタ3aに向けて出力し、ノーアクノリッジとなった後に、マスタ3aはストップビットを出力してランダムリードが終了する。
【0052】
図7(b)は、1バイトアドレスのEEPROM3cに対するランダムリードの手順を示す。マスタ3aから出力された信号SDAでは、スタートビットに続いて1・0・1・0の後にスレーブアドレスがA・P・Pの形態で指定され、その後にライトコマンドが続く。このスレーブアドレスを確認したEEPROM3cはアクノリッジ信号をマスタ3aに返すと、次の1バイトでワードアドレスの情報を取り込んでアクノリッジ信号をマスタ3aに返す。すると、マスタ3aからスタートビットとそれに続くスレーブアドレスとリードコマンドとが出力される。アクノリッジ信号をマスタ3aに返すと、EEPROM3cは読み出した8ビットのデータをマスタ3aに向けて出力し、ノーアクノリッジとなった後に、マスタ3aはストップビットを出力してランダムリードが終了する。
【0053】
図7(c)は、1バイトアドレスのEEPROM3cに対するバイトライトの手順を示す。マスタ3aから出力された信号SDAでは、スタートビットに続いて1・0・1・0の後にスレーブアドレスがA・P・Pの形態で指定され、その後にライトコマンドが続く。このスレーブアドレスを確認したEEPROM3cはアクノリッジ信号をマスタ3aに返すと、次の1バイトでワードアドレスの情報を取り込んでアクノリッジ信号をマスタ3aに返す。すると、EEPROM31cはマスタ3aから出力されたデータを書き込み、アクノリッジ信号をマスタ3aに返すと、マスタ3aがストップビットを出力してバイトライトが終了する。
【0054】
もし、1バイトアドレスのEEPROMに対して図7(a)の2バイトアドレス用のランダムリードを行うと、2ndワードアドレスの送信までが図7(c)の1バイトアドレス用のバイトライトと同じ手順になるため、記憶されているデータが書き替えられるおそれがある。EEPROMが1バイトアドレスか2バイトアドレスか判定する場合には、このような意図しないデータの書き込みが起こらないようにする必要がある。
【0055】
次に、図1を用いて、メモリ装置3に装着されているEEPROM3cのアクセス形態の種類として、1バイトアドレスであるか2バイトアドレスであるかを判別する方法について説明する。
【0056】
まず、スレーブアドレスのループで、取り得る全てのスレーブアドレス(000〜111の8通り)に対して、1バイトアドレスのEEPROM3cに対するランダムリードを試みる。このループでは、マスタ3aはまずS1でスタートビットの出力を行うと、S2で8通りのスレーブアドレスのいずれかをライトコマンドを指定した状態で出力する。S3でアクノリッジ信号が返ってくればS4へ進み、アクノリッジ信号が返ってこなければS11へ進む。アクノリッジ信号が返ってくるのは、例えば図5の場合には全てのスレーブアドレスに対してであり、図6の場合にはスレーブアドレスが‘0’と‘4’とに対してである。これにより、どのスレーブアドレスに対応するEEPROMが存在するかが判る。スレーブアドレスに応答するEEPROMがなければS11へ分岐して、S4以降の1バイトアドレスか2バイトアドレスかの判定処理をスキップすることになる。
【0057】
S4では1バイト分のワードアドレスを任意に出力してアクノリッジ信号が返ってくるのを確認する。S5でスタートビットを出力し、S6でスレーブアドレスをリードコマンドを指定した状態で出力する。続くS7で、アクノリッジ信号が返ってくればS8へ進み、アクノリッジ信号が返ってこなければS13へ進む。S7でアクノリッジ信号が返ってくるのはEEPROM3cが1バイトアドレスのものである場合であり、2バイトアドレスのものである場合にはワードアドレスの下位ビット側に対して上記スタートアドレスとスレーブアドレスとが不適切な情報となるので、アクノリッジ信号は返ってこない。従って、このステップでアクノリッジ信号が返ってくるスレーブは1バイトアドレスのEEPROM3cであり、アクノリッジ信号が返ってこないスレーブは1バイトアドレスのEEPROM3cでないことが分かる。
【0058】
S8では、継続してデータリードを行い、ノーアクノリッジとなったらS9へ進んでストップビットを出力して一定時間待つ。これにより、S10ではEEPROM3cが1バイトアドレスであることを判別し、図2のRAM5にEEPROM3cが1バイトアドレスであることを設定すれば、1つのスレーブアドレスに対する判定が終了する。
【0059】
一方、S3から分岐したS11では、指定したスレーブアドレスが無効であることを設定し、続くS12で一定時間待てば、1つのスレーブアドレスに対する判定が終了する。
【0060】
また、S7から分岐したS13以降では、2バイトアドレスのEEPROM3cに対するランダムリードを試みる。S13で一定時間待った後、S14でスタートビットを出力し、S15でスレーブアドレスをライトコマンドを指定した状態で出力し、アクノリッジ信号が返ってくるのを確認する。S16では1バイト分を用いてワードアドレスの上位ビット側の出力を行ってアクノリッジ信号が返ってくるのを確認し、S17では1バイト分を用いてワードアドレスの下位ビット側の出力を行ってアクノリッジ信号が返ってくるのを確認する。そして、S18でスタートビットを出力し、S19でスレーブアドレスをリードコマンドを指定した状態で出力する。続くS20で、アクノリッジ信号が返ってくればS21へ進み、アクノリッジ信号が返ってこなければS26へ進む。
【0061】
S21ではデータリードを行ってノーアクノリッジとなったら、S22でストップビットを出力して場合によっては一定時間待つ。これにより、S23ではEEPROM3cが2バイトアドレスであることを判別し、図2のRAM5にEEPROM3cが2バイトアドレスであることを設定する。そして、S24でワードアドレスを表すビットにおける有効ビット数を確認し、S25で有効ビット数をRAM5に設定する。S24については後述する。これにより、1つのスレーブアドレスに対する判定が終了する。一方、S20から分岐したS26ではこのメモリ装置3でアクセス形態の種類の候補となっている1バイトアドレスおよび2バイトアドレスのいずれでもないEEPROM3c(例えば故障したEEPROM)が装着されているとして、ワードアドレスサイズが判定不能であることをRAM5に設定する。S26の次にはS12へ進む。いずれにしても、このスレーブアドレスは使用できないので、S26はS11に統合してもよい。
【0062】
こうして8通りのスレーブアドレスの全てについて、上記のようなステップを繰り返し行う。このループの次にはS27へ進み、有効なスレーブアドレスのスレーブの容量の合計が、メモリ装置3に対して必要であると定めた容量に対して不足しているか否かを判定する。容量不足でなければS28へ進み、容量不足であればS30へ進んでEEPROM3cの装着エラーであると判定する。S28では、1バイトアドレスのEEPROM3cと2バイトアドレスのEEPROM3cとが混在しているか否かを判定する。混在していなければS29へ進み、混在していればS30へ進んでEEPROM3cの装着エラーであると判定する。S29ではEEPROM3cの装着は全て正常であると判定する。
【0063】
このようなワードアドレスサイズの判別はメモリ装置3の起動時ごと、すなわちコンピュータシステム1の起動時ごとに行われる。図8に、コンピュータシステム1の起動時におけるワードアドレスサイズの判別のフローを示す。起動したならば、S41ではメモリ装置3にとって必用な記憶容量を指定する。S42では、上述した図1のフローを行ってEEPROM3cの構成を判定する。S43ではS42の結果にエラーがあるか否かを、RAM5への設定結果から判定し、エラーがなければそのままメモリ装置3の通常処理に移行し、エラーがあればS44へ進んでエラー表示を行い、メモリ装置3の使用を停止するようにする。
【0064】
また、図9に、図8の通常処理におけるリード処理のフローを示す。
【0065】
S51でデータを読み出すスレーブアドレスを算出し、S52でワードアドレスサイズが1バイトであるか2バイトであるかを、RAM5の設定から判断する。1バイトであればS53へ進んで1バイトアドレスのEEPROM3cに対するリード処理の制御プログラムを設定してリード処理を行う。2バイトであればS54へ進んで2バイトアドレスのEEPROM3cに対するリード処理の制御プログラムを設定してリード処理を行う。
【0066】
また、図10に、図8の通常処理におけるライト処理のフローを示す。
【0067】
S61でデータを書き込むスレーブアドレスを算出し、S62でワードアドレスサイズが1バイトであるか2バイトであるかを、RAM5の設定から判断する。1バイトであればS63へ進んで1バイトアドレスのEEPROM3cに対するライト処理の制御プログラムを設定してライト処理を行う。2バイトであればS64へ進んで2バイトアドレスのEEPROM3cに対するライト処理の制御プログラムを設定してライト処理を行う。
【0068】
次に、図1のフローチャートのS24で行うワードアドレスの有効ビット数の確認処理について説明する。
【0069】
ワードアドレスの有効ビット数を確認するには、まず、そのスレーブがワードアドレスに使用することのできるビットを用いたときに取り得る最も大きいワードアドレスを指定して所定のデータを格納する。このデータは、実際に使用されている最も大きいワードアドレスに、実際に使用されていない上位ビットを無視した状態で格納されている。従って、スレーブ内に上記データが格納されているワードアドレスを調べれば、そのワードアドレスがスレーブで実際に使用されているワードアドレスの最大値であるから、ワードアドレスの有効ビット数を確認することができる。
【0070】
図11に、この一例を示す。同図(a)はスレーブが2k×8ビットの容量を有しており、同図(b)はスレーブが4k×8ビットの容量を有しており、同図(c)はスレーブが8k×8ビットの容量を有していることを示している。このとき、ライト処理により2バイトアドレスを16進でFFFFHとして所定のデータを書き込んだ場合、同図(a)では07FFHに、同図(b)では0FFFHに、同図(c)では1FFFHに上記所定のデータが格納されることとなる。そして、所定のデータと一致しているデータを探し、このデータが格納されているワードアドレスを求める。2バイトアドレスの場合は有効ビット数は11ビット以上となる。
【0071】
なお、所定のデータのライト処理のときに、取り得る最大のワードアドレス以外にも、実際に使用されているワードアドレスの最大値以上であることが分かっているワードアドレスであれば、そこに所定のデータを格納しても、実際に使用されているワードアドレスの最大値に該データが格納されるので、こちらを利用してもよい。例えば、図11(b)において、指定するワードアドレスが、FFFFH、EFFFH、…、2FFFH、1FFFH、0FFFHのいずれであっても、データは0FFFHに格納される。
【0072】
以上のように、本実施の形態におけるメモリ装置3の制御方法では、メモリ装置3に装着されたEEPROM3cのアクセス形態の種類を、EEPROM3cに1バイトアドレス用のランダムリードという所定のアクセスを行ってEEPROM3cから得られる応答内容に基づいて判別し、アクセス形態の種類の判別結果に従って、予め用意された制御プログラムを有効に設定する。
【0073】
すなわち、ピン配置が同じでアクセス形態の種類が異なるEEPROM3cが同じ箇所に装着されていても、装着されたEEPROM3cに所定のアクセスを行ってどのような応答内容が得られるかによって、アクセス形態の種類を判別する。そして、その判別結果に従って、装着されたEEPROM3cへのアクセスを制御するために予め用意された制御プログラムを有効に設定する。
【0074】
従って、アクセス形態の種類ごとに対応したICバスなどの余分なハードウェアを設けることなく、同じ箇所にピン配置が同じでアクセス形態の異なるEEPROM3cを差し替えるだけで、そのEEPROM3cのアクセス形態の種類を自動的に判別し、制御プログラムをそのEEPROM用の制御プログラムに切り替えることができる。
【0075】
また、上記のようにアクセス形態の種類の判別を行って、その判別結果に基づいてアクセス条件を設定するようにすれば、メモリ装置3、あるいはコンピュータシステム1の製品出荷時にアクセス条件を固定する必要がないので、EEPROM3cの制御プログラムを汎用性のある仕様にすることができ、コストダウンにもつながる。さらに、制御プログラムの設定ミスなどによる不具合が発生する危険性もなくなる。さらに、将来的にEEPROM3cのメモリ拡張が行われても、新たにソフトウェアの対応を行う必要がなくなる。
【0076】
また、本実施の形態では、上記の所定のアクセスは、図1のS7で行ったように、EEPROM3cのワードアドレスサイズを判別することによりアクセス形態の種類を判別することができるアクセスである。従って、新たにハードウェアを追加することなくソフトウェアでアクセス形態の種類を判別することが容易になる。
【0077】
また、本実施の形態では、上記所定のアクセスにおいては、1バイトアドレスのように最も小さいワードアドレスサイズから、次に2バイトアドレスというように順次ワードアドレスサイズが大きくなる順で、候補となる各アクセス形態の種類に対応する任意のワードアドレスでスレーブとしてのEEPROM3cへのリードを試みる。そして、EEPROM3cからエラーが発生しない応答内容、すなわちノーアクノリッジとならずにアクノリッジ信号が返ってくるという応答内容が得られるワードアドレスサイズに対応するアクセス形態の種類を、正しいアクセス形態の種類と判定する。
【0078】
すなわち、ワードアドレスサイズの小さい順にスレーブであるEEPROM3cへのリードを試みて、エラーが発生しないときのワードアドレスサイズに対応するアクセス形態の種類を、装着されたEEPROM3cのアクセス形態の種類とする。エラーが発生するのは、スレーブであるEEPROM3cの本来のワードアドレスサイズより小さいサイズのワードアドレスしか出力されなかった場合である。
【0079】
従って、正しいアクセス形態の種類を判別する途上で、正しいアクセス形態の種類に対応するワードアドレスサイズよりも大きなワードアドレスサイズに対応するアクセス形態の種類によるアクセスによって、既に書き込まれているデータが上書きされてしまうことがなく、EEPROM3cのデータが保護された状態でアクセス形態の種類を判別することができる。
【0080】
また、本実施の形態では、スレーブとしてのEEPROM3cへのワードアドレス出力後のスタートコンディション出力に続くリード指定スレーブアドレス出力に対して、特にアクノリッジ信号がEEPROM3cから所定時間以内に返らなければエラーが発生したと判定するようにしている。このように、アクノリッジ信号の所定時間以内での有無によりエラーの発生の有無を判定するので、エラーの発生の有無を容易に判定することができる。
【0081】
また、本実施の形態では、正しいアクセス形態の種類を判別した後に、ワードアドレスの有効ビット数を確認する。従って、EEPROM3cの容量が判明し、EEPROM3cを利用する際に正しくアクセスを行うことができる。
【0082】
また、本実施の形態では、全スレーブアドレスについてワードアドレスサイズまたはワードアドレスの有効ビット数を判定し、全スレーブアドレスの全容量が所定容量未満であるか、異なるワードアドレスサイズのスレーブが混在しているかの場合にEEPROM3cの装着エラーと判定して報知する。従って、全スレーブアドレスについてのワードアドレスサイズまたはワードアドレスの有効ビット数の判定からこの装着エラーを判定して報知することにより、誤って装着されたシリアルEEPROM3cの交換を促すことができる。
【0083】
また、本実施の形態では、所定のアクセスであるスレーブアドレス出力に対する応答によって、図1のS3で行ったようにスレーブアドレスの有効および無効を判別することによりアクセス形態の種類を判別することができる。
【0084】
このように、EEPROM3cの差し替えによってワードアドレスで参照できるアドレス空間、すなわち有効なスレーブアドレスも変化するため、所定のアクセスによってスレーブアドレスの有効および無効を判別することによりアクセス形態の種類を判別する。すなわち、指定したスレーブアドレスに対応するデバイスまたはページの存在の有無を判別することにより、アクセス形態の種類を判別する。従って、新たにハードウェアを追加することなくソフトウェアでアクセス形態の種類を判別することが容易になる。
【0085】
またこの場合、EEPROM3cの待機状態から行われるスタートコンディション出力に続くスレーブアドレス出力に対して、アドレス指定したスレーブからアクノリッジ信号が所定時間以内に返ればスレーブアドレスが有効であると判定し、所定時間以内に返らなければスレーブアドレスが無効であると判定する。従って、スレーブアドレスの有効および無効の判別を容易に行うことができる。
【0086】
また、本実施の形態では、図8を用いて説明したように、メモリ装置3の起動時にアクセス形態の種類の判別を行って判別結果をRAM5に記憶させ、メモリ装置3の通常使用時には判別結果に従って制御プログラムを有効に設定する。従って、EEPROM3cにアクセスを行うたびにアクセス形態の種類を判別せずに済む。
【0087】
なお、本実施の形態では、メモリ装置3の制御方法は、コンピュータに実行させるためのプログラムによって実現することができる。これにより、メモリ装置3の制御方法を汎用性の高いものとすることができる。また、このプログラムをコンピュータに読み取り可能な記録媒体に格納することもできる。これにより、メモリ装置3の制御方法を実行させるプログラムをコンピュータに供給しやすくなる。
【0088】
この記録媒体としては、マイクロコンピュータで処理が行われるために図2に示したフラッシュROMを初めとするコンピュータシステム1内のメモリそのものがプログラムメディアであってもよいし、また、図示していないが外部記憶装置としてプログラム読み取り装置が設けられ、そこに記録媒体を挿入することで読み取り可能なプログラムメディアであってもよい。
【0089】
いずれの場合においても、格納されているプログラムはマイクロプロセッサがアクセスして実行させる構成であってもよいし、あるいは、いずれの場合もプログラムを読み出し、読み出されたプログラムは、マイクロコンピュータの図示されていないプログラム記憶エリアにダウンロードされて、そのプログラムが実行される方式であってもよい。このダウンロード用のプログラムは予め本体装置に格納されているものとする。
【0090】
ここで、上記プログラムメディアは、本体と分離可能に構成される記録媒体であり、磁気テープやカセットテープ等のテープ系、フロッピーディスクやハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD等の光ディスクのディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)、フラッシュROM等による半導体メモリを含めた固定的にプログラムを担持する媒体であってもよい。
【0091】
また、本実施の形態においては、インターネットを含む通信ネットワークを接続可能なシステム構成であることから、通信ネットワークからプログラムをダウンロードするように流動的にプログラムを担持する媒体であってもよい。なお、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード用のプログラムは予め本体装置に格納しておくか、あるいは別な記録媒体からインストールされるものであってもよい。
【0092】
【発明の効果】
本発明のメモリ装置の制御方法は、以上のように、ピン配置が同じで互いにアクセス形態の種類が異なるシリアルEEPROMを同じ箇所に差し替えて装着することが可能なメモリ装置に対して、装着された上記シリアルEEPROMへのアクセスを制御するための制御プログラムを有効に設定するメモリ装置の制御方法であって、上記メモリ装置に装着された上記シリアルEEPROMの上記アクセス形態の種類を、上記シリアルEEPROMに所定のアクセスを行って上記シリアルEEPROMから得られる応答内容に基づいて判別し、上記アクセス形態の種類の判別結果に従って、予め用意された上記制御プログラムを有効に設定する構成である。
【0093】
それゆえ、余分なハードウェアを設けることなく、同じ箇所にピン配置が同じでアクセス形態の異なるシリアルEEPROMを差し替えるだけで、そのEEPROMのアクセス形態の種類を自動的に判別し、制御プログラムをそのEEPROM用の制御プログラムに切り替えることのできるメモリ装置の制御方法を提供することができるという効果を奏する。
【0094】
また、上記のようにアクセス形態の種類の判別を行って、その判別結果に基づいてアクセス条件を設定するようにすれば、メモリ装置の製品出荷時にアクセス条件を固定する必要がないので、シリアルEEPROMの制御プログラムを汎用性のある仕様にすることができ、コストダウンにもつながるという効果を奏する。さらに、制御プログラムの設定ミスなどによる不具合が発生する危険性もなくなるという効果を奏する。さらに、将来的にシリアルEEPROMのメモリ拡張が行われても、新たにソフトウェアの対応を行う必要がなくなるという効果を奏する。
【0095】
さらに本発明のメモリ装置の制御方法は、以上のように、上記所定のアクセスは、上記シリアルEEPROMのワードアドレスサイズを判別することにより上記アクセス形態の種類を判別することができるアクセスである構成である。
【0096】
それゆえ、新たにハードウェアを追加することなくソフトウェアでアクセス形態の種類を判別することが容易になるという効果を奏する。
【0097】
さらに本発明のメモリ装置の制御方法は、以上のように、上記所定のアクセスにおいては、最も小さいワードアドレスサイズから順次ワードアドレスサイズが大きくなる順で、候補となる各上記アクセス形態の種類に対応する任意のワードアドレスでスレーブとしての上記シリアルEEPROMへのリードを試み、上記シリアルEEPROMからエラーが発生しない応答内容が得られるワードアドレスサイズに対応する上記アクセス形態の種類を正しい上記アクセス形態の種類と判定する構成である。
【0098】
それゆえ、正しいアクセス形態の種類を判別する途上で、正しいアクセス形態の種類に対応するワードアドレスサイズよりも大きなワードアドレスサイズに対応するアクセス形態の種類によるアクセスによって、既に書き込まれているデータが上書きされてしまうことがなく、シリアルEEPROMのデータが保護された状態でアクセス形態の種類を判別することができるという効果を奏する。
【0099】
さらに本発明のメモリ装置の制御方法は、以上のように、スレーブとしての上記シリアルEEPROMへのワードアドレス出力後のスタートコンディション出力に続くリード指定スレーブアドレス出力に対して、アクノリッジ信号が上記シリアルEEPROMから所定時間以内に返らなければ上記エラーが発生したと判定する構成である。
【0100】
それゆえ、エラーの発生の有無を容易に判定することができるという効果を奏する。
【0101】
さらに本発明のメモリ装置の制御方法は、以上のように、正しい上記アクセス形態の種類を判別した後に、ワードアドレスの有効ビット数を確認する構成である。
【0102】
それゆえ、シリアルEEPROMの容量が判明し、シリアルEEPROMを利用する際に正しくアクセスを行うことができるという効果を奏する。
【0103】
さらに本発明のメモリ装置の制御方法は、以上のように、全スレーブアドレスについてワードアドレスサイズまたはワードアドレスの有効ビット数を判定し、全スレーブアドレスの全容量が所定容量未満であるか、異なるワードアドレスサイズのスレーブが混在しているかの場合に上記シリアルEEPROMの装着エラーと判定して報知する構成である。
【0104】
それゆえ、誤って装着されたシリアルEEPROMの交換を促すことができるという効果を奏する。
【0105】
さらに本発明のメモリ装置の制御方法は、以上のように、上記所定のアクセスは、スレーブアドレスの有効および無効を判別することにより上記アクセス形態の種類を判別することができるアクセスである構成である。
【0106】
それゆえ、新たにハードウェアを追加することなくソフトウェアでアクセス形態の種類を判別することが容易になるという効果を奏する。
【0107】
さらに本発明のメモリ装置の制御方法は、以上のように、上記シリアルEEPROMの待機状態から行われるスタートコンディション出力に続くスレーブアドレス出力に対して、アドレス指定したスレーブからアクノリッジ信号が所定時間以内に返れば上記スレーブアドレスが有効であると判定し、上記所定時間以内に返らなければ上記スレーブアドレスが無効であると判定する構成である。
【0108】
それゆえ、スレーブアドレスの有効および無効の判別を容易に行うことができるという効果を奏する。
【0109】
さらに本発明のメモリ装置の制御方法は、以上のように、上記メモリ装置の起動時に上記アクセス形態の種類の判別を行って判別結果を記憶させ、上記メモリ装置の使用時には上記判別結果に従って上記制御プログラムを有効に設定する構成である。
【0110】
それゆえ、シリアルEEPROMにアクセスを行うたびにアクセス形態の種類を判別せずに済むという効果を奏する。
【0111】
また、本発明のプログラムは、以上のように、前記のいずれかのメモリ装置の制御方法をコンピュータに実行させる構成である。
【0112】
それゆえ、メモリ装置の制御方法を汎用性の高いものとすることができるという効果を奏する。
【0113】
また、本発明の記録媒体は、以上のように、上記プログラムをコンピュータ読取可能に記録した構成である。
【0114】
それゆえ、メモリ装置の制御方法を実行させるプログラムをコンピュータに供給しやすくなるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の実施の形態に係るメモリ装置の制御方法を説明するフローチャートである。
【図2】メモリ装置およびそれを備えるコンピュータシステムの構成を示すブロック図である。
【図3】シリアルEEPROMの外観を示す平面図である。
【図4】図3のシリアルEEPROMの内部構成を示すブロック図である。
【図5】1バイトアドレスのシリアルEEPROMのスレーブアドレスを説明するブロック図である。
【図6】2バイトアドレスのシリアルEEPROMのスレーブアドレスを説明するブロック図である。
【図7】(a)ないし(c)は、シリアルEEPROMへのアクセス状態を説明する信号図である。
【図8】メモリ装置の起動時に行う処理を説明するフローチャートである。
【図9】メモリ装置のリード処理を説明するフローチャートである。
【図10】メモリ装置のライト処理を説明するフローチャートである。
【図11】(a)ないし(c)は、シリアルEEPROMの有効ビット数を確認する状態を説明するメモリマップ図である。
【符号の説明】
3   メモリ装置
3c  EEPROM(シリアルEEPROM)
31c、32c、33c、34c
EEPROM(シリアルEEPROM)
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to determining the type of access mode of an EEPROM.
[0002]
[Prior art]
There are roughly two types of control methods for the serial EEPROM, and there are a two-wire type and a three-wire type. Hereinafter, a method of controlling a serial EEPROM by a two-wire system will be briefly described.
[0003]
As an interface used for a method of controlling a serial EEPROM by a two-wire system, 2 There is a C (Inter IC Communication) bus. Currently I 2 Serial EEPROMs compatible with the C bus have the advantages of being small and taking up little space on the board, and having the advantage of being inexpensive, but having eight address bits. 2 Even if eight memories, which are the maximum number of connections on the C bus, are mounted, the maximum memory space is only 16 Kbits.
[0004]
In communication with the serial EEPROM, a chip select signal (A) is used as shown in FIG. 0 , A 1 , A 2 ) Is TRUE, the instruction command, address, and data are continuously transmitted in synchronization with the serial synchronization clock (SCL). In a communication mode according to a normal system design, the bit value of each signal is manipulated by operating an I / O register provided corresponding to CS (chip select signal), SDA (data signal), and SCL (serial clock signal). Operate or set operation commands and addresses such as write and read to one register, and write data when writing data to the register, and output data one bit at a time in synchronization with the clock. ing.
In the case of an EEPROM having an address of 8 bits (hereinafter referred to as 1 byte), the transmission format (when writing data to the EEPROM) is as shown in FIG. In transmission, a unit from a start condition bit to a stop condition bit is one transmission operation unit. After the start of transmission, 8-bit data composed of a slave address and a read / write command bit is transmitted from the host to the EEPROM following the start condition. The second byte is an address and the third byte is data.
[0005]
As described above, when the address is one byte, I 2 The maximum memory space on the C bus is 16K bits. However, since the capacity becomes insufficient in this case, an EEPROM having a capacity exceeding 16K using an address field of 2 bytes has come to be used.
[0006]
Note that there is a parallel EEPROM having a larger capacity than the serial EEPROM and a different pin arrangement. Japanese Patent Laid-Open No. Hei 10-320267 discloses that in order to cope with a shortage of capacity in the course of development and design, a memory system initially configured with a serial EEPROM is switched to a parallel EEPROM in the middle. In such a case, a memory control device and a memory control method have been proposed which enable control by the same software before and after switching.
[0007]
On the other hand, the pin arrangement of the 1-byte address serial EEPROM is exactly the same as that of the 2-byte address serial EEPROM. Therefore, a 1-byte address serial EEPROM and a 2-byte address serial EEPROM can be replaced with each other with respect to the same mounting location or socket due to the design of the memory system. However, since the communication timing is different between the 1-byte address EEPROM and the 2-byte address EEPROM, if it is desired to replace the same mounting part or socket and perform control switching between them, it is necessary to take measures after system design. It will be difficult. For example, at the design stage, even if a shortage of capacity is found in an EEPROM having a 1-byte address and a change is required to the EEPROM having a 2-byte address, it is necessary to design a 2-byte read / write processing method again.
[0008]
Therefore, when the use of both types of serial EEPROMs is switched from one to the other, the following steps can be conventionally considered as a process for switching the programs that control both of them.
(A) As disclosed in Japanese Patent Application Laid-Open No. Hei 10-320267, both types of serial EEPROMs are connected so that they can be distinguished from hardware differences. 2 The C bus is prepared for each of a 1-byte address and a 2-byte address, and it is determined which EEPROM is mounted, and the program is switched according to the determination result.
(B) The person determines that the EEPROM has been replaced, and the person switches or replaces the program according to the type.
[0009]
[Problems to be solved by the invention]
However, in the above method (a), although the EEPROM having the 1-byte address and the EEPROM having the 2-byte address can be used interchangeably with respect to the same mounting location or socket, dedicated EEPROMs for both types are used. I 2 It is necessary to provide a C bus. Therefore, there is a problem that extra hardware must be added.
[0010]
In addition, the method (b) has a problem that, when replacing the EEPROM, it is necessary for a person to replace the BIOS program or to provide a DIP switch in advance and to perform the switching, so that the switching cannot be easily performed.
[0011]
SUMMARY OF THE INVENTION The present invention has been made in view of the above-mentioned conventional problems, and its purpose is to replace a serial EEPROM having the same pin arrangement and a different access form in the same place without providing extra hardware, and An object of the present invention is to provide a control method of a memory device capable of automatically determining the type of access mode of an EEPROM and switching a control program to a control program for the EEPROM, a program therefor, and a recording medium.
[0012]
[Means for Solving the Problems]
In order to solve the above-mentioned problem, a method of controlling a memory device according to the present invention is directed to a memory device in which serial EEPROMs having the same pin arrangement and different access modes can be replaced and mounted in the same place. A method of controlling a memory device for effectively setting a control program for controlling access to the attached serial EEPROM, wherein the type of the access mode of the serial EEPROM attached to the memory device is A predetermined access to the EEPROM is performed to make a determination based on the response content obtained from the serial EEPROM, and the control program prepared in advance is set to be valid according to the determination result of the type of the access mode.
[0013]
According to the above-described invention, even if serial EEPROMs having the same pin arrangement and different access modes are mounted in the same location, what kind of response content can be obtained by performing predetermined access to the mounted serial EEPROM. Then, the type of the access mode is determined. Then, in accordance with the determination result, a control program prepared in advance for controlling access to the attached serial EEPROM is set to be valid.
[0014]
Therefore, by merely replacing a serial EEPROM having the same pin arrangement and a different access mode in the same location without providing extra hardware, the type of the access mode of the EEPROM is automatically determined, and the control program is stored in the EEPROM. A control method of a memory device that can be switched to the control program of the first embodiment.
[0015]
If the type of access is determined as described above and the access condition is set based on the result of the determination, it is not necessary to fix the access condition when the memory device is shipped from the product. Can be made to have versatile specifications, leading to cost reduction. In addition, there is no danger that a malfunction due to a control program setting error or the like will occur. Further, even if memory expansion of the serial EEPROM is performed in the future, it is not necessary to newly cope with software.
[0016]
Further, in order to solve the above-mentioned problem, in the control method of the memory device according to the present invention, the predetermined access is an access that can determine the type of the access mode by determining a word address size of the serial EEPROM. It is characterized by having.
[0017]
According to the above invention, the type of the access mode is determined by determining the word address size of the serial EEPROM by a predetermined access. Therefore, the type of the access mode can be determined by software without newly adding hardware. Becomes easier.
[0018]
In order to solve the above-mentioned problems, the control method of the memory device according to the present invention may be arranged such that, in the predetermined access, each of the candidate access modes in the order from the smallest word address size to the larger word address size is used. Attempt to read from the serial EEPROM as a slave at an arbitrary word address corresponding to the type, and correct the type of the access mode corresponding to the word address size at which a response content without error is obtained from the serial EEPROM. It is characterized in that the type is determined.
[0019]
According to the above invention, reading from the serial EEPROM which is a slave is attempted in the order of ascending word address size, and the type of access mode corresponding to the word address size when no error occurs is changed to the access type of the attached serial EEPROM. The type of form. An error occurs when only a word address having a size smaller than the original word address size of the serial EEPROM serving as a slave is output.
[0020]
Therefore, in the course of determining the type of the correct access mode, the data already written is overwritten by the access using the type of the access mode corresponding to the word address size larger than the word address size corresponding to the type of the correct access mode. Thus, it is possible to determine the type of access mode in a state where the data in the serial EEPROM is protected.
[0021]
Further, in order to solve the above-mentioned problem, the control method of the memory device according to the present invention is arranged so that the acknowledge signal is output to the read designation slave address output following the start condition output after the word address output to the serial EEPROM as a slave. If the error is not returned within a predetermined time from the serial EEPROM, it is determined that the error has occurred.
[0022]
According to the above invention, the presence / absence of an error is determined based on the presence / absence of the acknowledgment signal within a predetermined time, so that the presence / absence of an error can be easily determined.
[0023]
Further, in order to solve the above problem, the control method of the memory device according to the present invention is characterized in that after determining the type of the correct access mode, the number of valid bits of the word address is confirmed.
[0024]
According to the above invention, since the number of valid bits is checked after determining the type of the correct access mode, the capacity of the serial EEPROM is determined, and correct access can be performed when using the serial EEPROM.
[0025]
Furthermore, in order to solve the above problem, the method of controlling a memory device according to the present invention determines a word address size or the number of effective bits of a word address for all slave addresses, and determines whether a total capacity of all slave addresses is less than a predetermined capacity. In the case where slaves having different word address sizes are mixed, a serial EEPROM mounting error is determined and reported.
[0026]
According to the above invention, if the total capacity of all slave addresses is less than the predetermined capacity or if slaves having different word address sizes coexist, it is a serial EEPROM mounting error. By determining and reporting this mounting error from the determination of the size or the number of valid bits of the word address, it is possible to prompt replacement of a serial EEPROM that is incorrectly mounted.
[0027]
Further, in the memory device control method according to the present invention, in order to solve the above problem, the predetermined access is an access that can determine the type of the access mode by determining whether a slave address is valid or invalid. It is characterized by:
[0028]
According to the above invention, the address space that can be referred to by the word address, that is, the valid slave address changes by replacing the serial EEPROM, so that the type of access mode is determined by determining whether the slave address is valid or invalid by a predetermined access. Determine. That is, the type of access mode is determined by determining whether a device or page corresponding to the specified slave address exists. Therefore, it is easy to determine the type of access mode by software without newly adding hardware.
[0029]
Further, in order to solve the above-mentioned problem, the control method of the memory device according to the present invention, in response to a slave address output following a start condition output performed from a standby state of the serial EEPROM, receives an acknowledge signal from an addressed slave for a predetermined time. If it returns within, the slave address is determined to be valid, and if it does not return within the predetermined time, the slave address is determined to be invalid.
[0030]
According to the above invention, the validity / invalidity of the slave address is determined based on the presence / absence of the acknowledgment signal within a predetermined time, so that the validity / invalidity can be easily determined.
[0031]
Further, in order to solve the above-mentioned problem, the method of controlling a memory device according to the present invention determines the type of the access mode at the time of starting the memory device, stores the determination result, and stores the determination result when using the memory device. The control program is set to be effective according to the following.
[0032]
According to the above invention, the control program is validated according to the determination result of the type of the access mode of the serial EEPROM obtained at the time of starting the memory device. Therefore, each time the serial EEPROM is accessed, the type of the access mode is not determined. I'm done.
[0033]
In order to solve the above-mentioned problems, a program according to the present invention causes a computer to execute any one of the above-described methods for controlling a memory device.
[0034]
According to the above invention, the control method of the memory device can be made highly versatile.
[0035]
In order to solve the above-mentioned problems, a recording medium of the present invention is characterized in that the above-mentioned program is recorded in a computer-readable manner.
[0036]
According to the above invention, it becomes easy to supply a computer with a program for executing a control method of a memory device.
[0037]
BEST MODE FOR CARRYING OUT THE INVENTION
Embodiments of the present invention will be described below with reference to FIGS.
[0038]
FIG. 2 shows a configuration of a computer system 1 including the memory device according to the present embodiment. The computer system 1 includes a CPU 2, a memory device 3, a flash ROM 4, a RAM 5, and an ASIC 6.
[0039]
The CPU 2 controls the entire computer system 1. The memory device 3 is I 2 C bus interface 3a, I 2 A C bus 3b and an EEPROM 3c are provided. I 2 The C bus interface 3a serves as a master 2 It controls communication with the EEPROM 3c as a slave, which is an IC chip connected to the C bus 3b. (Hereafter, I 2 The flash ROM 4, RAM 5, and ASIC 6 are appropriately provided as ICs or LSIs required for the operation of the computer system 1. In particular, the RAM 5 stores the result of determining the type of access to the EEPROM 3c when the memory device 3 operates, as described later.
[0040]
FIG. 3 shows an external view of a chip form of the EEPROM 3c. EEPROM3c is I 2 This is a serial EEPROM corresponding to a two-wire bus such as the C bus 3b, and has eight pins. Pin A 0 ・ A 1 ・ A 2 Are pins for connection according to each bit value to determine the device address of the EEPROM 3c, pin SDA is a pin for input / output of serial data, pin SCL is a pin for inputting a serial clock, and pin WP is a write pin. Pin to which signal for protection is input, Pin V CC Is a pin connected to a power supply voltage in the range of 1.8V to 6V, SS Is a pin connected to GND.
[0041]
FIG. 4 shows the internal configuration of the EEPROM 3c. If the signals input to each pin are represented by the names of the pins, the signal SCL and the signal A 0 ・ A 1 ・ A 2 Is input to the state counter / slave address comparison circuit 31. The state counter / slave address comparison circuit 31 sends clock information to the control circuit 32. Also, the signal A 0 ・ A 1 ・ A 2 Is fixed as described above, and determines whether or not a slave address including a device address and a page address included in the signal SDA sent from the control circuit 32 matches a slave address provided internally, by a signal A. 0 ・ A 1 ・ A 2 Confirm by performing a comparison operation using. The control circuit 32 causes the start / stop circuit 33 to take in the bit information of the start bit, stop bit, slave address, and word address of the signal SDA at the timing of the signal SCL. To control data read and data write.
[0042]
The word address fetched by the start / stop circuit 33 is sent to a word address buffer 34. The word address buffer 34 divides the word address into rows and columns, an X decoder 35 decodes a row, and a column decoder 36 decodes a row. Perform column decoding. The signal WP is input to the control circuit 32. When the write protection is not performed, the data of the signal SDA is stored in the data register 37 in the data write, and the data register 37 stores the data in accordance with the word address. Is written into the EEPROM cell array 39. In the figure, as an example, the EEPROM cell array 39 is illustrated as a 128 × 256 or 256 × 256 cell array. At the time of writing, the high voltage / timing control circuit 38 generates a high voltage under the control of the control circuit 32 and sends it to the data register 37.
[0043]
In a data read, the column decoder 36 serves as a data read buffer, and the column decoder 36 sends the captured data to the sense amplifier / shift register 40. The sense amplifier / shift register 40 performs amplification and serialization of the data. And sends it to the output circuit 41. The output circuit 41 outputs such read data and an acknowledge signal used for a communication response with the master under the control of the control circuit 32. 2 Output to C bus 3b. The output of the output circuit 41 is an open-drain output, and is pulled up by a resistor R provided outside.
[0044]
Next, with reference to FIG. 5, a slave address when the EEPROM 3c having a 1-byte address is mounted on the memory device 3 will be described.
[0045]
FIG. 5 shows a case in which two EEPROMs 3c each having a 1-byte address are mounted on the memory device 3, and the EEPROMs 3c and 32c are respectively used. Pin A for EEPROM 31c 0 ・ A 1 ・ A 2 Are connected to GND, and the pin A is connected to the EEPROM 32c. 0 ・ A 1 Are connected to GND, and pin A 2 Is connected to the power supply Vdd. As a result, the device address of the EEPROM 31c becomes "0" and the device address of the EEPROM 32c becomes "4".
[0046]
Each of the EEPROMs 31c and 32c includes four pages each having a capacity of 256 × 8 bits for one page. Each page address is (P 1 , P 0 ) = '00', '01', '10', '11'. When the slave address is specified by the signal SDA, A 2 Bit and A 1 ・ A 0 P as a substitute for the bit of 1 , P 0 And. That is, A which constitutes the device address on the signal SDA 1 ・ A 0 Becomes invalid. As a result, in the memory device 3 in which the EEPROM 3c of the one-byte address is mounted, there are eight slave addresses of 000 to 111. One I 2 Since there are up to eight slave addresses on the C bus, it is not possible to add more EEPROMs of the same type on this bus.
[0047]
Next, a slave address in the case where the 2-byte address EEPROM 3c is mounted on the memory device 3 will be described with reference to FIG.
[0048]
FIG. 6 shows a case where the EEPROM having the 1-byte address in FIG. 5 is replaced with an EEPROM having the 2-byte address, and the EEPROMs 33c and 34c are respectively used. That is, the EEPROM 3c having the 1-byte address and the EEPROM 3c having the 2-byte address can be replaced and mounted in the same place. Pin A for EEPROM 33c 0 ・ A 1 ・ A 2 Are connected to GND, and the pin A is connected to the EEPROM 34c. 0 ・ A 1 Are connected to GND, and pin A 2 Is connected to the power supply Vdd. As a result, the device address of the EEPROM 33c becomes "0" and the device address of the EEPROM 34c becomes "4".
[0049]
Each of the EEPROMs 33c and 34c has a capacity of 2k (or 4k, 8k) × 8 bits and does not have a page. Therefore, when the slave address is specified by the signal SDA, A 2 ・ A 1 ・ A 0 Specify each bit of. As a result, in the memory device 3 in which the EEPROM 3c of the 2-byte address is mounted, there are two types of slave addresses, 100 and 000, and the other slave addresses become invalid.
[0050]
Next, FIG. 7 shows a communication procedure in the data read and data write of the memory device 3 described above.
[0051]
FIG. 7A shows a random read procedure for the EEPROM 3c having a 2-byte address. In the signal SDA output from the master 3a, the slave address is set to A after 1.0.1.0 after the start bit. 2 ・ A 1 ・ A 0 , Followed by a write command. When the EEPROM 3c confirms the slave address and returns an acknowledge signal to the master 3a, the EEPROM 3c fetches information (1st word address) of the upper bit side of the word address in the next 1 byte and returns an acknowledge signal to the master 3a. Then, information of the lower bit side of the word address (2nd word address) is fetched by the next 1 byte, and an acknowledge signal is returned to the master 3a. Then, the master 3a outputs a start bit, a slave address following the start bit, and a read command. When the acknowledge signal is returned to the master 3a, the EEPROM 3c outputs the read 8-bit data to the master 3a. After a no-acknowledge, the master 3a outputs a stop bit and the random read ends.
[0052]
FIG. 7B shows a random read procedure for the EEPROM 3c having a 1-byte address. In the signal SDA output from the master 3a, the slave address is set to A after 1.0.1.0 after the start bit. 2 ・ P 1 ・ P 0 , Followed by a write command. When the EEPROM 3c confirms the slave address and returns an acknowledgment signal to the master 3a, the EEPROM 3c fetches the word address information in the next one byte and returns an acknowledgment signal to the master 3a. Then, the master 3a outputs a start bit, a slave address following the start bit, and a read command. When the acknowledge signal is returned to the master 3a, the EEPROM 3c outputs the read 8-bit data to the master 3a, and after a no-acknowledge, the master 3a outputs a stop bit and the random read ends.
[0053]
FIG. 7C shows a procedure of byte write to the EEPROM 3c of one byte address. In the signal SDA output from the master 3a, the slave address is set to A after 1.0.1.0 after the start bit. 2 ・ P 1 ・ P 0 , Followed by a write command. When the EEPROM 3c confirms the slave address and returns an acknowledgment signal to the master 3a, the EEPROM 3c fetches the word address information in the next one byte and returns an acknowledgment signal to the master 3a. Then, when the EEPROM 31c writes the data output from the master 3a and returns an acknowledge signal to the master 3a, the master 3a outputs a stop bit and the byte write ends.
[0054]
If the 2-byte address random read of FIG. 7A is performed on the 1-byte address EEPROM, the same procedure as that of the 1-byte address byte write of FIG. 7C is performed until the transmission of the second word address. Therefore, stored data may be rewritten. When it is determined whether the EEPROM has a one-byte address or a two-byte address, it is necessary to prevent such unintended data writing.
[0055]
Next, with reference to FIG. 1, a method of determining whether the type of access to the EEPROM 3c attached to the memory device 3 is a one-byte address or a two-byte address will be described.
[0056]
First, in a slave address loop, random reading of the EEPROM 3c of one byte address is attempted for all possible slave addresses (eight ways from 000 to 111). In this loop, the master 3a first outputs a start bit in S1, and outputs one of eight slave addresses in S2 with a write command specified. If the acknowledge signal is returned in S3, the process proceeds to S4, and if the acknowledge signal is not returned, the process proceeds to S11. The acknowledgment signal is returned, for example, for all the slave addresses in the case of FIG. 5, and for the slave addresses '0' and '4' in the case of FIG. This makes it possible to determine which slave address corresponds to the EEPROM. If there is no EEPROM that responds to the slave address, the process branches to S11, and the process of determining whether the address is a one-byte address or a two-byte address after S4 is skipped.
[0057]
In S4, a one-byte word address is arbitrarily output, and it is confirmed that an acknowledge signal is returned. A start bit is output in S5, and a slave address is output in S6 with a read command specified. In S7, if the acknowledge signal is returned, the process proceeds to S8. If the acknowledge signal is not returned, the process proceeds to S13. The acknowledge signal is returned in S7 when the EEPROM 3c has a one-byte address. When the EEPROM 3c has a two-byte address, the start address and the slave address correspond to the lower bits of the word address. An acknowledgment signal is not returned because of inappropriate information. Therefore, it can be understood that the slave that returns the acknowledge signal in this step is the EEPROM 3c of the one-byte address, and the slave that does not return the acknowledge signal is not the EEPROM 3c of the one-byte address.
[0058]
In S8, data read is continuously performed, and if no acknowledge is obtained, the process proceeds to S9, where a stop bit is output and a predetermined time is waited. Thus, in S10, it is determined that the EEPROM 3c has a one-byte address, and if it is set in the RAM 5 of FIG. 2 that the EEPROM 3c has a one-byte address, the determination for one slave address is completed.
[0059]
On the other hand, in S11 branched from S3, it is set that the designated slave address is invalid, and after a certain period of time waiting in S12, the determination for one slave address ends.
[0060]
Further, in S13 and subsequent steps branched from S7, random read is attempted for the EEPROM 3c of the 2-byte address. After waiting for a predetermined time in S13, a start bit is output in S14, a slave address is output in a state where a write command is specified in S15, and it is confirmed that an acknowledge signal is returned. In S16, the upper bit side of the word address is output using one byte, and it is confirmed that the acknowledge signal is returned. In S17, the lower bit side of the word address is output using one byte, and the acknowledgment is performed. Check that the signal returns. Then, a start bit is output in S18, and a slave address is output in S19 with a read command specified. In S20, if an acknowledge signal is returned, the process proceeds to S21. If an acknowledge signal is not returned, the process proceeds to S26.
[0061]
In S21, when the data read is performed and no acknowledgment is obtained, a stop bit is output in S22, and depending on the case, a certain time is waited. Thus, in S23, it is determined that the EEPROM 3c has a 2-byte address, and the fact that the EEPROM 3c has a 2-byte address is set in the RAM 5 of FIG. Then, the number of valid bits in the bits representing the word address is confirmed in S24, and the number of valid bits is set in the RAM 5 in S25. S24 will be described later. Thus, the determination for one slave address ends. On the other hand, in S26 branched from S20, it is determined that an EEPROM 3c (for example, a failed EEPROM) which is neither a 1-byte address nor a 2-byte address which is a candidate for the type of access in the memory device 3 is mounted, and the word address is determined. The fact that the size cannot be determined is set in the RAM 5. After S26, the process proceeds to S12. In any case, since this slave address cannot be used, S26 may be integrated with S11.
[0062]
Thus, the above steps are repeated for all eight slave addresses. After this loop, the process proceeds to S27, and it is determined whether or not the total of the slave capacities of the valid slave addresses is insufficient for the capacity determined to be necessary for the memory device 3. If the capacity is not insufficient, the process proceeds to S28, and if the capacity is insufficient, the process proceeds to S30 to determine that the mounting error of the EEPROM 3c has occurred. In S28, it is determined whether the 1-byte address EEPROM 3c and the 2-byte address EEPROM 3c are mixed. If not, the process proceeds to S29, and if there is, the process proceeds to S30 to determine that the mounting error of the EEPROM 3c has occurred. In S29, it is determined that the mounting of the EEPROM 3c is all normal.
[0063]
Such determination of the word address size is performed every time the memory device 3 is started, that is, every time the computer system 1 is started. FIG. 8 shows a flow of determining the word address size when the computer system 1 is started. If activated, a necessary storage capacity for the memory device 3 is specified in S41. In S42, the configuration of the EEPROM 3c is determined by performing the above-described flow of FIG. In S43, it is determined whether or not there is an error in the result of S42 from the setting result in the RAM 5. If there is no error, the process directly proceeds to the normal processing of the memory device 3, and if there is an error, the process proceeds to S44 to display an error. , The use of the memory device 3 is stopped.
[0064]
FIG. 9 shows a flow of a read process in the normal process of FIG.
[0065]
In step S51, a slave address from which data is read is calculated. In step S52, whether the word address size is 1 byte or 2 bytes is determined from the setting of the RAM 5. If it is one byte, the process proceeds to S53, where a control program for the read process for the EEPROM 3c of the one-byte address is set and the read process is performed. If it is 2 bytes, the process proceeds to S54, where a control program for the read process for the EEPROM 3c of the 2-byte address is set and the read process is performed.
[0066]
FIG. 10 shows a flow of the write process in the normal process of FIG.
[0067]
In S61, a slave address for writing data is calculated, and in S62, whether the word address size is 1 byte or 2 bytes is determined from the setting of the RAM 5. If it is one byte, the process proceeds to S63, where a control program for the write process for the EEPROM 3c of the one-byte address is set and the write process is performed. If it is 2 bytes, the process proceeds to S64, where a control program for the write process for the EEPROM 3c of the 2-byte address is set and the write process is performed.
[0068]
Next, the process of confirming the number of effective bits of the word address performed in S24 of the flowchart of FIG. 1 will be described.
[0069]
In order to confirm the number of valid bits of the word address, first, the slave specifies the largest possible word address when using bits that can be used for the word address, and stores predetermined data. This data is stored in the largest word address that is actually used, ignoring upper bits that are not actually used. Therefore, if the word address where the above data is stored in the slave is checked, since the word address is the maximum value of the word address actually used in the slave, it is possible to confirm the number of effective bits of the word address. it can.
[0070]
FIG. 11 shows this example. FIG. 6A shows that the slave has a capacity of 2 k × 8 bits, FIG. 6B shows that the slave has a capacity of 4 k × 8 bits, and FIG. 6C shows that the slave has a capacity of 8 k × 8 bits. This indicates that the device has an 8-bit capacity. At this time, when the predetermined data is written as FFFFH in the 2-byte address in hexadecimal by the write processing, it is set to 07FFH in FIG. 10A, to 0FFFH in FIG. 10B, and to 1FFFH in FIG. Predetermined data is stored. Then, data matching the predetermined data is searched for, and the word address where the data is stored is obtained. In the case of a 2-byte address, the number of effective bits is 11 bits or more.
[0071]
In addition, at the time of write processing of predetermined data, in addition to the maximum possible word address, if the word address is known to be equal to or more than the maximum value of the actually used word address, the predetermined address is stored there. May be used since the data is stored at the maximum value of the word address actually used. For example, in FIG. 11B, data is stored in 0FFFH even if the designated word address is FFFFH, EFFFH,..., 2FFFH, 1FFFFH, or 0FFFH.
[0072]
As described above, in the control method of the memory device 3 according to the present embodiment, the type of the access mode of the EEPROM 3c mounted on the memory device 3 is changed by performing a predetermined access such as a random read for one byte address to the EEPROM 3c. Then, the control program prepared in advance is set to be valid according to the determination result of the type of the access mode.
[0073]
That is, even if the EEPROMs 3c having the same pin arrangement and different access modes are mounted in the same location, the type of access mode depends on what kind of response is obtained by performing predetermined access to the mounted EEPROM 3c. Is determined. Then, in accordance with the determination result, a control program prepared in advance for controlling access to the mounted EEPROM 3c is set to be valid.
[0074]
Therefore, I corresponding to each type of access mode 2 By simply replacing an EEPROM 3c having the same pin arrangement and a different access mode in the same place without providing extra hardware such as a C bus, the type of the access mode of the EEPROM 3c is automatically determined, and the control program is stored in the EEPROM. Can be switched to a control program.
[0075]
In addition, if the type of the access mode is determined as described above and the access condition is set based on the determination result, it is necessary to fix the access condition when the memory device 3 or the computer system 1 is shipped from the product. Since there is no control program, the control program of the EEPROM 3c can be made to have versatile specifications, which leads to cost reduction. In addition, there is no danger that a malfunction due to a control program setting error or the like will occur. Further, even if the memory of the EEPROM 3c is expanded in the future, it is not necessary to newly deal with software.
[0076]
Further, in the present embodiment, the predetermined access is an access in which the type of the access mode can be determined by determining the word address size of the EEPROM 3c as performed in S7 of FIG. Therefore, it is easy to determine the type of access mode by software without newly adding hardware.
[0077]
Further, in the present embodiment, in the above-mentioned predetermined access, candidate words are sequentially arranged in the order of increasing word address size from the smallest word address size such as a 1-byte address to the next 2-byte address. An attempt is made to read from the EEPROM 3c as a slave at an arbitrary word address corresponding to the type of access mode. Then, the type of the access mode corresponding to the word address size at which the response content in which no error occurs from the EEPROM 3c, that is, the response content in which the acknowledge signal is returned without the no acknowledge is determined as the correct access mode type. .
[0078]
That is, reading from the EEPROM 3c as a slave is attempted in ascending order of the word address size, and the type of access mode corresponding to the word address size when no error occurs is set as the type of access mode of the mounted EEPROM 3c. An error occurs when only a word address having a size smaller than the original word address size of the EEPROM 3c as a slave is output.
[0079]
Therefore, in the course of determining the type of the correct access mode, the data already written is overwritten by the access using the type of the access mode corresponding to the word address size larger than the word address size corresponding to the type of the correct access mode. Thus, the type of access mode can be determined while the data in the EEPROM 3c is protected.
[0080]
Further, in the present embodiment, an error occurs for the read designation slave address output following the start condition output after the word address output to the EEPROM 3c as a slave unless the acknowledge signal is returned from the EEPROM 3c within a predetermined time. Is determined. As described above, the presence / absence of an error is determined based on the presence / absence of the acknowledgment signal within a predetermined time, so that the presence / absence of an error can be easily determined.
[0081]
Further, in the present embodiment, after determining the type of the correct access mode, the number of valid bits of the word address is confirmed. Therefore, the capacity of the EEPROM 3c is determined, and correct access can be performed when using the EEPROM 3c.
[0082]
Further, in this embodiment, the word address size or the number of effective bits of the word address is determined for all the slave addresses, and the total capacity of all the slave addresses is less than the predetermined capacity, or slaves having different word address sizes are mixed. In this case, it is determined that the mounting error of the EEPROM 3c has occurred, and a notification is issued. Therefore, by determining and notifying the mounting error from the determination of the word address size or the number of effective bits of the word address for all slave addresses, replacement of the erroneously mounted serial EEPROM 3c can be prompted.
[0083]
Further, in the present embodiment, the type of the access mode can be determined by determining whether the slave address is valid or invalid as performed in S3 of FIG. 1 based on the response to the slave address output as a predetermined access. .
[0084]
As described above, the address space that can be referred to by the word address, that is, the valid slave address changes by replacing the EEPROM 3c. Therefore, the type of the access mode is determined by determining whether the slave address is valid or invalid by a predetermined access. That is, the type of access mode is determined by determining whether a device or page corresponding to the specified slave address exists. Therefore, it is easy to determine the type of access mode by software without newly adding hardware.
[0085]
Also, in this case, if the acknowledge signal is returned within a predetermined time from the slave specified by the slave address output following the start condition output performed from the standby state of the EEPROM 3c, it is determined that the slave address is valid. Otherwise, it is determined that the slave address is invalid. Therefore, it is possible to easily determine whether the slave address is valid or invalid.
[0086]
Further, in the present embodiment, as described with reference to FIG. 8, the type of the access mode is determined at the time of activation of the memory device 3 and the determination result is stored in the RAM 5, and the determination result is determined during normal use of the memory device 3. Set the control program valid according to. Therefore, it is not necessary to determine the type of the access mode each time the EEPROM 3c is accessed.
[0087]
In the present embodiment, the control method of the memory device 3 can be realized by a program to be executed by a computer. Thereby, the control method of the memory device 3 can be made highly versatile. Further, this program can be stored in a computer-readable recording medium. This makes it easy to supply a computer with a program for executing the control method of the memory device 3.
[0088]
As the recording medium, since the processing is performed by the microcomputer, the memory itself in the computer system 1 such as the flash ROM shown in FIG. 2 may be a program medium, or not shown. A program reading device may be provided as an external storage device, and may be a program medium readable by inserting a recording medium into the program reading device.
[0089]
In any case, the stored program may be configured to be accessed and executed by a microprocessor, or in any case, the program may be read, and the read program may be stored in a microcomputer. The program may be downloaded to a program storage area that is not stored, and the program may be executed. It is assumed that this download program is stored in the main unit in advance.
[0090]
Here, the program medium is a recording medium configured to be separable from the main body, such as a tape system such as a magnetic tape or a cassette tape, a magnetic disk such as a floppy disk or a hard disk, or a CD-ROM / MO / MD / DVD. Disc system of an optical disc, a card system such as an IC card (including a memory card) / optical card, or a mask ROM, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Erasable Programmable Read Only Memory, a semiconductor, etc.) It may be a medium including a memory and fixedly holding a program.
[0091]
Further, in the present embodiment, since the system configuration is such that a communication network including the Internet can be connected, a medium that carries the program in a fluid manner so that the program is downloaded from the communication network may be used. When the program is downloaded from the communication network, the download program may be stored in the main device in advance, or may be installed from another recording medium.
[0092]
【The invention's effect】
As described above, the control method of the memory device according to the present invention is applied to a memory device which can be mounted by replacing serial EEPROMs having the same pin arrangement and different access modes with each other at the same location. A method of controlling a memory device for effectively setting a control program for controlling access to the serial EEPROM, wherein a type of the access mode of the serial EEPROM mounted on the memory device is stored in the serial EEPROM in a predetermined manner. And makes a determination based on the response content obtained from the serial EEPROM, and validates the control program prepared in advance according to the determination result of the type of the access mode.
[0093]
Therefore, by merely replacing a serial EEPROM having the same pin arrangement and a different access mode in the same place without providing extra hardware, the type of the access mode of the EEPROM is automatically determined, and the control program is stored in the EEPROM. And a control method of the memory device that can be switched to the control program for the memory device.
[0094]
If the type of access is determined as described above and the access condition is set based on the result of the determination, it is not necessary to fix the access condition when the memory device is shipped from the product. The control program can be made to have versatile specifications, leading to an effect of reducing costs. Furthermore, there is an effect that there is no danger of occurrence of a malfunction due to a setting mistake of the control program or the like. Furthermore, even if memory expansion of the serial EEPROM is performed in the future, there is an effect that it is not necessary to newly cope with software.
[0095]
Furthermore, the control method of the memory device according to the present invention is configured such that the predetermined access is an access that can determine the type of the access mode by determining the word address size of the serial EEPROM. is there.
[0096]
Therefore, there is an effect that it is easy to determine the type of access mode by software without newly adding hardware.
[0097]
Further, as described above, the control method of the memory device according to the present invention, in the above-mentioned predetermined access, corresponds to each of the above-mentioned candidate access modes in the order of the smallest word address size and sequentially increasing the word address size. Attempt to read the serial EEPROM as a slave at an arbitrary word address, and change the type of the access mode corresponding to the word address size at which a response content that does not cause an error from the serial EEPROM to the correct type of the access mode This is the configuration for determination.
[0098]
Therefore, in the course of determining the type of the correct access mode, the data already written is overwritten by the access using the type of the access mode corresponding to the word address size larger than the word address size corresponding to the correct access mode. Thus, the type of access mode can be determined in a state where the data in the serial EEPROM is protected.
[0099]
Further, as described above, the control method of the memory device according to the present invention is such that the acknowledge signal is output from the serial EEPROM to the read designation slave address output following the start condition output after the word address output to the serial EEPROM as a slave. If it does not return within a predetermined time, it is determined that the error has occurred.
[0100]
Therefore, it is possible to easily determine whether or not an error has occurred.
[0101]
Further, the control method of the memory device according to the present invention has a configuration in which the number of valid bits of the word address is confirmed after the type of the correct access mode is determined as described above.
[0102]
Therefore, the capacity of the serial EEPROM can be determined, and an effect can be obtained that the access can be performed correctly when using the serial EEPROM.
[0103]
Further, the control method of the memory device of the present invention, as described above, determines the word address size or the number of effective bits of the word address for all slave addresses, and determines whether the total capacity of all slave addresses is less than a predetermined capacity or a different word. This is a configuration in which if there is a mixture of slaves of the address size, it is determined that there is an error in mounting the serial EEPROM, and a notification is made.
[0104]
Therefore, there is an effect that it is possible to prompt the exchange of the serial EEPROM which is erroneously mounted.
[0105]
Further, the control method of the memory device according to the present invention is configured such that the predetermined access is an access that can determine the type of the access mode by determining whether the slave address is valid or invalid. .
[0106]
Therefore, there is an effect that it is easy to determine the type of access mode by software without newly adding hardware.
[0107]
Further, as described above, according to the memory device control method of the present invention, in response to the slave address output following the start condition output performed from the standby state of the serial EEPROM, the acknowledge signal is returned from the addressed slave within a predetermined time. For example, the slave address is determined to be valid, and if not returned within the predetermined time, the slave address is determined to be invalid.
[0108]
Therefore, it is possible to easily determine whether the slave address is valid or invalid.
[0109]
Further, as described above, the control method of the memory device according to the present invention performs the type determination of the access mode at the time of starting the memory device, stores the determination result, and controls the control according to the determination result when using the memory device. In this configuration, the program is set to be valid.
[0110]
Therefore, there is an effect that it is not necessary to determine the type of the access mode every time the serial EEPROM is accessed.
[0111]
Further, as described above, the program of the present invention is configured to cause a computer to execute any one of the above-described memory device control methods.
[0112]
Therefore, there is an effect that the control method of the memory device can be made highly versatile.
[0113]
Further, the recording medium of the present invention has a configuration in which the above program is recorded in a computer-readable manner as described above.
[0114]
Therefore, it is possible to easily supply a program for executing the control method of the memory device to the computer.
[Brief description of the drawings]
FIG. 1 is a flowchart illustrating a method for controlling a memory device according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a configuration of a memory device and a computer system including the memory device.
FIG. 3 is a plan view showing the appearance of a serial EEPROM.
FIG. 4 is a block diagram showing an internal configuration of the serial EEPROM of FIG. 3;
FIG. 5 is a block diagram illustrating a slave address of a serial EEPROM having a 1-byte address.
FIG. 6 is a block diagram illustrating a slave address of a 2-byte serial EEPROM.
FIGS. 7A to 7C are signal diagrams illustrating an access state to a serial EEPROM.
FIG. 8 is a flowchart illustrating a process performed when the memory device is activated.
FIG. 9 is a flowchart illustrating a read process of the memory device.
FIG. 10 is a flowchart illustrating a write process of the memory device.
FIGS. 11A to 11C are memory map diagrams for explaining a state in which the number of valid bits of a serial EEPROM is checked.
[Explanation of symbols]
3 Memory device
3c EEPROM (Serial EEPROM)
31c, 32c, 33c, 34c
EEPROM (Serial EEPROM)

Claims (11)

ピン配置が同じで互いにアクセス形態の種類が異なるシリアルEEPROMを同じ箇所に差し替えて装着することが可能なメモリ装置に対して、装着された上記シリアルEEPROMへのアクセスを制御するための制御プログラムを有効に設定するメモリ装置の制御方法であって、
上記メモリ装置に装着された上記シリアルEEPROMの上記アクセス形態の種類を、上記シリアルEEPROMに所定のアクセスを行って上記シリアルEEPROMから得られる応答内容に基づいて判別し、
上記アクセス形態の種類の判別結果に従って、予め用意された上記制御プログラムを有効に設定することを特徴とするメモリ装置の制御方法。
A control program for controlling access to the mounted serial EEPROM is enabled for a memory device in which serial EEPROMs having the same pin arrangement and different access modes can be replaced and mounted in the same location. A method of controlling a memory device to be set to
Determining a type of the access mode of the serial EEPROM mounted on the memory device based on a response content obtained from the serial EEPROM by performing a predetermined access to the serial EEPROM;
A control method for a memory device, wherein the control program prepared in advance is set to be valid according to a result of the determination of the type of the access mode.
上記所定のアクセスは、上記シリアルEEPROMのワードアドレスサイズを判別することにより上記アクセス形態の種類を判別することができるアクセスであることを特徴とする請求項1に記載のメモリ装置の制御方法。2. The method according to claim 1, wherein the predetermined access is an access that can determine a type of the access mode by determining a word address size of the serial EEPROM. 上記所定のアクセスにおいては、最も小さいワードアドレスサイズから順次ワードアドレスサイズが大きくなる順で、候補となる各上記アクセス形態の種類に対応する任意のワードアドレスでスレーブとしての上記シリアルEEPROMへのリードを試み、上記シリアルEEPROMからエラーが発生しない応答内容が得られるワードアドレスサイズに対応する上記アクセス形態の種類を正しい上記アクセス形態の種類と判定することを特徴とする請求項2に記載のメモリ装置の制御方法。In the predetermined access, reading from the serial EEPROM as a slave is performed at an arbitrary word address corresponding to each of the candidate access modes in the order of increasing the word address size from the smallest word address size. 3. The memory device according to claim 2, wherein the type of the access mode corresponding to the word address size at which an error-free response content is obtained from the serial EEPROM is determined as a correct type of the access mode. Control method. スレーブとしての上記シリアルEEPROMへのワードアドレス出力後のスタートコンディション出力に続くリード指定スレーブアドレス出力に対して、アクノリッジ信号が上記シリアルEEPROMから所定時間以内に返らなければ上記エラーが発生したと判定することを特徴とする請求項3に記載のメモリ装置の制御方法。In response to a read designation slave address output following a start condition output after a word address output to the serial EEPROM as a slave, if the acknowledge signal is not returned from the serial EEPROM within a predetermined time, it is determined that the error has occurred. The method according to claim 3, wherein 正しい上記アクセス形態の種類を判別した後に、ワードアドレスの有効ビット数を確認することを特徴とする請求項2ないし4のいずれかに記載のメモリ装置の制御方法。5. The method according to claim 2, wherein the number of effective bits of the word address is confirmed after determining the type of the access mode. 全スレーブアドレスについてワードアドレスサイズまたはワードアドレスの有効ビット数を判定し、全スレーブアドレスの全容量が所定容量未満であるか、異なるワードアドレスサイズのスレーブが混在しているかの場合に上記シリアルEEPROMの装着エラーと判定して報知することを特徴とする請求項2ないし5のいずれかに記載のメモリ制御方法。The word address size or the number of effective bits of the word address is determined for all the slave addresses, and if the total capacity of all the slave addresses is less than the predetermined capacity or if the slaves having different word address sizes are mixed, the serial EEPROM is determined. 6. The memory control method according to claim 2, wherein a mounting error is determined and notified. 上記所定のアクセスは、スレーブアドレスの有効および無効を判別することにより上記アクセス形態の種類を判別することができるアクセスであることを特徴とする請求項1ないし6のいずれかに記載のメモリ装置の制御方法。7. The memory device according to claim 1, wherein the predetermined access is an access that can determine the type of the access mode by determining whether the slave address is valid or invalid. Control method. 上記シリアルEEPROMの待機状態から行われるスタートコンディション出力に続くスレーブアドレス出力に対して、アドレス指定したスレーブからアクノリッジ信号が所定時間以内に返れば上記スレーブアドレスが有効であると判定し、上記所定時間以内に返らなければ上記スレーブアドレスが無効であると判定することを特徴とする請求項7に記載のメモリ装置の制御方法。In response to a slave address output following a start condition output from the standby state of the serial EEPROM, if an acknowledge signal is returned from the addressed slave within a predetermined time, it is determined that the slave address is valid, and the slave address is determined to be valid. 8. The method according to claim 7, wherein if not returned, the slave address is determined to be invalid. 上記メモリ装置の起動時に上記アクセス形態の種類の判別を行って判別結果を記憶させ、上記メモリ装置の使用時には上記判別結果に従って上記制御プログラムを有効に設定することを特徴とする請求項1ないし8のいずれかに記載のメモリ装置の制御方法。9. The method according to claim 1, wherein the type of the access mode is determined at the time of activation of the memory device and the determination result is stored, and the control program is set to be valid according to the determination result when the memory device is used. The method for controlling a memory device according to any one of the above. 請求項1ないし9のいずれかに記載のメモリ装置の制御方法をコンピュータに実行させることを特徴とするプログラム。A program for causing a computer to execute the control method for a memory device according to claim 1. 請求項10に記載のプログラムをコンピュータ読取可能に記録したことを特徴とする記録媒体。A recording medium characterized by recording the program according to claim 10 in a computer-readable manner.
JP2002173127A 2002-06-13 2002-06-13 MEMORY DEVICE CONTROL METHOD, PROGRAM THEREOF, AND RECORDING MEDIUM Expired - Fee Related JP4083474B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002173127A JP4083474B2 (en) 2002-06-13 2002-06-13 MEMORY DEVICE CONTROL METHOD, PROGRAM THEREOF, AND RECORDING MEDIUM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002173127A JP4083474B2 (en) 2002-06-13 2002-06-13 MEMORY DEVICE CONTROL METHOD, PROGRAM THEREOF, AND RECORDING MEDIUM

Publications (2)

Publication Number Publication Date
JP2004021421A true JP2004021421A (en) 2004-01-22
JP4083474B2 JP4083474B2 (en) 2008-04-30

Family

ID=31172507

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002173127A Expired - Fee Related JP4083474B2 (en) 2002-06-13 2002-06-13 MEMORY DEVICE CONTROL METHOD, PROGRAM THEREOF, AND RECORDING MEDIUM

Country Status (1)

Country Link
JP (1) JP4083474B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008122549A (en) * 2006-11-10 2008-05-29 Pentax Corp Interchangeable lens and lens data communication method
KR101014573B1 (en) * 2007-06-21 2011-02-16 주식회사 코아로직 Memory access apparatus, method and computer readable medium recorded with program executing the method
US10708483B2 (en) 2015-07-31 2020-07-07 Sony Semiconductor Solutions Corporation Information processing device and information processing method, solid-state imaging device and solid-state imaging device operation method, program, and electronic apparatus
JP2021018933A (en) * 2019-07-20 2021-02-15 シャープ株式会社 Conversion socket, error insertion detection device, and error insertion detection method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008122549A (en) * 2006-11-10 2008-05-29 Pentax Corp Interchangeable lens and lens data communication method
US8190020B2 (en) 2006-11-10 2012-05-29 Pentax Ricoh Imaging Company, Ltd. Interchangeable lens and lens-data communication method
KR101014573B1 (en) * 2007-06-21 2011-02-16 주식회사 코아로직 Memory access apparatus, method and computer readable medium recorded with program executing the method
US10708483B2 (en) 2015-07-31 2020-07-07 Sony Semiconductor Solutions Corporation Information processing device and information processing method, solid-state imaging device and solid-state imaging device operation method, program, and electronic apparatus
JP2021018933A (en) * 2019-07-20 2021-02-15 シャープ株式会社 Conversion socket, error insertion detection device, and error insertion detection method
JP7273641B2 (en) 2019-07-20 2023-05-15 シャープ株式会社 Conversion socket, erroneous insertion detection device and erroneous insertion detection method

Also Published As

Publication number Publication date
JP4083474B2 (en) 2008-04-30

Similar Documents

Publication Publication Date Title
KR100375217B1 (en) Microcontroller incorporating an electrically rewritable non-volatile memory
CN110032520B (en) System boot code memory management method, memory device and manufacturing method thereof
US8386694B2 (en) Memory device, its access method, and memory system
US6587916B2 (en) Microcomputer with built-in programmable nonvolatile memory
JP2008134736A (en) Electronic equipment
US20040174763A1 (en) Memory subsystem voltage control and method
JPH07271711A (en) Computer system
JPH1153295A (en) Pci bridge
US6820047B1 (en) Method and system for simulating an operation of a memory
JP3943277B2 (en) Microcomputer and electronic equipment
US20030084232A1 (en) Device and method capable of changing codes of micro-controller
JP4083474B2 (en) MEMORY DEVICE CONTROL METHOD, PROGRAM THEREOF, AND RECORDING MEDIUM
US5163135A (en) Computer system and method for setting recovery time upon execution of an I/O command
WO1996038790A1 (en) A system and method for patching microcode during the debugging of a processor
US6889299B1 (en) Semiconductor integrated circuit
JP2006510966A (en) Encapsulation hardware configuration / control
JPH06266614A (en) Memory control method
KR20060087038A (en) Micro controller and rom data program method thereof
JP4324149B2 (en) Emulator and development support system using it
JPH11328089A (en) Id information write circuit in device for pci bus interface
JP3912447B2 (en) Memory system and method of using external nonvolatile memory
KR100384777B1 (en) A built-in self-test circuit for a memory card
JP3405239B2 (en) Initial value setting change device
JPH10247187A (en) One-chip microcomputer
JP2597156Y2 (en) Evaluation microcomputer

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050225

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070424

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070904

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080213

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110222

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120222

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120222

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130222

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees