JP3741077B2 - データ転送装置 - Google Patents

データ転送装置 Download PDF

Info

Publication number
JP3741077B2
JP3741077B2 JP2002147195A JP2002147195A JP3741077B2 JP 3741077 B2 JP3741077 B2 JP 3741077B2 JP 2002147195 A JP2002147195 A JP 2002147195A JP 2002147195 A JP2002147195 A JP 2002147195A JP 3741077 B2 JP3741077 B2 JP 3741077B2
Authority
JP
Japan
Prior art keywords
data
unit
register
output
retransmission
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
JP2002147195A
Other languages
English (en)
Other versions
JP2003338808A (ja
Inventor
雄司 菊池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 Corp filed Critical NEC Corp
Priority to JP2002147195A priority Critical patent/JP3741077B2/ja
Priority to EP03011635A priority patent/EP1365535A2/en
Priority to US10/443,941 priority patent/US7039729B2/en
Publication of JP2003338808A publication Critical patent/JP2003338808A/ja
Application granted granted Critical
Publication of JP3741077B2 publication Critical patent/JP3741077B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management
    • H04L1/1877Buffer management for semi-reliable protocols, e.g. for less sensitive applications like streaming video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1838Buffer management for semi-reliable protocols, e.g. for less sensitive applications such as streaming video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]
    • H04L1/1816Hybrid protocols; Hybrid automatic repeat request [HARQ] with retransmission of the same, encoded, message

Description

【0001】
【発明の属する技術分野】
本発明はデータ転送装置に係わり、たとえばメモリからデータを読み出したりメモリにデータの書き込みを行うような場合、あるいはメモリのアドレスを転送する場合のように比較的大容量のデータを信頼性の比較的低いインタフェースで転送するような場合に有効なデータ転送装置に関する。
【0002】
【従来の技術】
コンピュータ等の情報処理装置の利用範囲が増える一方で、これらの装置の処理速度が向上している。これと共に、大容量のデータが取り扱われる機会も多くなっている。特に大規模構成のシステムでは装置間で大容量のデータを転送する際に、同時に複数ビットのエラーが発生する可能性が高くなっている。そこで、このような同時に発生する複数ビットのエラーを救済できる信頼性の高いデータ転送装置が望まれている。
【0003】
従来のデータ転送装置でも、同時に複数ビットのエラーが発生し、これによってエラーの訂正が不可能となったような場合には、幾つかの対策が採られている。すなわち、データ転送を行っていたシステムを直ちに停止してその原因をチェックするような対策や、データ出力部から該当するデータを再発行させたり、再送バッファ等の退避バッファに格納されているデータを再発行させるといった対策が採られている。
【0004】
また、特開2000−244530号公報では、送信すべきデータを所定のデータ量ごとに複数の送信バッファに分けて格納しておき、アドレス記憶手段にこれらのデータの格納アドレスを記憶させておくようにしている。そして、送信手段によってデータが送信先に送信されたときにエラーが検出された場合には、エラーの生じたデータに対応する送信バッファをアドレス記憶手段から割り出して、その送信バッファから送信データを再送するようにしている。
【0005】
【発明が解決しようとする課題】
このうち、エラーの訂正が不可能とされた時点で直ちにシステムのチェックを行う対策の場合には、これを実行するためにシステムが無条件に所定の期間停止してしまう。このため、データの転送を継続的に行う必要があるようなシステムでは、データの途切れによる信頼性低下という問題を発生させる。
【0006】
また、データ出力部から該当するデータを再発行させるようにする対策では、再発行の間、再発行の対象となるデータの送信の進行が再発行分だけ遅延するのは当然としても、これ以外の種別のデータについても同様に遅延するといった問題があった。たとえば所定のメモリに送るべきデータと、所定の入力装置に送るべきデータの2種類のデータがあったとして、メモリに送るデータに障害が発生したとする。この場合、メモリに送るデータをデータ出力部の出力するデータに割り込ませることになる。したがって、所定の入力装置に送るべきデータもその影響を受けて、割り込み分だけ遅延が生じてしまう。特開2000−244530号公報に記載された技術でも、この点は同一である。このため、これらの技術では、障害の発生したデータと無関係でかつ遅延が問題とされるようなデータについて、データ転送の信頼性が低下するという問題を発生させる。
【0007】
このような問題の発生を回避するために、退避バッファからデータ出力部とは別の送信経路を持ちいてデータを再送させるようにすることが、前記したように案出されている。ところが、この提案では退避バッファという特別のバッファや特別の送信経路が必要となる。したがって、ハードウェア量の増大によるシステムのコストの増加といった問題が発生する。また、障害発生時に退避バッファから該当するデータを再発行する場合には、データ出力部自体がデータを再発行する場合と異なり、データの区切りや転送するデータの順序等を認識することが困難である。したがって、再送されたデータが受信先で正しく認識されず、いわゆる文字化けを起こすような現象を発生させることがある。
【0008】
そこで本発明の目的は、所定のデータの再送が必要とされたとき、これによってそのデータと関係しない他のデータにまで送信の遅延が生じることのないデータ転送装置を提供することにある。
【0009】
【課題を解決するための手段】
請求項1記載の発明では、(イ)送信の時間的なタイミングが他のデータの送信タイミングの遅延によって影響されるべきでないデータ同士を少なくともそれぞれ分離して格納するための複数のデータ格納手段と、(ロ)これら複数のデータ格納手段に対して予め決められた頻度および順番で、それぞれ1単位分ずつのデータを順に選択するデータ選択手段と、(ハ)このデータ選択手段によって選択されたデータを所定のクロックに同期して1クロック分ずつ順に送信するデータ送信手段と、(ニ)このデータ送信手段によって送信されたデータを受信するデータ受信手段と、(ホ)このデータ受信手段によって受信されたデータを1クロック分ずつチェックしてこれら1クロック分ごとのデータに訂正不可能な障害が発生しているか否かを判別する障害有無判別手段と、(ヘ)データ受信手段によって受信されたデータを1クロック分ずつチェックしてこれら1クロック分ごとのデータに訂正可能な障害が発生していたときこれを訂正する障害訂正手段と、(ト)障害有無判別手段の出力を1単位分のデータについて1クロック分ごとに順次チェックして、訂正不可能な障害が発生したとき、再送を指示する再送指示手段と、(チ)データ送信手段によって送信されたデータがデータ受信手段によって受信され再送指示手段によって訂正不可能な障害が発生したときに再送が指示されるまでの時間的な遅延を考慮して再送の指示が到来したタイミングで前記した複数のデータ格納手段のどの手段のどの箇所からデータを再送させるべきかを示す再送用情報を順に記憶し更新する再送用情報記憶手段と、(リ)再送指示手段が再送を指示したタイミングで再送用情報記憶手段から再送用情報を読み出して前記した複数のデータ格納手段のうちの対応するものに与えて、訂正不可能な障害の発生した箇所を含む少なくとも1単位分のデータの再送を行わせる再送指示手段とをデータ転送装置に具備させる。
【0016】
すなわち請求項1記載の発明では、複数のデータ格納手段を用意しておき、これらに送信の時間的なタイミングが他のデータの送信タイミングの遅延によって影響されるべきでないデータ同士を少なくともそれぞれ分離して格納しておく。たとえば2系統のメモリへ別々に書き込まれる合計2種類のデータとI/O(入出力装置)に送られる1種類のデータとが互いに他のデータの遅延による影響を受けるべきデータでないような場合には、これらを3つのデータ格納手段に別々に格納しておく。このとき、遅延が特に問題とされないようなデータが更に存在する場合には、いずれかのデータ格納手段に一緒に格納するようにしてもよいし、これらとは別のデータ格納手段に格納するようにしてもよい。データ選択手段は、これら複数のデータ格納手段に格納されているそれぞれ1単位分ずつのデータを、予め決められた頻度および順番で選択する。たとえば決められた順番で平等にこれら複数のデータ格納手段から1単位分ずつデータを選択するようにしてもよいし、優先度を設けておき、あるデータ格納手段から選択するよりも他のデータ格納手段から倍の頻度でデータを選択するようにしてもよい。選択の時点で送信すべきデータの格納されていないデータ格納手段がある場合には、そのデータ格納手段の選択をスキップしてもよい。データ選択手段によって選択した1単位分ずつのデータは、データ送信手段からクロックに同期して送信され、データ受信手段で受信される。データ受信手段側では障害訂正手段がデータ受信手段によって受信されたデータを1クロック分ずつチェックして、これら1クロック分ごとのデータに訂正可能な障害が発生していたときこれを訂正する。また、障害有無判別手段はこれら1クロックごとに送られてくるデータに訂正不可能な障害が発生しているか否かを判別する。ところで再送用情報記憶手段は、データの受信側から再送が指示されるまでの時間的な遅延を考慮して、現実に再送の指示があるか否かを問わず、再送の指示が到来したタイミングで前記した複数のデータ格納手段のどの手段のどの箇所からデータを再送させるべきかを示す再送用情報を順に記憶し更新している。そして、訂正不可能な障害が発生して再送の指示が到来したときにはそのタイミングから再送すべきデータを確定し、該当するデータ格納手段から訂正不可能な障害の発生した箇所を含む少なくとも1単位分のデータの再送を行わせる。
【0017】
このように請求項1記載の発明では、データ送信手段から送信されデータ受信手段の受信したデータに訂正不可能な障害が発生していた場合には、再送用情報記憶手段によって記憶され更新される情報から再送の対象となるデータがどのデータ格納手段のどの格納位置に存在するかを判別してデータ選択手段によって再度選択させ、データ送信手段から再送させる。このため、該当するデータ格納手段以外のデータ格納手段に格納されたデータは今までと同様にデータ選択手段によって選択されてデータ送信手段からデータ受信手段に向けて転送されることになる。したがって、再送の生じたデータ格納手段以外のデータ格納手段については、再送による遅延の影響は生じないことになる。
【0018】
請求項2記載の発明では、請求項1記載のデータ転送装置で、再送指示手段によって再送を指示した1単位分のデータをその属するデータ格納手段から出力させるとき、それ以前のタイミングでそれよりも後の1単位分のデータの一部または全部がデータ送信手段から送信されていたとき、これらを受信データからキャンセルさせるキャンセル処理回路を具備することを特徴としている。
【0019】
すなわち請求項2記載の発明では、たとえば再送すべきデータが一まとまりのデータの前半部分のデータであって、これについて再送の指示を行ったときにすでに後半部分のデータの送信を開始していたり送信が終了しているような場合を扱っている。このような場合に再送した前半部分のデータを後半部分のデータの後に付けると順序が狂ってしまう。そこで、データ送信手段から既に送信されている受信データを必要に応じてキャンセルすることで、順序の合った一まとまりのデータが受信側で処理されるようにした。
【0020】
請求項3記載の発明では、請求項1記載のデータ転送装置で、障害訂正手段によって訂正可能な障害を訂正した後のデータを、転送されてきたデータの種類に応じて振り分けてそれぞれ処理する複数のデータ処理手段を具備することを特徴としている。
【0021】
すなわち請求項3記載の発明では、送信側に複数のデータ格納手段が存在するのに対応させて受信側で受信したデータを振り分けることができるようにしている。ただし、送信側と同数のデータ処理手段を備える必要はない。
【0024】
【発明の実施の形態】
【0025】
【実施例】
以下実施例につき本発明を詳細に説明する。
【0026】
図1は本発明の一実施例におけるデータ転送装置を表わしたものである。このデータ転送装置10は、データの送信を行うデータ送信装置11と、データの受信を行うデータ受信装置12ならびに、これらの間に配置された比較的信頼性の低いインタフェースとしてのデータ伝送手段13から構成されている。データ送信装置11は、第1〜第3のデータ送信器141〜143と、これら第1〜第3のデータ送信器141〜143の出力データ151〜153を選択して出力するデータ選択器16と、データ選択器16の出力する選択データ17を入力してデータ伝送手段13に送出するデータ出力部18を備えている。また、データ送信装置11はデータ受信装置12に送出した転送データ19に誤りがあって再発行指示21が送り返されてきたときにこれを入力して再発行を制御する再発行制御部22を備えている。再発行制御部22は、再発行指示21に基づいて再発行要求信号23を第1〜第3のデータ送信器141〜143のうちの該当するものに送出するようになっている。
【0027】
ここで、第1〜第3のデータ送信器141〜143は、送信の時間的なタイミングが他のデータの送信タイミングの遅延によって影響されるべきでないデータ同士を少なくともそれぞれ分離して格納するためのデータ格納手段を構成している。本実施例で第1のデータ送信器141は、データ受信装置12側に配置された図示しない第1のメモリに書き込むデータを順次受信して格納している。また、第2のデータ送信器142は、同じくデータ受信装置12側に配置された図示しない第2のメモリに書き込むべきデータを順次受信して格納している。更に第3のデータ送信器143は、同じくデータ受信装置12側に配置された図示しないI/O装置に送出するデータを順次受信して格納している。
【0028】
一方、データ受信装置12は、データ出力部18からデータ伝送手段13に送り出された転送データ19を入力するデータ入力部25を備えている。データ入力部25からの出力データ26は障害検出部27に入力されて、データの障害の有無が検出されるようになっている。障害検出部27は1クロック単位で送られてくるデータに対してクロック単位で障害の有無を判別する。そして、1ビットエラーのように訂正可能な障害の生じたデータに対してはこれを訂正する。また、同時に複数ビットのエラーが発生したことにより訂正不可能な障害となっている場合にはこれを表わしたデータを出力する。
【0029】
障害検出部27の出力側には、転送されてきたデータを振り分ける第1または第2のデータ処理部311、312が配置されている。本実施例では前記した第1のメモリと第2のメモリに向けて転送されてきたデータを第1のデータ処理部311に格納し、I/O装置に向けて転送されてきたデータを第2のデータ処理部311に格納するようにしている。第1〜第3のデータ送信器141〜143に対応させて、図示しないが3つのデータ処理部31を用意することももちろん可能である。この場合には、転送されてきたデータを1対1で単純に振り替えればよい。
【0030】
図1に示す第1および第2のデータ処理部311、312から出力される通常キャンセル情報32、33は、エラーの判定を行うエラー判定部34にそれぞれ供給されるようになっている。ここで「通常キャンセル」とは、本明細書では通常のアクセスのやり直しをいう。通常の回路を例にとり説明する。たとえばメモリのアクセスを行うときに、メモリへの書き込み中に読み出しの要求があった場合のような競合が生じた場合には、アクセスをキャンセルして、やり直す。あるいはメモリのアクセスを行おうとしたときに、アクセス待ちを行うための図示しない緩衝バッファが一杯になっているような状況では、アクセスをキャンセルして再度アクセスを行う必要がある。このような通常行われるアクセスのキャンセルを指示する情報が、本明細書における通常キャンセル情報32、33である。通常キャンセル情報32、33は、データ有効情報29やそのトランザクションの情報としてのデータ送信機14のIDを含んでいる。
【0031】
障害検出部27の検出で得られた障害検出情報35は、情報持ち回り部36に入力され、これから出力されるエラー情報37がエラー判定部34に入力される。情報持ち回り部36は、訂正不可能な障害が検出されたときに、障害検出情報35を持ち回るようになっている。エラー判定部34は、情報持ち回り部36から出力されるエラー情報37と通常キャンセル情報32、33とを入力して、データ送信装置11に対して後に説明する所定の条件下で、データの再発行を行うための再発行指示21を発行するようになっている。
【0032】
このように本実施例のデータ転送装置10では、第1〜第3のデータ送信器141〜143という3系統のデータ送信器を使用している。これらのデータ送信器141〜143は複数クロックによって転送される1単位分のデータを最小単位として時分割的にデータの送信を行うことができるが、送信について順序保証が必要とされる種別ごとにまとめられている。たとえば第1のデータ送信器141の送出するデータは、この第1のデータ送信器141から出力されるデータの間で順序が保証される。第1のデータ送信器141の送出するデータが、第2あるいは第3のデータ送信器142、143との間で転送の順序が保証されるものではない。
【0033】
第1〜第3のデータ送信器141〜143は、順序保証を行うために、それぞれFIFO(先入れ先出し)バッファで構成されている。データ選択器16は、ラウンドロビン調停等の手法でデータを選択するセレクタ等と呼ばれる回路である。このような回路は、当業者にとってよく知られているので、その詳細な構成は省略する。データ出力部18は1単位分のデータを分割して送信する際に転送データを保持しておく図示しないレジスタで構成される。データ入力部25も図示しないレジスタで構成され、データ転送遅延等を考慮して配置されている。これらの構成は本発明と直接関係しないので、これらの詳細な構成は省略する。障害検出部27は図示しないECC(Error Correcting Code)制御回路を有しており、訂正可能な障害および訂正不可能障害を検出する。訂正可能な障害が検出された場合には、先に説明したようにデータの訂正を施す。これに対して訂正不可能な障害が検出された場合には、訂正不可能障害が検出されたことを報告する。本回路も当業者にとってよく知られているので、その詳細な構成は省略する。
【0034】
図2は、本実施例のデータ受信装置の要部を表わしたものである。ここでは、出力データ26を入力する障害検出部27の出力側として障害検出情報35を入力する情報持ち回り部36と、転送データ28を入力する第1のデータ処理部311の構成を具体的に表わしている。第2のデータ処理部312は第1のデータ処理部311と同一の回路構成となっているので、その図示は省略している。
【0035】
情報持ち回り部36は、障害検出情報35を順次入力する直列回路としての第1〜第3のレジスタ41〜43を備えている。第1のレジスタ41の出力データ44は第2のレジスタ42に入力されると共に、エラー判定部34に入力される。第2のレジスタ42の出力データ45は、第3のレジスタ43に入力されると共に、エラー判定部34に入力される。第3のレジスタ43の出力データ46は、同様にエラー判定部34に入力される。すなわち、エラー判定部34は3つの出力データ44〜46を並行して入力するようになっている。
【0036】
一方、データ処理部31は、転送データ処理部47とデータ有効情報処理部48とによって構成されている。転送データ処理部47は、転送データ281を順次入力する直列回路としての第4〜第6のレジスタ51〜53を備えている。第4のレジスタ51の出力データ54は第5のレジスタ52に入力されると共に、データ処理器49に入力される。第5のレジスタ52の出力データ55は、第6のレジスタ53に入力されると共に、データ処理器49に入力される。第6のレジスタ53の出力データ56は、同様にデータ処理器49に入力される。
【0037】
データ有効情報処理部48は、データ有効情報29を順次入力する直列回路としての第7〜第9のレジスタ61〜63を備えている。ここでデータ有効情報29は転送データ281の一部を構成している。第7のレジスタ61の出力データ64は第8のレジスタ62に入力されると共に、データ処理器49に入力される。第8のレジスタ62の出力データ65は、第9のレジスタ63に入力されると共に、データ処理器49に入力される。第9のレジスタ63の出力データ66は、同様にデータ処理器49に入力される。すなわち、データ処理器49は6つの出力データ54〜56、64〜66を並行して入力するようになっている。これは、図1に示すデータ選択器16およびその前段の回路部分が複数存在して、複数のデータ選択器16から出力される転送データ19がパイプライン処理されることを前提としているためである。第9のレジスタ63からの出力データ66は、データ処理器49の他にエラー判定部34にも入力されるようになっている。
【0038】
データ処理器49から出力される通常キャンセル情報32はエラー判定部34へ入力され、エラー判定部34からの破棄情報69はデータ処理器49へ入力されるようになっている。ここで破棄情報69とは、再送によって図1に示したデータ送信装置11から送られてきたデータのうち先に送られてきたデータと重複するものを破棄する指示を行うための情報である。
【0039】
このような構成の本実施例のデータ転送装置10では、データ送信装置11からデータ受信装置12に対して、それぞれ送られてくる1単位分のデータを、図示しないクロック発生器から出力される基本クロックの3クロック分のデータとしてデータ伝送手段13へ順に1クロック分ずつ送信する構成となっている。第1のデータ処理部311は、3分割された転送データ281における先頭データの到着時から順次処理を行うことが可能である。この点は、図1に示した第2のデータ処理部312も同様である。第2のデータ処理部312の場合には転送データ28における先頭データの到着時から順次処理を行うことになる。
【0040】
障害検出部27から出力され情報持ち回り部36に入力される障害検出情報35は、▲1▼訂正不可能障害の有無、▲2▼第1〜第3のデータ送信器141〜143のいずれの出力であるかを表わす識別番号、および▲3▼第1〜第3のデータ送信器141〜143のいずれかにおける再送時の読み出し位置としてのリードポインタから構成されている。訂正不可能障害が発生した場合、エラー情報37を入力するエラー判定部34は再発行指示21として有効フラグと持ち回り情報のデータ送信器14の識別番号ならびに該当するデータ送信器14のリードポインタを返し、そのデータ送信器14からの再発行を要求することになる。
【0041】
ところで、エラー判定部34は、障害検出情報35のステータスが訂正不可能障害無しであった場合でも、データ処理部311(312)で検出された通常キャンセル情報32(33)がアクティブであった場合には、再発行指示21を発行する。再発行制御部22は、第1〜第3のデータ送信器141〜143のうちで持ち回り情報のデータ送信器の識別番号に対応するものに対して、持ち回り情報のリードポインタを、前記したFIFOバッファのリードポインタにセットする。これにより、再送の必要な箇所から出力データ15の再発行が可能になる。出力データ15の再発行が行われる場合に、滑りで発行されている後続転送データに対しては、破棄情報69が送信され、データ処理部31で破棄される。エラー判定部34内には、再発行指示21がアクティブになったデータ送信器14の識別番号に対応するデクリメントカウンタが配置されており、固定クロック数だけデクリメントして“0”になる。カウンタが“0”以外のときには、発行元のデータ送信装置に対応する破棄情報69がアクティブになる。かくして、前述した処理が実行されるようになっている。
【0042】
図3〜図5は、本実施例のデータ転送装置のデータ転送の様子を時間軸を3つに分割して表わしたものである。なお、各図は互いに一部重複させて示している。これらの図3〜図5で図(a)はこのデータ転送装置10で使用される基本クロック71を示している。基本クロック71の上に示した時間T1、T2、……は、それぞれのクロック周期を示すものである。
【0043】
図3〜図5で図(b)はデファイナ72を示している。デファイナ72はデータ送信装置11内のデータ選択器16が第1〜第3のデータ送信器141〜143から出力される出力データ151〜153を選択する際の調停タイミングを示すものである。本実施例でデファイナ72は、基本クロック71の3クロックに1回ずつアクティブとなる。この例では、時間T0、T3、T6、……でデファイナ72がアクティブとなっている。
【0044】
図3〜図5で図(c)は、図1に示したデータ出力部18の転送しようとする転送データ19の構成の一例を示したものである。ここで、転送データAは図1に示す第1のデータ送信器141の送信するデータを示しており、転送データBは第2のデータ送信器142の送信するデータを示している。図1に示す第3のデータ送信器143(図1参照)から送信されるデータは、説明を簡単にするために図3〜図5に示した時間帯では存在しないものとする。なお、それぞれの転送データA、Bに付加された数字“00”〜“02”は先行する前半部分としての1単位分の転送データの順番を示しており、他の数字“10”〜“12”はこれに後続する後半部分としての1単位分の転送データの順番を示している。
【0045】
“00”等の2桁の数字の後に付された符号“D”は、本明細書で特別の意味を持たない。末尾が数字のみの表記であると、この明細書の他の回路部品を表わした2桁の数字との間で混同を生じるので、これを防止するために付加したものに過ぎない。これに対して、図3等には2桁の数字の後に符号“S”または符号“E”を付したデータが存在している。符号“S”を付したデータは、訂正不可能な障害が無いことを示す障害検出情報を表わしており、符号“E”を付したデータは訂正不可能な障害があることを示す障害検出情報を表わしている。
【0046】
さて、第1のデータ送信器141のFIFOバッファには先行する1単位分の転送データとしての転送データA00D、A01D、A02Dと後続する転送データとしての転送データA10D、A11D、A12Dがこの順序に格納されているものとする。また、第2のデータ送信器142のFIFOバッファには転送データとして転送データB00D、B01D、B02Dが格納されているものとする。また、本実施例ではデータ伝送手段13としてデータ出力部18から出力された転送データ19が基本クロック71の4クロック周期後にデータ入力部25で受信されるようなインタフェースが使用されているものとする。
【0047】
図3〜図5で図(d)はデータ受信装置12内のデータ入力部25の受信状態を示しており、同図(e)〜(g)は図2に示した第7〜第9のレジスタ61〜63の格納状態をそれぞれ示している。また、同図(h)〜(j)は図2に示した第4〜第6のレジスタ51〜53の格納状態をそれぞれ示しており、更に、同図(k)〜(m)は図2に示した第1〜第3のレジスタ41〜43の格納状態をそれぞれ示している。
【0048】
このような前提で、時間T0に第1のデータ送信器141の出力データ151が、まず1単位分(基本クロック71の3クロック分)だけデータ選択器16で選択されて、データ出力部18へ転送される選択データ17として確定したものとする。
【0049】
これにより、次の時間T1に、データ出力部18から1単位分のデータのうちの第1番目の転送データA00Dが転送データ19としてデータ受信装置12に向けて送信される。
【0050】
更に次の時間T2に、データ出力部18から1単位分のデータのうちの第2番目の転送データA01Dが転送データ19としてデータ受信装置12に向けて送信される。
【0051】
次の時間T3に、デファイナ72がアクティブとなって、データ選択器16が今度は次の1単位分(基本クロック71の3クロック分)のデータとして第2のデータ送信器142の出力データ152を選択したとし、データ出力部18への選択データ17が確定する。このとき、データ出力部18からは第1のデータ送信器141から既に選択された1単位分のデータにおける第3番目の転送データA02Dが転送データ19としてデータ受信装置12に向けて送信されることになる。
【0052】
次の時間T4には、データ出力部18から、第2のデータ送信器142から出力された1単位分のデータにおける第1番目の転送データB00Dが転送データ19としてデータ受信装置12に向けて送信される。
【0053】
更に次の時間T5には、データ出力部18から、1単位分のデータにおける第2番目の転送データB01Dが転送データ19としてデータ受信装置12に向けて送信される。このとき、図3(d)に示すように、基本クロック71の4クロック分遅延した形で、データ受信装置12のデータ入力部25が時間T1にデータ出力部18から送信された第1番目の転送データA00Dを受信することになる。
【0054】
次の時間T6にデファイナ72がアクティブとなる。しかしながら、先に説明したように第3のデータ送信器143(図1参照)から送信するデータがこのとき存在しない。この結果として、第1のデータ送信器141の出力データ151が再びデータ選択器16で選択される。これによりデータ出力部18へ入力される1単位分(基本クロック71の3クロック分)の選択データ17が確定する。この時間T6で、データ出力部18からは第3番目の転送データB02Dが転送データ19としてデータ受信装置12に向けて送信される。また、この時間T6にデータ入力部25が第2番目の転送データA01Dを受信する。
【0055】
ところで前記した時間T6には、第7のレジスタ61がデータ有効情報29を受信する。このとき第4のレジスタ51が第1番目の転送データA00Dを受信する。また、このとき障害検出情報35を入力する情報持ち回り部36内の第1のレジスタ41が第1番目の転送データA00Dについての障害検出情報A00Eを入力するものとする。すなわちこの場合、第1番目の転送データA00Dは障害検出部27において訂正不可能障害が検出されている。この場合には、訂正不可能障害有りというステータスとなる。本明細書では、転送データの末尾に示す符号“D”を訂正不可能障害有りというステータスで符号“E”に変えて示している。
【0056】
次の時間T7にはデータ出力部18から後続する1単位分の転送データにおける第1番目の転送データとして転送データA10Dが送信される。このとき、データ入力部25は第3番目の転送データA02Dを受信する。また、第4のレジスタ51が第2番目の転送データA01Dを受信し、第5のレジスタ52が第1番目の転送データA00Dを受信する。このとき第1のレジスタ41が第2番目の転送データA01Dの障害検出情報35として障害検出情報A01Sを受信する。第2番目の転送データA01Dが障害検出部27で訂正不可能障害が検出されなかったとする。この場合には、訂正不可能障害無しというステータスとなる。本明細書では、転送データの末尾に示す符号“D”を訂正不可能障害無しというステータスで符号“S”に変えて示している。この時間T7では、第2のレジスタ42が第1のレジスタ41の出力する訂正不可能障害が検出された第1番目の転送データについての障害検出情報A00Eを受信することになる。
【0057】
更に次の時間T8では、データ出力部18から後続する1単位分の転送データにおける第2番目の転送データとして転送データA11Dが送信される。このとき、データ入力部25は第1番目の転送データB00Dを受信する。また、第4のレジスタ51が第3番目の転送データA02Dを受信し、第5のレジスタ52が第4のレジスタ51の出力する第2番目の出力データA01Dを受信する。また、第6のレジスタ53が第5のレジスタ52の出力する第1番目の出力データA00Dを受信する。
【0058】
また、第1のレジスタ41は第3番目の転送データA02Dの障害検出情報A02Sを受信する。第3番目の転送データA02Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は、第1のレジスタ41の出力する第2番目の出力データA01Sを受信する。このとき第3のレジスタ43が第2のレジスタ42の出力する出力データA00Eを受信する。この時間T8で第9のレジスタ63がデータ有効情報29を受信しアクティブとなっている。エラー判定部34は第1〜第3のレジスタ41〜43のいずれかが訂正不可能障害有りというステータスを格納している状態でエラー情報37を出力するようになっており、エラー情報37が出力されている状態で第9のレジスタ63がアクティブとなっているこの状態で、再発行指示21をアクティブにする(図4(n))。
【0059】
時間T9では、アクティブとなった再発行指示21を基にして、データ送信装置11内の再発行制御部22から第1のデータ送信器141に対して再発行要求信号23が発行される(図4(o))。これを基にして、第1のデータ送信器141からの再発行出力データ151がリードポインタで指示されてデータ選択器16によって選択され、データ出力部18への選択データ17が確定する。このときデータ出力部18からは先に選択された第3番目の転送データA12Dが送信される。データ入力部25はこのとき第2番目の転送データB01Dを受信する。また、このとき第7のレジスタ61は障害検出部27からデータ有効情報29を受信する。
【0060】
第4のレジスタ51は第1番目の転送データB00Dを受信する。第5のレジスタ52が第4のレジスタ51の出力する第3番目の出力データA02Dを受信する。第6のレジスタ53は第5のレジスタ52の出力する第2番目の出力データA01Dを受信する。また、このとき第1のレジスタ41は第1番目の転送データB00Dの障害検出情報B00Sを受信したものとする。第1番目の転送データB00Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は第1のレジスタ41の出力する第3番目の出力データA02Sを受信する。第3のレジスタ43は第2のレジスタ42の出力する第2番目の出力データA01Sを受信する。このとき、再発行制御部22がエラー判定部34から再発行指示21を受信する。再発行指示21により、図4の図(p)に示すようにエラー判定部34から出力される破棄情報69がアクティブになる。
【0061】
第1のデータ送信器141から出力される出力データ151について再送が行われるとき、破棄情報69がアクティブになる区間は基本クロック71の6クロック分である。エラー判定部34は、第1〜第3のデータ送信器141〜143のそれぞれについて基本クロック71の何個分の時間だけ破棄情報69をアクティブな状態に保持するかを記憶している。この例で破棄情報69は、第1のデータ送信器141から出力される出力データ151の前半の転送データについてキャンセルが発生したという情報を、出力データ151の後半あるいは滑り分の基本クロック71の数(トランザクション数)の到達タイミングまで保持するためにアクティブとなっている。
【0062】
時間T10では、再発行指示21に基づいてデータ出力部18から再送による第1番目の転送データA00Dが送信される。このとき、データ入力部25は第3番目の転送データB02Dを受信する。第8のレジスタ62は第7のレジスタ61の出力データを受信する。第4のレジスタ51は第2番目の転送データB01Dを受信する。第5のレジスタ52は第4のレジスタ51の出力する第1番目の出力データB00Dを受信する。第6のレジスタ53は第5のレジスタ52の出力する第3番目の出力データA02Dを受信する。第1のレジスタ41は第2番目の転送データB01Dの障害検出情報B01Sを受信する。第2番目の転送データB01Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は第1のレジスタ41の出力する第1の出力データB00Sを受信する。第3のレジスタ43は第2のレジスタ42の出力する第3番目の出力データA02Sを受信する。破棄情報69はアクティブのまま保持される。
【0063】
時間T11では、データ出力部18から再送による第2番目の転送データA01Dが送信される。このときデータ入力部25は第1番目の転送データA10Dを受信する。第9のレジスタ63は第8のレジスタ62の出力データを受信する。第4のレジスタ51は第3番目の転送データB02Dを受信する。第5のレジスタ52は第4のレジスタ51の出力データB01Dを受信する。第6のレジスタ53は第5のレジスタ52の出力する第1番目の出力データB00Dを受信する。第1のレジスタ41は第3番目の転送データB02Dの障害検出情報B02Sを受信する。第3番目の転送データB02Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は第1のレジスタ41の出力データB01Sを受信する。第3のレジスタ43は第2のレジスタ42の出力データB00Sを受信する。破棄情報69はアクティブのまま保持される。このとき第9のレジスタ63はアクティブとなっているが、情報持ち回り部36内の第1のレジスタ41、第2のレジスタ42、第3のレジスタ43のいずれにも訂正不可能障害有りというステータスが無い。このため、この時間T11で再発行指示21はアクティブとならず、第2のデータ送信器142から転送されたデータB00D、B01D、B02Dについては再送処理を行うことなく正常に処理が完了する。
【0064】
時間T12では、第1のデータ送信器141からの出力データ151がデータ選択器16で選択されデータ出力部18への選択データ17が確定する。データ出力部18から第3番目の転送データA02Dが送信される。データ入力部25が第2番目の転送データA11Dを受信する。第7のレジスタ61はデータ有効情報29を受信する。第4のレジスタ51は第1番目の転送データA10Dを受信する。第5のレジスタ52は第4のレジスタ51の出力データB02Dを受信する。第6のレジスタ53は第5のレジスタ52の出力データB01Dを受信する。第1のレジスタ41は第1番目の転送データA10Dの障害検出情報A10Sを受信する。第1番目の転送データA10Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42が第1のレジスタ41の出力データB02Sを受信する。第3のレジスタ43が第2のレジスタ42の出力データB01Sを受信する。破棄情報69はアクティブのまま保持される。
【0065】
時間T13では、データ出力部18から後続する転送データとしての第1番目の転送データA10Dが送信される。データ入力部25は第3番目の転送データA12Dを受信する。第8のレジスタ62は第7のレジスタ61の出力データを受信する。第4のレジスタ51は第2番目の転送データA11Dを受信する。第5のレジスタ52は第4のレジスタ51の出力データA10Dを受信する。第6のレジスタ53は第5のレジスタ52の出力データB02Dを受信する。第1のレジスタ41は第2番目の転送データA11の障害検出情報A11Sを受信する。第2番目の転送データA11は障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は第1のレジスタ41の出力データA10Sを受信する。第3のレジスタ43が第2のレジスタ42の出力データB02Sを受信する。破棄情報69はアクティブのまま保持される。
【0066】
時間T14では、データ出力部18から第2番目の転送データA11Dが送信される。データ入力部25は第1番目の転送データA00Dを受信する。第9のレジスタ63は第8のレジスタ62の出力データを受信する。第4のレジスタ51は第3番目の転送データA12Dを受信する。第5のレジスタ52は第4のレジスタ51の出力データA11Dを受信する。第6のレジスタ53は第5のレジスタ52の出力データA10Dを受信する。第1のレジスタ41は第3番目の転送データA12Dの障害検出情報A12Sを受信する。第3番目の転送データA12Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は第1のレジスタ41の出力データA11Sを受信する。第3のレジスタ43は第2のレジスタ42の出力データA10Sを受信する。破棄情報69はアクティブのまま保持される。破棄情報69により第9のレジスタ63のデータ有効情報は無効化される。すなわち、転送データA10D、A11DおよびA12Dは処理を行わずに完了する。第7のレジスタ61および第8のレジスタ62のアクティブ時の前処理は実施されてもよいが、最終段の第9のレジスタ63アクティブ時には処理すべてが無効化される。
【0067】
時間T15では、データ出力部18から第3番目の転送データA12Dが送信される。データ入力部25は第2番目の転送データA01Dを受信する。第7のレジスタ61がデータ有効情報29を受信する。第4のレジスタ51は第1番目の転送データA00Dを受信する。第5のレジスタ52は第4のレジスタ51の出力する第3番目の出力データA12Dを受信する。第6のレジスタ53は第5のレジスタ52の出力する第2の出力データA11Dを受信する。第1のレジスタ41が第1番目の転送データA00Dの障害検出情報A00Sを受信する。第1番目の転送データA00Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は第1のレジスタ41の出力データA12Sを受信する。第3のレジスタ43は第2のレジスタ42の出力データA11Sを受信する。データ処理器49に入力される破棄情報69はこのときからインアクティブになる。
【0068】
時間T16では、データ入力部25が第3番目の転送データA02Dを受信する。第8のレジスタ62が第7のレジスタ61の出力データを受信する。第4のレジスタ51は第2番目の転送データA01Dを受信する。第5のレジスタ52は第4のレジスタ51の出力する第1番目の出力データA00を受信する。第6のレジスタ53は第5のレジスタ52の出力する第3番目の出力データA12Dを受信する。第1のレジスタ41は第2番目の転送データA01Dの障害検出情報A01Sを受信する。第2番目の転送データA01Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は第1のレジスタ41の出力データA00Sを受信する。第3のレジスタ43は第2のレジスタ42の出力データA12Sを受信する。
【0069】
時間T17では、データ入力部25が第1番目の転送データA10Dを受信する。第9のレジスタ63が第8のレジスタ62の出力データを受信する。第4のレジスタ51は第3番目の転送データA02Dを受信する。第5のレジスタ52は第4のレジスタ51の出力する第2番目の出力データA01Dを受信する。第6のレジスタ53は第5のレジスタ52の出力する第1番目の出力データA00Dを受信する。第1のレジスタ41は第3番目の転送データA02Dの障害検出情報A02Sを受信する。第3番目の転送データA02Dは障害検出部27において訂正不可能障害が検出されないため、訂正不可能障害無しというステータスになる。第2のレジスタ42は第1のレジスタ41の出力データA01Sを受信する。第3のレジスタ43は第2のレジスタ42の出力データA00Sを受信する。第9のレジスタ63はこのときアクティブであるが、第1のレジスタ41、第2のレジスタ42、第3のレジスタ43のいずれにも訂正不可能障害有りというステータスが無いため、再発行指示21はアクティブとならない。このため、第1のデータ送信器141から転送されたデータA00D、A01DおよびA02Dは正常に処理を完了することになる。
【0070】
以下、同様の手順で第1のデータ送信器141からの後続データA10D、A11DおよびA12Dが処理される。
【0071】
このように、以上説明した例では第1のデータ送信器141から発行された転送データA00D、A01D、A02Dのうち、第1番目の転送データA00Dに訂正不可能障害が検出され、これについての再送処理が行われた。しかしながら、この再送処理は、第2のデータ送信器142から発行された後続の送信データB00D、B01DおよびB02Dに全く影響を及ぼすことがない。
【0072】
このように、本実施例では訂正不可能な障害が発生した時にも、通常キャンセル時と同様に該当するデータ送信器からそのデータを再発行させることにしている。このため、他のデータ送信器から発行された後続転送データには何も影響を与えることなくデータの転送動作が可能である。
【0073】
すなわち、訂正不可能な障害が発生した時の再送処理等による後続転送への影響時間が全く無くなる。このため、システム全体としての性能が向上する。本実施例で説明した例では、第1のデータ送信器141から発行されたA00D、A01DおよびA02Dの送信データのうち、第1番目の転送データA00Dに訂正不可能な障害が検出されたが、第2のデータ送信器142から発行された後続の送信データB00D、B01DおよびB02Dには全く影響を及ぼすことなく動作可能である。また、第1のデータ送信器141からの再発行前に滑りで発行された送信データA10D、A11DおよびA12Dに関しては、データA00D、A01DおよびA02Dとの順序保証の必要があるために、これらも再送して、その後に破棄する手段を設けている。本実施例では、特に訂正不可能障害用に新たな機能を追加することなく、通常キャンセル機能と共用化できるため、再送専用のハードウェアが全く不要になり、コストを削減できるという効果も持つ。
【0074】
従来では、データ受信装置12で障害検出結果が判明した後に、データ送信装置11に対して再送指示をかけるようになっていた。このため、インタフェースのフライトタイムがそのまま性能に見えてしまうことになる。また、再送している間は後続データが待たされるため、順序性を考慮する必要が全く無い後続転送データにも影響を与えてしまう。また、データ送信装置内に再送バッファを持ち、データを送信するたびに再送バッファに格納し障害検出時にその再送バッファから再発行する対策では、既に説明したようにハードウェア量の増大を伴う、またその上に、再送バッファからの出力と通常系出力との調停などが必要となり、インプリメント(implement)も複雑になる。これに対して本実施例では、簡単なハードウェア構成で効率的なシステムを構築できるという利点がある。
【0075】
発明の変形可能性
【0076】
以上説明した実施例ではデータ転送装置10が情報持ち回り部36を備えており、障害検出部27の検出で得られた障害検出情報35を持ち回るようにしていた。ところが、情報持ち回り部36がデータ送信器14の識別番号、データ送信器14のリードポインタを持ち回るため、これらに訂正不可能な障害があると送信元のデータ送信器14を特定することができない。このため実施例では救済不能な転送が発生する可能性が皆無ではない。すなわち、第1番目の転送データに訂正不可能な障害が有った場合はシステムダウンとなってしまう。このような問題は、先の実施例の情報持ち回り部36に対応する回路をデータ送信装置11側に設けることで解決できる。これを次に変形例として説明する。
【0077】
図6は本発明の変形例におけるデータ転送装置の構成を表わしたものである。図6で図1と同一部分には同一の符号を付しており、これらの説明を適宜省略する。この変形例のデータ転送装置10Aでは、データ送信装置11A内の再発行制御部22Aがバッファメモリ81を備えている。また、データ受信装置12Aは情報持ち回り部36を備えていない。この役割をバッファメモリ81が行っている。
【0078】
すなわち、この変形例のデータ転送装置10Aでは、第1〜第3のデータ送信器141〜143より発行した転送データに対応するデータ送信器14の識別番号、データ送信器14のリードポインタを再発行制御部22Aに順次登録する。訂正不可能な障害が発生すると、データ送信器14のリードポインタ等の付属情報が無い再発行指示21Aがエラー判定部34から返却される。
【0079】
データ出力部18から転送データが発行された後、エラー判定部34に至るまでの基本クロック71(図3参照)の数は固定数である。このため、再発行指示21Aがあるべきタイミングで、これがなかった場合は、再発行を行う必要が無いとして、再発行制御部22Aのバッファメモリ81に登録しておいたデータ送信器14の識別番号ならびにデータ送信器14のリードポインタを無効化する。第1〜第3のデータ送信器141〜143のいずれかから送信するデータを読み出したタイミングで、このバッファメモリ81へそのデータ送信器14の識別番号、データ送信器14のリードポインタを書き込む。そして、再発行指示21Aが発生するべきタイミングで再発行指示21Aがアクティブであれば、現在のリードポインタが指すデータ、すなわちデータ送信器14の識別番号ならびにデータ送信器14のリードポインタを読み出すと同時に、これらのリードポインタがインクリメントされる。
【0080】
これに対して、再発行指示21Aが発生するべきタイミングで再発行指示21Aがインアクティブの場合には、リードポインタのインクリメントのみが行われ、前記した読み出しは行われない。
【0081】
図6に示した変形例ではこのような工夫を行っているので、信頼性の低いインタフェースとしてのデータ伝送手段13での障害発生時の救済率が先の実施例のデータ転送装置10よりも向上する。
【0082】
なお、実施例および変形例では、データ転送を3分割して行ったが、分割数は正の整数であれば任意の値で可能である。更に実施例ではデータ送信装置11からデータ受信装置12への転送データ19の到達時間を基本クロック71の4クロック分としたが、これについても任意の正の整数としての値を採ることができる。
【0083】
更に実施例および変形例ではデータ送信器14を第1〜第3のデータ送信器141〜143の3個で構成したが、これも特にその個数が制限されるものではない。更にこれらのデータ送信器141〜143をFIFOメモリで構成したが、これに限るものではない。たとえばプロセッサ等の演算処理装置を使用してデータの順序を確保する制御を行うことで、FIFOメモリと同様に構成することが可能である。
【0084】
また、実施例および変形例では、第1または第2のデータ処理部311、312の2つのデータ処理部を使用したが、これを任意の数の処理部で構成することができるのは当然である。更にデータ処理部はデータを格納する記憶装置等であってもよい。
【0085】
更に実施例では第1〜第3のデータ送信器141〜143における同一の送信器内ではデータの転送順序を保証する制約を設けたが、これに限るものではない。保証の制約が無いような場合には、既に発行されたデータについてデータ送信器14内の有効フラグをリセットすることで、再発行指示21受付後に、これに巻き添えされる形でデータを再発行する必要はない。また、この場合には、エラー判定部34が有する破棄情報69の制御を行う必要はない。このように破棄情報69の制御を不要とすることで、データ送信装置11(11A)とデータ受信装置12(12A)との間における余分なトラフィックが減少し効率的となる。
【0086】
更に実施例では、データ送信装置11とデータ受信装置12との間のインタフェースであるデータ伝送手段13を1対1接続としたが、バス接続等を用いて複数のデータ送信装置もしくは複数のデータ受信装置が接続されるようになっていてもよい。複数のデータ送信装置を1つのデータ伝送手段13で使用する場合には、データ送信器14の識別番号、データ送信器14のリードポインタに加えて、データ送信元のデータ送信装置番号を持ち回ることで、送信元のデータ送信器を特定可能である。
【0087】
また、実施例では、データ選択器16での調停タイミングにデファイナを用いたが、任意のタイミングで調停を行い、データ出力部18からのアクノリッジを待ち合わせるようにしてもよい。この際、データ出力部18とデータ入力部25はレジスタとしたが緩衝バッファ等の他の回路装置を使用することが可能である。
【0088】
更に実施例では、訂正不可能な障害が繰り返される間、データの再発行を繰り返すことになるが、同様に複数回訂正不可能な障害を検出した場合には現状で復旧できない故障あるいは障害としてシステム自体のチェックを行うようにしてもよい。更に実施例および変形例では訂正不可能な障害の検出にECC制御回路を使用したが、パリティチェック等の任意の検出手段を使用することも可能である。
【0089】
【発明の効果】
以上説明したように請求項1記載の発明によれば、再送の生じたデータ格納手段以外のデータ格納手段については、再送による遅延の影響は生じないという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例におけるデータ転送装置の構成を表わしたブロック図である。
【図2】本実施例のデータ受信装置内の要部を表わしたブロック図である。
【図3】本実施例のデータ転送装置のデータ転送の様子を時間軸を複数に分割して表わしたタイミング図である。
【図4】本実施例のデータ転送装置のデータ転送の様子を時間軸を複数に分割して表わしたタイミング図である。
【図5】本実施例のデータ転送装置のデータ転送の様子を時間軸を複数に分割して表わしたタイミング図である。
【図6】本発明の変形例におけるデータ転送装置の構成を表わしたブロック図である。
【符号の説明】
10、10A データ転送装置
11、11A データ送信装置
12、12A データ受信装置
13 データ伝送手段
14 データ送信器
16 データ選択器
18 データ出力部
19 転送データ
25 データ入力部
27 障害検出部
31 データ処理部
34 エラー判定部
36 情報持ち回り部
41〜43、51〜53、61〜63 レジスタ
49 データ処理器

Claims (3)

  1. 送信の時間的なタイミングが他のデータの送信タイミングの遅延によって影響されるべきでないデータ同士を少なくともそれぞれ分離して格納するための複数のデータ格納手段と、
    これら複数のデータ格納手段に対して予め決められた頻度および順番で、それぞれ1単位分ずつのデータを順に選択するデータ選択手段と、
    このデータ選択手段によって選択されたデータを所定のクロックに同期して1クロック分ずつ順に送信するデータ送信手段と、
    このデータ送信手段によって送信されたデータを受信するデータ受信手段と、
    このデータ受信手段によって受信されたデータを前記1クロック分ずつチェックしてこれら1クロック分ごとのデータに訂正不可能な障害が発生しているか否かを判別する障害有無判別手段と、
    前記データ受信手段によって受信されたデータを前記1クロック分ずつチェックしてこれら1クロック分ごとのデータに訂正可能な障害が発生していたときこれを訂正する障害訂正手段と、
    前記障害有無判別手段の出力を1単位分のデータについて前記1クロック分ごとに順次チェックして、訂正不可能な障害が発生したとき、再送を指示する再送指示手段と、
    前記データ送信手段によって送信されたデータが前記データ受信手段によって受信され再送指示手段によって訂正不可能な障害が発生したときに再送が指示されるまでの時間的な遅延を考慮して再送の指示が到来したタイミングで前記複数のデータ格納手段のどの手段のどの箇所からデータを再送させるべきかを示す再送用情報を順に記憶し更新する再送用情報記憶手段と、
    前記再送指示手段が再送を指示したタイミングで再送用情報記憶手段から前記再送用情報を読み出して前記複数のデータ格納手段のうちの対応するものに与えて、訂正不可能な障害の発生した箇所を含む少なくとも1単位分のデータの再送を行わせる再送指示手段とを具備することを特徴とするデータ転送装置。
  2. 前記再送指示手段によって再送を指示した1単位分のデータをその属するデータ格納手段から出力させるとき、それ以前のタイミングでそれよりも後の1単位分のデータの一部または全部が前記データ送信手段から送信されていたとき、これらを受信データからキャンセルさせるキャンセル処理回路を具備することを特徴とする請求項1記載のデータ転送装置。
  3. 前記障害訂正手段によって訂正可能な障害を訂正した後のデータを、転送されてきたデータの種類に応じて振り分けてそれぞれ処理する複数のデータ処理手段を具備することを特徴とする請求項1記載のデータ転送装置。
