(57)【要約】【課題】  複雑な回路を追加することなくエラー訂正を行うことが可能なデータ通信システムを提供すること。【解決手段】  本発明におけるデータ通信システムは、エラー訂正機能を有するメモリを備えたデータ通信システムであって、メモリの有するエラー訂正機能のうちエラー訂正コード生成機能及び／又はエラー訂正機能を外部とのデータの送信及び／又は受信に利用したデータ通信システムである。このような構成によりメモリが使用しているエラー訂正コード生成機能及び／又はエラー訂正機能をデータの送受信にそのまま利用することができるため、複雑な回路を追加することなくエラー訂正を行うことが可能となる。【選択図】図１
2006217318.tif 000002
【特許請求の範囲】
【請求項１】
エラー訂正機能を有するメモリを備えたデータ通信システムであって、
前記メモリの有するエラー訂正機能のうちエラー訂正コード生成機能及び／又はエラー訂正機能を外部とのデータの送信及び／又は受信に利用したデータ通信システム。
【請求項２】
データに基づいてエラー訂正コードを生成するエラー訂正コード生成手段と、
前記エラー訂正コード生成手段により生成されたエラー訂正コードと、当該エラー訂正コードに対応するデータとを互いに関連付けて格納する記憶手段と、
前記記憶手段に格納されたエラー訂正コードに基づいて当該エラー訂正コードに対応するデータの訂正を行うエラー訂正手段と、
前記エラー訂正コード生成手段によって生成されたエラー訂正コードと当該エラー訂正コードと対応するデータを外部に送信するデータ送信手段と、
外部より送信されたエラー訂正コードと当該エラー訂正コードと対応するデータを受信するデータ受信手段とを備え、
前記エラー訂正手段は、前記データ受信手段により受信されたエラー訂正コードに基づいて当該エラー訂正コードと対応するデータの訂正を行うデータ通信システム。
【請求項３】
前記記憶手段は、制御手段を介さずに前記データ送信手段及び前記データ受信手段に対してデータの入出力を行うＤＭＡ（Direct Memory Access）制御手段を備えることを特徴とする請求項２記載のデータ通信システム。
【請求項４】
前記データ通信システムは、更に、
書き込み先を前記記憶手段と前記データ送信手段から選択し、選択した書き込み先に前記エラー訂正コード生成手段により生成されたエラー訂正コードと、当該エラー訂正コードに対応するデータとを互いに関連付けて書き込む書き込み先選択手段を備えることを特徴とする請求項２記載のデータ通信システム。
【請求項５】
前記書き込み先選択手段は、入力した選択信号に基づいて書き込み先を決定することを特徴とする請求項４記載のデータ通信システム。
【請求項６】
前記データ通信システムは、更に、
読み出し元を前記メモリと前記受信手段から選択し、選択した読み出し元からエラー訂正コードと当該エラー訂正コードと対応するデータを入力し、前記エラー訂正手段に出力する読み出し元選択手段を備えることを特徴とする請求項２または４記載のデータ通信システム。
【請求項７】
前記読み出し元選択手段は、入力した選択信号に基づいて読み出し元を決定することを特徴とする請求項６記載のデータ通信システム。
【請求項８】
前記データ送信手段及びデータ受信手段は、シリアル通信によるデータ送信及びデータ受信を行うことを特徴とする請求項１乃至７いずれかに記載のデータ通信システム。
【請求項９】
データに基づいてエラー訂正コードを生成するエラー訂正コード生成手段と、
前記エラー訂正コード生成手段により生成されたエラー訂正コードと、当該エラー訂正コードに対応するデータとを互いに関連付けて格納する記憶手段と、
前記記憶手段に格納されたエラー訂正コードに基づいて当該エラー訂正コードに対応するデータの訂正を行うエラー訂正手段と、
前記エラー訂正コード生成手段によって生成されたエラー訂正コードと当該エラー訂正コードと対応するデータを外部に送信するデータ送信手段とを備えたデータ通信システム。
【請求項１０】
データに基づいてエラー訂正コードを生成するエラー訂正コード生成手段と、
前記エラー訂正コード生成手段により生成されたエラー訂正コードと、当該エラー訂正コードに対応するデータとを互いに関連付けて格納する記憶手段と、
前記記憶手段に格納されたエラー訂正コードに基づいて当該エラー訂正コードに対応するデータの訂正を行うエラー訂正手段と、
外部より送信されたエラー訂正コードと当該エラー訂正コードと対応するデータを受信するデータ受信手段とを備え、
前記エラー訂正手段は、前記データ受信手段により受信されたエラー訂正コードに基づいて当該エラー訂正コードと対応するデータの訂正を行うデータ通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ通信システムに関するものであり、より詳細にはエラー訂正機能を備えたデータ通信システムに関する。
【背景技術】
【０００２】
データ通信は、正確にデータを送受信することが要求される。そのため、エラーのないデータを送信することが最も大切だが、エラーが発生した場合、エラーを検出し訂正する技術も必要となってくる。エラーの原因がノイズである場合の対策として、各コードデータをノイズの多い期間と少ない期間との比に合わせて分けてデータを並び替えて送受信するという方法が提案されている（例えば、特許文献１など）。しかしながら、このような方法を行うには複雑な回路構成が必要となる。
【０００３】
データ通信におけるエラーの検出や訂正はデータ通信システム自身ではなく、データ通信システムを利用するアプリケーション側で行う場合が多い。このようにすることにより、アプリケーションの変更によりエラー検出及びエラー訂正の方法の変更に柔軟に対応することができるからである。
【０００４】
しかしながら、このようなアプリケーションによる対応では、アプリケーション側のエラーが発生する危険もある。
【０００５】
一方、ＲＡＭ（Random Access Memory）には、パリティビットやＥＣＣ（Error Correcting Code）等のエラー検出、訂正機能を回路自身に備えているものがある。例えばパリティビット付きＲＡＭの場合、データ用とは別にパリティビットと言われる１ビットのデータを通常の読み書き用のビットデータ以外に読み書きを行うことにより、データの整合性を確認する。
【０００６】
更には、ＥＣＣ回路を備えたＲＡＭも存在する。これはデータをメモリに書き込む際に書き込みを行うデータに応じてＥＣＣ生成回路がＥＣＣを生成し、ＲＡＭにデータと関連付けたＥＣＣを格納する。そして、読み出し時に、データとＥＣＣを読み出し、読み出したＥＣＣによって読み出したデータが正しいかどうかを確認する。更には、ＥＣＣによりデータの誤りを訂正することも可能となる。
【０００７】
しかしながら、ＲＡＭにＥＣＣ回路を備えたデータ通信システムはあったものの、このＥＣＣ回路をデータ通信にも利用することはなかった。以下に、従来技術におけるデータ通信システムについて説明する。
【０００８】
図９は、従来技術におけるデータ通信システムの例を示す図である。データ通信システム３は、ＣＰＵ３０、書き込み先選択回路３１、ＥＣＣ生成回路３２、ＲＡＭ３３、ＥＣＣ訂正回路３４、読み出し元選択回路３５、シリアル通信回路３６を備える。
【０００９】
ＣＰＵ３０は、データ通信システム３における各種制御を実行する。書き込み先選択回路３１は、ＣＰＵ３０から入力する選択信号に基づいてＲＡＭ３３とシリアル通信回路３６のいずれかにデータを書き込む回路である。ＥＣＣ生成回路３２は、入力データに基づいてＥＣＣを生成し、ＲＡＭ３３に生成したＥＣＣを書き込む回路である。
【００１０】
ＲＡＭ３３は、データ及びＥＣＣを格納する記憶手段である。ＲＡＭ３３は、データ部３３０とＥＣＣ部３３１を備える。データ部３３０はデータを格納し、ＥＣＣ部３３１はＥＣＣを格納する。
【００１１】
ＥＣＣ訂正回路３４は、読み出しを行ったデータ及びＥＣＣに基づいて読み出したデータのエラーの有無を判定し、エラーが存在した場合にはデータの訂正を行う回路である。読み出し元選択回路３５は、ＣＰＵ３０から入力する選択信号に基づいてＲＡＭ３３とシリアル通信回路３６のいずれかからデータの読み出しを行う回路である。
【００１２】
従来技術における、ＲＡＭ３３にデータの書き込みを行う場合の処理の流れについて説明する。まず、ＣＰＵ３０が、書き込み先選択回路３１に書き込み先をＲＡＭ３３にする旨の選択信号を出力する。そしてＣＰＵ３０は、送信を行うデータを書き込み先選択回路３１及びＥＣＣ生成回路３２に出力する。
【００１３】
書き込み先選択回路３１は、ＣＰＵ３０から選択信号及び書き込みデータを入力すると、入力した選択信号により書き込み先をＲＡＭ３３と判定し、ＲＡＭ３３のデータ部３３０に入力した書き込みデータの書き込みを行う。
【００１４】
ＥＣＣ生成回路３２は、ＣＰＵ３０から書き込みデータを入力すると、入力した書き込みデータに基づいてＥＣＣの生成を行う。ＥＣＣ生成回路３２は、ＥＣＣを生成すると、ＲＡＭ３３のＥＣＣ部３３１に生成したＥＣＣの書き込みを行う。
【００１５】
次にデータ通信システム３が、ＲＡＭ３３からデータの読み出しを行う場合の処理の流れについて説明する。ＣＰＵ３０が、読み出し元選択回路３５に読み出し元がＲＡＭ３３である旨の選択信号を出力する。
【００１６】
読み出し元選択回路３５は、ＣＰＵ３０から選択信号を入力すると、入力した選択信号によりＲＡＭ３３から読み出しデータ及びＥＣＣを入力する。読み出し元選択回路３５は読み出しデータ及びＥＣＣを入力すると、入力した読み出しデータ及びＥＣＣをＥＣＣ訂正回路３４に出力する。
【００１７】
ＥＣＣ訂正回路３４は、読み出し元選択回路３５から読み出しデータ及びＥＣＣを入力すると、入力したＥＣＣに基づいて入力した読み出しデータが正しいデータであるか否かの判定を行う。正しいデータであると判定した場合、ＥＣＣ訂正回路３４は、入力した読み出しデータをＣＰＵ３０に対して出力する。正しいデータでないと判定した場合、ＥＣＣ訂正回路３４は、入力したＥＣＣに基づいて入力した読み出しデータの訂正を行う。訂正が完了するとＥＣＣ訂正回路３４は、訂正した読み出しデータをＣＰＵ３０に対して出力する。
【００１８】
次に、データ通信システム３におけるデータの送信方法について説明する。まず、ＣＰＵ３０が書き込み先選択回路３１にデータの書き込み先がシリアル通信回路３６である旨の選択信号及び書き込みデータを出力する。書き込み先選択回路３１は、ＣＰＵ３０から選択信号及び書き込みデータを入力すると、選択信号に基づいてシリアル通信回路３６に入力した書き込みデータの書き込みを行う。
【００１９】
シリアル通信回路３６は、書き込み先選択回路３１により書き込みデータが書き込まれると、書き込まれた書き込みデータを通信プロトコルに準じた形式で接続された送信端子より送信する。
【００２０】
続いて、従来技術におけるデータ受信時の処理の流れについて説明する。まず、シリアル通信回路３６が、読み出しデータを受信する。シリアル通信回路３６は、受信した読み出しデータを受信データ記憶部３６１に格納する。次にＣＰＵ３０が、読み出し元選択回路３５に読み出し元がシリアル通信回路３６である旨の選択信号を出力する。
【００２１】
読み出し元選択回路３５は、ＣＰＵ３０から選択信号を入力すると、入力した選択信号によりシリアル通信回路３６から読み出しデータを入力する。読み出し元選択回路３５は読み出しデータを入力すると、入力した読み出しデータをＣＰＵ３０に対して出力する。
【００２２】
データ通信システム３がこのような構成の場合、ＲＡＭへのデータの読み書きはＥＣＣを利用することによりエラーの訂正が行われるため、データの信頼性が増す。しかしながら、データ通信時にはエラーの検出及び訂正を行う機能が備えられておらず、送受信したデータの信頼性を高めるためにはデータ通信システムを利用するアプリケーション側で対応しなければならなかった。
【特許文献１】特開２００１−８６００７号公報
【発明の開示】
【発明が解決しようとする課題】
【００２３】
このように、従来技術におけるデータ通信システムは、データ通信時におけるエラー検出及び訂正の機能を備えておらず、送受信したデータにエラーが含まれていた場合、アプリケーション側で対応しなければならないという問題点があった。
【課題を解決するための手段】
【００２４】
本発明におけるデータ通信システムは、エラー訂正機能を有するメモリを備えたデータ通信システムであって、前記メモリの有するエラー訂正機能のうちエラー訂正コード生成機能及び／又はエラー訂正機能を外部とのデータの送信及び／又は受信に利用したデータ通信システムである。このような構成によりメモリが使用しているエラー訂正コード生成機能及び／又はエラー訂正機能をデータの送受信にそのまま利用することができるため、複雑な回路を追加することなくエラー訂正を行うことが可能となる。
【００２５】
本発明におけるデータ通信システムは、データに基づいてエラー訂正コードを生成するエラー訂正コード生成手段と、前記エラー訂正コード生成手段により生成されたエラー訂正コードと、当該エラー訂正コードに対応するデータとを互いに関連付けて格納する記憶手段と、前記記憶手段に格納されたエラー訂正コードに基づいて当該エラー訂正コードに対応するデータの訂正を行うエラー訂正手段と、前記エラー訂正コード生成手段によって生成されたエラー訂正コードと当該エラー訂正コードと対応するデータを外部に送信するデータ送信手段と、外部より送信されたエラー訂正コードと当該エラー訂正コードと対応するデータを受信するデータ受信手段とを備え、前記エラー訂正手段は、前記データ受信手段により受信されたエラー訂正コードに基づいて当該エラー訂正コードと対応するデータの訂正を行うデータ通信システムである。このような構成により記憶手段が使用しているエラー訂正コード生成手段及びエラー訂正手段をデータの送受信にそのまま利用することができるため、複雑な回路を追加することなくエラー訂正を行うことが可能となる。
【００２６】
本発明におけるデータ通信システムは、データに基づいてエラー訂正コードを生成するエラー訂正コード生成手段と、前記エラー訂正コード生成手段により生成されたエラー訂正コードと、当該エラー訂正コードに対応するデータとを互いに関連付けて格納する記憶手段と、前記記憶手段に格納されたエラー訂正コードに基づいて当該エラー訂正コードに対応するデータの訂正を行うエラー訂正手段と、前記エラー訂正コード生成手段によって生成されたエラー訂正コードと当該エラー訂正コードと対応するデータを外部に送信するデータ送信手段とを備えたデータ通信システムである。このような構成により記憶手段が使用しているエラー訂正コード生成手段をデータの送受信にそのまま利用することができるため、複雑な回路を追加することなくエラー訂正を行うことが可能となる。
【００２７】
本発明におけるデータ通信システムは、データに基づいてエラー訂正コードを生成するエラー訂正コード生成手段と、前記エラー訂正コード生成手段により生成されたエラー訂正コードと、当該エラー訂正コードに対応するデータとを互いに関連付けて格納する記憶手段と、前記記憶手段に格納されたエラー訂正コードに基づいて当該エラー訂正コードに対応するデータの訂正を行うエラー訂正手段と、外部より送信されたエラー訂正コードと当該エラー訂正コードと対応するデータを受信するデータ受信手段とを備え、前記エラー訂正手段は、前記データ受信手段により受信されたエラー訂正コードに基づいて当該エラー訂正コードと対応するデータの訂正を行うデータ通信システムである。このような構成により記憶手段が使用しているエラー訂正手段をデータの送受信にそのまま利用することができるため、複雑な回路を追加することなくエラー訂正を行うことが可能となる。
【発明の効果】
【００２８】
本発明によれば複雑な回路を追加することなくエラー訂正を行うことが可能なデータ通信システムを提供することが可能となる。
【発明を実施するための最良の形態】
【００２９】
図１は、本発明の実施の形態１におけるデータ通信システムの構成を示すブロック図である。データ通信システム１は、ＲＡＭ及びシリアル通信回路を備えたマイクロコンピュータである。データ通信システム１は、ＣＰＵ１０、書き込み先選択回路１１、ＥＣＣ生成回路１２、ＲＡＭ１３、読み出し元選択回路１４、ＥＣＣ訂正回路１５、シリアル通信回路１６を備える。
【００３０】
ＣＰＵ１０は、データ通信システム１における各種制御を実行する制御手段である。書き込み先選択回路１１は、ＣＰＵ１０から入力する選択信号に基づいてＲＡＭ１３とシリアル通信回路１６のいずれかにデータを書き込む回路である。ＥＣＣ生成回路１２はエラー訂正コード生成手段であって、入力データに基づいてＥＣＣを生成し、ＣＰＵ１０から入力する選択信号に基づいてＲＡＭ１３とシリアル通信回路１６のいずれかに生成したＥＣＣを書き込む回路である。ＥＣＣは通常、８ビットのデータに対して５ビット、１６ビットのデータに対して６ビット生成されるが、ＥＣＣのビット数、データ形式については特に限定されない。
【００３１】
ＲＡＭ１３は、データ及びＥＣＣを格納する記憶手段である。ＲＡＭ１３は、データ部１３０とＥＣＣ部１３１を備える。データ部１３０はデータを格納し、ＥＣＣ部１３１はＥＣＣを格納する。
【００３２】
読み出し元選択回路１４は、ＣＰＵ１０から入力する選択信号に基づいてＲＡＭ１３とシリアル通信回路１６のいずれかからデータ及びＥＣＣの読み出しを行う回路である。ＥＣＣ訂正回路１５はエラー訂正手段であって、読み出しを行ったデータ及びＥＣＣに基づいて読み出したデータのエラーの有無を判定し、エラーがあった場合にはデータの訂正を行う回路である。
【００３３】
シリアル通信回路１６はデータ送信及び受信手段であって、バッファに書き込まれたデータの送信及び受信を行うための回路である。シリアル通信回路１６は、送信データ記憶部１６０、送信ＥＣＣ記憶部１６１、受信データ記憶部１６２、受信ＥＣＣ記憶部１６３を備える。送信データ記憶部１６０、送信ＥＣＣ記憶部１６１、受信データ記憶部１６２、受信ＥＣＣ記憶部１６３は、それぞれ送信データ、送信ＥＣＣ、受信データ、受信ＥＣＣを格納するバッファである。
【００３４】
次に、図２に示すフローチャートを用いて、本発明の実施の形態１におけるデータ送信時の処理の流れについて説明する。まず、ＣＰＵ１０が、書き込み先選択回路１１及びＥＣＣ生成回路１２に書き込み先をシリアル通信回路１６にする旨の選択信号を出力する（Ｓ１１）。選択信号は書き込み先が２箇所に限定される場合は１ビットのビットデータでよいが、複数ビットのビットデータで構成されていてもよい。そしてＣＰＵ１０は、送信を行うデータを書き込み先選択回路１１及びＥＣＣ生成回路１２に出力する（Ｓ１２）。
【００３５】
書き込み先選択回路１１は、ＣＰＵ１０から選択信号及び送信データを入力すると、入力した選択信号により書き込み先をシリアル通信回路１６と判定し、シリアル通信回路１６の送信データ記憶部１６０に入力した送信データの書き込みを行う（Ｓ１３）。
【００３６】
ＥＣＣ生成回路１２は、ＣＰＵ１０から選択信号及び送信データを入力すると、まず、入力した送信データに基づいてＥＣＣの生成を行う（Ｓ１４）。ＥＣＣ生成回路１２は、ＥＣＣを生成すると入力した選択信号により書き込み先をシリアル通信回路１６と判定し、シリアル通信回路１６の送信ＥＣＣ記憶部１６１に生成したＥＣＣの書き込みを行う（Ｓ１５）。
【００３７】
シリアル通信回路１６は、送信データ記憶部１６０及び送信ＥＣＣ記憶部１６１に送信データ及びＥＣＣが書き込まれると、書き込まれた送信データ及びＥＣＣを互いに関連付けて通信プロトコルに準じた形式でシリアル通信回路１６に接続された送信端子より送信する（Ｓ１６）。このときの通信プロトコルは特に限定されない。
【００３８】
続いて、図３に示すフローチャートを用いて、本発明の実施の形態１におけるデータ受信時の処理の流れについて説明する。まず、シリアル通信回路１６が、シリアル通信回路１６に接続された受信端子より、互いに関連付けられた受信データ及びＥＣＣを受信する（Ｓ２１）。シリアル通信回路１６は、受信した受信データを受信データ記憶部１６２に、受信したＥＣＣを受信ＥＣＣ記憶部１６３にそれぞれ格納する。次にＣＰＵ１０が、読み出し元選択回路１４に読み出し元がシリアル通信回路１６である旨の選択信号を出力する（Ｓ２２）。
【００３９】
読み出し元選択回路１４は、ＣＰＵ１０から選択信号を入力すると、入力した選択信号によりシリアル通信回路１６から受信データ及びＥＣＣを入力する（Ｓ２３）。読み出し元選択回路１４は受信データ及びＥＣＣを入力すると、入力した受信データ及びＥＣＣをＥＣＣ訂正回路１５に出力する。
【００４０】
ＥＣＣ訂正回路１５は、読み出し元選択回路１４から受信データ及びＥＣＣを入力すると入力したＥＣＣに基づいて入力した受信データが正しいデータであるか否かの判定を行う（Ｓ２４）。正しいデータであると判定した場合（Ｓ２５）、ＥＣＣ訂正回路１５は、入力した受信データをＣＰＵ１０に対して出力する（Ｓ２７）。正しいデータでないと判定した場合、ＥＣＣ訂正回路１５は、入力したＥＣＣに基づいて入力した受信データの訂正を行う（Ｓ２６）。訂正が完了するとＥＣＣ訂正回路１５は、訂正した受信データをＣＰＵ１０に対して出力する（Ｓ２７）。
【００４１】
次に、図４に示すフローチャートを用いて、データ通信システム１が、ＲＡＭ１３にデータの書き込みを行う場合の処理の流れについて説明する。まず、ＣＰＵ１０が、書き込み先選択回路１１及びＥＣＣ生成回路１２に書き込み先をＲＡＭ１３にする旨の選択信号を出力する（Ｓ３１）。そしてＣＰＵ１０は、書き込みを行うデータを書き込み先選択回路１１及びＥＣＣ生成回路１２に出力する（Ｓ３２）。
【００４２】
書き込み先選択回路１１は、ＣＰＵ１０から選択信号及び書き込みデータを入力すると、入力した選択信号により書き込み先をＲＡＭ１３と判定し、ＲＡＭ１３のデータ部１３０に入力した書き込みデータの書き込みを行う（Ｓ３３）。
【００４３】
ＥＣＣ生成回路１２は、ＣＰＵ１０から選択信号及び書き込みデータを入力すると、まず、入力した書き込みデータに基づいてＥＣＣの生成を行う（Ｓ３４）。ＥＣＣ生成回路１２は、ＥＣＣを生成すると入力した選択信号により書き込み先をＲＡＭ１３と判定し、ＲＡＭ１３のＥＣＣ部１３１に生成したＥＣＣの書き込みを行う（Ｓ３５）。
【００４４】
次に、図５に示すフローチャートを用いて、データ通信システム１が、ＲＡＭ１３からデータの読み出しを行う場合の処理の流れについて説明する。ＣＰＵ１０が、読み出し元選択回路１４に読み出し元がＲＡＭ１３である旨の選択信号を出力する（Ｓ４１）。
【００４５】
読み出し元選択回路１４は、ＣＰＵ１０から選択信号を入力すると、入力した選択信号によりＲＡＭ１３から読み出しデータ及びＥＣＣを入力する（Ｓ４２）。読み出し元選択回路１４は読み出しデータ及びＥＣＣを入力すると、入力した読み出しデータ及びＥＣＣをＥＣＣ訂正回路１５に出力する。
【００４６】
ＥＣＣ訂正回路１５は、読み出し元選択回路１４から読み出しデータ及びＥＣＣを入力すると入力したＥＣＣに基づいて入力した読み出しデータが正しいデータであるか否かの判定を行う（Ｓ４３）。正しいデータであると判定した場合（Ｓ４４）、ＥＣＣ訂正回路１５は、入力した読み出しデータをＣＰＵ１０に対して出力する（Ｓ４５）。正しいデータでないと判定した場合、ＥＣＣ訂正回路１５は、入力したＥＣＣに基づいて入力した読み出しデータの訂正を行う（Ｓ４６）。訂正が完了するとＥＣＣ訂正回路１５は、訂正した読み出しデータをＣＰＵ１０に対して出力する（Ｓ４５）。
【００４７】
このようにしてデータ通信時にＥＣＣを利用することにより、データ通信時のエラー訂正を行うことが可能となる。また、ＲＡＭの備えているＥＣＣ回路を利用することができるため、複雑な回路追加を行わずにデータ通信時のエラー訂正を行うことによりデータ通信時の信頼性を高めることができる。
【００４８】
発明の実施の形態２．
発明の実施の形態１の構成をＤＭＡ（Direct Memory Access）機能付きデータ通信システムに応用した例である。
【００４９】
図６は、本発明の実施の形態２におけるデータ通信システムの構成を示すブロック図である。データ通信システム２は、ＲＡＭ及びシリアル通信回路を備えたマイクロコンピュータである。データ通信システム２は、ＣＰＵ２０、ＥＣＣ生成回路２１、ＲＡＭ２２、ＤＭＡ制御回路２３、シリアル通信回路２４、ＥＣＣ訂正回路２５を備える。
【００５０】
ＣＰＵ２０は、データ通信システム２における各種制御を行う。ＥＣＣ生成回路２１はエラー訂正コード生成手段であって、ＣＰＵ２０から書き込みデータを入力し、入力した書き込みデータに基づいてＥＣＣを生成する。ＥＣＣは通常、８ビットのデータに対して５ビット、１６ビットのデータに対して６ビット生成されるが、ＥＣＣのビット数、データ形式については特に限定されない。ＥＣＣ生成回路２１は、生成したＥＣＣをＲＡＭ２２の備えるＥＣＣ部２２１に書き込みを行う。
【００５１】
ＲＡＭ２２は、データ及びＥＣＣを格納する記憶手段である。ＲＡＭ２２は、データ部２２０、ＥＣＣ部２２１、データ部２２２、ＥＣＣ部２２３を備える。データ部２２０、２２２はデータを格納し、ＥＣＣ部２２１、２２３はＥＣＣを格納する。データ部２２０と２２２、ＥＣＣ部２２１と２２３は、図６では区別しているが、ＲＡＭ２２内の同一のエリアを利用してもよい。
【００５２】
ＤＭＡ制御回路２３はＤＭＡ制御手段であって、ＲＡＭ２２がＣＰＵ２０などの制御手段を介さずに直接シリアル通信回路２４にアクセスするための制御を行う回路である。ＤＭＡ制御回路２３は、ＲＡＭ２２に格納された書き込みデータ及びＥＣＣを読み出し、シリアル通信回路２４に書き込みを行う。またシリアル通信回路２４に書き込まれた読み出しデータ及びＥＣＣを読み出し、ＲＡＭ２２に書き込みを行う。
【００５３】
シリアル通信回路２４はデータ送信及び受信手段であって、バッファに書き込まれたデータの送信及び受信を行うための回路である。シリアル通信回路２４は、送信データ記憶部２４０、送信ＥＣＣ記憶部２４１、受信データ記憶部２４２、受信ＥＣＣ記憶部２４３を備える。送信データ記憶部２４０、送信ＥＣＣ記憶部２４１、受信データ記憶部２４２、受信ＥＣＣ記憶部２４３は、それぞれ送信データ、送信ＥＣＣ、受信データ、受信ＥＣＣを格納する。
【００５４】
ＥＣＣ訂正回路２５は、ＲＡＭ２２から読み出しデータ及びＥＣＣを入力すると入力したＥＣＣに基づいて入力した読み出しデータが正しいデータであるか否かの判定を行う。正しいデータであると判定した場合、ＥＣＣ訂正回路２５は、入力した読み出しデータをＣＰＵ２０に対して出力する。正しいデータでないと判定した場合、ＥＣＣ訂正回路２５はエラー訂正手段であって、入力したＥＣＣに基づいて入力した読み出しデータの訂正を行う。訂正が完了するとＥＣＣ訂正回路２５は、訂正した読み出しデータをＣＰＵ２０に対して出力する。
【００５５】
続いて、図７に示すフローチャートを用いて、本発明の実施の形態２におけるデータ送信時の処理の流れについて説明する。まずＣＰＵ２０が、送信を行う送信データをＥＣＣ生成回路２１とＲＡＭ２２に対して出力する（Ｓ５１）。
【００５６】
ＥＣＣ生成回路２１は、ＣＰＵ２０から入力した送信データに基づいてＥＣＣを生成する（Ｓ５２）。ＥＣＣの生成が完了するとＥＣＣ生成回路２１は、生成したＥＣＣをＲＡＭ２２に対して出力する（Ｓ５３）。
【００５７】
ＲＡＭ２２は、ＣＰＵ２０から送信データを入力しデータ部２２０に格納する。また、ＥＣＣ生成回路２１からＥＣＣ入力しＥＣＣ部２２１に格納する。
【００５８】
ＤＭＡ制御回路２３は、ＲＡＭ２２に送信データ及びＥＣＣが格納されるとＲＡＭ２２から格納された送信データ及びＥＣＣを読み出し（Ｓ５４）、読み出した送信データ及びＥＣＣをシリアル通信回路２４の送信データ記憶部２４０及び送信ＥＣＣ記憶部２４１にそれぞれ書き込む（Ｓ５５）。
【００５９】
シリアル通信回路２４は、送信データ記憶部及び送信ＥＣＣ記憶部書き込みデータ及びＥＣＣが書き込まれると、書き込まれた書き込みデータ及びＥＣＣを通信プロトコルに準じた形式でシリアル通信回路２４に接続された送信端子より送信する（Ｓ５６）。このときの通信プロトコルは特に限定されない。
【００６０】
続いて、図８に示すフローチャートを用いて、本発明の実施の形態２におけるデータ受信時の処理の流れについて説明する。まず、シリアル通信回路２４が、シリアル通信回路２４に接続された受信端子より、受信データ及びＥＣＣを受信する（Ｓ６１）。シリアル通信回路２４は、受信した受信データを受信データ記憶部２４２に、受信したＥＣＣを受信ＥＣＣ記憶部２４３にそれぞれ格納する。
【００６１】
ＤＭＡ制御回路２３は、シリアル通信回路２４の送信データ記憶部及び送信ＥＣＣ記憶部に受信データ及びＥＣＣが格納されるとシリアル通信回路２４から格納された読み出しデータ及びＥＣＣを読み出し、ＲＡＭ２２に読み出した受信データ及びＥＣＣを書き込む（Ｓ６２）。このとき、ＤＭＡ制御回路２３は、ＲＡＭ２２内のデータ部２２３に受信データを、ＥＣＣ部２２４にＥＣＣをそれぞれ書き込む。
【００６２】
ＲＡＭ２２は、受信データ及びＥＣＣを格納すると、ＥＣＣ訂正回路２５は、ＲＡＭ２２から格納した受信データ及びＥＣＣを入力する（Ｓ６３）。ＥＣＣ訂正回路２５は、ＲＡＭ２２から受信データ及びＥＣＣを入力すると入力したＥＣＣに基づいて入力した読み出しデータが正しいデータであるか否かの判定を行う（Ｓ６４）。受信データが正しいデータであると判定した場合（Ｓ６５）、ＥＣＣ訂正回路２５は、入力した受信データをＣＰＵ２０に対して出力する（Ｓ６６）。正しいデータでないと判定した場合、ＥＣＣ訂正回路２５は、入力したＥＣＣに基づいて入力した受信データの訂正を行う（Ｓ６７）。訂正が完了するとＥＣＣ訂正回路２５は、訂正した受信データをＣＰＵ２０に対して出力する（Ｓ６６）。
【００６３】
このように本発明におけるデータ通信システムは、ＤＭＡ機能付きの構成にすることも可能となる。このようにすることにより、ＣＰＵを介さずにＲＡＭとシリアル通信回路間でデータのアクセスが可能になるため、処理を高速化することが可能となる。
【００６４】
その他の発明の実施の形態．
上述の例では、データ送信時にエラー訂正コード生成手段がエラー訂正コードを生成し、データ受信時にエラー訂正手段がエラーの訂正を行ったが、これをいずれか一方だけ行う構成にしてもよい。
【図面の簡単な説明】
【００６５】
【図１】本発明におけるデータ通信システムの構成を示すブロック図である。
【図２】本発明におけるデータ通信システムの処理の流れを示すフローチャートである。
【図３】本発明におけるデータ通信システムの処理の流れを示すフローチャートである。
【図４】本発明におけるデータ通信システムの処理の流れを示すフローチャートである。
【図５】本発明におけるデータ通信システムの処理の流れを示すフローチャートである。
【図６】本発明におけるデータ通信システムの構成を示すブロック図である。
【図７】本発明におけるデータ通信システムの処理の流れを示すフローチャートである。
【図８】本発明におけるデータ通信システムの処理の流れを示すフローチャートである。
【図９】従来技術におけるデータ通信システムの構成を示すブロック図である。
【符号の説明】
【００６６】
１    データ通信システム
１０    ＣＰＵ
１１    書き込み先選択回路
１２    ＥＣＣ生成回路
１３    ＲＡＭ
１３０    データ部
１３１    ＥＣＣ部
１４    読み出し元選択回路
１５    ＥＣＣ訂正回路
１６    シリアル通信回路
１６０    送信データ記憶部
１６１    送信ＥＣＣ記憶部
１６２    受信データ記憶部
１６３    受信ＥＣＣ記憶部
２    データ通信システム
２０    ＣＰＵ
２１    ＥＣＣ生成回路
２２    ＲＡＭ
２２０    データ部
２２１    ＥＣＣ部
２２２    データ部
２２３    ＥＣＣ部
２３    制御回路
２４    シリアル通信回路
２４０    送信データ記憶部
２４１    送信ＥＣＣ記憶部
２４２    受信データ記憶部
２４３    受信ＥＣＣ記憶部
２５    ＥＣＣ訂正回路
３    データ通信システム
３０    ＣＰＵ
３１    書き込み先選択回路
３２    ＥＣＣ生成回路
３３    ＲＡＭ
３４    ＥＣＣ訂正回路
３５    読み出し元選択回路
３６    シリアル通信回路
３３０    データ部
３３１    ＥＣＣ部
３６０    受信データ記憶部
３６１    送信データ記憶部
【図１】
2006217318.tif 000003
【図２】
2006217318.tif 000004
【図３】
2006217318.tif 000005
【図４】
2006217318.tif 000006
【図５】
2006217318.tif 000007
【図６】
2006217318.tif 000008
【図７】
2006217318.tif 000009
【図８】
2006217318.tif 000010
【図９】
2006217318.tif 000011