JP3717813B2 - Data processing device - Google Patents

Data processing device Download PDF

Info

Publication number
JP3717813B2
JP3717813B2 JP2001230107A JP2001230107A JP3717813B2 JP 3717813 B2 JP3717813 B2 JP 3717813B2 JP 2001230107 A JP2001230107 A JP 2001230107A JP 2001230107 A JP2001230107 A JP 2001230107A JP 3717813 B2 JP3717813 B2 JP 3717813B2
Authority
JP
Japan
Prior art keywords
data
register
ecc
correction
selector
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.)
Expired - Fee Related
Application number
JP2001230107A
Other languages
Japanese (ja)
Other versions
JP2003044367A (en
Inventor
政文 松本
Original Assignee
Necマイクロシステム株式会社
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マイクロシステム株式会社 filed Critical Necマイクロシステム株式会社
Priority to JP2001230107A priority Critical patent/JP3717813B2/en
Publication of JP2003044367A publication Critical patent/JP2003044367A/en
Application granted granted Critical
Publication of JP3717813B2 publication Critical patent/JP3717813B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ処理装置に関し、特に、ECC補正処理を含むデータ処理装置に関する。
【0002】
【従来の技術】
近年、外部ユーザーメモリ又は内部ユーザーメモリからのメモリデータをアクセスして、データ処理をするデータ処理装置は、パーソナルコンピュータまたは通信端末などに用いられていることは、衆知である。
【0003】
このような従来技術のデータ処理装置は、例えば、特開平7−56758号公報に開示されている。
【0004】
このような従来技術のデータ処理装置の一構成例を図10に、その動作例のタイミングチャートを図11に示す。
【0005】
図10を参照して、従来技術のデータ処理装置の構成を説明する。
【0006】
従来のデータ処理装置は、図10に示すように、ECC補正回路109を内蔵した外部ユーザーメモリ1と、ECC補正回路110を内蔵した内部ユーザメモリ2と、インストラクション・フェッチ・ユニット3(以下、IFUと略記する)内蔵のCPU4、外部ユーザーメモリ1又は内部ユーザーメモリ2とCPU4のデータアクセスに必要なデータバス5、アドレスバス6を具備し、さらに、外部ユーザーメモリとのアクセスに必要なデータポート7とアドレスポート8とを具備する。
【0007】
次に、図11を参照して、従来技術のデータ処理装置の動作を説明する。
【0008】
まず、従来技術のデータ処理装置では、アドレスバス6を経て送られたアドレス信号により、外部ユーザーメモリ1と内部ユーザーメモリ2のいずれかのアドレスが指定される。
【0009】
次に、アドレス指定された外部ユーザーメモリ1又は内部ユーザーメモリ2は外部ユーザーメモリ1に設けているECC補正回路109又は内部ユーザーメモリ2に設けているECC回路110により、メモリデータの補正検出を行う。
【0010】
外部ユーザーメモリ1に設けるECC補正回路109のECC補正データは、データポート7を経てデータバス5に出力される。また、内部ユーザーメモリ2に設けるECC補正回路110のECC補正データは、データバス5に出力される。
【0011】
次に、データバス5に出力されたECC補正データは、CPU4に内蔵されたIFU3の1stレジスタ15にセットされる。
【0012】
次に、セットされたECC補正データは、図11に示すように、マシンサイクルの進行により、1stレジスタ15から2ndレジスタにセット16され、3rdレジスタ17、4thレジスタ18、5thレジスタ19へと順次セットされていく。
【0013】
最後に、最終段5thレジスタ19にセットされたECC補正データは、インストラクションデコーダ14へ出力され、CPU4にて命令の実行が行われる。
【0014】
なお、ここでは、最終段レジスタ(nthレジスタ)20を5thレジスタ19とした例で説明している。
【0015】
【発明が解決しようとする課題】
しかしながら、従来技術では、外部ユーザーメモリ1又は内部ユーザーメモリ2からメモリデータをアクセスして、データ処理をするデータ処理装置は、外部ユーザーメモリ1に設けられたECC補正回路109又は内部ユーザーメモリ2に設けられたECC補正回路110が補正検出を行ない、補正データがメモリから出力される期間内はメモリデータのアクセスができず、ECC補正に占める時間が大きいため、メモリアクセスサイクルの高速化に限界があった。
【0016】
また、データ処理装置の高性能化及び低価格化は市場からの重要な要求であり、ECC補正回路を、外部ユーザーメモリや内部ユーザーメモリ及びデータバスで必要としないデータ処理装置が必要であった。
すなわち、第1の問題は、外部ユーザーメモリ1又は内部ユーザーメモリ2からメモリデータをアクセスする場合、外部ユーザーメモリ1に設けているECC補正回路109又は内部ユーザーメモリ2に設けているECC補正回路110がデータバス5のマシンサイクルの限られたアクセス期間中にECC補正検出を行なう為、メモリアクセス期間をECC補正時間が圧迫し、本来持っているメモリのアクセス時間でアクセスする事ができない。
【0017】
第2の問題は、特開平7−56758号公報に記載のデータ処理装置のように、EPUにECC補正回路を付加しただけだと、メモリデータのアクセス期間はかぎられており、ECC補正を行なうと、読み出し期間中のECC補正時間でスピードが厳しくなる。また、補正検出を行なうにあたり、メモリデータとチェックビットデータを必要とする為、データバスの本数が大きくなる。
【0018】
例えば、メモリデータバス8本の時、チェックビットデータバスは、4本必要であり、メモリデータバス16本の時、チェックビットデータは、バス5本必要であり、メモリデータバス32本の時、チェックビットデータは、バス6本必要である。従って、このデータ処理装置を半導体集積回路で構成した場合、半導体集積回路のチップ面積が大きくなる。
【0019】
第3の問題は、内部ユーザーメモリ2に設けているECC補正回路110が多くなると、このデータ処理装置を半導体集積回路で構成した場合、半導体集積回路のチップ面積が大きくなる。
【0020】
第4の問題は、外部ユーザーメモリ1に設けているECC補正回路109と内部ユーザーメモリ2に設けているECC補正回路110の補正検出を「使用する、しない」の機能切り替えは、外部ユーザーメモリ1に設けているECC補正回路109と内部ユーザーメモリ2に設けているECC補正回路110で各々セレクト制御の設定を行なわなければならない。
【0021】
第5の問題は、外部ユーザーメモリ1でメモリデータをアクセスする場合、外部ユーザーメモリ1は、ECC補正回路付の高価なメモリを使用しないと、データの信頼性が保証できない。
【0022】
したがって、本発明は、上記の問題に鑑み、これらの問題を解決したデータ処理装置を提供することにある。
【0023】
【課題を解決するための手段】
本発明のデータ処理装置は、外部ユーザーメモリと、内部ユーザメモリと、1stレジスタ、2ndレジスタ、3rdレジスタ及びNthレジスタ(は、4以上の整数)、ECC補正回路およびECC処理選択セレクタを具備するIFUと、インストラクションレジスタとを具備するCPUと、前記外部ユーザーメモリ及び前記内部ユーザーメモリと前記CPUとのデータアクセスに必要なデータバスおよびアドレスバスと、前記外部ユーザーメモリとのアクセスに必要なデータポートとアドレスポートとを備え、前記データバスに出力されたメモリデータは、前記CPUに内蔵された前記IFUの1stレジスタにセットされ、さらに、前記1stレジスタにセットされたメモリデータは、所定のマシンサイクルで1stレジスタから2ndレジスタにシフトされると同時に、予め、外部ユーザーメモリ又は、内部ユーザーメモリにライトされたチェックビットデータを前記1stレジスタにセットし、前記2ndレジスタにセットされたメモリデータは、前記1stレジスタにセットされたチェックビットデータとECC補正回路で補正検出を行ない、ECC処理選択セレクタへ出力され、ECC処理選択セレクタは、ECC補正回路から出力された前記ECC補正データと前記2ndレジスタにセットしていたメモリデータを受け取り、ECC選択信号により、いずれかのデータを前記3rdレジスタに保管する構成である。
【0024】
さらに、本発明のデータ処理装置は、データを一時保管する機能を持ち、ECC処理されたデータを順次保管する2次IFUをECC処理選択セレクタのデータ出力部に具備する構成である。
【0025】
またさらに、本発明のデータ処理装置は、ECC補正処理されたデータを保持する2次IFUおよび3次IFUと、書込み選択回路と、データセレクタとを前記ECC選択セレクタのデータ出力部に具備する構成である。
【0026】
また、本発明のデータ処理装置は、ECC処理選択セレクタから出力されたデータは、書込み選択回路で、2次IFU、3次IFUに書込むか又は直接データセレクタに出力するかの選択を命令の内容を判断して実行する構成である。
【0027】
さらにまた、本発明のデータ処理装置は、割り込み要求1が発生した場合、分岐1で分岐しない補正データAは、2次IFUに保管され、分岐1で分岐する補正データBは、3次IFUに保管され、同時に、補正データBを前記書込み選択回路からデータセレクタに直接出力し、必要な補正データをデータセレクタにて選択し、前記3rdレジスタへ保管する構成である。
【0028】
また、本発明のデータ処理装置は、割り込み要求1の割り込み発生後、割り込み要求2の割り込みが発生し、更に、後続する割り込みが発生した場合、分岐2で分岐する補正データCを前記補正データAと置換して2次IFUに保管し、同時に、前記補正データCを書込み選択回路からデータセレクタに直接出力し、必要な補正データをデータセレクタにて選択して前記第3レジスタへ保管するとともに、前記補正データBを前記Nthレジスタへ順次保管する構成である。
【0029】
また、本発明のデータ処理装置は、前記後続する割り込みで分岐する補正データnを前記補正データBと置換して前記3次IFUに保管し、同時に、前記補正データnを前記書き込み選択回路から前記データセレクタに直接出力し、必要な補正データを前記データセレクタにて選択して前記第3レジスタに保管するとともに、前記補正データB及び補正データCを前記Nthレジスタへ順次保管する構成である。
【0030】
また、本発明のデータ処理装置は、割り込み要求1が発生し、更に割り込み要求2が発生した時で後続する割り込み要求がない場合、分岐1で分岐しない補正データAは2次IFUに保管され、分岐1で分岐する補正データBは3次IFUに保管されるとともに、分岐2で分岐した補正データCは前記書き込み選択回路から前記データセレクタに直接出力し、必要な補正データを前記データセレクタにて選択して前記3rdレジスタへ保管する構成である。
【0031】
また、本発明のデータ処理装置は、外部ユーザーメモリと内部ユーザーメモリとのDMA(ダイナミックメモリアクセス)と、前記DMAを制御するDMAコントローラを具備する構成である。
【0032】
さらに、本発明のデータ処理装置は、前記CPUのデータ出力部にECCチェックビット生成回路とデータセレクタを具備する構成である。
【0033】
さらにまた、本発明のデータ処理装置は、内部ユーザメモリの入力側にECCチェックビット生成回路を具備する構成である。
【0034】
【発明の実施の形態】
次に、図面を参照しながら、本発明の実施の形態を以下に詳述する。
【0035】
本発明の特徴は、複数の外部ユーザーメモリと複数の内部ユーザーメモリに設けるECC補正回路をCPU内に内蔵したECC補正回路で、一括してECC補正を行なうデータ処理装置である。この装置により、このデータ処理装置を半導体集積回路で構成した場合、その半導体集積回路のチップ面積を縮小し、安価なメモリを使用しても高速で信頼性の高いメモリアクセスを実現する事ができる。
【0036】
図1は、本発明の第1の実施の形態のデータ処理装置の構成図である。図1を参照すると、本発明の第1の実施の形態のデータ処理装置は、外部ユーザーメモリ1と内部ユーザメモリ2と、CPU4と、外部ユーザーメモリ1及び内部ユーザーメモリ2とCPU4とのデータアクセスに必要なデータバス5およびアドレスバス6と、外部ユーザーメモリ1とのアクセスに必要なデータポート7とアドレスポート8を備える。
【0037】
さらに、本発明の第1の実施の形態のデータ処理装置のCPU4は、1stレジスタ乃至5thレジスタ(15,16,17,18,19)、ECC補正回路11およびECC処理選択セレクタ12を具備するIFU3と、インストラクションレジスタ14とを備える。
【0038】
以降の各実施の形態の説明において、外部ユーザーメモリ1及び内部ユーザーメモリ2と、各1個ずつしか示していないが、実際は1個以上の複数個存在している事を示している。
【0039】
また、IFU3においては、実際には複数個のレジスタが存在しているが、以降の各実施の形態の説明では、説明の便宜上、5thレジスタまでを有するものとする。
【0040】
次に、本発明の第1の実施の形態のデータ処理装置の動作について、図2を参照して、説明する。
【0041】
本発明の第1の実施の形態のデータ処理装置では、まず、アドレスバス6を経て送られたアドレス信号で外部ユーザーメモリ1と内部ユーザーメモリ2のいずれかのアドレスが指定される。
【0042】
次に、指定されたアドレスのメモリデータはデータバス5へ出力される。
【0043】
そして次に、データバス5に出力されたメモリデータは、CPU4に内蔵されたIFU3の1stレジスタ15にセットされる。
【0044】
さらに、1stレジスタ15にセットされたメモリデータは、図2に示すように、マシンサイクル2で1stレジスタから2ndレジスタ16にシフトされる。その時、予め、外部ユーザーメモリ1又は、内部ユーザーメモリ2にライトされたチェックビットデータを1stレジスタ15にセットする。
【0045】
次に、2ndレジスタ16にセットされたメモリデータは、1stレジスタ15にセットされたチェックビットデータとECC補正回路11で補正検出を行ない、ECC処理選択セレクタ12へ出力される。
【0046】
次に、ECC処理選択セレクタ12は、ECC補正回路11から出力されたECC補正データと2ndレジスタ16にセットしていたメモリデータを受け取り、ECC選択信号13により、いずれかのデータを3rdレジスタ17にセットする。
【0047】
最後に、3rdレジスタ17にセットされたECC処理選択レジスタ12の出力は、マシンサイクルの進行とともに4thレジスタ18および5thレジスタへ19セットされ、インストラクションレジスタ14へと出力されCPU4で命令の実行を行なう。
【0048】
次に、本発明の第2の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【0049】
図3は、本発明の第2の実施の形態のデータ処理装置の構成図である。図3を参照すると、本発明の第2の実施の形態のデータ処理装置は、本発明の第1の実施の形態のデータ処理装置に、さらに、2次IFUをECC選択セレクタ12のデータ出力部に具備する。この2次IFUは、データを一時保管しておく機能を持ち、ECC処理されたデータを順次保管する機能を有する。
【0050】
次に、本発明の第2の実施の形態のデータ処理装置の動作について説明する。
【0051】
まず、本発明の第2の実施の形態のデータ処理装置では、アドレスバス6を経て送られたアドレス信号で外部ユーザーメモリ1と内部ユーザーメモリ2のいずれかのアドレスが指定される。
【0052】
次に、外部ユーザーメモリ1又は内部ユーザーメモリ2内の指定されたアドレスのメモリデータはデータバス5へ出力される。
【0053】
さらに、データバス5に出力されたメモリデータは、CPU4に内蔵されたIFU3の1stレジスタにセットされる。
【0054】
そして、1stレジスタにセットされたメモリデータは、図2に示すように、マシンサイクル2で1stレジスタから2ndレジスタにシフトされる。
【0055】
その時、予め外部ユーザーメモリ1又は、内部ユーザーメモリ2にライトされたチェックビットデータを1stレジスタにセットする。
【0056】
次に、2ndレジスタにセットされたメモリデータは、1stレジスタにセットされたチェックビットデータとECC補正回路11で補正検出を行ない、ECC処理選択セレクタ12へ出力される。
【0057】
さらに、ECC処理選択セレクタ12は、ECC補正回路11から出力されたECC補正データと2ndレジスタにセットしていたメモリデータを受け取り、ECC選択信号13によりECC補正データまたは2ndレジスタのメモリデータを、図2のECC選択セレクタ12までのタイミングチャートのように順次、2次IFUに随時蓄積していく。
【0058】
2次IFUからデータを読み出す際は、図9のタイミングチャートのように1マシンサイクル毎に3rdレジスタに出力し、1マシンサイクル毎に4th、5thレジスタへデータをシフトし、インストラクションレジスタ14へ出力する。
【0059】
以上の説明より、本発明の第2の実施の形態のデータ処理装置によれば、ECC補正処理を行なったデータを順次2次IFUへ保管する事により、必要に応じてECC補正処理済のデータを読み出す事ができ、ECC処理に依存することなく、CPUの命令の実行を行なう事ができる。
【0060】
次に、本発明の第3の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【0061】
図4は、本発明の第3の実施の形態のデータ処理装置の構成図であり、図8は、データ処理のフローチャートを示す。
【0062】
図4を参照すると、本発明の第3の実施の形態のデータ処理装置は、本発明の第1の実施の形態のデータ処理装置に、さらに、2次IFU43と3次IFU44と書込み選択回路42をECC選択セレクタ12のデータ出力部に具備し、データセレクタ45を付加したものである。
【0063】
2次IFU43および3次IFU44は、ECC補正処理されたデータを保持する機能を有する。
【0064】
次に、本発明の第3の実施の形態のデータ処理装置の動作について説明する。
【0065】
本発明の第3の実施の形態のデータ処理装置では、まず、アドレスバス6を経て送られたアドレス信号で外部ユーザーメモリ1と内部ユーザーメモリ2のいずれかのアドレスが指定される。
【0066】
次に、指定されたアドレスのメモリデータはデータバス5へ出力される。
【0067】
そして次に、データバス5に出力されたメモリデータは、CPU4に内蔵されたIFU3の1stレジスタにセットされる。
【0068】
さらに、1stレジスタにセットされたメモリデータは、図2に示すように、マシンサイクル2で1stレジスタから2ndレジスタにシフトされる。その時、予め、外部ユーザーメモリ1又は、内部ユーザーメモリ2にライトされたチェックビットデータを1stレジスタにセットする。
【0069】
次に、2ndレジスタにセットされたメモリデータは、1stレジスタにセットされたチェックビットデータとECC補正回路11で補正検出を行ない、ECC処理選択セレクタ12へ出力される。
【0070】
次に、ECC処理選択セレクタ12は、ECC補正回路11から出力されたECC補正データと2ndレジスタにセットしていたメモリデータを受け取り、ECC選択信号13により、いずれかのデータが選択され、ECC処理選択セレクタ12から出力される。
【0071】
次に、ECC処理選択セレクタ12から出力されたデータは、書込み選択回路42で、2次IFU、3次IFUに書込むか又は直接データセレクタ45に出力するかの選択を命令の内容を判断して実行する。
【0072】
この処理を図4および図8を参照して、詳細に説明する。
【0073】
まず、(a)割り込み要求1が発生した場合、分岐1で分岐しない(NO)補正データAは、2次IFUに保管され、分岐1で分岐する(YES)補正テ゛ータBは、3次IFUに保管される。
【0074】
同時に、補正データBを書込み選択回路42からデータセレクタ45に直接出力し、必要な補正データをデータセレクタ45にて選択し、3,4,5thレジスタへ順次保管する。
【0075】
次に、(b)割り込み要求1の割り込みが発生し、更に、割込み要求2の割り込み要求が発生した場合、分岐2で分岐しない(NO)補正データBは、既に3次IFUに保管している為、分岐2で分岐する(YES)補正データCを2次IFUに順次保管する(2次IFUに書込まれた補正データAは消去される)。
【0076】
同時に、補正データCを書込み選択回路42からデータセレクタ45に直接出力し、必要な補正データをデータセレクタ45にて選択し、3,4,5thレ
ジスタへ順次保管する。
【0077】
次に、(c)割り込み要求2の割り込みが発生し、更に割り込み要求nの割り込みが発生した場合、分岐nで分岐しない(NO)補正データCは、既に2次IFUに保管している為、分岐nで分岐する(YES)補正データnを3次IFUに順次保管する(3次IFUに書込まれていた補正データBは消去される)。
【0078】
同時に、補正データnを書込み選択回路42からデータセレクタ45に直接出力し、必要な補正データをデータセレクタ45にて選択し、3,4,5thレジスタへ順次保管する。
【0079】
(d)割り込み要求1が発生し、更に割り込み要求2が発生した時で、割り込み要求nがない場合、2次IFUの補正データAは消去されず、分岐2で分岐した(YES)補正データCは、書込み選択回路42からデータセレクタ45に直接出力し、必要な補正データをデータセレクタ45にて選択し、3,4,5thレジスタへ順次保管する。
【0080】
この場合、分岐2で分岐した(YES)補正データCの処理が終了し、メインルーチンに戻ってきた時処理される補正データAと補正データBは、再度メモリデータを読み直し、ECC補正をする必要がない。
【0081】
そして、2次IFU,3次IFUで一時保管されたデータとECC処理選択セレクタから直接送られたデータは、データセレクタ45により、CPU4の命令実行に必要なデータを3rdレジスタにセットする。
【0082】
その後、マシンサイクルの進行とともに、4th,5thレジスタへセットされ、インストラクションレジスタ14へと出力されCPU4で命令の実行を行なう。
【0083】
したがって、本発明の第3の実施の形態のデータ処理装置によれば、本発明の第1の実施の形態のデータ処理装置で示した発明の効果及び、本発明の第2の実施の形態のデータ処理装置に示した発明の効果に加え、分岐しないデータと分岐するのデータのECC処理済の両データを、命令の内容を予め判断し、2次IFU及び3次IFUに保管しておく事ができ、データバスの負荷をより軽減でき、処理スピードを向上させる事ができる。
【0084】
次に、本発明の第4の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【0085】
図5は、本発明の第4の実施の形態のデータ処理装置の構成図である。
【0086】
図5を参照すると、本発明の第4の実施の形態のデータ処理装置は、外部ユーザーメモリ1と内部ユーザーメモリ2とのDMA(ダイナミックメモリアクセス)実行時の構成であり、DMAを制御するDMAコントローラ51を具備する以外は、本発明の第1の実施の形態のデータ処理装置と同じ構成要素を有している。同一構成要素には、同一参照符号を付し、構成の詳細な説明は省略する。
【0087】
次に、本発明の第4の実施の形態のデータ処理装置の動作について説明する。
【0088】
本発明の第4の実施の形態のデータ処理装置では、CPU4にて、DMAの実行指示がDMAコントローラ51に送られる。DMAコントローラ51は、外部ユーザーメモリ1のアドレスを指定し、内部ユーザーメモリ2にデータ転送を行なう。
【0089】
次に、DMAコントローラ51は、あらかじめ内部ユーザーメモリ2に、メモリデータが転送されるよう設定されており、転送はCPU4を介さず、外部ユーザーメモリ1から内部ユーザーメモリ2へ直接転送される。
【0090】
さらに、必要なメモリデータが転送された後、CPU4は内部ユーザーメモリのアドレスを指定し、アドレスバス6を経て内部ユーザーメモリ2のいずれかのアドレスが指定される。
【0091】
そして、指定されたアドレスのメモリデータはデータバス5へ出力される。
【0092】
さらに、データバス5に出力されたメモリデータは、CPU4に内蔵されたIFU3の1stレジスタにセットされ、1stレジスタにセットされたメモリデータは、図2のタイミングチャートのように、マシンサイクル2で1stレジスタから2ndレジスタにシフトされる。
【0093】
その時、予め、内部ユーザーメモリ2にライトされたチェックビットデータを1stレジスタにセットする。
【0094】
次に、2ndレジスタにセットされたメモリデータは、1stレジスタにセットされたチェックビットデータとECC補正回路11で補正検出を行ない、ECC処理選択セレクタ12へ出力される。
【0095】
さらに、ECC処理選択セレクタ12は、ECC補正回路11から出力されたECC補正データと2ndレジスタにセットしていたメモリデータを受け取り、ECC選択信号13によりいずれかのデータを3rdレジスタにセットし、3rdレジスタにセットされたECC処理選択レジスタ12の出力はマシンサイクルの進行とともに4th、5thレジスタへセットされ、インストラクションレジスタ14へと出力されCPU4で命令の実行を行なう。
【0096】
本発明の第4の実施の形態のデータ処理装置によれば、CPU4は、DMA転送時に関わる命令実行は行なわない為、DMA転送中においても、CPU動作は可能であり、内部ユーザーメモリ2にCPU4の命令実行に関わるデータが書き込まれしだい、予め必要なデータを先読みし、ECC補正を行なったデータをCPU4で命令の実行をさせる事ができる。
【0097】
次に、本発明の第5の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【0098】
図6は、本発明の第5の実施の形態のデータ処理装置の構成図である。
【0099】
図6を参照すると、本発明の第5の実施の形態のデータ処理装置は、CPU4のデータ出力部にECCチェックビット生成回路63とデータセレクタ62を具備する以外は、本発明の第1の実施の形態のデータ処理装置と同じ構成要素を有している。同一構成要素には、同一参照符号を付し、その構成の詳細な説明は省略する。
【0100】
次に、本発明の第5の実施の形態のデータ処理装置の動作について説明する。
【0101】
本発明の第5の実施の形態のデータ処理装置では、外部ユーザーメモリ1と内部ユーザーメモリ2のデータ読み出しからCPU4の命令実行までは、本発明の第1の実施の形態のデータ処理装置の同一である。
【0102】
したがって、CPU4の命令実行後のECCチェックビット生成と外部ユーザーメモリ1及び外部ユーザーメモリ2に書き込むまでの動作を説明する。
【0103】
本発明の第5の実施の形態のデータ処理装置では、演算処理されたデータは、ECCチェックビット生成回路63に入力され、チェックビット生成回路63は、演算処理データを元にECC補正で必要なチェックビットデータを生成する。すなわち、CPU演算処理データが8bitの時、チェックビットデータは4bitが生成され、CPU演算処理データが16bitの時、チェックビットデータは5bitが生成され、CPU演算処理データが32bitの時、チェックビットデータは6bitが生成される。
【0104】
次に、チェックビットデータは、外部ユーザーメモリ1又は内部ユーザーメモリ2に書き込み指示がある場合のみ、データセレクタ62でデータバス5への出力を制御する。
さらに、データバス5に出力されたチェックビットデータは、内部ユーザーメモリ2又は外部ユーザーメモリ1に書き込まれる。
【0105】
また、DMAを使用する場合は、一旦、内部ユーザーメ モリ2に書き込まれた後、DMAにより直接外部に転送される。
【0106】
ECC補正を行う場合、補正用のチェックビットデータが必要であり、特開平7−56758号公報に記載の従来のデータ処理装置では、バス制御部に設けていたが、本発明の第5の実施の形態のデータ処理装置によれば、CPU4の出力部にECCチェックビット生成回路63を付加することにより、CPUで命令を実行したデータは全てチェックビットデータを生成させる事ができ、ECCチェックビット生成から補正検出を一貫して行なう事ができる。
【0107】
次に、本発明の第6の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【0108】
図7は、本発明の第6の実施の形態のデータ処理装置の構成図である。
【0109】
図7を参照すると、本発明の第6の実施の形態のデータ処理装置は、内部ユーザメモリ2の入力側にECCチェックビット生成回路71を具備する以外は、本発明の第1の実施の形態のデータ処理装置と同じ構成要素を有している。同一構成要素には、同一参照符号を付し、その構成の詳細な説明は省略する。
【0110】
次に、本発明の第6の実施の形態のデータ処理装置の動作について説明する。
【0111】
本発明の第6の実施の形態のデータ処理装置では、外部ユーザーメモリ1と内部ユーザーメモリ2のデータ読み出しからCPU4の命令実行までは、本発明の第1の実施の形態のデータ処理装置と同一であるため、CPU4の命令実行後、外部ユーザーメモリ1及び外部ユーザーメモリ2に書き込むまでの動作を説明する。
【0112】
本発明の第6の実施の形態のデータ処理装置では、内部ユーザーメモリ2に書き込むためのアドレスがCPU4にて指定される。
【0113】
次に、指定されたアドレスを元に、CPU4より出力されたデータは、データバス5を経てECCチェックビット生成回路71に送られ、ECCチェックビット生成回路71は、CPU出力データを元にチェックビットデータを生成する。具体的には、CPU演算処理データが8bitの時、チェックビットデータは4bitが生成され、CPU演算処理データが16bitの時、チェックビットデータは5bitが生成され、CPU演算処理データが32bitの時、チェックビットデータは6bitが生成される。
【0114】
そして、CPU出力データとチェックビット生成データは、内部ユーザーメモリ2に書き込まれる。
【0115】
一方、外部ユーザーメモリ1に書き込む場合、本発明の第4の実施の形態のデータ処理装置のように、DMAにより内部ユーザーメモリ2から外部ユーザーメモリ1に書き込まれるが、チェックビットデータを外部ユーザーメモリ1に書込むか書込まないかは、外部ユーザーメモリ1のチェックビット生成回路の有無により変わる為、制御する必要がある。
【0116】
上記の説明のように、本発明の第6の実施の形態のデータ処理装置では、ECC補正を行う場合、チェックビットデータが必要であり、メモリのデータ入力部にECCチェックビット生成回路71を具備することにより、チェックビットデータを生成することができる。
【0117】
【発明の効果】
以上説明した通り、本発明による第1の効果は、外部ユーザーメモリ1又は内部ユーザーメモリ2からメモリデータをアクセスする時、外部ユーザーメモリ1又は内部ユーザーメモリ2は、読み出し時にECC補正処理を行なわない為、メモリデータアクセスの限られたマシンサイクル期間中は、ECC補正時間を省いたメモリアクセスができ、本来メモリが持っているメモリアクセススピードを出す事ができる。
【0118】
本発明による第2の効果は、従来技術のように、内部ユーザーメモリ2に設けているECC補正回路回路10を設ける必要がなくなり半導体集積回路のチップ面積を縮小する事ができる。
【0119】
特に、内部ユーザーメモリ2の数が多くなるほど効果は大きくなる。さらに、ECC付きの外部ユーザーメモリを使用しなくても良い為、安価なメモリが使用できる。
【0120】
本発明による第3の効果は、特開平7−56758号公報に記載のように、バス制御部にチェックビット生成回路を設け、CPUにECC補正回路を設けると、プロセッサバスのビット幅が多くなり、チップサイズが大きくなるが、(例:メモリデータバス8本の時、チェックビットデータバス4本必要。メモリデータバス16本の時、チェックビットデータバス5本必要。メモリデータバス32本の時、チェックビットデータバス6本必要)本発明の第1の実施の形態のデータ処理装置では、内部ユーザーメモリ2からメモリデータとチェックビットデータを分割して転送する為、データバス数はメモリデータ数の幅のみで実現できるので、本発明はチップサイズに影響を与えない。
【0121】
本発明による第4の効果は、図3の外部ユーザーメモリ1のECC補正回路9と内部ユーザーメモリ2のECC補正回路10内に設けているECC補正データを「使用する、しない」の機能切り替えを、図1のECC補正回路11に設ける事により、各々セレクト制御設定をせずに済み、容易に切り替えが可能となる。
【0122】
本発明による第5の効果は、外部ユーザーメモリ1でメモリデータをアクセスする場合、ECCなしの外部ユーザーメモリ1を使用しても、CPU内部でECC補正を行なう事ができる為、信頼性の高いデータ処理を実現できる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態のデータ処理装置のブロック図である。
【図2】図1に示す本発明の第1の実施の形態のデータ処理装置の動作を説明するタイムチャートである。
【図3】本発明の第2の実施の形態のデータ処理装置のブロック図である。
【図4】本発明の第3の実施の形態のデータ処理装置のブロック図である。
【図5】本発明の第4の実施の形態のデータ処理装置のブロック図である。
【図6】本発明の第5の実施の形態のデータ処理装置のブロック図である。
【図7】本発明の第6の実施の形態のデータ処理装置のブロック図である。
【図8】分岐命令のフローチャートである。
【図9】図3に示す本発明の第2の実施の形態のデータ処理装置の動作を説明するタイムチャートである。
【図10】従来のデータ処理装置のブロック図である。
【図11】従来のデータ処理装置の動作を説明するタイムチャートである。
【符号の説明】
1 外部ユーザーメモリ
2 内部ユーザーメモリ
3 IFU
4 CPU
5 データバス
6 アドレスバス
7 データポート
8 アドレスポート
11 ECC補正回路
12 ECC処理選択セレクタ
13 ECCデータ選択信号
14 インストラクションレジスタ
15 1stレジスタ
16 2ndレジスタ
17 3rdレジスタ
18 4thレジスタ
19 5thレジスタ
20 nthレジスタ
21 ECC補正回路およびECC処理選択セレクタレジスタ
31 2次IFU
42 書き込み選択回路
43 2次IFU
44 3次IFU
45 データセレクタ
51 DMAコントローラ
52,53 DMAバス
62 データセレクタ
63,71 ECCチェックビット生成回路
109,110 ECC補正回路
S11〜S23 ステップ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data processing apparatus, and more particularly to a data processing apparatus including ECC correction processing.
[0002]
[Prior art]
In recent years, it is well known that data processing apparatuses that access memory data from an external user memory or internal user memory and perform data processing are used in personal computers or communication terminals.
[0003]
Such a conventional data processing apparatus is disclosed in, for example, Japanese Patent Laid-Open No. 7-56758.
[0004]
FIG. 10 shows a configuration example of such a conventional data processing apparatus, and FIG. 11 shows a timing chart of an operation example thereof.
[0005]
With reference to FIG. 10, the configuration of a data processing apparatus of the prior art will be described.
[0006]
As shown in FIG. 10, the conventional data processing apparatus includes an external user memory 1 having an ECC correction circuit 109, an internal user memory 2 having an ECC correction circuit 110, and an instruction fetch unit 3 (hereinafter referred to as IFU). The internal CPU 4, the external user memory 1 or the internal user memory 2, a data bus 5 necessary for data access of the CPU 4, and an address bus 6, and a data port 7 required for access to the external user memory And an address port 8.
[0007]
Next, the operation of the conventional data processing apparatus will be described with reference to FIG.
[0008]
First, in the conventional data processing apparatus, the address of either the external user memory 1 or the internal user memory 2 is designated by the address signal sent via the address bus 6.
[0009]
Next, the addressed external user memory 1 or internal user memory 2 detects correction of memory data by the ECC correction circuit 109 provided in the external user memory 1 or the ECC circuit 110 provided in the internal user memory 2. .
[0010]
The ECC correction data of the ECC correction circuit 109 provided in the external user memory 1 is output to the data bus 5 via the data port 7. The ECC correction data of the ECC correction circuit 110 provided in the internal user memory 2 is output to the data bus 5.
[0011]
Next, the ECC correction data output to the data bus 5 is set in the 1st register 15 of the IFU 3 built in the CPU 4.
[0012]
Next, as shown in FIG. 11, the set ECC correction data is set 16 from the 1st register 15 to the 2nd register as the machine cycle progresses, and sequentially set to the 3rd register 17, the 4th register 18, and the 5th register 19. It will be done.
[0013]
Finally, the ECC correction data set in the final stage 5th register 19 is output to the instruction decoder 14 and the CPU 4 executes the instruction.
[0014]
Here, an example in which the last stage register (nth register) 20 is the 5th register 19 is described.
[0015]
[Problems to be solved by the invention]
However, in the prior art, a data processing device that accesses memory data from the external user memory 1 or the internal user memory 2 and performs data processing is connected to the ECC correction circuit 109 or the internal user memory 2 provided in the external user memory 1. The provided ECC correction circuit 110 performs correction detection, and the memory data cannot be accessed during the period in which the correction data is output from the memory, and the time taken for the ECC correction is large. Therefore, there is a limit to speeding up the memory access cycle. there were.
[0016]
Further, high performance and low price of the data processing device are important demands from the market, and a data processing device that does not require the ECC correction circuit in the external user memory, the internal user memory, and the data bus is required. .
That is, the first problem is that when memory data is accessed from the external user memory 1 or the internal user memory 2, the ECC correction circuit 109 provided in the external user memory 1 or the ECC correction circuit 110 provided in the internal user memory 2. However, since the ECC correction is detected during the limited access period of the machine cycle of the data bus 5, the ECC correction time is squeezed during the memory access period, and the access cannot be performed with the memory access time originally possessed.
[0017]
The second problem is that if an ECC correction circuit is added to the EPU as in the data processing apparatus described in Japanese Patent Laid-Open No. 7-56758, the memory data access period is limited, and ECC correction is performed. Then, the speed becomes severe in the ECC correction time during the reading period. Further, since memory data and check bit data are required for correction detection, the number of data buses is increased.
[0018]
For example, when there are eight memory data buses, four check bit data buses are required. When there are sixteen memory data buses, five check bit data are required and when there are 32 memory data buses, Check bit data requires six buses. Therefore, when this data processing apparatus is constituted by a semiconductor integrated circuit, the chip area of the semiconductor integrated circuit becomes large.
[0019]
A third problem is that if the number of ECC correction circuits 110 provided in the internal user memory 2 increases, the chip area of the semiconductor integrated circuit increases when this data processing device is configured by a semiconductor integrated circuit.
[0020]
The fourth problem is that the function switching of “use / do not use” correction detection of the ECC correction circuit 109 provided in the external user memory 1 and the ECC correction circuit 110 provided in the internal user memory 2 is performed in the external user memory 1. The ECC correction circuit 109 provided in the internal user memory 2 and the ECC correction circuit 110 provided in the internal user memory 2 must be set for selection control.
[0021]
A fifth problem is that when accessing the memory data in the external user memory 1, the external user memory 1 cannot guarantee the data reliability unless an expensive memory with an ECC correction circuit is used.
[0022]
Therefore, in view of the above problems, the present invention is to provide a data processing apparatus that solves these problems.
[0023]
[Means for Solving the Problems]
A data processing apparatus of the present invention includes an external user memory, an internal user memory, and a 1st register2nd register, 3rd register and Nth register (NIs4 or more), An IFU having an ECC correction circuit and an ECC processing selection selector, a CPU having an instruction register, a data bus and an address necessary for data access to the external user memory, the internal user memory and the CPU A data port and an address port necessary for accessing the bus and the external user memory, and the memory data output to the data bus is set in a 1st register of the IFU built in the CPU; The memory data set in the 1st register is shifted from the 1st register to the 2nd register in a predetermined machine cycle, and at the same time, the check bit data written in the external user memory or the internal user memory is stored in advance.SaidSet to 1st register,SaidThe memory data set in the 2nd register isSaidCorrection is detected by the check bit data set in the 1st register and the ECC correction circuit, and output to the ECC processing selection selector. The ECC processing selection selector is output from the ECC correction circuit.SaidECC correction data andSaidThe memory data set in the 2nd register is received, and any data is received by the ECC selection signal.3rdRegisterStorageIt is the structure to do.
[0024]
Furthermore, the data processing apparatus of the present invention has a function of temporarily storing data, and includes a secondary IFU that sequentially stores ECC processed data in the data output unit of the ECC processing selection selector.
[0025]
Furthermore, the data processing apparatus of the present invention includes a secondary IFU and a tertiary IFU that hold data subjected to ECC correction processing, a write selection circuit, and a data selector in the data output unit of the ECC selection selector. It is.
[0026]
The data processing apparatus according to the present invention selects whether the data output from the ECC processing selection selector is to be written in the secondary IFU, tertiary IFU, or directly output to the data selector by the write selection circuit. It is the structure which judges and performs the content.
[0027]
Furthermore, the data processing apparatus of the present invention does not branch at branch 1 when interrupt request 1 occurs.SupplementPositive data A is stored in the secondary IFU and branches at branch 1ComplementThe positive data B is stored in the tertiary IFU and the correction data B isSaidWrite selection timesRoadOutput directly to the data selector, select the necessary correction data with the data selector,3rdregisterHeoIt is the structure to pipe.
[0028]
In addition, the data processing apparatus of the present invention provides an interrupt request 1 interrupt.After the occurrence, an interrupt of interrupt request 2 occurs, and further interrupts occurIf so, branch at branch 2ComplementPositive data CReplace with the correction data ASecondary IFUStored inat the same time,SaidThe correction data C is directly output from the write selection circuit to the data selector, and the necessary correction data is selected by the data selector.And storing the correction data B in the Nth registerIn this configuration, the data is sequentially stored in registers.
[0029]
The data processing apparatus of the present inventionThe correction data n branched by the subsequent interrupt is replaced with the correction data B and stored in the tertiary IFU. At the same time, the correction data n is directly output from the write selection circuit to the data selector, and necessary correction is performed. Data is selected by the data selector and stored in the third register, and the correction data B and correction data C are sequentially stored in the Nth register.This is a configuration.
[0030]
In addition, the data processing apparatus of the present invention is configured so that when an interrupt request 1 is generated and an interrupt request 2 is further generated,FollowInterrupt requiredWantedIf not,Correction data A that does not branch in branch 1 is stored in the secondary IFU, correction data B that branches in branch 1 is stored in the tertiary IFU,Branch at branch 2ComplementPositive data C is obtained from the write selection circuit.SaidOutput directly to the data selector to provide the necessary correction dataSaidSelect with the data selectorIn this configuration, the data is stored in the 3rd register.
[0031]
The data processing apparatus according to the present invention includes a DMA (dynamic memory access) between an external user memory and an internal user memory, and a DMA controller that controls the DMA.
[0032]
Furthermore, the data processing apparatus of the present invention is configured to include an ECC check bit generation circuit and a data selector in the data output unit of the CPU.
[0033]
Furthermore, the data processing apparatus of the present invention is configured to include an ECC check bit generation circuit on the input side of the internal user memory.
[0034]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described in detail below with reference to the drawings.
[0035]
A feature of the present invention is a data processing apparatus that performs ECC correction collectively with an ECC correction circuit having an ECC correction circuit provided in a plurality of external user memories and a plurality of internal user memories built in the CPU. With this device, when this data processing device is constituted by a semiconductor integrated circuit, the chip area of the semiconductor integrated circuit can be reduced, and high-speed and reliable memory access can be realized even if an inexpensive memory is used. .
[0036]
FIG. 1 is a configuration diagram of a data processing apparatus according to the first embodiment of this invention. Referring to FIG. 1, the data processing apparatus according to the first embodiment of the present invention includes an external user memory 1, an internal user memory 2, a CPU 4, a data access between the external user memory 1, the internal user memory 2, and the CPU 4. The data bus 5 and the address bus 6 necessary for the access, and the data port 7 and the address port 8 necessary for accessing the external user memory 1 are provided.
[0037]
Further, the CPU 4 of the data processing apparatus according to the first embodiment of the present invention includes an IFU 3 including a 1st register to a 5th register (15, 16, 17, 18, 19), an ECC correction circuit 11, and an ECC processing selection selector 12. And an instruction register 14.
[0038]
In the following description of each embodiment, only one external user memory 1 and one internal user memory 2 are shown, but it is shown that there are actually one or more.
[0039]
In the IFU 3, there are actually a plurality of registers. However, in the following description of each embodiment, it is assumed that the registers have up to 5th registers for convenience of explanation.
[0040]
Next, the operation of the data processing apparatus according to the first embodiment of this invention will be described with reference to FIG.
[0041]
In the data processing apparatus according to the first embodiment of the present invention, first, the address of either the external user memory 1 or the internal user memory 2 is designated by an address signal sent via the address bus 6.
[0042]
Next, the memory data at the designated address is output to the data bus 5.
[0043]
Then, the memory data output to the data bus 5 is set in the 1st register 15 of the IFU 3 built in the CPU 4.
[0044]
Further, the memory data set in the 1st register 15 is shifted from the 1st register to the 2nd register 16 in the machine cycle 2 as shown in FIG. At that time, the check bit data written in advance in the external user memory 1 or the internal user memory 2 is set in the 1st register 15.
[0045]
Next, the memory data set in the 2nd register 16 is corrected and detected by the check bit data set in the 1st register 15 and the ECC correction circuit 11 and output to the ECC processing selection selector 12.
[0046]
Next, the ECC processing selection selector 12 receives the ECC correction data output from the ECC correction circuit 11 and the memory data set in the 2nd register 16, and either data is input to the 3rd register 17 by the ECC selection signal 13. set.
[0047]
Finally, the output of the ECC processing selection register 12 set in the 3rd register 17 is set to 19 in the 4th register 18 and the 5th register as the machine cycle proceeds, and is output to the instruction register 14 so that the CPU 4 executes the instruction.
[0048]
Next, a data processing apparatus according to a second embodiment of the present invention will be described in detail with reference to the drawings.
[0049]
FIG. 3 is a configuration diagram of the data processing apparatus according to the second embodiment of this invention. Referring to FIG. 3, the data processing apparatus according to the second embodiment of the present invention further adds a secondary IFU to the data output unit of the ECC selection selector 12 in the data processing apparatus according to the first embodiment of the present invention. It comprises. The secondary IFU has a function of temporarily storing data, and a function of sequentially storing ECC processed data.
[0050]
Next, the operation of the data processing apparatus according to the second embodiment of the present invention will be described.
[0051]
First, in the data processing apparatus according to the second embodiment of the present invention, the address of either the external user memory 1 or the internal user memory 2 is designated by the address signal sent via the address bus 6.
[0052]
Next, the memory data of the designated address in the external user memory 1 or the internal user memory 2 is output to the data bus 5.
[0053]
Further, the memory data output to the data bus 5 is set in the 1st register of the IFU 3 built in the CPU 4.
[0054]
The memory data set in the 1st register is shifted from the 1st register to the 2nd register in machine cycle 2 as shown in FIG.
[0055]
At that time, check bit data previously written in the external user memory 1 or the internal user memory 2 is set in the 1st register.
[0056]
Next, the memory data set in the 2nd register is corrected and detected by the check bit data set in the 1st register and the ECC correction circuit 11 and output to the ECC processing selection selector 12.
[0057]
Further, the ECC processing selection selector 12 receives the ECC correction data output from the ECC correction circuit 11 and the memory data set in the 2nd register, and the ECC selection signal 13 receives the ECC correction data or the memory data in the 2nd register. As shown in the timing chart up to the second ECC selection selector 12, data is sequentially stored in the secondary IFU.
[0058]
When reading data from the secondary IFU, as shown in the timing chart of FIG. 9, the data is output to the 3rd register every machine cycle, and the data is shifted to the 4th and 5th registers every machine cycle and output to the instruction register 14. .
[0059]
As described above, according to the data processing apparatus of the second embodiment of the present invention, the data subjected to the ECC correction processing is stored in the secondary IFU sequentially, so that the data subjected to the ECC correction processing as necessary. The CPU instruction can be executed without depending on the ECC processing.
[0060]
Next, a data processing apparatus according to a third embodiment of the present invention will be described in detail with reference to the drawings.
[0061]
FIG. 4 is a configuration diagram of a data processing apparatus according to the third embodiment of this invention, and FIG. 8 shows a flowchart of data processing.
[0062]
Referring to FIG. 4, the data processing apparatus according to the third embodiment of the present invention further includes a secondary IFU 43, a tertiary IFU 44, and a write selection circuit 42 in addition to the data processing apparatus according to the first embodiment of the present invention. Are provided in the data output section of the ECC selection selector 12 and a data selector 45 is added.
[0063]
The secondary IFU 43 and the tertiary IFU 44 have a function of holding data subjected to ECC correction processing.
[0064]
Next, the operation of the data processing apparatus according to the third embodiment of the present invention will be described.
[0065]
In the data processing apparatus according to the third embodiment of the present invention, first, the address of either the external user memory 1 or the internal user memory 2 is designated by the address signal sent via the address bus 6.
[0066]
Next, the memory data at the designated address is output to the data bus 5.
[0067]
Then, the memory data output to the data bus 5 is set in the 1st register of the IFU 3 built in the CPU 4.
[0068]
Further, the memory data set in the 1st register is shifted from the 1st register to the 2nd register in machine cycle 2 as shown in FIG. At that time, the check bit data written in advance to the external user memory 1 or the internal user memory 2 is set in the 1st register.
[0069]
Next, the memory data set in the 2nd register is corrected and detected by the check bit data set in the 1st register and the ECC correction circuit 11 and output to the ECC processing selection selector 12.
[0070]
Next, the ECC processing selection selector 12 receives the ECC correction data output from the ECC correction circuit 11 and the memory data set in the 2nd register, and any data is selected by the ECC selection signal 13, and the ECC processing is performed. Output from the selector 12.
[0071]
Next, the data output from the ECC processing selection selector 12 is determined by the write selection circuit 42 to determine whether to write to the secondary IFU, tertiary IFU, or directly output to the data selector 45. And execute.
[0072]
This process will be described in detail with reference to FIG. 4 and FIG.
[0073]
First, (a) when interrupt request 1 occurs, correction data A that does not branch at branch 1 (NO) is stored in the secondary IFU, and correction data B that branches at branch 1 (YES) is corrected to the tertiary IFU. Stored.
[0074]
At the same time, the correction data B is directly output from the write selection circuit 42 to the data selector 45, the necessary correction data is selected by the data selector 45, and sequentially stored in the 3, 4 and 5th registers.
[0075]
Next, (b) when an interrupt of interrupt request 1 occurs and further an interrupt request of interrupt request 2 occurs, the correction data B that does not branch at branch 2 (NO) is already stored in the tertiary IFU. Therefore, the correction data C branched at branch 2 (YES) is sequentially stored in the secondary IFU (the correction data A written in the secondary IFU is deleted).
[0076]
At the same time, the correction data C is directly output from the write selection circuit 42 to the data selector 45, the necessary correction data is selected by the data selector 45, and the 3, 4, 5th level is selected.
Store sequentially in Jister.
[0077]
Next, (c) when the interrupt of interrupt request 2 occurs, and when the interrupt of interrupt request n occurs, the correction data C that does not branch at branch n is already stored in the secondary IFU. Correction data n branched at branch n (YES) is sequentially stored in the tertiary IFU (correction data B written in the tertiary IFU is erased).
[0078]
At the same time, the correction data n is directly output from the write selection circuit 42 to the data selector 45, the necessary correction data is selected by the data selector 45, and sequentially stored in the 3, 4 and 5th registers.
[0079]
(D) When interrupt request 1 is generated and interrupt request 2 is generated and there is no interrupt request n, the correction data A of the secondary IFU is not erased and the correction data C branched at branch 2 (YES) Is directly output from the write selection circuit 42 to the data selector 45, the necessary correction data is selected by the data selector 45, and sequentially stored in the 3, 4 and 5th registers.
[0080]
In this case, the correction data A and correction data B that are processed when the processing of the correction data C branched at branch 2 (YES) is completed and returned to the main routine need to read the memory data again and perform ECC correction. There is no.
[0081]
The data temporarily stored in the secondary IFU and tertiary IFU and the data sent directly from the ECC processing selection selector are set by the data selector 45 in the 3rd register with data necessary for the CPU 4 to execute an instruction.
[0082]
Thereafter, as the machine cycle progresses, the 4th and 5th registers are set, output to the instruction register 14, and the CPU 4 executes the instructions.
[0083]
Therefore, according to the data processing apparatus of the third embodiment of the present invention, the effects of the invention shown in the data processing apparatus of the first embodiment of the present invention and the effects of the second embodiment of the present invention. In addition to the effects of the invention shown in the data processing apparatus, both the data that has not been branched and the ECC-processed data of the branched data that have been subjected to ECC processing are determined in advance and stored in the secondary IFU and the tertiary IFU. It is possible to reduce the load on the data bus and improve the processing speed.
[0084]
Next, a data processing apparatus according to a fourth embodiment of the present invention will be described in detail with reference to the drawings.
[0085]
FIG. 5 is a configuration diagram of a data processing apparatus according to the fourth embodiment of this invention.
[0086]
Referring to FIG. 5, the data processing apparatus according to the fourth embodiment of the present invention has a configuration at the time of executing DMA (dynamic memory access) between the external user memory 1 and the internal user memory 2, and a DMA for controlling the DMA. Except for having the controller 51, it has the same components as the data processing apparatus of the first embodiment of the present invention. The same components are denoted by the same reference numerals, and detailed description of the configuration is omitted.
[0087]
Next, the operation of the data processing apparatus according to the fourth embodiment of the present invention will be described.
[0088]
In the data processing apparatus according to the fourth embodiment of the present invention, the CPU 4 sends a DMA execution instruction to the DMA controller 51. The DMA controller 51 designates the address of the external user memory 1 and transfers data to the internal user memory 2.
[0089]
Next, the DMA controller 51 is set in advance so that the memory data is transferred to the internal user memory 2, and the transfer is directly transferred from the external user memory 1 to the internal user memory 2 without going through the CPU 4.
[0090]
Further, after the necessary memory data is transferred, the CPU 4 designates the address of the internal user memory, and any address of the internal user memory 2 is designated via the address bus 6.
[0091]
Then, the memory data at the designated address is output to the data bus 5.
[0092]
Further, the memory data output to the data bus 5 is set in the 1st register of the IFU 3 built in the CPU 4, and the memory data set in the 1st register is 1st in the machine cycle 2 as shown in the timing chart of FIG. Shift from register to 2nd register.
[0093]
At that time, the check bit data written in the internal user memory 2 in advance is set in the 1st register.
[0094]
Next, the memory data set in the 2nd register is corrected and detected by the check bit data set in the 1st register and the ECC correction circuit 11 and output to the ECC processing selection selector 12.
[0095]
Further, the ECC processing selection selector 12 receives the ECC correction data output from the ECC correction circuit 11 and the memory data set in the 2nd register, sets one of the data in the 3rd register by the ECC selection signal 13, and 3rd The output of the ECC processing selection register 12 set in the register is set in the 4th and 5th registers as the machine cycle proceeds, and is output to the instruction register 14 where the CPU 4 executes the instruction.
[0096]
According to the data processing apparatus of the fourth embodiment of the present invention, the CPU 4 does not execute instructions related to the DMA transfer. Therefore, the CPU operation is possible even during the DMA transfer. As soon as data relating to the execution of the instruction is written, the CPU 4 can pre-read necessary data and execute the instruction on the data subjected to the ECC correction by the CPU 4.
[0097]
Next, a data processing apparatus according to a fifth embodiment of the present invention will be described in detail with reference to the drawings.
[0098]
FIG. 6 is a configuration diagram of a data processing apparatus according to the fifth embodiment of this invention.
[0099]
Referring to FIG. 6, the data processing apparatus according to the fifth embodiment of the present invention is the first embodiment of the present invention except that the data output unit of the CPU 4 includes an ECC check bit generation circuit 63 and a data selector 62. It has the same component as the data processing apparatus of the form. The same reference numerals are assigned to the same components, and detailed description of the configuration is omitted.
[0100]
Next, the operation of the data processing apparatus according to the fifth embodiment of the present invention will be described.
[0101]
In the data processing apparatus according to the fifth embodiment of the present invention, from the data reading of the external user memory 1 and the internal user memory 2 to the execution of the instruction of the CPU 4, the same as the data processing apparatus of the first embodiment of the present invention. It is.
[0102]
Therefore, an operation from generation of an ECC check bit after execution of an instruction of the CPU 4 and writing to the external user memory 1 and the external user memory 2 will be described.
[0103]
In the data processing apparatus according to the fifth embodiment of the present invention, the arithmetically processed data is input to the ECC check bit generation circuit 63, and the check bit generation circuit 63 is necessary for ECC correction based on the arithmetic processing data. Generate check bit data. That is, when the CPU arithmetic processing data is 8 bits, the check bit data is 4 bits, when the CPU arithmetic processing data is 16 bits, the check bit data is 5 bits, and when the CPU arithmetic processing data is 32 bits, the check bit data 6 bits are generated.
[0104]
Next, the check bit data is controlled to be output to the data bus 5 by the data selector 62 only when there is a write instruction to the external user memory 1 or the internal user memory 2.
Further, the check bit data output to the data bus 5 is written into the internal user memory 2 or the external user memory 1.
[0105]
When DMA is used, it is once written in the internal user memory 2 and then directly transferred to the outside by DMA.
[0106]
When performing ECC correction, check bit data for correction is required. In the conventional data processing apparatus described in Japanese Patent Laid-Open No. 7-56758, which is provided in the bus control unit, the fifth embodiment of the present invention is implemented. According to the data processing apparatus of this form, by adding the ECC check bit generation circuit 63 to the output unit of the CPU 4, all data executed by the CPU can generate check bit data, and ECC check bit generation Correction detection can be performed consistently.
[0107]
Next, a data processing apparatus according to a sixth embodiment of the present invention will be described in detail with reference to the drawings.
[0108]
FIG. 7 is a configuration diagram of a data processing apparatus according to the sixth embodiment of this invention.
[0109]
Referring to FIG. 7, the data processing apparatus according to the sixth embodiment of the present invention is the first embodiment of the present invention except that the ECC check bit generation circuit 71 is provided on the input side of the internal user memory 2. It has the same components as the data processing apparatus. The same reference numerals are assigned to the same components, and detailed description of the configuration is omitted.
[0110]
Next, the operation of the data processing apparatus according to the sixth embodiment of the present invention will be described.
[0111]
The data processing apparatus according to the sixth embodiment of the present invention is the same as the data processing apparatus according to the first embodiment of the present invention from the data reading of the external user memory 1 and the internal user memory 2 to the instruction execution of the CPU 4. Therefore, the operation from the execution of the instruction of the CPU 4 to the writing to the external user memory 1 and the external user memory 2 will be described.
[0112]
In the data processing apparatus according to the sixth embodiment of the present invention, the CPU 4 designates an address for writing into the internal user memory 2.
[0113]
Next, the data output from the CPU 4 based on the designated address is sent to the ECC check bit generation circuit 71 via the data bus 5, and the ECC check bit generation circuit 71 checks the check bit based on the CPU output data. Generate data. Specifically, when the CPU arithmetic processing data is 8 bits, the check bit data is generated by 4 bits, when the CPU arithmetic processing data is 16 bits, the check bit data is generated by 5 bits, and when the CPU arithmetic processing data is 32 bits, 6 bits are generated for the check bit data.
[0114]
Then, the CPU output data and check bit generation data are written into the internal user memory 2.
[0115]
On the other hand, when writing to the external user memory 1, the DMA is written from the internal user memory 2 to the external user memory 1 by DMA as in the data processing apparatus of the fourth embodiment of the present invention. Whether data is written to 1 or not depends on whether or not the check bit generation circuit of the external user memory 1 is present, and therefore must be controlled.
[0116]
As described above, in the data processing apparatus according to the sixth embodiment of the present invention, when performing ECC correction, check bit data is required, and the ECC check bit generation circuit 71 is provided in the data input unit of the memory. By doing so, check bit data can be generated.
[0117]
【The invention's effect】
As described above, the first effect of the present invention is that when the memory data is accessed from the external user memory 1 or the internal user memory 2, the external user memory 1 or the internal user memory 2 does not perform the ECC correction process at the time of reading. Therefore, during the machine cycle period in which memory data access is limited, memory access without the ECC correction time can be performed, and the memory access speed originally possessed by the memory can be increased.
[0118]
The second effect of the present invention is that it is not necessary to provide the ECC correction circuit circuit 10 provided in the internal user memory 2 as in the prior art, and the chip area of the semiconductor integrated circuit can be reduced.
[0119]
In particular, the effect increases as the number of internal user memories 2 increases. Furthermore, since it is not necessary to use an external user memory with ECC, an inexpensive memory can be used.
[0120]
According to the third effect of the present invention, as described in JP-A-7-56758, if a check bit generation circuit is provided in the bus control unit and an ECC correction circuit is provided in the CPU, the bit width of the processor bus increases. Although the chip size increases, (e.g., when 8 memory data buses are used, 4 check bit data buses are required. When 16 memory data buses are used, 5 check bit data buses are required. When 32 memory data buses are used. In the data processing apparatus according to the first embodiment of the present invention, since the memory data and the check bit data are divided and transferred from the internal user memory 2, the number of data buses is the number of memory data. Therefore, the present invention does not affect the chip size.
[0121]
The fourth effect of the present invention is to switch the function of “use / do not use” the ECC correction data provided in the ECC correction circuit 9 of the external user memory 1 and the ECC correction circuit 10 of the internal user memory 2 of FIG. By providing in the ECC correction circuit 11 of FIG. 1, it is not necessary to set each select control, and switching can be easily performed.
[0122]
According to the fifth effect of the present invention, when memory data is accessed in the external user memory 1, ECC correction can be performed inside the CPU even when the external user memory 1 without ECC is used, so that the reliability is high. Data processing can be realized.
[Brief description of the drawings]
FIG. 1 is a block diagram of a data processing apparatus according to a first embodiment of this invention.
FIG. 2 is a time chart for explaining the operation of the data processing apparatus according to the first embodiment of this invention shown in FIG. 1;
FIG. 3 is a block diagram of a data processing apparatus according to a second embodiment of this invention.
FIG. 4 is a block diagram of a data processing apparatus according to a third embodiment of this invention.
FIG. 5 is a block diagram of a data processing apparatus according to a fourth embodiment of this invention.
FIG. 6 is a block diagram of a data processing apparatus according to a fifth embodiment of this invention.
FIG. 7 is a block diagram of a data processing apparatus according to a sixth embodiment of this invention.
FIG. 8 is a flowchart of a branch instruction.
FIG. 9 is a time chart for explaining the operation of the data processing apparatus according to the second embodiment of the present invention shown in FIG. 3;
FIG. 10 is a block diagram of a conventional data processing apparatus.
FIG. 11 is a time chart for explaining the operation of a conventional data processing apparatus.
[Explanation of symbols]
1 External user memory
2 Internal user memory
3 IFU
4 CPU
5 Data bus
6 Address bus
7 Data port
8 Address port
11 ECC correction circuit
12 ECC processing selection selector
13 ECC data selection signal
14 Instruction register
15 1st register
16 2nd register
17 3rd register
18 4th register
19 5th register
20 nth register
21 ECC correction circuit and ECC processing selection selector register
31 Secondary IFU
42 Write selection circuit
43 Secondary IFU
44 3rd IFU
45 Data selector
51 DMA controller
52,53 DMA bus
62 Data selector
63, 71 ECC check bit generation circuit
109, 110 ECC correction circuit
Steps S11 to S23

Claims (11)

外部ユーザーメモリと、内部ユーザメモリと、1stレジスタ、2ndレジスタ、3rdレジスタ及びNthレジスタ(Nは、4以上の整数)、ECC補正回路およびECC処理選択セレクタを具備するIFUと、インストラクションレジスタとを具備するCPUと、
前記外部ユーザーメモリ及び前記内部ユーザーメモリと前記CPUとのデータアクセスに必要なデータバスおよびアドレスバスと、
前記外部ユーザーメモリとのアクセスに必要なデータポートとアドレスポートとを備え、
前記データバスに出力されたメモリデータは、前記CPUに内蔵された前記IFUの1stレジスタにセットされ、
さらに、前記1stレジスタにセットされたメモリデータは、所定のマシンサイクルで1stレジスタから2ndレジスタにシフトされると同時に、予め、外部ユーザーメモリ又は、内部ユーザーメモリにライトされたチェックビットデータを前記1stレジスタにセットし、
前記2ndレジスタにセットされたメモリデータは、前記1stレジスタにセットされたチェックビットデータとECC補正回路で補正検出を行ない、ECC処理選択セレクタへ出力され、
ECC処理選択セレクタは、ECC補正回路から出力された前記ECC補正データと前記2ndレジスタにセットしていたメモリデータを受け取り、ECC選択信号により、いずれかのデータを前記3rdレジスタに保管することを特徴とするデータ処理装置。
External user memory, internal user memory, 1st register , 2nd register, 3rd register, Nth register (N is an integer of 4 or more ), ECC correction circuit, ECC processing selection selector, IFU, and instruction register CPU to
A data bus and an address bus necessary for data access between the external user memory and the internal user memory and the CPU;
A data port and an address port necessary for accessing the external user memory;
The memory data output to the data bus is set in the 1st register of the IFU built in the CPU,
Further, the memory data set in the 1st register, at the same time is shifted from the 1st register 2nd register at a given machine cycle, in advance, an external user memory or the check bit data written in the internal user memory 1st Set to register,
The memory data set in the 2nd register, said check bit data and the ECC correction circuit set in the 1st register performs correction detection is output to the ECC processing selection selector,
ECC processing selection selector characterized by storing receive memory data which has been set in the 2nd register and the ECC correction data outputted from the ECC correction circuit, the ECC selection signal, any data on the 3rd register A data processing device.
データを一時保管する機能を持ち、ECC処理されたデータを順次保管する2次IFUをECC選択セレクタのデータ出力部に具備する請求項1記載のデータ処理装置。  The data processing apparatus according to claim 1, further comprising a secondary IFU having a function of temporarily storing data and sequentially storing ECC processed data in a data output unit of the ECC selection selector. ECC補正処理されたデータを保持する2次IFUおよび3次IFUと、書込み選択回路と、データセレクタとを前記ECC処理選択セレクタのデータ出力部に具備する請求項1記載のデータ処理装置。A secondary IFU and tertiary IFU for holding the ECC correction processing data, writing a selection circuit, the data processing device of the data selector and the Motomeko 1, wherein you provided to the data output unit of ECC processing selection selector. ECC処理選択セレクタから出力されたデータは、書込み選択回路で、2次IFU、3次IFUに書込むか又は直接データセレクタに出力するかの選択を命令の内容を判断して実行する請求項3記載のデータ処理装置。  4. The data output from the ECC processing selection selector is selected by a write selection circuit to determine whether to write to the secondary IFU, tertiary IFU, or directly output to the data selector by determining the content of the instruction. The data processing apparatus described. 割り込み要求1が発生した場合、分岐1で分岐しない補正データAは、2次IFUに保管され、分岐1で分岐する補正データBは、3次IFUに保管され、同時に、補正データBを前記書込み選択回路からデータセレクタに直接出力し、必要な補正データをデータセレクタにて選択し、前記3rdレジスタへ保管する請求項3または4記載のデータ処理装置。If an interrupt request 1 occurs, have compensation data A such branched at the branch 1, is stored in the secondary IFU, compensation data B you branched at the branch 1 is stored in the third-order IFU, at the same time, correction directly outputs the data B to the write select circuits or data from the selector, to select the required correction data by the data selector, the data processing apparatus according to claim 3 or 4, wherein for holding pipe to said 3rd register. 割り込み要求1の割り込み発生後、割り込み要求2の割り込みが発生し、更に、後続する割り込みが発生した場合、分岐2で分岐する補正データCを前記補正データAと置換して2次IFUに保管し、同時に、前記補正データCを書込み選択回路からデータセレクタに直接出力し、必要な補正データをデータセレクタにて選択して前記第3レジスタへ保管するとともに、前記補正データBを前記Nthレジスタへ順次保管する請求項5記載のデータ処理装置。 After an interrupt occurs the interrupt request 1, an interrupt request 2 interrupt is generated, further, when a subsequent interrupt occurs, the compensation data C you branched at the branch 2 is replaced with the correction data A to the secondary IFU storage and, at the same time, the correction data C is output directly to the data selector from the write select circuit, as well as store and select the required correction data in the data selector to the third register, the correction the data B Nth register 6. The data processing apparatus according to claim 5, wherein the data processing apparatus sequentially stores the data. 前記後続する割り込みで分岐する補正データnを前記補正データBと置換して前記3次IFUに保管し、同時に、前記補正データnを前記書き込み選択回路から前記データセレクタに直接出力し、必要な補正データを前記データセレクタにて選択して前記第3レジスタに保管するとともに、前記補正データB及び補正データCを前記Nthレジスタへ順次保管する請求項6記載のデータ処理装置。 The correction data n branched by the subsequent interrupt is replaced with the correction data B and stored in the tertiary IFU. At the same time, the correction data n is directly output from the write selection circuit to the data selector, and necessary correction is performed. with the data selected by the data selector to store the third register, the correction data B and the correction data processing device data C sequentially store according to claim 6 to the Nth register. 割り込み要求1が発生し、更に割り込み要求2が発生した時で後続する割り込み要求がない場合、分岐1で分岐しない補正データAは2次IFUに保管され、分岐1で分岐する補正データBは3次IFUに保管されるとともに、分岐2で分岐した補正データCは前記書き込み選択回路から前記データセレクタに直接出力し、必要な補正データを前記データセレクタにて選択して前記3rdレジスタへ保管する請求項3又は4記載のデータ処理装置。 Interrupt request 1 is generated, further when the interrupt request 2 is not an interrupt request is to be followed when generated, correction data A is not branched at the branch 1 is stored in the secondary IFU, the correction data B which branches in branch 1 while it is kept in tertiary IFU, branching compensation data C branched in two and outputs directly to said data selector from said write select circuit, the necessary correction data selected by said data selector into the 3rd register The data processing device according to claim 3 or 4, wherein the data processing device is stored. 外部ユーザーメモリと内部ユーザーメモリとのDMA(ダイナミックメモリアクセス)と、前記DMAを制御するDMAコントローラを具備する請求項1記載のデータ処理装置。  2. A data processing apparatus according to claim 1, further comprising a DMA (dynamic memory access) between an external user memory and an internal user memory, and a DMA controller for controlling the DMA. 前記CPUのデータ出力部にECCチェックビット生成回路とデータセレクタを具備する請求項1記載のデータ処理装置。  The data processing apparatus according to claim 1, wherein the data output unit of the CPU includes an ECC check bit generation circuit and a data selector. 内部ユーザメモリの入力側にECCチェックビット生成回路を具備する請求項1または9記載のデータ処理装置。  10. The data processing apparatus according to claim 1, further comprising an ECC check bit generation circuit on an input side of the internal user memory.
JP2001230107A 2001-07-30 2001-07-30 Data processing device Expired - Fee Related JP3717813B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001230107A JP3717813B2 (en) 2001-07-30 2001-07-30 Data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001230107A JP3717813B2 (en) 2001-07-30 2001-07-30 Data processing device

Publications (2)

Publication Number Publication Date
JP2003044367A JP2003044367A (en) 2003-02-14
JP3717813B2 true JP3717813B2 (en) 2005-11-16

Family

ID=19062362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001230107A Expired - Fee Related JP3717813B2 (en) 2001-07-30 2001-07-30 Data processing device

Country Status (1)

Country Link
JP (1) JP3717813B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102324405B1 (en) * 2013-12-31 2021-11-11 세메스 주식회사 Apparatus and Method for treating substrate

Also Published As

Publication number Publication date
JP2003044367A (en) 2003-02-14

Similar Documents

Publication Publication Date Title
US7299323B2 (en) Memory controller having a read-modify-write function
US20080082892A1 (en) Integrated circuit device including a circuit to generate error correction code for correcting error bit for each of memory circuits
US6351788B1 (en) Data processor and data processing system
US5761718A (en) Conditional data pre-fetching in a device controller
JP3717813B2 (en) Data processing device
US6937247B2 (en) Memory control device and method
JPH0695875A (en) Memory access method for microcomputer
KR20040073167A (en) Computer system embedded sequantial buffer for improving DSP data access performance and data access method thereof
JP3145545B2 (en) Memory access device
JP3821911B2 (en) Memory initialization control method
JPH0746323B2 (en) Main memory for compressing partial write access
US6356976B1 (en) LSI system capable of reading and writing at high speed
KR100336743B1 (en) Processing circuit for data
JP2945525B2 (en) Processor, memory, and data processing device
US20040103267A1 (en) Data processor having cache memory
JPH0535472A (en) Microcomputer
JPS6014435B2 (en) Storage device
JP2000029508A (en) Programmable controller
JP3753368B2 (en) Data processor and data processing system
JP3070454B2 (en) Memory access control circuit
CN114519011A (en) AI computing system and method
JPS5899860A (en) Main storage write controlling system
JP2001100991A (en) Digital signal processor
JPH06301532A (en) Microprocessor unit
JPH07182230A (en) Memory card

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050426

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050617

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: 20050802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050831

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20080909

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090909

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090909

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100909

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100909

Year of fee payment: 5

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20100909

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110909

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120909

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120909

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130909

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees