(57)【特許請求の範囲】
【請求項１】
ディジタルデータ及び該ディジタルデータに関するエラーチェック用コードの送信を行うディジタル信号送信装置において、
該ディジタル信号送信装置は、ディジタルデータ及びエラーチェック用コードの順で送信を実行し、かつ、
該エラーチェック用コードは、１回の通信につき送信されるディジタルデータ及びエラーチェック用コードの各ビット数をＭ及びｎ、また、Ｍをｎで割ったときの剰余をｒ（但し、ｒ＞０）とするとき、前記ディジタルデータの最後に値が全て「０」であるｎ−ｒビット分のコードが付加されたＭ＋ｎ−ｒビットのディジタルコードに関して求めたｎビット毎の排他的論理和を、更にｒビット分だけローテーションしたものであることを特徴とするディジタル信号送信装置。
【請求項２】
ディジタルデータ及び該ディジタルデータに関するエラーチェック用コードの送信を行うディジタル信号送信方法において、
ディジタルデータ及びエラーチェック用コードの順で送信が実行され、
該エラーチェック用コードが、１回の通信につき送信されるディジタルデータ及びエラーチェック用コードの各ビット数をＭ及びｎ、また、Ｍをｎで割ったときの剰余をｒ（但し、ｒ＞０）とするとき、前記ディジタルデータの最後に値が全て「０」であるｎ−ｒビット分のコードが付加されたＭ＋ｎ−ｒビットのディジタルコードに関して求めたｎビット毎の排他的論理和を、更にｒビット分だけローテーションしたものであることを特徴とするディジタル信号送信方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、ディジタルデータ及び該ディジタルデータに関するエラーチェック用コードを送信するディジタル信号送信装置及びディジタル信号送信方法に関する。
【０００２】
【従来の技術】
現在、民生用及び業務用を問わず電子機器のマイコン制御化がさまざまな分野で幅広く実施されている。そして、このような電子機器においては、一般に、その内部に設けられている複数の制御用マイコン及び複数のＩＣ回路との間で相互にデータの送受信を行うことによって所望の機能を実現している。このようなマイコンとＩＣとの接続構成例を図９に示す。
【０００３】
ここで、この図について簡単に説明すると、マイコン１及び２は制御用マイコンを構成し、これらのマイコン間でデータをやりとりすると共に、マイコン１によってＩＣ１を、マイコン２によってＩＣ２〜３を制御するように構成している。なお、この図において、ＳＩはシリアル入力データ、ＳＯはシリアル出力データ、ＳＣＫはサンプリングクロック、ＣＳはチップセレクト信号を表す。なお、ＩＣ１〜ＩＣ４は一般にデータ処理回路を構成するが、具体的には、例えば、電子機器がビデオデッキ、カムコーダ等の場合には、表示制御用ＩＣ、各種のテレビ信号の処理回路、或るいは、メカ駆動系における駆動回路等である。そして、マイコンにより、これらのデータ処理回路のパラメータ、或るいは、動作モード等が制御される。
【０００４】
ところで、このようなディジタルデータの通信システムにおいては、通常、エラーチェックのためのパリティをデータに付加して通信が行われており、例えば、マイコン間の通信では、図１０に示されるようにデータの最後にパリティを付加するようにしている。即ち、この例では、１６ビットのデータの最後に８ビットのパリティを付加して送信するように構成しており、パリティの定義式は次のように表現される。
【０００５】
Ｄ０＋Ｄ８  ＋Ｐ０＝Δ
Ｄ１＋Ｄ９  ＋Ｐ１＝Δ
Ｄ２＋Ｄ１０＋Ｐ２＝Δ
Ｄ３＋Ｄ１１＋Ｐ３＝Δ                              …（１）
Ｄ４＋Ｄ１２＋Ｐ４＝Δ
Ｄ５＋Ｄ１３＋Ｐ５＝Δ
Ｄ６＋Ｄ１４＋Ｐ６＝Δ
Ｄ７＋Ｄ１５＋Ｐ７＝Δ
ここで、＋記号は排他的論理和演算を表し、また、Δの値は、偶数パリティを採用したときは０、奇数パリティを採用したときは１となる。
【０００６】
以上のようにパリティをデータの最後に付加して送信する方法を、マイコンからＩＣへデータを送信する場合にも適用した場合、ＩＣ側の受信回路として、例えば、図１１に示されるような構成が考えられる。
この回路について簡単に説明すると、入力されたシリアルデータはパリティ用シフトレジスタ１及びデータ用シフトレジスタ２へ供給されると共に、パリティチェック回路４へも入力される。そして、チップセレクト信号によってこの受信回路が選択されているときには、この期間、ゲート３が開いてクロックが上記シフトレジスタ１、２、及びパリティチェック回路４へ供給される。
【０００７】
一方、パリティチェック回路４は、偶数パリティを採用した場合、例えば図１２のように構成される。この回路の動作を説明すると、シリアルデータはシフトレジスタ１１とループを構成している排他的論理和回路１０へ入力されることにより、この回路へシリアルデータ内の８ビットのパリティの入力が終了した時点で、該シフトレジスタ１１には前記の（１）で表された演算出力が格納される。
【０００８】
そして、この演算出力の値がすべて「０」でパリティに誤りが無かったときのみ、ナンド回路１３のチェック出力は「１」となり、図１１におけるゲート回路６は、チップセレクト信号の立ち上がり時点でロード信号を確定データレジスタ７へ出力する。これにより、パリティエラーが無かったときにはデータ用シフトレジスタに格納されていたデータが確定データレジスタ７に移される。
【０００９】
【発明が解決しようとする課題】
図１１では以上のようにしてパリティチェックとデータの確定が実行されるが、この受信回路では、シリアルデータの末尾にパリティデータが伝送されてくるためパリティ用シフトレジスタ１を設ける構成となっている。なお、このようなシフトレジスタ１を設けることなくデータ用シフトレジスタ２のみを設けておいて、先頭側の１６ビットのデータが入力された後、後続するパリティデータが入力されてくる期間は該シフトレジスタ２へ供給されるクロックを遮断するようにしてもよいが、この場合には、クロックをカウントするカウンタとこのカウンタ出力に基づいてクロックの供給を遮断するためのゲート回路とが必要であり、いずれにしてもパリティデータに関して特別な回路構成を設けねばならないという問題がある。
【００１０】
また、以上のような偶数パリティを用いた通信系においては、図１３の〔１〕に示されるように通信ラインがアースにショートしてデータ及びパリティの値が全て「０」となって伝送された場合、受信側では、この受信したデータをパリティチェックによってエラーであると判断することができない。同様にして、奇数パリティを用いた通信系において、同図の〔２〕に示されるように通信ラインが電源側にショートしてデータ及びパリティの値が全て「１」となって伝送された場合も、受信側では、この受信したデータをパリティチェックによってエラーであると判断することができないという問題がある。
【００１１】
更に、例えば、図１４の〔１〕に示されるように、データ長がパリティ長で割り切れないようなデータ構造を持つ信号を伝送する場合に、そのパリティとして、
Ｄ０＋Ｄ８  ＋Ｐ０＝０
Ｄ１＋Ｄ９  ＋Ｐ１＝０
Ｄ２＋Ｄ１０＋Ｐ２＝０
Ｄ３＋Ｄ１１＋Ｐ３＝０
Ｄ４        ＋Ｐ４＝０
Ｄ５        ＋Ｐ５＝０
Ｄ６        ＋Ｐ６＝０
Ｄ７        ＋Ｐ７＝０
と表されるようにローテーションしないものを定義すると、パリティ・ジェネレータをシフトレジスタで構成する場合、例えば、図１５に示されるようにビット並び替えの回路が必要となる。この回路について簡単に説明すると、データ用シフトレジスタ５６から１２ビットのデータを送り出した時点では、パリティ生成回路５８に設けられたパリティ生成用シフトレジスタＳＲ１には先頭からＤ０＋Ｄ８，Ｄ１＋Ｄ９，Ｄ２＋Ｄ１０，Ｄ３＋Ｄ１１が、また、パリティ生成用シフトレジスタＳＲ２には先頭からＤ４，Ｄ５，Ｄ６，Ｄ７がそれぞれ格納されているので、パリティを正しい順序で送信するためには、まず、スイッチＳＷ４を下側へ、かつ、スイッチＳＷ３を上側へ接続してＳＲ１の４ビットを送り出し、次にＳＷ３を下側へ接続してＳＲ２の４ビットを送り出すようにする。この場合、ＳＷ３及びＳＷ４の切り換えの外、ＳＲ１及びＳＲ２のクロックＳＣＫ２，ＳＣＫ３の切り換えも必要となり、回路構成が複雑になる。
【００１２】
このような煩雑な回路構成を採る代わりに、図１４の〔２〕に示すように、データにダミーデータを付加することによりデータ長がパリティ長によって割り切れるようにしてもよいが、この場合にはそれだけ通信にかかる時間が増大することになってしまう。そして、このときの送信回路は、例えば、図１６のように１６ビットのデータ用シフトレジスタ３６を用いて構成できるが、敢えてこのようにビット数の大きいシフトレジスタを用いることは望ましくない。
【００１４】
【課題を解決するための手段】
上述のような技術課題を解決するために提案される本発明は、ディジタルデータ及び該ディジタルデータに関するエラーチェック用コードの送信を行うディジタル信号送信装置であって、ディジタルデータ及びエラーチェック用コードの順で送信を実行し、かつ、該エラーチェック用コードは、１回の通信につき送信されるディジタルデータ及びエラーチェック用コードの各ビット数をＭ及びｎ、また、Ｍをｎで割ったときの剰余をｒ（但し、ｒ＞０）とするとき、前記ディジタルデータの最後に値が全て「０」であるｎ−ｒビット分のコードが付加されたＭ＋ｎ−ｒビットのディジタルコードに関して求めたｎビット毎の排他的論理和を、更にｒビット分だけローテーションしたものである
【００１５】
また、本発明は、ディジタルデータ及び該ディジタルデータに関するエラーチェック用コードの送信を行うディジタル信号送信方法であって、ディジタルデータ及びエラーチェック用コードの順で送信が実行され、該エラーチェック用コードとして、１回の通信につき送信されるディジタルデータ及びエラーチェック用コードの各ビット数をＭ及びｎ、また、Ｍをｎで割ったときの剰余をｒ（但し、ｒ＞０）とするとき、前記ディジタルデータの最後に値が全て「０」であるｎ−ｒビット分のコードが付加されたＭ＋ｎ−ｒビットのディジタルコードに関して求めたｎビット毎の排他的論理和を、更にｒビット分だけローテーションしたものが使用される。
【００１６】
【作用】
ディジタルデータ及び該ディジタルデータに関するエラーチェック用コードの送信において、ディジタルデータ及びエラーチェック用コードの順で送信が実行される。
ここで送信されるエラーチェック用コードには、１回の通信につき送信されるディジタルデータ及びエラーチェック用コードの各ビット数をＭ及びｎ、また、Ｍをｎで割ったときの剰余をｒ（但し、ｒ＞０）とするとき、ディジタルデータの最後に値が全て「０」であるｎ−ｒビット分のコードが付加されたＭ＋ｎ−ｒビットのディジタルコードに関して求めたｎビット毎の排他的論理和を、更にｒビット分だけローテーションしたものが用いられる。
【００１７】
【実施例】
以下、本発明の実施例を図１〜図８を参照して説明する。
まず、マイコンにより構成された送信装置からディジタル信号を送信する場合の実施例について図１を用いて説明する。
一般に、送信側が通常のロジック回路等の信号処理回路によって構成されている場合には、前述のように最初にデータを送り、次にこのデータに基づいて算出されたパリティを送る方法が採用されているが、本実施例のように送信側が中央処理装置を備えたマイコンである場合には、送信すべきディジタルデータに基づいて予めパリティを中央処理装置を利用して算出しておくことが可能である。そこで、本実施例では、この点を考慮して、この図の〔１〕に示されるように２Ｎバイト或るいは２Ｎ−１バイトのデータに先行して２バイトのパリティＰ０〜Ｐ１５（但し、Ｐ０がＬＳＢ、Ｐ１５がＭＳＢである）を送信する。
【００１８】
即ち、パリティ、データの順序でＬＳＢから送信を行う。そして、この場合、これらのデータ及びパリティについての１６ビット毎の排他的論理和が、同図の〔２〕に示されるように０Ｆ０Ｆｈ（ｈは、１６進数表現であることを表す）となるように設定する。但し、データ長が２Ｎ−１バイトのときは、データの最後に１バイトの００ｈのデータが存在するものとしてパリティの計算を行う。
【００１９】
この場合の受信側の回路構成例を図２に示す。この回路においては、データ用シフトレジスタ２２に２Ｎバイトのデータが格納された時点で、パリティチェック用シフトレジスタ１９には図１の〔２〕に示される各式の左辺の演算出力が格納されているので、伝送過程においてパリティエラーが発生していなければ、アンドゲート２０への２つの入力はいずれもＦＦｈとなり、該ゲート２０の出力はＨＩＧＨとなる。これにより、チップセレクト信号の立ち上がり時にはゲート２１の出力にはＨＩＧＨのロード信号が発生し、シフトレジスタ２２のデータがデータ確定用シフトレジスタ２３へ移される。
【００２０】
なお、データが２Ｎ−１バイトのときは、シフトレジスタ１９にパリティとデータがすべて入力完了した時点においては、パリティチェックに関する演算出力は、データが２Ｎバイトの場合に比し８ビット分だけずれて該シフトレジスタ１９に格納されることになるが、この場合、シフトレジスタ１９とアンドゲート２０との間に挿入すべき反転器の位置は、データが２Ｎバイトの場合と同じであるから、図２の受信回路をそのまま用いてパリティチェックを行うことができる。
【００２１】
なお、このような受信回路は、通常のロジック回路等の信号処理回路によって構成された受信装置に組み込めることは勿論、マイコンからなる受信装置にも組み込むことができる。特にマイコンからなる受信装置にこのようなロジック回路で構成された受信回路を組み込めば、マイコンのソフトウェアでパリティチェックを行う場合よりも処理時間を短縮することが可能である。
【００２２】
以上の説明から明らかなように、本実施例ではデータに先行してパリティが伝送されるので、図１１との対比からも分かるように受信回路内に設けるシフトレジスタをパリティ長だけ短くすることができ、受信回路の回路規模が縮小される。また、１回毎の通信において偶数パリティと奇数パリティとが混在する構成となっているので、通信ラインのショート等により伝送される信号値が全て「０」或るいは「１」となるような事態が生じても、受信側においてこれが必ずパリティエラーとして検出されるので誤ったデータが採用されることもない。
【００２３】
次に、マイコンにより構成された受信装置へディジタル信号を送信する場合の実施例について説明する。
この場合、データ長が偶数バイトのときは、図３に示されるように最初にデータ、次に２バイトのパリティの順でＬＳＢから送信する。そして、この場合のパリティは図１の〔２〕と同様に定義する。このように送信される信号列をロジック回路で生成する場合の送信側の回路例を図４に示す。
【００２４】
この回路では、チップセレクト信号の立ち下がり時に設定されるパリティ生成用シフトレジスタ２９の初期値を図に示されるように０Ｆ０Ｆｈとすることによって、データ用シフトレジスタ２６から排他的論理和回路２８を介して８Ｌビットのデータが入力を完了した時点には、該シフトレジスタ２９に図１の〔２〕の定義に従ったパリティデータが生成格納される。そして、スイッチＳＷ１は、８Ｌビットのデータを伝送した後の８Ｌ＋１ビット目以降は可動端子が下側の固定端子へ接続されて、パリティの伝送が行われる。
【００２５】
なお、本実施例においては、データ長が奇数バイトの場合においても、この図に示される回路を送信回路として用いるようにしている。ところで、この場合には、パリティ生成用シフトレジスタ２９へ８Ｌビットのデータが入力完了した時点においては、該シフトレジスタには、図５に示されるようにデータ長が偶数バイトの場合に比し格納位置が８ビットだけローテーションした状態でパリティデータが生成されているので、ここで、図４におけるＳＷ１を下側へ切り換えてパリティの伝送を開始すると、パリティの上位８ビットの成分が先に伝送され、続いて下位８ビットの成分の伝送が実行されることになる。そこで、本実施例では、データ長が奇数バイトの場合の伝送フォーマットを、図６に示すようにデータの次に伝送されるパリティに関しては８ビットだけローテーションされたものを伝送するものとして定義しておく。そして、受信側のマイコンでは、この定義に基づいてパリティチェックを行うように構成する。
【００２６】
なお、以上のような送信回路は、送信装置が通常のロジック回路等から構成されている信号処理装置に使用できることは勿論であるが、マイコンにより構成された送信装置にも組み込めることは明らかである。
【００２７】
以上、本発明の各実施例について説明したが、勿論、本発明はこのような実施例に限定されることなく種々の構成の変更が可能である。例えば、以上の実施例ではパリティについての演算出力の値が０Ｆ０Ｆｈとなるように定義しているが、Ｆ０Ｆ０ｈ、或るいは、その他の値となるように定義してもよく、要するに、１回の通信につき偶数パリティと奇数パリティとが混在する形式であればどのようなものでもよい。また、パリティのビット数を２バイトに設定しているが、これ以外の数値も採用できることは明らかである。
【００２８】
最後に、本発明に関して、データ及びパリティの各ビット数を一般化して表現した場合の構成例について説明する。
この一般化した構成例におけるデータのビット数をＭ、パリティのビット数をｎとする。そして、Ｍをｎで割ったときの剰余をｒ（但し、ｒ＞０）とする。
このように定義したとき、マイコンにより構成された送信装置からディジタル信号を送信する場合には、図１の〔１〕と同様に、最初にｎビットのパリティ、次に、Ｍビットのデータの順でＬＳＢから伝送する。但し、パリティの計算に際しては、データの最後にはｎ−ｒビット分の全て「０」の値を持つデータ成分が後続しているものとして計算を行う。そして、このパリティとしては、前述のように偶数パリティと奇数パリティの混在した任意のものを使用することができる。
【００２９】
また、マイコンにより構成された受信装置へディジタル信号を送信する場合には、図７に示されるように、最初にＭビットのデータ、次にｎビットのパリティの順でＬＳＢから伝送する。なお、この場合、送信回路内のパリティ生成用シフトレジスタとしてｎビットのシフトレジスタを使用すると、該シフトレジスタにＭビットのデータがすべて入力された時点では、該シフトレジスタには図８に示されるように、パリティデータがｒビットだけずれた格納位置に格納された状態で生成されるので、パリティは、ｒビット分だけローテーションしたものが伝送されるものとして定義する。
【００３０】
【発明の効果】
以上、詳細に説明したように、本発明に基づく伝送フォーマットを用いれば、マイコンから送信を行う場合、受信装置内の受信回路を簡略化することができる。また、マイコンへ送信する場合には、本発明に基づく伝送フォーマットを採用することにより、データがパリティによって割り切れるか否かに関わりなく送信装置内のパリティ生成回路を簡素な構成とすることができる。更に、通信ラインにおいてショート等の事故が生じた場合には、これがパリティチェックにより必ず検出される。
【図面の簡単な説明】
【図１】本発明の実施例における伝送フォーマット及びパリティの演算式を示す図である。
【図２】同実施例における受信回路を示す図である。
【図３】本発明の他の実施例における偶数バイトのデータを送信する場合の伝送フォーマットを示す図である。
【図４】同他の実施例における送信回路を示す図である。
【図５】奇数バイトのデータを送信する場合の同送信回路におけるパリティの生成を説明する図である。
【図６】同他の実施例における奇数バイトのデータを送信する場合の伝送フォーマットを説明する図である。
【図７】一般化されたビット表現のデータ及びパリティを送信する場合の本発明による実施例の伝送フォーマットを示す図である。
【図８】一般化されたビット表現のデータ及びパリティを送信する場合の本発明による他の実施例におけるパリティの生成を説明する図である。
【図９】マイコン制御を用いた回路構成例を示す図である。
【図１０】従来のマイコン間通信における伝送フォーマットを説明する図である。
【図１１】従来の受信回路を説明する図である。
【図１２】従来のパリティチェック回路を説明する図である。
【図１３】ショート発生時の信号状態を説明する図である。
【図１４】データのビット数がパリティのビット数で割り切れない場合の伝送フォーマットを説明する図である。
【図１５】同伝送フォーマットを採用した場合の送信回路の１構成例である。
【図１６】ダミーデータを付加してデータのビット数がパリティのビット数で割り切れるようにした場合の送信回路の１構成例である。
【符号の説明】
１５…排他的論理和回路、      １６…立ち下がり検出回路、
１７…立ち上がり検出回路、      １９…パリティチェック用シフトレジスタ、
２０，２１…アンドゲート回路、      ２２…データ用シフトレジスタ、
２３…データ確定用シフトレジスタ、
【図１】
0003561963.tif 000002
【図２】
0003561963.tif 000003
【図３】
0003561963.tif 000004
【図５】
0003561963.tif 000005
【図６】
0003561963.tif 000006
【図４】
0003561963.tif 000007
【図７】
0003561963.tif 000008
【図８】
0003561963.tif 000009
【図９】
0003561963.tif 000010
【図１０】
0003561963.tif 000011
【図１１】
0003561963.tif 000012
【図１２】
0003561963.tif 000013
【図１３】
0003561963.tif 000014
【図１４】
0003561963.tif 000015
【図１５】
0003561963.tif 000016
【図１６】
0003561963.tif 000017