(57)【特許請求の範囲】
【請求項１】
データを伝送路に送信するデータ送信回路と、前記伝送路を介して前記データ送信回路が送信する前記データを受信するデータ受信回路を有するデータ転送装置において、
前記データ送信回路は、
前記データに基づいて、前記データのエラーを検出するエラー検出符号を生成するエラー検出符号生成部と、
前記データと前記エラー検出符号を、前記データの前に送信したデータ又は次に送信するデータが、再送可能であることを表す再送可能情報とともに前記伝送路に送信するデータ送信回路側送信部を有し、
前記データ受信回路は、
前記データ送信回路が送信する、前記データと前記エラー検出符号と前記再送可能情報を、受信するデータ受信回路側受信部と、
前記エラー検出符号に基づいて、前記データ受信回路側受信部が受信したデータのエラーを検出するエラー検出部と、
前記エラー検出部がエラーを検出した場合であって、前記エラーが検出されたデータが所定のビットパターンを有する定型データのときには、所定の参照データを読み出して通知する参照保持部と、
前記エラー検出部がエラーを検出した場合であって、前記エラーが検出されたデータが前記再送可能情報を有するときには、前記エラーが検出されたデータを保持するエラーデータ保持部と、
前記エラーデータ保持部が保持する前記エラーが検出されたデータと再送された前記エラーが検出されたデータに対応するデータ、又は、前記エラーが検出された定型データと前記参照保持部から通知された所定の参照データの比較を行うエラーデータ比較部を有するデータ受信回路を備えることを特徴とするデータ転送装置。
【請求項２】
前記データ転送装置において、
前記エラーデータ比較部は、
前記エラーデータ保持部が保持する前記エラーが検出されたデータと、再送された前記エラーが検出されたデータに対応するデータを比較することにより、前記エラーが検出されたデータにおけるエラーが発生したビットを特定することを特徴とする請求項１記載の
データ転送装置。
【請求項３】
前記データ転送装置において、
前記データ受信回路はさらに、
前記エラー検出部がエラーを検出したデータについて、再送を要求する再送要求情報を含むデータを、前記データ送信回路に送信するデータ受信回路側送信部を有することを特徴とする請求項１記載のデータ転送装置。
【請求項４】
前記データ転送装置において、
前記データ送信回路側送信部は、
前記データ受信回路側送信部が送信する前記再送を要求する再送要求情報を含むデータに応じて、前記エラー検出部がエラーを検出したデータについて、再送を開始するものであることを示す再送開始情報を含むデータを、前記データ受信回路に送信することを特徴とする請求項３記載のデータ転送装置。
【請求項５】
前記データ転送装置において、
前記データは、所定のビットパターンを有する定型データ以外の有意データであり、
前記データ送信回路側送信部は、
前記有意データを送信しない場合には、前記定型データを、前記データ受信回路に定期的に送信することを特徴とする請求項１記載のデータ転送装置。
【請求項６】
データのエラーを検出するエラー検出符号を生成するエラー検出符号生成部と前記データと前記エラー検出符号を、前記データの前に送信したデータ又は次に送信するデータが再送可能であることを表す再送可能情報とともに伝送路に送信するデータ送信回路側送信部を有するデータ送信回路に、前記伝送路を介して接続されるデータ受信回路において、
前記データ送信回路が送信する、前記データと前記エラー検出符号と前記再送可能情報を、受信するデータ受信回路側受信部と、
前記エラー検出符号に基づいて、前記データ受信回路側受信部が受信したデータのエラーを検出するエラー検出部と、
前記エラー検出部がエラーを検出した場合であって、前記エラーが検出されたデータが所定のビットパターンを有する定型データのときには、所定の参照データを読み出して通知する参照保持部と、
前記エラー検出部がエラーを検出した場合であって、前記エラーが検出されたデータが前記再送可能情報を有するときには、前記エラーが検出されたデータを保持するエラーデータ保持部と、
前記エラーデータ保持部が保持する前記エラーが検出されたデータと再送された前記エラーが検出されたデータに対応するデータ、又は、前記エラーが検出された定型データと前記参照保持部から通知された所定の参照データの比較を行うエラーデータ比較部を有することを特徴とするデータ受信回路。
【請求項７】
前記エラーデータ比較部は、
前記エラーデータ保持部が保持する前記エラーが検出されたデータと、再送された前記エラーが検出されたデータに対応するデータを比較することにより、前記エラーが検出されたデータにおけるエラーが発生したビットを特定することを特徴とする請求項６記載のデータ受信回路。
【請求項８】
前記データ受信回路はさらに、
前記エラー検出部がエラーを検出したデータについて、再送を要求する再送要求情報を含むデータを、前記データ送信回路に送信するデータ受信回路側送信部を有することを特徴とする請求項６記載のデータ受信回路。
【請求項９】
データを伝送路に送信するデータ送信回路と、前記伝送路を介して前記データ送信回路が送信する前記データを受信するデータ受信回路を有するデータ転送装置の制御方法において、
前記データ送信回路が有するエラー検出符号生成部が、前記データに基づいて、前記データのエラーを検出するエラー検出符号を生成するステップと、
前記データ送信回路が有するデータ送信回路側送信部が、前記データと前記エラー検出符号を、前記データの前に送信したデータ又は次に送信するデータが、再送可能であることを表す再送可能情報とともに前記伝送路に送信するステップと、
前記データ受信回路が有するデータ受信回路側受信部が、前記データ送信回路が送信する、前記データと前記エラー検出符号と前記再送可能情報を、受信するステップと、
前記データ受信回路が有するエラー検出部が、前記エラー検出符号に基づいて、前記データ受信回路側受信部が受信したデータのエラーを検出するステップと、
前記データ受信回路が有する参照保持部が、前記エラー検出部がエラーを検出した場合であって、前記エラーが検出されたデータが所定のビットパターンを有する定型データのときには、所定の参照データを読み出して通知するステップと、
前記データ受信回路が有するエラーデータ保持部が、前記エラー検出部がエラーを検出した場合であって、前記エラーが検出されたデータが前記再送可能情報を有するときには、
前記エラーが検出されたデータを保持するステップと、
前記データ受信回路が有するエラーデータ比較部が、前記エラーデータ保持部が保持する前記エラーが検出されたデータと再送された前記エラーが検出されたデータに対応するデータ、又は、前記エラーが検出された定型データと前記参照保持部から通知された所定の参照データの比較を行うステップを有することを特徴とするデータ転送装置の制御方法。
【請求項１０】
前記データ転送装置の制御方法において、
前記エラーデータ比較部は、
前記エラーデータ保持部が保持する前記エラーが検出されたデータと、再送された前記エラーが検出されたデータに対応するデータを比較するステップにおいて、前記エラーが検出されたデータにおけるエラーが発生したビットを特定することを特徴とする請求項９記載のデータ転送装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、データ転送装置によりデータを伝送する技術に関する。
【背景技術】
【０００２】
ＬＳＩ（Large Scale Integration）間のデータ伝送は、伝送路の高速化に伴い、データのパケットを複数信号線でシリアル伝送にて行うことが主流となりつつある。【０００３】
なお、データ伝送では、誤りが生じた場合に当該誤りを訂正するために誤り訂正符号がデータに付加されることがある。【０００４】
しかし、シリアル伝送では、バースト誤りにより誤りビットが連続して多数生じることがあるので、バースト誤り時の誤りビットを訂正可能にするためには、多数の誤り訂正符号が、必要とされる。このためシリアル伝送における誤り訂正符号の付加は、スループットの低下やレイテンシの低下を招く。【０００５】
そこで従来は、送信側のデータ転送装置が、送信データのパケット毎にＣＲＣ（Cyclic Redundancy Check）符号を生成して、当該ＣＲＣ符号を挿入したパケットを送信し、受信部側のデータ転送装置が受信したパケットのＣＲＣを行う。即ち、データ転送装置は受信したパケットに誤りがあるか否かを検出し、誤りがあった場合でも誤り訂正は行わず、パケットを再送することで訂正を行う。【０００６】
また、本願発明に関連する先行技術として、例えば、下記の特許文献に開示される技術がある。【０００７】
【特許文献１】特開平１０−６５６５５号公報
【特許文献２】特開平９−３０７５１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
前記ＣＲＣチェックによってデータのエラーを検出した場合、エラーの原因箇所を把握したいという要求がある。【０００９】
エラーが発生した場合に、全ての回路について調べるのでは非常に手間や時間がかかってしまう。特に、データを伝送する信号線の数が多い場合、当該信号線を介してデータを伝送するための回路が多くなるので、原因箇所の把握が容易ではない。【００１０】
このため、誤りを検出したデータを受信側のデータ転送装置で記憶しておき、再送された正しいデータと比較して誤りビットを特定し、当該誤りビットを伝送した信号線や回路に原因箇所を絞り込むことで、原因箇所の把握を容易にすることが考えられる。【００１１】
そこで本件は、エラーが検出されたデータと再送されたデータとを比較して、当該データのエラー部分を特定可能にする技術を提供する。
【課題を解決するための手段】
【００１２】
上記課題を解決するため、本件の一実施形態であるデータ転送装置は、
データを伝送路に送信するデータ送信回路と、前記伝送路を介して前記データ送信回路が送信する前記データを受信するデータ受信回路を有し、
前記データ送信回路が、
前記データに基づいて、前記データのエラーを検出するエラー検出符号を生成するエラー検出符号生成部と、
前記データと前記エラー検出符号を、前記データの前に送信したデータ又は次に送信するデータが、再送可能であることを表す再送可能情報とともに前記伝送路に送信するデータ送信回路側送信部を有し、
前記データ受信回路が、
前記データ送信回路が送信する、前記データと前記エラー検出符号と前記再送可能情報を、受信するデータ受信回路側受信部と、
前記エラー検出符号に基づいて、前記データ受信回路側受信部が受信したデータのエラーを検出するエラー検出部と、
前記エラー検出部がエラーを検出した場合であって、前記エラーが検出されたデータが前記再送可能情報を有するときには、前記エラーが検出されたデータを保持するエラーデータ保持部と、
前記エラーデータ保持部が保持する前記エラーが検出されたデータと、再送された前記エラーが検出されたデータに対応するデータを比較するエラーデータ比較部を有するデータ受信回路を備える。
【発明の効果】
【００１３】
開示の技術は、エラーが検出されたデータと再送されたデータとを比較して、当該データのエラー部分を特定可能にする技術を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】データ転送装置の概略図
【図２】送信回路側送信部と受信回路側受信部の構成を示す図
【図３】受信回路側送信部と送信回路側受信部の構成を示す図
【図４】パケットが有するフィールドの説明図
【図５】パケット種判定部の説明図
【図６】データ転送装置がデータを送信する際の制御方法の説明図
【図７】データ転送装置がデータを送信する際の制御方法の説明図
【図８】データ転送装置がデータを受信する際の制御方法の説明図
【図９】データ転送装置がデータを受信する際の制御方法の説明図
【図１０】実施形態２の送信回路側送信部と受信回路側受信部の構成を示す図
【図１１】実施形態２の受信回路側送信部と送信回路側受信部の構成を示す図
【発明を実施するための最良の形態】
【００１５】
図１はデータ転送装置の概略図である。図１のデータ転送装置１００は、伝送路１９を介してデータを転送する第一転送回路１と第二転送回路１０とを有している。第一転送回路１及び第二転送回路１０は、例えば異なる基板上のＬＳＩに具備され、異なる基板を伝送路１９で接続してデータを転送する。具体的には、携帯電話の操作部内の基板と表示部内の基板に、第一転送回路１と第二転送回路１０がそれぞれ設けられてデータ転送が行われる。【００１６】
本例では、第一転送回路１と第二転送回路１０は同じ構成であり、相互にデータ転送が可能である。但し、以下では便宜上、第一転送回路１がデータ送信回路、第二転送回路１０がデータ受信回路として機能する場合について説明がなされる。なお、本例では、データをパケットとして伝送するため、以下データはパケットとも称される。【００１７】
図２は、第一転送回路１の送信部（送信回路側送信部）１１と、当該送信部１１からのデータを受信する第二転送回路１０の受信部（受信回路側受信部）１２の構成を示す図である。また、図３は、第二転送回路１０の送信部（受信回路側送信部）１１と、当該送信部１１からデータを受信する第一転送回路１の受信部（送信回路側受信部）１２の構成を示す図である。【００１８】
送信部１１は、エラー検出符号生成部１１１と、データ送出部１１２と、コーダー（再送情報生成部）１１３と、入力部１１４を有する。【００１９】
入力部１１４は、他の回路から転送するデータのパケットが入力される入力ポート４１と、入力されたパケットを格納するバッファ４２を有する。入力部１１４は、入力ポート４１に入力されたパケットをデータ送出部１１２に送ると共に、入力されたパケットをバッファ４２に格納させる。【００２０】
エラー検出符号生成部１１１は、転送するパケットに基づいて、前記パケットのエラーを検出するエラー検出符号、例えばＣＲＣ（Cyclic Redundancy Check）符号を生成する。なお、エラー検出符号は、エラーの有無を検出できれば、ＣＲＣに限らずパリティ符号やチェックサム、ハッシュ関数による符号等でも良い。【００２１】
コーダー１１３は、受信部１２の再送管理部１２９から送られた信号に応じて、次に送出するパケットを示す情報、本例ではパケット種をデータ送出部１１２へ送る。コーダー１１３から送られたパケット種は、後述のように再送可能情報として各パケットに付加される。即ち、本例のコーダー１１３は、再送可能情報を生成する再送情報生成部として機能する。【００２２】
データ送出部１１２は、入力されたパケットと共に、エラー検出符号や、当該パケットより後ろのパケットの再送可能情報とともに前記伝送路１９に送信する。【００２３】
本例のデータ送出部１１２は、送信するパケットを選択するセレクタ２１，２２や、制御パケットを生成するパケット生成部２３，２４，２５、送信するパケットにパケット種を挿入する信号合成部２６を備える。また、データ送出部１１２は、パケット種を挿入するタイミングを調整するための遅延回路２７、送信するパケットにＣＲＣ符号を挿入する信号合成部２８、パラレル信号をシリアル信号に変換するＰ／Ｓ変換部２９を備えている。【００２４】
パケット生成部２３は、再送開始パケットである所定形式のデータを記憶したレジスタや、このレジスタから再送開始パケットを読み出す読出部を備えている。パケット生成部２３は、再送管理部１２９から再送イネーブル信号を受信した場合、読出部がレジスタから再送開始パケットを読み出してセレクタ２２へ送る。【００２５】
なお、再送開始パケットは、再送を開始することを示す再送開始情報、本例では再送開始パケットを示すパケット種をヘッダに含むパケットである。即ち、再送開始パケットは、再送パケットの前に送信される。【００２６】
パケット生成部２４は、再送要求パケットのテンプレートとなる情報を記憶したレジスタや、テンプレートに再送バッファ番号を加える加算器を備える。そして、パケット生成部２４は、再送管理部１２９から再送要求信号と再送バッファ番号とを受信した場合に、レジスタからテンプレートを読み出して再送バッファ番号を加えて再送要求パケットとし、セレクタ２２へ送る。【００２７】
なお、再送要求パケットとは、エラーが生じて廃棄したパケットの再送を要求する旨の情報（再送要求情報）、即ち再送要求パケットを示すパケット種をヘッダに含むパケットである。【００２８】
パケット生成部２５は、Ｎｕｌｌパケットである所定形式のデータを記憶したレジスタや、このレジスタからＮｕｌｌパケットを読み出す読出部を備えている。Ｎｕｌｌパケットは、パケット生成部２５から定期的に出力され、セレクタ２２によってアイドル状態のときに選択的に後段へ送られる。【００２９】
なお、Ｎｕｌｌパケットは、送信パケットが無く、アイドル状態であることを示す情報、即ちＮｕｌｌパケットを示すパケット種をヘッダに含む定型パケットである。ここで、定型パケットは、予めビットパターンが定められたパケットである。また、定型パケット以外のパケットが有意データである。【００３０】
受信部１２は、Ｓ／Ｐ変換部１２１や、エラー検出部１２２、エラー判定部１２３、デコーダ１２４、ゲート部１２５，１２６、パケット種判定部１２７、カウンタ１２８、再送管理部１２９、出力部１３１を有している。【００３１】
Ｓ／Ｐ変換部１２１は、伝送路１９を介して対向する送信部１１から送信されたデータを受信し、受信したシリアルデータをパラレルデータに変換する。【００３２】
エラー検出部１２２は、エラー検出符号に基づいて、Ｓ／Ｐ変換部１２１が受信したデータのエラーを検出する。本例において、エラー検出部１２２は、ＣＲＣ符号に基づいて各パケットのＣＲＣを行い、エラーを検出した場合に真、即ち１、エラーを検出しない場合に偽、即ち０を結果として出力する。【００３３】
エラー判定部１２３は、エラーデータ保持部３１と、エラーデータ比較部３２、結果保持部３３、参照用保持部３４、セレクタ３５を備えている。【００３４】
エラーデータ保持部３１は、Ｓ／Ｐ変換部１２１からパケットを受け、当該パケットのエラーがエラー検出部１２２で検出され、且つ当該パケットが再送する種類である場合に、当該パケットをバッファに保持する。【００３５】
エラーデータ比較部３２は、前記エラーに基づいて再送されたパケットと前記データ保持部３１が保持するパケットとを比較し、比較結果としてどのビットがエラーなのかを示す情報を出力する。例えば両パケットのビットについて順番に排他的論理和をとり、両パケットのビットが一致していれば偽＝０、一致していなければ真＝１を出力する。即ち、何番目のビットが１となったかによって誤りビットが示される。【００３６】
結果保持部３３は、エラーデータ比較部３２の比較結果を保持するメモリである。参照用保持部３４は、定型パケット、例えばＮｕｌｌパケットと同じビットパターンの参照用パケットを保持したレジスタである。セレクタ３５は、エラーのパケットが再送可能か否かに応じて、エラーデータ保持部３１からのパケットか、参照用保持部３４からの参照用パケットかを選択し、比較部３２へ送る。【００３７】
デコーダ１２４は、受信したパケットからパケット種を抽出し、パケット種に応じた値を出力する。例えば、デコーダ１２４は、所定のパケット種、本例では通常パケットを受信している期間には真＝１、通常パケットを受信していない期間には偽＝０をゲート部１２６へ出力する。また、デコーダ１２４は、各パケットから次パケット種を抽出し、パケット種判定部１２７へ送る。【００３８】
図４は本例のパケットが有するフィールドの説明図である。図４に示すように、パケットはヘッダと一般フィールドを有する。ヘッダは、当該パケットの種別を示すパケット種と、データの送り先を示す情報と、データの送り元を示す情報と、次のパケットの種別を示す次パケット種を含んでいる。即ち、パケットのｎビット目からｎ＋３ビット目までのビットがパケット種、ｍビット目からｍ＋３ビット目までのビットが次パケット種である。また、一般フィールドは、実データと、当該実データのアドレスとを含んでいる。一般フィールドは、転送先の回路で使用される情報であるので、ここでは詳細な説明を省略される。【００３９】
従って、本例のデコーダ124は、ｎビット目からｎ＋3ビット目までのビットをパケット種としてパケットから取り出し、ｍビット目からｍ＋3ビット目までのビットを次パケッ
ト種としてパケットから取り出す。
【００４０】
ゲート部１２５，１２６は、エラー検出部１２２の検出結果に応じて入力信号を通過させるか否かを制御する。本例のゲート部１２５，１２６は、エラー検出部１２２の検出結果を反転した信号と入力信号の論理和を出力する回路である。即ち、ゲート部１２５は、エラー検出部１２２からの検出結果が偽＝０であればパケットを通過させ、検出結果が真＝１であればパケットを通過させない。また、ゲート部１２６は、エラー検出部１２２からの検出結果が偽＝０であればデコーダ１２４の出力を通過させ、検出結果が真＝１であればデコーダ１２４の出力を通過させない。【００４１】
パケット種判定部１２７は、デコーダ１２４からの次パケット種に基づいて次パケットが再送可能なパケットか否かを判定する。【００４２】
図５はパケット種判定部１２７の説明図である。図５に示すように本例のパケット種判定部１２７は、遅延部５１、再送判定部５２、再送開始判定部５３、定型判定部５４を備えている。【００４３】
遅延部５１は、デコーダ１２４から次パケット種を受信すると、一旦バッファに格納し、一つ前に格納した次パケット種を出力することで、次パケット種を一パケット分遅延させて再送判定部５２、再送開始判定部５３及び定型判定部５４へ送る。即ち、次パケット種は次のパケットの種類を示すものなので、遅延部５１は、次パケット種を一パケット分遅延させることで、再送判定部５２、再送開始判定部５３及び定型判定部５４へ送るタイミングを調整している。【００４４】
再送判定部５２は、遅延回路５１を介して受信した次パケット種に応じた値を出力する。
例えば、通常パケットのパケット種を１１１、再送要求パケットのパケット種を１１０、再送開始パケットのパケット種を００１、Ｎｕｌｌパケットのパケット種を０００とした場合、再送判定部５２は、１１１が入力された場合に再送可能を示す値＝１を出力する。即ち、再送判定部５２は、１１０や００１、０００が入力された場合に再送不可を示す値＝０を出力する。具体的には、再送判定部５２が入力されたパケット種の各ビットの論理積を出力する。なお、どのパケット種を再送可能とするかは、この例に限らず、定型のパケットであるＮｕｌｌパケットや再送開始パケットは再送不可、定型でない通常パケットや再送要求パケットは再送可能等としても良い。【００４５】
また、再送開始判定部５３は、００１が入力された場合に再送開始パケットであることを示す値＝１を出力し、１１１や１１０、０００が入力された場合に再送開始パケットでないことを示す値＝０を出力する。具体的には再送開始判定部５３が、入力されたパケット種の１ビット目と２ビット目の否定論理和をとり、この否定論理和の結果と３ビット目の論理積を出力する。【００４６】
定型判定部５４は、０００が入力された場合に定型のパケットであることを示す値＝１を出力し、１１１や１１０、００１が入力された場合に定型のパケットでないことを示す値＝０を出力する。具体的には定型判定部５４が、入力されたパケット種の各ビットの否定論理和を出力する。【００４７】
カウンタ１２８は、ゲート部１２６の出力信号をカウントし、再送管理部１２９に通知している。即ち、カウンタ１２８は、エラーが検出されなかった通常パケットの数を再送管理部１２９に通知する。【００４８】
再送管理部１２９は、エラー検出部１２２でエラーと判定されたパケットが、再送可能であった場合、送信部１１に再送要求信号を送ることにより当該パケットの再送を要求する。このとき再送管理部１２９は、カウンタ１２８から得た番号を再送バッファ番号として送信部１１へ送っている。【００４９】
また、再送管理部１２９は、Ｓ／Ｐ変換部１２１から再送要求パケットを受信した場合、当該再送要求パケットに基づいて送信部１１に再送を通知する。例えば、再送管理部１２９は、受信したパケットに含まれていた再送バッファ番号を送信部１１の再送バッファ４２へ送る。また、再送管理部１２９は、送信部１１のパケット生成部２３に再送イネーブル信号を送って再送開始パケットを送信させると共に、再送セレクト信号をセレクタ２１に送る。これにより送信部１１は、再送バッファ番号で特定されるパケットを再送バッファ４２から読み出してセレクタ２１へ送り、セレクタ２１で再送パケットを選択して後段へ送る。【００５０】
また、再送管理部１２９は、セレクタ２１からセレクタ２２へ送られるパケット、即ち通常パケットをセレクタ２２に選択させる場合に、通常選択信号をコーダー１１３へ送る。【００５１】
なお、送信したパケットがエラー無く受信された場合、受信部１２から当該パケットを受信した旨のＡｃｋ（Acknowledgement）が送られるので、再送管理部１２９は、一定時間Ａｃｋが無い場合にも再送を要求する。【００５２】
再送管理部１２９は、上述のように入力された信号を処理して出力するプロセッサを備えている。即ち、プロセッサが所定のソフトウェアに従って演算処理を行うことによって上記再送管理部１２９の機能を実現している。なお、再送管理部１２９は、プロセッサによるソフトウェア的な処理に限らず、論理ゲートや比較器、トランジスタといったスイッチ等を組み合わせたハードウェアで上記機能を実現した構成であっても良い。【００５３】
図６，図７は、これらの構成のデータ転送装置１００がデータを送信する際の制御方法の説明図である。図６，図７は、データ転送装置１００の各部がパケット毎に行う処理の流れを示している。
まず、入力ポート４１にパケットが入力されると、入力部１１４は、当該パケットを再送バッファ４２に格納する（Ｓ１）。【００５４】
セレクタ２１は、再送管理部１２９からの再送セレクト信号に応じて再送パケット或いは入力ポート４１からのパケットを後段へ送る。ここでセレクタ２１は再送セレクト信号を受けた場合に（Ｓ２，Ｙｅｓ）、再送バッファ４２からの再送パケットをセレクタ２２へ送り（Ｓ３）、再送セレクト信号を受けていないときに（Ｓ２，Ｎｏ）、入力ポート４１からのパケットをセレクタ２２へ送る（Ｓ４）。【００５５】
次にコーダー１１３は、再送管理部１２９からの通常選択信号、再送要求信号或いは再送イネーブル信号に基づいて、後段に送るパケットを示すパケット種をセレクタ２２へセレクト信号として入力する。例えば、コーダー１１３は、再送管理部１２９から再送要求信号を受信した場合（Ｓ５，Ｙｅｓ）、再送要求パケットを示すパケット種をセレクタ２２へ入力し（Ｓ６）、セレクタ２２がパケット生成部２４からの再送要求パケットを選択する（Ｓ７）。【００５６】
また、コーダー１１３は、再送管理部１２９から再送要求信号では無く、再送イネーブル信号を受信した場合（Ｓ８，Ｙｅｓ）、再送開始パケットを示すパケット種をセレクタ２２へ送り（Ｓ９）、セレクタ２２がパケット生成部２３からの再送開始パケットを選択する（Ｓ１０）。【００５７】
また、コーダー１１３は、再送要求信号および再送イネーブル信号では無く、通常選択信号を受信した場合（Ｓ１１，Ｙｅｓ）、通常パケットを示すパケット種をセレクタ２２へ通知し（Ｓ１２）、セレクタ２２がセレクタ２１からの通常パケットを選択する（Ｓ１３）。【００５８】
そして、コーダー１１３は、再送要求信号や再送イネーブル信号、通常選択信号の何れの受信も無い場合（Ｓ１１，Ｎｏ）、即ち有意データを受信していない場合、Ｎｕｌｌパケットを示すパケット種をセレクタ２２へ入力し（Ｓ１４）、セレクタ２２がパケット生成部２５からのＮｕｌｌパケットを選択する（Ｓ１５）。【００５９】
なお、Ｓ４，Ｓ７，Ｓ１０，Ｓ１１のステップにおいて、コーダー１１３は、信号合成部２６にもパケット種を通知している。【００６０】
次に遅延回路２７は、セレクタ２２から受信したパケットをレジスタに格納すると共に、一つ前に格納したパケットを後段へ送る。即ち、遅延回路２７は、後段へ送るパケットを一つ分遅らせている（Ｓ１６）。【００６１】
そして、信号合成部２６は、コーダー１１３から受信したパケット種を遅延回路２７で遅延されたパケットに加える。即ち信号合成部２６は、各パケットに次のパケットのパケット種を加える（Ｓ１７）。【００６２】
次に、エラー検出符号生成部１１１が信号合成部２６から受信したパケットのエラー検出符号、本例ではＣＲＣ符号を算出し（Ｓ１８）、信号合成部２８が信号合成部２６から受信したパケットにエラー検出符号を加える（Ｓ１９）。【００６３】
Ｐ／Ｓ変換部２９は、信号合成部２８からのパケットをパラレル信号からシリアル信号に変換して伝送路１９に送出する（Ｓ２０）。【００６４】
図８，図９は、本例のデータ転送装置がデータを受信する際の制御方法の説明図である。図８，図９は、データ転送装置１００の各部がパケット毎に行う処理の流れを示している。
まず、Ｓ／Ｐ変換部１２１は、伝送路１９から受信したシリアル信号をパラレル信号に変換する（Ｓ２０）。【００６５】
そしてエラー検出部１２２は、パケットのＣＲＣを行い、検査結果、即ちエラーの有無を出力する（Ｓ２１）。【００６６】
また、デコーダ１２４は、受信したパケットから次パケット種を抽出してパケット種判定部１２７へ送ると共に、受信したパケットのパケット種に応じた値をライトイネーブル信号として出力ポート１３１へ送り、各パケットと共に出力させる。本例のデコーダ１２４は、通常パケットを受信している期間には真＝１、通常パケットを受信していない期間には偽＝０を出力する（Ｓ２２）。これによりライトイネーブル信号は、出力されるパケットのうち、通常パケットが出力されているタイミングをパケットの転送先の回路に対して示す。【００６７】
更に、ライトイネーブル信号は、パケットがエラーなく出力される度に真＝１となるので、ライトイネーブル信号の数は、正常に出力されたパケットの数を示す。従って、パケットにエラーが生じた際、ライトイネーブル信号の数が分かれば、どのパケットまでが正常に出力され、どのパケットがエラーになったのかが特定できる。そこで、カウンタ１２８は、ライトイネーブル信号のカウント結果を再送バッファ番号として再送管理部１２９へ送る（Ｓ２３）。また、再送管理部１２９は、パケットがエラー無く受信された場合、送信部１１の入力部１１４にパケットを受信した旨のＡｃｋを返す（Ｓ２４）。【００６８】
また、デコーダ１２４から次パケット種を受信したパケット種判定部１２７は、このパケット種が再送可能か否かを判定し（Ｓ２５）、判定結果をエラー判定部１２３及び再送管理部１２９へ送る（Ｓ２６）。本例のパケット種判定部１２７は、パケット種が通常パケットであれば再送可能を示す値１を送り、パケット種が通常パケット以外であれば再送不可を示す値０を送る。【００６９】
そして、エラー判定部１２３は、エラー検出部１２２からのエラーの有無を判別し（Ｓ２７）、エラーであれば、パケット種判定部１２７から受信した判定結果が再送可能であるか否かを判別する（Ｓ２８）。ここで判定結果が再送可能であれば（Ｓ２８，Ｙｅｓ）、エラー判定部１２３は、Ｓ／Ｐ変換部１２１から受信したパケットをエラーデータ保持部３１に格納する（Ｓ２９）。【００７０】
そして、再送管理部１２９は、カウンタ１２８からの再送バッファ番号を送信部１１のパケット生成部２４に送ると共に、再送要求信号をコーダー１１３及びパケット生成部２４に送る（Ｓ３０）。【００７１】
再送要求後、パケット種判定部１２７は再送パケットの到達を待つ。即ちパケット種判定部１２７が再送開始パケットを受信したか否かを判定し（Ｓ３１）、再送開始パケットを受信した場合（Ｓ３１，Ｙｅｓ）、再送開始を示す値をエラー判定部１２３に通知する（Ｓ３２）。【００７２】
この再送開始を示す値を受信した場合、次に再送パケットが送られてくるので、エラー判定部１２３のエラーデータ保持部３１は、Ｓ２９で格納したエラーパケットを出力する（Ｓ３３）。ここで、セレクタ３５は、パケット種判定部１２７の判定結果が再送可能であるので、エラーデータ保持部３１からのパケットを比較部３２へ送る（Ｓ３４）。なお、このエラーデータ保持部３１からのパケットは、再送開始パケットの次にＳ／Ｐ変換部１２１から受信するパケットと同時に比較部３２へ入力するタイミングでエラーデータ保持部３１から出力される。【００７３】
比較部３２は、入力された両パケットの各ビットを比較し、比較結果を出力する（Ｓ３５）。例えば、比較部３２は、両パケットのビットが同じであれば偽＝０、異なっていれば真＝１を出力することで、エラーのビットを特定する。
そして、結果保持部３３は、比較部３２の比較結果を保持する（Ｓ３６）。【００７４】
一方、パケット種判定部１２７の判定結果が再送不可で、パケット種判定部１２７から定型のパケットを示す値を受信した場合（Ｓ３７，Ｙｅｓ）、エラー判定部１２３の参照用保持部３４は、参照用パケットを読み出してセレクタ３５へ送る（Ｓ３８）。【００７５】
セレクタ３５は、パケット種判定部１２７の判定結果が再送不可であるので（Ｓ２８，Ｎｏ）、参照用保持部３４からの参照用パケットを選択して比較部３２へ送る（Ｓ３９）。【００７６】
比較部３２は、入力された両パケットの各ビットを比較し、比較結果を出力する（Ｓ４０）。そして、結果保持部３３は、比較部３２の比較結果を保持する（Ｓ４１）。このように、Ｎｕｌｌパケットは定型のパケットなので、エラーが生じた場合であっても、本例の転送装置は、再送要求せず、参照用パケットを読み出してエラーパケットと比較する。【００７７】
なお、パケット種判定部１２７の判定結果が再送不可の場合であって（Ｓ２８，Ｎｏ）、パケット種判定部１２７から定型のパケットを示す値を受信しない場合（Ｓ３７，Ｎｏ）、エラーパケットの比較をせずに、当該パケットについての処理を終了する。即ち、再送要求パケットと再送開始パケットにエラーがあっても第二転送回路１０の再送管理部１２９は、再送要求しない。なお、エラーとなった再送要求パケットに応じて再送される通常パケットや、エラーとなった再送開始パケットに続いて再送されるパケットについては、Ａｃｋが第一転送回路１に返されないので、第一転送回路１の再送管理部１２９が一定時間後に再送させる。【００７８】
以上のように、本例のデータ転送装置は、エラーが生じた場合、受信部１２がエラーパケットを保持するため、再送されたパケットと比較することができる。これにより、本例のデータ転送装置は、エラーパケットのどの部分にエラーがあるのかを特定可能にしている。また、本例のデータ転送装置は、再送可能情報に基づきエラーパケットの再送を要求するか否かを判断することができる。【００７９】
更に本例のデータ転送装置は、各パケットに次パケット種を付加したので、エラーが生じた場合、エラーパケットの前のパケットに付加された次パケット情報からエラーパケットのパケット種を判別でき、エラーパケットが再送可能か否かを判定できる。【００８０】
また、本例のデータ転送装置は、前記エラーデータ保持部が保持する前記エラーが検出されたデータと、再送された前記エラーが検出されたデータに対応するデータを比較することにより、エラーが検出されたデータにおけるエラーが発生したビットが特定される。【００８１】
また、本例のデータ転送装置は、再送要求パケットをデータ送信回路１に送信し、エラーとなったパケットを再送させるので、エラーパケットと再送パケットとを比較できる。【００８２】
本例のデータ転送装置は、再送開始パケットをデータ受信回路１０に送信し、再送パケットの再送開始を通知することにより、エラーパケットと再送パケットとの比較を可能にしている。【００８３】
本例のデータ転送装置は、通常パケットを送信しない場合には、Ｎｕｌｌパケットとして定型パケットを送信している。定型パケットにエラーが生じた場合、データ転送装置は、再送を要求することなく、参照用パケットとエラーパケットとを比較してエラー部分の特定を可能としている。これにより、本例のデータ転送装置は、エラー部分の特定を可能にしつつ、パケットの再送量を抑えて、転送効率の低下を防止している。
なお、本例において、データ転送装置は、次に送信するパケットが再送可能であることを表す再送可能情報を各パケットに付加したが、次に限らず後から送信されるパケットが送信可能であることを表す再送可能情報を各パケットに付加しても良い。【００８４】
〈実施形態２〉
図１０は、実施形態２のデータ転送装置における第一転送回路１の送信部（送信回路側送信部）１１と、当該送信部１１からデータを受信する第二転送回路１０の受信部（受信回路側受信部）１２の構成を示す図である。また、図１１は、実施形態２のデータ転送装置における第二転送回路１０の送信部（受信回路側送信部）１１と、当該送信部１１からデータを受信する第一転送回路１の受信部（送信回路側受信部）１２の構成を示す図である。【００８５】
前述の実施形態１が各パケットに次のパケットのパケット種を付加したのに対して、本実施形態２は、各パケットに前のパケットのパケット種を付加した構成が異なっている。なお、その他の構成は同じであるため、前述の実施形態１と比べて、同一の要素には同符号を付すなどして再度の説明を省略する。【００８６】
図１０，図１１に示すように、送信部１１はコーダー１１３と信号合成部２６との間に遅延回路６１を備える。【００８７】
遅延回路６１は、コーダー１１３から出力されたパケット種を一旦レジスタに格納すると共に、一つ前に格納したパケット種を後段へ送る。即ち、遅延回路６１は、パケット種を一パケット分遅延させて信号合成部２６へ送る。【００８８】
そして、信号合成部２６は、遅延回路６１で遅延されたパケット種をセレクタ２２から入力されたパケットに加える。即ち信号合成部２６は、各パケットに前のパケットのパケット種を示す前パケット種を加える。【００８９】
本例の信号合成部２６は、例えば図４の次パケット種に代わり前パケット種をパケットに加算する。【００９０】
また、本例の受信部１２は、Ｓ／Ｐ変換部１２１の後段に遅延回路６２を備える。遅延回路６２は、Ｓ／Ｐ変換部１２１から受信したパケットを一旦レジスタに格納すると共に、一つ前に格納したパケットを後段へ送る。即ち、遅延回路６２は、信号合成部１２５、エラー判定部１２３、エラー検出部１２２、再送管理部１２９へ送るパケットを一パケット分遅らせている。【００９１】
また、本例のデコーダ１２４は、受信したパケットから前パケット種を抽出し、前パケット種に応じた値をライトイネーブル信号として出力する。更に、デコーダ１２４は、Ｓ／Ｐ変換部１２１から受信した各パケットから前パケット種を抽出し、パケット種判定部１２７へ送る。なお、本例のパケット種判定部１２７では図５の遅延部５１を廃し、デコーダ１２４から受信した前パケット種を遅延させずに再送判定部５２、再送開始判定部５３及び定型判定部５４へ送る。【００９２】
このように本例では、パケット種判定部１２７が前パケット種を用いてエラーパケットのパケット種判定を行っている。このため、遅延回路６２がＳ／Ｐ変換部１２１から再送管理部１２９やエラー判定部１２３へ送られるパケットを遅延させて、当該パケットとパケット種判定部の判定結果とがエラー判定部１２３及び再送管理部１２９に送られるタイミングを調整している。【００９３】
このように本例のデータ転送装置は、各パケットに前パケット種を付加したので、エラーが生じた場合、エラーパケットの次のパケットに付加された前パケット情報からエラーパケットのパケット種を判別でき、エラーパケットが再送可能か否かを判定できる。【００９４】
また、本例のデータ転送装置は、前パケット種を用いた構成以外は前述の実施形態１と同様に、エラーが生じた場合、エラーパケットと再送パケットとを比較し、エラーパケットのどの部分にエラーがあるのかを特定可能にしている。【００９５】
本発明は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。また、上記構成要素は可能な限り組み合わせることができる。
【図１】
0005459308.tif 000002
【図２】
0005459308.tif 000003
【図３】
0005459308.tif 000004
【図４】
0005459308.tif 000005
【図５】
0005459308.tif 000006
【図６】
0005459308.tif 000007
【図７】
0005459308.tif 000008
【図８】
0005459308.tif 000009
【図９】
0005459308.tif 000010
【図１０】
0005459308.tif 000011
【図１１】
0005459308.tif 000012