JP2010081104A - 通信装置及び通信システム - Google Patents

通信装置及び通信システム Download PDF

Info

Publication number
JP2010081104A
JP2010081104A JP2008244849A JP2008244849A JP2010081104A JP 2010081104 A JP2010081104 A JP 2010081104A JP 2008244849 A JP2008244849 A JP 2008244849A JP 2008244849 A JP2008244849 A JP 2008244849A JP 2010081104 A JP2010081104 A JP 2010081104A
Authority
JP
Japan
Prior art keywords
data
card
unit
clock
header
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.)
Withdrawn
Application number
JP2008244849A
Other languages
English (en)
Inventor
Katsuaki Yamanaka
勝明 山中
Akinori Kishi
晃典 貴志
Hirotomo Miyauchi
博智 宮内
Koji Komatsu
浩司 小松
Yuuki Iwamasa
勇樹 岩政
Naoto Kawashima
尚人 川嶋
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008244849A priority Critical patent/JP2010081104A/ja
Publication of JP2010081104A publication Critical patent/JP2010081104A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

【課題】既存の通信システムに新たに追加しても、既存のデータ受信装置の回路構成を変更する必要がなく、既存のデータ受信装置よりも高い転送レートでシリアルデータを伝送させることができる通信装置及び、同装置を有する通信システムを提供することを目的とする。
【解決手段】異なるクロックに同期して送信されるヘッダ部とデータ部とを含むシリアルデータを受信する通信装置に、外部から入力される所定のクロックに同期してヘッダ部を受信して処理するヘッダ処理部と、所定のクロックの周波数を逓倍するクロック逓倍部と、クロック逓倍部により周波数が逓倍された逓倍クロックに同期して、データ部を受信して処理するデータ処理部とを設けた。
【選択図】 図6

Description

本発明は、通信装置及び通信システムに関するものである。また、ヘッダ部とデータ部とを含むシリアルデータを受信する通信装置、及び、同装置を有する通信システムに関するものである。
従来、一台のデータ送信装置と、このデータ送信装置に並列接続された複数台のデータ受信装置とを備え、データ送信装置からデータ受信装置へシリアルデータを送信する通信システムが知られている。
かかるデータ通信システムには、データ送信装置から各データ受信装置へそれぞれ異なる転送レート(転送速度)でシリアルデータの送信を行うように構成したものがある(例えば、特許文献1参照。)。
特開平9−6733号公報
しかしながら、上記のようにデータ送信装置から各データ受信装置へシリアルデータの転送を行うシステムに、さらに高速な転送レートでシリアルデータの受信が可能なデータ受信装置を追加する場合、既存の通信システムの回路構成を大きく設定変更する必要があった。
シリアルデータの転送を行う通信システムでは、データ送信装置が、所定のフォーマットに従って構成されたヘッダ部とデータ部とを含むシリアルデータを全てのデータ受信装置へ送信する。
そのため、通信システムに、既存のデータ受信装置よりも転送レートの高いデータ受信装置を新たに追加する場合には、新たに追加するデータ受信装置の転送レートに対応するように、既存のデータ受信装置の回路構成を変更する必要があり、システム全体として大きく回路構成を変更しなければならなかった。
この発明は、上述した従来技術による問題点を解消するためになされたものであり、既存の通信システムに新たに追加しても、既存のデータ受信装置の回路構成を変更する必要がなく、既存のデータ受信装置よりも高い転送レートでシリアルデータを伝送させることができる通信装置及び、同装置を有する通信システムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本願に開示する通信装置は、異なるクロックに同期して送信されるヘッダ部とデータ部とを含むシリアルデータを受信する通信装置であって、外部から入力される所定のクロックに同期して前記ヘッダ部を受信して処理するヘッダ処理部と、前記所定のクロックの周波数を逓倍するクロック逓倍部と、前記クロック逓倍部により周波数が逓倍された逓倍クロックに同期して、前記データ部を受信して処理するデータ処理部とを備える。
本願に開示する通信装置及び同通信装置を有する通信システムによれば、既存の通信システムに新たに追加しても、既存のデータ受信装置の回路構成を変更することなく、既存のデータ受信装置よりも高い転送レートでシリアルデータを伝送させることができる。
以下に添付図面を参照して、本発明の一実施形態に係る通信装置及び同装置を有する通信システムの実施例1と実施例2について詳細に説明する。なお、以下の各実施例では、本実施形態に係る通信装置及び同装置を有する通信システムを、携帯通信端末間で送受信されるデータの転送を行う基地局に設けられ、ベースバンド処理等に用いる各種データの送受信を行う制御基盤に適用した場合について説明する。
まず、第1実施例の通信装置及び通信システムが追加して設ける前の既存の回路構成等について説明する。図1に示すように、既存の回路100には、データ送信装置としてのデータ送信カード(1)110と、データ送信装置(1)110から送信されるシリアルデータを受信するデータ通信(受信)装置としてのデータ受信カード(A)120及びデータ受信カード(B)130と、これらデータ送信カード(1)110、データ受信カード(A)120、データ受信カード(B)130にそれぞれ所定のクロックとしてのマスタクロック(以下、「MCLK」という。)を供給するクロックカード(以下、「CLKカード140」という。)とが設けられている。
データ送信カード(1)110は、データ受信カード(A)120、及びデータ受信カード(B)130へのシリアルデータの送信(書き込み)、データ受信カード(A)120、及びデータ受信カード(B)130からのシリアルデータの受信(読み出し)を行うようにプログラミングされたFPGA(Field Programmable Gate Array)(1)111を備えている。
また、データ受信カード(A)120は、FPGA(1)111から送信されるシリアルデータの受信(書き込み)、FPGA(1)111へのシリアルデータの送信(読み出し)を行うようにプログラミングされたFPGA(A)121を備えている。
データ受信カード(B)130も、FPGA(1)111から送信されるシリアルデータの受信(書き込み)、FPGA(1)111へのシリアルデータの送信(読み出し)を行うようにプログラミングされたFPGA(B)131を備えている。
FPGA(1)111とFPGA(A)121との間、及び、FPGA(1)111とFPGA(B)131との間は、シリアルデータの送受信を行う際のトリガとなるストローブ(STLB)信号を伝送するためのSTLB信号線によって接続されている。
また、FPGA(1)111とFPGA(A)121との間、及び、FPGA(1)111とFPGA(B)131との間は、FPGA(1)111からFPGA(A)121及びFPGA(B)131とへ送信されるシリアルデータ(ライトデータ:WDATA)を伝送するRDATA線と、FPGA(A)121及びFPGA(B)131からFPGA(1)111へ送信されるシリアルデータ(リードデータ:RDATA)を伝送するためのRDATA線とによっても接続されている。
CLKカード140は、MCLKを生成するクロック生成部(以下、「CLK141」という。)と、CLK141により生成されたMCLKをFPGA(1)111、FPGA(A)121、FPGA(B)131へそれぞれ出力するドライバ(DRV)142とを備えている。
このように構成された既存の回路100では、データ送信カード(1)110とデータ受信カード(A)120又はデータ受信カード(B)130との間では、所定の通信データフォーマットに従って構成されたシリアルデータの伝送が行われる。
図2は、データ送信カード(1)110と、データ受信カード(A)120又はデータ受信カード(B)130との通信データフォーマットを示す説明図である。図2に示すように、この通信データフォーマットでは、MCLKに同期したタイミングでSTLB信号が送信され、STLB信号が立ち上がっている期間にシリアルデータ(WDATA又はRDATA)の伝送が行われる。
この通信データフォーマットに従って伝送されるシリアルデータは、ヘッダ部とデータ部とを含んでいる。ヘッダ部は、シリアルデータの送信先を特定するための識別情報であるカードIDや、送信先の装置内においてシリアルデータを書き込むカード内アドレス、そのシリアルデータがリードデータかライトデータかを識別するためのW/R等のデータが格納されている。一方、データ部には、送信先の装置に実際に書き込まれるデータや、送信先の装置から実際に読み出されるデータが格納されている。
既存の回路100では、データ送信カード(1)110とデータ受信カード(A)120又はデータ受信カード(B)との間で、MCLKの周波数に同期した転送レートでシリアルデータの伝送が行われる。
図3は、図1に示した既存の回路100に、本発明を適用したデータ受信カード(C)10を追加した回路構成1を示す説明図である。図3に示すデータ受信カード(C)10を追加した回路構成1において、CLK140とデータ受信カード(A)120、データ受信カード(B)130は、図1に示したものと同一である。
新たに追加したデータ受信カード(C)10は、既存のデータ受信カード(A)120及びデータ受信カード(B)と同様に、STLB線とRDATA線とWDATA線とによって、データ送信カード(2)110aに接続されている。また、このデータ受信カード(C)10はCLKカード140に接続され、CLKカード140からMCLKが入力される。
このデータ受信カード(C)10は、内部に既存のデータ受信カード(A)120及びデータ受信カード(C)130よりも高い転送レートでシリアルデータの伝送を行うようにプログラミングしたFPGA(C)11を備えている。
このFPGA(C)11は、シリアルデータの送受信を行う際、ヘッダ部に関しては、データ受信カード(A)120及びデータ受信カード(B)130と同様にMCLKに同期して送受信するように構成しているが、データ部に関しては、MCLKよりも周波数の高いクロックに同期して送受信を行うように構成している。
図4は、データ送信カード(2)110aとデータ受信カード(C)10との通信データフォーマット(例:データ転送3倍の場合)を示す説明図である。図4に示すように、この通信データフォーマットにおいても、シリアルデータ(WDATA又はRDATA)は、図2に示した通信データフォーマットと同様に、ヘッダ部とデータ部とを含んでいるが、データ部の伝送時間間隔が図2に示したデータの伝送時間間隔より短く(ここでは、1/3に)なっている。
この図4から分かるように、データ送信カード(2)110aとデータ受信カード(C)10との間では、シリアルデータの伝送を行う際、ヘッダ部は既存のデータ受信カード(A)120又はデータ受信カード(B)130と同じ転送レートで伝送されるが、データ部だけは、既存のデータ受信カード(A)120の3倍の転送レートで伝送される。
ここで、図2に示した通信データフォーマットでシリアルデータの伝送を行う既存のFPGA(A)121及びFPGA(B)131の構成と、図4に示した通信データフォーマットでシリアルデータの伝送を行うFPGA(C)11及びFPGA(2)111aの構成との違いについて、図5及び図6を参照して説明する。
図5は、FPGA(A)121の構成を示す説明図であり、図6は、FPGA(C)11及びFPGA(2)111aの構成を示す説明図である。なお、FPGA(A)121とFPGA(B)131とは同一の構成であるため、以下の説明では、FPGA(B)131については、その説明を省略する。
図5に示すように、FPGA(A)121は、内部にFPGA(2)111aとの間でシリアルデータの送受信を行うデータ受信/送信部122を備えている。このデータ受信/送信部122は、CLKカード140から入力されるMCLKに同期したタイミングでシリアルデータに含まれるヘッダ部とデータ部とを受信して処理する。
これに対して、FPGA(C)11は、図6に示すように、内部にFPGA(2)111aとの間でシリアルデータの送受信を行うデータ受信/送信部12を備え、これに加えて、CLKカード140から入力されるMCLKに基づいて、周波数がMCLKの逓倍(ここでは、3倍)の逓倍クロック(以下、「逓倍CLK」という。)を生成するクロック逓倍部(以下、「CLK逓倍部15」という。)を備えている。
また、このFPGA(C)11が備えるデータ受信/送信部12は、シリアルデータのヘッダ部を処理するヘッダ処理部13と、データ部を処理するデータ処理部14とを備えている。
ヘッダ処理部13は、CLKカード140から入力されるMCLKに同期したタイミングでシリアルデータのヘッダ部を処理する。すなわち、このFPGA(C)11は、既存のFPGA(A)と同じ処理速度でヘッダ部を受信して処理する。
一方、データ処理部14は、CLK逓倍部15から入力される逓倍CLKに同期したタイミングでシリアルデータのデータ部を処理する。すなわち、このFPGA(C)は、既存のFPGA(A)の処理速度の3倍の処理速度でデータ部を受信して処理する。
次に、FPGA(2)111aの構成について説明する。このFPGA(2)111aの構造は、前述のFPGA(C)11の構成と同様であるため、ここでは、図6を用いて説明する。なお、図6では、WDATAが入力され、RDATAが出力されるように図示しているが、これはFPGA(C)11として機能する場合を示しており、FPGA(2)111aとして機能する場合には、WDATAが出力され、RDATAが入力される。
図6に示すように、FPGA(2)111aは、データ受信/送信部12と、CLK逓倍部15とを備えている。また、データ受信/送信部12は、FPGA(C)11のデータ受信/送信部12と同様に、ヘッダ処理部13とデータ処理部14とを備えている。
ヘッダ処理部13は、データ受信カード(A)120、データ受信カード(B)130、データ受信カード(C)10のいずれかにデータ部の書き込みを行う場合、CLKカード140から入力されるMCLKに同期したタイミングで、これらデータ受信カード(A)120、データ受信カード(B)130、データ受信カード(C)10のいずれかにヘッダ部を送信する。
一方、ヘッダ処理部13は、データ受信カード(A)120、データ受信カード(B)130、データ受信カード(C)10のいずれかから、データ部の読み出しを行う場合、これらデータ受信カード(A)120、データ受信カード(B)130、データ受信カード(C)10のいずれかから送信されたヘッダ部を、CLKカード140から入力されるMCLKに同期したタイミングで受信する。
また、データ処理部14は、データ受信カード(A)120又はデータ受信カード(B)130との間でデータ部の送受信を行うときと、データ受信カード(C)10との間でデータ部の送受信を行うときとでは、異なる転送レートでデータの送受信を行うように構成している。
すなわち、このFPGA(2)111aでは、既存のデータ受信カード(A)120又はデータ受信カード(B)130にデータ部の書き込みを行う場合、及び既存のデータ受信カード(A)120又はデータ受信カード(B)130からデータ部の読み出しを行う場合に、CLK逓倍部15がCLKカードから入力されるMCLKをそのままデータ処理部14へ出力する。
一方、このFPGA(2)111aでは、新規に追加したデータ受信カード(C)10へデータ部の書き込みを行う場合、及び新規に追加したデータ受信カード(C)10からデータ部の読み出しを行う場合に、CLK逓倍部15がCLKカードから入力される逓倍CLKをデータ処理部14へ出力する。
そして、データ処理部14は、既存のデータ受信カード(A)120又はデータ受信カード(B)130との間で、MCLKに同期してデータ部の送受信を行う一方、新規に追加したデータ受信カード(C)10との間では、逓倍CLKに同期してデータ部の送受信を行う。
すなわち、このFPGA(2)111aは、既存のデータ受信カード(A)120又はデータ受信カード(B)130との間でデータ部の送受信を行うときには、既存の回路100のときと同一の転送レートでデータ部の送受信を行う一方、新規に追加したデータ受信カード(C)10との間でデータ部の送受信を行う場合には、既存の回路100のときの3倍の転送レートで、データ部の送受信を行うように構成している。
本実施例では、各データ受信カード(データ受信カード(A)120、データ受信カード(B)130、データ受信カード(C)10)に対して、各データ受信カードを識別可能とした固有のカードIDを割当てている。
そして、FPGA(2)111aは、シリアルデータの送信を行う場合、ヘッダ部にシリアルデータの送信先を示すカードIDを格納して、データ部と共に送信する。このカードIDは、各データ受信カード(データ受信カード(A)130、データ受信カード(B)、データ受信カード(C)10)を特定するために、各データ受信カードに予め割当てられた固有の識別情報である。
このFPGA(2)111aは、新規に追加した受信カード(C)10のカードIDをヘッダ部に格納したシリアルデータのデータ部を送信するときにだけ、逓倍CLKに同期したタイミングでデータ部の送信を行い、それ以外のカードIDをヘッダ部に格納したシリアルデータのデータ部を送信するときには、MCLKに同期したタイミングでシリアルデータのデータ部を送信するようにプログラミングしている。
ここで、新規に追加したデータ受信カード(C)10に設けたFPGA(C)11の構成について、図7を参照して更に具体的に説明する。図7は、FPGA(C)11の構成を示す機能ブロック図である。
図7に示すように、FPGA(C)11は、データ受信/送信部12と、CLK逓倍部15とを備えている。また、データ受信/送信部15は、前述のように、ヘッダ処理部13とデータ処理部14とを備えている。
さらに、ヘッダ処理部13は、カードIDチェック部16とリードライトチェック部17と備えている。また、データ処理部14は、データ受信部18とデータ送信部19と内部メモリ20とを備えている。
カードIDチェック部16は、受信したヘッダ部に格納されているカードIDが自装置に対応するカードIDであるか否かを判定し、その判定結果を示すフラグをたてた後、ヘッダ部をリードライトチェック部17へ入力する。このカードIDチェック部16は、既存のデータ受信カード(A)120、データ受信カード(B)130にも設けられているものである。
リードライトチェック部17は、カードIDチェック部16から入力されたヘッダ部に含まれるW/Rから、このシリアルデータが書き込みを要求するものか、それとも、読み出しを要求するものかを判定する。
そして、リードライトチェック部17は、W/Rが書き込みを要求するものであると判定した場合に、その旨を示すフラグをたてた後、ヘッダ部をデータ受信部へ入力する。一方、リードライトチェック部17は、W/Rがデータ部の読み出しを要求するものであると判定した場合に、その旨を示すフラグをたてた後、ヘッダ部をデータ送信部18へ入力する。このリードライトチェック部17は、既存のデータ受信カード(A)120、データ受信カード(B)130にも設けられている。
そして、本実施例では、これらカードIDチェック部16及びリードライトチェック部17が、CLKカード140からそれぞれ入力されるMCLKに同期して動作することにより、既存のデータ受信カード(A)120及びデータ受信カード(B)130と同一の転送レートでヘッダ部を受信して処理する。
データ受信部18は、ヘッダ部に格納されていたカードIDが自装置に対応するカードIDであることを示すフラグがたっていた場合、受信したシリアルデータのデータ部を内部メモリ20に記憶させる。このとき、データ受信部18は、ヘッダ部に含まれているカード内アドレスに対応した所定の記憶領域にデータ部を記憶させることによって、データ部(WDATA)の書き込みを行う。一方、データ受信部18は、ヘッダ部に格納されていたカードIDが自装置に対応するカードIDでないことを示すフラグがたっていた場合、受信したシリアルデータを削除(廃棄)する。
データ送信部19は、ヘッダ部に含まれているカード内アドレスに対応した記憶領域に記憶しているデータ部(RDATA)を内部メモリ20から読み出して、データ送信カード(2)110aへ送信する。
本実施例では、これらデータ受信部18とデータ送信部19とが、CLK逓倍部15から入力される逓倍CLKに同期して動作することにより、既存のデータ受信カード(A)120及びデータ受信カード(B)130の3倍の転送レートでデータの送受信を行う。
次に、上記のように構成したデータ受信カード(C)10を追加した回路1において、データ受信カード(C)10宛にデータをライトする場合のシーケンスについて、図8を参照して説明する。なお、データ受信カード(B)130に関するシーケンスは、受信カード(A)と同様であるため、ここでは説明を省略する。
データ送信カード(2)110aからデータ受信カード(C)10へデータ部の書き込み(ライト)を行う際、データ送信カード(2)110aは、全てのデータ受信カード(データ受信カード(A)120、データ受信カード(C)10)に対して、シリアルデータ(ここでは、WDATA)を送信する。このとき、データ送信カード(2)110aは、ヘッダ部をMCLKに同期させ、データ部を逓倍CLKに同期させて送信する(図8中(1))。
新規に追加されたデータ受信カード(C)10では、カードIDチェック部16により受信されたシリアルデータのヘッダ部に格納されているカードIDがチェックされる(図8中(2))。ここで、データ受信カード(C)10では、受信したカードIDが自装置に割当てられているカードIDと一致するため、データ受信部18によりデータ部が逓倍CLKに同期して受信される(図8中(3))。その後、データ受信カード(C)10では、データ受信部18により内部メモリ20にデータ部の書き込み(ライト)が行われる(図8中(4))。
一方、データ受信カード(A)120では、カードIDのチェックが行われる(図8中(5))。ここでは、カードIDが自装置に割当てられているカードIDと不一致であるため、データ部が廃棄される。
このように、本実施例では、データ受信カード(2)110aが、データ受信カード(C)10へ逓倍CLKに同期させてデータ部を送信し、データ受信カード(C)10がそのデータ部を逓倍CLKに同期して受信するので、データ部をMCLKに同期させて送信するときの逓倍(ここでは3倍)の転送レートで送信することができる。
しかも、データ送信カード(2)110aからデータ受信カード(A)120及びデータ受信カード(C)10に送信されるヘッダ部は、MCLKに同期して送信されるので、既存のデータ受信カード(A)120は、内部の回路構成を変更しなくても、このヘッダを受信してカードIDのチェック及び廃棄を行うことができる。
次に、データ受信カード(A)120宛にライトする場合のシーケンスについて、図9を参照して説明する。
データ送信カード(2)110aからデータ受信カード(A)120へデータ部の書き込み(ライト)を行う際、データ送信カード(2)110aは、全てのデータ受信カード(データ受信カード(A)120、データ受信カード(C)10)に対して、シリアルデータ(ここでは、WDATA)を送信する。このとき、データ送信カード(2)110aは、ヘッダ部及びデータ部の両方をMCLKに同期させて送信する(図9中(1)’)。
データ受信カード(C)10では、カードIDのチェックが行われる(図9中(2)’)。ここでは、カードIDが自装置に割当てられているカードIDと不一致であるため、データ部が廃棄される(図9中(3)’)。
既存のデータ受信カード(A)120では、受信したシリアルデータのヘッダ部に格納されているカードIDがチェックされる(図9中(4)’)。ここで、データ受信カード(A)120では、受信したカードIDが自装置に割当てられているカードIDと一致するため、データ部がMCLKに同期して受信される(図9中(5)’)。その後、データ受信カード(A)120では、内部メモリ20にデータ部の書き込み(ライト)が行われる(図9中(6)’)。
このように、本実施例では、データ送信カード(2)110aが既存のデータ受信カード(A)120に対してデータ部の書き込みを行う際、データ部をMCLKに同期させて送信し、データ受信カード(A)120は、そのデータ部をMCLKに同期したタイミングで受信するので、既存のデータ受信カード(A)120は、内部の回路構成を変更しなくてもよい。
次に、データ受信カード(C)10宛にリードする場合のシーケンスについて、図10を参照して説明する。
データ送信カード(2)110aがデータ受信カード(C)10からデータ部の読み出し(リード)を行う際、データ送信カード(2)110aは、全てのデータ受信カード(データ受信カード(A)120、データ受信カード(C)10)に対して、ヘッダ部をMCLKに同期させて送信する(図10中(1))。
データ受信カード(C)10では、受信したヘッダ部に格納されているカードIDのチェックが行われる(図10中(2))。ここでは、カードIDが自装置に割当てられているカードIDと一致するため、データ送信部19によりシリアルデータ(ここでは、RDATA)の送信準備が行われる(図10中(3))。
その後、データ受信カード(C)10では、データ送信部19により、内部メモリ20からデータ部が読み出され、データ送信装置(2)110aへ逓倍CLKに同期して送信される(図10中(4))。データ送信カード(2)110aは、このデータ部(RDATA)を逓倍CLKに同期して受信する(図10中(5))。
一方、データ受信カード(A)120では、受信したカードIDのチェックが行われる(図10中(6))。ここでは、受信したカードIDが自装置に割り当てられているカードIDと不一致であるため、処理が終了される(図10中(7))。
このように、本実施例では、データ受信カード(C)10がデータ部(RDATA)を逓倍CLKに同期させて送信し、そのデータ部(RDATA)をデータ送信カード(2)110aが逓倍CLKに同期して受信するので、データ部をMCLKに同期させて送信するときの逓倍(ここでは3倍)の転送レートでデータ部の読み出しを行うことができる。
しかも、データ送信カード(2)110aからデータ受信カード(A)120及びデータ受信カード(C)10に送信されるヘッダ部は、MCLKに同期して送信されるので、既存のデータ受信カード(A)120は、内部の回路構成を変更しなくても、このヘッダを受信してカードIDのチェックを行うことができる。
次に、データ受信カード(A)120宛にリードする場合のシーケンスについて、図11を参照して説明する。
データ送信カード(2)110aがデータ受信カード(A)120からデータ部の読み出し(リード)を行う際、データ送信カード(2)110aは、全てのデータ受信カード(データ受信カード(A)120、データ受信カード(C)10)に対して、ヘッダ部をMCLKに同期させて送信する(図11中(1)’)。
データ受信カード(C)10では、受信したカードIDのチェックが行われる(図11中(2)’)ここでは、カードIDが自装置に割当てられているカードIDと不一致であるため、処理が終了される(図11中(3)’)。
一方、データ受信カード(A)120では、受信したヘッダ部に格納されているカードIDのチェックが行われる(図11中(4)’)。ここでは、カードIDが自装置に割当てられているカードIDと一致するため、シリアルデータ(ここでは、RDATA)の送信準備が行われる(図11中(5)’)。
その後、データ受信カード(A)120では、シリアルデータ(RDATA)がMCLKに同期してデータ送信カード(2)110aへ送信される(図11中(6)’)。データ送信カード(2)110aは、このシリアルデータ(RDATA)をMCLKに同期して受信する(図11中(7)’)。
このように、本実施例では、データ送信カード(2)110aが既存のデータ受信カード(A)120からデータ部の読み出しを行う際、データ受信カード(A)120は、データ部をMCLKに同期させて送信し、データ送信カード(2)110aは、そのデータ部をMCLKに同期したタイミングで受信するので、既存のデータ受信カード(A)120は、内部の回路構成を変更しなくてもよい。
以上説明してきたように、第1実施例では、データ送信カード(2)110aは、既存のデータ受信カード(A)120、又は新規に追加したデータ受信カード(C)10にデータ部を書き込む際に、ヘッダ部については、MCLKに同期させて送信し、データ部については、新規のデータ受信カード(C)10に送信するときにだけ、逓倍CLKに同期させて送信し、既存のデータ受信カード(A)120に送信するときには、MCLKに同期させて送信するように構成している。
そして、既存のデータ受信カード(A)120と新規のデータ受信カード(C)10は、MCLKに同期して受信したヘッダ部に基づいて、自装置宛のシリアルデータであると判断した場合に、そのシリアルデータのデータ部を受信するように構成している。
このとき、既存のデータ受信カード(A)120は、従来どおりMCLKに同期してデータ部を受信し、新規のデータ受信カード(C)10は、逓倍CLKに同期してデータ部を受信するように構成している。
かかる構成により、データ送信カード(2)110aと新規のデータ受信カード(C)10との間では、データ部をMCLKに同期してデータ部を伝送するときの逓倍(ここでは3倍)の転送レートでデータ部を伝送することができるようになり、データ部の転送効率が向上する。
しかも、データ送信カード(A)110aから送信されるヘッダ部は、その宛先に関わらず、常にMCLKに同期して送信されるため、既存のデータ受信カード(A)120は、受信したヘッダ部に基づいて、自装置宛のシリアルデータであるのか否かを判定することができるので、新規のデータ受信カード(C)10を追加した場合であっても、回路構成を変更しなくてもよい。
次に、本実施形態に係る通信装置及び通信システムの第2実施例について、図12〜図14を参照して説明する。本実施例の通信装置(以下、「データ受信カード(C’)という。」)は、第1実施例におけるデータ受信カード(C)10に代えて、既存の回路構成100に追加して設ける装置である。
データ受信カード(C’)は、内部にデータ送信カード(2)110aとの間でシリアルデータの送受信を行うようにプログラミングされたFPGA(C’)11aを備えている。図12は、データ受信カード(C’)が備えるFPGA(C’)11aの構成を示す説明図である。
このFPGA(C’)11aは、データ部を既存のデータ受信カード(A)120及びデータ受信カード(B)130の逓倍の転送レートで伝送可能に構成されている。
図12に示すように、このFPGA(C’)11aは、その基本的な構成については、図7に示した第1実施例のFPGA(C)11と同様の構成をしているが、データ受信/送信部12a内のデータ処理部14aの構成と、CLK逓倍部15aが有する機能だけが、第1実施例のFPGA(C)11と異なる。
このFPGA(C’)11aが備えるCLK逓倍部15aは、CLKカード140から入力されるMCLKの周波数を任意に変更(n倍又は1/n倍)することができるように構成している。
また、このFPGA(C’)11aが備えるデータ処理部14aは、データ受信部18により受信したデータ部を一次記憶して、内部メモリ20へ順次出力するバッファ21と、このバッファ21の空き領域の残量を検知するバッファ容量チェック部22とを備えている。
そして、CLK逓倍部15aは、バッファ容量チェック部22により検知されたバッファ21の空き領域の残量に応じて、逓倍CLKの逓倍率を変更するように構成している。
バッファ容量チェック部22は、バッファ21の空き領域の残量が所定の値を下回った場合に、バッファ21がデータで満杯(FULL)の状態に近いと判定して、CLK逓倍部15aへ逓倍CLKの周波数を下げさせるための制御信号を送信する。また、このときバッファ容量チェック部22は、バッファ21が満杯(FULL)状態に近いことを示す信号(FULL)を、データ送信部19を介してデータ送信カード(2)111aに送信する。
一方、バッファ容量チェック部22は、バッファ21の空き領域の残量が所定の値を超えた場合に、バッファ21が空(EMPTY)状態に近いと判定して、CLK逓倍部15aへ逓倍CLKの周波数を上げさせるための制御信号を送信する。このときバッファ容量チェック部22は、バッファ21が空(EMPTY)の状態に近いことを示す信号(EMPTY)を、データ送信部19を介してデータ送信カード(2)111aに送信する。
また、このデータ受信カード(C’)を追加して設ける場合には、データ送信カード(2)110aに、データ受信カード(C’)と同様に逓倍CLKの周波数を任意に変更可能なCLK逓倍部を設ける。
このデータ送信カード(2)110aは、データ受信カード(C’)から信号(FULL)を受信すると、逓倍CLKの周波数を下げてデータ受信カード(C’)の逓倍CLKの周波数と合わせ、そのクロックに同期させてデータ部の送信を行う。
また、データ送信カード(2)110aは、データ受信カード(C’)から信号(EMPTY)を受信すると、逓倍CLKの周波数を上げてデータ受信カード(C’)の逓倍CLKの周波数と合わせ、そのクロックに同期させてデータ部の送信を行う。
このように、本実施例では、CLK逓倍部15aがバッファ21の記憶容量の残量が比較的大きい場合には、逓倍CLKの周波数を高めるので、データ部の転送速度が高くなりデータ部の受信効率とデータ部の記憶効率を向上させることができる。
また、バッファ21の容量の残量が比較的小さい場合には、CLK逓倍部15aが逓倍CLKの周波数を低くするので、データ部の転送速度が低くなり、バッファ21へデータ部を入力する際に、データのオーバーフローが発生することを未然に防止することができる。
ここで、FPGA(C’)によるデータ部の転送速度可変時のシーケンス(EMPTY時)について、図13を参照して説明する。ここでは、データ送信カード(2)110aがデータ受信カード(C’)にデータ部の書き込み(ライト)を行う場合を例に挙げて説明する。
図13に示すように、データ送信カード(2)110aは、まず、全てのデータ受信カード(ここでは、データ受信カード(C’)とデータ受信カード(A)120)に対して、シリアルデータの送信を行う。このとき、データ送信カード(2)110aは、ヘッダ部をMCLKに同期させ、データ部を逓倍CLK(ここでは、周波数がMCLKの3倍のクロック)に同期させて送信する(図13中(1))。
データ受信カード(C’)では、受信したヘッダ部に格納されているカードIDがチェックされる(図13中(2))。ここでは、受信したカードIDと自装置に割当てられているカードIDとが一致するので、データ受信部18によりデータ部が逓倍CLKに同期してデータ部の受信が行われる(図13中(3))。
そして、データ受信部18により受信されたデータ部は、バッファ21に順次記憶された後、内部メモリ20に記憶(ライト)される(図13中(4))。このとき、バッファ21の記憶容量の残量に極端な変動がなく、データ部が正常に内部メモリ20に記憶された場合には、その旨を示す信号(ACK)がデータ受信カード(C’)からデータ送信カード(2)110aへ送信され、データ送信カード(2)110aにより受信されて確認される(図13中(5))。
また、データ受信カード(A)110aでは、ヘッダ部を受信すると、そのヘッダ部に格納されているカードIDのチェックが行われる(図13中(6))。ここでは、受信したカードIDと自装置に割当てられているカードIDとが不一致であるため、データ部が廃棄される(図13中(7))。
一方、データ受信カード(C’)によるデータ部の受信中に、バッファ21の空き領域(メモリ)の残量が増大してバッファEMPTYが発生すると、バッファ容量チェック部22がデータ送信カード(2)110aに信号(EMPTY)を送信する(図13中(8))。
データ送信カード(2)110aは、データ受信カード(C’)から信号(EMPTY)を受信することによって、送信側(データ受信カード(C’))のバッファ21がEMPTY状態であることを検出する(図13中(9))。
その後、データ送信カード(2)110aは、データ受信カード(C’)に対してデータ部の転送速度を変更して、データ部の送信を行う。このとき、データ送信カード(2)110aは、逓倍CLKの周波数を更に逓倍(ここでは、3倍)に上げたクロックに同期させた転送レートでデータ部を送信すると共に、受信側(データ受信カード(C’)とデータ受信カード(A)120)に対して、EMPTY ACK(データ受信カード(C’)におけるバッファEMPTY発生を確認したことを示すデータ)をヘッダ部に格納して送信する(図13中(10))。このヘッダ部については、MCLKに同期して送信される。
データ受信カード(A)120では、受信したヘッダ部に含まれるカードIDのチェックが行われる(図13中(16))。ここでは、受信したカードIDと予めデータ受信カード(A)120に割当てられているカードIDとが不一致であるため、受信したデータが廃棄される(図13中(17))。
一方、データ受信カード(C’)では、受信したヘッダ部に含まれるカードIDのチェック、及び、受信したヘッダ部に含まれる送信側バッファ(データ受信カード(C’)のバッファ21)に関するEMPTY ACKのチェックが行われる(図13中(11))。
ここでは、受信したカードIDが受信カード(C’)に割当てられているカードIDと一致するので、データ受信カード(C’)では、データ受信部18により、逓倍CLKの更に3倍(MCLKの9倍)の周波数のクロックに同期してデータ部の受信が行われる(図13中(12))。
そして、データ受信カード(C’)では、データ受信部18により受信されたデータ部の内部メモリ20への書き込み(ライト)が行われる(図13中(13))。その後、データ部の書き込み中に、バッファ21の空き領域の残量が所定の値まで減少(メモリ残量低)すると、データ受信カード(C’)では、バッファEMPTY解除が行われ(図13中(14))、その旨を示す信号(ACK)がデータ送信カード(2)110aへ送信される。
データ送信カード(2)110aでは、このバッファEMPTY解除を示す信号(ACK)の受信が確認される(図13中(15))。その後、データ送信カード(2)110aとデータ受信カード(C’)との間では、逓倍CLK(周波数がMCLKの3倍のクロック)に同期してデータ部の送受信が行われる。
このように、本実施例の通信システムでは、データ受信カード(C’)によるデータ部の受信中に、データ受信カード(C’)のバッファ21の空き容量が所定の値よりも大きくなった場合に、データ送信カード(2)110aとデータ受信カード(C’)との間におけるデータ部の転送レートを高め、データ受信カード(C’)のバッファ21の空き容量が所定値に戻った場合には、データ部の転送レートを高める前の状態に戻すように構成している。
かかる構成により、データ受信カード(C’)のバッファ21にオーバーフローが発生することを防止しつつ、データ部の転送効率を向上させることができる。しかも、このように、データ送信カード(2)110aとデータ受信カード(C’)との間におけるデータ部の転送レートを変更する場合であっても、既存のデータ受信カード(A)110aに対しては、MCLKに同期してヘッダ部を送信するので、データ受信カード(A)110aの回路構成を変更しなくてもよい。
次に、FPGA(C’)によるデータ部の転送速度可変時のシーケンス(FULL時)について、図14を参照して説明する。ここでは、データ送信カード(2)110aがデータ受信カード(C’)にデータ部の書き込み(ライト)を行う場合を例に挙げて説明する。
図14に示すように、データ送信カード(2)110aは、まず、全てのデータ受信カード(ここでは、データ受信カード(C’)とデータ受信カード(A)120)に対して、シリアルデータの送信を行う。このとき、データ送信カード(2)110aは、ヘッダ部をMCLKに同期させ、データ部を逓倍CLK(ここでは、周波数がMCLKの3倍のクロック)に同期させて送信する(図14中(1))。
データ受信カード(C’)では、受信したヘッダ部に格納されているカードIDがチェックされる(図14中(2))。ここでは、受信したカードIDと自装置に割当てられているカードIDとが一致するので、データ受信部18によりデータ部が逓倍CLKに同期してデータ部の受信が行われる(図14中(3))。
そして、データ受信部18により受信されたデータ部は、バッファ21に順次記憶された後、内部メモリ20に記憶(ライト)される(図14中(4))。このとき、バッファ21の空き領域の残量に極端な変動がなく、データ部が正常に内部メモリ20に記憶された場合には、その旨を示す信号(ACK)がデータ受信カード(C’)からデータ送信カード(2)110aへ送信され、データ送信カード(2)110aにより受信されて確認される(図14中(5))。
また、データ受信カード(A)120では、ヘッダ部を受信すると、そのヘッダ部に格納されているカードIDのチェックが行われる(図14中(6))。ここでは、受信したカードIDと自装置に割当てられているカードIDとが不一致であるため、データ部が廃棄される(図14中(7))。
一方、データ受信カード(C’)によるデータ部の受信中に、バッファ21の空き領域(メモリ)残量が低下してバッファFULLが発生すると、バッファ容量チェック部22がデータ送信カード(2)110aに信号(FULL)を送信する(図14中(8))。
データ送信カード(2)110aは、データ受信カード(C’)から信号(FULL)を受信することによって、送信側(データ受信カード(C’))のバッファ21がFULL状態であることを検出する(図14中(9))。
その後、データ送信カード(2)110aは、データ受信カード(C’)に対してデータ部の転送速度を変更して、データ部の送信を行う。このとき、データ送信カード(2)110aは、逓倍CLKの周波数を逓倍(ここでは、1/3倍)に下げたクロックに同期させた転送レートでデータ部を送信すると共に、受信側(データ受信カード(C’)とデータ受信カード(A)120)に対して、FULL ACK(データ受信カード(C’)におけるバッファFULL発生を確認したことを示すデータ)をヘッダ部に格納して送信する(図14中(10))。このヘッダ部については、MCLKに同期して送信される。
データ受信カード(A)120では、受信したヘッダ部に含まれるカードIDのチェックが行われる(図14中(16))。ここでは、受信したカードIDと予めデータ受信カード(A)120に割当てられているカードIDとが不一致であるため、受信したデータが廃棄される(図14中(17))。
一方、データ受信カード(C’)では、受信したヘッダ部に含まれるカードIDのチェック、及び、受信したヘッダ部に含まれる送信側バッファ(データ受信カード(C’)のバッファ21)に関するFULL ACKのチェックが行われる(図14中(11))。
ここでは、受信したカードIDが受信カード(C’)に割当てられているカードIDと一致するので、データ受信カード(C’)では、データ受信部18により、逓倍CLKの更に1/3倍(MCLKと同一)の周波数のクロックに同期してデータ部の受信が行われる(図14中(12))。
そして、データ受信カード(C’)では、データ受信部18により受信されたデータ部の内部メモリ20への書き込み(ライト)が行われる(図14中(13))。その後、データ部の書き込み中に、バッファ21の記憶容量の残量が増大(メモリ残量増)すると、データ受信カード(C’)では、バッファFULL解除が行われ(図14中(14))、その旨を示す信号(ACK)がデータ送信カード(2)110aへ送信される。
データ送信カード(2)110aでは、このバッファFULL解除を示す信号(ACK)の受信が確認される(図14中(15))。その後、データ送信カード(2)110aとデータ受信カード(C’)との間では、逓倍CLK(周波数がMCLKの3倍のクロック)に同期してデータ部の送受信が行われる。
このように、本実施例の通信システムでは、データ受信カード(C’)によるデータ部の受信中に、データ受信カード(C’)のバッファ21の空き容量が所定の値よりも小さくなった場合に、データ送信カード(2)110aとデータ受信カード(C’)との間におけるデータ部の転送レート(転送速度)を低くし、データ受信カード(C’)のバッファ21の空き容量が所定値に戻った場合には、データ部の転送レートを下げる前の状態に戻すように構成している。
かかる構成により、データ受信カード(C’)のバッファ21にアンダーランが発生することを防止しつつ、データ部の転送効率を向上させることができる。しかも、このように、データ送信カード(2)110aとデータ受信カード(C’)との間におけるデータ部の転送レートを変更する場合であっても、既存のデータ受信カード(A)110aに対しては、MCLKに同期してヘッダ部を送信するので、データ受信カード(A)110aの回路構成を変更しなくてもよい。
既存の回路構成を示す説明図である。 データ受信カード(A)またはデータ受信カード(B)との通信データフォーマットを示す説明図である。 データ受信カード(C)を追加した回路構成を示す説明図である。 データ受信カード(C)との通信データフォーマットを示す説明図である。 FPGA(A)の構成を示す説明図である。 FPGA(C)およびFPGA(2)の構成を示す説明図である。 FPGA(C)の構成を示す説明図である。 データ受信カード(C)宛にライトする場合のシーケンスを示す説明図である。 データ受信カード(A)宛にライトする場合のシーケンスを示す説明図である。 データ受信カード(C)宛にリードする場合のシーケンスを示す説明図である。 データ受信カード(A)宛にリードする場合のシーケンスを示す説明図である。 FPGA(C’)の構成を示す説明図である。 転送速度可変時のシーケンス(EMPTY時)を示す説明図である。 転送速度可変時のシーケンス(FULL時)を示す説明図である。
符号の説明
100 既存の回路
110 データ送信カード(1)
110a データ送信カード(2)
111 FPGA(1)
111a FPGA(2)
120 データ受信カード(A)
121 FPGA(A)
122 データ受信/送信部
130 データ受信カード(B)
131 FPGA(B)
140 CLKカード
141 CLK:クロック発生器
142 DRV:ドライバ
10 データ受信カード(C)
11 FPGA(C)
11a FPGA(C’)
12、12a データ受信/送信部
13 ヘッダ処理部
14、14a データ処理部
15、15a CLK逓倍部
16 カードIDチェック部
17 リードライトチェック部
18 データ受信部
19 データ送信部
20 内部メモリ
21 バッファ
22 バッファ容量チェック部

Claims (5)

  1. 異なるクロックに同期して送信されるヘッダ部とデータ部とを含むシリアルデータを受信する通信装置であって、
    外部から入力される所定のクロックに同期して前記ヘッダ部を受信して処理するヘッダ処理部と、
    前記所定のクロックの周波数を逓倍するクロック逓倍部と、
    前記クロック逓倍部により周波数が逓倍された逓倍クロックに同期して、前記データ部を受信して処理するデータ処理部と、
    を備えたことを特徴とする通信装置。
  2. 前記ヘッダ処理部は、受信した前記ヘッダ部に含まれる識別情報が自装置に対応する識別情報であるか否かを判定する識別情報判定部を備え、
    前記データ処理部は、前記データ部を受信するデータ受信部を備え、
    前記データ受信部は、前記識別情報判定部により自装置に対応する識別情報であると判定された場合に、前記逓倍クロックに同期して前記データ部を受信することを特徴とする請求項1に記載の通信装置。
  3. 前記データ処理部は、前記データ部を他の装置へ送信するデータ送信部を備え、
    前記データ送信部は、前記識別情報判定部により自装置に対応する識別情報であると判定された場合に、前記逓倍クロックに同期して前記データ部を送信することを特徴とする請求項2に記載の通信装置。
  4. 前記データ受信部により受信した前記データ部を一次記憶する一次記憶部と、
    前記一次記憶部の記憶容量の残量を検知する容量検知部と、
    を備え、
    前記クロック逓倍部は、前記容量検知部により検知された前記記憶容量の残量に応じて、前記逓倍クロックの逓倍率を変更することを特徴とする請求項1〜3のいずれか1項に記載の通信装置。
  5. ヘッダ部とデータ部とを含むシリアルデータを送信するデータ送信装置と、前記データ送信装置から前記シリアルデータを受信するデータ受信装置とを有する通信システムであって、
    前記データ送信装置は、
    外部から入力される所定のクロックに同期して前記ヘッダ部を送信するヘッダ処理部と、
    前記所定のクロックの周波数を逓倍するクロック逓倍部と、
    前記クロック逓倍部により周波数が逓倍された逓倍クロックに同期して、前記データ部を送信するデータ処理部と、
    を備え、
    前記データ受信装置は、
    前記所定のクロックに同期して前記ヘッダ部を受信して処理するヘッダ処理部と、
    前記所定のクロックの周波数を逓倍するクロック逓倍部と、
    前記クロック逓倍部により周波数が逓倍された逓倍クロックに同期して、前記データ部を受信して処理するデータ処理部と、
    を有することを特徴とする通信システム。
JP2008244849A 2008-09-24 2008-09-24 通信装置及び通信システム Withdrawn JP2010081104A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008244849A JP2010081104A (ja) 2008-09-24 2008-09-24 通信装置及び通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008244849A JP2010081104A (ja) 2008-09-24 2008-09-24 通信装置及び通信システム

Publications (1)

Publication Number Publication Date
JP2010081104A true JP2010081104A (ja) 2010-04-08

Family

ID=42211082

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008244849A Withdrawn JP2010081104A (ja) 2008-09-24 2008-09-24 通信装置及び通信システム

Country Status (1)

Country Link
JP (1) JP2010081104A (ja)

Similar Documents

Publication Publication Date Title
CN101937253B (zh) 用于时钟同步的方法、装置和系统
JP5233770B2 (ja) ゲートウェイ装置、その制御方法、システム、制御方法を実行させるためのプログラム及びそれを記録した記録媒体
JP4452690B2 (ja) 電子装置、その制御方法、ホスト装置及びその制御方法
CN105578585B (zh) 一种确定链路延时的方法、装置和通信设备
US9292456B2 (en) System and method for data synchronization across digital device interfaces
WO2020001213A1 (zh) 一种报文传输方法、交换装置、无线通讯设备及存储介质
KR20080014084A (ko) 메모리 에이전트, 메모리 시스템 및 방법
US20170024146A1 (en) Memory controller, information processing device, and control method
KR20160122601A (ko) 시간 동기화 방법 및 그 장치
CN107741965B (zh) 数据库同步处理方法、装置、计算设备及计算机存储介质
CN105681222A (zh) 一种数据接收缓存方法、装置及通信系统
US10095643B2 (en) Direct memory access control device for at least one computing unit having a working memory
US20170308487A1 (en) Data transfer control system, data transfer control method, and program storage medium
US10511397B2 (en) Virtual general purpose input/output (GPIO) (VGI) over a time division multiplex (TDM) bus
JP2010081104A (ja) 通信装置及び通信システム
WO2020250778A1 (ja) 通信装置および通信方法、並びにプログラム
US20100191895A1 (en) System, test apparatus and relay apparatus
KR20080109591A (ko) 전자장치 및 그 데이터 송수신방법과, 슬레이브 장치 및복수의 장치 간의 통신방법
US7324564B2 (en) Transmitting odd-sized packets over a double data rate link
US9800398B2 (en) Apparatus and method for transmitting and receiving data
US20180018296A1 (en) Flow control protocol for an audio bus
CN116756078B (zh) pcie数据包的通知方法、装置及存储介质
CN114610661B (zh) 数据处理装置、方法和电子设备
KR100612454B1 (ko) I2c 버스 정합 장치 및 방법
KR100994356B1 (ko) 통신 시스템 및 통신 방법

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20111206