(57)【特許請求の範囲】
【請求項１】
外部ユーザーメモリと、内部ユーザメモリと、１ｓｔレジスタ、２ｎｄレジスタ、３ｒｄレジスタ及びＮｔｈレジスタ（Ｎは、４以上の整数）、ＥＣＣ補正回路およびＥＣＣ処理選択セレクタを具備するＩＦＵと、インストラクションレジスタとを具備するＣＰＵと、
前記外部ユーザーメモリ及び前記内部ユーザーメモリと前記ＣＰＵとのデータアクセスに必要なデータバスおよびアドレスバスと、
前記外部ユーザーメモリとのアクセスに必要なデータポートとアドレスポートとを備え、
前記データバスに出力されたメモリデータは、前記ＣＰＵに内蔵された前記ＩＦＵの１ｓｔレジスタにセットされ、
さらに、前記１ｓｔレジスタにセットされたメモリデータは、所定のマシンサイクルで１ｓｔレジスタから２ｎｄレジスタにシフトされると同時に、予め、外部ユーザーメモリ又は、内部ユーザーメモリにライトされたチェックビットデータを前記１ｓｔレジスタにセットし、
前記２ｎｄレジスタにセットされたメモリデータは、前記１ｓｔレジスタにセットされたチェックビットデータとＥＣＣ補正回路で補正検出を行ない、ＥＣＣ処理選択セレクタへ出力され、
ＥＣＣ処理選択セレクタは、ＥＣＣ補正回路から出力された前記ＥＣＣ補正データと前記２ｎｄレジスタにセットしていたメモリデータを受け取り、ＥＣＣ選択信号により、いずれかのデータを前記３ｒｄレジスタに保管することを特徴とするデータ処理装置。
【請求項２】
データを一時保管する機能を持ち、ＥＣＣ処理されたデータを順次保管する２次ＩＦＵをＥＣＣ選択セレクタのデータ出力部に具備する請求項１記載のデータ処理装置。
【請求項３】
ＥＣＣ補正処理されたデータを保持する２次ＩＦＵおよび３次ＩＦＵと、書込み選択回路と、データセレクタとを前記ＥＣＣ処理選択セレクタのデータ出力部に具備する請求項１記載のデータ処理装置。
【請求項４】
ＥＣＣ処理選択セレクタから出力されたデータは、書込み選択回路で、２次ＩＦＵ、３次ＩＦＵに書込むか又は直接データセレクタに出力するかの選択を命令の内容を判断して実行する請求項３記載のデータ処理装置。
【請求項５】
割り込み要求１が発生した場合、分岐１で分岐しない補正データＡは、２次ＩＦＵに保管され、分岐１で分岐する補正データＢは、３次ＩＦＵに保管され、同時に、補正データＢを前記書込み選択回路からデータセレクタに直接出力し、必要な補正データをデータセレクタにて選択し、前記３ｒｄレジスタへ保管する請求項３または４記載のデータ処理装置。
【請求項６】
割り込み要求１の割り込み発生後、割り込み要求２の割り込みが発生し、更に、後続する割り込みが発生した場合、分岐２で分岐する補正データＣを前記補正データＡと置換して２次ＩＦＵに保管し、同時に、前記補正データＣを書込み選択回路からデータセレクタに直接出力し、必要な補正データをデータセレクタにて選択して前記第３レジスタへ保管するとともに、前記補正データＢを前記Ｎｔｈレジスタへ順次保管する請求項５記載のデータ処理装置。
【請求項７】
前記後続する割り込みで分岐する補正データｎを前記補正データＢと置換して前記３次ＩＦＵに保管し、同時に、前記補正データｎを前記書き込み選択回路から前記データセレクタに直接出力し、必要な補正データを前記データセレクタにて選択して前記第３レジスタに保管するとともに、前記補正データＢ及び補正データＣを前記Ｎｔｈレジスタへ順次保管する請求項６記載のデータ処理装置。
【請求項８】
割り込み要求１が発生し、更に割り込み要求２が発生した時で後続する割り込み要求がない場合、分岐１で分岐しない補正データＡは２次ＩＦＵに保管され、分岐１で分岐する補正データＢは３次ＩＦＵに保管されるとともに、分岐２で分岐した補正データＣは前記書き込み選択回路から前記データセレクタに直接出力し、必要な補正データを前記データセレクタにて選択して前記３ｒｄレジスタへ保管する請求項３又は４記載のデータ処理装置。
【請求項９】
外部ユーザーメモリと内部ユーザーメモリとのＤＭＡ（ダイナミックメモリアクセス）と、前記ＤＭＡを制御するＤＭＡコントローラを具備する請求項１記載のデータ処理装置。
【請求項１０】
前記ＣＰＵのデータ出力部にＥＣＣチェックビット生成回路とデータセレクタを具備する請求項１記載のデータ処理装置。
【請求項１１】
内部ユーザメモリの入力側にＥＣＣチェックビット生成回路を具備する請求項１または９記載のデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ処理装置に関し、特に、ＥＣＣ補正処理を含むデータ処理装置に関する。
【０００２】
【従来の技術】
近年、外部ユーザーメモリ又は内部ユーザーメモリからのメモリデータをアクセスして、データ処理をするデータ処理装置は、パーソナルコンピュータまたは通信端末などに用いられていることは、衆知である。
【０００３】
このような従来技術のデータ処理装置は、例えば、特開平７−５６７５８号公報に開示されている。
【０００４】
このような従来技術のデータ処理装置の一構成例を図１０に、その動作例のタイミングチャートを図１１に示す。
【０００５】
図１０を参照して、従来技術のデータ処理装置の構成を説明する。
【０００６】
従来のデータ処理装置は、図１０に示すように、ＥＣＣ補正回路１０９を内蔵した外部ユーザーメモリ１と、ＥＣＣ補正回路１１０を内蔵した内部ユーザメモリ２と、インストラクション・フェッチ・ユニット３（以下、ＩＦＵと略記する）内蔵のＣＰＵ４、外部ユーザーメモリ１又は内部ユーザーメモリ２とＣＰＵ４のデータアクセスに必要なデータバス５、アドレスバス６を具備し、さらに、外部ユーザーメモリとのアクセスに必要なデータポート７とアドレスポート８とを具備する。
【０００７】
次に、図１１を参照して、従来技術のデータ処理装置の動作を説明する。
【０００８】
まず、従来技術のデータ処理装置では、アドレスバス６を経て送られたアドレス信号により、外部ユーザーメモリ１と内部ユーザーメモリ２のいずれかのアドレスが指定される。
【０００９】
次に、アドレス指定された外部ユーザーメモリ１又は内部ユーザーメモリ２は外部ユーザーメモリ１に設けているＥＣＣ補正回路１０９又は内部ユーザーメモリ２に設けているＥＣＣ回路１１０により、メモリデータの補正検出を行う。
【００１０】
外部ユーザーメモリ１に設けるＥＣＣ補正回路１０９のＥＣＣ補正データは、データポート７を経てデータバス５に出力される。また、内部ユーザーメモリ２に設けるＥＣＣ補正回路１１０のＥＣＣ補正データは、データバス５に出力される。
【００１１】
次に、データバス５に出力されたＥＣＣ補正データは、ＣＰＵ４に内蔵されたＩＦＵ３の１ｓｔレジスタ１５にセットされる。
【００１２】
次に、セットされたＥＣＣ補正データは、図１１に示すように、マシンサイクルの進行により、１ｓｔレジスタ１５から２ｎｄレジスタにセット１６され、３ｒｄレジスタ１７、４ｔｈレジスタ１８、５ｔｈレジスタ１９へと順次セットされていく。
【００１３】
最後に、最終段５ｔｈレジスタ１９にセットされたＥＣＣ補正データは、インストラクションデコーダ１４へ出力され、ＣＰＵ４にて命令の実行が行われる。
【００１４】
なお、ここでは、最終段レジスタ（ｎｔｈレジスタ）２０を５ｔｈレジスタ１９とした例で説明している。
【００１５】
【発明が解決しようとする課題】
しかしながら、従来技術では、外部ユーザーメモリ１又は内部ユーザーメモリ２からメモリデータをアクセスして、データ処理をするデータ処理装置は、外部ユーザーメモリ１に設けられたＥＣＣ補正回路１０９又は内部ユーザーメモリ２に設けられたＥＣＣ補正回路１１０が補正検出を行ない、補正データがメモリから出力される期間内はメモリデータのアクセスができず、ＥＣＣ補正に占める時間が大きいため、メモリアクセスサイクルの高速化に限界があった。
【００１６】
また、データ処理装置の高性能化及び低価格化は市場からの重要な要求であり、ＥＣＣ補正回路を、外部ユーザーメモリや内部ユーザーメモリ及びデータバスで必要としないデータ処理装置が必要であった。
すなわち、第１の問題は、外部ユーザーメモリ１又は内部ユーザーメモリ２からメモリデータをアクセスする場合、外部ユーザーメモリ１に設けているＥＣＣ補正回路１０９又は内部ユーザーメモリ２に設けているＥＣＣ補正回路１１０がデータバス５のマシンサイクルの限られたアクセス期間中にＥＣＣ補正検出を行なう為、メモリアクセス期間をＥＣＣ補正時間が圧迫し、本来持っているメモリのアクセス時間でアクセスする事ができない。
【００１７】
第２の問題は、特開平７−５６７５８号公報に記載のデータ処理装置のように、ＥＰＵにＥＣＣ補正回路を付加しただけだと、メモリデータのアクセス期間はかぎられており、ＥＣＣ補正を行なうと、読み出し期間中のＥＣＣ補正時間でスピードが厳しくなる。また、補正検出を行なうにあたり、メモリデータとチェックビットデータを必要とする為、データバスの本数が大きくなる。
【００１８】
例えば、メモリデータバス８本の時、チェックビットデータバスは、４本必要であり、メモリデータバス１６本の時、チェックビットデータは、バス５本必要であり、メモリデータバス３２本の時、チェックビットデータは、バス６本必要である。従って、このデータ処理装置を半導体集積回路で構成した場合、半導体集積回路のチップ面積が大きくなる。
【００１９】
第３の問題は、内部ユーザーメモリ２に設けているＥＣＣ補正回路１１０が多くなると、このデータ処理装置を半導体集積回路で構成した場合、半導体集積回路のチップ面積が大きくなる。
【００２０】
第４の問題は、外部ユーザーメモリ１に設けているＥＣＣ補正回路１０９と内部ユーザーメモリ２に設けているＥＣＣ補正回路１１０の補正検出を「使用する、しない」の機能切り替えは、外部ユーザーメモリ１に設けているＥＣＣ補正回路１０９と内部ユーザーメモリ２に設けているＥＣＣ補正回路１１０で各々セレクト制御の設定を行なわなければならない。
【００２１】
第５の問題は、外部ユーザーメモリ１でメモリデータをアクセスする場合、外部ユーザーメモリ１は、ＥＣＣ補正回路付の高価なメモリを使用しないと、データの信頼性が保証できない。
【００２２】
したがって、本発明は、上記の問題に鑑み、これらの問題を解決したデータ処理装置を提供することにある。
【００２３】
【課題を解決するための手段】
本発明のデータ処理装置は、外部ユーザーメモリと、内部ユーザメモリと、１ｓｔレジスタ、２ｎｄレジスタ、３ｒｄレジスタ及びＮｔｈレジスタ（Ｎは、４以上の整数）、ＥＣＣ補正回路およびＥＣＣ処理選択セレクタを具備するＩＦＵと、インストラクションレジスタとを具備するＣＰＵと、前記外部ユーザーメモリ及び前記内部ユーザーメモリと前記ＣＰＵとのデータアクセスに必要なデータバスおよびアドレスバスと、前記外部ユーザーメモリとのアクセスに必要なデータポートとアドレスポートとを備え、前記データバスに出力されたメモリデータは、前記ＣＰＵに内蔵された前記ＩＦＵの１ｓｔレジスタにセットされ、さらに、前記１ｓｔレジスタにセットされたメモリデータは、所定のマシンサイクルで１ｓｔレジスタから２ｎｄレジスタにシフトされると同時に、予め、外部ユーザーメモリ又は、内部ユーザーメモリにライトされたチェックビットデータを前記１ｓｔレジスタにセットし、前記２ｎｄレジスタにセットされたメモリデータは、前記１ｓｔレジスタにセットされたチェックビットデータとＥＣＣ補正回路で補正検出を行ない、ＥＣＣ処理選択セレクタへ出力され、ＥＣＣ処理選択セレクタは、ＥＣＣ補正回路から出力された前記ＥＣＣ補正データと前記２ｎｄレジスタにセットしていたメモリデータを受け取り、ＥＣＣ選択信号により、いずれかのデータを前記３ｒｄレジスタに保管する構成である。
【００２４】
さらに、本発明のデータ処理装置は、データを一時保管する機能を持ち、ＥＣＣ処理されたデータを順次保管する２次ＩＦＵをＥＣＣ処理選択セレクタのデータ出力部に具備する構成である。
【００２５】
またさらに、本発明のデータ処理装置は、ＥＣＣ補正処理されたデータを保持する２次ＩＦＵおよび３次ＩＦＵと、書込み選択回路と、データセレクタとを前記ＥＣＣ選択セレクタのデータ出力部に具備する構成である。
【００２６】
また、本発明のデータ処理装置は、ＥＣＣ処理選択セレクタから出力されたデータは、書込み選択回路で、２次ＩＦＵ、３次ＩＦＵに書込むか又は直接データセレクタに出力するかの選択を命令の内容を判断して実行する構成である。
【００２７】
さらにまた、本発明のデータ処理装置は、割り込み要求１が発生した場合、分岐１で分岐しない補正データＡは、２次ＩＦＵに保管され、分岐１で分岐する補正データＢは、３次ＩＦＵに保管され、同時に、補正データＢを前記書込み選択回路からデータセレクタに直接出力し、必要な補正データをデータセレクタにて選択し、前記３ｒｄレジスタへ保管する構成である。
【００２８】
また、本発明のデータ処理装置は、割り込み要求１の割り込み発生後、割り込み要求２の割り込みが発生し、更に、後続する割り込みが発生した場合、分岐２で分岐する補正データＣを前記補正データＡと置換して２次ＩＦＵに保管し、同時に、前記補正データＣを書込み選択回路からデータセレクタに直接出力し、必要な補正データをデータセレクタにて選択して前記第３レジスタへ保管するとともに、前記補正データＢを前記Ｎｔｈレジスタへ順次保管する構成である。
【００２９】
また、本発明のデータ処理装置は、前記後続する割り込みで分岐する補正データｎを前記補正データＢと置換して前記３次ＩＦＵに保管し、同時に、前記補正データｎを前記書き込み選択回路から前記データセレクタに直接出力し、必要な補正データを前記データセレクタにて選択して前記第３レジスタに保管するとともに、前記補正データＢ及び補正データＣを前記Ｎｔｈレジスタへ順次保管する構成である。
【００３０】
また、本発明のデータ処理装置は、割り込み要求１が発生し、更に割り込み要求２が発生した時で後続する割り込み要求がない場合、分岐１で分岐しない補正データＡは２次ＩＦＵに保管され、分岐１で分岐する補正データＢは３次ＩＦＵに保管されるとともに、分岐２で分岐した補正データＣは前記書き込み選択回路から前記データセレクタに直接出力し、必要な補正データを前記データセレクタにて選択して前記３ｒｄレジスタへ保管する構成である。
【００３１】
また、本発明のデータ処理装置は、外部ユーザーメモリと内部ユーザーメモリとのＤＭＡ（ダイナミックメモリアクセス）と、前記ＤＭＡを制御するＤＭＡコントローラを具備する構成である。
【００３２】
さらに、本発明のデータ処理装置は、前記ＣＰＵのデータ出力部にＥＣＣチェックビット生成回路とデータセレクタを具備する構成である。
【００３３】
さらにまた、本発明のデータ処理装置は、内部ユーザメモリの入力側にＥＣＣチェックビット生成回路を具備する構成である。
【００３４】
【発明の実施の形態】
次に、図面を参照しながら、本発明の実施の形態を以下に詳述する。
【００３５】
本発明の特徴は、複数の外部ユーザーメモリと複数の内部ユーザーメモリに設けるＥＣＣ補正回路をＣＰＵ内に内蔵したＥＣＣ補正回路で、一括してＥＣＣ補正を行なうデータ処理装置である。この装置により、このデータ処理装置を半導体集積回路で構成した場合、その半導体集積回路のチップ面積を縮小し、安価なメモリを使用しても高速で信頼性の高いメモリアクセスを実現する事ができる。
【００３６】
図１は、本発明の第１の実施の形態のデータ処理装置の構成図である。図１を参照すると、本発明の第１の実施の形態のデータ処理装置は、外部ユーザーメモリ１と内部ユーザメモリ２と、ＣＰＵ４と、外部ユーザーメモリ１及び内部ユーザーメモリ２とＣＰＵ４とのデータアクセスに必要なデータバス５およびアドレスバス６と、外部ユーザーメモリ１とのアクセスに必要なデータポート７とアドレスポート８を備える。
【００３７】
さらに、本発明の第１の実施の形態のデータ処理装置のＣＰＵ４は、１ｓｔレジスタ乃至５ｔｈレジスタ（１５，１６，１７，１８，１９）、ＥＣＣ補正回路１１およびＥＣＣ処理選択セレクタ１２を具備するＩＦＵ３と、インストラクションレジスタ１４とを備える。
【００３８】
以降の各実施の形態の説明において、外部ユーザーメモリ１及び内部ユーザーメモリ２と、各１個ずつしか示していないが、実際は１個以上の複数個存在している事を示している。
【００３９】
また、ＩＦＵ３においては、実際には複数個のレジスタが存在しているが、以降の各実施の形態の説明では、説明の便宜上、５ｔｈレジスタまでを有するものとする。
【００４０】
次に、本発明の第１の実施の形態のデータ処理装置の動作について、図２を参照して、説明する。
【００４１】
本発明の第１の実施の形態のデータ処理装置では、まず、アドレスバス６を経て送られたアドレス信号で外部ユーザーメモリ１と内部ユーザーメモリ２のいずれかのアドレスが指定される。
【００４２】
次に、指定されたアドレスのメモリデータはデータバス５へ出力される。
【００４３】
そして次に、データバス５に出力されたメモリデータは、ＣＰＵ４に内蔵されたＩＦＵ３の１ｓｔレジスタ１５にセットされる。
【００４４】
さらに、１ｓｔレジスタ１５にセットされたメモリデータは、図２に示すように、マシンサイクル２で１ｓｔレジスタから２ｎｄレジスタ１６にシフトされる。その時、予め、外部ユーザーメモリ１又は、内部ユーザーメモリ２にライトされたチェックビットデータを１ｓｔレジスタ１５にセットする。
【００４５】
次に、２ｎｄレジスタ１６にセットされたメモリデータは、１ｓｔレジスタ１５にセットされたチェックビットデータとＥＣＣ補正回路１１で補正検出を行ない、ＥＣＣ処理選択セレクタ１２へ出力される。
【００４６】
次に、ＥＣＣ処理選択セレクタ１２は、ＥＣＣ補正回路１１から出力されたＥＣＣ補正データと２ｎｄレジスタ１６にセットしていたメモリデータを受け取り、ＥＣＣ選択信号１３により、いずれかのデータを３ｒｄレジスタ１７にセットする。
【００４７】
最後に、３ｒｄレジスタ１７にセットされたＥＣＣ処理選択レジスタ１２の出力は、マシンサイクルの進行とともに４ｔｈレジスタ１８および５ｔｈレジスタへ１９セットされ、インストラクションレジスタ１４へと出力されＣＰＵ４で命令の実行を行なう。
【００４８】
次に、本発明の第２の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【００４９】
図３は、本発明の第２の実施の形態のデータ処理装置の構成図である。図３を参照すると、本発明の第２の実施の形態のデータ処理装置は、本発明の第１の実施の形態のデータ処理装置に、さらに、２次ＩＦＵをＥＣＣ選択セレクタ１２のデータ出力部に具備する。この２次ＩＦＵは、データを一時保管しておく機能を持ち、ＥＣＣ処理されたデータを順次保管する機能を有する。
【００５０】
次に、本発明の第２の実施の形態のデータ処理装置の動作について説明する。
【００５１】
まず、本発明の第２の実施の形態のデータ処理装置では、アドレスバス６を経て送られたアドレス信号で外部ユーザーメモリ１と内部ユーザーメモリ２のいずれかのアドレスが指定される。
【００５２】
次に、外部ユーザーメモリ１又は内部ユーザーメモリ２内の指定されたアドレスのメモリデータはデータバス５へ出力される。
【００５３】
さらに、データバス５に出力されたメモリデータは、ＣＰＵ４に内蔵されたＩＦＵ３の１ｓｔレジスタにセットされる。
【００５４】
そして、１ｓｔレジスタにセットされたメモリデータは、図２に示すように、マシンサイクル２で１ｓｔレジスタから２ｎｄレジスタにシフトされる。
【００５５】
その時、予め外部ユーザーメモリ１又は、内部ユーザーメモリ２にライトされたチェックビットデータを１ｓｔレジスタにセットする。
【００５６】
次に、２ｎｄレジスタにセットされたメモリデータは、１ｓｔレジスタにセットされたチェックビットデータとＥＣＣ補正回路１１で補正検出を行ない、ＥＣＣ処理選択セレクタ１２へ出力される。
【００５７】
さらに、ＥＣＣ処理選択セレクタ１２は、ＥＣＣ補正回路１１から出力されたＥＣＣ補正データと２ｎｄレジスタにセットしていたメモリデータを受け取り、ＥＣＣ選択信号１３によりＥＣＣ補正データまたは２ｎｄレジスタのメモリデータを、図２のＥＣＣ選択セレクタ１２までのタイミングチャートのように順次、２次ＩＦＵに随時蓄積していく。
【００５８】
２次ＩＦＵからデータを読み出す際は、図９のタイミングチャートのように１マシンサイクル毎に３ｒｄレジスタに出力し、１マシンサイクル毎に４ｔｈ、５ｔｈレジスタへデータをシフトし、インストラクションレジスタ１４へ出力する。
【００５９】
以上の説明より、本発明の第２の実施の形態のデータ処理装置によれば、ＥＣＣ補正処理を行なったデータを順次２次ＩＦＵへ保管する事により、必要に応じてＥＣＣ補正処理済のデータを読み出す事ができ、ＥＣＣ処理に依存することなく、ＣＰＵの命令の実行を行なう事ができる。
【００６０】
次に、本発明の第３の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【００６１】
図４は、本発明の第３の実施の形態のデータ処理装置の構成図であり、図８は、データ処理のフローチャートを示す。
【００６２】
図４を参照すると、本発明の第３の実施の形態のデータ処理装置は、本発明の第１の実施の形態のデータ処理装置に、さらに、２次ＩＦＵ４３と３次ＩＦＵ４４と書込み選択回路４２をＥＣＣ選択セレクタ１２のデータ出力部に具備し、データセレクタ４５を付加したものである。
【００６３】
２次ＩＦＵ４３および３次ＩＦＵ４４は、ＥＣＣ補正処理されたデータを保持する機能を有する。
【００６４】
次に、本発明の第３の実施の形態のデータ処理装置の動作について説明する。
【００６５】
本発明の第３の実施の形態のデータ処理装置では、まず、アドレスバス６を経て送られたアドレス信号で外部ユーザーメモリ１と内部ユーザーメモリ２のいずれかのアドレスが指定される。
【００６６】
次に、指定されたアドレスのメモリデータはデータバス５へ出力される。
【００６７】
そして次に、データバス５に出力されたメモリデータは、ＣＰＵ４に内蔵されたＩＦＵ３の１ｓｔレジスタにセットされる。
【００６８】
さらに、１ｓｔレジスタにセットされたメモリデータは、図２に示すように、マシンサイクル２で１ｓｔレジスタから２ｎｄレジスタにシフトされる。その時、予め、外部ユーザーメモリ１又は、内部ユーザーメモリ２にライトされたチェックビットデータを１ｓｔレジスタにセットする。
【００６９】
次に、２ｎｄレジスタにセットされたメモリデータは、１ｓｔレジスタにセットされたチェックビットデータとＥＣＣ補正回路１１で補正検出を行ない、ＥＣＣ処理選択セレクタ１２へ出力される。
【００７０】
次に、ＥＣＣ処理選択セレクタ１２は、ＥＣＣ補正回路１１から出力されたＥＣＣ補正データと２ｎｄレジスタにセットしていたメモリデータを受け取り、ＥＣＣ選択信号１３により、いずれかのデータが選択され、ＥＣＣ処理選択セレクタ１２から出力される。
【００７１】
次に、ＥＣＣ処理選択セレクタ１２から出力されたデータは、書込み選択回路４２で、２次ＩＦＵ、３次ＩＦＵに書込むか又は直接データセレクタ４５に出力するかの選択を命令の内容を判断して実行する。
【００７２】
この処理を図４および図８を参照して、詳細に説明する。
【００７３】
まず、（ａ）割り込み要求１が発生した場合、分岐１で分岐しない（ＮＯ）補正データＡは、２次ＩＦＵに保管され、分岐１で分岐する（ＹＥＳ）補正テ゛ータＢは、３次ＩＦＵに保管される。
【００７４】
同時に、補正データＢを書込み選択回路４２からデータセレクタ４５に直接出力し、必要な補正データをデータセレクタ４５にて選択し、３，４，５ｔｈレジスタへ順次保管する。
【００７５】
次に、（ｂ）割り込み要求１の割り込みが発生し、更に、割込み要求２の割り込み要求が発生した場合、分岐２で分岐しない（ＮＯ）補正データＢは、既に３次ＩＦＵに保管している為、分岐２で分岐する（ＹＥＳ）補正データＣを２次ＩＦＵに順次保管する（２次ＩＦＵに書込まれた補正データＡは消去される）。
【００７６】
同時に、補正データＣを書込み選択回路４２からデータセレクタ４５に直接出力し、必要な補正データをデータセレクタ４５にて選択し、３，４，５ｔｈレ
ジスタへ順次保管する。
【００７７】
次に、（ｃ）割り込み要求２の割り込みが発生し、更に割り込み要求ｎの割り込みが発生した場合、分岐ｎで分岐しない（ＮＯ）補正データＣは、既に２次ＩＦＵに保管している為、分岐ｎで分岐する（ＹＥＳ）補正データｎを３次ＩＦＵに順次保管する（３次ＩＦＵに書込まれていた補正データＢは消去される）。
【００７８】
同時に、補正データｎを書込み選択回路４２からデータセレクタ４５に直接出力し、必要な補正データをデータセレクタ４５にて選択し、３，４，５ｔｈレジスタへ順次保管する。
【００７９】
（ｄ）割り込み要求１が発生し、更に割り込み要求２が発生した時で、割り込み要求ｎがない場合、２次ＩＦＵの補正データＡは消去されず、分岐２で分岐した（ＹＥＳ）補正データＣは、書込み選択回路４２からデータセレクタ４５に直接出力し、必要な補正データをデータセレクタ４５にて選択し、３，４，５ｔｈレジスタへ順次保管する。
【００８０】
この場合、分岐２で分岐した（ＹＥＳ）補正データＣの処理が終了し、メインルーチンに戻ってきた時処理される補正データＡと補正データＢは、再度メモリデータを読み直し、ＥＣＣ補正をする必要がない。
【００８１】
そして、２次ＩＦＵ，３次ＩＦＵで一時保管されたデータとＥＣＣ処理選択セレクタから直接送られたデータは、データセレクタ４５により、ＣＰＵ４の命令実行に必要なデータを３ｒｄレジスタにセットする。
【００８２】
その後、マシンサイクルの進行とともに、４ｔｈ，５ｔｈレジスタへセットされ、インストラクションレジスタ１４へと出力されＣＰＵ４で命令の実行を行なう。
【００８３】
したがって、本発明の第３の実施の形態のデータ処理装置によれば、本発明の第１の実施の形態のデータ処理装置で示した発明の効果及び、本発明の第２の実施の形態のデータ処理装置に示した発明の効果に加え、分岐しないデータと分岐するのデータのＥＣＣ処理済の両データを、命令の内容を予め判断し、２次ＩＦＵ及び３次ＩＦＵに保管しておく事ができ、データバスの負荷をより軽減でき、処理スピードを向上させる事ができる。
【００８４】
次に、本発明の第４の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【００８５】
図５は、本発明の第４の実施の形態のデータ処理装置の構成図である。
【００８６】
図５を参照すると、本発明の第４の実施の形態のデータ処理装置は、外部ユーザーメモリ１と内部ユーザーメモリ２とのＤＭＡ（ダイナミックメモリアクセス）実行時の構成であり、ＤＭＡを制御するＤＭＡコントローラ５１を具備する以外は、本発明の第１の実施の形態のデータ処理装置と同じ構成要素を有している。同一構成要素には、同一参照符号を付し、構成の詳細な説明は省略する。
【００８７】
次に、本発明の第４の実施の形態のデータ処理装置の動作について説明する。
【００８８】
本発明の第４の実施の形態のデータ処理装置では、ＣＰＵ４にて、ＤＭＡの実行指示がＤＭＡコントローラ５１に送られる。ＤＭＡコントローラ５１は、外部ユーザーメモリ１のアドレスを指定し、内部ユーザーメモリ２にデータ転送を行なう。
【００８９】
次に、ＤＭＡコントローラ５１は、あらかじめ内部ユーザーメモリ２に、メモリデータが転送されるよう設定されており、転送はＣＰＵ４を介さず、外部ユーザーメモリ１から内部ユーザーメモリ２へ直接転送される。
【００９０】
さらに、必要なメモリデータが転送された後、ＣＰＵ４は内部ユーザーメモリのアドレスを指定し、アドレスバス６を経て内部ユーザーメモリ２のいずれかのアドレスが指定される。
【００９１】
そして、指定されたアドレスのメモリデータはデータバス５へ出力される。
【００９２】
さらに、データバス５に出力されたメモリデータは、ＣＰＵ４に内蔵されたＩＦＵ３の１ｓｔレジスタにセットされ、１ｓｔレジスタにセットされたメモリデータは、図２のタイミングチャートのように、マシンサイクル２で１ｓｔレジスタから２ｎｄレジスタにシフトされる。
【００９３】
その時、予め、内部ユーザーメモリ２にライトされたチェックビットデータを１ｓｔレジスタにセットする。
【００９４】
次に、２ｎｄレジスタにセットされたメモリデータは、１ｓｔレジスタにセットされたチェックビットデータとＥＣＣ補正回路１１で補正検出を行ない、ＥＣＣ処理選択セレクタ１２へ出力される。
【００９５】
さらに、ＥＣＣ処理選択セレクタ１２は、ＥＣＣ補正回路１１から出力されたＥＣＣ補正データと２ｎｄレジスタにセットしていたメモリデータを受け取り、ＥＣＣ選択信号１３によりいずれかのデータを３ｒｄレジスタにセットし、３ｒｄレジスタにセットされたＥＣＣ処理選択レジスタ１２の出力はマシンサイクルの進行とともに４ｔｈ、５ｔｈレジスタへセットされ、インストラクションレジスタ１４へと出力されＣＰＵ４で命令の実行を行なう。
【００９６】
本発明の第４の実施の形態のデータ処理装置によれば、ＣＰＵ４は、ＤＭＡ転送時に関わる命令実行は行なわない為、ＤＭＡ転送中においても、ＣＰＵ動作は可能であり、内部ユーザーメモリ２にＣＰＵ４の命令実行に関わるデータが書き込まれしだい、予め必要なデータを先読みし、ＥＣＣ補正を行なったデータをＣＰＵ４で命令の実行をさせる事ができる。
【００９７】
次に、本発明の第５の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【００９８】
図６は、本発明の第５の実施の形態のデータ処理装置の構成図である。
【００９９】
図６を参照すると、本発明の第５の実施の形態のデータ処理装置は、ＣＰＵ４のデータ出力部にＥＣＣチェックビット生成回路６３とデータセレクタ６２を具備する以外は、本発明の第１の実施の形態のデータ処理装置と同じ構成要素を有している。同一構成要素には、同一参照符号を付し、その構成の詳細な説明は省略する。
【０１００】
次に、本発明の第５の実施の形態のデータ処理装置の動作について説明する。
【０１０１】
本発明の第５の実施の形態のデータ処理装置では、外部ユーザーメモリ１と内部ユーザーメモリ２のデータ読み出しからＣＰＵ４の命令実行までは、本発明の第１の実施の形態のデータ処理装置の同一である。
【０１０２】
したがって、ＣＰＵ４の命令実行後のＥＣＣチェックビット生成と外部ユーザーメモリ１及び外部ユーザーメモリ２に書き込むまでの動作を説明する。
【０１０３】
本発明の第５の実施の形態のデータ処理装置では、演算処理されたデータは、ＥＣＣチェックビット生成回路６３に入力され、チェックビット生成回路６３は、演算処理データを元にＥＣＣ補正で必要なチェックビットデータを生成する。すなわち、ＣＰＵ演算処理データが８ｂｉｔの時、チェックビットデータは４ｂｉｔが生成され、ＣＰＵ演算処理データが１６ｂｉｔの時、チェックビットデータは５ｂｉｔが生成され、ＣＰＵ演算処理データが３２ｂｉｔの時、チェックビットデータは６ｂｉｔが生成される。
【０１０４】
次に、チェックビットデータは、外部ユーザーメモリ１又は内部ユーザーメモリ２に書き込み指示がある場合のみ、データセレクタ６２でデータバス５への出力を制御する。
さらに、データバス５に出力されたチェックビットデータは、内部ユーザーメモリ２又は外部ユーザーメモリ１に書き込まれる。
【０１０５】
また、ＤＭＡを使用する場合は、一旦、内部ユーザーメ モリ２に書き込まれた後、ＤＭＡにより直接外部に転送される。
【０１０６】
ＥＣＣ補正を行う場合、補正用のチェックビットデータが必要であり、特開平７−５６７５８号公報に記載の従来のデータ処理装置では、バス制御部に設けていたが、本発明の第５の実施の形態のデータ処理装置によれば、ＣＰＵ４の出力部にＥＣＣチェックビット生成回路６３を付加することにより、ＣＰＵで命令を実行したデータは全てチェックビットデータを生成させる事ができ、ＥＣＣチェックビット生成から補正検出を一貫して行なう事ができる。
【０１０７】
次に、本発明の第６の実施の形態のデータ処理装置について図面を参照して詳細に説明する。
【０１０８】
図７は、本発明の第６の実施の形態のデータ処理装置の構成図である。
【０１０９】
図７を参照すると、本発明の第６の実施の形態のデータ処理装置は、内部ユーザメモリ２の入力側にＥＣＣチェックビット生成回路７１を具備する以外は、本発明の第１の実施の形態のデータ処理装置と同じ構成要素を有している。同一構成要素には、同一参照符号を付し、その構成の詳細な説明は省略する。
【０１１０】
次に、本発明の第６の実施の形態のデータ処理装置の動作について説明する。
【０１１１】
本発明の第６の実施の形態のデータ処理装置では、外部ユーザーメモリ１と内部ユーザーメモリ２のデータ読み出しからＣＰＵ４の命令実行までは、本発明の第１の実施の形態のデータ処理装置と同一であるため、ＣＰＵ４の命令実行後、外部ユーザーメモリ１及び外部ユーザーメモリ２に書き込むまでの動作を説明する。
【０１１２】
本発明の第６の実施の形態のデータ処理装置では、内部ユーザーメモリ２に書き込むためのアドレスがＣＰＵ４にて指定される。
【０１１３】
次に、指定されたアドレスを元に、ＣＰＵ４より出力されたデータは、データバス５を経てＥＣＣチェックビット生成回路７１に送られ、ＥＣＣチェックビット生成回路７１は、ＣＰＵ出力データを元にチェックビットデータを生成する。具体的には、ＣＰＵ演算処理データが８ｂｉｔの時、チェックビットデータは４ｂｉｔが生成され、ＣＰＵ演算処理データが１６ｂｉｔの時、チェックビットデータは５ｂｉｔが生成され、ＣＰＵ演算処理データが３２ｂｉｔの時、チェックビットデータは６ｂｉｔが生成される。
【０１１４】
そして、ＣＰＵ出力データとチェックビット生成データは、内部ユーザーメモリ２に書き込まれる。
【０１１５】
一方、外部ユーザーメモリ１に書き込む場合、本発明の第４の実施の形態のデータ処理装置のように、ＤＭＡにより内部ユーザーメモリ２から外部ユーザーメモリ１に書き込まれるが、チェックビットデータを外部ユーザーメモリ１に書込むか書込まないかは、外部ユーザーメモリ１のチェックビット生成回路の有無により変わる為、制御する必要がある。
【０１１６】
上記の説明のように、本発明の第６の実施の形態のデータ処理装置では、ＥＣＣ補正を行う場合、チェックビットデータが必要であり、メモリのデータ入力部にＥＣＣチェックビット生成回路７１を具備することにより、チェックビットデータを生成することができる。
【０１１７】
【発明の効果】
以上説明した通り、本発明による第１の効果は、外部ユーザーメモリ１又は内部ユーザーメモリ２からメモリデータをアクセスする時、外部ユーザーメモリ１又は内部ユーザーメモリ２は、読み出し時にＥＣＣ補正処理を行なわない為、メモリデータアクセスの限られたマシンサイクル期間中は、ＥＣＣ補正時間を省いたメモリアクセスができ、本来メモリが持っているメモリアクセススピードを出す事ができる。
【０１１８】
本発明による第２の効果は、従来技術のように、内部ユーザーメモリ２に設けているＥＣＣ補正回路回路１０を設ける必要がなくなり半導体集積回路のチップ面積を縮小する事ができる。
【０１１９】
特に、内部ユーザーメモリ２の数が多くなるほど効果は大きくなる。さらに、ＥＣＣ付きの外部ユーザーメモリを使用しなくても良い為、安価なメモリが使用できる。
【０１２０】
本発明による第３の効果は、特開平７−５６７５８号公報に記載のように、バス制御部にチェックビット生成回路を設け、ＣＰＵにＥＣＣ補正回路を設けると、プロセッサバスのビット幅が多くなり、チップサイズが大きくなるが、（例：メモリデータバス８本の時、チェックビットデータバス４本必要。メモリデータバス１６本の時、チェックビットデータバス５本必要。メモリデータバス３２本の時、チェックビットデータバス６本必要）本発明の第１の実施の形態のデータ処理装置では、内部ユーザーメモリ２からメモリデータとチェックビットデータを分割して転送する為、データバス数はメモリデータ数の幅のみで実現できるので、本発明はチップサイズに影響を与えない。
【０１２１】
本発明による第４の効果は、図３の外部ユーザーメモリ１のＥＣＣ補正回路９と内部ユーザーメモリ２のＥＣＣ補正回路１０内に設けているＥＣＣ補正データを「使用する、しない」の機能切り替えを、図１のＥＣＣ補正回路１１に設ける事により、各々セレクト制御設定をせずに済み、容易に切り替えが可能となる。
【０１２２】
本発明による第５の効果は、外部ユーザーメモリ１でメモリデータをアクセスする場合、ＥＣＣなしの外部ユーザーメモリ１を使用しても、ＣＰＵ内部でＥＣＣ補正を行なう事ができる為、信頼性の高いデータ処理を実現できる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態のデータ処理装置のブロック図である。
【図２】図１に示す本発明の第１の実施の形態のデータ処理装置の動作を説明するタイムチャートである。
【図３】本発明の第２の実施の形態のデータ処理装置のブロック図である。
【図４】本発明の第３の実施の形態のデータ処理装置のブロック図である。
【図５】本発明の第４の実施の形態のデータ処理装置のブロック図である。
【図６】本発明の第５の実施の形態のデータ処理装置のブロック図である。
【図７】本発明の第６の実施の形態のデータ処理装置のブロック図である。
【図８】分岐命令のフローチャートである。
【図９】図３に示す本発明の第２の実施の形態のデータ処理装置の動作を説明するタイムチャートである。
【図１０】従来のデータ処理装置のブロック図である。
【図１１】従来のデータ処理装置の動作を説明するタイムチャートである。
【符号の説明】
１    外部ユーザーメモリ
２    内部ユーザーメモリ
３    ＩＦＵ
４    ＣＰＵ
５    データバス
６    アドレスバス
７    データポート
８    アドレスポート
１１    ＥＣＣ補正回路
１２    ＥＣＣ処理選択セレクタ
１３    ＥＣＣデータ選択信号
１４    インストラクションレジスタ
１５    １ｓｔレジスタ
１６    ２ｎｄレジスタ
１７    ３ｒｄレジスタ
１８    ４ｔｈレジスタ
１９    ５ｔｈレジスタ
２０    ｎｔｈレジスタ
２１    ＥＣＣ補正回路およびＥＣＣ処理選択セレクタレジスタ
３１    ２次ＩＦＵ
４２    書き込み選択回路
４３    ２次ＩＦＵ
４４    ３次ＩＦＵ
４５    データセレクタ
５１    ＤＭＡコントローラ
５２，５３    ＤＭＡバス
６２    データセレクタ
６３，７１    ＥＣＣチェックビット生成回路
１０９，１１０    ＥＣＣ補正回路
Ｓ１１〜Ｓ２３    ステップ
【図１】
0003717813.tif 000002
【図２】
0003717813.tif 000003
【図３】
0003717813.tif 000004
【図４】
0003717813.tif 000005
【図５】
0003717813.tif 000006
【図６】
0003717813.tif 000007
【図７】
0003717813.tif 000008
【図８】
0003717813.tif 000009
【図９】
0003717813.tif 000010
【図１０】
0003717813.tif 000011
【図１１】
0003717813.tif 000012