JP2002147195A 2002-05-22 2002-05-22 データ転送装置 Expired - Fee Related JP3741077B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2002147195A JP3741077B2 (ja) 2002-05-22 2002-05-22 データ転送装置
EP03011635A EP1365535A2 (en) 2002-05-22 2003-05-22 Data transfer apparatus using retransmission requests
US10/443,941 US7039729B2 (en) 2002-05-22 2003-05-22 Data transfer apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002147195A JP3741077B2 (ja) 2002-05-22 2002-05-22 データ転送装置

Publications (2)

Publication Number Publication Date
JP2003338808A JP2003338808A (ja) 2003-11-28
JP3741077B2 true JP3741077B2 (ja) 2006-02-01

Family

ID=29397847

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002147195A Expired - Fee Related JP3741077B2 (ja) 2002-05-22 2002-05-22 データ転送装置

Country Status (3)

Country Link
US (1) US7039729B2 (ja)
EP (1) EP1365535A2 (ja)
JP (1) JP3741077B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8742782B2 (en) 2011-07-27 2014-06-03 International Business Machines Corporation Noncontact electrical testing with optical techniques

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4051355A (en) * 1976-04-29 1977-09-27 Ncr Corporation Apparatus and method for increasing the efficiency of random access storage
US4070648A (en) * 1976-06-18 1978-01-24 Ncr Corporation Computer to computer communication system
JPS6468145A (en) * 1987-09-09 1989-03-14 Matsushita Electric Ind Co Ltd Data transmission equipment
US5271020A (en) * 1990-12-21 1993-12-14 Intel Corporation Bus stretching protocol for handling invalid data
US5191649A (en) * 1990-12-21 1993-03-02 Intel Corporation Multiprocessor computer system with data bus and ordered and out-of-order split data transactions
US5933623A (en) * 1995-10-26 1999-08-03 Hitachi, Ltd. Synchronous data transfer system
JPH10247901A (ja) * 1997-03-04 1998-09-14 Matsushita Electric Ind Co Ltd 再送制御方法
US6118769A (en) * 1997-05-01 2000-09-12 Itt Manufacturing Enterprises, Inc. Method and apparatus for voice intranet repeater and range extension
US6366979B1 (en) * 1997-12-16 2002-04-02 Cypress Semiconductor Corp. Apparatus and method for shorting retransmit recovery times utilizing cache memory in high speed FIFO
JP2000244530A (ja) * 1999-02-23 2000-09-08 Fuji Xerox Co Ltd データ通信装置
US6643752B1 (en) * 1999-12-09 2003-11-04 Rambus Inc. Transceiver with latency alignment circuitry
JP4033615B2 (ja) * 2000-09-01 2008-01-16 株式会社ケンウッド 無線データ伝送における誤り制御方式

Also Published As

Publication number Publication date
JP2003338808A (ja) 2003-11-28
US7039729B2 (en) 2006-05-02
EP1365535A2 (en) 2003-11-26
US20030221154A1 (en) 2003-11-27

Similar Documents

Publication Publication Date Title
US6718444B1 (en) Read-modify-write for partial writes in a memory controller
US7328371B1 (en) Core redundancy in a chip multiprocessor for highly reliable systems
EP2159709B1 (en) Error correcting method and computing element
US7043679B1 (en) Piggybacking of ECC corrections behind loads
US6874054B2 (en) Direct memory access controller system with message-based programming
US9727400B2 (en) Method and system for timeout monitoring
US7058735B2 (en) Method and apparatus for local and distributed data memory access (“DMA”) control
US9003260B2 (en) Partial-writes to ECC (error check code) enabled memories
US20040073851A1 (en) Special encoding of known bad data
US7821919B2 (en) Data processing apparatus and data processing method
US8458282B2 (en) Extended write combining using a write continuation hint flag
JPH09506727A (ja) 大規模並列処理システムのためのメッセージ機構
JPH02232758A (ja) マルチプロセッサ用システム制御ユニットをインタフェースするための装置
EP2157723A2 (en) Data retransmission method and system
WO2005008506A2 (en) Switch level reliable transmission
TWI483117B (zh) 用於執行命令之裝置、主機控制器及用於執行命令之系統
JP4807828B2 (ja) ブロードバンド・エンジンのためのエンベロープ・パケット・アーキテクチュア
JP3741077B2 (ja) データ転送装置
JP5145860B2 (ja) メモリ二重化システム及び情報処理装置
US8943379B2 (en) Retry based protocol with source/receiver FIFO recovery and anti-starvation mechanism to support dynamic pipeline lengthening for ECC error correction
JP5093986B2 (ja) プロセッサ間通信方法及びプロセッサ間通信装置
JPH04162161A (ja) 記憶制御装置
JP2003345677A (ja) データ転送システム、論理ユニット及びデータ転送方法
JP2005277552A (ja) バスリトライ制御方式及びデータ通信装置
JPH03186981A (ja) キャッシュメモリ内蔵マイクロプロセッサ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050613

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050809

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051031

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20081118

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20091118

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091118

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101118

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111118

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111118

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121118

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121118

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131118

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees