JPWO2007125670A1 - 信号伝送方法、送受信装置及び通信システム - Google Patents

信号伝送方法、送受信装置及び通信システム Download PDF

Info

Publication number
JPWO2007125670A1
JPWO2007125670A1 JP2008513094A JP2008513094A JPWO2007125670A1 JP WO2007125670 A1 JPWO2007125670 A1 JP WO2007125670A1 JP 2008513094 A JP2008513094 A JP 2008513094A JP 2008513094 A JP2008513094 A JP 2008513094A JP WO2007125670 A1 JPWO2007125670 A1 JP WO2007125670A1
Authority
JP
Japan
Prior art keywords
data
transmission
clock
unit
transmission line
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.)
Granted
Application number
JP2008513094A
Other languages
English (en)
Other versions
JP4931912B2 (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2008513094A priority Critical patent/JP4931912B2/ja
Publication of JPWO2007125670A1 publication Critical patent/JPWO2007125670A1/ja
Application granted granted Critical
Publication of JP4931912B2 publication Critical patent/JP4931912B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/14Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver

Abstract

本発明は、割込信号を送信することによるデータ伝送効率の低下を抑制することを目的とする。受信側と送信側とが少なくとも2本以上の伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、送信側は、複数のデータフラグメントのうち第1データフラグメントを伝送線路のうち第1伝送線路を介して伝送し、ヘッダ情報と、第1データフラグメントと同じビット長からなる第2データフラグメントと、フッタ情報とを含むデータパケットを第1伝送線路以外の第2伝送線路を介して伝送し、かつ第1データフラグメントと第2データフラグメントとを同期して伝送し、第1伝送線路の隣接する第1データフラグメント間の間隔であるタイムスロットにおいて、送信側を制御するための割込信号を受信側から送信側に送信することを特徴とする、信号伝送方法を提供する。

Description

本発明は、データ伝送における信号伝送方法、送受信装置及び通信システムに関する。
送受信装置間でデータ伝送を行う通信システムには、USB(Universal Serial Bus)やIEEE(Institute of Electrical and Electronics Engineers)1394に代表されるように、送受信装置間に1本又は複数のデータ信号用の伝送線路(以下、データ信号用伝送線路と言う)を有する通信システムや、データ信号用伝送線路及び制御信号用の伝送線路(以下、制御信号用伝送線路と言う)をともに有する通信システムがある。前者の通信システムでは、データ信号用伝送線路を介して送受信装置間でデータの伝送が行われ、制御信号用伝送線路を介してデータの伝送開始や終了などの各種制御信号の伝送が行われる。また、データ伝送の効率を高めるために制御信号用伝送線路及びデータ信号用伝送線路をともに用いてデータの伝送が行われる場合もある。
このような通信システムの一例が特許文献1に開示されている。この通信システムでは、データ信号用伝送線路を用いて、又はデータ信号用伝送線路及び制御信号用伝送線路をともに用いて連続的にデータ伝送を行っている。特許文献1では、このように連続的にデータが伝送されている伝送線路において、時分割多重伝送方法を用いて、データの受信側から送信側に制御信号である割込要求信号を送信する技術が開示されている。時分割多重伝送方法では、複数の送受信装置に対して伝送線路の使用できる期間が割り当てられており、送信側と受信側とが交互に、データ信号用伝送線路及び制御信号用伝送線路を利用することができる。ここで、受信側が送信側からデータを受信中に、割込要求信号を送信側に送信する場合には、送信側からのデータとデータとの間の期間、つまり受信側に割り当てられた期間を利用して送信側に割込要求信号を送信する。よって、受信側は、割込要求信号を随時かつ即座に送信側に送信することが可能である。
特許第2733242号明細書
しかし、特許文献1の時分割多重伝送方法では、割込要求信号を随時かつ即座に送信側に送信するために、割込信号を伝送するための期間を、送信側からのデータとデータとの間に確保する必要がある。つまり、送信側からのデータとデータとの間には、割込信号のビット長、もしくはそれ以上のビット長に相当する期間を確保する必要がある。その結果、送信側からのデータ伝送の効率を低下させることになり、データ伝送の高速化がますます進む今後において大きな課題となる。
そこで、本発明は、割込信号を送信することによるデータ伝送効率の低下を抑制することができる信号伝送方法、送受信装置及び通信システムを提供することを目的とする。
上記課題を解決するために、発明1は、受信側と送信側とが少なくとも2本以上の伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、前記送信側は、前記複数のデータフラグメントのうち第1データフラグメントを前記伝送線路のうち第1伝送線路を介して伝送し、ヘッダ情報と、前記第1データフラグメントと同じビット長からなる第2データフラグメントと、フッタ情報とを含むデータパケットを前記第1伝送線路以外の第2伝送線路を介して伝送し、かつ前記第1データフラグメントと前記第2データフラグメントとを同期して伝送し、前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットにおいて、前記送信側を制御するための割込信号を前記受信側から前記送信側に送信することを特徴とする、信号伝送方法を提供する。
本発明において、第1データフラグメントは、ヘッダ情報及びフッタ情報が付加されていない。送信側は、第2伝送線路のデータパケットのヘッダ情報及びフッタ情報を用い、第1データフラグメントとデータパケットの第2データフラグメントとを同期させて受信側に送信する。このとき、第1伝送線路の隣接する第1データフラグメント間のタイムスロットは、第2伝送線路のデータパケット間の間隔よりも、フッタ情報及びヘッダ情報のビット長分の長さ分だけ長く形成される。本発明では、このタイムスロットを利用して割込信号を送信するため、割込信号を送信するために確保すべき別途の期間が不要であるか、または別途の期間を短くすることができる。そのため、タイムスロットを用いて割込信号を送信することによるデータの伝送効率の低下を抑制することができる。また、タイムスロットはデータフラグメントが伝送されていない期間であるため、データフラグメントの損失を防止することができる。
なお、本発明は、例えば、受信側及び送信側がホスト端末及びリムーバブルメモリデバイスである場合に適用可能である。例えば、ホスト端末が、第1及び第2伝送線路を介してリムーバブルメモリデバイスからリードデータを読み出している場合に、第1伝送線路のタイムスロットを用いてリムーバブルメモリデバイスに割込信号を送信する場合に適用可能である。また、リムーバブルメモリデバイスが、ホスト端末から第1及び第2伝送線路を介してライトデータを受信して記憶している場合に、第1伝送線路のタイムスロットを用いてホスト端末に割込信号を送信する場合にも適用可能である。
発明2は、発明1において、前記第1データフラグメントには、ヘッダ情報又はフッタ情報のいずれかが付加されていることを特徴とする、信号伝送方法を提供する。
第1伝送線路の隣接する第1データフラグメントにフッタ情報を付加した場合には、タイムスロットは、データパケット間の間隔よりもヘッダ情報のビット長分の長さ分だけ長く形成される。また、第1データフラグメントにヘッダ情報を付加した場合には、タイムスロットは、データパケット間の間隔よりもフッタ情報のビット長分の長さ分だけ長く形成される。このタイムスロットを利用して割込信号を送信するため、割込信号を送信するために確保すべき別途の期間が不要であるか、または別途の期間を短くすることができる。そのため、タイムスロットを用いて割込信号を送信することによるデータの伝送効率の低下を抑制することができる。
発明3は、発明1において、前記割込信号は、前記第1データフラグメント及び前記データパケットの送信を停止するための信号であることを特徴とする、信号伝送方法を提供する。
データの伝送効率の低下を抑制しつつ、送信側からの第1データフラグメント及びデータパケットの送信を停止させることができる。
発明4は、データを複数のデータフラグメントに分割し、前記複数のデータフラグメントから第1データフラグメントを生成し、ヘッダ情報、前記第1データフラグメントと同じビット長からなる第2データフラグメント及びフッタ情報を含むデータパケットを生成するデータ生成部と、前記第1データフラグメントと前記第2データフラグメントとを同期させて、前記第1データフラグメントを少なくとも2本以上の伝送線路のうち第1伝送線路を介して、前記データパケットを前記第1伝送線路以外の第2伝送線路を介して受信側に送信するデータ送信部と、前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットにおいて、割込信号を前記受信側から受信する割込信号受信部と、を含むことを特徴とする送受信装置を提供する。
本発明は、発明1と同様の作用効果を奏する。
発明5は、発明4において、前記割込信号の受信に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含み、前記割込信号は、前記第1データフラグメント及び前記データパケットの送信を停止するための信号であり、前記データ送信部は、前記割込信号受信部が前記割込信号を受信した時に、前記第1及び第2伝送線路を介して送信している前記第1データフラグメント及び前記データパケットの送信を完了し、前記レスポンス送信部は、前記第1データフラグメント及び前記データパケットの送信完了後、前記受信側にレスポンスを送信することを特徴とする、送受信装置を提供する。
割込信号の受信時に送信されている第1データフラグメントデータパケットの送信を完了することで、送信中の第1データフラグメント及びデータパケットの送信が未完了となって破壊されるのを防止することができる。
発明6は、複数のデータフラグメントに分割されて伝送されるデータを送信側から受信する送受信装置であって、前記複数のデータフラグメントのうち第1データフラグメントを少なくとも2本以上の伝送線路のうち第1伝送線路を介して、ヘッダ情報、前記第1データフラグメントと同じビット長からなる第2データフラグメント及びフッタ情報を含むデータパケットを前記第1伝送線路以外の第2伝送線路を介して、前記送信側から受信するデータ受信部と、前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットの開始位置及びタイムスロット長を取得するタイムスロット取得部と、前記タイムスロット長に基づいて前記送信側を制御するための割込信号を生成する割込信号生成部と、前記タイムスロットにおいて、前記タイムスロットの開始位置に基づいて、前記割込信号を前記送信側に送信する割込信号送信部と、前記第1データフラグメントと前記第2データフラグメントとは同期して伝送されていることを特徴とする、送受信装置を提供する。
本発明は、発明1と同様の作用効果を奏する。
発明7は、発明6において、発明4に記載の送受信装置と、発明6に記載の送受信装置と、を含む通信システムを提供する。
本発明は、発明1と同様の作用効果を奏する。
発明8は、受信側と送信側とが伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、前記受信側は、クロック信号用伝送路を介して第1クロックを送信側に送信し、前記送信側は、前記伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記受信側に送信し、前記受信側は、前記送信側からの前記データフラグメントの送信を停止するために、前記第1クロックの送信側への送信を停止することを特徴とする、信号伝送方法を提供する。
送信側は、受信側から送信される第1クロックに基づいて、データフラグメントを受信側に送信している。ここで、受信側が第1クロックの供給を停止することで、送信側は受信側にデータフラグメントを送信することができない。このようにして、受信側は、送信側からのデータフラグメントの送信の停止を制御することができる。
発明9は、発明8において、前記伝送線路は少なくとも2本以上であり、前記受信側は、前記第1クロックの送信側への送信を停止した後、前記送信側を制御するための割込信号を、前記伝送線路のうち第1伝送線路を介して前記送信側に送信し、かつ前記第1伝送線路以外の第2伝送線路を介して前記送信側に第2クロックを送信し、前記送信側は、前記割込信号を前記第2クロックに基づいて受信することを特徴とする、信号伝送方法を提供する。
上記発明によれば、受信側が第1クロックの送信側への供給を停止すると、送信側からのデータフラグメントの送信が停止する。このようにして受信側がデータフラグメントの送信停止を制御し、割込信号及び第2クロックを送信側に送信する。つまり、受信側が割込信号及び第2クロックを任意の時間に送信することが可能であり、データフラグメント間に、割込信号及び第2クロックを送信するための期間を予め設ける必要が無い。そのため、データフラグメント間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。また、送信側からのデータフラグメントの送信が停止した後に、データフラグメントが伝送されていた伝送線路を介して割込信号及び第2クロックを送信する。よって、データフラグメントの損失を防止することができる。
なお、データフラグメントにフッタ情報及びヘッダ情報が付加されたデータパケットを伝送線路を介して送信しても良い。この場合にも、前述の理由によりデータパケット間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。
また、本発明は、例えば、受信側及び送信側がホスト端末及びリムーバブルメモリデバイスである場合に適用可能である。例えば、ホスト端末が伝送線路を介してリムーバブルメモリデバイスからリードデータを読み出している場合に、ホスト端末が第1クロックのリムーバブルメモリデバイスへの供給を停止する。その後、ホスト端末は、第1伝送線路を介してリムーバブルメモリデバイスに割込信号を送信し、第2伝送線路を介してリムーバブルメモリデバイスに第2クロックを送信する場合に適用可能である。
発明10は、発明9において、前記割込信号は、前記データフラグメントの送信を停止するための信号であることを特徴とする、信号伝送方法を提供する。
データの伝送効率の低下を抑制しつつ、送信側からのデータフラグメントの送信を停止させることができる。
発明11は、発明8において、前記受信側は、前記第1クロックの送信側への送信を停止した後、前記送信側を制御するために割込要求を出力し、前記送信側は、カウント値が前記第1クロックの受信によりリセットされる内部クロックを有しており、前記第1クロックの送信停止により、前記内部クロックのカウント値が所定値を超えることに基づいて前記割込要求を認識することを特徴とする、信号伝送方法を提供する。
上記発明によれば、受信側が第1クロックの送信側への供給を停止すると、送信側からのデータフラグメントの送信が停止する。このようにして受信側がデータフラグメントの送信停止を制御し、これにより送信側は割込要求を認識する。つまり、受信側は、任意の時間に送信側に割込要求を認識させることが可能であり、データフラグメント間に、割込要求を認識させるための期間を予め設ける必要が無い。そのため、データフラグメント間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。
なお、データフラグメントにフッタ情報及びヘッダ情報が付加されたデータパケットを伝送線路を介して送信しても良い。この場合にも、前述の理由によりデータパケット間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。
また、送信側の内部クロックの周波数は、第1クロックの周波数よりも低く設定されている。
また、本発明は、例えば、受信側及び送信側がホスト端末及びリムーバブルメモリデバイスである場合に適用可能である。例えば、ホスト端末が、伝送線路を介してリムーバブルメモリデバイスからリードデータを読み出している場合に、第1クロックの供給停止によりリムーバブルメモリデバイスに割込要求を認識させる場合に適用可能である。
発明12は、発明11において、前記割込要求は、前記データフラグメントの送信を停止するための要求であることを特徴とする、信号伝送方法を提供する。
データの伝送効率の低下を抑制しつつ、送信側からのデータフラグメントの送信を停止させることができる。
発明13は、データを複数に分割してデータフラグメントを生成するデータ生成部と、前記データフラグメントを受信側に送信するための第1クロックを、クロック信号用伝送路を介して前記受信側から受信する第1クロック受信部と、伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記受信側に送信するデータ送信部とを含み、前記受信側からの前記第1クロックの送信が停止され、前記データ送信部は前記データフラグメントの前記受信側への送信を停止することを特徴とする、送受信装置を提供する。
本発明は、発明8と同様の作用効果を奏する。
発明14は、発明13において、前記伝送線路は少なくとも2本以上であり、前記データ送信部は、前記少なくとも2本以上の伝送線路を介して前記データフラグメントを前記第1クロックに基づいて前記受信側に送信し、前記伝送線路のうち第2伝送線路を介して前記受信側から第2クロックを受信する第2クロック受信部と、前記第2クロックに基づいて、前記伝送線路のうち第1伝送線路を介して、前記送信側を制御するための割込信号を前記受信側から受信する割込信号受信部とを含み、前記受信側からの前記第1クロックの送信が停止された後、前記第2クロック受信部は前記第2クロックを受信し、かつ前記割込信号受信部は前記第2クロックに基づいて前記割込信号を受信することを特徴とする、送受信装置を提供する。
本発明は、発明9と同様の作用効果を奏する。
発明15は、発明14において、前記割込信号の受信に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、送受信装置を提供する。
発明16は、発明13において、前記第1クロックの受信によりリセットされる内部クロックのカウント値をカウントする内部クロックカウント部と、前記内部クロックのカウント値に基づいて、前記受信側の割込要求を認識する割込要求認識部とをさらに含み、前記割込要求認識部は、前記第1クロックの送信停止により、前記内部クロックのカウント値が所定値を超えることに基づいて前記割込要求を認識することを特徴とする、送受信装置を提供する。
本発明は、発明11と同様の作用効果を奏する。
発明17は、発明16において、前記割込要求の認識に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、送受信装置を提供する。
発明18は、複数のデータフラグメントに分割されて伝送されるデータを送信側から受信する送受信装置であって、前記送信側が前記データフラグメントの送信に用いる第1クロックを、クロック信号用伝送路を介して前記送信側に送信する第1クロック送信部と、伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記送信側から受信するデータ受信部とを含み、前記第1クロック送信部は、前記送信側からの前記データフラグメントの送信を停止するために、前記第1クロックの送信側への送信を停止することを特徴とする、送受信装置を提供する。
本発明は、発明8と同様の作用効果を奏する。
発明19は、発明18において、前記伝送線路は少なくとも2本以上であり、前記データ受信部は、前記少なくとも2本以上の伝送線路を介して前記データフラグメントを前記第1クロックに基づいて前記送信側から受信し、前記送信側を制御するための割込信号を生成する割込信号生成部と、前記伝送線路のうち第1伝送線路を介して前記送信側に前記割込信号を送信する割込信号送信部と、前記伝送線路のうち第2伝送線路を介して前記送信側に第2クロックを送信する第2クロック送信部とを含み、前記第1クロック送信部が前記第1クロックの送信側への送信を停止した後、前記割込信号送信部は、前記第1伝送線路を介して前記送信側に前記割込信号を送信し、かつ前記第2クロック送信部は、前記第2伝送線路を介して前記送信側に第2クロックを送信することを特徴とする、送受信装置を提供する。
本発明は、発明9と同様の作用効果を奏する。
発明20は、発明18において、前記第1クロックの送信を停止するように前記第1クロック送信部を制御することにより、前記送信側を制御するための割込要求を前記送信側に通知する割込要求通知部をさらに含むことを特徴とする、送受信装置を提供する。
本発明は、発明11と同様の作用効果を奏する。
発明21は、発明13に記載の送受信装置と、発明18に記載の送受信装置と、を含む通信システムを提供する。
本発明は、発明8と同様の作用効果を奏する。
発明22は、受信側と送信側とが伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、前記受信側は、前記伝送線路の隣接する前記データフラグメント間において、前記送信側を制御するための割込要求を前記送信側に通知するために、前記伝送線路の信号振幅を変化させ、前記送信側は、前記信号振幅の変化を検出することを特徴とする、信号伝送方法を提供する。
上記発明によれば、データの送信側は、伝送線路の信号振幅の変化を監視することで、受信側からの割込要求を認識することができる。ここで、受信側は、隣接するデータフラグメント間において、信号振幅を変化させて割込要求を通知する。送信側を制御するための割込信号を受信側から送信側に送信するためには、データフラグメント間には割込信号のビット長ほどの期間が必要であるが、本発明の割込要求の通知方法によればデータフラグメント間には割込信号のビット長ほどの期間を設ける必要が無い。そのため、割込要求を通知することによるデータの伝送効率の低下を抑制することができる。また、データフラグメント間は、データフラグメントが伝送されていない期間であるため、データフラグメントの損失を防止することができる。
なお、伝送線路での信号振幅を変化させる方法としては、例えば、受信側において伝送線路の終端抵抗を第1抵抗値から第2抵抗値に変化させる方法が挙げられる。
また、データフラグメントには、ヘッダ情報及び/又はフッタ情報が付加されても良い。
また、本発明は、例えば、受信側及び送信側がホスト端末及びリムーバブルメモリデバイスである場合に適用可能である。例えば、ホスト端末が、伝送線路を介してリムーバブルメモリデバイスからリードデータを読み出している場合に、データフラグメント間を用いてリムーバブルメモリデバイスに割込要求を通知する場合に適用可能である。また、リムーバブルメモリデバイスが、ホスト端末から伝送線路を介してライトデータを受信して記憶している場合に、データフラグメント間を用いてホスト端末に割込要求を通知する場合にも適用可能である。
発明23は、発明22において、前記割込要求は、前記データフラグメントの送信を停止するための要求であることを特徴とする、信号伝送方法を提供する。
データの伝送効率の低下を抑制しつつ、送信側からのデータフラグメントの送信を停止させることができる。
発明24は、データを複数に分割し、複数のデータフラグメントを生成するデータ生成部と、前記データフラグメントを伝送線路を介して受信側に送信するデータ送信部と、前記伝送線路の隣接する前記データフラグメント間において、前記伝送線路の信号振幅の変化を検出することで、前記受信側からの割込要求を認識する割込要求認識部と、を含むことを特徴とする送受信装置を提供する。
本発明は、発明22と同様の作用効果を奏する。
なお、本発明の割込要求認識部は、伝送線路の信号振幅値と、所定の参照振幅値とを比較することにより割込要求を認識する。例えば、伝送線路の信号振幅値が所定の参照振幅値よりも大きい場合は、割込要求認識部は割込要求を認識しない。一方、伝送線路の信号振幅値が所定の参照振幅値よりも小さい場合は、割込要求認識部は割込要求を認識する。
また、データ送信部は、データフラグメントの送信を所定のクロックを用いて受信側に送信している。ここで、割込要求認識部は、所定のクロックと同一周波数のクロックを用いて信号振幅の変化を検出している。
発明25は、発明24において、前記割込要求の認識に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、送受信装置を提供する。
発明26は、データを分割した複数のデータフラグメントを伝送線路を介して送信側から受信するデータ受信部と、前記伝送線路の隣接する前記データフラグメント間において、前記伝送線路の信号振幅を変化させることで、前記送信側を制御するための割込要求を前記送信側に通知する割込要求通知部と、を含むことを特徴とする、送受信装置を提供する。
本発明は、発明22と同様の作用効果を奏する。
なお、割込要求通知部は、例えば、受信側の伝送線路の終端抵抗を第1抵抗値から第2抵抗値に変化させることにより、伝送線路での信号振幅を変化させる。
発明27は、発明24に記載の送受信装置と、発明26に記載の送受信装置と、を含む通信システムを提供する。
本発明は、発明22と同様の作用効果を奏する。
本発明によれば、割込信号を送信することによるデータ伝送効率の低下を抑制することができる信号伝送方法、送受信装置及び通信システムを提供することができる。
本発明の第1実施形態例に係る通信システムの全体構成図。 リード時のデータ伝送の様子を示すタイムチャート。 ホスト端末101のCPU110及びSDメモリカード102のCPU130の機能構成図。 本実施形態の通信システムにおける、リード時の処理の流れの一例を示すフローチャート。 本実施形態の通信システムにおける、ライト時の処理の流れの一例を示すフローチャート。 本発明の第2実施形態例の第1実施例に係る通信システムの全体構成図。 本発明の第2実施形態例の第2実施例に係る通信システムの全体構成図。 リード時のデータ伝送の様子を示すタイムチャート。 第1実施例におけるリード時のデータ伝送の様子を示すタイムチャート。 ホスト端末201のCPU210及びSDメモリカード202のCPU230の機能構成図。 第1実施例の通信システムにおける、リード時の処理の流れの一例を示すフローチャート。 第2実施例におけるリード時のデータ伝送の様子を示すタイムチャート。 ホスト端末201のCPU210及びSDメモリカード202のCPU230の機能構成図。 第2実施例の通信システムにおける、リード時の処理の流れの一例を示すフローチャート。 本発明の第3実施形態例に係る通信システムの全体構成図。 リード時のデータ伝送の様子を示すタイムチャート。 動的インピーダンス回路417の構成図。 電位差検出回路の構成図。 リード割込要求が出力された場合の制御信号用伝送線路406の状態及び割込検出信号の状態を示すフローチャート。 制御信号用伝送線路406、動的インピーダンス回路417、電位差検出回路439及び割込検出信号の出力状態等を説明する説明図。 ホスト端末401のCPU410及びSDメモリカード402のCPU430の機能構成図。 本実施形態の通信システムにおける、リード時の処理の流れの一例を示すフローチャート。 本実施形態の通信システムにおける、ライト時の処理の流れの一例を示すフローチャート。 電位差検出回路の別の構成図。 制御信号用伝送線路406、動的インピーダンス回路417、図24で構成される電位差検出回路439及び割込検出信号の出力状態を説明する別の説明図。 本実施形態例の変形例に係る通信システムの全体構成。 比較器の構成を示す構成図。 制御信号用伝送線路406、比較器441及び割込検出信号の出力状態等を説明する説明図。
符号の説明
101、201、401:ホスト端末
102、202、402:SDメモリカード
105、205、405:クロック信号用伝送線路
106、206、406:制御信号用伝送線路
107、207、407:データ信号用伝送線路
110、130、210、230、410、430:CPU
150:クロック生成部
151:クロック送信部
152、172、252、272、452:タイミング制御部
153、173、453、473:タイムスロット取得部
154、174、254、274、454、474:パラメータ記憶部
155、175、255、275、355、455:コマンド生成部
156、176、256、276、456:コマンド送信部
157、177、257、277、457、477:コマンド受信部
158、258、458:レスポンス受信部
178、278、478:レスポンス送信部
159、259、459:リードデータ生成部
179、279、379、479:リードデータ送信部
160、260、160:リードデータ受信部
161、180、261、280、461、480:送信データ生成部
162、262、462:ライトデータ送信部
170、470:クロック受信部
181、281、481:ライトデータ受信部
182、282、482:ライトデータ生成部
237:割込記憶回路
250a、350:第1クロック生成部
251a、351:第1クロック送信部
250b:第2クロック生成部
251b:第2クロック送信部
270a、370:第1クロック受信部
270b:第2クロック受信部
337:割込検出カウンタ
384:内部クロックカウント部
385:割込要求認識部
406a、406b:差動伝送路
419、439:電位差検出回路
463、483:割込要求通知部
484:割込要求認識部
以下、本発明の実施形態を、図面を用いて説明する。
<第1実施形態例>
(1)概要
図1は、本発明の第1実施形態例に係る通信システムの全体構成を示す説明図である。この通信システムでは、ホスト端末101である送受信装置とSD(Secure Digital)メモリカード102である送受信装置とが、伝送線路を介して接続される。伝送線路には、クロック信号用伝送線路105、制御信号用伝送線路106及びデータ信号用伝送線路107が含まれる。クロック信号用伝送線路105は、ホスト端末101及びSDメモリカード102間の通信に用いられる後述のクロックCLKHを、ホスト端末101からSDメモリカード102に伝送するために用いられる。制御信号用伝送線路106は、データの読み出し、書き込みなどに関するコマンド、後述の割込コマンド及びコマンドに対するレスポンスを、ホスト端末101及びSDメモリカード102間で送受信するために用いられる。データ信号用伝送線路107は、ホスト端末101及びSDメモリカード102間でデータを送受信するために用いられる。
図2は、リード時のデータ伝送の様子を示すタイムチャートである。本実施形態の通信システムはハンドシェイク型の通信システムであり、データの伝送の際には、まずリードコマンド(図2中、ReadCMD)やライトコマンドなどの各種コマンド及びこのコマンドに対するレスポンス(図2中、Res)がホスト端末101及びSDメモリカード102間で送受信された後、データ(図2中、DATA)の伝送が行われる。
また、本実施形態の通信システムでは、データアクセスの伝送効率を向上することを目的として、図2に示すようにデータの伝送にはデータ信号用伝送線路107だけでなく制御信号用伝送線路106も用いる。データは複数のデータフラグメントに分割されて伝送されるが、制御信号用伝送線路106を介して伝送される第1データフラグメントには、第1データフラグメントの前後にヘッダ情報及びフッタ情報が付加されていない。一方、データ信号用伝送線路107を介して伝送される第2データフラグメントは、ヘッダ情報及びフッタ情報が付加されている。つまり、データ信号用伝送線路107では、ヘッダ情報、第2データフラグメント及びフッタ情報を含むデータパケットが伝送される。第1データフラグメントのビット長は、第2データフラグメントのビット長と同一であり、第1データフラグメントと第2データフラグメントとは同期して伝送される。なお、制御信号用伝送線路106及びデータ信号用伝送線路107の伝送線路長の違いは、無視できるほど小さいものとする。
ここで、ヘッダ情報及びフッタ情報はデータフラグメントとは異なる情報である。ヘッダ情報にはデータパケットの受信タイミングの調整のための、例えば同期ビット列及びスタートビットなどの情報が含まれており、フッタ情報にはデータパケットの終了を示す、例えばエンドビットなどの情報が含まれている。なお、ヘッダ情報及びフッタ情報に含まれる情報は、これらに限定されず、その他の各種情報を含んでいても良い。また、データフラグメントには、CRC(Cyclic Redundancy Check:巡回冗長検査)ビットなど、各データフラグメントの伝送エラーを検出するための情報が含まれていても良い。
本実施形態では、制御信号用伝送線路106において隣接して伝送される送信側からの第1データフラグメント間の間隔(以下、第1タイムスロットという)を用いて、データフラグメントの受信側から送信側に割込信号(図2中、ITRPT(例えば、後述のリード割込コマンドである。))を伝送する。第1データフラグメントにはヘッダ情報及びフッタ情報が付加されていないため、第1タイムスロットは、先に伝送される第1データフラグメントと、後に伝送される第1データフラグメントと、の間隔により定義される。また、後述の基本タイムスロットは、ヘッダ情報及びフッタ情報を含む、隣接するデータパケットにおいて、先に伝送されるデータパケットと、後に伝送されるデータパケットと、の間隔により定義される。
なお、データ信号用伝送線路107は、1本に限られず複数設けられても良い。
(2)ハードウェア構成
以下に、再び図1を用いて、ホスト端末101及びSDメモリカード102のハードウェア構成について説明する。ホスト端末101及びメモリカード102は、図1に示すハードウェア構成と、後述の図3に示すCPU110の機能構成との協働により、後述する各種機能を実現する。
(2−1)ホスト端末
(a)CPU110:ホスト端末101のその他のRAM111、バッファ112、カードインターフェース部113及びI/Oバッファ等を制御する。そして、ホスト端末101でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)RAM111:SDメモリカード102との間で送受信される各種データを記憶する。
(c)バッファ112、カードインターフェース部113:SDメモリカード102から読み出されたデータのRAM111への書き込み、SDメモリカード102へ書き込まれるデータのRAM111からの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/コマンドOutput114a、データ/レスポンスInput114b、データOutput114c、データInput114d、ドライバ115a、レシーバ115b、ドライバ115c及びレシーバ115dを含み、これらが図1に示すように接続されている。
(e)ドライバ116:クロック信号用伝送線路105を介して、クロックCLKHをSDメモリカード102に送信する。
(2−2)SDメモリカード
(a)CPU130:SDメモリカード102でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)Flashメモリ131a:ホスト端末101との間で送受信される各種データを記憶する。
(c)Flashメモリインターフェース部131b、バッファ132、ホストインターフェース部133:ホスト端末101から読み出されたデータのFlashメモリ131aへの書き込み、ホスト端末101へ書き込まれるデータのFlashメモリ131aからの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/レスポンスOutput134a、データ/コマンドInput134b、データOutput134c、データInput134d、ドライバ135a、レシーバ135b、ドライバ135c及びレシーバ135dを含み、これらが図1に示すように接続されている。
(e)レシーバ136:クロックCLKHをホスト端末101から受信する。
(3)機能構成
図3は、ホスト端末101のCPU110及びSDメモリカード102のCPU130の機能構成図である。
(3−1)ホスト端末のCPUの機能構成
(a)クロック生成部、クロック送信部
クロック生成部150は、ホスト端末101とSDメモリカード102との間でデータを送受信するための基本のクロックCLKHを生成する。クロック生成部150は、CPU110の各種機能部をクロックCLKHにより制御するため、クロック送信部151、タイミング制御部152、コマンド送信部156、レスポンス受信部158、リードデータ受信部160及びライトデータ送信部162等にクロックCLKHを送信する。クロック送信部151は、クロックCLKHをクロック信号用伝送線路105を介してSDメモリカード102に送信する。
(b)タイミング制御部、第1タイムスロット取得部、パラメータ記憶部
パラメータ記憶部154は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。ここで、ヘッダ長及びフッタ長は、ビット数で定義されたヘッダ及びフッタの長さである。基本タイムスロット長とは、ビット数で定義されたデータパケット間の間隔である基本タイムスロットの長さである。
第1タイムスロット取得部153は、パラメータ記憶部154から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、第1データフラグメント間の間隔である第1タイムスロット長を算出して取得する。第1データフラグメントは、SDメモリカード102から制御信号用伝送線路106を介して連続的に伝送されている。ここで、第1タイムスロット長は、フッタ長+基本タイムスロット長+ヘッダ長により算出される。第1タイムスロット取得部153は、コマンド生成部155に第1タイムスロット長を送信する。
また、タイミング制御部152及び第1タイムスロット取得部153は、後述のリードデータ受信部160からデータ信号用伝送線路107を介してデータパケットを受信し、データパケットのヘッダ情報に含まれる第2データフラグメントのビット長を取得する。ここで、第1データフラグメントのビット長と第2データフラグメントのビット長とは同じである。第1タイムスロット取得部153は、ヘッダ長、第2(又は第1)データフラグメントのビット長及び第1タイムスロット長をクロックCLKHに基づいて順にカウントすることで、第1タイムスロットの開始位置を把握する。そして、第1タイムスロット取得部153は、第1タイムスロットの開始位置をコマンド送信部156に送信する。また、タイミング制御部152は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長をクロックCLKHに基づいて順にカウントし、カウント値をリードデータ受信部160に送信する。
なお、タイムスロットの開始位置は、タイムスロット取得部153からではなく、タイミング制御部152からのカウント値に基づいて取得しても良い。
(c)コマンド生成部、コマンド送信部
コマンド生成部155は、SDメモリカード102に記憶されている映像、音声等のリードデータを読み出すためのリードコマンド、SDメモリカード102にデータを書き込むためのライトコマンド、SDメモリカード102からのリードデータの読み出しを中止するリード割込コマンドなどの各種コマンドを生成する。
ここで、リード時には、ホスト端末101は、制御信号用伝送線路106を介して連続的に第1データフラグメントを、またデータ信号用伝送線路107を介して連続的にデータパケットを、SDメモリカード102からリードデータを受信している。リード割込コマンドは、このような場合に、隣接する第1データフラグメント間の第1タイムスロットを用いてSDメモリカード102に送信され、リードデータの送信を停止するコマンド(割込信号)である。コマンド生成部155は、例えばSDメモリカード102から送信されたリードデータのRAM111への書き込みが遅れている等、ホスト端末101の状況を判断し、リード割込コマンドを送信するか否かを判断する。コマンド生成部155は、リード割込コマンドを送信する場合には、リード割込コマンドのビット長が、第1タイムスロット長を超えないようにリード割込コマンドを生成する。
コマンド送信部156は、制御信号用伝送線路106を介して、リードコマンド及びライトコマンド等の各種コマンドをSDメモリカード102にクロックCLKHに基づいて送信する。なお、コマンド送信部156は、第1タイムスロット内でリード割込コマンドを送信可能なように、第1タイムスロットの開始位置に基づいてリード割込コマンドを送信する。
(d)レスポンス受信部
レスポンス受信部158は、ホスト端末101が送信したコマンドに対するレスポンスをSDメモリカード102から受信する。なお、レスポンス受信部158は、SDメモリカード102からライト割込レスポンス、いわゆるビジー信号を受信しているか否かを判断し、ライト割込レスポンスの受信の有無をライトデータ送信部162に通知する。
(e)リードデータ受信部、リードデータ生成部
リードデータ受信部160は、SDメモリカード102からの第1データフラグメント及びデータパケットをクロックCLKHに基づいて受信する。ここで、リードデータ受信部160は、第1データフラグメントを制御信号用伝送線路106を介して、データパケットをデータ信号用伝送線路107を介して受信している。また、リードデータ受信部160は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部152から受信している。このカウント値に基づいて、リードデータ受信部160は、第1データフラグメント及びデータパケット内の第2データフラグメントを損失することなく正確に受信することができる。なお、制御信号用伝送線路106の第1データフラグメントは、データ信号用伝送線路107のデータパケットのヘッダ情報及びフッタ情報に基づいて伝送されており、第1データフラグメントとデータパケットの第2データフラグメントとは同期している。
リードデータ生成部159は、複数の第1及び第2データフラグメントからリードデータを生成し、RAM111に記憶させる。
(f)送信データ生成部、ライトデータ送信部
送信データ生成部161は、ライトコマンドが生成されると、SDメモリカード102に書き込むためのライトデータをRAM111から読み出し、複数の第1データフラグメント及びデータパケットを生成する。第1データフラグメントはヘッダ情報及びフッタ情報を付加せずに生成する。一方、データパケットは、ヘッダ情報、第2データフラグメント及びフッタ情報を含むように生成する。また、同期して伝送される第1データフラグメントと第2データフラグメントとのビット長は同一とする。
ライトデータ送信部162は、クロックCLKHに基づいて、第1データフラグメントを制御信号用伝送線路106を介してSDメモリカード102送信し、データパケットをデータ信号用伝送線路107を介してSDメモリカード102に送信する。なお、ライトデータ送信部162は、制御信号用伝送線路106の第1データフラグメントを、データ信号用伝送線路107のデータパケットのヘッダ情報及びフッタ情報に基づいて送信する。よって、第1データフラグメントとデータパケットの第2データフラグメントとは同期している。
また、ライトデータ送信部162は、レスポンス受信部158からライト割込レスポンスの受信の有無を受け取る。ライト割込レスポンスを受信している場合は、ライトデータ送信部162は、第1データフラグメント及びデータパケットの送信を停止する。一方、ライト割込レスポンスを受信していない場合は第1データフラグメント及びデータパケットの送信を継続し、ライト割込レスポンスが解除された場合はこれらの送信を再開する。
ここで、ライトデータ送信部162は、レスポンス受信部158がライト割込レスポンスを受信している時に第1データフラグメント及びデータパケットを送信している場合には、これらの第1データフラグメント及びデータパケットの送信を完了する。このようにライト割込レスポンスの受信時に送信されている第1データフラグメント及びデータパケットの送信を完了することで、送信中の第1データフラグメント及びデータパケットの送信が未完了となって破壊されるのを防止することができる。
(3−2)SDメモリカードのCPUの機能構成
(a)クロック受信部
クロック受信部170は、ホスト端末101からクロックCLKHを受信する。なお、ホスト端末101からSDメモリカード102への送信の際の遅延により、クロックCLKHはカードクロックCLKSに変化している。クロック受信部170は、タイミング制御部172、コマンド受信部177、レスポンス送信部178、リードデータ送信部179及びライトデータ受信部181等にカードクロックCLKSを送信する。
(b)タイミング制御部、第1タイムスロット取得部、パラメータ記憶部
パラメータ記憶部174は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。
第1タイムスロット取得部173は、パラメータ記憶部174から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、隣接する第1データフラグメント間の間隔である第1タイムスロット長を算出して取得する。第1タイムスロット取得部173は、レスポンス生成部175に第1タイムスロット長を送信する。
また、タイミング制御部172及び第1タイムスロット取得部173は、後述のライトデータ受信部181からデータパケットを受信し、データパケットのヘッダ情報に含まれる第2データフラグメントのビット長を取得する。第1タイムスロット取得部173は、ヘッダ長、第2(又は第1)データフラグメントのビット長及び第1タイムスロット長をカードクロックCLKSに基づいて順にカウントし、第1タイムスロットの開始位置を取得する。そして、第1タイムスロット取得部173は、第1タイムスロットの開始位置をレスポンス送信部178に送信する。なお、同期して伝送される第1データフラグメントと第2データフラグメントとのビット長は同一である。
また、タイミング制御部172は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長をカードクロックCLKSに基づいて順にカウントし、カウント値をライトデータ受信部181に送信する。
(c)コマンド受信部
コマンド受信部177は、制御信号用伝送線路106を介して、リード割込コマンドを含む各種コマンドをカードクロックCLKSに基づいてホスト端末101から受信する。
(d)レスポンス生成部、レスポンス送信部
レスポンス生成部175は、ホスト端末101からの各種コマンドに対するレスポンスを生成する。また、レスポンス生成部175は、ライトデータの書き込みを中止するライト割込レスポンスの生成も行う。
ここで、ライト時には、SDメモリカード102は、ホスト端末101から制御信号用伝送線路106を介して連続的に第1データフラグメントを受信し、ライトデータを受信している。ライト割込レスポンスは、このような場合に、隣接する第1データフラグメント間の第1タイムスロットを用いてホスト端末101に送信され、ライトデータの送信を停止するレスポンス(割込信号)である。レスポンス生成部175は、例えばホスト端末101から送信されたライトデータのFlashメモリ131aへの書き込みが遅れている等、SDメモリカード102の状況を判断し、ライト割込レスポンスを送信するか否かを判断する。レスポンス生成部175は、ライト割込レスポンスを送信する場合には、ライト割込レスポンスのビット長が、第1タイムスロット長を超えないようにライト割込レスポンスを生成する。
レスポンス送信部178は、コマンド受信部177がホスト端末101から各種コマンドを受信すると、制御信号用伝送線路106を介してホスト端末101にレスポンスを送信する。また、レスポンス送信部178は、ライト割込レスポンスについては、第1タイムスロット内でライト割込レスポンスを送信可能なように、第1タイムスロットの開始位置に基づいて送信する。なお、ライト割込レスポンスは、ライトデータのFlashメモリ131aへの書き込みが可能になるまで生成され、ホスト端末102に送信される。
なお、後述の通り、リード割込コマンドを受信している際に、リードデータ送信部179が第1データフラグメント及びデータパケットをホスト端末101に送信している場合には、レスポンス送信部178は、これらの送信完了後にレスポンスをホスト端末101に送信する。
(e)ライトデータ受信部、ライトデータ生成部
ライトデータ受信部181は、ホスト端末101からの第1データフラグメント及びデータパケットをカードクロックCLKSに基づいて受信する。ここで、ライトデータ受信部181は、第1データフラグメントを制御信号用伝送線路106を介して、データパケットをデータ信号用伝送線路107を介して受信している。また、ライトデータ受信部181は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部172から受信している。このカウント値に基づいて、ライトデータ受信部181は、第1データフラグメント及びデータパケット内の第2データフラグメントを損失することなく正確に受信することができる。なお、第1データフラグメントは、データパケットのヘッダ情報及びフッタ情報に基づいて伝送されており、第1データフラグメントとデータパケットの第2データフラグメントとは同期している。
ライトデータ生成部182は、複数の第1及び第2データフラグメントからライトデータを生成し、Flashメモリ131aに記憶させる。
(f)送信データ生成部、リードデータ送信部
送信データ生成部180は、コマンド受信部177がホスト端末101からリードコマンドを受信すると、ホスト端末101に送信するためのリードデータをFlashメモリ131aから読み出し、複数の第1データフラグメント及びデータパケットを生成する。データパケットは、ヘッダ情報、第2データフラグメント及びフッタ情報を含んで生成される。また、同期して伝送される第1データフラグメント及び第2データフラグメントのビット数は同じである。
リードデータ送信部179は、カードクロックCLKSに基づいて、第1データフラグメントを制御信号用伝送線路106を介してホスト端末101送信し、データパケットをデータ信号用伝送線路107を介してホスト端末101に送信する。なお、リードデータ送信部179は、第1データフラグメントを、データパケットのヘッダ情報及びフッタ情報に基づいて送信する。よって、第1データフラグメントとデータパケットの第2データフラグメントとは同期している。
また、リードデータ送信部179は、リード割込コマンドの受信時に第1データフラグメント及びデータパケットを送信している場合には、これらの第1データフラグメント及びデータパケットの送信を完了する。このようにリード割込コマンドの受信時に送信されている第1データフラグメント及びデータパケットの送信を完了することで、送信中の第1データフラグメント及びデータパケットの送信が未完了となって破壊されるのを防止することができる。
(4)処理の流れ
以下に説明する処理においては、ホスト端末101からSDメモリカード102にクロックCLKHが送信されている。
(4−1)リード時
図4は、本実施形態の通信システムにおける、リード時の処理の流れの一例を示すフローチャートである。
ステップS1、S2:ホスト端末101のコマンド生成部155は、SDメモリカード102からリードデータを読み出すためのリードコマンドを生成する。ホスト端末101のコマンド送信部156は、リードコマンドを制御信号用伝送線路106を介してSDメモリカード102に送信する(ステップS1)。SDメモリカード102のコマンド受信部177はリードコマンドを受信する(ステップS2)。
ステップS3、S4:SDメモリカード102のレスポンス送信部178は、リードコマンドに対するレスポンスを、制御信号用伝送線路106を介してホスト端末101に送信する(ステップS3)。ホスト端末101のレスポンス受信部158はレスポンスを受信する(ステップS4)。
ステップS5、S6:SDメモリカード102の送信データ生成部180は、リードコマンドの受信に応じて、Flashメモリ131aからリードデータを読み出して第1データフラグメント及びデータパケットを生成する。SDメモリカード102のリードデータ送信部179は、第1データフラグメントを制御信号用伝送線路106を介してホスト端末101に送信し、データパケットをデータ信号用伝送線路107を介してホスト端末101に送信する(ステップS5)。ホスト端末101のリードデータ受信部160は、SDメモリカード102から第1データフラグメント及びデータパケットを受信する(ステップS6)。このとき、ホスト端末101のタイミング制御部152は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をリードデータ受信部160に送信している。
その後、リードデータ生成部159は、第1及び第2データフラグメントからリードデータを生成し、RAM111に記憶させる。
ステップS7、S8:ホスト端末101のコマンド生成部155は、リード割込コマンドの送信を行うか否かを判断し、送信する場合(Yes)にはリード割込コマンドを生成する(ステップS7)。このとき、ホスト端末101の第1タイムスロット取得部153は、ヘッダ長、フッタ長及び基本タイムスロット長に基づいて第1タイムスロット長を算出している。ホスト端末101のコマンド生成部155は、第1タイムスロット長を超えないようにリード割込コマンドを生成する(ステップS8)。リード割込コマンドの送信を行わない場合(No)には、ホスト端末101のリードデータ受信部160はさらに第1データフラグメント及びデータパケットを受信する。
ステップS9:ホスト端末101の第1タイムスロット取得部153は、ヘッダ長、第2(又は第1)データフラグメントのビット長及び第1タイムスロット長をクロックCLKHに基づいて順にカウントし、第1タイムスロットの開始位置を取得する。
ステップS10、S11:ホスト端末101のコマンド送信部156は、制御信号用伝送線路106を介して、第1タイムスロットの開始位置に基づき、リード割込コマンドをSDメモリカード102に送信する(ステップS10)。SDメモリカード102のコマンド受信部177は、ホスト端末101からリード割込コマンドを受信する(ステップS11)。
ステップS12、S13:SDメモリカード102のレスポンス送信部178は、制御信号用伝送線路106を介して、リード割込コマンドに対するレスポンスをホスト端末101に送信する(ステップS12)。なお、リード割込コマンドの受信の際にリードデータ送信部179が第1データフラグメント及びデータパケットを送信している場合には、これらの送信を完了後、レスポンス送信部178はレスポンスを送信する。
ホスト端末101のレスポンス受信部158は、SDメモリカード102からレスポンスを受信する(ステップS13)。
ステップS14:SDメモリカード102のリードデータ送信部179は、第1データフラグメント及びデータパケットの送信を停止する。
その後、ホスト端末101からSDメモリカード102にリードコマンドが再び送信されると、SDメモリカード102は制御信号用伝送線路106及びデータ信号用伝送線路107を介して第1データフラグメント及びデータパケットの送信を再開する。
(4−2)ライト時
図5は、本実施形態の通信システムにおける、ライト時の処理の流れの一例を示すフローチャートである。
ステップS21:ホスト端末101のコマンド生成部155及びコマンド送信部156は、SDメモリカード102にライトデータを書き込むためのライトコマンドを生成し、送信する(ステップS21)。SDメモリカード102のコマンド受信部177はライトコマンドを受信する(ステップS22)。
ステップS23:SDメモリカード102のレスポンス送信部178及びホスト端末101のレスポンス受信部158は、ライトコマンドに対するレスポンスを送受信する。
ステップS25、S26:ホスト端末101の送信データ生成部161及びライトデータ送信部162は、ライトコマンドの受信に応じて、RAM111からライトデータを読み出して第1データフラグメント及びデータパケットを生成し、SDメモリカード102に送信する(ステップS25)。SDメモリカード102のライトデータ受信部181は、ホスト端末101から第1データフラグメント及びデータパケットを受信する(ステップS26)。このとき、SDメモリカード102のタイミング制御部172は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をライトデータ受信部181に送信している。
その後、ライトデータ生成部182は、第1データフラグメント及びデータパケットからライトデータを生成し、Flashメモリ131aに記憶させる。
ステップS27、S28:SDメモリカード102のレスポンス生成部175は、ライト割込レスポンスの送信を行うか否かを判断し、送信する場合(Yes)にはライト割込レスポンスを生成する(ステップS27)。このとき、SDメモリカード102の第1タイムスロット取得部173は、ヘッダ長、フッタ長及び基本タイムスロット長に基づいて第1タイムスロット長を算出している。SDメモリカード102のレスポンス生成部175は、第1タイムスロット長を超えないようにライト割込レスポンスを生成する(ステップS28)。ライト割込レスポンスの送信を行わない場合(No)には、SDメモリカード102のライトデータ受信部181はさらに第1データフラグメント及びデータパケットを受信する。
ステップS29:SDメモリカード102の第1タイムスロット取得部173は、ヘッダ長、第2(又は第1)データフラグメントのビット長及び第1タイムスロット長をカードクロックCLKSに基づいて順にカウントし、第1タイムスロットの開始位置を取得する。
ステップS30:SDメモリカード102のレスポンス送信部178は、制御信号用伝送線路106を介して、第1タイムスロットの開始位置に基づき、ライト割込レスポンスをホスト端末101に送信する(ステップS30)。
ステップS31、S32:ホスト端末101のレスポンス受信部158は、SDメモリカード102からライト割込レスポンス、いわゆるビジー信号を受信しているか否かを判断する(ステップS31)。ライト割込レスポンスを受信していない場合(No)は、ステップS25にて、ライトデータ送信部162は、第1データフラグメント及びデータパケットを生成及び送信を行う。
一方、ライト割込レスポンスを受信している場合(Yes)は、ホスト端末101のライトデータ送信部162は、制御信号用伝送線路106及びデータ信号用伝送線路107を介した第1データフラグメント及びデータパケットの送信を停止する(ステップS32)。そして、ライト割込レスポンスの受信が解除されると、ライトデータ送信部162は、ステップS25にて、第1データフラグメント及びデータパケットを生成及び送信を再開する。
(5)作用効果
本発明において、制御信号用伝送線路106の第1データフラグメントは、ヘッダ情報及びフッタ情報が付加されていない。送信側は、データ信号用伝送線路107のデータパケットのヘッダ情報及びフッタ情報を用い、第1データフラグメントとデータパケットの第2データフラグメントとを同期させて受信側に送信する。このとき、制御信号用伝送線路106の隣接する第1データフラグメント間の第1タイムスロットは、データ信号用伝送線路107のデータパケット間の間隔よりも、フッタ情報及びヘッダ情報のビット長分の長さ分だけ長く形成される。本発明では、この第1タイムスロットを利用してリード割込コマンドやライト割込レスポンスなどの割込信号を送信する。そのため、リード割込コマンドやライト割込レスポンス等を送信するために確保すべき別途の期間が不要であるか、または別途の期間を短くすることができる。よって、第1タイムスロットを用いて割込信号を送信することによるデータの伝送効率の低下を抑制することができる。また、第1タイムスロットはデータフラグメントが伝送されていない期間であるため、データフラグメントの損失を防止することができる。
(6)変形例
(6−1)
上記では、制御信号用伝送線路106を伝送する第1データフラグメントにはヘッダ情報及びフッタ情報がともに付加されていない。しかし、ヘッダ情報又はフッタ情報のいずれかを第1データフラグメントに付加しても良い。例えば、第1データフラグメントの前にヘッダ情報が付加されると、第1タイムスロットは、先に伝送される第1データフラグメントと、後に伝送される第1データフラグメントのヘッダ情報と、の間隔によって定義される。あるいは、第1データフラグメントの後にフッタ情報が付加されると、第1タイムスロットは、先に伝送される第1データフラグメントのフッタ情報と、後に伝送される第1データフラグメントと、の間隔によって定義される。このような第1タイムスロットを用いることで、ヘッダ長又はフッタ長分だけ余分にタイムスロットを確保することができ、伝送効率の低下を抑制することができる。
(6−2)
SDメモリカード102では、データは8ビット単位で処理を行っている。よって、フッタ長+基本タイムスロット長+ヘッダ長により算出される上記の第1タイムスロット長は、8の倍数であるのが好ましい。
(6−3)
送信側からのデータの伝送が終了し、受信側がコマンドを正常に送信側に出力できる状態になるまでには、例えば数クロック分の切替時間t1が必要となる。また、受信側からの割込信号の送信が終了し、送信側が再びデータの伝送を開始できる状態になるまでには、例えば数クロック分の切替時間t2が必要となる。よって、第1タイムスロット長は、この切替時間t1及びt2を含むビット長であるのが好ましい。つまり、第1データフラグメント間の間隔である第1タイムスロット長は、データパケットのフッタ長+切替時間t1のビット数+コマンドのビット数+切替時間t2+データパケットのヘッダ長により算出される。また、前記のように表される第1タイムスロット長もまた、8の倍数であるのが好ましい。
(6−4)
上記では、送信側からデータを受信しているときに、受信側がリード割込コマンド又はライト割込レスポンスを送信側に送信する場合について説明した。本実施形態は、その他、送信側からデータを受信しているときに、送信を一定期間遅らせたり、データの再送を指示したりする各種信号を送信側に送信する場合にも適用可能である。
(6−5)
上記では、データパケットは、ヘッダ情報、データパケット及びフッタ情報を順に含むように形成されているが、これらの順序は前記に限定されない。
(6−6)
上記では、本実施形態は、制御用信号伝送線路及びデータ信号用伝送線路を有する通信システムについて説明した。しかし、制御信号用伝送線路を有さず、データ信号用伝送線路のみを有する通信システムにおいても本実施形態を適用可能である。例えば、データ信号用伝送線路のいずれかにおいて、ヘッダ情報及びフッタ情報が付加されていない第1データフラグメントを送信する。そして、そのデータ信号用伝送線路を隣接して伝送する第1データフラグメント間を用いて、リード割込コマンド及びライト割込レスポンス等を送信する。
(6−7)
上記では、ヘッダ長、フッタ長及び基本タイムスロット長が通信規格として定められているとした。しかし、例えばSDメモリカード毎にヘッダ長、フッタ長及び基本タイムスロット長が異なり、ホスト端末101とSDメモリカード102との通信開始時に、これらの情報を相互に取得するようにしても良い。
(6−8)
制御信号用伝送線路106及びデータ信号用伝送線路107は、一対の2本の差動伝送線路であっても良い。
(6−9)
上記では、各データフラグメントのビット長がヘッダ情報に記載されている構成を説明した。しかし、各データフラグメントのビット長が通信規格により固定されていても良い。この場合には、パラメータ記憶部にデータフラグメントのビット長を格納しておけば良く、第2データパケットのヘッダ長から随時、データフラグメントのビット長を取得する必要は無い。
(6−10)
割込信号の送信により即座にデータの伝送が中止されるのが好ましいため、割込信号は1個の第1タイムスロットを用いて送信されるのが好ましい。しかし、例えば割込信号のビット長が第1タイムスロット長を超える場合は、割込信号を複数に分割し、複数の第1タイムスロットを用いて送信しても良い。
(6−11)
上記では、リムーバブルメモリデバイスであるSDメモリカードを例に挙げて説明したが、ホスト端末から供給されたクロックでリードデータをホスト端末に送信するような携帯可能なリムーバブルメモリデバイスであれば、本発明を適用可能な範囲はSDメモリカードに限定されない。例えば、その他、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード、メモリースティック等が挙げられる。また、リムーバブルメモリデバイスが搭載可能なメモリは、フラッシュメモリに限定されず、MRAM、FeRAM等の不揮発性メモリが挙げられる。
(6−12)
前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blue−ray Disc)、半導体メモリを挙げることができる。
前記コンピュータプログラムは、前記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
<第2実施形態例>
図6、図7は、本発明の第2実施形態例の第1実施例及び第2実施例に係る通信システムの全体構成図である。この通信システムでは、ホスト端末201である送受信装置とSD(Secure Digital)メモリカード202である送受信装置とが、伝送線路を介して接続される。伝送線路には、クロック信号用伝送線路205、制御信号用伝送線路206及びデータ信号用伝送線路207が含まれる。クロック信号用伝送線路205は、ホスト端末201及びSDメモリカード202間の通信に用いられる後述の第1クロックCLKH1等を、ホスト端末201からSDメモリカード202に伝送するために用いられる。制御信号用伝送線路206は、データの読み出し、書き込みなどに関するコマンド及びコマンドに対するレスポンスを、ホスト端末201及びSDメモリカード202間で送受信するために用いられる。データ信号用伝送線路207は、ホスト端末201及びSDメモリカード202間でデータを送受信するために用いられる。
図8は、リード時のデータ伝送の様子を示すタイムチャートである。本実施形態の通信システムはハンドシェイク型の通信システムであり、データの伝送の際には、まずリードコマンド(図8中、ReadCMD)やライトコマンドなどの各種コマンド、割込コマンド及びコマンドに対するレスポンス(図8中、Res)がホスト端末201及びSDメモリカード202間で送受信された後、データ(図8中、DATA)の伝送が行われる。
また、本実施形態の通信システムでは、データアクセスの伝送効率を向上することを目的として、図8に示すようにデータの伝送にはデータ信号用伝送線路207だけでなく制御信号用伝送線路206も用いる。データは複数のデータフラグメントに分割されて伝送されており、制御信号用伝送線路206及びデータ信号用伝送線路207を介して伝送されるデータフラグメントには、ヘッダ情報及びフッタ情報が付加されている。つまり、制御信号用伝送線路206及びデータ信号用伝送線路207では、ヘッダ情報、データフラグメント及びフッタ情報を含むデータパケットが伝送される。また、全てのデータパケットは同じビット長により構成されている。
ここで、ヘッダ情報及びフッタ情報はデータフラグメントとは異なる情報である。ヘッダ情報にはデータパケットの受信タイミングの調整のための、例えば同期ビット列及びスタートビットなどの情報が含まれており、フッタ情報にはデータパケットの終了を示す、例えばエンドビットなどの情報が含まれている。なお、ヘッダ情報及びフッタ情報に含まれる情報は、これらに限定されず、その他の各種情報を含んでいても良い。また、データフラグメントには、CRC(Cyclic Redundancy Check:巡回冗長検査)ビットなど、各データフラグメントの伝送エラーを検出するための情報が含まれていても良い。
本実施形態では、受信側は、クロック信号用伝送線路を介して第1クロックCLKH1を送信側に送信している。また、送信側は、第1クロックCLKH1に基づいて受信側にデータパケットを送信している。このとき、受信側は、送信側からのデータパケットの送信を停止するために、第1クロックCLKH1の送信側への送信を停止する。よって、送信側は受信側にデータパケットを送信することができない。このようにして、受信側は、送信側からのデータパケットの送信の停止を制御することができる。
なお、データ信号用伝送線路207は、1本に限られず複数設けられても良い。
以下に、本実施形態の一例として、第1実施例及び第2実施例を以下に説明する。
(第1実施例)
(1)概要
図9は、第1実施例におけるリード時のデータ伝送の様子を示すタイムチャートである。第1実施例では、ホスト端末201が、第1クロックCLKH1の送信を停止する(図9の期間A(停止タイムスロット)を参照)。これにより、SDメモリカード202からのデータパケットの送信が停止している。その後、制御信号用伝送線路206を介して、ホスト端末201からSDメモリカード202に割込信号(図9中、ITRPT(例えば、後述のリード割込コマンドである。))を送信する。また、データ信号用伝送線路207を介して、第1クロックCLKH1とは異なる第2クロックCLKH2をSDメモリカード202に送信する。SDメモリカード202は、第2クロックCLKH2に基づいて割込コマンドを受信する。
(2)ハードウェア構成
以下に、再び図6を用いて、ホスト端末201及びSDメモリカード202のハードウェア構成について説明する。ホスト端末201及びSDメモリカード202は、図6に示すハードウェア構成と、後述の図10に示すCPU210の機能構成との協働により、後述する各種機能を実現する。
(2−1)ホスト端末
(a)CPU210:ホスト端末201のその他のRAM211、バッファ212、カードインターフェース部213及びI/Oバッファ等を制御する。そして、ホスト端末201でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)RAM211:SDメモリカード202との間で送受信される各種データを記憶する。
(c)バッファ212、カードインターフェース部213:SDメモリカード202から読み出されたデータのRAM211への書き込み、SDメモリカード202へ書き込まれるデータのRAM211からの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/コマンドOutput214a、データ/レスポンスInput214b、データOutput214c、データInput214d、ドライバ215a、レシーバ215b、ドライバ215c及びレシーバ215dを含み、これらが図6に示すように接続されている。なお、ドライバ215cは、データ信号用伝送線路207を介して第2クロックCLKH2をSDメモリカード202に送信する。
(e)ドライバ216:クロック信号用伝送線路405を介して、クロックCLKH1をSDメモリカード202に送信する。
(2−2)SDメモリカード
(a)CPU230:SDメモリカード202でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)Flashメモリ231a:ホスト端末201との間で送受信される各種データを記憶する。
(c)Flashメモリインターフェース部231b、バッファ232、ホストインターフェース部233:ホスト端末201から読み出されたデータのFlashメモリ231aへの書き込み、ホスト端末201へ書き込まれるデータのFlashメモリ231aからの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/レスポンスOutput234a、データ/コマンドInput234b、データOutput234c、データInput234d、ドライバ235a、レシーバ235b、ドライバ235c及びレシーバ235dを含み、これらが図16示すように接続されている。なお、レシーバ235dは、データ信号用伝送線路207を介して第2クロックCLKH2をホスト端末201から受信する。
(e)レシーバ236:第1クロックCLKH1をホスト端末201から受信する。
(f)割込記憶回路237:SDメモリカード402の割込記憶回路237は、制御信号用伝送線路206から入力を受けるレシーバ235bの出力ライン235blと、データ信号用伝送線路207から入力を受けるレシーバ235dの出力ライン235dlとに接続されている。さらに、割込記憶回路237は、CPU230から割込記憶回路Enable信号が入力され、割込検出信号をCPU230に出力する。ここで、制御信号用伝送線路206及びデータ信号用伝送線路207を隣接して伝送するデータパケットにおいて、先に伝送されるデータパケットと、後に伝送されるデータパケットと、の間隔を基本タイムスロットと言うものとする(図9参照)。また、第1クロックCLKH1の供給が停止されている期間を停止タイムスロットと言うものとする(図9参照)。停止タイムスロットでは、第1クロックCLKH1の供給が無いため、SDメモリカード202からホスト端末201へのデータパケットの送信が停止している。割込記憶回路Enable信号は、基本タイムスロット及び停止タイムスロットにおいてのみ活性化される。よって、割込記憶回路237は、割込記憶回路Enable信号の入力を受けて、基本タイムスロット及び停止タイムスロットにおいてのみ動作可能である。
第1クロックCLKH1の供給が停止することで、ホスト端末401へのデータパケットの送信が停止する。その後、図9に示すように、停止タイムスロット(図9中、期間A)において、割込記憶回路237は、ホスト端末201から、データ信号用伝送線路207を介して第2クロックCLKH2の入力を受け、かつ制御信号用伝送線路206を介して割込コマンド(図9中、ITRPT)の入力を受ける。割込記憶回路237は、第2クロックCLKH2をトリガとして割込コマンドをラッチし、割込検出信号をCPU230に出力する。なお、ホスト端末101からSDメモリカード102への送信の際の遅延により、第2クロックCLKH2は第2カードクロックCLKS2に変化している。よって、実際には、割込記憶回路237は、第2カードクロックCLKS2に基づいて割込コマンドを受信する。
(3)機能構成
図10は、ホスト端末201のCPU210及びSDメモリカード202のCPU230の機能構成図である。
(3−1)ホスト端末のCPUの機能構成
(a)第1クロック生成部、第1クロック送信部
第1クロック生成部250aは、ホスト端末201とSDメモリカード202との間でデータを送受信するための基本の第1クロックCLKH1を生成する。第1クロック生成部250aは、CPU210の各種機能部を第1クロックCLKH1により制御するため、第1クロック送信部251a、タイミング制御部252、コマンド送信部256、レスポンス受信部258、リードデータ受信部260及びライトデータ送信部262等に第1クロックCLKH1を送信する。第1クロック送信部251aは、第1クロックCLKH1をクロック信号用伝送線路205を介してSDメモリカード202に送信する。
また、第1クロック送信部251aは、コマンド生成部255の制御により第1クロックCLKH1のSDメモリカード202への送信を停止する。
(b)第2クロック生成部、第2クロック送信部
第2クロック生成部250bは、第1クロックCLKH1とは異なる第2クロックCLKH2を生成する。第2クロック送信部251bは、コマンド生成部255の制御に基づいて第2クロック送信部251bを、データ信号用伝送線路207を介してSDメモリカード202に送信する。
(b)タイミング制御部、パラメータ記憶部
パラメータ記憶部254は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。ここで、ヘッダ長及びフッタ長は、ビット数で定義されたヘッダ及びフッタの長さである。基本タイムスロット長とは、ビット数で定義されたデータパケット間の間隔である基本タイムスロットの長さである。
タイミング制御部252は、後述のリードデータ受信部260からデータパケットを受信し、データパケットのヘッダ情報に含まれるデータフラグメントのビット長を取得する。タイミング制御部252は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を第1クロックCLKH1に基づいて順にカウントし、カウント値をリードデータ受信部260に送信する。
(d)コマンド生成部、コマンド送信部
コマンド生成部255は、SDメモリカード202に記憶されている映像、音声等のリードデータを読み出すためのリードコマンド、SDメモリカード202にデータを書き込むためのライトコマンド、SDメモリカード202からのリードデータの読み出しを中止するリード割込コマンドなどの各種コマンドを生成する。コマンド送信部256は、制御信号用伝送線路206を介して、リードコマンド及びライトコマンド等の各種コマンドをSDメモリカード202に第1クロックCLKH1に基づいて送信する。
ここで、リード時には、ホスト端末201は、SDメモリカード202から制御信号用伝送線路206及びデータ信号用伝送線路207を介して連続的にデータフラグメントを受信し、リードデータを受信している。リード割込コマンドは、このような場合に、SDメモリカード202に送信され、リードデータの送信を停止するコマンド(割込信号)である。コマンド生成部255は、例えばSDメモリカード202から送信されたリードデータのRAM211への書き込みが遅れている等、ホスト端末201の状況を判断し、リード割込コマンドを送信するか否かを判断する。そして、コマンド生成部255は、リード割込コマンドの送信が必要と判断すると、第1クロックCLKH1のSDメモリカード202への送信を停止するように第1クロック送信部251aを制御し、第2クロックCLKH2のSDメモリカード202への送信を開始するように第2クロック送信部251bを制御する。また、第1クロックCLKH1の送信が停止した後、コマンド送信部256は制御信号用伝送線路206を介してリード割込コマンドをSDメモリカード202に送信する。
(e)レスポンス受信部
レスポンス受信部258は、ホスト端末201が送信したコマンドに対するレスポンスをSDメモリカード202から受信する。
(f)リードデータ受信部、リードデータ生成部
リードデータ受信部260は、制御信号用伝送線路206及びデータ信号用伝送線路207を介して、SDメモリカード202からデータパケットを第1クロックCLKH1に基づいて受信する。また、リードデータ受信部260は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部252から受信している。このカウント値に基づいて、リードデータ受信部260は、データパケット内のデータフラグメントを損失することなく正確に受信することができる。
リードデータ生成部259は、データパケット内のデータフラグメントからリードデータを生成し、RAM211に記憶させる。
(g)送信データ生成部、ライトデータ送信部
送信データ生成部261は、ライトコマンドが生成されると、SDメモリカード202に書き込むためのライトデータをRAM211から読み出し、ヘッダ情報、データフラグメント及びフッタ情報を含む複数のデータパケットを生成する。
ライトデータ送信部262は、第1クロックCLKH1に基づいて、制御信号用伝送線路206及びデータ信号用伝送線路207を介して、データパケットをSDメモリカード202に送信する。
(3−2)SDメモリカードのCPUの機能構成
(a)第1クロック受信部、第2クロック受信部
第1クロック受信部270aは、クロック信号用伝送線路205を介してホスト端末201から第1クロックCLKH1を受信する。第2クロック受信部270bは、データ信号用伝送線路207を介してホスト端末201から第2クロックCLKH2を受信する。なお、ホスト端末201からSDメモリカード202への送信の際の遅延により、第1クロックCLKH1は第1カードクロックCLKS1に、第2クロックCLKH2は第2カードクロックCLKS2に変化している。第1クロック受信部270aは、タイミング制御部270、コマンド受信部277、レスポンス送信部278、リードデータ送信部279及びライトデータ受信部281等に第1カードクロックCLKS1を送信する。第2クロック受信部270bは、コマンド受信部277に第2カードクロックCLKS2を送信する。
(b)タイミング制御部、パラメータ記憶部
パラメータ記憶部274は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。
タイミング制御部272は、後述のライトデータ受信部281からデータパケットを受信し、データパケットのヘッダ情報に含まれるデータフラグメントのビット長を取得する。タイミング制御部272は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を第1カードクロックCLKS1に基づいて順にカウントし、カウント値をライトデータ受信部281に送信する。
(c)コマンド受信部
コマンド受信部277は、制御信号用伝送線路206を介して各種コマンドを第1カードクロックCLKS1に基づいてホスト端末201から受信する。また、コマンド受信部277は、リード割込コマンドを第2カードクロックCLKS2に基づいて受信する。
(d)レスポンス生成部、レスポンス送信部
レスポンス生成部275は、ホスト端末201からの各種コマンドに対するレスポンスを生成する。
レスポンス送信部278は、コマンド受信部277がホスト端末201から各種コマンドを受信すると、制御信号用伝送線路206を介してホスト端末201にレスポンスを送信する。
(e)ライトデータ受信部、ライトデータ生成部
ライトデータ受信部281は、制御信号用伝送線路206及びデータ信号用伝送線路207を介して、ホスト端末201からのデータパケットを第1カードクロックCLKS1に基づいて受信する。また、ライトデータ受信部281は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部272から受信している。このカウント値に基づいて、ライトデータ受信部281は、データパケット内のデータフラグメントを損失することなく正確に受信することができる。
ライトデータ生成部282は、複数のデータフラグメントからライトデータを生成し、Flashメモリ231aに記憶させる。
(f)送信データ生成部、リードデータ送信部
送信データ生成部280は、コマンド受信部277がホスト端末201からリードコマンドを受信すると、ホスト端末201に送信するためのリードデータをFlashメモリ231aから読み出し、複数のデータパケットを生成する。データパケットは、ヘッダ情報、データフラグメント及びフッタ情報を含んで生成される。
リードデータ送信部279は、第1カードクロックCLKS1に基づいて、データパケットを制御信号用伝送線路206及びデータ信号用伝送線路207を介してホスト端末201に送信する。
(4)処理の流れ
以下に説明する処理を開始するにあたって、ホスト端末201からSDメモリカード102に第1クロックCLKH1が送信されている。
(4−1)リード時
図11は、第1実施例の通信システムにおける、リード時の処理の流れの一例を示すフローチャートである。
ステップS1、S2:ホスト端末201のコマンド生成部255は、SDメモリカード202からリードデータを読み出すためのリードコマンドを生成する。ホスト端末201のコマンド送信部256は、リードコマンドを制御信号用伝送線路206を介してSDメモリカード202に送信する(ステップS1)。SDメモリカード202のコマンド受信部277はリードコマンドを受信する(ステップS2)。
ステップS3、S4:SDメモリカード202のレスポンス送信部278は、リードコマンドに対するレスポンスを、制御信号用伝送線路206を介してホスト端末201に送信する(ステップS3)。ホスト端末201のレスポンス受信部258はレスポンスを受信する(ステップS4)。
ステップS5、S6:SDメモリカード202の送信データ生成部280は、リードコマンドの受信に応じて、Flashメモリ231aからリードデータを読み出してデータパケットを生成する。SDメモリカード202のリードデータ送信部279は、制御信号用伝送線路206及びデータ信号用伝送線路207を介してデータパケットをホスト端末201に送信する(ステップS5)。ホスト端末201のリードデータ受信部260は、SDメモリカード202からデータパケットを受信する(ステップS6)。このとき、ホスト端末201のタイミング制御部252は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をリードデータ受信部260に送信している。
その後、リードデータ生成部259は、データフラグメントからリードデータを生成し、RAM211に記憶させる。
ステップS7、S8:ホスト端末201のコマンド生成部255は、リード割込コマンドの送信を行うか否かを判断し、送信する場合(Yes)にはリード割込コマンドを生成する。リード割込コマンドの送信を行わない場合(No)には、ホスト端末201のリードデータ受信部260はさらにデータパケットを受信する。
ステップS9〜S11:ホスト端末201のコマンド生成部255は、第1クロックCLKH1のSDメモリカード202への送信を停止し(ステップS9)、かつ第2クロックCLKH2及びリード割込コマンドをSDメモリカード202に送信する(ステップS10、S11)。
ステップS12、S13:SDメモリカード202のコマンド受信部277は、リード割込コマンドを第2カードクロックCLKS2に基づいて受信する。
ステップS14、S15:SDメモリカード202のレスポンス送信部278は、制御信号用伝送線路206を介して、リード割込コマンドに対するレスポンスをホスト端末201に送信する(ステップS14)。ホスト端末201のレスポンス受信部258は、SDメモリカード202からレスポンスを受信する(ステップS15)。
ステップS16:SDメモリカード202のリードデータ送信部279は、データパケットの送信を停止する(ステップS16)。
その後、ホスト端末201からSDメモリカード202にリードコマンドが再び送信されると、SDメモリカード202は制御信号用伝送線路206及びデータ信号用伝送線路207を介してデータパケットの送信を再開する。
(5)作用効果
上記第1実施例によれば、ホスト端末201が第1クロックCLKH1のSDメモリカード202への供給を停止すると、SDメモリカード202からのデータパケットの送信が停止する。このようにしてホスト端末201がデータパケットの送信を停止し、リード割込コマンド及び第2クロックCLKH2をSDメモリカード202に送信する。つまり、ホスト端末201がリード割込コマンド及び第2クロックCLKH2を任意の時間に送信することが可能であり、データパケット間に、リード割込コマンド及び第2クロックCLKH2を送信するための期間を予め設ける必要が無い。そのため、データパケット間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。また、SDメモリカード202からのデータパケットの送信が停止した後に、データパケットが伝送されていた伝送線路を介してリード割込コマンド及び第2クロックを送信する。よって、データパケット内のデータフラグメントの損失を防止することができる。
(第2実施例)
(1)概要
図12は、第2実施例におけるリード時のデータ伝送の様子を示すタイムチャートである。第2実施例では、ホスト端末201が、第1クロックCLKH1の送信を停止する(図12の期間A(停止タイムスロット)を参照)。これにより、ホスト端末201からSDメモリカード202に割込要求(例えば、後述のリード割込要求)を通知する。このとき、第1クロックCLKH1の送信停止により、SDメモリカード202からのデータパケットの送信が停止している。
(2)ハードウェア構成
以下に、再び図7を用いて、ホスト端末201及びSDメモリカード202のハードウェア構成について説明する。ホスト端末201及びSDメモリカード202は、図7に示すハードウェア構成と、後述の図13に示すCPU210の機能構成との協働により、後述する各種機能を実現する。
(2−1)ホスト端末
第2実施例のホスト端末201のハードウェア構成は、CPU210が第1クロックCLKH1のみをSDメモリカード202に送信する点を除いて、第1実施例のホスト端末201と同様であるので説明を省略する。
(2−2)SDメモリカード
第2実施例のホスト端末201のハードウェア構成は、割込検出カウンタ337を除いて第1実施例のSDメモリカード202と同様であるので、割込検出カウンタ337以外の説明を省略する。
割込検出カウンタ337は、CPU230から内部クロックが入力され、またカードクロックCLKSが入力され、割込検出信号を出力する。内部クロックは、SDメモリカード202が有するクロックであり、第1クロックCLKH1、カードクロックCLKS及び第1クロックCLKH1に基づくクロックとは異なるクロックであり、かつ第1クロックCLKH1等から分周して生成されるクロックでもない。よって、第1クロックCLKH1の供給が停止しても、内部クロックは停止しない。また、内部クロックは、第1クロックCLKH1よりも低い周波数のクロックである。
割込検出カウンタ337は、内部クロックをカウントしており、カウント値は第1クロックCLKH1の供給によりリセットされる。つまり、第1クロックCLKH1に基づくカードクロックCLKSが割込検出カウンタ337に入力され、このカードクロックCLKSにより内部クロックのカウント値がリセットされる。しかし、第1クロックCLKH1の供給が停止すると、内部クロックのカウント値がリセットされること無くカウントアップされる。
ここで、第1クロックCLKH1の供給が停止されている期間を停止タイムスロット(図12中、期間A)と言うものとする。停止タイムスロットでは、第1クロックCLKH1の供給が無いため、SDメモリカード202からホスト端末201へのデータパケットの送信が停止している。この停止タイムスロットの長さは、通信規格で予め決まっており、例えば通信開始時にホスト端末201からSDメモリカード202に通知される。なお、制御信号用伝送線路206及びデータ信号用伝送線路207を隣接して伝送するデータパケットにおいて、先に伝送されるデータパケットと、後に伝送されるデータパケットと、の間隔を基本タイムスロットと言うものとする。
図12において、停止タイムスロットを除く期間では、ホスト端末201はSDメモリカード202に第1クロックCLKH1を供給している。よって、割込検出カウンタ337による内部クロックのカウント値は、第1クロックCLKH1の供給によりリセットされ“0”である。一方、停止タイムスロットでは、ホスト端末201は第1クロックCLKH1の供給を停止している。よって、内部クロックのカウント値がカウントアップされ“0”より大きくなる。このカウント値が割込検出信号としてCPU230に送信され、CPU230はカウント値が所定値を超えることに基づいて、ホスト端末201が割込要求を出力したことを認識する。
(3)機能構成
図13は、ホスト端末201のCPU210及びSDメモリカード202のCPU230の機能構成図である。第2実施例では、第1実施例のように第2クロック生成部250b、第2クロック送信部251b、第2クロック受信部270bは設けられていない。また、第1実施例と同一の符号番号は同一の機能構成であり、以下に説明する機能構成を除いて第1実施例と同様であるので説明を省略する。
(3−1)ホスト端末のCPUの機能構成
(a)第1クロック生成部、第1クロック送信部
第2実施例の第1クロック生成部350及び第1クロック送信部351は、第1実施例の第1クロック生成部250a及び第1クロック送信部251aの構成と同様であり説明を省略する。なお、第1クロック送信部351は、割込要求通知部356の制御により第1クロックCLKH1のSDメモリカード202への送信を停止する。
(b)コマンド生成部
第2実施例のコマンド生成部355は、第1実施例のコマンド生成部255とほぼ同様の構成であるので、以下に簡単に説明する。コマンド生成部355は、リードコマンド、ライトコマンドなどの各種コマンドを生成する。なお、コマンド生成部355は、リード割込みコマンド等の割込コマンドは生成しない。
(c)割込要求通知部
割込要求通知部356は、ホスト端末201の状況に応じて、SDメモリカード202からのデータ送信に対して割込が必要かどうかを判断し、第1クロックCLKH1の送信を停止するか否かを決定する。
ここで、リード時には、ホスト端末201は、SDメモリカード202から連続的にデータパケットを受信し、リードデータを受信している。ここで、割込要求通知部356は、例えばSDメモリカード202から送信されたリードデータのRAM211への書き込みが遅れている等、ホスト端末201の状況を判断し、SDメモリカード202からのリードデータの送信を停止する必要があるか否か、つまりホスト端末201がリード割込要求を行う必要があるか否かを判断する。そして、割込要求通知部356は、リードデータの送信を停止する必要があると判断すると、停止タイムスロット(図9の期間A)の長さ分だけ、第1クロックCLKH1のSDメモリカード202への送信を停止するように第1クロック送信部351を制御する。また、停止タイムスロットの期間Aが経過すると、割込要求通知部356は、第1クロックCLKH1の送信を再開するように第1クロック送信部351を制御する。
(3−2)SDメモリカードのCPUの機能構成
(a)第1クロック受信部
第2実施例の第1クロック受信部370は、第1実施例の第1クロック受信部270aの構成と同様であり説明を省略する。
(b)内部クロックカウント部、割込要求認識部
内部クロックカウント部384は、内部クロックを生成し、割込検出カウンタ337に送信する。なお、内部クロックは、第1クロックCLKH1、カードクロックCLKS及び第1クロックCLKH1に基づくクロックとは異なるクロックであり、かつ第1クロックCLKH1等から分周して生成されるクロックでもない。また、内部クロックカウント部384は、通信開始時にホスト端末201から停止タイムスロット(図9の期間A)の長さを受信しており、この停止タイムスロットの期間Aと内部クロックとに基づいて、所定値を決定する。所定値とは、ホスト端末201からSDメモリカード202への第1クロックCLKH1の供給が、停止しているか否かを判断するための判断基準値である。
また、内部クロックカウント部384は、割込検出カウンタ337から割込検出信号を受信し、ホスト端末201が第1クロックCLKHの送信を停止したか否かを検出する。ここで、割込検出信号には、内部クロックのカウント値が含まれている。このカウント値は、割込検出カウンタ337が第1クロックCLKHの入力を受けることでリセットされる。よって、内部クロックカウント部384は、カウント値が前述の所定値を超えているか否かを判定し、超えていれば第1クロックCLKH1の供給が停止していると判断する。
割込要求認識部385は、内部クロックカウント部384の判定結果を受信する。ここで、第1クロックCLKH1の供給が停止しているとの判定結果を受信した場合は、割込要求認識部385は、ホスト端末201がリード割込要求を出力していると認識する。割込要求認識部385は、認識結果をリードデータ送信部379及びレスポンス送信部278に送信する。
(c)リードデータ送信部
リードデータ送信部379は、カードクロックCLKSに基づいて、データパケットを制御信号用伝送線路206及びデータ信号用伝送線路207を介してホスト端末201に送信する。また、リードデータ送信部379は、ホスト端末201がリード割込要求を出力しているとの認識結果を割込要求認識部385から受信すると、ホスト端末201へのリードデータの送信を停止する。
(4)処理の流れ
以下に説明する処理を開始するにあたって、ホスト端末201からSDメモリカード202に第1クロックCLKH1が送信されている。
(4−1)リード時
図14は、第2実施例の通信システムにおける、リード時の処理の流れの一例を示すフローチャートである。
ステップS1、S2:ホスト端末201のコマンド生成部355は、SDメモリカード202からリードデータを読み出すためのリードコマンドを生成する。ホスト端末201のコマンド送信部256は、リードコマンドを制御信号用伝送線路206を介してSDメモリカード202に送信する(ステップS1)。SDメモリカード202のコマンド受信部277はリードコマンドを受信する(ステップS2)。
ステップS3、S4:SDメモリカード202のレスポンス送信部278は、制御信号用伝送線路206を介して、リードコマンドに対するレスポンスをホスト端末201に送信する(ステップS3)。ホスト端末201のレスポンス受信部258はレスポンスを受信する(ステップS4)。
ステップS5、S6:SDメモリカード202の送信データ生成部280は、リードコマンドの受信に応じて、Flashメモリ231aからリードデータを読み出してデータパケットを生成する。SDメモリカード202のリードデータ送信部379は、制御信号用伝送線路206及びデータ信号用伝送線路207を介してデータパケットをホスト端末201に送信する(ステップS5)。ホスト端末201のリードデータ受信部260は、SDメモリカード202からデータパケットを受信する(ステップS6)。このとき、ホスト端末201のタイミング制御部252は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をリードデータ受信部260に送信している。
その後、リードデータ生成部259は、データフラグメントからリードデータを生成し、RAM211に記憶させる。
ステップS7、S8:ホスト端末201の割込要求通知部356は、ホスト端末201がリード割込要求を行う必要があるか否か、つまり、SDメモリカード202からのリードデータの送信を停止する必要があるか否かを判断する。リード割込要求を行う場合(Yes)、割込要求通知部356は、SDメモリカード202への第1クロックの送信を停止させるように第1クロック送信部351を制御する。リード割込要求を行わない場合(No)、ホスト端末201のリードデータ受信部260はさらにデータパケットを受信する。
ここで、ホスト端末201が第1クロックCLKH1の送信を停止する停止タイムスロット(図9の期間A)の長さは、通信規格で予め決まっており、例えば通信開始時にホスト端末201からSDメモリカード202に通知される。SDメモリカード202の内部クロックカウント部384は、この停止タイムスロットの期間Aと内部クロックとに基づいて、所定値を決定する。
ステップS9、S10:内部クロックカウント部384は、割込検出カウンタ337から割込検出信号を受信している。内部クロックカウント部384は、割込検出信号に含まれる内部クロックのカウント値が所定値以上であるか否かを判定し、判定結果を割込要求認識部385に送信する。割込要求認識部385は、カウント値が所定値以上である場合は、ホスト端末201がリード割込要求を出力していると認識する。
ステップS11〜S13:停止タイムスロットの期間Aが経過すると、割込要求通知部356は、第1クロックCLKH1の送信を再開するように第1クロック送信部351を制御する。第1クロック送信部351は、第1クロックCLKH1の送信を再開する(ステップS11)。SDメモリカード202のレスポンス送信部379は、ホスト端末201がリード割込要求を出力しているとの認識結果を受信すると、制御信号用伝送線路206を介してホスト端末201にレスポンスを送信する(ステップS12)。ホスト端末201のレスポンス受信部258は、SDメモリカード202からレスポンスを受信する(ステップS13)。
ステップS14:SDメモリカード202のリードデータ送信部379は、データパケットの送信を停止する。
その後、ホスト端末201からSDメモリカード202にリードコマンドが再び送信されると、SDメモリカード202は制御信号用伝送線路206及びデータ信号用伝送線路207を介してデータパケットの送信を再開する。
(5)作用効果
上記第2実施例によれば、ホスト端末201が第1クロックのSDメモリカード202への供給を停止すると、SDメモリカード202からのデータパケットの送信が停止する。このようにしてホスト端末201がデータパケットの送信停止を制御し、これによりSDメモリカード202は割込要求を認識する。つまり、ホスト端末201は、任意の時間にSDメモリカード202に割込要求を認識させることが可能であり、データパケット間に、割込要求を認識させるための期間を予め設ける必要が無い。そのため、データパケット間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。
(変形例)
(1)
本実施形態の第1実施例、第2実施例において、制御信号用伝送線路206及びデータ信号用伝送線路207を伝送する全てのデータパケットに、ヘッダ情報及びフッタ情報を付加する必要は無い。いずれかの伝送線路を伝送するデータフラグメントにのみヘッダ情報及びフッタ情報を付加し、それ以外の伝送線路ではデータフラグメントのみを伝送するようにしても良い。このとき、いずれかの伝送線路を介して伝送されているフッタ情報及びフッタ情報に基づいて、データフラグメントのみを伝送するようにすれば良い。
例えば、制御信号用伝送線路206では第1データフラグメントを伝送するが、第1データフラグメントの前後にヘッダ情報及びフッタ情報が付加されていない。一方、データ信号用伝送線路207では、フッタ情報、第2データフラグメント及びフッタ情報を含むデータパケットが伝送される。第1データフラグメントのビット長は、データパケットの第2データフラグメントのビット長と同一である。第1データフラグメントを、データパケットのヘッダ情報及びフッタ情報を用いて伝送する。このとき、第1データフラグメントは第2データフラグメントに同期して伝送される。
(2)
上記第1及び第2実施例では、送信側からデータを受信しているときに、送信側からのデータパケットの送信を停止させる場合について説明した。上記第1及び第2実施例は、その他、送信側からデータを受信しているときに、送信を一定期間遅らせたり、データの再送を指示したりする各種信号を送信側に送信する場合にも適用可能である。
(3)
上記では、データパケットは、ヘッダ情報、データパケット及びフッタ情報を順に含むように形成されているが、これらの順序は前記に限定されない。
(4)
上記において、本実施形態は、制御用信号伝送線路及びデータ信号用伝送線路を有する通信システムについて説明した。しかし、制御信号用伝送線路を有さず、データ信号用伝送線路のみを有する通信システムにおいても本実施形態を適用可能である。また、本実施形態は、複数の伝送線路を介したデータ伝送への適用のみならず、1本の伝送線路を介したデータ伝送への適用も可能である。
(5)
上記では、制御信号用伝送線路及びデータ信号用伝送線路を伝送するデータパケットは同期して伝送されるが、同期して伝送される構成に限定されない。各データパケットのヘッダ情報及びフッタ情報に基づいて各伝送線路に伝送されれば良い。
(6)
上記では、ヘッダ長、フッタ長及び基本タイムスロット長が通信規格として定められているとした。しかし、例えばSDメモリカード毎にヘッダ長、フッタ長及び基本タイムスロット長が異なり、ホスト端末201とSDメモリカード202との通信開始時に、これらの情報を相互に取得するようにしても良い。
(7)
制御信号用伝送線路206及びデータ信号用伝送線路207は、一対の2本の差動伝送線路であっても良い。
(8)
上記では、各データフラグメントのビット長がヘッダ情報に記載されている構成を説明した。しかし、各データフラグメントのビット長が通信規格により固定されていても良い。この場合には、パラメータ記憶部にデータフラグメントのビット長を格納しておけば良く、データパケットのヘッダ長から随時データフラグメントのビット長を取得する必要は無い。
(9)
上記本実施形態の第1実施例では、割込コマンドの送信により即座にデータの伝送が中止されるのが好ましいため、割込コマンドは1個の第1タイムスロットを用いて送信されるのが好ましい。しかし、例えば割込コマンドのビット長が第1タイムスロット長を超える場合は、割込コマンドを複数に分割し、複数の第1タイムスロットを用いて送信しても良い。
(10)
上記では、リムーバブルメモリデバイスであるSDメモリカードを例に挙げて説明したが、ホスト端末から供給されたクロックでリードデータをホスト端末に送信するような携帯可能なリムーバブルメモリデバイスであれば、本発明を適用可能な範囲はSDメモリカードに限定されない。例えば、その他、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード、メモリースティック等が挙げられる。また、リムーバブルメモリデバイスが搭載可能なメモリは、フラッシュメモリに限定されず、MRAM、FeRAM等の不揮発性メモリが挙げられる。
(11)
前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blue−ray Disc)、半導体メモリを挙げることができる。
前記コンピュータプログラムは、前記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
<第3実施形態例>
(1)概要
図15は、本発明の第3実施形態例に係る通信システムの全体構成図である。この通信システムでは、ホスト端末401である送受信装置とSD(Secure Digital)メモリカード402である送受信装置とが、2本一対の差動伝送線路を介して接続される。本実施形態の通信システムには、後述の動的インピーダンス回路及びインピーダンス回路により一対の差動伝送線路に所定の電位差が発生することで信号を伝送する、一般的な電流駆動型差動伝送方式が用いられている。差動伝送線路には、クロック信号用伝送線路405、制御信号用伝送線路406及びデータ信号用伝送線路407が含まれる。クロック信号用伝送線路405は、ホスト端末401及びSDメモリカード402間の通信に用いられる後述のクロックCLKHを、ホスト端末401からSDメモリカード402に伝送するために用いられる。制御信号用伝送線路406は、データの読み出し、書き込みなどに関するコマンド及びコマンドに対するレスポンスを、ホスト端末401及びSDメモリカード402間で送受信するために用いられる。データ信号用伝送線路407は、ホスト端末401及びSDメモリカード402間でデータを送受信するために用いられる。
図16は、リード時のデータ伝送の様子を示すタイムチャートである。本実施形態の通信システムはハンドシェイク型の通信システムであり、データの伝送の際には、まずリードコマンド(図16中、ReadCMD)やライトコマンドなどの各種コマンド及びこのコマンドに対するレスポンス(図16中、Res)がホスト端末401及びSDメモリカード402間で送受信された後、データ(図16中、DATA)の伝送が行われる。
また、本実施形態の通信システムでは、データアクセスの伝送効率を向上することを目的として、図16に示すようにデータの伝送にはデータ信号用伝送線路407だけでなく制御信号用伝送線路406も用いる。データは複数のデータフラグメントに分割されて伝送されており、制御信号用伝送線路406及びデータ信号用伝送線路407を介して伝送されるデータフラグメントには、フッタ情報及びフッタ情報が付加されている。つまり、制御信号用伝送線路406及びデータ信号用伝送線路407では、ヘッダ情報、データフラグメント及びフッタ情報を含むデータパケットが伝送される。また、全てのデータパケットは同じビット長により構成されている。
ここで、ヘッダ情報及びフッタ情報はデータフラグメントとは異なる情報である。ヘッダ情報にはデータパケットの受信タイミングの調整のための、例えば同期ビット列及びスタートビットなどの情報が含まれており、フッタ情報にはデータパケットの終了を示す、例えばエンドビットなどの情報が含まれている。なお、ヘッダ情報及びフッタ情報に含まれる情報は、これらに限定されず、その他の各種情報を含んでいても良い。また、データフラグメントには、CRC(Cyclic Redundancy Check:巡回冗長検査)ビットなど、各データフラグメントの伝送エラーを検出するための情報が含まれていても良い。
本実施形態では、制御信号用伝送線路406において隣接して伝送されるデータパケット内のデータフラグメント間において、受信側が制御信号用伝送線路406の信号振幅を変化させる。これにより、受信側から送信側に割込要求(後述のリード割込要求及びライト割込要求を含む。)を通知する。ここで、データフラグメント間の間隔は、先に伝送されるデータパケットのデータフラグメントと、後に伝送されるデータパケットのデータフラグメントと、の間隔により定義され、以下の本実施形態では拡張タイムスロットと言うものとする(図16参照)。また、後述の基本タイムスロットは、先に伝送されるデータパケットと、後に伝送されるデータパケットと、の間隔により定義される。
なお、データ信号用伝送線路407は、1本に限られず複数設けられても良い。
(2)ハードウェア構成
以下に、再び図15を用いて、ホスト端末401及びSDメモリカード402のハードウェア構成について説明する。ホスト端末401及びSDメモリカード402は、図15に示すハードウェア構成と、後述の図21に示すCPU410の機能構成との協働により、後述する各種機能を実現する。
(2−1)ホスト端末
(a)CPU410:ホスト端末401のその他のRAM411、バッファ412、カードインターフェース部413及びI/Oバッファ等を制御する。そして、ホスト端末401でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)RAM411:SDメモリカード402との間で送受信される各種データを記憶する。
(c)バッファ412、カードインターフェース部413:SDメモリカード402から読み出されたデータのRAM411への書き込み、SDメモリカード402へ書き込まれるデータのRAM411からの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/コマンドOutput414a、データ/レスポンスInput414b、データOutput414c、データInput414d、ドライバ415a、レシーバ415b、ドライバ415c、レシーバ415d、動的インピーダンス回路417、インピーダンス回路418及び電位差検出回路419を含み、これらが図15に示すように接続されている。ドライバ415a、レシーバ415b、ドライバ415c及びレシーバ415dは、差動伝送線路である制御信号用伝送線路406又はデータ信号用伝送線路407に接続されている。
動的インピーダンス回路417は、制御信号用伝送線路406の2本の差動伝送路406a及び406bそれぞれに接続されている。動的インピーダンス回路417は、CPU410からの割込要求に基づいて、制御信号用伝送線路406の信号振幅を変化させる。図17は、動的インピーダンス回路417の構成図である。図17に示すように、動的インピーダンス回路417では、複数のスイッチ回路SW及び終端抵抗のセットと、スイッチ制御回路417aとを有している。そして、スイッチ制御回路417aが、後述の割込要求により制御され、所定のスイッチ回路SW及び終端抵抗のセットと接続される。これにより、差動伝送路406a及び406bにより構成される制御信号用伝送線路406の信号振幅値が変化する。例えば、動的インピーダンス回路417は、割込要求を受信していない場合はインピーダンスを100Ωに制御し、割込要求を受信している場合はインピーダンスを10Ωに制御する。ここで、制御信号用伝送線路406に接続されているドライバ415aにより1mAの定電流が駆動されるとする。割込要求の受信によりインピーダンスが100Ωから10Ωに変化すると、制御信号用伝送線路406の信号振幅は、同相電位Vcomを基準とする±100mVのスイングから±10mVのスイングに変化する。
電位差検出回路419は、所定の基準電圧Vrefの入力を受け、制御信号用伝送線路406の信号振幅の変化を検出し、CPU410に検出結果として割込検出信号を出力する。図18は、電位差検出回路の構成図である。電位差検出回路419は、比較器419a、419bと、OR回路419cとを有する。比較器419a、419bは、制御信号用伝送線路406の2本の差動伝送路406a及び406bそれぞれに接続されており、また基準電圧Vref及びクロックCLKHが入力されている。比較器419a及び419bは、クロックCLKHをトリガにして、差動伝送路406a及び406bの電位が、基準電圧Vrefよりも高いか低いかを検出する。比較器419a及び419bは、差動伝送路406a及び406bの電位が基準電圧Vrefよりも高い場合にはHighを保持し、低い場合はLowを保持する。比較器419a及び419bは、OR回路419cに接続されており、保持している値がOR回路419cに入力される。そして、OR回路419cの出力が割込検出信号としてCPU410に入力される。ここで、例えば、基準電圧Vrefが同相電位Vcomに対して50mV高いとする。SDメモリカード402が割込要求を出力しておらず、制御信号用伝送線路406の信号振幅が±100mVのスイングの場合、差動伝送路406a及び406bのいずれかの電位は基準電圧Vrefよりも高いため、OR回路419cの出力はHighとなる。一方、SDメモリカード402が割込要求を出力しており、制御信号用伝送線路406の信号振幅が±10mVのスイングとなっている場合、差動伝送路406a及び406b両方の電位が基準電圧Vrefよりも低いため、OR回路の出力はLowとなる。結局、SDメモリカード402が割込要求を出力し、制御信号用伝送線路406の信号振幅が±100mVから±10mVに低下すると、OR回路419cの出力はHighからLowに変化し、割込検出信号としてCPU410に入力される。CPU410は、割込検出信号のこの変化に基づいて、SDメモリカード402による割込要求の出力の有無を判断する。
インピーダンス回路418は、データ信号用伝送線路407のインピーダンスを調整している。
(e)ドライバ416:差動伝送線路であるクロック信号用伝送線路405を介して、クロックCLKHをSDメモリカード402に送信する。
(2−2)SDメモリカード
(a)CPU430:SDメモリカード402でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)Flashメモリ431a:ホスト端末401との間で送受信される各種データを記憶する。
(c)Flashメモリインターフェース部431b、バッファ432、ホストインターフェース部433:ホスト端末401から読み出されたデータのFlashメモリ431aへの書き込み、ホスト端末401へ書き込まれるデータのFlashメモリ431aからの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/レスポンスOutput434a、データ/コマンドInput434b、データOutput434c、データInput434d、ドライバ435a、レシーバ435b、ドライバ435c及びレシーバ435d、動的インピーダンス回路437、インピーダンス回路438及び電位差検出回路439を含み、これらが図15に示すように接続されている。ドライバ435a、レシーバ435b、ドライバ435c及びレシーバ435dは、差動伝送線路である制御信号用伝送線路406又はデータ信号用伝送線路407に接続されている。
動的インピーダンス回路437は、制御信号用伝送線路406の2本の差動伝送路406a、406bそれぞれに接続されている。動的インピーダンス回路437は、CPU430からの割込要求に基づいて、制御信号用伝送線路406の信号振幅を変化させる。動的インピーダンス回路437の構成は、前述の図17と同様であるので説明を省略する(符号番号は図17中の括弧内を参照)。
電位差検出回路439は、所定の基準電圧Vrefの入力を受け、制御信号用伝送線路406の信号振幅の変化を検出し、CPU430に検出結果を出力する。電位差検出回路439の構成は、クロックCLKSが入力される点を除いて前述の図18と同様であるので説明を省略する(符号番号は図18中の括弧内を参照)。ホスト端末401が割込要求を出力し、制御信号用伝送線路406の信号振幅が±100mVから±10mVに低下すると、電位差検出回路439のOR回路439cの出力はHighからLowに変化し、割込検出信号としてCPU430に入力される。CPU430は、割込検出信号のこの変化に基づいて、ホスト端末401による割込要求の出力の有無を判断する。
インピーダンス回路438は、データ信号用伝送線路407のインピーダンスを調整している。
(e)レシーバ436、インピーダンス回路440:インピーダンス回路440は、差動伝送線路であるクロック信号用伝送線路405のインピーダンスを制御し、レシーバ436は、クロック信号用伝送線路405を介して、クロックCLKHをホスト端末401から受信する。
(2−3)割込要求出力時の動作
本実施形態では、送信側から受信側にデータパケットが連続的に伝送されている場合に、データフラグメント間である拡張タイムスロットにおいて、受信側が割込要求を出力する。ホスト端末401がSDメモリカード402からリードデータを受信している場合に、ホスト端末401がリード割込要求を出力した場合を例に挙げ、動的インピーダンス回路417及び電位差検出回路439の動作について説明する。図19はリード割込要求が出力された場合の制御信号用伝送線路406の状態及び割込検出信号の状態を示すフローチャートであり、図20は制御信号用伝送線路406、動的インピーダンス回路417、電位差検出回路439及び割込検出信号の出力状態等を説明する説明図である。
(a)データパケットの受信
図19を参照すると、ホスト端末401は、制御信号用伝送線路406を介してSDメモリカード402からリードデータのデータパケットを受信している。このとき、ホスト端末401はリード割込要求を出力しておらず、制御信号用伝送線路406の状態は図20に示す時間t1〜t7の状態にある。この時間t1〜t7では、動的インピーダンス回路417は前述の通りインピーダンスを100Ωに制御しており、制御信号用伝送線路406の信号振幅は同相電位Vcomを基準とする±100mVとなっている。よって、SDメモリカード402の電位差検出回路439では、比較器439a、439bのいずれかの出力はHigh(H)となり、OR回路419cの出力である割込検出信号はHigh(H)となる。なお、図19では、制御信号用伝送線路406のみを図示しているが、ホスト端末401は、データ信号用伝送線路407を介しても同様にデータパケットを受信している。
(b)リード割込要求の送信
次に、ホスト端末401のCPU410は、SDメモリカード402からのデータパケットの送信を停止するために、リード割込要求を出力する。このときの制御信号用伝送線路406の状態は図20に示す時間t8、t9に相当する。
なお、ホスト端末401のCPU410は、制御信号用伝送線路406の拡張タイムスロットにおいて、リード割込要求を出力する。拡張タイムスロットは、図19に示すように、先に伝送されるデータパケットのデータフラグメントと、後に伝送されるデータパケットのデータフラグメントと、の間隔により定義される。本実施形態では電流駆動型差動伝送方式を用いているため、先に伝送されるデータパケットのフッタ情報と、後に伝送されるデータパケットのヘッダ情報と、により定義される基本タイムスロット(図19参照)においても、制御信号用伝送線路406はHigh又はLowのいずれかの状態にある。
リード割込要求は、ホスト端末401のCPU410からホスト端末401の動的インピーダンス回路417に入力される。動的インピーダンス回路417は、前述の通りリード割込要求の受信によりインピーダンスを100Ωから10Ωに変化させる。このとき、図19及び図20に示すように、制御信号用伝送線路406の信号振幅は、同相電位Vcomを基準とする±100mVのスイング(200mVの信号振幅)から±10mVのスイング(20mVの信号振幅)に変化する。よって、SDメモリカード402の電位差検出回路439では、比較器439a、439b両方の出力がLow(L)となり、OR回路419cの出力である割込検出信号はLow(L)となる。このHighからLowに変化した割込検出信号が、SDメモリカード402のCPU430に入力される。SDメモリカード402のCPU430は、この割込検出信号に基づいて、ホスト端末401がリード割込要求を出力したことを認識し、レスポンス(図19中、Res)をホスト端末401に送信する。
(3)機能構成
図21は、ホスト端末401のCPU410及びSDメモリカード402のCPU430の機能構成図である。
(3−1)ホスト端末のCPUの機能構成
(a)クロック生成部、クロック送信部
クロック生成部450は、ホスト端末401とSDメモリカード402との間でデータを送受信するための基本のクロックCLKHを生成する。クロック生成部450は、CPU410の各種機能部をクロックCLKHにより制御するため、クロック送信部451、タイミング制御部452、コマンド送信部456、レスポンス受信部458、リードデータ受信部460、ライトデータ送信部462、割込要求通知部463及び割込要求認識部464等にクロックCLKHを送信する。クロック送信部451は、クロックCLKHをクロック信号用伝送線路405を介してSDメモリカード402に送信する。
(b)タイミング制御部、タイムスロット取得部、パラメータ記憶部
パラメータ記憶部454は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。ここで、ヘッダ長及びフッタ長は、ビット数で定義されたヘッダ及びフッタの長さである。基本タイムスロット長とは、ビット数で定義されたデータパケット間の間隔である基本タイムスロットの長さである。
タイムスロット取得部453は、パラメータ記憶部454から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、拡張タイムスロット長を算出して取得する。ここで、拡張タイムスロット長は、フッタ長+基本タイムスロット長+ヘッダ長により算出される。タイムスロット取得部453は、後述の割込要求通知部463に拡張タイムスロット長を送信する。
また、タイミング制御部452及びタイムスロット取得部453は、後述のリードデータ受信部460からデータパケットを受信し、データパケットのヘッダ情報に含まれるデータフラグメントのビット長を取得する。タイムスロット取得部453は、ヘッダ長、データフラグメントのビット長及び拡張タイムスロット長をクロックCLKHに基づいて順にカウントすることで、拡張タイムスロットの開始位置を把握する。そして、タイムスロット取得部453は、タイムスロットの開始位置を割込要求通知部463に送信する。また、タイミング制御部452は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長をクロックCLKHに基づいて順にカウントし、カウント値をリードデータ受信部460に送信する。
なお、タイムスロットの開始位置は、タイムスロット取得部453からではなく、タイミング制御部452からのカウント値に基づいて取得しても良い。
(c)コマンド生成部、コマンド送信部
コマンド生成部455は、SDメモリカード402に記憶されている映像、音声等のリードデータを読み出すためのリードコマンド、SDメモリカード402にデータを書き込むためのライトコマンドなどの各種コマンドを生成する。コマンド送信部456は、制御信号用伝送線路406を介して、各種コマンドをSDメモリカード402にクロックCLKHに基づいて送信する。
(d)レスポンス受信部
レスポンス受信部458は、ホスト端末401が送信したコマンドに対するレスポンスをSDメモリカード402から受信する。
(e)リードデータ受信部、リードデータ生成部
リードデータ受信部460は、SDメモリカード402からのデータパケットを、制御信号用伝送線路406及びデータ信号用伝送線路407を介してクロックCLKHに基づいて受信する。また、リードデータ受信部460は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部452から受信している。このカウント値に基づいて、リードデータ受信部460は、データパケット内のデータフラグメントを損失することなく正確に受信することができる。
なお、リードデータを構成するデータパケットは、いずれの伝送線路においても同じビット長で構成され同期して伝送されている。ここで、図19に示すように、データパケットのヘッダ情報及びフッタ情報が送信されている期間は、拡張タイムスロットの期間に含まれる。ヘッダ情報及びフッタ情報が送信されている期間に、割込要求通知部463がリード割込要求を出力すると、制御信号用伝送線路406の信号振幅が小さくなり、ヘッダ情報及びフッタ情報を正確に受信できなくなる可能性がある。しかし、前述のようにいずれの伝送線路においてもデータパケットが同期して伝送されているため、制御信号用伝送線路406以外のデータ信号用伝送線路407を伝送するデータパケットからヘッダ情報及びフッタ情報を受信すれば良い。
リードデータ生成部459は、複数のデータパケットからリードデータを生成し、RAM411に記憶させる。
(f)送信データ生成部、ライトデータ送信部
送信データ生成部461は、ライトコマンドが生成されると、SDメモリカード402に書き込むためのライトデータをRAM411から読み出し、ヘッダ情報、データフラグメント及びフッタ情報を含む複数のデータパケットを生成する。
ライトデータ送信部462は、クロックCLKHに基づいて、制御信号用伝送線路406及びデータ信号用伝送線路407において同期するように、データパケットをSDメモリカード402に送信する。また、ライトデータ送信部462は、割込要求認識部464からライト割込要求が有るとの通知を受信すると、SDメモリカード402へのデータパケットの送信を停止する。
(g)割込要求通知部、割込要求認識部
割込要求通知部463は、SDメモリカード402からのリードデータの読み出しを中止するリード割込要求などの各種割込要求を生成する。ここで、リード時には、ホスト端末401は、SDメモリカード402から制御信号用伝送線路406及びデータ信号用伝送線路407を介して連続的にデータパケットを受信し、リードデータを受信している。リード割込要求は、このような場合に、拡張タイムスロットを用いて出力され、リードデータの送信を停止する割込要求である。割込要求通知部463は、例えばSDメモリカード402から送信されたリードデータのRAM411への書き込みが遅れている等、ホスト端末401の状況を判断し、リード割込要求を出力するか否かを判断する。割込要求通知部463は、変化させる信号振幅値を決定し、拡張タイムスロット長に基づいて信号振幅を変化させる変化期間を決定する。そして、割込要求通知部463は、決定した信号振幅値及び変化期間に基づいて、リード割込要求のビット長が拡張タイムスロット長を超えないようにリード割込要求を生成する。そして、割込要求通知部463は、拡張タイムスロット内でリード割込要求を出力可能なように、拡張タイムスロットの開始位置に基づいてリード割込要求を動的インピーダンス回路417に出力する。
割込要求認識部464は、電位差検出回路419からの割込検出信号を受信し、SDメモリカード402がライト割込要求を出力したか否かを判断する。割込要求認識部464は、ライト割込要求の有無をライトデータ送信部462に送信する。
(3−2)SDメモリカードのCPUの機能構成
(a)クロック受信部
クロック受信部470は、ホスト端末401からクロックCLKHを受信する。なお、ホスト端末401からSDメモリカード402への送信の際の遅延により、クロックCLKはカードクロックCLKSに変化している。クロック受信部470は、タイミング制御部472、コマンド受信部477、レスポンス送信部478、リードデータ送信部479、ライトデータ受信部481、割込要求通知部483及び割込要求認識部484等にカードクロックCLKSを送信する。
(b)タイミング制御部、タイムスロット取得部、パラメータ記憶部
パラメータ記憶部474は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。
タイムスロット取得部473は、パラメータ記憶部474から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、拡張タイムスロット長を算出して取得する。タイムスロット取得部473は、割込要求通知部483に拡張タイムスロット長を送信する。
また、タイミング制御部472及びタイムスロット取得部473は、後述のライトデータ受信部481からデータパケットを受信し、データパケットのヘッダ情報に含まれるデータフラグメントのビット長を取得する。タイムスロット取得部473は、ヘッダ長、データフラグメントのビット長及び拡張タイムスロット長をカードクロックCLKSに基づいて順にカウントすることで、拡張タイムスロットの開始位置を把握する。そして、タイムスロット取得部473は、タイムスロットの開始位置を割込要求通知部483に送信する。また、タイミング制御部472は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長をカードクロックCLKSに基づいて順にカウントし、カウント値をライトデータ受信部481に送信する。
なお、タイムスロットの開始位置は、タイムスロット取得部453からではなく、タイミング制御部452からのカウント値に基づいて取得しても良い。
(c)コマンド受信部
コマンド受信部477は、制御信号用伝送線路406を介して、各種コマンドをカードクロックCLKSに基づいてホスト端末401から受信する。
(d)レスポンス生成部、レスポンス送信部
レスポンス生成部475は、ホスト端末401からの各種コマンドに対するレスポンスを生成する。レスポンス送信部478は、制御信号用伝送線路406を介してホスト端末401にレスポンスを送信する。
(e)ライトデータ受信部、ライトデータ生成部
ライトデータ受信部481は、ホスト端末401からのデータパケットをカードクロックCLKSに基づいて受信する。また、ライトデータ受信部481は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部472から受信している。このカウント値に基づいて、ライトデータ受信部481は、データパケット内のデータフラグメントを損失することなく正確に受信することができる。
なお、ライトデータを構成するデータパケットは、いずれの伝送線路においても同じビット長で構成され同期して伝送されている。よって、ライトデータ受信部481は、制御信号用伝送線路406においてヘッダ情報及びフッタ情報を受信できなくても、他のデータ信号用伝送線路407からヘッダ情報及びフッタ情報を受信すれば良い。
ライトデータ生成部482は、複数のデータパケットからライトデータを生成し、Flashメモリ431aに記憶させる。
(f)送信データ生成部、リードデータ送信部
送信データ生成部480は、コマンド受信部477がホスト端末401からリードコマンドを受信すると、ホスト端末401に送信するためのリードデータをFlashメモリ431aから読み出し、複数のデータパケットを生成する。
リードデータ送信部479は、カードクロックCLKSに基づいて、制御信号用伝送線路406及びデータ信号用伝送線路407において同期するように、データパケットをホスト端末402に送信する。また、リードデータ送信部479は、割込要求認識部484からリード割込要求が有るとの通知を受信すると、ホスト端末401へのデータパケットの送信を停止する。
(g)割込要求通知部、割込要求認識部
割込要求通知部483は、ホスト端末401からのライトデータの書き込みを中止するライト割込要求などの各種割込要求を生成する。ここで、ライト時には、SDメモリカード402は、ホスト端末401から制御信号用伝送線路406及びデータ信号用伝送線路407を介して連続的にデータパケットを受信し、ライトデータを受信している。ライト割込要求は、このような場合に、拡張タイムスロットを用いて出力され、ライトデータの送信を停止する割込要求である。割込要求通知部483は、例えばホスト端末401から送信されたライトデータのFlashメモリ431aへの書き込みが遅れている等、SDメモリカード402の状況を判断し、ライト割込要求を出力するか否かを判断する。割込要求通知部483は、変化させる信号振幅値を決定し、拡張タイムスロット長に基づいて信号振幅を変化させる変化期間を決定する。そして、割込要求通知部483は、決定した信号振幅値及び変化期間に基づいて、ライト割込要求のビット長が拡張タイムスロット長を超えないようにライト割込要求を生成する。そして、割込要求通知部483は、拡張タイムスロット内でライト割込要求を出力可能なように、拡張タイムスロットの開始位置に基づいてライト割込要求を動的インピーダンス回路437に出力する。
割込要求認識部484は、電位差検出回路439からの割込検出信号を受信し、ホスト端末401がリード割込要求を出力したか否かを判断する。割込要求認識部484は、リード割込要求の有無をリードデータ送信部479に送信する。なお、ライト割込要求は、ライトデータのFlashメモリ431aへの書き込みが可能になるまで生成され、ホスト端末402に送信される。
(4)処理の流れ
以下に説明する処理においては、ホスト端末401からSDメモリカード402にクロックCLKHが送信されている。
(4−1)リード時
図22は、本実施形態の通信システムにおける、リード時の処理の流れの一例を示すフローチャートである。
ステップS1、S2:ホスト端末401のコマンド生成部455は、SDメモリカード402からリードデータを読み出すためのリードコマンドを生成する。ホスト端末401のコマンド送信部456は、リードコマンドを制御信号用伝送線路406を介してSDメモリカード402に送信する(ステップS1)。SDメモリカード402のコマンド受信部477はリードコマンドを受信する(ステップS2)。
ステップS3、S4:SDメモリカード402のレスポンス送信部478は、リードコマンドに対するレスポンスを、制御信号用伝送線路406を介してホスト端末401に送信する(ステップS3)。ホスト端末401のレスポンス受信部458はレスポンスを受信する(ステップS4)。
ステップS5、S6:SDメモリカード402の送信データ生成部480は、リードコマンドの受信に応じて、Flashメモリ431aからリードデータを読み出してデータパケットを生成する。SDメモリカード402のリードデータ送信部479は、データパケットを制御信号用伝送線路406及びデータ信号用伝送線路407を介してホスト端末401に送信する(ステップS5)。ホスト端末401のリードデータ受信部460は、SDメモリカード402からデータパケットを受信する(ステップS6)。このとき、ホスト端末401のタイミング制御部452は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をリードデータ受信部460に送信している。
その後、リードデータ生成部459は、データパケットからリードデータを生成し、RAM411に記憶させる。
ステップS7、S8:ホスト端末401の割込要求通知部463は、リード割込要求の出力を行うか否かを判断し、出力する場合(Yes)にはリード割込要求を生成する(ステップS7)。このとき、ホスト端末401のタイムスロット取得部453は、ヘッダ長、フッタ長及び基本タイムスロット長に基づいて拡張タイムスロット長を算出している。ホスト端末401の割込要求通知部463は、拡張タイムスロット長を超えないようにリード割込要求を生成する(ステップS8)。リード割込要求の出力を行わない場合(No)には、ホスト端末401のリードデータ受信部460はさらにデータパケットを受信する。
ステップS9:ホスト端末401のタイムスロット取得部453は、ヘッダ長、データフラグメントのビット長及び拡張タイムスロット長をクロックCLKHに基づいて順にカウントし、拡張タイムスロットの開始位置を取得する。
ステップS10、S11:ホスト端末401の割込要求通知部463は、拡張タイムスロットの開始位置に基づき、リード割込要求を動的インピーダンス回路417に出力する(ステップS10)。SDメモリカード402の割込要求認識部484は、リード割込要求の出力に応じて変化する割込検出信号に基づいて、ホスト端末401がリード割込要求を出力したことを認識する(ステップS11)。
ステップS12、S13:SDメモリカード402のレスポンス送信部478は、ホスト端末402がリード割込要求を出力しているとの認識結果を受信すると、制御信号用伝送線路406を介してホスト端末401にレスポンスを送信する(ステップS12)。ホスト端末401のレスポンス受信部458は、SDメモリカード402からレスポンスを受信する(ステップS13)。
ステップS14:SDメモリカード402のリードデータ送信部479は、データパケットの送信を停止する。
その後、ホスト端末401からSDメモリカード402にリードコマンドが再び送信されると、SDメモリカード402は制御信号用伝送線路406及びデータ信号用伝送線路407を介してデータパケットの送信を再開する。
(4−2)ライト時
図23は、本実施形態の通信システムにおける、ライト時の処理の流れの一例を示すフローチャートである。
ステップS21、S22:ホスト端末401のコマンド生成部455及びコマンド送信部456は、SDメモリカード402にライトデータを書き込むためのライトコマンドを生成し、送信する(ステップS21)。SDメモリカード402のコマンド受信部477はライトコマンドを受信する(ステップS22)。
ステップS23:SDメモリカード402のレスポンス送信部478及びホスト端末401のレスポンス受信部458は、ライトコマンドに対するレスポンスを送受信する。
ステップS25、S26:ホスト端末401の送信データ生成部461及びライトデータ送信部462は、ライトコマンドの生成に応じて、RAM411からライトデータを読み出してデータパケットを生成し、SDメモリカード402に送信する(ステップS25)。SDメモリカード402のライトデータ受信部481は、ホスト端末401からデータパケットを受信する(ステップS26)。このとき、SDメモリカード402のタイミング制御部472は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をライトデータ受信部481に送信している。
その後、ライトデータ生成部482は、データパケットからライトデータを生成し、Flashメモリ431aに記憶させる。
ステップS27、S28:SDメモリカード402の割込要求通知部483は、ライト割込要求の出力を行うか否かを判断し、出力する場合(Yes)にはライト割込要求を生成する(ステップS27)。このとき、SDメモリカード402のタイムスロット取得部473は、ヘッダ長、フッタ長及び基本タイムスロット長に基づいて拡張タイムスロット長を算出している。SDメモリカード402の割込要求通知部483は、拡張タイムスロット長を超えないようにライト割込要求を生成する(ステップS28)。ライト割込要求の出力を行わない場合(No)には、SDメモリカード402のライトデータ受信部481はさらにデータパケットを受信する。
ステップS29:SDメモリカード402のタイムスロット取得部473は、ヘッダ長、データフラグメントのビット長及び拡張タイムスロット長をカードクロックCLKSに基づいて順にカウントし、拡張タイムスロットの開始位置を取得する。
ステップS30:SDメモリカード402の割込要求通知部483は、拡張タイムスロットの開始位置に基づき、ライト割込要求を動的インピーダンス回路437に出力する。
ステップS31、S32:ホスト端末401の割込要求認識部464は、ライト割込要求の出力に応じて変化する割込検出信号に基づいて、SDメモリカード402がライト割込要求を出力しているか否かを判断する(ステップS31)。ライト割込要求が出力されていない場合(No)は、ステップS25にて、ライトデータ送信部462はデータパケットを生成及び送信を行う。
一方、ライト割込要求が出力されている場合(Yes)は、ホスト端末401のライトデータ送信部462は、データパケットの送信を停止する(ステップS32)。そして、ライト割込要求の出力が解除されると、ライトデータ送信部462は、ステップS25にて、データパケットを生成及び送信を再開する。
(5)作用効果
本実施形態によれば、データの送信側は、伝送線路の信号振幅の変化を監視することで、受信側からのリード割込要求やライト割込要求等などの割込要求を認識することができる。ここで、受信側は、隣接するデータフラグメント間である拡張タイムスロットにおいて、信号振幅を変化させて割込要求を通知する。送信側を制御するための割込信号を受信側から送信側に送信するためには、データフラグメント間には割込コマンドのビット長ほどの期間が必要であるが、本発明の割込要求の通知方法によればデータフラグメント間には割込コマンドのビット長ほどの期間を設ける必要が無い。そのため、割込要求を通知することによるデータの伝送効率の低下を抑制することができる。また、拡張タイムスロットは、データフラグメントが伝送されていない期間であるため、データフラグメントの損失を防止することができる。
(6)変形例
(6−1)
図15に示す電位差検出回路419及び439は、図18に示される回路に限定されない。図24及び図25を用いて電位差検出回路の別の構成について説明する。図24は電位差検出回路の別の構成図であり、図25は制御信号用伝送線路406、動的インピーダンス回路417、図24で構成される電位差検出回路439及び割込検出信号の出力状態を説明する別の説明図である。SDメモリカード402の電位差検出回路439の構成は、電位差検出回路419と同様であるので説明を省略する。
電位差検出回路419は、積分回路部419d、419e、比較器419f、419g、OR回路419hを有する。積分回路部419d、419eは、制御信号用伝送線路406の2本の差動伝送路406a及び406bそれぞれに接続されており、また差動信号の同相電位Vcom及びリセット信号が入力されている。積分回路部419d、419eは、差動伝送路406a及び406bの電位の入力を受け、差動信号の同相電位Vcomを基準として所定時間ごとの積分値を算出する。なお、積分回路部419d、419eは、図25に示すリセット信号のエッジタイミングごとに積分値をリセットする。比較器419f、419gは、入力された積分値とある所定の基準電位Vrefを比較し、積分値がVrefより大きい場合はHigh(H)を、小さい場合はLow(L)を出力する。ここで、前述の通り、割込要求の出力が無い場合は制御信号用伝送線路406の信号振幅は±100mVのスイングであり、一方割込要求が出力されている場合は制御信号用伝送線路406の信号振幅は±10mVのスイングとなる。このとき、割込要求が出力されていない場合は、積分回路部419d、419eのいずれかの積分値が基準電位Vrefを上回り、比較器419f、419gのいずれかがHigh(H)を保持する。一方、割込要求が出力されている場合は、積分回路部419d、419e両方の積分値が基準電位Vrefを下回り、比較器419f、419g両方がLow(L)を保持する。結局、割込要求の受信により制御信号用伝送線路406の信号振幅が±100mVから±10mVに低下すると、OR回路419hの出力はHigh(H)からLow(L)に変化し、割込検出信号としてCPU410に入力される。CPU410は、割込検出信号のこの変化に基づいて割込要求の出力の有無を判断する。
(6−2)
本実施形態において、データパケット受信側から送信側へ割込要求を通知するための方法として、図26〜図28に示す構成を用いても良い。図26は本実施形態例の変形例に係る通信システムの全体構成図であり、図27は比較器の構成を示す構成図であり、図28は制御信号用伝送線路406、比較器441及び割込検出信号の出力状態等を説明する説明図である。比較器441以外の構成は、図15と同様であるので説明を省略する。また、SDメモリカード402の比較器443の構成は比較器441と同様であるので説明を省略する。
比較器441は、ドライバ415aの入力ライン442a及びレシーバ415bの出力ライン442bに接続されており、クロックCLKHが入力される遅延素子441a、Ex−OR回路441b及びDフリップフロップ441cを含む。ここで、ドライバ415aはホスト端末401が制御信号用伝送線路406に出力する信号を保持しており、レシーバ415bはSDメモリカードから制御信号用伝送線路406を介して送信される信号を保持している。
ホスト端末401がSDメモリカード402にライトデータを送信している時に、SDメモリカード402がライト割込要求を出力する場合を例に挙げて比較器441の動作を説明する。ホスト端末401は、制御信号用伝送線路406及びデータ信号用伝送線路407を介してSDメモリカード402にデータパケットを連続的に送信している。ここで、SDメモリカード402のCPU430が、動的インピーダンス回路437にライト割込要求を出力すると、前述のとおり制御信号用伝送線路406の差動振幅は低下する。このとき、制御信号用伝送線路406のインピーダンスは、制御信号用伝送線路406に接続されているホスト端末401のレシーバ415bが判別可能な振幅レベルを下回る。ホスト端末401のレシーバ415bは、制御信号用伝送線路406の差動信号を認識できず、正しい論理レベルを出力できない。よって、レシーバ415bの出力ライン442bはHighかLowかのいずれかの不定状態となる(図28の×印を参照)。よって、図28に示すように、図27で示される比較器441の出力である割込検出信号の値は、必ずしもLow(L)とはならずHigh(H)となる場合がある(図28の×印を参照)。なお、SDメモリカード402がライト割込要求を出力していない場合は、ドライバ415aの入力ライン442aと、レシーバ415bの出力ライン442bと、の論理レベルは常に等しい。よって、比較器441の出力である割込検出信号の値は必ずLowとなる。ホスト端末401のCPU410は、このような割込検出信号の変化を検出することで、SDメモリカード402がライト割込要求を出力したことを認識することができる。
なお、上記のような動作をする比較器であれば、前記図27の構成に限定されない。また、図27に示す比較器441は図15に示す電位差検出回路419に比べて小さな部面積で実現することができ好ましい。
(6−3)
上記では、先に伝送されるデータパケットのデータフラグメントと、後に伝送されるデータパケットのデータフラグメントと、の間隔により定義される拡張タイムスロットにおいて、制御信号用伝送線路406の信号振幅を変化させる。しかし、先に伝送されるデータパケットと、後に伝送されるデータパケットとの間、つまり、先に伝送されるデータパケットのフッタ情報と、後に伝送されるデータパケットのヘッダ情報と、の間である基本タイムスロットにおいて、信号振幅を変化させるようにしても良い。ヘッダ情報及びフッタ情報の伝送期間に信号振幅の変化が生じないため、フッタ情報及びヘッダ情報が正確に受信できなくなるのを阻止することができる。なお、本実施形態では電流駆動型差動伝送方式を用いているため、制御信号用伝送線路406を含む各伝送線路は、基本タイムスロットの期間においても、High又はLowのいずれかの状態にある。
(6−4)
制御信号用伝送線路406及びデータ信号用伝送線路407を伝送する全てのデータパケットに、ヘッダ情報及びフッタ情報を付加する必要は無い。いずれかの伝送線路を伝送するデータフラグメントにのみヘッダ情報及びフッタ情報を付加し、それ以外の伝送線路ではデータフラグメントのみを伝送するようにしても良い。このとき、いずれかの伝送線路を介して伝送されているフッタ情報及びフッタ情報に基づいて、データフラグメントのみを伝送するようにすれば良い。
例えば、制御信号用伝送線路406では第1データフラグメントを伝送するが、第1データフラグメントの前後にヘッダ情報及びフッタ情報が付加されていない。一方、データ信号用伝送線路407では、フッタ情報、第2データフラグメント及びフッタ情報を含むデータパケットが伝送される。第1データフラグメントのビット長は、データパケットの第2データフラグメントのビット長と同一であり、第1データフラグメントは第2データフラグメントに同期して伝送される。ここで、制御信号用伝送線路406の隣接する第1データフラグメントと第1データフラグメントとの間の第1タイムスロットで、制御信号用伝送線路406の信号振幅を変化させる。このように、前述の期間に割込要求を出力することによっても、データの伝送効率の低下を抑制しつつ、データフラグメントの情報が損失するのを防止することができる。
具体的に、タイムスロット取得部453は、パラメータ記憶部454から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、第1データフラグメント間の間隔である第1タイムスロット長を算出して取得する。ここで、第1タイムスロット長は、フッタ長+基本タイムスロット長+ヘッダ長により算出される。タイムスロット取得部453は、割込要求通知部463に第1タイムスロット長を送信する。割込要求通知部463は、変化させる信号振幅値を決定し、第1タイムスロット長に基づいて信号振幅を変化させる変化期間を決定する。そして、割込要求通知部463は、決定した信号振幅値及び変化期間に基づくリード割込要求を生成する。また、タイミング制御部452は、リードデータ受信部460からデータ信号用伝送線路407を介してデータパケットを受信し、ヘッダ情報に含まれる第2データフラグメントのビット長を取得する。タイムスロット取得部453は、ヘッダ長、第2データフラグメントのビット長及び第1タイムスロット長をクロックCLKHに基づいて順にカウントし、第1タイムスロットの開始位置を取得する。そして、タイムスロット取得部453は、第1タイムスロットの開始位置を割込要求通知部463に送信する。割込要求通知部463は、第1タイムスロットの開始位置に基づいて、リード割込要求を動的インピーダンス回路417に入力し、制御信号用伝送線路406の信号振幅を変化させる。SDメモリカード402の電位差検出回路439がこの信号振幅の変化を検出し、SDメモリカード402のCPU430はホスト端末401がリード割込要求を出力したことを認識する。
(6−5)
上記では、制御信号用伝送線路406及びデータ信号用伝送線路407を伝送するデータパケットは同期して伝送されるが、同期して伝送される構成に限定されない。各データパケットのヘッダ情報及びフッタ情報に基づいて各伝送線路に伝送されれば良い。
(6−6)
上記では、制御信号用伝送線路及びデータ信号用伝送線路を介してデータ伝送が行われている。しかし、本実施形態は、複数の伝送線路を介したデータ伝送への適用のみならず、1本の伝送線路を介したデータ伝送への適用も可能である。
(6−7)
上記では、割込要求が出力されていない場合は伝送線路の信号振幅が大きく、割込要求が出力されると、伝送線路の信号振幅が小さくなる。しかし、信号振幅の変化により割込要求が認識できれば良く、割込要求が出力されていない場合は伝送線路の信号振幅が小さく、割込要求が出力されると、伝送線路の信号振幅が大きくなっても良い。
(6−8)
SDメモリカードでは、データは8ビット単位で処理を行っている。よって、フッタ長+基本タイムスロット長+ヘッダ長により算出される上記の拡張タイムスロット長は、8の倍数であるのが好ましい。
(6−9)
送信側からのデータの伝送が終了し、受信側が割込要求を出力できる状態になるまでには、例えば数クロック分の切替時間t1が必要となる。また、受信側からの割込要求の出力が終了し、送信側が再びデータの伝送を開始できる状態になるまでには、例えば数クロック分の切替時間t2が必要となる。よって、拡張タイムスロット長は、この切替時間t1及びt2を含むビット長であるのが好ましい。つまり、拡張タイムスロット長は、フッタ長+切替時間t1のビット数+コマンドのビット数+切替時間t2+ヘッダ長により算出される。この拡張タイムスロット長もまた、8の倍数であるのが好ましい。
(6−10)
上記割込要求は、リード割込要求及びライト割込要求に限られず、その他送信側からのデータ送信を一定期間遅らせたり、データの再送を指示したりする要求であっても良い。
(6−11)
上記では、データパケットは、ヘッダ情報、データパケット及びフッタ情報を順に含むように形成されているが、これらの順序は前記に限定されない。
(6−12)
上記では、本実施形態は、制御用信号伝送線路及びデータ信号用伝送線路を有する通信システムについて説明した。しかし、制御信号用伝送線路を有さず、データ信号用伝送線路のみを有する通信システムにおいても本実施形態を適用可能である。
(6−13)
上記では、ヘッダ長、フッタ長及び基本タイムスロット長が通信規格として定められているとした。しかし、例えばSDメモリカード毎にヘッダ長、フッタ長及び基本タイムスロット長が異なり、ホスト端末とSDメモリカードとの通信開始時に、これらの情報を相互に取得するようにしても良い。
(6−14)
上記では、各データフラグメントのビット長がヘッダ情報に記載されている構成を説明した。しかし、各データフラグメントのビット長が通信規格により固定されていても良い。この場合には、パラメータ記憶部にデータフラグメントのビット長を格納しておけば良く、第2データパケットのヘッダ長から随時データフラグメントのビット長を取得する必要は無い。
(6−15)
上記では、リムーバブルメモリデバイスであるSDメモリカードを例に挙げて説明したが、ホスト端末から供給されたクロックでリードデータをホスト端末に送信するような携帯可能なリムーバブルメモリデバイスであれば、本発明を適用可能な範囲はSDメモリカードに限定されない。例えば、その他、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード、メモリースティック等が挙げられる。また、リムーバブルメモリデバイスが搭載可能なメモリは、フラッシュメモリに限定されず、MRAM、FeRAM等の不揮発性メモリが挙げられる。
(6−16)
前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blue−ray Disc)、半導体メモリを挙げることができる。
前記コンピュータプログラムは、前記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
本発明は、送受信装置間のデータ伝送において、割込信号の伝送を行いつつ、データの伝送効率の低下を抑制することを実現する場合に利用可能である。
本発明は、データ伝送における信号伝送方法、送受信装置及び通信システムに関する。
送受信装置間でデータ伝送を行う通信システムには、USB(Universal Serial Bus)やIEEE(Institute of Electrical and Electronics Engineers)1394に代表されるように、送受信装置間に1本又は複数のデータ信号用の伝送線路(以下、データ信号用伝送線路と言う)を有する通信システムや、データ信号用伝送線路及び制御信号用の伝送線路(以下、制御信号用伝送線路と言う)をともに有する通信システムがある。前者の通信システムでは、データ信号用伝送線路を介して送受信装置間でデータの伝送が行われ、制御信号用伝送線路を介してデータの伝送開始や終了などの各種制御信号の伝送が行われる。また、データ伝送の効率を高めるために制御信号用伝送線路及びデータ信号用伝送線路をともに用いてデータの伝送が行われる場合もある。
このような通信システムの一例が特許文献1に開示されている。この通信システムでは、データ信号用伝送線路を用いて、又はデータ信号用伝送線路及び制御信号用伝送線路をともに用いて連続的にデータ伝送を行っている。特許文献1では、このように連続的にデータが伝送されている伝送線路において、時分割多重伝送方法を用いて、データの受信側から送信側に制御信号である割込要求信号を送信する技術が開示されている。時分割多重伝送方法では、複数の送受信装置に対して伝送線路の使用できる期間が割り当てられており、送信側と受信側とが交互に、データ信号用伝送線路及び制御信号用伝送線路を利用することができる。ここで、受信側が送信側からデータを受信中に、割込要求信号を送信側に送信する場合には、送信側からのデータとデータとの間の期間、つまり受信側に割り当てられた期間を利用して送信側に割込要求信号を送信する。よって、受信側は、割込要求信号を随時かつ即座に送信側に送信することが可能である。
特許第2733242号明細書
しかし、特許文献1の時分割多重伝送方法では、割込要求信号を随時かつ即座に送信側に送信するために、割込信号を伝送するための期間を、送信側からのデータとデータとの間に確保する必要がある。つまり、送信側からのデータとデータとの間には、割込信号のビット長、もしくはそれ以上のビット長に相当する期間を確保する必要がある。その結果、送信側からのデータ伝送の効率を低下させることになり、データ伝送の高速化がますます進む今後において大きな課題となる。
そこで、本発明は、割込信号を送信することによるデータ伝送効率の低下を抑制することができる信号伝送方法、送受信装置及び通信システムを提供することを目的とする。
上記課題を解決するために、発明1は、受信側と送信側とが少なくとも2本以上の伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、前記送信側は、前記複数のデータフラグメントのうち第1データフラグメントを前記伝送線路のうち第1伝送線路を介して伝送し、ヘッダ情報と、前記第1データフラグメントと同じビット長からなる第2データフラグメントと、フッタ情報とを含むデータパケットを前記第1伝送線路以外の第2伝送線路を介して伝送し、かつ前記第1データフラグメントと前記第2データフラグメントとを同期して伝送し、前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットにおいて、前記送信側を制御するための割込信号を前記受信側から前記送信側に送信することを特徴とする、信号伝送方法を提供する。
本発明において、第1データフラグメントは、ヘッダ情報及びフッタ情報が付加されていない。送信側は、第2伝送線路のデータパケットのヘッダ情報及びフッタ情報を用い、第1データフラグメントとデータパケットの第2データフラグメントとを同期させて受信側に送信する。このとき、第1伝送線路の隣接する第1データフラグメント間のタイムスロットは、第2伝送線路のデータパケット間の間隔よりも、フッタ情報及びヘッダ情報のビット長分の長さ分だけ長く形成される。本発明では、このタイムスロットを利用して割込信号を送信するため、割込信号を送信するために確保すべき別途の期間が不要であるか、または別途の期間を短くすることができる。そのため、タイムスロットを用いて割込信号を送信することによるデータの伝送効率の低下を抑制することができる。また、タイムスロットはデータフラグメントが伝送されていない期間であるため、データフラグメントの損失を防止することができる。
なお、本発明は、例えば、受信側及び送信側がホスト端末及びリムーバブルメモリデバイスである場合に適用可能である。例えば、ホスト端末が、第1及び第2伝送線路を介してリムーバブルメモリデバイスからリードデータを読み出している場合に、第1伝送線路のタイムスロットを用いてリムーバブルメモリデバイスに割込信号を送信する場合に適用可能である。また、リムーバブルメモリデバイスが、ホスト端末から第1及び第2伝送線路を介してライトデータを受信して記憶している場合に、第1伝送線路のタイムスロットを用いてホスト端末に割込信号を送信する場合にも適用可能である。
発明2は、発明1において、前記第1データフラグメントには、ヘッダ情報又はフッタ情報のいずれかが付加されていることを特徴とする、信号伝送方法を提供する。
第1伝送線路の隣接する第1データフラグメントにフッタ情報を付加した場合には、タイムスロットは、データパケット間の間隔よりもヘッダ情報のビット長分の長さ分だけ長く形成される。また、第1データフラグメントにヘッダ情報を付加した場合には、タイムスロットは、データパケット間の間隔よりもフッタ情報のビット長分の長さ分だけ長く形成される。このタイムスロットを利用して割込信号を送信するため、割込信号を送信するために確保すべき別途の期間が不要であるか、または別途の期間を短くすることができる。そのため、タイムスロットを用いて割込信号を送信することによるデータの伝送効率の低下を抑制することができる。
発明3は、発明1において、前記割込信号は、前記第1データフラグメント及び前記データパケットの送信を停止するための信号であることを特徴とする、信号伝送方法を提供する。
データの伝送効率の低下を抑制しつつ、送信側からの第1データフラグメント及びデータパケットの送信を停止させることができる。
発明4は、データを複数のデータフラグメントに分割し、前記複数のデータフラグメントから第1データフラグメントを生成し、ヘッダ情報、前記第1データフラグメントと同じビット長からなる第2データフラグメント及びフッタ情報を含むデータパケットを生成するデータ生成部と、前記第1データフラグメントと前記第2データフラグメントとを同期させて、前記第1データフラグメントを少なくとも2本以上の伝送線路のうち第1伝送線路を介して、前記データパケットを前記第1伝送線路以外の第2伝送線路を介して受信側に送信するデータ送信部と、前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットにおいて、割込信号を前記受信側から受信する割込信号受信部と、を含むことを特徴とする送受信装置を提供する。
本発明は、発明1と同様の作用効果を奏する。
発明5は、発明4において、前記割込信号の受信に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含み、前記割込信号は、前記第1データフラグメント及び前記データパケットの送信を停止するための信号であり、前記データ送信部は、前記割込信号受信部が前記割込信号を受信した時に、前記第1及び第2伝送線路を介して送信している前記第1データフラグメント及び前記データパケットの送信を完了し、前記レスポンス送信部は、前記第1データフラグメント及び前記データパケットの送信完了後、前記受信側にレスポンスを送信することを特徴とする、送受信装置を提供する。
割込信号の受信時に送信されている第1データフラグメント及びデータパケットの送信を完了することで、送信中の第1データフラグメント及びデータパケットの送信が未完了となって破壊されるのを防止することができる。
発明6は、複数のデータフラグメントに分割されて伝送されるデータを送信側から受信する送受信装置であって、前記複数のデータフラグメントのうち第1データフラグメントを少なくとも2本以上の伝送線路のうち第1伝送線路を介して、ヘッダ情報、前記第1データフラグメントと同じビット長からなる第2データフラグメント及びフッタ情報を含むデータパケットを前記第1伝送線路以外の第2伝送線路を介して、前記送信側から受信するデータ受信部と、前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットの開始位置及びタイムスロット長を取得するタイムスロット取得部と、前記タイムスロット長に基づいて前記送信側を制御するための割込信号を生成する割込信号生成部と、前記タイムスロットにおいて、前記タイムスロットの開始位置に基づいて、前記割込信号を前記送信側に送信する割込信号送信部と、前記第1データフラグメントと前記第2データフラグメントとは同期して伝送されていることを特徴とする、送受信装置を提供する。
本発明は、発明1と同様の作用効果を奏する。
発明7は、発明6において、発明4に記載の送受信装置と、発明6に記載の送受信装置と、を含む通信システムを提供する。
本発明は、発明1と同様の作用効果を奏する。
発明8は、受信側と送信側とが伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、前記受信側は、クロック信号用伝送路を介して第1クロックを送信側に送信し、前記送信側は、前記伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記受信側に送信し、前記受信側は、前記送信側からの前記データフラグメントの送信を停止するために、前記第1クロックの送信側への送信を停止することを特徴とする、信号伝送方法を提供する。
送信側は、受信側から送信される第1クロックに基づいて、データフラグメントを受信側に送信している。ここで、受信側が第1クロックの供給を停止することで、送信側は受信側にデータフラグメントを送信することができない。このようにして、受信側は、送信側からのデータフラグメントの送信の停止を制御することができる。
発明9は、発明8において、前記伝送線路は少なくとも2本以上であり、前記受信側は、前記第1クロックの送信側への送信を停止した後、前記送信側を制御するための割込信号を、前記伝送線路のうち第1伝送線路を介して前記送信側に送信し、かつ前記第1伝送線路以外の第2伝送線路を介して前記送信側に第2クロックを送信し、前記送信側は、前記割込信号を前記第2クロックに基づいて受信することを特徴とする、信号伝送方法を提供する。
上記発明によれば、受信側が第1クロックの送信側への供給を停止すると、送信側からのデータフラグメントの送信が停止する。このようにして受信側がデータフラグメントの送信停止を制御し、割込信号及び第2クロックを送信側に送信する。つまり、受信側が割込信号及び第2クロックを任意の時間に送信することが可能であり、データフラグメント間に、割込信号及び第2クロックを送信するための期間を予め設ける必要が無い。そのため、データフラグメント間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。また、送信側からのデータフラグメントの送信が停止した後に、データフラグメントが伝送されていた伝送線路を介して割込信号及び第2クロックを送信する。よって、データフラグメントの損失を防止することができる。
なお、データフラグメントにフッタ情報及びヘッダ情報が付加されたデータパケットを伝送線路を介して送信しても良い。この場合にも、前述の理由によりデータパケット間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。
また、本発明は、例えば、受信側及び送信側がホスト端末及びリムーバブルメモリデバイスである場合に適用可能である。例えば、ホスト端末が伝送線路を介してリムーバブルメモリデバイスからリードデータを読み出している場合に、ホスト端末が第1クロックのリムーバブルメモリデバイスへの供給を停止する。その後、ホスト端末は、第1伝送線路を介してリムーバブルメモリデバイスに割込信号を送信し、第2伝送線路を介してリムーバブルメモリデバイスに第2クロックを送信する場合に適用可能である。
発明10は、発明9において、前記割込信号は、前記データフラグメントの送信を停止するための信号であることを特徴とする、信号伝送方法を提供する。
データの伝送効率の低下を抑制しつつ、送信側からのデータフラグメントの送信を停止させることができる。
発明11は、発明8において、前記受信側は、前記第1クロックの送信側への送信を停止した後、前記送信側を制御するために割込要求を出力し、前記送信側は、カウント値が前記第1クロックの受信によりリセットされる内部クロックを有しており、前記第1クロックの送信停止により、前記内部クロックのカウント値が所定値を超えることに基づいて前記割込要求を認識することを特徴とする、信号伝送方法を提供する。
上記発明によれば、受信側が第1クロックの送信側への供給を停止すると、送信側からのデータフラグメントの送信が停止する。このようにして受信側がデータフラグメントの送信停止を制御し、これにより送信側は割込要求を認識する。つまり、受信側は、任意の時間に送信側に割込要求を認識させることが可能であり、データフラグメント間に、割込要求を認識させるための期間を予め設ける必要が無い。そのため、データフラグメント間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。
なお、データフラグメントにフッタ情報及びヘッダ情報が付加されたデータパケットを伝送線路を介して送信しても良い。この場合にも、前述の理由によりデータパケット間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。
また、送信側の内部クロックの周波数は、第1クロックの周波数よりも低く設定されている。
また、本発明は、例えば、受信側及び送信側がホスト端末及びリムーバブルメモリデバイスである場合に適用可能である。例えば、ホスト端末が、伝送線路を介してリムーバブルメモリデバイスからリードデータを読み出している場合に、第1クロックの供給停止によりリムーバブルメモリデバイスに割込要求を認識させる場合に適用可能である。
発明12は、発明11において、前記割込要求は、前記データフラグメントの送信を停止するための要求であることを特徴とする、信号伝送方法を提供する。
データの伝送効率の低下を抑制しつつ、送信側からのデータフラグメントの送信を停止させることができる。
発明13は、データを複数に分割してデータフラグメントを生成するデータ生成部と、前記データフラグメントを受信側に送信するための第1クロックを、クロック信号用伝送路を介して前記受信側から受信する第1クロック受信部と、伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記受信側に送信するデータ送信部とを含み、前記受信側からの前記第1クロックの送信が停止され、前記データ送信部は前記データフラグメントの前記受信側への送信を停止することを特徴とする、送受信装置を提供する。
本発明は、発明8と同様の作用効果を奏する。
発明14は、発明13において、前記伝送線路は少なくとも2本以上であり、前記データ送信部は、前記少なくとも2本以上の伝送線路を介して前記データフラグメントを前記第1クロックに基づいて前記受信側に送信し、前記伝送線路のうち第2伝送線路を介して前記受信側から第2クロックを受信する第2クロック受信部と、前記第2クロックに基づいて、前記伝送線路のうち第1伝送線路を介して、前記送信側を制御するための割込信号を前記受信側から受信する割込信号受信部とを含み、前記受信側からの前記第1クロックの送信が停止された後、前記第2クロック受信部は前記第2クロックを受信し、かつ前記割込信号受信部は前記第2クロックに基づいて前記割込信号を受信することを特徴とする、送受信装置を提供する。
本発明は、発明9と同様の作用効果を奏する。
発明15は、発明14において、前記割込信号の受信に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、送受信装置を提供する。
発明16は、発明13において、前記第1クロックの受信によりリセットされる内部クロックのカウント値をカウントする内部クロックカウント部と、前記内部クロックのカウント値に基づいて、前記受信側の割込要求を認識する割込要求認識部とをさらに含み、前記割込要求認識部は、前記第1クロックの送信停止により、前記内部クロックのカウント値が所定値を超えることに基づいて前記割込要求を認識することを特徴とする、送受信装置を提供する。
本発明は、発明11と同様の作用効果を奏する。
発明17は、発明16において、前記割込要求の認識に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、送受信装置を提供する。
発明18は、複数のデータフラグメントに分割されて伝送されるデータを送信側から受信する送受信装置であって、前記送信側が前記データフラグメントの送信に用いる第1クロックを、クロック信号用伝送路を介して前記送信側に送信する第1クロック送信部と、伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記送信側から受信するデータ受信部とを含み、前記第1クロック送信部は、前記送信側からの前記データフラグメントの送信を停止するために、前記第1クロックの送信側への送信を停止することを特徴とする、送受信装置を提供する。
本発明は、発明8と同様の作用効果を奏する。
発明19は、発明18において、前記伝送線路は少なくとも2本以上であり、前記データ受信部は、前記少なくとも2本以上の伝送線路を介して前記データフラグメントを前記第1クロックに基づいて前記送信側から受信し、前記送信側を制御するための割込信号を生成する割込信号生成部と、前記伝送線路のうち第1伝送線路を介して前記送信側に前記割込信号を送信する割込信号送信部と、前記伝送線路のうち第2伝送線路を介して前記送信側に第2クロックを送信する第2クロック送信部とを含み、前記第1クロック送信部が前記第1クロックの送信側への送信を停止した後、前記割込信号送信部は、前記第1伝送線路を介して前記送信側に前記割込信号を送信し、かつ前記第2クロック送信部は、前記第2伝送線路を介して前記送信側に第2クロックを送信することを特徴とする、送受信装置を提供する。
本発明は、発明9と同様の作用効果を奏する。
発明20は、発明18において、前記第1クロックの送信を停止するように前記第1クロック送信部を制御することにより、前記送信側を制御するための割込要求を前記送信側に通知する割込要求通知部をさらに含むことを特徴とする、送受信装置を提供する。
本発明は、発明11と同様の作用効果を奏する。
発明21は、発明13に記載の送受信装置と、発明18に記載の送受信装置と、を含む通信システムを提供する。
本発明は、発明8と同様の作用効果を奏する。
発明22は、受信側と送信側とが伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、前記受信側は、前記伝送線路の隣接する前記データフラグメント間において、前記送信側を制御するための割込要求を前記送信側に通知するために、前記伝送線路の信号振幅を変化させ、前記送信側は、前記信号振幅の変化を検出することを特徴とする、信号伝送方法を提供する。
上記発明によれば、データの送信側は、伝送線路の信号振幅の変化を監視することで、受信側からの割込要求を認識することができる。ここで、受信側は、隣接するデータフラグメント間において、信号振幅を変化させて割込要求を通知する。送信側を制御するための割込信号を受信側から送信側に送信するためには、データフラグメント間には割込信号のビット長ほどの期間が必要であるが、本発明の割込要求の通知方法によればデータフラグメント間には割込信号のビット長ほどの期間を設ける必要が無い。そのため、割込要求を通知することによるデータの伝送効率の低下を抑制することができる。また、データフラグメント間は、データフラグメントが伝送されていない期間であるため、データフラグメントの損失を防止することができる。
なお、伝送線路での信号振幅を変化させる方法としては、例えば、受信側において伝送線路の終端抵抗を第1抵抗値から第2抵抗値に変化させる方法が挙げられる。
また、データフラグメントには、ヘッダ情報及び/又はフッタ情報が付加されても良い。
また、本発明は、例えば、受信側及び送信側がホスト端末及びリムーバブルメモリデバイスである場合に適用可能である。例えば、ホスト端末が、伝送線路を介してリムーバブルメモリデバイスからリードデータを読み出している場合に、データフラグメント間を用いてリムーバブルメモリデバイスに割込要求を通知する場合に適用可能である。また、リムーバブルメモリデバイスが、ホスト端末から伝送線路を介してライトデータを受信して記憶している場合に、データフラグメント間を用いてホスト端末に割込要求を通知する場合にも適用可能である。
発明23は、発明22において、前記割込要求は、前記データフラグメントの送信を停止するための要求であることを特徴とする、信号伝送方法を提供する。
データの伝送効率の低下を抑制しつつ、送信側からのデータフラグメントの送信を停止させることができる。
発明24は、データを複数に分割し、複数のデータフラグメントを生成するデータ生成部と、前記データフラグメントを伝送線路を介して受信側に送信するデータ送信部と、前記伝送線路の隣接する前記データフラグメント間において、前記伝送線路の信号振幅の変化を検出することで、前記受信側からの割込要求を認識する割込要求認識部と、を含むことを特徴とする送受信装置を提供する。
本発明は、発明22と同様の作用効果を奏する。
なお、本発明の割込要求認識部は、伝送線路の信号振幅値と、所定の参照振幅値とを比較することにより割込要求を認識する。例えば、伝送線路の信号振幅値が所定の参照振幅値よりも大きい場合は、割込要求認識部は割込要求を認識しない。一方、伝送線路の信号振幅値が所定の参照振幅値よりも小さい場合は、割込要求認識部は割込要求を認識する。
また、データ送信部は、データフラグメントの送信を所定のクロックを用いて受信側に送信している。ここで、割込要求認識部は、所定のクロックと同一周波数のクロックを用いて信号振幅の変化を検出している。
発明25は、発明24において、前記割込要求の認識に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、送受信装置を提供する。
発明26は、データを分割した複数のデータフラグメントを伝送線路を介して送信側から受信するデータ受信部と、前記伝送線路の隣接する前記データフラグメント間において、前記伝送線路の信号振幅を変化させることで、前記送信側を制御するための割込要求を前記送信側に通知する割込要求通知部と、を含むことを特徴とする、送受信装置を提供する。
本発明は、発明22と同様の作用効果を奏する。
なお、割込要求通知部は、例えば、受信側の伝送線路の終端抵抗を第1抵抗値から第2抵抗値に変化させることにより、伝送線路での信号振幅を変化させる。
発明27は、発明24に記載の送受信装置と、発明26に記載の送受信装置と、を含む通信システムを提供する。
本発明は、発明22と同様の作用効果を奏する。
本発明によれば、割込信号を送信することによるデータ伝送効率の低下を抑制することができる信号伝送方法、送受信装置及び通信システムを提供することができる。
以下、本発明の実施形態を、図面を用いて説明する。
<第1実施形態例>
(1)概要
図1は、本発明の第1実施形態例に係る通信システムの全体構成を示す説明図である。この通信システムでは、ホスト端末101である送受信装置とSD(Secure Digital)メモリカード102である送受信装置とが、伝送線路を介して接続される。伝送線路には、クロック信号用伝送線路105、制御信号用伝送線路106及びデータ信号用伝送線路107が含まれる。クロック信号用伝送線路105は、ホスト端末101及びSDメモリカード102間の通信に用いられる後述のクロックCLKHを、ホスト端末101からSDメモリカード102に伝送するために用いられる。制御信号用伝送線路106は、データの読み出し、書き込みなどに関するコマンド、後述の割込コマンド及びコマンドに対するレスポンスを、ホスト端末101及びSDメモリカード102間で送受信するために用いられる。データ信号用伝送線路107は、ホスト端末101及びSDメモリカード102間でデータを送受信するために用いられる。
図2は、リード時のデータ伝送の様子を示すタイムチャートである。本実施形態の通信システムはハンドシェイク型の通信システムであり、データの伝送の際には、まずリードコマンド(図2中、ReadCMD)やライトコマンドなどの各種コマンド及びこのコマンドに対するレスポンス(図2中、Res)がホスト端末101及びSDメモリカード102間で送受信された後、データ(図2中、DATA)の伝送が行われる。
また、本実施形態の通信システムでは、データアクセスの伝送効率を向上することを目的として、図2に示すようにデータの伝送にはデータ信号用伝送線路107だけでなく制御信号用伝送線路106も用いる。データは複数のデータフラグメントに分割されて伝送されるが、制御信号用伝送線路106を介して伝送される第1データフラグメントには、第1データフラグメントの前後にヘッダ情報及びフッタ情報が付加されていない。一方、データ信号用伝送線路107を介して伝送される第2データフラグメントは、ヘッダ情報及びフッタ情報が付加されている。つまり、データ信号用伝送線路107では、ヘッダ情報、第2データフラグメント及びフッタ情報を含むデータパケットが伝送される。第1データフラグメントのビット長は、第2データフラグメントのビット長と同一であり、第1データフラグメントと第2データフラグメントとは同期して伝送される。なお、制御信号用伝送線路106及びデータ信号用伝送線路107の伝送線路長の違いは、無視できるほど小さいものとする。
ここで、ヘッダ情報及びフッタ情報はデータフラグメントとは異なる情報である。ヘッダ情報にはデータパケットの受信タイミングの調整のための、例えば同期ビット列及びスタートビットなどの情報が含まれており、フッタ情報にはデータパケットの終了を示す、例えばエンドビットなどの情報が含まれている。なお、ヘッダ情報及びフッタ情報に含まれる情報は、これらに限定されず、その他の各種情報を含んでいても良い。また、データフラグメントには、CRC(Cyclic Redundancy Check:巡回冗長検査)ビットなど、各データフラグメントの伝送エラーを検出するための情報が含まれていても良い。
本実施形態では、制御信号用伝送線路106において隣接して伝送される送信側からの第1データフラグメント間の間隔(以下、第1タイムスロットという)を用いて、データフラグメントの受信側から送信側に割込信号(図2中、ITRPT(例えば、後述のリード割込コマンドである。))を伝送する。第1データフラグメントにはヘッダ情報及びフッタ情報が付加されていないため、第1タイムスロットは、先に伝送される第1データフラグメントと、後に伝送される第1データフラグメントと、の間隔により定義される。また、後述の基本タイムスロットは、ヘッダ情報及びフッタ情報を含む、隣接するデータパケットにおいて、先に伝送されるデータパケットと、後に伝送されるデータパケットと、の間隔により定義される。
なお、データ信号用伝送線路107は、1本に限られず複数設けられても良い。
(2)ハードウェア構成
以下に、再び図1を用いて、ホスト端末101及びSDメモリカード102のハードウェア構成について説明する。ホスト端末101及びメモリカード102は、図1に示すハードウェア構成と、後述の図3に示すCPU110の機能構成との協働により、後述する各種機能を実現する。
(2−1)ホスト端末
(a)CPU110:ホスト端末101のその他のRAM111、バッファ112、カードインターフェース部113及びI/Oバッファ等を制御する。そして、ホスト端末101でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)RAM111:SDメモリカード102との間で送受信される各種データを記憶する。
(c)バッファ112、カードインターフェース部113:SDメモリカード102から読み出されたデータのRAM111への書き込み、SDメモリカード102へ書き込まれるデータのRAM111からの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/コマンドOutput114a、データ/レスポンスInput114b、データOutput114c、データInput114d、ドライバ115a、レシーバ115b、ドライバ115c及びレシーバ115dを含み、これらが図1に示すように接続されている。
(e)ドライバ116:クロック信号用伝送線路105を介して、クロックCLKHをSDメモリカード102に送信する。
(2−2)SDメモリカード
(a)CPU130:SDメモリカード102でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)Flashメモリ131a:ホスト端末101との間で送受信される各種データを記憶する。
(c)Flashメモリインターフェース部131b、バッファ132、ホストインターフェース部133:ホスト端末101から読み出されたデータのFlashメモリ131aへの書き込み、ホスト端末101へ書き込まれるデータのFlashメモリ131aからの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/レスポンスOutput134a、データ/コマンドInput134b、データOutput134c、データInput134d、ドライバ135a、レシーバ135b、ドライバ135c及びレシーバ135dを含み、これらが図1に示すように接続されている。
(e)レシーバ136:クロックCLKHをホスト端末101から受信する。
(3)機能構成
図3は、ホスト端末101のCPU110及びSDメモリカード102のCPU130の機能構成図である。
(3−1)ホスト端末のCPUの機能構成
(a)クロック生成部、クロック送信部
クロック生成部150は、ホスト端末101とSDメモリカード102との間でデータを送受信するための基本のクロックCLKHを生成する。クロック生成部150は、CPU110の各種機能部をクロックCLKHにより制御するため、クロック送信部151、タイミング制御部152、コマンド送信部156、レスポンス受信部158、リードデータ受信部160及びライトデータ送信部162等にクロックCLKHを送信する。クロック送信部151は、クロックCLKHをクロック信号用伝送線路105を介してSDメモリカード102に送信する。
(b)タイミング制御部、第1タイムスロット取得部、パラメータ記憶部
パラメータ記憶部154は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。ここで、ヘッダ長及びフッタ長は、ビット数で定義されたヘッダ及びフッタの長さである。基本タイムスロット長とは、ビット数で定義されたデータパケット間の間隔である基本タイムスロットの長さである。
第1タイムスロット取得部153は、パラメータ記憶部154から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、第1データフラグメント間の間隔である第1タイムスロット長を算出して取得する。第1データフラグメントは、SDメモリカード102から制御信号用伝送線路106を介して連続的に伝送されている。ここで、第1タイムスロット長は、フッタ長+基本タイムスロット長+ヘッダ長により算出される。第1タイムスロット取得部153は、コマンド生成部155に第1タイムスロット長を送信する。
また、タイミング制御部152及び第1タイムスロット取得部153は、後述のリードデータ受信部160からデータ信号用伝送線路107を介してデータパケットを受信し、データパケットのヘッダ情報に含まれる第2データフラグメントのビット長を取得する。ここで、第1データフラグメントのビット長と第2データフラグメントのビット長とは同じである。第1タイムスロット取得部153は、ヘッダ長、第2(又は第1)データフラグメントのビット長及び第1タイムスロット長をクロックCLKHに基づいて順にカウントすることで、第1タイムスロットの開始位置を把握する。そして、第1タイムスロット取得部153は、第1タイムスロットの開始位置をコマンド送信部156に送信する。また、タイミング制御部152は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長をクロックCLKHに基づいて順にカウントし、カウント値をリードデータ受信部160に送信する。
なお、タイムスロットの開始位置は、タイムスロット取得部153からではなく、タイミング制御部152からのカウント値に基づいて取得しても良い。
(c)コマンド生成部、コマンド送信部
コマンド生成部155は、SDメモリカード102に記憶されている映像、音声等のリードデータを読み出すためのリードコマンド、SDメモリカード102にデータを書き込むためのライトコマンド、SDメモリカード102からのリードデータの読み出しを中止するリード割込コマンドなどの各種コマンドを生成する。
ここで、リード時には、ホスト端末101は、制御信号用伝送線路106を介して連続的に第1データフラグメントを、またデータ信号用伝送線路107を介して連続的にデータパケットを、SDメモリカード102からリードデータを受信している。リード割込コマンドは、このような場合に、隣接する第1データフラグメント間の第1タイムスロットを用いてSDメモリカード102に送信され、リードデータの送信を停止するコマンド(割込信号)である。コマンド生成部155は、例えばSDメモリカード102から送信されたリードデータのRAM111への書き込みが遅れている等、ホスト端末101の状況を判断し、リード割込コマンドを送信するか否かを判断する。コマンド生成部155は、リード割込コマンドを送信する場合には、リード割込コマンドのビット長が、第1タイムスロット長を超えないようにリード割込コマンドを生成する。
コマンド送信部156は、制御信号用伝送線路106を介して、リードコマンド及びライトコマンド等の各種コマンドをSDメモリカード102にクロックCLKHに基づいて送信する。なお、コマンド送信部156は、第1タイムスロット内でリード割込コマンドを送信可能なように、第1タイムスロットの開始位置に基づいてリード割込コマンドを送信する。
(d)レスポンス受信部
レスポンス受信部158は、ホスト端末101が送信したコマンドに対するレスポンスをSDメモリカード102から受信する。なお、レスポンス受信部158は、SDメモリカード102からライト割込レスポンス、いわゆるビジー信号を受信しているか否かを判断し、ライト割込レスポンスの受信の有無をライトデータ送信部162に通知する。
(e)リードデータ受信部、リードデータ生成部
リードデータ受信部160は、SDメモリカード102からの第1データフラグメント及びデータパケットをクロックCLKHに基づいて受信する。ここで、リードデータ受信部160は、第1データフラグメントを制御信号用伝送線路106を介して、データパケットをデータ信号用伝送線路107を介して受信している。また、リードデータ受信部160は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部152から受信している。このカウント値に基づいて、リードデータ受信部160は、第1データフラグメント及びデータパケット内の第2データフラグメントを損失することなく正確に受信することができる。なお、制御信号用伝送線路106の第1データフラグメントは、データ信号用伝送線路107のデータパケットのヘッダ情報及びフッタ情報に基づいて伝送されており、第1データフラグメントとデータパケットの第2データフラグメントとは同期している。
リードデータ生成部159は、複数の第1及び第2データフラグメントからリードデータを生成し、RAM111に記憶させる。
(f)送信データ生成部、ライトデータ送信部
送信データ生成部161は、ライトコマンドが生成されると、SDメモリカード102に書き込むためのライトデータをRAM111から読み出し、複数の第1データフラグメント及びデータパケットを生成する。第1データフラグメントはヘッダ情報及びフッタ情報を付加せずに生成する。一方、データパケットは、ヘッダ情報、第2データフラグメント及びフッタ情報を含むように生成する。また、同期して伝送される第1データフラグメントと第2データフラグメントとのビット長は同一とする。
ライトデータ送信部162は、クロックCLKHに基づいて、第1データフラグメントを制御信号用伝送線路106を介してSDメモリカード102送信し、データパケットをデータ信号用伝送線路107を介してSDメモリカード102に送信する。なお、ライトデータ送信部162は、制御信号用伝送線路106の第1データフラグメントを、データ信号用伝送線路107のデータパケットのヘッダ情報及びフッタ情報に基づいて送信する。よって、第1データフラグメントとデータパケットの第2データフラグメントとは同期している。
また、ライトデータ送信部162は、レスポンス受信部158からライト割込レスポンスの受信の有無を受け取る。ライト割込レスポンスを受信している場合は、ライトデータ送信部162は、第1データフラグメント及びデータパケットの送信を停止する。一方、ライト割込レスポンスを受信していない場合は第1データフラグメント及びデータパケットの送信を継続し、ライト割込レスポンスが解除された場合はこれらの送信を再開する。
ここで、ライトデータ送信部162は、レスポンス受信部158がライト割込レスポンスを受信している時に第1データフラグメント及びデータパケットを送信している場合には、これらの第1データフラグメント及びデータパケットの送信を完了する。このようにライト割込レスポンスの受信時に送信されている第1データフラグメント及びデータパケットの送信を完了することで、送信中の第1データフラグメント及びデータパケットの送信が未完了となって破壊されるのを防止することができる。
(3−2)SDメモリカードのCPUの機能構成
(a)クロック受信部
クロック受信部170は、ホスト端末101からクロックCLKHを受信する。なお、ホスト端末101からSDメモリカード102への送信の際の遅延により、クロックCLKHはカードクロックCLKSに変化している。クロック受信部170は、タイミング制御部172、コマンド受信部177、レスポンス送信部178、リードデータ送信部179及びライトデータ受信部181等にカードクロックCLKSを送信する。
(b)タイミング制御部、第1タイムスロット取得部、パラメータ記憶部
パラメータ記憶部174は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。
第1タイムスロット取得部173は、パラメータ記憶部174から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、隣接する第1データフラグメント間の間隔である第1タイムスロット長を算出して取得する。第1タイムスロット取得部173は、レスポンス生成部175に第1タイムスロット長を送信する。
また、タイミング制御部172及び第1タイムスロット取得部173は、後述のライトデータ受信部181からデータパケットを受信し、データパケットのヘッダ情報に含まれる第2データフラグメントのビット長を取得する。第1タイムスロット取得部173は、ヘッダ長、第2(又は第1)データフラグメントのビット長及び第1タイムスロット長をカードクロックCLKSに基づいて順にカウントし、第1タイムスロットの開始位置を取得する。そして、第1タイムスロット取得部173は、第1タイムスロットの開始位置をレスポンス送信部178に送信する。なお、同期して伝送される第1データフラグメントと第2データフラグメントとのビット長は同一である。
また、タイミング制御部172は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長をカードクロックCLKSに基づいて順にカウントし、カウント値をライトデータ受信部181に送信する。
(c)コマンド受信部
コマンド受信部177は、制御信号用伝送線路106を介して、リード割込コマンドを含む各種コマンドをカードクロックCLKSに基づいてホスト端末101から受信する。
(d)レスポンス生成部、レスポンス送信部
レスポンス生成部175は、ホスト端末101からの各種コマンドに対するレスポンスを生成する。また、レスポンス生成部175は、ライトデータの書き込みを中止するライト割込レスポンスの生成も行う。
ここで、ライト時には、SDメモリカード102は、ホスト端末101から制御信号用伝送線路106を介して連続的に第1データフラグメントを受信し、ライトデータを受信している。ライト割込レスポンスは、このような場合に、隣接する第1データフラグメント間の第1タイムスロットを用いてホスト端末101に送信され、ライトデータの送信を停止するレスポンス(割込信号)である。レスポンス生成部175は、例えばホスト端末101から送信されたライトデータのFlashメモリ131aへの書き込みが遅れている等、SDメモリカード102の状況を判断し、ライト割込レスポンスを送信するか否かを判断する。レスポンス生成部175は、ライト割込レスポンスを送信する場合には、ライト割込レスポンスのビット長が、第1タイムスロット長を超えないようにライト割込レスポンスを生成する。
レスポンス送信部178は、コマンド受信部177がホスト端末101から各種コマンドを受信すると、制御信号用伝送線路106を介してホスト端末101にレスポンスを送信する。また、レスポンス送信部178は、ライト割込レスポンスについては、第1タイムスロット内でライト割込レスポンスを送信可能なように、第1タイムスロットの開始位置に基づいて送信する。なお、ライト割込レスポンスは、ライトデータのFlashメモリ131aへの書き込みが可能になるまで生成され、ホスト端末101に送信される。
なお、後述の通り、リード割込コマンドを受信している際に、リードデータ送信部179が第1データフラグメント及びデータパケットをホスト端末101に送信している場合には、レスポンス送信部178は、これらの送信完了後にレスポンスをホスト端末101に送信する。
(e)ライトデータ受信部、ライトデータ生成部
ライトデータ受信部181は、ホスト端末101からの第1データフラグメント及びデータパケットをカードクロックCLKSに基づいて受信する。ここで、ライトデータ受信部181は、第1データフラグメントを制御信号用伝送線路106を介して、データパケットをデータ信号用伝送線路107を介して受信している。また、ライトデータ受信部181は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部172から受信している。このカウント値に基づいて、ライトデータ受信部181は、第1データフラグメント及びデータパケット内の第2データフラグメントを損失することなく正確に受信することができる。なお、第1データフラグメントは、データパケットのヘッダ情報及びフッタ情報に基づいて伝送されており、第1データフラグメントとデータパケットの第2データフラグメントとは同期している。
ライトデータ生成部182は、複数の第1及び第2データフラグメントからライトデータを生成し、Flashメモリ131aに記憶させる。
(f)送信データ生成部、リードデータ送信部
送信データ生成部180は、コマンド受信部177がホスト端末101からリードコマンドを受信すると、ホスト端末101に送信するためのリードデータをFlashメモリ131aから読み出し、複数の第1データフラグメント及びデータパケットを生成する。データパケットは、ヘッダ情報、第2データフラグメント及びフッタ情報を含んで生成される。また、同期して伝送される第1データフラグメント及び第2データフラグメントのビット数は同じである。
リードデータ送信部179は、カードクロックCLKSに基づいて、第1データフラグメントを制御信号用伝送線路106を介してホスト端末101送信し、データパケットをデータ信号用伝送線路107を介してホスト端末101に送信する。なお、リードデータ送信部179は、第1データフラグメントを、データパケットのヘッダ情報及びフッタ情報に基づいて送信する。よって、第1データフラグメントとデータパケットの第2データフラグメントとは同期している。
また、リードデータ送信部179は、リード割込コマンドの受信時に第1データフラグメント及びデータパケットを送信している場合には、これらの第1データフラグメント及びデータパケットの送信を完了する。このようにリード割込コマンドの受信時に送信されている第1データフラグメント及びデータパケットの送信を完了することで、送信中の第1データフラグメント及びデータパケットの送信が未完了となって破壊されるのを防止することができる。
(4)処理の流れ
以下に説明する処理においては、ホスト端末101からSDメモリカード102にクロックCLKHが送信されている。
(4−1)リード時
図4は、本実施形態の通信システムにおける、リード時の処理の流れの一例を示すフローチャートである。
ステップS1、S2:ホスト端末101のコマンド生成部155は、SDメモリカード102からリードデータを読み出すためのリードコマンドを生成する。ホスト端末101のコマンド送信部156は、リードコマンドを制御信号用伝送線路106を介してSDメモリカード102に送信する(ステップS1)。SDメモリカード102のコマンド受信部177はリードコマンドを受信する(ステップS2)。
ステップS3、S4:SDメモリカード102のレスポンス送信部178は、リードコマンドに対するレスポンスを、制御信号用伝送線路106を介してホスト端末101に送信する(ステップS3)。ホスト端末101のレスポンス受信部158はレスポンスを受信する(ステップS4)。
ステップS5、S6:SDメモリカード102の送信データ生成部180は、リードコマンドの受信に応じて、Flashメモリ131aからリードデータを読み出して第1データフラグメント及びデータパケットを生成する。SDメモリカード102のリードデータ送信部179は、第1データフラグメントを制御信号用伝送線路106を介してホスト端末101に送信し、データパケットをデータ信号用伝送線路107を介してホスト端末101に送信する(ステップS5)。ホスト端末101のリードデータ受信部160は、SDメモリカード102から第1データフラグメント及びデータパケットを受信する(ステップS6)。このとき、ホスト端末101のタイミング制御部152は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をリードデータ受信部160に送信している。
その後、リードデータ生成部159は、第1及び第2データフラグメントからリードデータを生成し、RAM111に記憶させる。
ステップS7、S8:ホスト端末101のコマンド生成部155は、リード割込コマンドの送信を行うか否かを判断し、送信する場合(Yes)にはリード割込コマンドを生成する(ステップS7)。このとき、ホスト端末101の第1タイムスロット取得部153は、ヘッダ長、フッタ長及び基本タイムスロット長に基づいて第1タイムスロット長を算出している。ホスト端末101のコマンド生成部155は、第1タイムスロット長を超えないようにリード割込コマンドを生成する(ステップS8)。リード割込コマンドの送信を行わない場合(No)には、ホスト端末101のリードデータ受信部160はさらに第1データフラグメント及びデータパケットを受信する。
ステップS9:ホスト端末101の第1タイムスロット取得部153は、ヘッダ長、第2(又は第1)データフラグメントのビット長及び第1タイムスロット長をクロックCLKHに基づいて順にカウントし、第1タイムスロットの開始位置を取得する。
ステップS10、S11:ホスト端末101のコマンド送信部156は、制御信号用伝送線路106を介して、第1タイムスロットの開始位置に基づき、リード割込コマンドをSDメモリカード102に送信する(ステップS10)。SDメモリカード102のコマンド受信部177は、ホスト端末101からリード割込コマンドを受信する(ステップS11)。
ステップS12、S13:SDメモリカード102のレスポンス送信部178は、制御信号用伝送線路106を介して、リード割込コマンドに対するレスポンスをホスト端末101に送信する(ステップS12)。なお、リード割込コマンドの受信の際にリードデータ送信部179が第1データフラグメント及びデータパケットを送信している場合には、これらの送信を完了後、レスポンス送信部178はレスポンスを送信する。
ホスト端末101のレスポンス受信部158は、SDメモリカード102からレスポンスを受信する(ステップS13)。
ステップS14:SDメモリカード102のリードデータ送信部179は、第1データフラグメント及びデータパケットの送信を停止する。
その後、ホスト端末101からSDメモリカード102にリードコマンドが再び送信されると、SDメモリカード102は制御信号用伝送線路106及びデータ信号用伝送線路107を介して第1データフラグメント及びデータパケットの送信を再開する。
(4−2)ライト時
図5は、本実施形態の通信システムにおける、ライト時の処理の流れの一例を示すフローチャートである。
ステップS21:ホスト端末101のコマンド生成部155及びコマンド送信部156は、SDメモリカード102にライトデータを書き込むためのライトコマンドを生成し、送信する(ステップS21)。SDメモリカード102のコマンド受信部177はライトコマンドを受信する(ステップS22)。
ステップS23:SDメモリカード102のレスポンス送信部178及びホスト端末101のレスポンス受信部158は、ライトコマンドに対するレスポンスを送受信する。
ステップS25、S26:ホスト端末101の送信データ生成部161及びライトデータ送信部162は、ライトコマンドの受信に応じて、RAM111からライトデータを読み出して第1データフラグメント及びデータパケットを生成し、SDメモリカード102に送信する(ステップS25)。SDメモリカード102のライトデータ受信部181は、ホスト端末101から第1データフラグメント及びデータパケットを受信する(ステップS26)。このとき、SDメモリカード102のタイミング制御部172は、ヘッダ長、第2(又は第1)データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をライトデータ受信部181に送信している。
その後、ライトデータ生成部182は、第1データフラグメント及びデータパケットからライトデータを生成し、Flashメモリ131aに記憶させる。
ステップS27、S28:SDメモリカード102のレスポンス生成部175は、ライト割込レスポンスの送信を行うか否かを判断し、送信する場合(Yes)にはライト割込レスポンスを生成する(ステップS27)。このとき、SDメモリカード102の第1タイムスロット取得部173は、ヘッダ長、フッタ長及び基本タイムスロット長に基づいて第1タイムスロット長を算出している。SDメモリカード102のレスポンス生成部175は、第1タイムスロット長を超えないようにライト割込レスポンスを生成する(ステップS28)。ライト割込レスポンスの送信を行わない場合(No)には、SDメモリカード102のライトデータ受信部181はさらに第1データフラグメント及びデータパケットを受信する。
ステップS29:SDメモリカード102の第1タイムスロット取得部173は、ヘッダ長、第2(又は第1)データフラグメントのビット長及び第1タイムスロット長をカードクロックCLKSに基づいて順にカウントし、第1タイムスロットの開始位置を取得する。
ステップS30:SDメモリカード102のレスポンス送信部178は、制御信号用伝送線路106を介して、第1タイムスロットの開始位置に基づき、ライト割込レスポンスをホスト端末101に送信する(ステップS30)。
ステップS31、S32:ホスト端末101のレスポンス受信部158は、SDメモリカード102からライト割込レスポンス、いわゆるビジー信号を受信しているか否かを判断する(ステップS31)。ライト割込レスポンスを受信していない場合(No)は、ステップS25にて、ライトデータ送信部162は、第1データフラグメント及びデータパケットを生成及び送信を行う。
一方、ライト割込レスポンスを受信している場合(Yes)は、ホスト端末101のライトデータ送信部162は、制御信号用伝送線路106及びデータ信号用伝送線路107を介した第1データフラグメント及びデータパケットの送信を停止する(ステップS32)。そして、ライト割込レスポンスの受信が解除されると、ライトデータ送信部162は、ステップS25にて、第1データフラグメント及びデータパケットを生成及び送信を再開する。
(5)作用効果
本発明において、制御信号用伝送線路106の第1データフラグメントは、ヘッダ情報及びフッタ情報が付加されていない。送信側は、データ信号用伝送線路107のデータパケットのヘッダ情報及びフッタ情報を用い、第1データフラグメントとデータパケットの第2データフラグメントとを同期させて受信側に送信する。このとき、制御信号用伝送線路106の隣接する第1データフラグメント間の第1タイムスロットは、データ信号用伝送線路107のデータパケット間の間隔よりも、フッタ情報及びヘッダ情報のビット長分の長さ分だけ長く形成される。本発明では、この第1タイムスロットを利用してリード割込コマンドやライト割込レスポンスなどの割込信号を送信する。そのため、リード割込コマンドやライト割込レスポンス等を送信するために確保すべき別途の期間が不要であるか、または別途の期間を短くすることができる。よって、第1タイムスロットを用いて割込信号を送信することによるデータの伝送効率の低下を抑制することができる。また、第1タイムスロットはデータフラグメントが伝送されていない期間であるため、データフラグメントの損失を防止することができる。
(6)変形例
(6−1)
上記では、制御信号用伝送線路106を伝送する第1データフラグメントにはヘッダ情報及びフッタ情報がともに付加されていない。しかし、ヘッダ情報又はフッタ情報のいずれかを第1データフラグメントに付加しても良い。例えば、第1データフラグメントの前にヘッダ情報が付加されると、第1タイムスロットは、先に伝送される第1データフラグメントと、後に伝送される第1データフラグメントのヘッダ情報と、の間隔によって定義される。あるいは、第1データフラグメントの後にフッタ情報が付加されると、第1タイムスロットは、先に伝送される第1データフラグメントのフッタ情報と、後に伝送される第1データフラグメントと、の間隔によって定義される。このような第1タイムスロットを用いることで、ヘッダ長又はフッタ長分だけ余分にタイムスロットを確保することができ、伝送効率の低下を抑制することができる。
(6−2)
SDメモリカード102では、データは8ビット単位で処理を行っている。よって、フッタ長+基本タイムスロット長+ヘッダ長により算出される上記の第1タイムスロット長は、8の倍数であるのが好ましい。
(6−3)
送信側からのデータの伝送が終了し、受信側がコマンドを正常に送信側に出力できる状態になるまでには、例えば数クロック分の切替時間t1が必要となる。また、受信側からの割込信号の送信が終了し、送信側が再びデータの伝送を開始できる状態になるまでには、例えば数クロック分の切替時間t2が必要となる。よって、第1タイムスロット長は、この切替時間t1及びt2を含むビット長であるのが好ましい。つまり、第1データフラグメント間の間隔である第1タイムスロット長は、データパケットのフッタ長+切替時間t1のビット数+コマンドのビット数+切替時間t2+データパケットのヘッダ長により算出される。また、前記のように表される第1タイムスロット長もまた、8の倍数であるのが好ましい。
(6−4)
上記では、送信側からデータを受信しているときに、受信側がリード割込コマンド又はライト割込レスポンスを送信側に送信する場合について説明した。本実施形態は、その他、送信側からデータを受信しているときに、送信を一定期間遅らせたり、データの再送を指示したりする各種信号を送信側に送信する場合にも適用可能である。
(6−5)
上記では、データパケットは、ヘッダ情報、データパケット及びフッタ情報を順に含むように形成されているが、これらの順序は前記に限定されない。
(6−6)
上記では、本実施形態は、制御用信号伝送線路及びデータ信号用伝送線路を有する通信システムについて説明した。しかし、制御信号用伝送線路を有さず、データ信号用伝送線路のみを有する通信システムにおいても本実施形態を適用可能である。例えば、データ信号用伝送線路のいずれかにおいて、ヘッダ情報及びフッタ情報が付加されていない第1データフラグメントを送信する。そして、そのデータ信号用伝送線路を隣接して伝送する第1データフラグメント間を用いて、リード割込コマンド及びライト割込レスポンス等を送信する。
(6−7)
上記では、ヘッダ長、フッタ長及び基本タイムスロット長が通信規格として定められているとした。しかし、例えばSDメモリカード毎にヘッダ長、フッタ長及び基本タイムスロット長が異なり、ホスト端末101とSDメモリカード102との通信開始時に、これらの情報を相互に取得するようにしても良い。
(6−8)
制御信号用伝送線路106及びデータ信号用伝送線路107は、一対の2本の差動伝送線路であっても良い。
(6−9)
上記では、各データフラグメントのビット長がヘッダ情報に記載されている構成を説明した。しかし、各データフラグメントのビット長が通信規格により固定されていても良い。この場合には、パラメータ記憶部にデータフラグメントのビット長を格納しておけば良く、第2データパケットのヘッダ長から随時、データフラグメントのビット長を取得する必要は無い。
(6−10)
割込信号の送信により即座にデータの伝送が中止されるのが好ましいため、割込信号は1個の第1タイムスロットを用いて送信されるのが好ましい。しかし、例えば割込信号のビット長が第1タイムスロット長を超える場合は、割込信号を複数に分割し、複数の第1タイムスロットを用いて送信しても良い。
(6−11)
上記では、リムーバブルメモリデバイスであるSDメモリカードを例に挙げて説明したが、ホスト端末から供給されたクロックでリードデータをホスト端末に送信するような携帯可能なリムーバブルメモリデバイスであれば、本発明を適用可能な範囲はSDメモリカードに限定されない。例えば、その他、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード、メモリースティック等が挙げられる。また、リムーバブルメモリデバイスが搭載可能なメモリは、フラッシュメモリに限定されず、MRAM、 FeRAM等の不揮発性メモリが挙げられる。
(6−12)
前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blue−ray Disc)、半導体メモリを挙げることができる。
前記コンピュータプログラムは、前記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
<第2実施形態例>
図6、図7は、本発明の第2実施形態例の第1実施例及び第2実施例に係る通信システムの全体構成図である。この通信システムでは、ホスト端末201である送受信装置とSD(Secure Digital)メモリカード202である送受信装置とが、伝送線路を介して接続される。伝送線路には、クロック信号用伝送線路205、制御信号用伝送線路206及びデータ信号用伝送線路207が含まれる。クロック信号用伝送線路205は、ホスト端末201及びSDメモリカード202間の通信に用いられる後述の第1クロックCLKH1等を、ホスト端末201からSDメモリカード202に伝送するために用いられる。制御信号用伝送線路206は、データの読み出し、書き込みなどに関するコマンド及びコマンドに対するレスポンスを、ホスト端末201及びSDメモリカード202間で送受信するために用いられる。データ信号用伝送線路207は、ホスト端末201及びSDメモリカード202間でデータを送受信するために用いられる。
図8は、リード時のデータ伝送の様子を示すタイムチャートである。本実施形態の通信システムはハンドシェイク型の通信システムであり、データの伝送の際には、まずリードコマンド(図8中、ReadCMD)やライトコマンドなどの各種コマンド、割込コマンド及びコマンドに対するレスポンス(図8中、Res)がホスト端末201及びSDメモリカード202間で送受信された後、データ(図8中、DATA)の伝送が行われる。
また、本実施形態の通信システムでは、データアクセスの伝送効率を向上することを目的として、図8に示すようにデータの伝送にはデータ信号用伝送線路207だけでなく制御信号用伝送線路206も用いる。データは複数のデータフラグメントに分割されて伝送されており、制御信号用伝送線路206及びデータ信号用伝送線路207を介して伝送されるデータフラグメントには、ヘッダ情報及びフッタ情報が付加されている。つまり、制御信号用伝送線路206及びデータ信号用伝送線路207では、ヘッダ情報、データフラグメント及びフッタ情報を含むデータパケットが伝送される。また、全てのデータパケットは同じビット長により構成されている。
ここで、ヘッダ情報及びフッタ情報はデータフラグメントとは異なる情報である。ヘッダ情報にはデータパケットの受信タイミングの調整のための、例えば同期ビット列及びスタートビットなどの情報が含まれており、フッタ情報にはデータパケットの終了を示す、例えばエンドビットなどの情報が含まれている。なお、ヘッダ情報及びフッタ情報に含まれる情報は、これらに限定されず、その他の各種情報を含んでいても良い。また、データフラグメントには、CRC(Cyclic Redundancy Check:巡回冗長検査)ビットなど、各データフラグメントの伝送エラーを検出するための情報が含まれていても良い。
本実施形態では、受信側は、クロック信号用伝送線路を介して第1クロックCLKH1を送信側に送信している。また、送信側は、第1クロックCLKH1に基づいて受信側にデータパケットを送信している。このとき、受信側は、送信側からのデータパケットの送信を停止するために、第1クロックCLKH1の送信側への送信を停止する。よって、送信側は受信側にデータパケットを送信することができない。このようにして、受信側は、送信側からのデータパケットの送信の停止を制御することができる。
なお、データ信号用伝送線路207は、1本に限られず複数設けられても良い。
以下に、本実施形態の一例として、第1実施例及び第2実施例を以下に説明する。
(第1実施例)
(1)概要
図9は、第1実施例におけるリード時のデータ伝送の様子を示すタイムチャートである。第1実施例では、ホスト端末201が、第1クロックCLKH1の送信を停止する(図9の期間A(停止タイムスロット)を参照)。これにより、SDメモリカード202からのデータパケットの送信が停止している。その後、制御信号用伝送線路206を介して、ホスト端末201からSDメモリカード202に割込信号(図9中、ITRPT(例えば、後述のリード割込コマンドである。))を送信する。また、データ信号用伝送線路207を介して、第1クロックCLKH1とは異なる第2クロックCLKH2をSDメモリカード202に送信する。SDメモリカード202は、第2クロックCLKH2に基づいて割込コマンドを受信する。
(2)ハードウェア構成
以下に、再び図6を用いて、ホスト端末201及びSDメモリカード202のハードウェア構成について説明する。ホスト端末201及びSDメモリカード202は、図6に示すハードウェア構成と、後述の図10に示すCPU210の機能構成との協働により、後述する各種機能を実現する。
(2−1)ホスト端末
(a)CPU210:ホスト端末201のその他のRAM211、バッファ212、カードインターフェース部213及びI/Oバッファ等を制御する。そして、ホスト端末201でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)RAM211:SDメモリカード202との間で送受信される各種データを記憶する。
(c)バッファ212、カードインターフェース部213:SDメモリカード202から読み出されたデータのRAM211への書き込み、SDメモリカード202へ書き込まれるデータのRAM211からの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/コマンドOutput214a、データ/レスポンスInput214b、データOutput214c、データInput214d、ドライバ215a、レシーバ215b、ドライバ215c及びレシーバ215dを含み、これらが図6に示すように接続されている。なお、ドライバ215cは、データ信号用伝送線路207を介して第2クロックCLKH2をSDメモリカード202に送信する。
(e)ドライバ216:クロック信号用伝送線路205を介して、クロックCLKH1をSDメモリカード202に送信する。
(2−2)SDメモリカード
(a)CPU230:SDメモリカード202でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)Flashメモリ231a:ホスト端末201との間で送受信される各種データを記憶する。
(c)Flashメモリインターフェース部231b、バッファ232、ホストインターフェース部233:ホスト端末201から読み出されたデータのFlashメモリ231aへの書き込み、ホスト端末201へ書き込まれるデータのFlashメモリ231aからの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/レスポンスOutput234a、データ/コマンドInput234b、データOutput234c、データInput234d、ドライバ235a、レシーバ235b、ドライバ235c及びレシーバ235dを含み、これらが図6示すように接続されている。なお、レシーバ235dは、データ信号用伝送線路207を介して第2クロックCLKH2をホスト端末201から受信する。
(e)レシーバ236:第1クロックCLKH1をホスト端末201から受信する。
(f)割込記憶回路237:SDメモリカード202の割込記憶回路237は、制御信号用伝送線路206から入力を受けるレシーバ235bの出力ライン235blと、データ信号用伝送線路207から入力を受けるレシーバ235dの出力ライン235dlとに接続されている。さらに、割込記憶回路237は、CPU230から割込記憶回路Enable信号が入力され、割込検出信号をCPU230に出力する。ここで、制御信号用伝送線路206及びデータ信号用伝送線路207を隣接して伝送するデータパケットにおいて、先に伝送されるデータパケットと、後に伝送されるデータパケットと、の間隔を基本タイムスロットと言うものとする(図9参照)。また、第1クロックCLKH1の供給が停止されている期間を停止タイムスロットと言うものとする(図9参照)。停止タイムスロットでは、第1クロックCLKH1の供給が無いため、SDメモリカード202からホスト端末201へのデータパケットの送信が停止している。割込記憶回路Enable信号は、基本タイムスロット及び停止タイムスロットにおいてのみ活性化される。よって、割込記憶回路237は、割込記憶回路Enable信号の入力を受けて、基本タイムスロット及び停止タイムスロットにおいてのみ動作可能である。
第1クロックCLKH1の供給が停止することで、ホスト端末201へのデータパケットの送信が停止する。その後、図9に示すように、停止タイムスロット(図9中、期間A)において、割込記憶回路237は、ホスト端末201から、データ信号用伝送線路207を介して第2クロックCLKH2の入力を受け、かつ制御信号用伝送線路206を介して割込コマンド(図9中、ITRPT)の入力を受ける。割込記憶回路237は、第2クロックCLKH2をトリガとして割込コマンドをラッチし、割込検出信号をCPU230に出力する。なお、ホスト端末201からSDメモリカード202への送信の際の遅延により、第2クロックCLKH2は第2カードクロックCLKS2に変化している。よって、実際には、割込記憶回路237は、第2カードクロックCLKS2に基づいて割込コマンドを受信する。
(3)機能構成
図10は、ホスト端末201のCPU210及びSDメモリカード202のCPU230の機能構成図である。
(3−1)ホスト端末のCPUの機能構成
(a)第1クロック生成部、第1クロック送信部
第1クロック生成部250aは、ホスト端末201とSDメモリカード202との間でデータを送受信するための基本の第1クロックCLKH1を生成する。第1クロック生成部250aは、CPU210の各種機能部を第1クロックCLKH1により制御するため、第1クロック送信部251a、タイミング制御部252、コマンド送信部256、レスポンス受信部258、リードデータ受信部260及びライトデータ送信部262等に第1クロックCLKH1を送信する。第1クロック送信部251aは、第1クロックCLKH1をクロック信号用伝送線路205を介してSDメモリカード202に送信する。
また、第1クロック送信部251aは、コマンド生成部255の制御により第1クロックCLKH1のSDメモリカード202への送信を停止する。
(b)第2クロック生成部、第2クロック送信部
第2クロック生成部250bは、第1クロックCLKH1とは異なる第2クロックCLKH2を生成する。第2クロック送信部251bは、コマンド生成部255の制御に基づいて第2クロックCLKH2を、データ信号用伝送線路207を介してSDメモリカード202に送信する。
)タイミング制御部、パラメータ記憶部
パラメータ記憶部254は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。ここで、ヘッダ長及びフッタ長は、ビット数で定義されたヘッダ及びフッタの長さである。基本タイムスロット長とは、ビット数で定義されたデータパケット間の間隔である基本タイムスロットの長さである。
タイミング制御部252は、後述のリードデータ受信部260からデータパケットを受信し、データパケットのヘッダ情報に含まれるデータフラグメントのビット長を取得する。タイミング制御部252は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を第1クロックCLKH1に基づいて順にカウントし、カウント値をリードデータ受信部260に送信する。
(d)コマンド生成部、コマンド送信部
コマンド生成部255は、SDメモリカード202に記憶されている映像、音声等のリードデータを読み出すためのリードコマンド、SDメモリカード202にデータを書き込むためのライトコマンド、SDメモリカード202からのリードデータの読み出しを中止するリード割込コマンドなどの各種コマンドを生成する。コマンド送信部256は、制御信号用伝送線路206を介して、リードコマンド及びライトコマンド等の各種コマンドをSDメモリカード202に第1クロックCLKH1に基づいて送信する。
ここで、リード時には、ホスト端末201は、SDメモリカード202から制御信号用伝送線路206及びデータ信号用伝送線路207を介して連続的にデータフラグメントを受信し、リードデータを受信している。リード割込コマンドは、このような場合に、SDメモリカード202に送信され、リードデータの送信を停止するコマンド(割込信号)である。コマンド生成部255は、例えばSDメモリカード202から送信されたリードデータのRAM211への書き込みが遅れている等、ホスト端末201の状況を判断し、リード割込コマンドを送信するか否かを判断する。そして、コマンド生成部255は、リード割込コマンドの送信が必要と判断すると、第1クロックCLKH1のSDメモリカード202への送信を停止するように第1クロック送信部251aを制御し、第2クロックCLKH2のSDメモリカード202への送信を開始するように第2クロック送信部251bを制御する。また、第1クロックCLKH1の送信が停止した後、コマンド送信部256は制御信号用伝送線路206を介してリード割込コマンドをSDメモリカード202に送信する。
(e)レスポンス受信部
レスポンス受信部258は、ホスト端末201が送信したコマンドに対するレスポンスをSDメモリカード202から受信する。
(f)リードデータ受信部、リードデータ生成部
リードデータ受信部260は、制御信号用伝送線路206及びデータ信号用伝送線路207を介して、SDメモリカード202からデータパケットを第1クロックCLKH1に基づいて受信する。また、リードデータ受信部260は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部252から受信している。このカウント値に基づいて、リードデータ受信部260は、データパケット内のデータフラグメントを損失することなく正確に受信することができる。
リードデータ生成部259は、データパケット内のデータフラグメントからリードデータを生成し、RAM211に記憶させる。
(g)送信データ生成部、ライトデータ送信部
送信データ生成部261は、ライトコマンドが生成されると、SDメモリカード202に書き込むためのライトデータをRAM211から読み出し、ヘッダ情報、データフラグメント及びフッタ情報を含む複数のデータパケットを生成する。
ライトデータ送信部262は、第1クロックCLKH1に基づいて、制御信号用伝送線路206及びデータ信号用伝送線路207を介して、データパケットをSDメモリカード202に送信する。
(3−2)SDメモリカードのCPUの機能構成
(a)第1クロック受信部、第2クロック受信部
第1クロック受信部270aは、クロック信号用伝送線路205を介してホスト端末201から第1クロックCLKH1を受信する。第2クロック受信部270bは、データ信号用伝送線路207を介してホスト端末201から第2クロックCLKH2を受信する。なお、ホスト端末201からSDメモリカード202への送信の際の遅延により、第1クロックCLKH1は第1カードクロックCLKS1に、第2クロックCLKH2は第2カードクロックCLKS2に変化している。第1クロック受信部270aは、タイミング制御部272、コマンド受信部277、レスポンス送信部278、リードデータ送信部279及びライトデータ受信部281等に第1カードクロックCLKS1を送信する。第2クロック受信部270bは、コマンド受信部277に第2カードクロックCLKS2を送信する。
(b)タイミング制御部、パラメータ記憶部
パラメータ記憶部274は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。
タイミング制御部272は、後述のライトデータ受信部281からデータパケットを受信し、データパケットのヘッダ情報に含まれるデータフラグメントのビット長を取得する。タイミング制御部272は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を第1カードクロックCLKS1に基づいて順にカウントし、カウント値をライトデータ受信部281に送信する。
(c)コマンド受信部
コマンド受信部277は、制御信号用伝送線路206を介して各種コマンドを第1カードクロックCLKS1に基づいてホスト端末201から受信する。また、コマンド受信部277は、リード割込コマンドを第2カードクロックCLKS2に基づいて受信する。
(d)レスポンス生成部、レスポンス送信部
レスポンス生成部275は、ホスト端末201からの各種コマンドに対するレスポンスを生成する。
レスポンス送信部278は、コマンド受信部277がホスト端末201から各種コマンドを受信すると、制御信号用伝送線路206を介してホスト端末201にレスポンスを送信する。
(e)ライトデータ受信部、ライトデータ生成部
ライトデータ受信部281は、制御信号用伝送線路206及びデータ信号用伝送線路207を介して、ホスト端末201からのデータパケットを第1カードクロックCLKS1に基づいて受信する。また、ライトデータ受信部281は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部272から受信している。このカウント値に基づいて、ライトデータ受信部281は、データパケット内のデータフラグメントを損失することなく正確に受信することができる。
ライトデータ生成部282は、複数のデータフラグメントからライトデータを生成し、Flashメモリ231aに記憶させる。
(f)送信データ生成部、リードデータ送信部
送信データ生成部280は、コマンド受信部277がホスト端末201からリードコマンドを受信すると、ホスト端末201に送信するためのリードデータをFlashメモリ231aから読み出し、複数のデータパケットを生成する。データパケットは、ヘッダ情報、データフラグメント及びフッタ情報を含んで生成される。
リードデータ送信部279は、第1カードクロックCLKS1に基づいて、データパケットを制御信号用伝送線路206及びデータ信号用伝送線路207を介してホスト端末201に送信する。
(4)処理の流れ
以下に説明する処理を開始するにあたって、ホスト端末201からSDメモリカード202に第1クロックCLKH1が送信されている。
(4−1)リード時
図11は、第1実施例の通信システムにおける、リード時の処理の流れの一例を示すフローチャートである。
ステップS1、S2:ホスト端末201のコマンド生成部255は、SDメモリカード202からリードデータを読み出すためのリードコマンドを生成する。ホスト端末201のコマンド送信部256は、リードコマンドを制御信号用伝送線路206を介してSDメモリカード202に送信する(ステップS1)。SDメモリカード202のコマンド受信部277はリードコマンドを受信する(ステップS2)。
ステップS3、S4:SDメモリカード202のレスポンス送信部278は、リードコマンドに対するレスポンスを、制御信号用伝送線路206を介してホスト端末201に送信する(ステップS3)。ホスト端末201のレスポンス受信部258はレスポンスを受信する(ステップS4)。
ステップS5、S6:SDメモリカード202の送信データ生成部280は、リードコマンドの受信に応じて、Flashメモリ231aからリードデータを読み出してデータパケットを生成する。SDメモリカード202のリードデータ送信部279は、制御信号用伝送線路206及びデータ信号用伝送線路207を介してデータパケットをホスト端末201に送信する(ステップS5)。ホスト端末201のリードデータ受信部260は、SDメモリカード202からデータパケットを受信する(ステップS6)。このとき、ホスト端末201のタイミング制御部252は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をリードデータ受信部260に送信している。
その後、リードデータ生成部259は、データフラグメントからリードデータを生成し、RAM211に記憶させる。
ステップS7、S8:ホスト端末201のコマンド生成部255は、リード割込コマンドの送信を行うか否かを判断し、送信する場合(Yes)にはリード割込コマンドを生成する。リード割込コマンドの送信を行わない場合(No)には、ホスト端末201のリードデータ受信部260はさらにデータパケットを受信する。
ステップS9〜S11:ホスト端末201のコマンド生成部255は、第1クロックCLKH1のSDメモリカード202への送信を停止し(ステップS9)、かつ第2クロックCLKH2及びリード割込コマンドをSDメモリカード202に送信する(ステップS10、S11)。
ステップS12、S13:SDメモリカード202のコマンド受信部277は、リード割込コマンドを第2カードクロックCLKS2に基づいて受信する。
ステップS14、S15:SDメモリカード202のレスポンス送信部278は、制御信号用伝送線路206を介して、リード割込コマンドに対するレスポンスをホスト端末201に送信する(ステップS14)。ホスト端末201のレスポンス受信部258は、SDメモリカード202からレスポンスを受信する(ステップS15)。
ステップS16:SDメモリカード202のリードデータ送信部279は、データパケットの送信を停止する(ステップS16)。
その後、ホスト端末201からSDメモリカード202にリードコマンドが再び送信されると、SDメモリカード202は制御信号用伝送線路206及びデータ信号用伝送線路207を介してデータパケットの送信を再開する。
(5)作用効果
上記第1実施例によれば、ホスト端末201が第1クロックCLKH1のSDメモリカード202への供給を停止すると、SDメモリカード202からのデータパケットの送信が停止する。このようにしてホスト端末201がデータパケットの送信を停止し、リード割込コマンド及び第2クロックCLKH2をSDメモリカード202に送信する。つまり、ホスト端末201がリード割込コマンド及び第2クロックCLKH2を任意の時間に送信することが可能であり、データパケット間に、リード割込コマンド及び第2クロックCLKH2を送信するための期間を予め設ける必要が無い。そのため、データパケット間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。また、SDメモリカード202からのデータパケットの送信が停止した後に、データパケットが伝送されていた伝送線路を介してリード割込コマンド及び第2クロックを送信する。よって、データパケット内のデータフラグメントの損失を防止することができる。
(第2実施例)
(1)概要
図12は、第2実施例におけるリード時のデータ伝送の様子を示すタイムチャートである。第2実施例では、ホスト端末201が、第1クロックCLKH1の送信を停止する(図12の期間A(停止タイムスロット)を参照)。これにより、ホスト端末201からSDメモリカード202に割込要求(例えば、後述のリード割込要求)を通知する。このとき、第1クロックCLKH1の送信停止により、SDメモリカード202からのデータパケットの送信が停止している。
(2)ハードウェア構成
以下に、再び図7を用いて、ホスト端末201及びSDメモリカード202のハードウェア構成について説明する。ホスト端末201及びSDメモリカード202は、図7に示すハードウェア構成と、後述の図13に示すCPU210の機能構成との協働により、後述する各種機能を実現する。
(2−1)ホスト端末
第2実施例のホスト端末201のハードウェア構成は、CPU210が第1クロックCLKH1のみをSDメモリカード202に送信する点を除いて、第1実施例のホスト端末201と同様であるので説明を省略する。
(2−2)SDメモリカード
第2実施例のSDメモリカード202のハードウェア構成は、割込検出カウンタ337を除いて第1実施例のSDメモリカード202と同様であるので、割込検出カウンタ337以外の説明を省略する。
割込検出カウンタ337は、CPU230から内部クロックが入力され、またカードクロックCLKSが入力され、割込検出信号を出力する。内部クロックは、SDメモリカード202が有するクロックであり、第1クロックCLKH1、カードクロックCLKS及び第1クロックCLKH1に基づくクロックとは異なるクロックであり、かつ第1クロックCLKH1等から分周して生成されるクロックでもない。よって、第1クロックCLKH1の供給が停止しても、内部クロックは停止しない。また、内部クロックは、第1クロックCLKH1よりも低い周波数のクロックである。
割込検出カウンタ337は、内部クロックをカウントしており、カウント値は第1クロックCLKH1の供給によりリセットされる。つまり、第1クロックCLKH1に基づくカードクロックCLKSが割込検出カウンタ337に入力され、このカードクロックCLKSにより内部クロックのカウント値がリセットされる。しかし、第1クロックCLKH1の供給が停止すると、内部クロックのカウント値がリセットされること無くカウントアップされる。
ここで、第1クロックCLKH1の供給が停止されている期間を停止タイムスロット(図12中、期間A)と言うものとする。停止タイムスロットでは、第1クロックCLKH1の供給が無いため、SDメモリカード202からホスト端末201へのデータパケットの送信が停止している。この停止タイムスロットの長さは、通信規格で予め決まっており、例えば通信開始時にホスト端末201からSDメモリカード202に通知される。なお、制御信号用伝送線路206及びデータ信号用伝送線路207を隣接して伝送するデータパケットにおいて、先に伝送されるデータパケットと、後に伝送されるデータパケットと、の間隔を基本タイムスロットと言うものとする。
図12において、停止タイムスロットを除く期間では、ホスト端末201はSDメモリカード202に第1クロックCLKH1を供給している。よって、割込検出カウンタ337による内部クロックのカウント値は、第1クロックCLKH1の供給によりリセットされ“0”である。一方、停止タイムスロットでは、ホスト端末201は第1クロックCLKH1の供給を停止している。よって、内部クロックのカウント値がカウントアップされ“0”より大きくなる。このカウント値が割込検出信号としてCPU230に送信され、CPU230はカウント値が所定値を超えることに基づいて、ホスト端末201が割込要求を出力したことを認識する。
(3)機能構成
図13は、ホスト端末201のCPU210及びSDメモリカード202のCPU230の機能構成図である。第2実施例では、第1実施例のように第2クロック生成部250b、第2クロック送信部251b、第2クロック受信部270bは設けられていない。また、第1実施例と同一の符号番号は同一の機能構成であり、以下に説明する機能構成を除いて第1実施例と同様であるので説明を省略する。
(3−1)ホスト端末のCPUの機能構成
(a)第1クロック生成部、第1クロック送信部
第2実施例の第1クロック生成部350及び第1クロック送信部351は、第1実施例の第1クロック生成部250a及び第1クロック送信部251aの構成と同様であり説明を省略する。なお、第1クロック送信部351は、割込要求通知部356の制御により第1クロックCLKH1のSDメモリカード202への送信を停止する。
(b)コマンド生成部
第2実施例のコマンド生成部355は、第1実施例のコマンド生成部255とほぼ同様の構成であるので、以下に簡単に説明する。コマンド生成部355は、リードコマンド、ライトコマンドなどの各種コマンドを生成する。なお、コマンド生成部355は、リード割込みコマンド等の割込コマンドは生成しない。
(c)割込要求通知部
割込要求通知部356は、ホスト端末201の状況に応じて、SDメモリカード202からのデータ送信に対して割込が必要かどうかを判断し、第1クロックCLKH1の送信を停止するか否かを決定する。
ここで、リード時には、ホスト端末201は、SDメモリカード202から連続的にデータパケットを受信し、リードデータを受信している。ここで、割込要求通知部356は、例えばSDメモリカード202から送信されたリードデータのRAM211への書き込みが遅れている等、ホスト端末201の状況を判断し、SDメモリカード202からのリードデータの送信を停止する必要があるか否か、つまりホスト端末201がリード割込要求を行う必要があるか否かを判断する。そして、割込要求通知部356は、リードデータの送信を停止する必要があると判断すると、停止タイムスロット(図9の期間A)の長さ分だけ、第1クロックCLKH1のSDメモリカード202への送信を停止するように第1クロック送信部351を制御する。また、停止タイムスロットの期間Aが経過すると、割込要求通知部356は、第1クロックCLKH1の送信を再開するように第1クロック送信部351を制御する。
(3−2)SDメモリカードのCPUの機能構成
(a)第1クロック受信部
第2実施例の第1クロック受信部370は、第1実施例の第1クロック受信部270aの構成と同様であり説明を省略する。
(b)内部クロックカウント部、割込要求認識部
内部クロックカウント部384は、内部クロックを生成し、割込検出カウンタ337に送信する。なお、内部クロックは、第1クロックCLKH1、カードクロックCLKS及び第1クロックCLKH1に基づくクロックとは異なるクロックであり、かつ第1クロックCLKH1等から分周して生成されるクロックでもない。また、内部クロックカウント部384は、通信開始時にホスト端末201から停止タイムスロット(図9の期間A)の長さを受信しており、この停止タイムスロットの期間Aと内部クロックとに基づいて、所定値を決定する。所定値とは、ホスト端末201からSDメモリカード202への第1クロックCLKH1の供給が、停止しているか否かを判断するための判断基準値である。
また、内部クロックカウント部384は、割込検出カウンタ337から割込検出信号を受信し、ホスト端末201が第1クロックCLKHの送信を停止したか否かを検出する。ここで、割込検出信号には、内部クロックのカウント値が含まれている。このカウント値は、割込検出カウンタ337が第1クロックCLKHの入力を受けることでリセットされる。よって、内部クロックカウント部384は、カウント値が前述の所定値を超えているか否かを判定し、超えていれば第1クロックCLKH1の供給が停止していると判断する。
割込要求認識部385は、内部クロックカウント部384の判定結果を受信する。ここで、第1クロックCLKH1の供給が停止しているとの判定結果を受信した場合は、割込要求認識部385は、ホスト端末201がリード割込要求を出力していると認識する。割込要求認識部385は、認識結果をリードデータ送信部379及びレスポンス送信部278に送信する。
(c)リードデータ送信部
リードデータ送信部379は、カードクロックCLKSに基づいて、データパケットを制御信号用伝送線路206及びデータ信号用伝送線路207を介してホスト端末201に送信する。また、リードデータ送信部379は、ホスト端末201がリード割込要求を出力しているとの認識結果を割込要求認識部385から受信すると、ホスト端末201へのリードデータの送信を停止する。
(4)処理の流れ
以下に説明する処理を開始するにあたって、ホスト端末201からSDメモリカード202に第1クロックCLKH1が送信されている。
(4−1)リード時
図14は、第2実施例の通信システムにおける、リード時の処理の流れの一例を示すフローチャートである。
ステップS1、S2:ホスト端末201のコマンド生成部355は、SDメモリカード202からリードデータを読み出すためのリードコマンドを生成する。ホスト端末201のコマンド送信部256は、リードコマンドを制御信号用伝送線路206を介してSDメモリカード202に送信する(ステップS1)。SDメモリカード202のコマンド受信部277はリードコマンドを受信する(ステップS2)。
ステップS3、S4:SDメモリカード202のレスポンス送信部278は、制御信号用伝送線路206を介して、リードコマンドに対するレスポンスをホスト端末201に送信する(ステップS3)。ホスト端末201のレスポンス受信部258はレスポンスを受信する(ステップS4)。
ステップS5、S6:SDメモリカード202の送信データ生成部280は、リードコマンドの受信に応じて、Flashメモリ231aからリードデータを読み出してデータパケットを生成する。SDメモリカード202のリードデータ送信部379は、制御信号用伝送線路206及びデータ信号用伝送線路207を介してデータパケットをホスト端末201に送信する(ステップS5)。ホスト端末201のリードデータ受信部260は、SDメモリカード202からデータパケットを受信する(ステップS6)。このとき、ホスト端末201のタイミング制御部252は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をリードデータ受信部260に送信している。
その後、リードデータ生成部259は、データフラグメントからリードデータを生成し、RAM211に記憶させる。
ステップS7、S8:ホスト端末201の割込要求通知部356は、ホスト端末201がリード割込要求を行う必要があるか否か、つまり、SDメモリカード202からのリードデータの送信を停止する必要があるか否かを判断する。リード割込要求を行う場合(Yes)、割込要求通知部356は、SDメモリカード202への第1クロックの送信を停止させるように第1クロック送信部351を制御する。リード割込要求を行わない場合(No)、ホスト端末201のリードデータ受信部260はさらにデータパケットを受信する。
ここで、ホスト端末201が第1クロックCLKH1の送信を停止する停止タイムスロット(図9の期間A)の長さは、通信規格で予め決まっており、例えば通信開始時にホスト端末201からSDメモリカード202に通知される。SDメモリカード202の内部クロックカウント部384は、この停止タイムスロットの期間Aと内部クロックとに基づいて、所定値を決定する。
ステップS9、S10:内部クロックカウント部384は、割込検出カウンタ337から割込検出信号を受信している。内部クロックカウント部384は、割込検出信号に含まれる内部クロックのカウント値が所定値以上であるか否かを判定し、判定結果を割込要求認識部385に送信する。割込要求認識部385は、カウント値が所定値以上である場合は、ホスト端末201がリード割込要求を出力していると認識する。
ステップS11〜S13:停止タイムスロットの期間Aが経過すると、割込要求通知部356は、第1クロックCLKH1の送信を再開するように第1クロック送信部351を制御する。第1クロック送信部351は、第1クロックCLKH1の送信を再開する(ステップS11)。SDメモリカード202のレスポンス送信部278は、ホスト端末201がリード割込要求を出力しているとの認識結果を受信すると、制御信号用伝送線路206を介してホスト端末201にレスポンスを送信する(ステップS12)。ホスト端末201のレスポンス受信部258は、SDメモリカード202からレスポンスを受信する(ステップS13)。
ステップS14:SDメモリカード202のリードデータ送信部379は、データパケットの送信を停止する。
その後、ホスト端末201からSDメモリカード202にリードコマンドが再び送信されると、SDメモリカード202は制御信号用伝送線路206及びデータ信号用伝送線路207を介してデータパケットの送信を再開する。
(5)作用効果
上記第2実施例によれば、ホスト端末201が第1クロックのSDメモリカード202への供給を停止すると、SDメモリカード202からのデータパケットの送信が停止する。このようにしてホスト端末201がデータパケットの送信停止を制御し、これによりSDメモリカード202は割込要求を認識する。つまり、ホスト端末201は、任意の時間にSDメモリカード202に割込要求を認識させることが可能であり、データパケット間に、割込要求を認識させるための期間を予め設ける必要が無い。そのため、データパケット間の間隔を短くすることができ、データの伝送効率の低下を抑制することができる。
(変形例)
(1)
本実施形態の第1実施例、第2実施例において、制御信号用伝送線路206及びデータ信号用伝送線路207を伝送する全てのデータパケットに、ヘッダ情報及びフッタ情報を付加する必要は無い。いずれかの伝送線路を伝送するデータフラグメントにのみヘッダ情報及びフッタ情報を付加し、それ以外の伝送線路ではデータフラグメントのみを伝送するようにしても良い。このとき、いずれかの伝送線路を介して伝送されているヘッダ情報及びフッタ情報に基づいて、データフラグメントのみを伝送するようにすれば良い。
例えば、制御信号用伝送線路206では第1データフラグメントを伝送するが、第1データフラグメントの前後にヘッダ情報及びフッタ情報が付加されていない。一方、データ信号用伝送線路207では、ヘッダ情報、第2データフラグメント及びフッタ情報を含むデータパケットが伝送される。第1データフラグメントのビット長は、データパケットの第2データフラグメントのビット長と同一である。第1データフラグメントを、データパケットのヘッダ情報及びフッタ情報を用いて伝送する。このとき、第1データフラグメントは第2データフラグメントに同期して伝送される。
(2)
上記第1及び第2実施例では、送信側からデータを受信しているときに、送信側からのデータパケットの送信を停止させる場合について説明した。上記第1及び第2実施例は、その他、送信側からデータを受信しているときに、送信を一定期間遅らせたり、データの再送を指示したりする各種信号を送信側に送信する場合にも適用可能である。
(3)
上記では、データパケットは、ヘッダ情報、データパケット及びフッタ情報を順に含むように形成されているが、これらの順序は前記に限定されない。
(4)
上記において、本実施形態は、制御用信号伝送線路及びデータ信号用伝送線路を有する通信システムについて説明した。しかし、制御信号用伝送線路を有さず、データ信号用伝送線路のみを有する通信システムにおいても本実施形態を適用可能である。また、本実施形態は、複数の伝送線路を介したデータ伝送への適用のみならず、1本の伝送線路を介したデータ伝送への適用も可能である。
(5)
上記では、制御信号用伝送線路及びデータ信号用伝送線路を伝送するデータパケットは同期して伝送されるが、同期して伝送される構成に限定されない。各データパケットのヘッダ情報及びフッタ情報に基づいて各伝送線路に伝送されれば良い。
(6)
上記では、ヘッダ長、フッタ長及び基本タイムスロット長が通信規格として定められているとした。しかし、例えばSDメモリカード毎にヘッダ長、フッタ長及び基本タイムスロット長が異なり、ホスト端末201とSDメモリカード202との通信開始時に、これらの情報を相互に取得するようにしても良い。
(7)
制御信号用伝送線路206及びデータ信号用伝送線路207は、一対の2本の差動伝送線路であっても良い。
(8)
上記では、各データフラグメントのビット長がヘッダ情報に記載されている構成を説明した。しかし、各データフラグメントのビット長が通信規格により固定されていても良い。この場合には、パラメータ記憶部にデータフラグメントのビット長を格納しておけば良く、データパケットのヘッダ長から随時データフラグメントのビット長を取得する必要は無い。
(9)
上記本実施形態の第1実施例では、割込コマンドの送信により即座にデータの伝送が中止されるのが好ましいため、割込コマンドは1個の第1タイムスロットを用いて送信されるのが好ましい。しかし、例えば割込コマンドのビット長が第1タイムスロット長を超える場合は、割込コマンドを複数に分割し、複数の第1タイムスロットを用いて送信しても良い。
(10)
上記では、リムーバブルメモリデバイスであるSDメモリカードを例に挙げて説明したが、ホスト端末から供給されたクロックでリードデータをホスト端末に送信するような携帯可能なリムーバブルメモリデバイスであれば、本発明を適用可能な範囲はSDメモリカードに限定されない。例えば、その他、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード、メモリースティック等が挙げられる。また、リムーバブルメモリデバイスが搭載可能なメモリは、フラッシュメモリに限定されず、MRAM、 FeRAM等の不揮発性メモリが挙げられる。
(11)
前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blue−ray Disc)、半導体メモリを挙げることができる。
前記コンピュータプログラムは、前記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
<第3実施形態例>
(1)概要
図15は、本発明の第3実施形態例に係る通信システムの全体構成図である。この通信システムでは、ホスト端末401である送受信装置とSD(Secure Digital)メモリカード402である送受信装置とが、2本一対の差動伝送線路を介して接続される。本実施形態の通信システムには、後述の動的インピーダンス回路及びインピーダンス回路により一対の差動伝送線路に所定の電位差が発生することで信号を伝送する、一般的な電流駆動型差動伝送方式が用いられている。差動伝送線路には、クロック信号用伝送線路405、制御信号用伝送線路406及びデータ信号用伝送線路407が含まれる。クロック信号用伝送線路405は、ホスト端末401及びSDメモリカード402間の通信に用いられる後述のクロックCLKHを、ホスト端末401からSDメモリカード402に伝送するために用いられる。制御信号用伝送線路406は、データの読み出し、書き込みなどに関するコマンド及びコマンドに対するレスポンスを、ホスト端末401及びSDメモリカード402間で送受信するために用いられる。データ信号用伝送線路407は、ホスト端末401及びSDメモリカード402間でデータを送受信するために用いられる。
図16は、リード時のデータ伝送の様子を示すタイムチャートである。本実施形態の通信システムはハンドシェイク型の通信システムであり、データの伝送の際には、まずリードコマンド(図16中、ReadCMD)やライトコマンドなどの各種コマンド及びこのコマンドに対するレスポンス(図16中、Res)がホスト端末401及びSDメモリカード402間で送受信された後、データ(図16中、DATA)の伝送が行われる。
また、本実施形態の通信システムでは、データアクセスの伝送効率を向上することを目的として、図16に示すようにデータの伝送にはデータ信号用伝送線路407だけでなく制御信号用伝送線路406も用いる。データは複数のデータフラグメントに分割されて伝送されており、制御信号用伝送線路406及びデータ信号用伝送線路407を介して伝送されるデータフラグメントには、ヘッダ情報及びフッタ情報が付加されている。つまり、制御信号用伝送線路406及びデータ信号用伝送線路407では、ヘッダ情報、データフラグメント及びフッタ情報を含むデータパケットが伝送される。また、全てのデータパケットは同じビット長により構成されている。
ここで、ヘッダ情報及びフッタ情報はデータフラグメントとは異なる情報である。ヘッダ情報にはデータパケットの受信タイミングの調整のための、例えば同期ビット列及びスタートビットなどの情報が含まれており、フッタ情報にはデータパケットの終了を示す、例えばエンドビットなどの情報が含まれている。なお、ヘッダ情報及びフッタ情報に含まれる情報は、これらに限定されず、その他の各種情報を含んでいても良い。また、データフラグメントには、CRC(Cyclic Redundancy Check:巡回冗長検査)ビットなど、各データフラグメントの伝送エラーを検出するための情報が含まれていても良い。
本実施形態では、制御信号用伝送線路406において隣接して伝送されるデータパケット内のデータフラグメント間において、受信側が制御信号用伝送線路406の信号振幅を変化させる。これにより、受信側から送信側に割込要求(後述のリード割込要求及びライト割込要求を含む。)を通知する。ここで、データフラグメント間の間隔は、先に伝送されるデータパケットのデータフラグメントと、後に伝送されるデータパケットのデータフラグメントと、の間隔により定義され、以下の本実施形態では拡張タイムスロットと言うものとする(図16参照)。また、後述の基本タイムスロットは、先に伝送されるデータパケットと、後に伝送されるデータパケットと、の間隔により定義される。
なお、データ信号用伝送線路407は、1本に限られず複数設けられても良い。
(2)ハードウェア構成
以下に、再び図15を用いて、ホスト端末401及びSDメモリカード402のハードウェア構成について説明する。ホスト端末401及びSDメモリカード402は、図15に示すハードウェア構成と、後述の図21に示すCPU410の機能構成との協働により、後述する各種機能を実現する。
(2−1)ホスト端末
(a)CPU410:ホスト端末401のその他のRAM411、バッファ412、カードインターフェース部413及びI/Oバッファ等を制御する。そして、ホスト端末401でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)RAM411:SDメモリカード402との間で送受信される各種データを記憶する。
(c)バッファ412、カードインターフェース部413:SDメモリカード402から読み出されたデータのRAM411への書き込み、SDメモリカード402へ書き込まれるデータのRAM411からの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/コマンドOutput414a、データ/レスポンスInput414b、データOutput414c、データInput414d、ドライバ415a、レシーバ415b、ドライバ415c、レシーバ415d、動的インピーダンス回路417、インピーダンス回路418及び電位差検出回路419を含み、これらが図15に示すように接続されている。ドライバ415a、レシーバ415b、ドライバ415c及びレシーバ415dは、差動伝送線路である制御信号用伝送線路406又はデータ信号用伝送線路407に接続されている。
動的インピーダンス回路417は、制御信号用伝送線路406の2本の差動伝送路406a及び406bそれぞれに接続されている。動的インピーダンス回路417は、CPU410からの割込要求に基づいて、制御信号用伝送線路406の信号振幅を変化させる。図17は、動的インピーダンス回路417の構成図である。図17に示すように、動的インピーダンス回路417では、複数のスイッチ回路SW及び終端抵抗のセットと、スイッチ制御回路417aとを有している。そして、スイッチ制御回路417aが、後述の割込要求により制御され、所定のスイッチ回路SW及び終端抵抗のセットと接続される。これにより、差動伝送路406a及び406bにより構成される制御信号用伝送線路406の信号振幅値が変化する。例えば、動的インピーダンス回路417は、割込要求を受信していない場合はインピーダンスを100Ωに制御し、割込要求を受信している場合はインピーダンスを10Ωに制御する。ここで、制御信号用伝送線路406に接続されているドライバ415aにより1mAの定電流が駆動されるとする。割込要求の受信によりインピーダンスが100Ωから10Ωに変化すると、制御信号用伝送線路406の信号振幅は、同相電位Vcomを基準とする±100mVのスイングから±10mVのスイングに変化する。
電位差検出回路419は、所定の基準電圧Vrefの入力を受け、制御信号用伝送線路406の信号振幅の変化を検出し、CPU410に検出結果として割込検出信号を出力する。図18は、電位差検出回路の構成図である。電位差検出回路419は、比較器419a、419bと、OR回路419cとを有する。比較器419a、419bは、制御信号用伝送線路406の2本の差動伝送路406a及び406bそれぞれに接続されており、また基準電圧Vref及びクロックCLKHが入力されている。比較器419a及び419bは、クロックCLKHをトリガにして、差動伝送路406a及び406bの電位が、基準電圧Vrefよりも高いか低いかを検出する。比較器419a及び419bは、差動伝送路406a及び406bの電位が基準電圧Vrefよりも高い場合にはHighを保持し、低い場合はLowを保持する。比較器419a及び419bは、OR回路419cに接続されており、保持している値がOR回路419cに入力される。そして、OR回路419cの出力が割込検出信号としてCPU410に入力される。ここで、例えば、基準電圧Vrefが同相電位Vcomに対して50mV高いとする。SDメモリカード402が割込要求を出力しておらず、制御信号用伝送線路406の信号振幅が±100mVのスイングの場合、差動伝送路406a及び406bのいずれかの電位は基準電圧Vrefよりも高いため、OR回路419cの出力はHighとなる。一方、SDメモリカード402が割込要求を出力しており、制御信号用伝送線路406の信号振幅が±10mVのスイングとなっている場合、差動伝送路406a及び406b両方の電位が基準電圧Vrefよりも低いため、OR回路の出力はLowとなる。結局、SDメモリカード402が割込要求を出力し、制御信号用伝送線路406の信号振幅が±100mVから±10mVに低下すると、OR回路419cの出力はHighからLowに変化し、割込検出信号としてCPU410に入力される。CPU410は、割込検出信号のこの変化に基づいて、SDメモリカード402による割込要求の出力の有無を判断する。
インピーダンス回路418は、データ信号用伝送線路407のインピーダンスを調整している。
(e)ドライバ416:差動伝送線路であるクロック信号用伝送線路405を介して、クロックCLKHをSDメモリカード402に送信する。
(2−2)SDメモリカード
(a)CPU430:SDメモリカード402でのデータの読み出し及び書き込みなどの後述する各種機能を各種プログラムに基づいて実現する。
(b)Flashメモリ431a:ホスト端末401との間で送受信される各種データを記憶する。
(c)Flashメモリインターフェース部431b、バッファ432、ホストインターフェース部433:ホスト端末401から読み出されたデータのFlashメモリ431aへの書き込み、ホスト端末401へ書き込まれるデータのFlashメモリ431aからの読み出しを行う。
(d)I/Oバッファ:コマンド、レスポンス、データ等のデータの入出力を行う。I/Oバッファは、データ/レスポンスOutput434a、データ/コマンドInput434b、データOutput434c、データInput434d、ドライバ435a、レシーバ435b、ドライバ435c及びレシーバ435d、動的インピーダンス回路437、インピーダンス回路438及び電位差検出回路439を含み、これらが図15に示すように接続されている。ドライバ435a、レシーバ435b、ドライバ435c及びレシーバ435dは、差動伝送線路である制御信号用伝送線路406又はデータ信号用伝送線路407に接続されている。
動的インピーダンス回路437は、制御信号用伝送線路406の2本の差動伝送路406a、406bそれぞれに接続されている。動的インピーダンス回路437は、CPU430からの割込要求に基づいて、制御信号用伝送線路406の信号振幅を変化させる。動的インピーダンス回路437の構成は、前述の図17と同様であるので説明を省略する(符号番号は図17中の括弧内を参照)。
電位差検出回路439は、所定の基準電圧Vrefの入力を受け、制御信号用伝送線路406の信号振幅の変化を検出し、CPU430に検出結果を出力する。電位差検出回路439の構成は、クロックCLKSが入力される点を除いて前述の図18と同様であるので説明を省略する(符号番号は図18中の括弧内を参照)。ホスト端末401が割込要求を出力し、制御信号用伝送線路406の信号振幅が±100mVから±10mVに低下すると、電位差検出回路439のOR回路439cの出力はHighからLowに変化し、割込検出信号としてCPU430に入力される。CPU430は、割込検出信号のこの変化に基づいて、ホスト端末401による割込要求の出力の有無を判断する。
インピーダンス回路438は、データ信号用伝送線路407のインピーダンスを調整している。
(e)レシーバ436、インピーダンス回路440:インピーダンス回路440は、差動伝送線路であるクロック信号用伝送線路405のインピーダンスを制御し、レシーバ436は、クロック信号用伝送線路405を介して、クロックCLKHをホスト端末401から受信する。
(2−3)割込要求出力時の動作
本実施形態では、送信側から受信側にデータパケットが連続的に伝送されている場合に、データフラグメント間である拡張タイムスロットにおいて、受信側が割込要求を出力する。ホスト端末401がSDメモリカード402からリードデータを受信している場合に、ホスト端末401がリード割込要求を出力した場合を例に挙げ、動的インピーダンス回路417及び電位差検出回路439の動作について説明する。図19はリード割込要求が出力された場合の制御信号用伝送線路406の状態及び割込検出信号の状態を示すフローチャートであり、図20は制御信号用伝送線路406、動的インピーダンス回路417、電位差検出回路439及び割込検出信号の出力状態等を説明する説明図である。
(a)データパケットの受信
図19を参照すると、ホスト端末401は、制御信号用伝送線路406を介してSDメモリカード402からリードデータのデータパケットを受信している。このとき、ホスト端末401はリード割込要求を出力しておらず、制御信号用伝送線路406の状態は図20に示す時間t1〜t7の状態にある。この時間t1〜t7では、動的インピーダンス回路417は前述の通りインピーダンスを100Ωに制御しており、制御信号用伝送線路406の信号振幅は同相電位Vcomを基準とする±100mVとなっている。よって、SDメモリカード402の電位差検出回路439では、比較器439a、439bのいずれかの出力はHigh(H)となり、OR回路439cの出力である割込検出信号はHigh(H)となる。なお、図19では、制御信号用伝送線路406のみを図示しているが、ホスト端末401は、データ信号用伝送線路407を介しても同様にデータパケットを受信している。
(b)リード割込要求の送信
次に、ホスト端末401のCPU410は、SDメモリカード402からのデータパケットの送信を停止するために、リード割込要求を出力する。このときの制御信号用伝送線路406の状態は図20に示す時間t8、t9に相当する。
なお、ホスト端末401のCPU410は、制御信号用伝送線路406の拡張タイムスロットにおいて、リード割込要求を出力する。拡張タイムスロットは、図19に示すように、先に伝送されるデータパケットのデータフラグメントと、後に伝送されるデータパケットのデータフラグメントと、の間隔により定義される。本実施形態では電流駆動型差動伝送方式を用いているため、先に伝送されるデータパケットのフッタ情報と、後に伝送されるデータパケットのヘッダ情報と、により定義される基本タイムスロット(図19参照)においても、制御信号用伝送線路406はHigh又はLowのいずれかの状態にある。
リード割込要求は、ホスト端末401のCPU410からホスト端末401の動的インピーダンス回路417に入力される。動的インピーダンス回路417は、前述の通りリード割込要求の受信によりインピーダンスを100Ωから10Ωに変化させる。このとき、図19及び図20に示すように、制御信号用伝送線路406の信号振幅は、同相電位Vcomを基準とする±100mVのスイング(200mVの信号振幅)から±10mVのスイング(20mVの信号振幅)に変化する。よって、SDメモリカード402の電位差検出回路439では、比較器439a、439b両方の出力がLow(L)となり、OR回路439cの出力である割込検出信号はLow(L)となる。このHighからLowに変化した割込検出信号が、SDメモリカード402のCPU430に入力される。SDメモリカード402のCPU430は、この割込検出信号に基づいて、ホスト端末401がリード割込要求を出力したことを認識し、レスポンス(図19中、Res)をホスト端末401に送信する。
(3)機能構成
図21は、ホスト端末401のCPU410及びSDメモリカード402のCPU430の機能構成図である。
(3−1)ホスト端末のCPUの機能構成
(a)クロック生成部、クロック送信部
クロック生成部450は、ホスト端末401とSDメモリカード402との間でデータを送受信するための基本のクロックCLKHを生成する。クロック生成部450は、CPU410の各種機能部をクロックCLKHにより制御するため、クロック送信部451、タイミング制御部452、コマンド送信部456、レスポンス受信部458、リードデータ受信部460、ライトデータ送信部462、割込要求通知部463及び割込要求認識部464等にクロックCLKHを送信する。クロック送信部451は、クロックCLKHをクロック信号用伝送線路405を介してSDメモリカード402に送信する。
(b)タイミング制御部、タイムスロット取得部、パラメータ記憶部
パラメータ記憶部454は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。ここで、ヘッダ長及びフッタ長は、ビット数で定義されたヘッダ及びフッタの長さである。基本タイムスロット長とは、ビット数で定義されたデータパケット間の間隔である基本タイムスロットの長さである。
タイムスロット取得部453は、パラメータ記憶部454から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、拡張タイムスロット長を算出して取得する。ここで、拡張タイムスロット長は、フッタ長+基本タイムスロット長+ヘッダ長により算出される。タイムスロット取得部453は、後述の割込要求通知部463に拡張タイムスロット長を送信する。
また、タイミング制御部452及びタイムスロット取得部453は、後述のリードデータ受信部460からデータパケットを受信し、データパケットのヘッダ情報に含まれるデータフラグメントのビット長を取得する。タイムスロット取得部453は、ヘッダ長、データフラグメントのビット長及び拡張タイムスロット長をクロックCLKHに基づいて順にカウントすることで、拡張タイムスロットの開始位置を把握する。そして、タイムスロット取得部453は、タイムスロットの開始位置を割込要求通知部463に送信する。また、タイミング制御部452は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長をクロックCLKHに基づいて順にカウントし、カウント値をリードデータ受信部460に送信する。
なお、タイムスロットの開始位置は、タイムスロット取得部453からではなく、タイミング制御部452からのカウント値に基づいて取得しても良い。
(c)コマンド生成部、コマンド送信部
コマンド生成部455は、SDメモリカード402に記憶されている映像、音声等のリードデータを読み出すためのリードコマンド、SDメモリカード402にデータを書き込むためのライトコマンドなどの各種コマンドを生成する。コマンド送信部456は、制御信号用伝送線路406を介して、各種コマンドをSDメモリカード402にクロックCLKHに基づいて送信する。
(d)レスポンス受信部
レスポンス受信部458は、ホスト端末401が送信したコマンドに対するレスポンスをSDメモリカード402から受信する。
(e)リードデータ受信部、リードデータ生成部
リードデータ受信部460は、SDメモリカード402からのデータパケットを、制御信号用伝送線路406及びデータ信号用伝送線路407を介してクロックCLKHに基づいて受信する。また、リードデータ受信部460は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部452から受信している。このカウント値に基づいて、リードデータ受信部460は、データパケット内のデータフラグメントを損失することなく正確に受信することができる。
なお、リードデータを構成するデータパケットは、いずれの伝送線路においても同じビット長で構成され同期して伝送されている。ここで、図19に示すように、データパケットのヘッダ情報及びフッタ情報が送信されている期間は、拡張タイムスロットの期間に含まれる。ヘッダ情報及びフッタ情報が送信されている期間に、割込要求通知部463がリード割込要求を出力すると、制御信号用伝送線路406の信号振幅が小さくなり、ヘッダ情報及びフッタ情報を正確に受信できなくなる可能性がある。しかし、前述のようにいずれの伝送線路においてもデータパケットが同期して伝送されているため、制御信号用伝送線路406以外のデータ信号用伝送線路407を伝送するデータパケットからヘッダ情報及びフッタ情報を受信すれば良い。
リードデータ生成部459は、複数のデータパケットからリードデータを生成し、RAM411に記憶させる。
(f)送信データ生成部、ライトデータ送信部
送信データ生成部461は、ライトコマンドが生成されると、SDメモリカード402に書き込むためのライトデータをRAM411から読み出し、ヘッダ情報、データフラグメント及びフッタ情報を含む複数のデータパケットを生成する。
ライトデータ送信部462は、クロックCLKHに基づいて、制御信号用伝送線路406及びデータ信号用伝送線路407において同期するように、データパケットをSDメモリカード402に送信する。また、ライトデータ送信部462は、割込要求認識部464からライト割込要求が有るとの通知を受信すると、SDメモリカード402へのデータパケットの送信を停止する。
(g)割込要求通知部、割込要求認識部
割込要求通知部463は、SDメモリカード402からのリードデータの読み出しを中止するリード割込要求などの各種割込要求を生成する。ここで、リード時には、ホスト端末401は、SDメモリカード402から制御信号用伝送線路406及びデータ信号用伝送線路407を介して連続的にデータパケットを受信し、リードデータを受信している。リード割込要求は、このような場合に、拡張タイムスロットを用いて出力され、リードデータの送信を停止する割込要求である。割込要求通知部463は、例えばSDメモリカード402から送信されたリードデータのRAM411への書き込みが遅れている等、ホスト端末401の状況を判断し、リード割込要求を出力するか否かを判断する。割込要求通知部463は、変化させる信号振幅値を決定し、拡張タイムスロット長に基づいて信号振幅を変化させる変化期間を決定する。そして、割込要求通知部463は、決定した信号振幅値及び変化期間に基づいて、リード割込要求のビット長が拡張タイムスロット長を超えないようにリード割込要求を生成する。そして、割込要求通知部463は、拡張タイムスロット内でリード割込要求を出力可能なように、拡張タイムスロットの開始位置に基づいてリード割込要求を動的インピーダンス回路417に出力する。
割込要求認識部464は、電位差検出回路419からの割込検出信号を受信し、SDメモリカード402がライト割込要求を出力したか否かを判断する。割込要求認識部464は、ライト割込要求の有無をライトデータ送信部462に送信する。
(3−2)SDメモリカードのCPUの機能構成
(a)クロック受信部
クロック受信部470は、ホスト端末401からクロックCLKHを受信する。なお、ホスト端末401からSDメモリカード402への送信の際の遅延により、クロックCLKはカードクロックCLKSに変化している。クロック受信部470は、タイミング制御部472、コマンド受信部477、レスポンス送信部478、リードデータ送信部479、ライトデータ受信部481、割込要求通知部483及び割込要求認識部484等にカードクロックCLKSを送信する。
(b)タイミング制御部、タイムスロット取得部、パラメータ記憶部
パラメータ記憶部474は、通信規格として定められているヘッダ長、フッタ長及び基本タイムスロット長の情報を記憶している。
タイムスロット取得部473は、パラメータ記憶部474から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、拡張タイムスロット長を算出して取得する。タイムスロット取得部473は、割込要求通知部483に拡張タイムスロット長を送信する。
また、タイミング制御部472及びタイムスロット取得部473は、後述のライトデータ受信部481からデータパケットを受信し、データパケットのヘッダ情報に含まれるデータフラグメントのビット長を取得する。タイムスロット取得部473は、ヘッダ長、データフラグメントのビット長及び拡張タイムスロット長をカードクロックCLKSに基づいて順にカウントすることで、拡張タイムスロットの開始位置を把握する。そして、タイムスロット取得部473は、タイムスロットの開始位置を割込要求通知部483に送信する。また、タイミング制御部472は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長をカードクロックCLKSに基づいて順にカウントし、カウント値をライトデータ受信部481に送信する。
なお、タイムスロットの開始位置は、タイムスロット取得部453からではなく、タイミング制御部452からのカウント値に基づいて取得しても良い。
(c)コマンド受信部
コマンド受信部477は、制御信号用伝送線路406を介して、各種コマンドをカードクロックCLKSに基づいてホスト端末401から受信する。
(d)レスポンス生成部、レスポンス送信部
レスポンス生成部475は、ホスト端末401からの各種コマンドに対するレスポンスを生成する。レスポンス送信部478は、制御信号用伝送線路406を介してホスト端末401にレスポンスを送信する。
(e)ライトデータ受信部、ライトデータ生成部
ライトデータ受信部481は、ホスト端末401からのデータパケットをカードクロックCLKSに基づいて受信する。また、ライトデータ受信部481は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントしたカウント値をタイミング制御部472から受信している。このカウント値に基づいて、ライトデータ受信部481は、データパケット内のデータフラグメントを損失することなく正確に受信することができる。
なお、ライトデータを構成するデータパケットは、いずれの伝送線路においても同じビット長で構成され同期して伝送されている。よって、ライトデータ受信部481は、制御信号用伝送線路406においてヘッダ情報及びフッタ情報を受信できなくても、他のデータ信号用伝送線路407からヘッダ情報及びフッタ情報を受信すれば良い。
ライトデータ生成部482は、複数のデータパケットからライトデータを生成し、Flashメモリ431aに記憶させる。
(f)送信データ生成部、リードデータ送信部
送信データ生成部480は、コマンド受信部477がホスト端末401からリードコマンドを受信すると、ホスト端末401に送信するためのリードデータをFlashメモリ431aから読み出し、複数のデータパケットを生成する。
リードデータ送信部479は、カードクロックCLKSに基づいて、制御信号用伝送線路406及びデータ信号用伝送線路407において同期するように、データパケットをホスト端末401に送信する。また、リードデータ送信部479は、割込要求認識部484からリード割込要求が有るとの通知を受信すると、ホスト端末401へのデータパケットの送信を停止する。
(g)割込要求通知部、割込要求認識部
割込要求通知部483は、ホスト端末401からのライトデータの書き込みを中止するライト割込要求などの各種割込要求を生成する。ここで、ライト時には、SDメモリカード402は、ホスト端末401から制御信号用伝送線路406及びデータ信号用伝送線路407を介して連続的にデータパケットを受信し、ライトデータを受信している。ライト割込要求は、このような場合に、拡張タイムスロットを用いて出力され、ライトデータの送信を停止する割込要求である。割込要求通知部483は、例えばホスト端末401から送信されたライトデータのFlashメモリ431aへの書き込みが遅れている等、SDメモリカード402の状況を判断し、ライト割込要求を出力するか否かを判断する。割込要求通知部483は、変化させる信号振幅値を決定し、拡張タイムスロット長に基づいて信号振幅を変化させる変化期間を決定する。そして、割込要求通知部483は、決定した信号振幅値及び変化期間に基づいて、ライト割込要求のビット長が拡張タイムスロット長を超えないようにライト割込要求を生成する。そして、割込要求通知部483は、拡張タイムスロット内でライト割込要求を出力可能なように、拡張タイムスロットの開始位置に基づいてライト割込要求を動的インピーダンス回路437に出力する。
割込要求認識部484は、電位差検出回路439からの割込検出信号を受信し、ホスト端末401がリード割込要求を出力したか否かを判断する。割込要求認識部484は、リード割込要求の有無をリードデータ送信部479に送信する。なお、ライト割込要求は、ライトデータのFlashメモリ431aへの書き込みが可能になるまで生成され、ホスト端末401に送信される。
(4)処理の流れ
以下に説明する処理においては、ホスト端末401からSDメモリカード402にクロックCLKHが送信されている。
(4−1)リード時
図22は、本実施形態の通信システムにおける、リード時の処理の流れの一例を示すフローチャートである。
ステップS1、S2:ホスト端末401のコマンド生成部455は、SDメモリカード402からリードデータを読み出すためのリードコマンドを生成する。ホスト端末401のコマンド送信部456は、リードコマンドを制御信号用伝送線路406を介してSDメモリカード402に送信する(ステップS1)。SDメモリカード402のコマンド受信部477はリードコマンドを受信する(ステップS2)。
ステップS3、S4:SDメモリカード402のレスポンス送信部478は、リードコマンドに対するレスポンスを、制御信号用伝送線路406を介してホスト端末401に送信する(ステップS3)。ホスト端末401のレスポンス受信部458はレスポンスを受信する(ステップS4)。
ステップS5、S6:SDメモリカード402の送信データ生成部480は、リードコマンドの受信に応じて、Flashメモリ431aからリードデータを読み出してデータパケットを生成する。SDメモリカード402のリードデータ送信部479は、データパケットを制御信号用伝送線路406及びデータ信号用伝送線路407を介してホスト端末401に送信する(ステップS5)。ホスト端末401のリードデータ受信部460は、SDメモリカード402からデータパケットを受信する(ステップS6)。このとき、ホスト端末401のタイミング制御部452は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をリードデータ受信部460に送信している。
その後、リードデータ生成部459は、データパケットからリードデータを生成し、RAM411に記憶させる。
ステップS7、S8:ホスト端末401の割込要求通知部463は、リード割込要求の出力を行うか否かを判断し、出力する場合(Yes)にはリード割込要求を生成する(ステップS7)。このとき、ホスト端末401のタイムスロット取得部453は、ヘッダ長、フッタ長及び基本タイムスロット長に基づいて拡張タイムスロット長を算出している。ホスト端末401の割込要求通知部463は、拡張タイムスロット長を超えないようにリード割込要求を生成する(ステップS8)。リード割込要求の出力を行わない場合(No)には、ホスト端末401のリードデータ受信部460はさらにデータパケットを受信する。
ステップS9:ホスト端末401のタイムスロット取得部453は、ヘッダ長、データフラグメントのビット長及び拡張タイムスロット長をクロックCLKHに基づいて順にカウントし、拡張タイムスロットの開始位置を取得する。
ステップS10、S11:ホスト端末401の割込要求通知部463は、拡張タイムスロットの開始位置に基づき、リード割込要求を動的インピーダンス回路417に出力する(ステップS10)。SDメモリカード402の割込要求認識部484は、リード割込要求の出力に応じて変化する割込検出信号に基づいて、ホスト端末401がリード割込要求を出力したことを認識する(ステップS11)。
ステップS12、S13:SDメモリカード402のレスポンス送信部478は、ホスト端末401がリード割込要求を出力しているとの認識結果を受信すると、制御信号用伝送線路406を介してホスト端末401にレスポンスを送信する(ステップS12)。ホスト端末401のレスポンス受信部458は、SDメモリカード402からレスポンスを受信する(ステップS13)。
ステップS14:SDメモリカード402のリードデータ送信部479は、データパケットの送信を停止する。
その後、ホスト端末401からSDメモリカード402にリードコマンドが再び送信されると、SDメモリカード402は制御信号用伝送線路406及びデータ信号用伝送線路407を介してデータパケットの送信を再開する。
(4−2)ライト時
図23は、本実施形態の通信システムにおける、ライト時の処理の流れの一例を示すフローチャートである。
ステップS21、S22:ホスト端末401のコマンド生成部455及びコマンド送信部456は、SDメモリカード402にライトデータを書き込むためのライトコマンドを生成し、送信する(ステップS21)。SDメモリカード402のコマンド受信部477はライトコマンドを受信する(ステップS22)。
ステップS23:SDメモリカード402のレスポンス送信部478及びホスト端末401のレスポンス受信部458は、ライトコマンドに対するレスポンスを送受信する。
ステップS25、S26:ホスト端末401の送信データ生成部461及びライトデータ送信部462は、ライトコマンドの生成に応じて、RAM411からライトデータを読み出してデータパケットを生成し、SDメモリカード402に送信する(ステップS25)。SDメモリカード402のライトデータ受信部481は、ホスト端末401からデータパケットを受信する(ステップS26)。このとき、SDメモリカード402のタイミング制御部472は、ヘッダ長、データフラグメントのビット長、フッタ長及び基本タイムスロット長を順にカウントし、カウント値をライトデータ受信部481に送信している。
その後、ライトデータ生成部482は、データパケットからライトデータを生成し、Flashメモリ431aに記憶させる。
ステップS27、S28:SDメモリカード402の割込要求通知部483は、ライト割込要求の出力を行うか否かを判断し、出力する場合(Yes)にはライト割込要求を生成する(ステップS27)。このとき、SDメモリカード402のタイムスロット取得部473は、ヘッダ長、フッタ長及び基本タイムスロット長に基づいて拡張タイムスロット長を算出している。SDメモリカード402の割込要求通知部483は、拡張タイムスロット長を超えないようにライト割込要求を生成する(ステップS28)。ライト割込要求の出力を行わない場合(No)には、SDメモリカード402のライトデータ受信部481はさらにデータパケットを受信する。
ステップS29:SDメモリカード402のタイムスロット取得部473は、ヘッダ長、データフラグメントのビット長及び拡張タイムスロット長をカードクロックCLKSに基づいて順にカウントし、拡張タイムスロットの開始位置を取得する。
ステップS30:SDメモリカード402の割込要求通知部483は、拡張タイムスロットの開始位置に基づき、ライト割込要求を動的インピーダンス回路437に出力する。
ステップS31、S32:ホスト端末401の割込要求認識部464は、ライト割込要求の出力に応じて変化する割込検出信号に基づいて、SDメモリカード402がライト割込要求を出力しているか否かを判断する(ステップS31)。ライト割込要求が出力されていない場合(No)は、ステップS25にて、ライトデータ送信部462はデータパケットを生成及び送信を行う。
一方、ライト割込要求が出力されている場合(Yes)は、ホスト端末401のライトデータ送信部462は、データパケットの送信を停止する(ステップS32)。そして、ライト割込要求の出力が解除されると、ライトデータ送信部462は、ステップS25にて、データパケットを生成及び送信を再開する。
(5)作用効果
本実施形態によれば、データの送信側は、伝送線路の信号振幅の変化を監視することで、受信側からのリード割込要求やライト割込要求等などの割込要求を認識することができる。ここで、受信側は、隣接するデータフラグメント間である拡張タイムスロットにおいて、信号振幅を変化させて割込要求を通知する。送信側を制御するための割込信号を受信側から送信側に送信するためには、データフラグメント間には割込コマンドのビット長ほどの期間が必要であるが、本発明の割込要求の通知方法によればデータフラグメント間には割込コマンドのビット長ほどの期間を設ける必要が無い。そのため、割込要求を通知することによるデータの伝送効率の低下を抑制することができる。また、拡張タイムスロットは、データフラグメントが伝送されていない期間であるため、データフラグメントの損失を防止することができる。
(6)変形例
(6−1)
図15に示す電位差検出回路419及び439は、図18に示される回路に限定されない。図24及び図25を用いて電位差検出回路の別の構成について説明する。図24は電位差検出回路の別の構成図であり、図25は制御信号用伝送線路406、動的インピーダンス回路417、図24で構成される電位差検出回路439及び割込検出信号の出力状態を説明する別の説明図である。SDメモリカード402の電位差検出回路439の構成は、電位差検出回路419と同様であるので説明を省略する。
電位差検出回路419は、積分回路部419d、419e、比較器419f、419g、OR回路419hを有する。積分回路部419d、419eは、制御信号用伝送線路406の2本の差動伝送路406a及び406bそれぞれに接続されており、また差動信号の同相電位Vcom及びリセット信号が入力されている。積分回路部419d、419eは、差動伝送路406a及び406bの電位の入力を受け、差動信号の同相電位Vcomを基準として所定時間ごとの積分値を算出する。なお、積分回路部419d、419eは、図25に示すリセット信号のエッジタイミングごとに積分値をリセットする。比較器419f、419gは、入力された積分値とある所定の基準電位Vrefを比較し、積分値がVrefより大きい場合はHigh(H)を、小さい場合はLow(L)を出力する。ここで、前述の通り、割込要求の出力が無い場合は制御信号用伝送線路406の信号振幅は±100mVのスイングであり、一方割込要求が出力されている場合は制御信号用伝送線路406の信号振幅は±10mVのスイングとなる。このとき、割込要求が出力されていない場合は、積分回路部419d、419eのいずれかの積分値が基準電位Vrefを上回り、比較器419f、419gのいずれかがHigh(H)を保持する。一方、割込要求が出力されている場合は、積分回路部419d、419e両方の積分値が基準電位Vrefを下回り、比較器419f、419g両方がLow(L)を保持する。結局、割込要求の受信により制御信号用伝送線路406の信号振幅が±100mVから±10mVに低下すると、OR回路419hの出力はHigh(H)からLow(L)に変化し、割込検出信号としてCPU410に入力される。CPU410は、割込検出信号のこの変化に基づいて割込要求の出力の有無を判断する。
(6−2)
本実施形態において、データパケット受信側から送信側へ割込要求を通知するための方法として、図26〜図28に示す構成を用いても良い。図26は本実施形態例の変形例に係る通信システムの全体構成図であり、図27は比較器の構成を示す構成図であり、図28は制御信号用伝送線路406、比較器441及び割込検出信号の出力状態等を説明する説明図である。比較器441以外の構成は、図15と同様であるので説明を省略する。また、SDメモリカード402の比較器443の構成は比較器441と同様であるので説明を省略する。
比較器441は、ドライバ415aの入力ライン442a及びレシーバ415bの出力ライン442bに接続されており、クロックCLKHが入力される遅延素子441a、Ex−OR回路441b及びDフリップフロップ441cを含む。ここで、ドライバ415aはホスト端末401が制御信号用伝送線路406に出力する信号を保持しており、レシーバ415bはSDメモリカードから制御信号用伝送線路406を介して送信される信号を保持している。
ホスト端末401がSDメモリカード402にライトデータを送信している時に、SDメモリカード402がライト割込要求を出力する場合を例に挙げて比較器441の動作を説明する。ホスト端末401は、制御信号用伝送線路406及びデータ信号用伝送線路407を介してSDメモリカード402にデータパケットを連続的に送信している。ここで、SDメモリカード402のCPU430が、動的インピーダンス回路437にライト割込要求を出力すると、前述のとおり制御信号用伝送線路406の差動振幅は低下する。このとき、制御信号用伝送線路406のインピーダンスは、制御信号用伝送線路406に接続されているホスト端末401のレシーバ415bが判別可能な振幅レベルを下回る。ホスト端末401のレシーバ415bは、制御信号用伝送線路406の差動信号を認識できず、正しい論理レベルを出力できない。よって、レシーバ415bの出力ライン442bはHighかLowかのいずれかの不定状態となる(図28の×印を参照)。よって、図28に示すように、図27で示される比較器441の出力である割込検出信号の値は、必ずしもLow(L)とはならずHigh(H)となる場合がある(図28の×印を参照)。なお、SDメモリカード402がライト割込要求を出力していない場合は、ドライバ415aの入力ライン442aと、レシーバ415bの出力ライン442bと、の論理レベルは常に等しい。よって、比較器441の出力である割込検出信号の値は必ずLowとなる。ホスト端末401のCPU410は、このような割込検出信号の変化を検出することで、SDメモリカード402がライト割込要求を出力したことを認識することができる。
なお、上記のような動作をする比較器であれば、前記図27の構成に限定されない。また、図27に示す比較器441は図15に示す電位差検出回路419に比べて小さな部面積で実現することができ好ましい。
(6−3)
上記では、先に伝送されるデータパケットのデータフラグメントと、後に伝送されるデータパケットのデータフラグメントと、の間隔により定義される拡張タイムスロットにおいて、制御信号用伝送線路406の信号振幅を変化させる。しかし、先に伝送されるデータパケットと、後に伝送されるデータパケットとの間、つまり、先に伝送されるデータパケットのフッタ情報と、後に伝送されるデータパケットのヘッダ情報と、の間である基本タイムスロットにおいて、信号振幅を変化させるようにしても良い。ヘッダ情報及びフッタ情報の伝送期間に信号振幅の変化が生じないため、フッタ情報及びヘッダ情報が正確に受信できなくなるのを阻止することができる。なお、本実施形態では電流駆動型差動伝送方式を用いているため、制御信号用伝送線路406を含む各伝送線路は、基本タイムスロットの期間においても、High又はLowのいずれかの状態にある。
(6−4)
制御信号用伝送線路406及びデータ信号用伝送線路407を伝送する全てのデータパケットに、ヘッダ情報及びフッタ情報を付加する必要は無い。いずれかの伝送線路を伝送するデータフラグメントにのみヘッダ情報及びフッタ情報を付加し、それ以外の伝送線路ではデータフラグメントのみを伝送するようにしても良い。このとき、いずれかの伝送線路を介して伝送されているヘッダ情報及びフッタ情報に基づいて、データフラグメントのみを伝送するようにすれば良い。
例えば、制御信号用伝送線路406では第1データフラグメントを伝送するが、第1データフラグメントの前後にヘッダ情報及びフッタ情報が付加されていない。一方、データ信号用伝送線路407では、ヘッダ情報、第2データフラグメント及びフッタ情報を含むデータパケットが伝送される。第1データフラグメントのビット長は、データパケットの第2データフラグメントのビット長と同一であり、第1データフラグメントは第2データフラグメントに同期して伝送される。ここで、制御信号用伝送線路406の隣接する第1データフラグメントと第1データフラグメントとの間の第1タイムスロットで、制御信号用伝送線路406の信号振幅を変化させる。このように、前述の期間に割込要求を出力することによっても、データの伝送効率の低下を抑制しつつ、データフラグメントの情報が損失するのを防止することができる。
具体的に、タイムスロット取得部453は、パラメータ記憶部454から取得したヘッダ長、フッタ長及び基本タイムスロット長に基づいて、第1データフラグメント間の間隔である第1タイムスロット長を算出して取得する。ここで、第1タイムスロット長は、フッタ長+基本タイムスロット長+ヘッダ長により算出される。タイムスロット取得部453は、割込要求通知部463に第1タイムスロット長を送信する。割込要求通知部463は、変化させる信号振幅値を決定し、第1タイムスロット長に基づいて信号振幅を変化させる変化期間を決定する。そして、割込要求通知部463は、決定した信号振幅値及び変化期間に基づくリード割込要求を生成する。また、タイミング制御部452は、リードデータ受信部460からデータ信号用伝送線路407を介してデータパケットを受信し、ヘッダ情報に含まれる第2データフラグメントのビット長を取得する。タイムスロット取得部453は、ヘッダ長、第2データフラグメントのビット長及び第1タイムスロット長をクロックCLKHに基づいて順にカウントし、第1タイムスロットの開始位置を取得する。そして、タイムスロット取得部453は、第1タイムスロットの開始位置を割込要求通知部463に送信する。割込要求通知部463は、第1タイムスロットの開始位置に基づいて、リード割込要求を動的インピーダンス回路417に入力し、制御信号用伝送線路406の信号振幅を変化させる。SDメモリカード402の電位差検出回路439がこの信号振幅の変化を検出し、SDメモリカード402のCPU430はホスト端末401がリード割込要求を出力したことを認識する。
(6−5)
上記では、制御信号用伝送線路406及びデータ信号用伝送線路407を伝送するデータパケットは同期して伝送されるが、同期して伝送される構成に限定されない。各データパケットのヘッダ情報及びフッタ情報に基づいて各伝送線路に伝送されれば良い。
(6−6)
上記では、制御信号用伝送線路及びデータ信号用伝送線路を介してデータ伝送が行われている。しかし、本実施形態は、複数の伝送線路を介したデータ伝送への適用のみならず、1本の伝送線路を介したデータ伝送への適用も可能である。
(6−7)
上記では、割込要求が出力されていない場合は伝送線路の信号振幅が大きく、割込要求が出力されると、伝送線路の信号振幅が小さくなる。しかし、信号振幅の変化により割込要求が認識できれば良く、割込要求が出力されていない場合は伝送線路の信号振幅が小さく、割込要求が出力されると、伝送線路の信号振幅が大きくなっても良い。
(6−8)
SDメモリカードでは、データは8ビット単位で処理を行っている。よって、フッタ長+基本タイムスロット長+ヘッダ長により算出される上記の拡張タイムスロット長は、8の倍数であるのが好ましい。
(6−9)
送信側からのデータの伝送が終了し、受信側が割込要求を出力できる状態になるまでには、例えば数クロック分の切替時間t1が必要となる。また、受信側からの割込要求の出力が終了し、送信側が再びデータの伝送を開始できる状態になるまでには、例えば数クロック分の切替時間t2が必要となる。よって、拡張タイムスロット長は、この切替時間t1及びt2を含むビット長であるのが好ましい。つまり、拡張タイムスロット長は、フッタ長+切替時間t1のビット数+コマンドのビット数+切替時間t2+ヘッダ長により算出される。この拡張タイムスロット長もまた、8の倍数であるのが好ましい。
(6−10)
上記割込要求は、リード割込要求及びライト割込要求に限られず、その他送信側からのデータ送信を一定期間遅らせたり、データの再送を指示したりする要求であっても良い。
(6−11)
上記では、データパケットは、ヘッダ情報、データパケット及びフッタ情報を順に含むように形成されているが、これらの順序は前記に限定されない。
(6−12)
上記では、本実施形態は、制御用信号伝送線路及びデータ信号用伝送線路を有する通信システムについて説明した。しかし、制御信号用伝送線路を有さず、データ信号用伝送線路のみを有する通信システムにおいても本実施形態を適用可能である。
(6−13)
上記では、ヘッダ長、フッタ長及び基本タイムスロット長が通信規格として定められているとした。しかし、例えばSDメモリカード毎にヘッダ長、フッタ長及び基本タイムスロット長が異なり、ホスト端末とSDメモリカードとの通信開始時に、これらの情報を相互に取得するようにしても良い。
(6−14)
上記では、各データフラグメントのビット長がヘッダ情報に記載されている構成を説明した。しかし、各データフラグメントのビット長が通信規格により固定されていても良い。この場合には、パラメータ記憶部にデータフラグメントのビット長を格納しておけば良く、第2データパケットのヘッダ長から随時データフラグメントのビット長を取得する必要は無い。
(6−15)
上記では、リムーバブルメモリデバイスであるSDメモリカードを例に挙げて説明したが、ホスト端末から供給されたクロックでリードデータをホスト端末に送信するような携帯可能なリムーバブルメモリデバイスであれば、本発明を適用可能な範囲はSDメモリカードに限定されない。例えば、その他、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード、メモリースティック等が挙げられる。また、リムーバブルメモリデバイスが搭載可能なメモリは、フラッシュメモリに限定されず、MRAM、 FeRAM等の不揮発性メモリが挙げられる。
(6−16)
前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blue−ray Disc)、半導体メモリを挙げることができる。
前記コンピュータプログラムは、前記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
本発明は、送受信装置間のデータ伝送において、割込信号の伝送を行いつつ、データの伝送効率の低下を抑制することを実現する場合に利用可能である。
本発明の第1実施形態例に係る通信システムの全体構成図。 リード時のデータ伝送の様子を示すタイムチャート。 ホスト端末101のCPU110及びSDメモリカード102のCPU130の機能構成図。 本実施形態の通信システムにおける、リード時の処理の流れの一例を示すフローチャート。 本実施形態の通信システムにおける、ライト時の処理の流れの一例を示すフローチャート。 本発明の第2実施形態例の第1実施例に係る通信システムの全体構成図。 本発明の第2実施形態例の第2実施例に係る通信システムの全体構成図。 リード時のデータ伝送の様子を示すタイムチャート。 第1実施例におけるリード時のデータ伝送の様子を示すタイムチャート。 ホスト端末201のCPU210及びSDメモリカード202のCPU230の機能構成図。 第1実施例の通信システムにおける、リード時の処理の流れの一例を示すフローチャート。 第2実施例におけるリード時のデータ伝送の様子を示すタイムチャート。 ホスト端末201のCPU210及びSDメモリカード202のCPU230の機能構成図。 第2実施例の通信システムにおける、リード時の処理の流れの一例を示すフローチャート。 本発明の第3実施形態例に係る通信システムの全体構成図。 リード時のデータ伝送の様子を示すタイムチャート。 動的インピーダンス回路417の構成図。 電位差検出回路の構成図。 リード割込要求が出力された場合の制御信号用伝送線路406の状態及び割込検出信号の状態を示すフローチャート。 制御信号用伝送線路406、動的インピーダンス回路417、電位差検出回路439及び割込検出信号の出力状態等を説明する説明図。 ホスト端末401のCPU410及びSDメモリカード402のCPU430の機能構成図。 本実施形態の通信システムにおける、リード時の処理の流れの一例を示すフローチャート。 本実施形態の通信システムにおける、ライト時の処理の流れの一例を示すフローチャート。 電位差検出回路の別の構成図。 制御信号用伝送線路406、動的インピーダンス回路417、図24で構成される電位差検出回路439及び割込検出信号の出力状態を説明する別の説明図。 本実施形態例の変形例に係る通信システムの全体構成。 比較器の構成を示す構成図。 制御信号用伝送線路406、比較器441及び割込検出信号の出力状態等を説明する説明図。
符号の説明
101、201、401:ホスト端末
102、202、402:SDメモリカード
105、205、405:クロック信号用伝送線路
106、206、406:制御信号用伝送線路
107、207、407:データ信号用伝送線路
110、130、210、230、410、430:CPU
150:クロック生成部
151:クロック送信部
152、172、252、272、452:タイミング制御部
153、173、453、473:タイムスロット取得部
154、174、254、274、454、474:パラメータ記憶部
155、175、255、275、355、455:コマンド生成部
156、176、256、276、456:コマンド送信部
157、177、257、277、457、477:コマンド受信部
158、258、458:レスポンス受信部
178、278、478:レスポンス送信部
159、259、459:リードデータ生成部
179、279、379、479:リードデータ送信部
160、260、460:リードデータ受信部
161、180、261、280、461、480:送信データ生成部
162、262、462:ライトデータ送信部
170、470:クロック受信部
181、281、481:ライトデータ受信部
182、282、482:ライトデータ生成部
237:割込記憶回路
250a、350:第1クロック生成部
251a、351:第1クロック送信部
250b:第2クロック生成部
251b:第2クロック送信部
270a、370:第1クロック受信部
270b:第2クロック受信部
337:割込検出カウンタ
384:内部クロックカウント部
385:割込要求認識部
406a、406b:差動伝送路
419、439:電位差検出回路
463、483:割込要求通知部
484:割込要求認識部

Claims (27)

  1. 受信側と送信側とが少なくとも2本以上の伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、
    前記送信側は、前記複数のデータフラグメントのうち第1データフラグメントを前記伝送線路のうち第1伝送線路を介して伝送し、ヘッダ情報と、前記第1データフラグメントと同じビット長からなる第2データフラグメントと、フッタ情報とを含むデータパケットを前記第1伝送線路以外の第2伝送線路を介して伝送し、かつ前記第1データフラグメントと前記第2データフラグメントとを同期して伝送し、
    前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットにおいて、前記送信側を制御するための割込信号を前記受信側から前記送信側に送信することを特徴とする、信号伝送方法。
  2. 前記第1データフラグメントには、ヘッダ情報又はフッタ情報のいずれかが付加されていることを特徴とする、請求項1に記載の信号伝送方法。
  3. 前記割込信号は、前記第1データフラグメント及び前記データパケットの送信を停止するための信号であることを特徴とする、請求項1に記載の信号伝送方法。
  4. データを複数のデータフラグメントに分割し、前記複数のデータフラグメントから第1データフラグメントを生成し、ヘッダ情報、前記第1データフラグメントと同じビット長からなる第2データフラグメント及びフッタ情報を含むデータパケットを生成するデータ生成部と、
    前記第1データフラグメントと前記第2データフラグメントとを同期させて、前記第1データフラグメントを少なくとも2本以上の伝送線路のうち第1伝送線路を介して、前記データパケットを前記第1伝送線路以外の第2伝送線路を介して受信側に送信するデータ送信部と、
    前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットにおいて、割込信号を前記受信側から受信する割込信号受信部と、
    を含むことを特徴とする送受信装置。
  5. 前記割込信号の受信に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含み、
    前記割込信号は、前記第1データフラグメント及び前記データパケットの送信を停止するための信号であり、
    前記データ送信部は、前記割込信号受信部が前記割込信号を受信した時に、前記第1及び第2伝送線路を介して送信している前記第1データフラグメント及び前記データパケットの送信を完了し、
    前記レスポンス送信部は、前記第1データフラグメント及び前記データパケットの送信完了後、前記受信側にレスポンスを送信することを特徴とする、請求項4に記載の送受信装置。
  6. 複数のデータフラグメントに分割されて伝送されるデータを送信側から受信する送受信装置であって、
    前記複数のデータフラグメントのうち第1データフラグメントを少なくとも2本以上の伝送線路のうち第1伝送線路を介して、ヘッダ情報、前記第1データフラグメントと同じビット長からなる第2データフラグメント及びフッタ情報を含むデータパケットを前記第1伝送線路以外の第2伝送線路を介して、前記送信側から受信するデータ受信部と、
    前記第1伝送線路の隣接する前記第1データフラグメント間の間隔であるタイムスロットの開始位置及びタイムスロット長を取得するタイムスロット取得部と、
    前記タイムスロット長に基づいて前記送信側を制御するための割込信号を生成する割込信号生成部と、
    前記タイムスロットにおいて、前記タイムスロットの開始位置に基づいて、前記割込信号を前記送信側に送信する割込信号送信部と、
    前記第1データフラグメントと前記第2データフラグメントとは同期して伝送されていることを特徴とする、送受信装置。
  7. 請求項4に記載の送受信装置と、請求項6に記載の送受信装置と、を含む通信システム。
  8. 受信側と送信側とが伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、
    前記受信側は、クロック信号用伝送路を介して第1クロックを送信側に送信し、
    前記送信側は、前記伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記受信側に送信し、
    前記受信側は、前記送信側からの前記データフラグメントの送信を停止するために、前記第1クロックの送信側への送信を停止することを特徴とする、信号伝送方法。
  9. 前記伝送線路は少なくとも2本以上であり、
    前記受信側は、前記第1クロックの送信側への送信を停止した後、前記送信側を制御するための割込信号を、前記伝送線路のうち第1伝送線路を介して前記送信側に送信し、かつ前記第1伝送線路以外の第2伝送線路を介して前記送信側に第2クロックを送信し、
    前記送信側は、前記割込信号を前記第2クロックに基づいて受信することを特徴とする、請求項8に記載の信号伝送方法。
  10. 前記割込信号は、前記データフラグメントの送信を停止するための信号であることを特徴とする、請求項9に記載の信号伝送方法。
  11. 前記受信側は、前記第1クロックの送信側への送信を停止した後、前記送信側を制御するために割込要求を出力し、
    前記送信側は、カウント値が前記第1クロックの受信によりリセットされる内部クロックを有しており、前記第1クロックの送信停止により、前記内部クロックのカウント値が所定値を超えることに基づいて前記割込要求を認識することを特徴とする、請求項8に記載の信号伝送方法。
  12. 前記割込要求は、前記データフラグメントの送信を停止するための要求であることを特徴とする、請求項11に記載の信号伝送方法。
  13. データを複数に分割してデータフラグメントを生成するデータ生成部と、
    前記データフラグメントを受信側に送信するための第1クロックを、クロック信号用伝送路を介して前記受信側から受信する第1クロック受信部と、
    伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記受信側に送信するデータ送信部とを含み、
    前記受信側からの前記第1クロックの送信が停止され、前記データ送信部は前記データフラグメントの前記受信側への送信を停止することを特徴とする、送受信装置。
  14. 前記伝送線路は少なくとも2本以上であり、
    前記データ送信部は、前記少なくとも2本以上の伝送線路を介して前記データフラグメントを前記第1クロックに基づいて前記受信側に送信し、
    前記伝送線路のうち第2伝送線路を介して前記受信側から第2クロックを受信する第2クロック受信部と、
    前記第2クロックに基づいて、前記伝送線路のうち第1伝送線路を介して、前記送信側を制御するための割込信号を前記受信側から受信する割込信号受信部とを含み、
    前記受信側からの前記第1クロックの送信が停止された後、前記第2クロック受信部は前記第2クロックを受信し、かつ前記割込信号受信部は前記第2クロックに基づいて前記割込信号を受信することを特徴とする、請求項13に記載の送受信装置。
  15. 前記割込信号の受信に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、請求項14に記載の送受信装置。
  16. 前記第1クロックの受信によりリセットされる内部クロックのカウント値をカウントする内部クロックカウント部と、
    前記内部クロックのカウント値に基づいて、前記受信側の割込要求を認識する割込要求認識部とをさらに含み、
    前記割込要求認識部は、前記第1クロックの送信停止により、前記内部クロックのカウント値が所定値を超えることに基づいて前記割込要求を認識することを特徴とする、請求項13に記載の送受信装置。
  17. 前記割込要求の認識に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、請求項16に記載の送受信装置。
  18. 複数のデータフラグメントに分割されて伝送されるデータを送信側から受信する送受信装置であって、
    前記送信側が前記データフラグメントの送信に用いる第1クロックを、クロック信号用伝送路を介して前記送信側に送信する第1クロック送信部と、
    伝送線路を介し、前記データフラグメントを前記第1クロックに基づいて前記送信側から受信するデータ受信部とを含み、
    前記第1クロック送信部は、前記送信側からの前記データフラグメントの送信を停止するために、前記第1クロックの送信側への送信を停止することを特徴とする、送受信装置。
  19. 前記伝送線路は少なくとも2本以上であり、
    前記データ受信部は、前記少なくとも2本以上の伝送線路を介して前記データフラグメントを前記第1クロックに基づいて前記送信側から受信し、
    前記送信側を制御するための割込信号を生成する割込信号生成部と、
    前記伝送線路のうち第1伝送線路を介して前記送信側に前記割込信号を送信する割込信号送信部と、
    前記伝送線路のうち第2伝送線路を介して前記送信側に第2クロックを送信する第2クロック送信部とを含み、
    前記第1クロック送信部が前記第1クロックの送信側への送信を停止した後、前記割込信号送信部は、前記第1伝送線路を介して前記送信側に前記割込信号を送信し、かつ前記第2クロック送信部は、前記第2伝送線路を介して前記送信側に第2クロックを送信することを特徴とする、請求項18に記載の送受信装置。
  20. 前記第1クロックの送信を停止するように前記第1クロック送信部を制御することにより、前記送信側を制御するための割込要求を前記送信側に通知する割込要求通知部をさらに含むことを特徴とする、請求項18に記載の送受信装置。
  21. 請求項13に記載の送受信装置と、請求項18に記載の送受信装置と、を含む通信システム。
  22. 受信側と送信側とが伝送線路を介して、データを複数のデータフラグメントに分割して送受信し、
    前記受信側は、前記伝送線路の隣接する前記データフラグメント間において、前記送信側を制御するための割込要求を前記送信側に通知するために、前記伝送線路の信号振幅を変化させ、
    前記送信側は、前記信号振幅の変化を検出することを特徴とする、信号伝送方法。
  23. 前記割込要求は、前記データフラグメントの送信を停止するための要求であることを特徴とする、請求項22に記載の信号伝送方法。
  24. データを複数に分割し、複数のデータフラグメントを生成するデータ生成部と、
    前記データフラグメントを伝送線路を介して受信側に送信するデータ送信部と、
    前記伝送線路の隣接する前記データフラグメント間において、前記伝送線路の信号振幅の変化を検出することで、前記受信側からの割込要求を認識する割込要求認識部と、
    を含むことを特徴とする送受信装置。
  25. 前記割込要求の認識に応じて、レスポンスを前記受信側に送信するレスポンス送信部をさらに含むことを特徴とする、請求項24に記載の送受信装置。
  26. データを分割した複数のデータフラグメントを伝送線路を介して送信側から受信するデータ受信部と、
    前記伝送線路の隣接する前記データフラグメント間において、前記伝送線路の信号振幅を変化させることで、前記送信側を制御するための割込要求を前記送信側に通知する割込要求通知部と、
    を含むことを特徴とする、送受信装置。
  27. 請求項24に記載の送受信装置と、請求項26に記載の送受信装置と、を含む通信システム。
JP2008513094A 2006-04-26 2007-02-20 信号伝送方法、送受信装置及び通信システム Expired - Fee Related JP4931912B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008513094A JP4931912B2 (ja) 2006-04-26 2007-02-20 信号伝送方法、送受信装置及び通信システム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2006121459 2006-04-26
JP2006121459 2006-04-26
PCT/JP2007/053010 WO2007125670A1 (ja) 2006-04-26 2007-02-20 信号伝送方法、送受信装置及び通信システム
JP2008513094A JP4931912B2 (ja) 2006-04-26 2007-02-20 信号伝送方法、送受信装置及び通信システム

Publications (2)

Publication Number Publication Date
JPWO2007125670A1 true JPWO2007125670A1 (ja) 2009-09-10
JP4931912B2 JP4931912B2 (ja) 2012-05-16

Family

ID=38655210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008513094A Expired - Fee Related JP4931912B2 (ja) 2006-04-26 2007-02-20 信号伝送方法、送受信装置及び通信システム

Country Status (6)

Country Link
US (1) US8099537B2 (ja)
EP (1) EP2015230B1 (ja)
JP (1) JP4931912B2 (ja)
CN (1) CN101432762B (ja)
TW (1) TW200813730A (ja)
WO (1) WO2007125670A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7581678B2 (en) 2005-02-22 2009-09-01 Tyfone, Inc. Electronic transaction card
US8332680B2 (en) * 2007-08-13 2012-12-11 Rambus Inc. Methods and systems for operating memory in two modes
US9741027B2 (en) 2007-12-14 2017-08-22 Tyfone, Inc. Memory card based contactless devices
US9297842B2 (en) 2008-01-15 2016-03-29 Nagasaki University, National University Corporation Frequency detection device
US20100033310A1 (en) * 2008-08-08 2010-02-11 Narendra Siva G Power negotation for small rfid card
US7961101B2 (en) 2008-08-08 2011-06-14 Tyfone, Inc. Small RFID card with integrated inductive element
US8451122B2 (en) 2008-08-08 2013-05-28 Tyfone, Inc. Smartcard performance enhancement circuits and systems
WO2010099093A1 (en) 2009-02-24 2010-09-02 Tyfone, Inc. Contactless device with miniaturized antenna
US8548069B2 (en) 2009-10-29 2013-10-01 Panasonic Corporation Data transmission system capable of transmitting interrupt signal without interrupt gate period
JP5367539B2 (ja) * 2009-11-09 2013-12-11 シャープ株式会社 インターフェース装置
KR20110093606A (ko) * 2009-11-18 2011-08-18 가부시키가이샤 어드밴티스트 수신 장치, 시험 장치, 수신 방법, 및 시험 방법
JP5580786B2 (ja) * 2010-07-23 2014-08-27 パナソニック株式会社 ホスト装置、周辺装置、通信システム、および、通信方法
CN102142954B (zh) * 2010-11-30 2014-11-05 中兴通讯股份有限公司 一种机架内的时间同步方法及设备
CN102087697B (zh) * 2011-02-25 2013-08-14 深圳市中兴长天信息技术有限公司 一种阅读器与无线标签的数据传输方法
JP6029437B2 (ja) * 2012-11-30 2016-11-24 ルネサスエレクトロニクス株式会社 半導体装置及びアクセス制限方法
US20160124876A1 (en) * 2014-08-22 2016-05-05 HGST Netherlands B.V. Methods and systems for noticing completion of read requests in solid state drives
JP2017004404A (ja) * 2015-06-15 2017-01-05 ソニー株式会社 通信装置、及び、制御方法
US11345467B2 (en) * 2017-04-07 2022-05-31 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Data transmission method, and sending end device

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4395756A (en) * 1981-02-17 1983-07-26 Pitney Bowes Inc. Processor implemented communications interface having external clock actuated disabling control
GB2097563B (en) * 1981-03-07 1985-10-16 British Aerospace Serial bus interface unit
US4467412A (en) * 1981-05-18 1984-08-21 Atari, Inc. Slave processor with clock controlled by internal ROM & master processor
JPS60225269A (ja) * 1984-04-24 1985-11-09 Casio Comput Co Ltd デ−タ転送方式
JP2733242B2 (ja) * 1988-03-28 1998-03-30 松下電工株式会社 時分割多重電送方式
JP2812537B2 (ja) * 1990-06-06 1998-10-22 日本放送協会 Icカードシステム
US5319752A (en) * 1992-09-18 1994-06-07 3Com Corporation Device with host indication combination
US5655131A (en) * 1992-12-18 1997-08-05 Xerox Corporation SIMD architecture for connection to host processor's bus
US5530875A (en) * 1993-04-29 1996-06-25 Fujitsu Limited Grouping of interrupt sources for efficiency on the fly
TW230808B (en) * 1993-06-04 1994-09-21 Philips Electronics Nv A two-line mixed analog/digital bus system and a station for use in such a system
JP2848784B2 (ja) * 1994-08-02 1999-01-20 沖電気工業株式会社 パケット交換方式
US5671421A (en) * 1994-12-07 1997-09-23 Intel Corporation Serial interrupt bus protocol
JPH08328684A (ja) * 1995-05-30 1996-12-13 Toshiba Corp コンピュータシステム
US5835779A (en) * 1996-03-15 1998-11-10 Lucent Technologies Inc. Message transmission among processing units using interrupt control technique
JP3690873B2 (ja) * 1996-06-07 2005-08-31 シチズン時計株式会社 無接点型メモリカード・システムの通信回路
DE69733182T2 (de) 1996-05-09 2006-02-16 Citizen Watch Co., Ltd. Speichermediumsystem mittels einer kontaktlosen karte
WO1998043021A2 (en) * 1997-03-25 1998-10-01 Intellidyne, Llc Forced-air heater regulator of heating cycles
US5940485A (en) * 1997-06-12 1999-08-17 Trivium Systems, Inc Data interface connected in line between a keyboard and a keyboard port of a personal computer
KR100258361B1 (ko) * 1997-11-21 2000-06-01 김영환 출력 데이터 보정장치를 가지는 고속 디램 시스템
US6081523A (en) * 1997-12-05 2000-06-27 Advanced Micro Devices, Inc. Arrangement for transmitting packet data segments from a media access controller across multiple physical links
US6262998B1 (en) * 1997-12-24 2001-07-17 Nortel Networks Limited Parallel data bus integrated clocking and control
US6321288B1 (en) * 1999-01-26 2001-11-20 National Semiconductor Corporation Serial IRQ slave controller with auto-synchronization
WO2000051281A2 (en) * 1999-02-26 2000-08-31 Usar Systems, Inc. Power conservation with a synchronous master-slave serial data bus
KR100342020B1 (ko) * 1999-03-12 2002-06-27 윤종용 고유번호를 구비한 원격제어컴퓨터시스템 및 그것의 관리 방법
JP2000293485A (ja) * 1999-04-08 2000-10-20 Matsushita Electric Ind Co Ltd 通信インターフェース
CN2478178Y (zh) * 2000-04-22 2002-02-20 杭州南望电力科技有限公司 远程图像监控服务器
US6782486B1 (en) * 2000-08-11 2004-08-24 Advanced Micro Devices, Inc. Apparatus for stopping and starting a clock in a clock forwarded I/O system depending on the presence of valid data in a receive buffer
JP2002183692A (ja) 2000-12-14 2002-06-28 Sony Corp Icカードおよびicカードシステム
US6832325B2 (en) * 2000-12-29 2004-12-14 Intel Corporation Device on a source synchronous bus sending data in quadrature phase relationship and receiving data in phase with the bus clock signal
US7003580B1 (en) * 2000-12-29 2006-02-21 Sprint Communications Company L.P. Bandwidth boost using a wireless communication path
US7313715B2 (en) * 2001-02-09 2007-12-25 Samsung Electronics Co., Ltd. Memory system having stub bus configuration
JP3870717B2 (ja) * 2001-05-14 2007-01-24 セイコーエプソン株式会社 データ転送制御装置及び電子機器
US6549162B1 (en) * 2001-06-12 2003-04-15 Qualcomm, Inc. Method and apparatus for transmitting real time data from aircraft to ground stations using a data protocol over a satellite system
DE10138883B4 (de) * 2001-08-08 2006-03-30 Infineon Technologies Ag Verfahren sowie Vorrichtung zur synchronen Signalübertragung zwischen Logik-/Speicherbausteinen
US7355971B2 (en) * 2001-10-22 2008-04-08 Intel Corporation Determining packet size in networking
US7200151B2 (en) * 2002-06-28 2007-04-03 Manter Venitha L Apparatus and method for arbitrating among equal priority requests
KR100506529B1 (ko) * 2003-08-06 2005-08-03 삼성전자주식회사 데이터 통신 네트워크에서의 경로 엠티유 발견 네트워크장치, 시스템 및 그 방법
JP2005135109A (ja) * 2003-10-29 2005-05-26 Kyocera Mita Corp データ転送システム
US7073146B2 (en) * 2003-10-30 2006-07-04 Atrenta Inc. Method for clock synchronization validation in integrated circuit design
WO2005094555A2 (en) * 2004-03-25 2005-10-13 Washington University Design and use of restartable clocks including crystal-based restartable clocks
US7362739B2 (en) * 2004-06-22 2008-04-22 Intel Corporation Methods and apparatuses for detecting clock failure and establishing an alternate clock lane
US7418528B2 (en) * 2004-07-22 2008-08-26 Texas Instruments Incorporated Multimode, multiline data transfer system and method of operating the same
JP4361565B2 (ja) * 2004-09-21 2009-11-11 株式会社日立コミュニケーションテクノロジー ノード装置、パケット制御装置、無線通信装置および送信制御方法
CN101088260A (zh) * 2004-12-28 2007-12-12 松下电器产业株式会社 通信装置、存储介质、集成电路以及通信系统
US20060143348A1 (en) * 2004-12-29 2006-06-29 Wilson Matthew T System, method, and apparatus for extended serial peripheral interface
EP1879333A1 (en) * 2006-07-12 2008-01-16 Siemens Aktiengesellschaft Method for transmitting packets in a network
JP2008022678A (ja) * 2006-07-14 2008-01-31 Matsushita Electric Ind Co Ltd モータ駆動装置及びモータ制動方法
JP5217982B2 (ja) * 2008-12-04 2013-06-19 ソニー株式会社 情報処理装置および方法、並びにプログラム

Also Published As

Publication number Publication date
EP2015230A4 (en) 2012-02-22
JP4931912B2 (ja) 2012-05-16
TW200813730A (en) 2008-03-16
EP2015230B1 (en) 2014-04-02
EP2015230A1 (en) 2009-01-14
WO2007125670A1 (ja) 2007-11-08
CN101432762B (zh) 2012-05-09
US20090290582A1 (en) 2009-11-26
US8099537B2 (en) 2012-01-17
CN101432762A (zh) 2009-05-13

Similar Documents

Publication Publication Date Title
JP4931912B2 (ja) 信号伝送方法、送受信装置及び通信システム
US9461937B2 (en) Method and device for a serial data transmission with additionally inserted data
US7548736B2 (en) Transmitter, receiver, data transfer system, transmission method, reception method, computer program for transmission, computer program for reception, and recording medium
RU2597502C2 (ru) Способ и устройство для адаптируемой к размерам памяти последовательной передачи данных
JP4773377B2 (ja) 通信システム、通信装置及びフロー制御方法
JP2017516353A (ja) 集積回路間(i2c)バス上でインバンドで追加情報を送信するための方法
GB2532950A (en) Digital accessory interface calibration
KR101689077B1 (ko) 시간 동기화 방법 및 그 장치
TW201717039A (zh) 用於通用序列匯流排2.0頻寬保留之方法及系統
JP2002359661A (ja) 送受信回路及び送受信方法
EP3373507A1 (en) Key sharing device, key sharing system, key sharing method and computer-readable medium
JP2007101457A (ja) 送信装置及び受信装置及び時刻通知方法及び時刻設定方法
JP4875832B2 (ja) 転送装置、プログラム及びコンピュータ読み取り可能な記憶媒体
JP2003122709A (ja) データ転送装置、データ転送システム、およびデータ転送方法
WO2017000737A1 (zh) 一种传输校验方法、节点、系统与计算机存储介质
US20110255470A1 (en) Data processing device, system and method for data processing, recording medium with program recorded therein, data transfer device, system and method for data transfer, and recording medium with program recorded therein
JP5958335B2 (ja) 通信ノード、及び通信システム
WO2016181096A1 (en) Digital accessory interface
US10862830B2 (en) Real-time on-chip data transfer system
JP2020088439A (ja) Can通信装置、can通信システム、can通信方法およびプログラム
CN115103291B (zh) 一种fifo缓存控制方法、装置及系统
JP7034397B2 (ja) 経路冗長化システム、送信側装置、受信側装置、経路冗長化方法、および、経路冗長化プログラム
WO2015040833A1 (ja) 通信装置及び通信装置の制御方法
KR102016029B1 (ko) 차량 통신의 부하 분산 장치 및 방법
JP5432790B2 (ja) 通信システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091119

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120214

R150 Certificate of patent or registration of utility model

Ref document number: 4931912

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150224

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees