(57)【要約】【課題】連続送信するデータ量が大容量となっても、回路規模が増加することのない赤外線データ送信装置を提供する。【解決手段】所定の単位に区切った単位送信データと、送信パケットの区切りを示す所定のフラグを送信すべきか否かを示すフラグビットとを対応させて記憶するデータバッファ（１７）と、データバッファ（１７）に単位送信データを格納するＤＭＡ回路（１８）と、単位送信データを赤外線信号として送信する送信部（１４、１５、１６、２０）と、有効状態に設定されたフラグビットを所定のフラグを送信するべき単位送信データに対応させて記録して、送信部（１４、１５、１６、２０）により読み出された単位送信データに対応するフラグビットが有効状態であるか否かに基づいて所定のフラグを送信させるか否かを制御する送信制御回路（１９）とを備え、送信部（１４、１５、１６、２０）は、フラグビットが有効状態である場合、単位送信データの送信後に所定のフラグを送信する。【選択図】図３
2011091506.tif 000002
【特許請求の範囲】
【請求項１】
送信するべき送信データを所定の単位に区切った単位送信データと、前記単位送信データの格納されるべき送信パケットの区切りを示す所定のフラグを前記単位送信データが送信されるときに送信すべきか否かを示すフラグビットとを対応させて記憶するデータバッファと、
前記データバッファに前記単位送信データを格納するＤＭＡ回路と、
前記データバッファから読み出された前記単位送信データを赤外線信号として送信する送信部と、
前記所定のフラグを送信するべき前記単位送信データが前記ＤＭＡ回路により前記データバッファへ記憶されるときに有効状態に設定された前記フラグビットを前記単位送信データに対応させて記録して、前記送信部により前記データバッファから読み出された前記単位送信データに対応する前記フラグビットが有効状態であるか否かに基づいて前記送信部に前記所定のフラグを送信させるか否かを制御する送信制御回路と
を備え、
前記送信部は、送信するべき単位送信データに対応する前記フラグビットが有効状態である場合、前記送信するべき単位送信データの送信後に前記所定のフラグを送信する
赤外線データ送信装置。
【請求項２】
請求項１に記載の赤外線データ送信装置であって、
前記データバッファは、
前記単位送信データを記憶するバイトデータ格納領域と、
送信するべき全ての送信データにおける最終の単位送信データであることを示す転送終了ビットを前記単位送信データに対応させて記憶する転送終了ビット格納領域と、
特定の送信パケットに格納することが可能な最終の単位送信データであることを示すパケット終端ビットを前記単位送信データに対応させて記憶するパケット終端ビット格納領域と
を具備するデータ格納領域を備え、
前記送信部は、前記送信するべき単位送信データに対応する前記転送終了ビットが前記有効状態である場合、前記送信するべき単位送信データの送信後に、前記パケットのストップフラグを送信し、前記送信するべき単位送信データに対応する前記パケット終端ビットが前記有効状態である場合、前記送信するべき単位送信データの送信後に、前記ストップフラグと、前記パケットのプリアンブルフラグとスタートフラグとを連続して送信する
赤外線データ送信装置。
【請求項３】
請求項２に記載の赤外線データ送信装置であって、
前記送信制御装置は、
前記ＤＭＡ回路が前記単位送信データを前記データバッファへ記憶させる度に、記憶された単位送信データのバイト数をカウントする送信バイト長カウンタと、
前記カウントが前記送信パケットに格納することが可能な最大バイト長に到達したときに前記データバッファへ記憶される前記単位送信データに対応する前記パケット終端ビットを前記有効状態に設定して、前記送信するべき全ての送信データにおける最後の単位送信データが前記ＤＭＡ回路より前記データバッファへ記憶されるときに前記データバッファへ記憶される単位送信データに対応する前記転送終了ビットを前記有効状態に設定するフラグビット制御回路と
を備える赤外線データ送信装置。
【請求項４】
請求項３に記載の赤外線データ送信装置であって、
前記送信制御回路は、
前記送信部により前記データ格納領域から前記単位送信データが読み出されるときに、読み出された単位送信データに対応する前記パケット終端ビットおよび前記転送終了ビットを前記データ格納領域から取得して、前記転送終了ビットが前記有効状態である場合に前記ストップフラグを送信させて、前記パケット終端ビットが前記有効状態である場合に前記プリアンブルフラグと前記スタートフラグとを送信させるように前記送信部を制御するＩｒＤＡフラグ制御回路
をさらに備える赤外線データ送信装置。
【請求項５】
請求項４に記載の赤外線データ送信装置であって、
前記データバッファは、
前記ＤＭＡ回路により前記バイトデータ格納領域へ記憶される前記単位送信データの前記バイトデータ格納領域における書き込み位置を指定する書き込みポインタ制御回路と、
前記送信部により前記バイトデータ格納領域から読み出される前記単位送信データの前記バイトデータ格納領域における読み出し位置を指定する読み出しポインタ制御回路と
をさらに備え、
前記フラグビット制御回路は、
前記パケット終端ビット格納領域、あるいは前記転送終了ビット格納領域における前記書き込み位置に対応する前記パケット終端ビット、あるいは前記転送終了ビットへ有効状態を記録し、
前記ＩｒＤＡフラグ制御回路は、
前記パケット終端ビット格納領域、あるいは前記転送終了ビット格納領域における前記読み出し位置に対応する前記パケット終端ビットあるいは前記転送終了ビットに基づいて、前記送信部に前記所定のフラグを送信させるか否かを制御する
赤外線データ送信装置。
【請求項６】
送信するべき送信データを所定の単位に区切った単位送信データと、前記単位送信データの格納されるべき送信パケットの区切りを示す所定のフラグを前記単位送信データが送信されるときに送信すべきか否かを示すフラグビットとを対応させてデータバッファへ記憶するステップと、
前記データバッファに前記単位送信データを格納するステップと、
前記データバッファから読み出された前記単位送信データを赤外線信号として送信するステップと、
前記所定のフラグを送信するべき前記単位送信データが前記データバッファへ記憶されるときに有効状態に設定された前記フラグビットを前記単位送信データに対応させて記録するステップと、
前記データバッファから読み出された前記単位送信データに対応する前記フラグビットが有効状態であるか否か基づいて前記所定のフラグを送信させるか否かを制御するステップと、
送信するべき単位送信データに対応する前記フラグビットが有効状態である場合、前記送信するべき単位送信データの送信後に前記フラグを送信するステップと
を備える赤外線データ送信方法。
【請求項７】
請求項６に記載の赤外線データ送信方法であって、
前記データバッファへ記憶するステップは、
前記単位送信データをバイトデータ格納領域へ記憶するステップと、
送信するべき全ての送信データにおける最終の単位送信データであることを示す転送終了ビットを前記単位送信データに対応させて転送終了ビット格納領域へ記憶するステップと、
特定の送信パケットに格納することが可能な最終の単位送信データであることを示すパケット終端ビットを前記単位送信データに対応させてパケット終端ビット格納領域へ記憶するステップと
を含み、
前記フラグを送信するステップは、
前記送信するべき単位送信データに対応する前記転送終了ビットが前記有効状態である場合、前記送信するべき単位送信データの送信後に、前記パケットのストップフラグを送信するステップと、
前記送信するべき単位送信データに対応する前記パケット終端ビットが前記有効状態である場合、前記送信するべき単位送信データの送信後に、前記ストップフラグと、前記パケットのプリアンブルフラグとスタートフラグとを連続して送信するステップと
を含む赤外線データ送信方法。
【請求項８】
請求項７に記載の赤外線データ送信方法であって、
前記フラグビットを前記単位送信データに対応させて記録するステップは、
前記単位送信データを前記データバッファへ記憶させる度に、記憶された単位送信データのバイト数をカウントするステップと、
前記カウントが前記送信パケットに格納することが可能な最大バイト長に到達したときに前記データバッファへ記憶される前記単位送信データに対応する前記パケット終端ビットを前記有効状態に設定するステップと、
前記送信するべき全ての送信データにおける最後の単位送信データが前記ＤＭＡ回路より前記データバッファへ記憶されるときに前記データバッファへ記憶される単位送信データに対応する前記転送終了ビットを前記有効状態に設定するステップと
を含む赤外線データ送信方法。
【請求項９】
請求項８に記載の赤外線データ送信方法であって、前記所定のフラグを送信させるか否かを制御するステップは、
前記データ格納領域から前記単位送信データが読み出されるときに、読み出された単位送信データに対応する前記パケット終端ビットおよび前記転送終了ビットを前記データ格納領域から取得するステップと、
前記転送終了ビットが前記有効状態である場合に前記ストップフラグを送信させて、前記パケット終端ビットが前記有効状態である場合に前記プリアンブルフラグと前記スタートフラグとを送信させるように前記送信部を制御するステップと
を含む赤外線データ送信方法。
【請求項１０】
請求項９に記載の赤外線データ送信方法であって、前記データバッファに前記単位送信データを格納するステップは、
前記バイトデータ格納領域へ記憶される前記単位送信データの書き込み位置を指定するステップ
を含み、前記単位送信データを赤外線信号として送信するステップは、
前記バイトデータ格納領域から読み出される前記単位送信データの前記バイトデータ格納領域における読み出し位置を指定するステップ
を含み、前記フラグビットを前記単位送信データに対応させて記録するステップは、
前記パケット終端ビット格納領域、あるいは前記転送終了ビット格納領域における前記書き込み位置に対応する前記パケット終端ビット、あるいは前記転送終了ビットへ有効状態を記録するステップ
を含み、前記所定のフラグを送信させるか否かを制御するステップは、
前記パケット終端ビット格納領域、あるいは前記転送終了ビット格納領域における前記読み出し位置に対応する前記パケット終端ビット、あるいは前記転送終了ビットに基づいて所定のフラグを送信させるか否かを制御するステップ
を含む赤外線データ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、赤外線データ送信装置に関し、特に複数のパケットの連続送信を行う赤外線データ送信装置に関する。
【背景技術】
【０００２】
ワイヤレスデータ通信が可能な機器が広く普及している。情報機器、携帯電話機、プリンタ機器のような機器間で、ワイヤレス通信でデータ送受信を行えることは非常に便利であり、ニーズも多い。ワイヤレスデータ通信方式の一つとして赤外線データ通信が知られている。赤外線データ通信の通信規格として、ＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ）で規格化されているＩｒＤＡ  ＤＡＴＡ（以下、ＩｒＤＡ規格と記載する。）がある。近年、伝送するべきデータ量は増加の一途をたどっており、赤外線データ通信においても、通信の高速化、効率化が求められている。赤外線データ通信における伝送速度の高速化に関して、次に示すような技術が開示されている。
【０００３】
特許文献１は、パケットを連続で送信する「Ｂａｃｋ  ｔｏ  Ｂａｃｋ」送信を実現し、効率よくデータ転送を行う赤外線データ送信装置を開示している。特許文献１の赤外線データ送信装置は、データ記憶手段と、データバッファと、赤外光変換手段と、通信制御手段とを備える。データ記憶手段には、データの送受信に必要な物理的パラメータならびに送信すべきパケットの数がシステムにより設定される。データバッファは、システムにより生成される送信データを連続的に読出し、そのデータを一時格納する。赤外光変換手段は、データバッファを介して得られるデータを赤外光に変換して外部へ送信する。通信制御手段は、実際に送信されたパケット数をカウントし、予め設定されたパケット数に達したことを検知し、送信が完了したことをシステムに通知する。特許文献１の赤外線データ送信装置によれば、「Ｂａｃｋ  ｔｏ  Ｂａｃｋ」送信を実現することができ、これによって、複数のパケット連続で送信することが可能となり、より効率よくデータ転送を行うことが可能となる。
【０００４】
以下、図面を参照して、特許文献１の赤外線データ送信装置を説明する。図１は、特許文献１における赤外線データ送信装置の構成を示す図である。
【０００５】
特許文献１の赤外線データ送信装置は、赤外線発光装置１と、データ符号化回路２と、パラレスシリアルデータ変換回路（以下、Ｐ／Ｓ変換回路）３と、データバッファ４と、通信完了検出回路５と、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）回路６と、割り込み要因生成回路７と、データ記憶回路８と、プリアンブル送信制御回路９と、ローカルバス１０と、メモリ１１と、マイクロプロセッサ１２と、バスブリッジ１３とを備える。
【０００６】
赤外線発光装置１は、送信データの電気信号を赤外線信号へ変換して対向装置へ送信する。データ符号化回路２は、通信方式に応じたデータの符号化を行う。Ｐ／Ｓ変換回路３は、送信データをパラレルデータからシリアルデータへ変換する。データバッファ４は、メモリ１１から読み出された送信データをバッファリングする。データ送信完了検出回路５は、データがデータバッファ４からＰ／Ｓ変換回路３へ読み出される度に、内蔵される送信バイト長カウンタをインクリメントし、予め定められているバイト長に達した時に、データ符号化回路２へトリガを与える。ＤＭＡ回路６は、メモリ１１に対するリードライトアクセスを制御する。割り込み要因生成回路７は、送信データの送信完了後にシステムに対して送信完了を通知する。データ記憶回路８は、入出力レジスタとして用いられる。プリアンブル送信制御回路９は、ＤＭＡ転送のトリガが発生した際にデータ符号化回路２に対してプリアンブルフラグ送信のトリガを与え、割り込み要因生成回路７から割り込みが発生する毎に内臓の送信パケット数カウンタをインクリメントし、予め定められているパケット数に達した時にデータ符号化回路２にプリアンブルフラグ送信停止のトリガを与える。メモリ１１は、赤外線データ送信装置の機能を実現するプログラムを記憶し、リング領域が割り当てられるとともに生成される送信パケットが格納される。マイクロプロセッサ１２は、メモリに記憶されたプログラムを実行する。メモリ１１及びマイクロプロセッサ１２は、バスブリッジ１３、ローカルバス１０を介して、赤外線データ送信装置の他の構成と接続されている。
【０００７】
このような構成による特許文献１の赤外線データ送信装置の動作方法を説明する。図２は、特許文献１における赤外線データ送信装置の動作フローを示す図である。
【０００８】
はじめに、マクロプロセッサ１２は、予め設定されてある送受信選択、伝送速度、転送方式等からなる物理パラメータ情報と、送信パケット数とをデータ記憶装置８へ書き込む。その後、マイクロプロセッサ１２は、ＤＭＡ回路６のトリガをかける（ステップＳ１）。ＤＭＡ回路６のトリガは、データ記憶回路８の特定の領域に対して書き込みを行うことにより実現する。このトリガを受けて、プリアンブル送信制御回路９は、データ符号化回路２及びＤＭＡ回路６へトリガをかける。データ符号化回路２は、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）の送信を開始する（ステップＳ２）。プリアンブル送信制御回路９は、プリアンブルフラグに続いてスタートフラグの送信を行う。赤外線発光装置１は、データ符号化回路２から入力されるプリアンブルフラグとスタートフラグとを赤外線信号へ変換して対向装置へ送信する。
【０００９】
一方、ＤＭＡ回路６は、メモリ１１のリング領域から読出しを行う（ステップＳ３）。続いて、このパケットに対応するデータ領域から送信データを読み出す（ステップＳ４）。読み出された送信データはデータバッファ４に保存される。送信データは、さらにＰ／Ｓ変換回路３によって１バイト単位に読み出される。データ符号化回路２は、赤外線発光装置１を介して送信データを送信する（ステップＳ５）。
【００１０】
通信完了検出回路５は、Ｐ／Ｓ変換回路３がデータバッファ４から１バイト単位でデータを読み出す度に、内蔵された送信バイト長カウンタをインクリメントしていく。通信完了検出回路５は、カウンタの値が予めリング領域から読み出した送信バイト長の値に達したか否かを判定する（ステップＳ６）。通信完了検出回路５は、カウンタの値が送信バイト長に達すると、データ符号化回路２へ全データの読出しが完了したことを通知する。データ符号化回路２は、最終バイトの送信が完了した時点でストップフラグを送信する（ステップＳ７）。そして、マイクロプロセッサ１２は、割り込み要因生成回路７から割り込みを受信すると（ステップＳ８）、メモリ１１のリング領域へ送信情報を書き込む（ステップＳ９）。
【００１１】
プリアンブル送信制御回路９は、割り込み要因生成回路７からデータ送信完了の通知を受ける。プリアンブル送信制御回路９は、内蔵された送信パケット数カウンタをインクリメントする。そして、実際の送信パケット数が予めデータ記憶回路８に書き込まれた送信パケット数に達したか否かを判定する（ステップＳ１０）。実際の送信パケット数がデータ記憶回路８に記録された送信パケット数に達していない場合、プリアンブル送信制御回路９は、再び符号化回路２に対してプリアンブルフラグ送信のトリガをかける（ステップＳ１０のｆａｌｓｅ）。符号化回路２は、プリアンブルフラグ送信のトリガを受けると、ストップフラグを送信した後、すぐにプリアンブルフラグとスタートフラグとを送信する（ステップＳ２へ戻る）。このようにしてパケットを送信して、実際の送信パケット数がデータ記憶回路８に記録された送信パケット数に達すると、処理を終了する（ステップＳ１１）。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開平１１−１０３３３０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、特許文献１のような従来の赤外線データ送信装置では、データ量に比例して回路規模が大きくなるという課題がある。データ記憶回路８は、データ転送前に送信するべきパケット数と各パケットのサイズ情報とを記憶する。データ記憶回路８は、連続で送信するパケット数を記憶するため、３ビットのレジスタを備える構成となる。これは、ＩｒＤＡ規格１．１で規格される連続で送信されるパケット数の最大値が７パケットであることに対応している。また、データ記憶回路８は、各パケットのバイト長を記憶するために、１２ビットのレジスタを７段備える構成となる。これは、ＩｒＤＡ規格１．１で規格される最大パケット長が２０４８バイトであることに対応している。
【００１４】
このように、従来の赤外線データ送信装置では、連続送信するパケット数や、最大パケット長に対応するレジスタが必要となり、連続送信するパケット数や、最大パケット長が大きくなると、それに伴い回路も大規模になってしまう。例えば、ＩｒＤＡ１．１規格を想定した回路仕様のままＩｒＤＡ規格で規格化されているＩｒＳｉｍｐｌｅに対応させて、データ記憶回路８に連続転送されるパケット数と各パケットのバイト長を格納する場合を考えてみると、仮に、連続送信パケット数を２００パケットとすると８ビットのレジスタが必要となり、さらに、最大パケット長である２０４８バイトを考慮して各パケットのバイト長を記憶するためには少なくとも２３２１のレジスタが必要となり、膨大な回路規模となってしまう。
【課題を解決するための手段】
【００１５】
以下に、（発明を実施するための形態）で使用される番号を用いて、課題を解決するための手段を説明する。これらの番号は、（特許請求の範囲）の記載と（発明を実施するための形態）との対応関係を明らかにするために付加されたものである。ただし、それらの番号を、（特許請求の範囲）に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１６】
本発明の赤外線データ送信装置は、送信するべき送信データを所定の単位に区切った単位送信データと、単位送信データの格納されるべき送信パケットの区切りを示す所定のフラグを単位送信データが送信されるときに送信すべきか否かを示すフラグビットとを対応させて記憶するデータバッファ（１７）と、データバッファ（１７）に単位送信データを格納するＤＭＡ回路（１８）と、データバッファ（１７）から読み出された単位送信データを赤外線信号として送信する送信部（１４、１５、１６、２０）と、所定のフラグを送信するべき単位送信データがＤＭＡ回路（１８）によりデータバッファ（１７）へ記憶されるときに有効状態に設定されたフラグビットを単位送信データに対応させて記録して、送信部（１４、１５、１６、２０）によりデータバッファ（１７）から読み出された単位送信データに対応するフラグビットが有効状態であるか否かに基づいて送信部（１４、１５、１６、２０）に所定のフラグを送信させるか否かを制御する送信制御回路（１９）とを備え、送信部（１４、１５、１６、２０）は、送信するべき単位送信データに対応するフラグビットが有効状態である場合、送信するべき単位送信データの送信後にフラグを送信する。
【００１７】
本発明の赤外線データ送信方法は、送信するべき送信データを所定の単位に区切った単位送信データと、単位送信データの格納されるべき送信パケットの区切りを示す所定のフラグを単位送信データが送信されるときに送信すべきか否かを示すフラグビットとを対応させてデータバッファ（１７）へ記憶するステップと、データバッファ（１７）に単位送信データを格納するステップと、データバッファ（１７）から読み出された単位送信データを赤外線信号として送信するステップと、所定のフラグを送信するべき単位送信データがデータバッファ（１７）へ記憶されるときに有効状態に設定されたフラグビットを単位送信データに対応させて記録するステップと、データバッファ（１７）から読み出された単位送信データに対応するフラグビットが有効状態であるか否か基づいて所定のフラグを送信させるか否かを制御するステップと、送信するべき単位送信データに対応するフラグビットが有効状態である場合、送信するべき単位送信データの送信後にフラグを送信するステップとを備える。
【発明の効果】
【００１８】
本発明によれば、連続送信するデータ量が大容量となっても、回路規模が増加することのない赤外線データ送信装置を提供することができる。そのため、新しいＩｒＤＡ規格への対応が必要になり、当該規格において連続送信するデータ量が大容量になったとしても、回路規模が大規模にならずに済む。
【図面の簡単な説明】
【００１９】
【図１】特許文献１における赤外線データ送信装置の構成を示す図である。
【図２】特許文献１における赤外線データ送信装置の動作フローを示す図である。
【図３】本実施形態における赤外線データ送信装置の構成を示す図である。
【図４】本実施形態におけるデータバッファ１７と送信制御回路１９とのより詳細な構成を示す図である。
【図５】ＩｒＤＡ規格に規定されるＩｒＤＡパケットのフレーム構成を示す図である。
【図６】本実施形態における赤外線データ送信装置の動作フローを示す図である。
【発明を実施するための形態】
【００２０】
添付図面を参照して、本発明の実施形態による赤外線データ送信装置を以下に説明する。
【００２１】
［構成の説明］
はじめに、本実施形態における赤外線データ送信装置の構成の説明を行う。
【００２２】
図３は、本実施形態における赤外線データ送信装置の構成を示す図である。本実施形態の赤外線データ送信装置は、赤外線発光装置１４と、データ符号化回路１５と、パラレルシリアルデータ変換回路（以下、Ｐ／Ｓ変換回路）１６と、データバッファ１７と、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）回路１８と、送信制御回路１９と、プリアンブル送信制御回路２０と、データ記憶回路２１と、割り込み要因生成回路２２と、メモリ２３と、バスブリッジ２４と、マイクロプロセッサ２５とを備える。また、ＤＭＡ回路１８と、データ記憶回路２１と、割り込み要因生成回路２２と、メモリ２３と、マイクロプロセッサ２５とは、ローカルバス２００、及び、バスブリッジ２４を介してそれぞれ接続されており、データ送受信が可能である。以下、赤外線データ送信装置の備える各構成の説明を行う。
【００２３】
赤外線発光装置１４は、赤外線信号を送信する。赤外線発光装置１４は、データ符号化回路１５と接続される。赤外線発光装置１４は、データ符号化回路１５から符号化後の送信データを入力して、送信データを赤外線信号へ変換し、図示されない対向する赤外線受信装置へ赤外線信号を送信する。
【００２４】
データ符号化回路１５は、送信データの符号化を行う。データ符号化回路１５は、Ｐ／Ｓ変換回路１６と、送信制御回路１９と、プリアンブル送信制御回路２０と、赤外線発光装置１４と、それぞれ接続される。データ符号化回路１５は、Ｐ／Ｓ変換回路１６からシリアルデータへ変換後の送信データを入力して、通信方式に応じた符号化を送信データに対して行い、符号化後の送信データを赤外線発光装置１４へ出力する。また、データ符号化回路１５は、送信制御回路１９からフラグ制御通知信号２０５を入力すると、ストップフラグ（ＳＴＯ）を生成して、ストップフラグを赤外線発光装置１４へ出力する。さらに、符号化回路１５は、プリアンブル送信制御回路２０からプリアンブルフラグ送信のトリガ信号を入力すると、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）とスタートフラグ（ＳＴＡ）とを生成して、プリアンブルフラグとスタートフラグを連続して赤外線発光装置１４へ出力する。
【００２５】
Ｐ／Ｓ変換回路１６は、送信データのパラレルシリアル変換を行う。Ｐ／Ｓ変換回路１６は、データバッファ１７と、送信制御回路１９と、データ符号化回路１５と、それぞれ接続される。Ｐ／Ｓ変換回路１６は、データバッファ１７から入力される送信データ２０４を、パラレルデータからシリアルデータへ変換を行って、シリアルデータへ変換後の送信データをデータ符号化回路１５へ出力する。Ｐ／Ｓ変換回路１６は、データバッファ１７から送信データを１バイト単位で入力する。Ｐ／Ｓ変換回路１６は、１バイトの送信データのパラレルシリアル変換を完了する度に、パラレルシリアル変換完了信号（以下、Ｐ／Ｓ変換完了信号）２０６をデータバッファ１７と、送信制御回路１９へ出力する。
【００２６】
プリアンブル送信制御回路２０は、データ符号化回路１５へプリアンブルフラグを送信するトリガを出力する。プリアンブル送信制御回路２０は、データ符号化回路１５と、送信制御回路１９と、データ記憶回路２１と、それぞれ接続される。プリアンブル送信制御回路２０は、マイクロプロセッサ２５からデータ記憶回路２１へのデータ書き込みによるＤＭＡ転送のトリガが発生すると、データ符号化回路１５へプリアンブルフラグを送信するトリガを出力する。また、プリアンブル送信制御回路２０は、送信制御回路１９からフラグ制御通知信号２０５を入力すると、データ符号化回路１５へプリアンブルフラグを送信するトリガを出力する。
【００２７】
データ記憶回路２１は、入出力レジスタとして用いられる。データ記憶回路２１は、プリアンブル送信制御回路２０と接続されており、また、ローカルバス２００、及び、バスブリッジ２４を介して、ＤＭＡ回路１８と、マイクロプロセッサ２５と接続される。データ記憶回路２１は、送信データを送信開始するときに、マイクロプロセッサ２５から送信データの転送方式や、転送速度や、送受信の選択といったパラメータを設定される。データ記憶回路２１は、マイクロプロセッサ２５からデータ記憶回路２１へのパラメータの書き込みを、ＤＭＡ転送開始のトリガとして検知し、ＤＭＡ回路１８とプリアンブル送信制御回路とへ、データ送信開始のトリガを出力する。
【００２８】
ＤＭＡ回路１８は、メモリ２３に対するＤＭＡリードライトアクセスを制御する。ＤＭＡ回路１８は、データバッファ１７と、送信制御回路１９と、それぞれ接続されており、また、ローカルバス２００を介してデータ記憶回路２１と、メモリ２３と接続される。ＤＭＡ回路１８は、データ記憶回路２１からデータ送信開始のトリガを入力すると、メモリ２３から送信データを取得して、データバッファ１７へ格納する。また、ＤＭＡ回路１８は、データバッファ１７から、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）書き込み許可信号４１０を入力した場合にも、メモリ２３から送信データを取得して、データバッファ１７へ格納する。ＤＭＡ回路１８は、送信データをデータバッファ１７へ格納するときに、書き込み信号２０２をデータバッファ１７と送信制御回路１９とへ出力する。また、ＤＭＡ回路１８は、送信するべき全送信データの最終の送信データをデータバッファ１７へ格納するときに、転送終了通知２０３を送信制御回路１９へ出力する。
【００２９】
割り込み要因生成回路２２は、マイクロプロセッサ２５へ割り込み処理を通知する。割り込み要因生成回路２２は、送信制御回路１９と接続され、また、ローカルバス２００、及びバスブリッジ２４を介してマイクロプロセッサ２５と接続される。割り込み要因生成回路２２は、送信制御回路１９から送信アンダーラン通知２０７を入力すると、送信データ転送時における送信アンダーラン割り込みをローカルバス２００、及び、バスブリッジ２４を介してマイクロプロセッサ２５へ通知する。
【００３０】
メモリ２３は、赤外線データ送信装置の機能を実現するための処理用プログラムや、データを記憶している。メモリ２３は、バスブリッジ２４を介してマイクロプロセッサ２４と接続されており、また、バスブリッジ２４、及び、ローカルバス２００を介して、ＤＭＡ回路１８と接続される。メモリ２３は、リング領域が割り当てられると共に、データ領域に送信データを記憶する。
【００３１】
マイクロプロセッサ２５は、赤外線データ送信装置の機能を実行する。マイクロプロセッサ２５は、バスブリッジ２４を介してメモリ２３と接続されており、また、バスブリッジ２４、及びローカルバス２００を介してデータ記憶装置２１、割り込み要因生成回路２２と、それぞれ接続されている。マイクロプロセッサ２５は、メモリ２３に記憶された処理用プログラムを読み込んで実行することにより、赤外線データ送信装置の機能を実行する。マイクロプロセッサ２５は、送信データの送信開始にあたり、送信データの転送方式や、転送速度や、送受信の選択といったパラメータをデータ記憶回路２１へ設定する。マイクロプロセッサ２５によるデータ記憶回路２１へのパラメータの設定が、ＤＭＡ転送開始のトリガとなる。
【００３２】
データバッファ１７は、送信データをバッファリングする。データバッファ１７は、Ｐ／Ｓ変換回路１６と、ＤＭＡ回路１８と、送信制御装置１９と、それぞれ接続されている。データバッファ１７は、ＤＭＡ回路１８によりメモリ２３から読み出された送信データ２０１をバッファリングして、Ｐ／Ｓ変換回路１６へ送信データ２０４を出力する。データバッファ１７は、ＤＭＡ回路１８へＦＩＦＯ書き込み許可信号４１０を出力して、メモリ２３から取得された送信データ２０１と、書き込み信号２０２をＤＭＡ回路１８から入力する。また、データバッファ１７は、Ｐ／Ｓ変換回路１６からＰ／Ｓ変換完了信号２０６を入力すると、Ｐ／Ｓ変換回路１６へ送信データ２０４を出力する。さらに、データバッファ１７は、送信制御回路１９からパケット終端ビット設定信号４００と、転送終了ビット設定信号４０２を入力して、書き込みポインタ情報３００と、読出しポインタ情報３０１と、パケット終端ビット情報４０１と、転送終了ビット情報４０３とを、送信制御回路１９へ出力する。データバッファ１７の詳細な構成は後述する。
【００３３】
送信制御回路１９は、ＩｒＤＡ規格のパケットの送信を制御する。送信制御回路１９は、データ符号化回路１５と、Ｐ／Ｓ変換回路１６と、データバッファ１７と、ＤＭＡ回路１８と、プリアンブル送信制御回路２０と、割り込み要因生成回路２２と、それぞれ接続される。送信制御回路１９は、Ｐ／Ｓ変換回路１６からＰ／Ｓ変換完了信号２０６を入力する。送信制御回路１９は、プリアンブル送信制御回路２０とデータ符号化回路１５へフラグ制御通知信号２０５を出力して、ストップフラグ（ＳＴＯ）、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）、スタートフラグ（ＳＴＡ）の送信を制御する。また、送信制御回路１９は、送信アンダーラン通知２０７を割り込み要因生成回路２２へ出力して、マイクロプロセッサ２５への割り込み処理を制御する。送信制御回路１９の詳細な構成は後述する。
【００３４】
続いて、図４を参照して、データバッファ１７と送信制御回路１９の構成を詳細に説明する。図４は、本実施形態におけるデータバッファ１７と送信制御回路１９とのより詳細な構成を示す図である。
【００３５】
はじめに、データバッファ１７の詳細な構成を説明する。本実施形態におけるデータバッファ１７は、書き込みポインタ制御回路３５０と、読み出しポインタ制御回路３５１と、ＦＩＦＯ制御回路３５２と、データ格納領域３５３とを備える。以下、データバッファ１７の備える各構成を説明する。
【００３６】
まず、データ格納領域３５３は、ＦＩＦＯ形式のデータ構造を備える。データ格納領域３５３は、Ｐ／Ｓ変換回路１６と、ＤＭＡ回路１８と、書き込みポインタ制御回路３５０と、読み出しポインタ制御回路３５１と、ＦＩＦＯ制御回路３５２と、後述する送信制御回路１９のフラグビット制御回路２７と、それぞれ接続されている。データ格納領域３５３は、バイトデータ格納領域２８０と、パケット終端ビット格納領域３０２と、転送終了ビット格納領域３０３とを備える。
【００３７】
バイトデータ格納領域２８０は、８ビット（１バイト）毎の送信データを格納する。パケット終端ビット格納領域３０２は、１バイトの送信データ毎に対応する１ビットのパケット終端ビットを格納する。転送終了ビット格納領域３０３は、１バイトの送信データ毎に対応する１ビットの転送終了ビットを格納する。本実施形態におけるデータ格納領域３５３は、バイトデータ格納領域２８０の８ビットと、パケット終端ビット格納領域３０２の１ビットと、転送終了ビット格納領域３０３の１ビットとを、それぞれ対応させて格納した１０ビット幅を１段として、この１段あたり１０ビット幅データを、７段格納したデータ構造を備える。
【００３８】
パケット終端ビット格納領域３０２は、パケット終端ビットを格納する。パケット終端ビットは、当該パケット終端ビットに対応してバイトデータ格納領域２８０に格納された送信データが、ＩｒＤＡ規格のパケット（以下、ＩｒＤＡパケット）のフレーム構成において、１パケットに格納可能なバイト数における最終の１バイトであるか否かを示す。パケット終端ビット格納領域３０２の各パケット終端ビットは、後述する送信制御回路１９のフラグビット制御回路２７から出力されるパケット終端ビット設定信号４００により設定される。パケット終端ビット設定信号４００は、データ格納領域３５３がｎ段であるとすると、１ビット×ｎ段＝ｎビットのビット幅を備える。このｎビットのそれぞれに設定された値により、パケット終端ビット格納領域３０２の各パケット終端ビットが設定（セット）され、また消去（クリア）される。パケット終端ビット格納領域３０２の各パケット終端ビットは、パケット終端ビット情報４０１として、送信制御回路１９のフラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とへ出力される。
【００３９】
転送終了ビット格納領域３０３は、転送終了ビットを格納する。転送終了ビットは、当該転送終了ビットに対応してバイトデータ格納領域２８０に格納された送信データが、送信するべき全送信データにおける最終バイトであるか否かを示す。転送終了ビット格納領域３０３の転送終了ビットは、後述する送信制御回路１９のフラグビット制御回路２７から出力される転送終了ビット設定信号４０２により設定される。転送終了ビット設定信号４０２は、データ格納領域３５３がｎ段であるとすると、１ビット×ｎ段＝ｎビットのビット幅を備える。このｎビットのそれぞれに設定された値により、転送終了ビット格納領域３０３の各転送終了ビットが設定（セット）され、また、消去（クリア）される。転送終了ビット格納領域３０３の各転送終了ビットは、転送終了ビット情報４０３として、送信制御回路１９のフラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とへ出力される。
【００４０】
次に、書き込みポインタ制御回路３５０は、書き込みポインタ情報３００を出力する。書き込みポインタ情報３００は、送信データ２０１をバイトデータ格納領域２８０の何段目へ格納するべきかを示す情報である。書き込みポインタ制御回路３５０は、ＤＭＡ回路１８と、ＦＩＦＯ制御回路３５２と、データ格納領域３５３と、後述する送信制御回路１９のフラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とに、それぞれ接続される。書き込みポインタ制御回路３５０は、ＤＭＡ回路１８から書き込み信号２０２を入力すると、データ格納領域３５３と、ＦＩＦＯ制御回路３５２と、送信制御回路１９のフラグビット制御回路２７とＩｒＤＡフラグ制御通知信号生成回路２９とへ、書き込みポインタ情報３００を出力する。
【００４１】
次に、読み出しポインタ制御回路３５１は、読み出しポインタ情報３０１を出力する。読み出しポインタ情報３０１は、バイトデータ格納領域２８０の何段目に格納されている送信データ２０４を読み出すべきかを示す情報である。読み出しポインタ制御回路３５１は、Ｐ／Ｓ変換回路１６と、ＦＩＦＯ制御回路３５２と、データ格納領域３５３と、後述する送信制御回路１９のフラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とに、それぞれ接続される。読み出しポインタ制御回路３５１は、Ｐ／Ｓ変換回路１６からＰ／Ｓ変換完了信号２０６を入力すると、ＦＩＦＯ制御回路３５２と、データ格納領域３５３と、送信制御回路１９のフラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とへ、読み出しポインタ情報３０１を出力する。
【００４２】
なお、書き込みポインタ情報３００と、読み出しポインタ情報３０１とは、バイトデータ格納領域２８０の初段を初期値として示し、以後、バイトデータ格納領域２８０の各段を巡回して示す。
【００４３】
次に、ＦＩＦＯ制御回路３５２は、データ格納領域３５３への送信データの書き込み及び読み出しを制御する。ＦＩＦＯ制御回路３５２は、Ｐ／Ｓ変換回路１６と、ＤＭＡ回路１８と、書き込みポインタ制御回路３５０と、読み出しポインタ制御回路３５１と、データ格納領域３５３とに、それぞれ接続される。
【００４４】
ＦＩＦＯ制御回路３５２は、ＤＭＡ回路１８から書き込み信号２０２を入力すると、書き込みポインタ制御回路３５０から入力される書き込みポインタ情報３００と、読み出しポインタ制御回路３５１から入力される読み出しポインタ情報３０１とに基づいて、ＤＭＡ回路１８により転送される送信データ２０１を格納することが可能な領域が、バイトデータ格納領域２８０に存在するか否かを判定する。ＦＩＦＯ制御回路３５２は、送信データ２０１を書き込み可能と判定すると、ＦＩＦＯ書き込み許可信号４１０をＤＭＡ回路１８へ通知する。ＦＩＦＯ制御回路３５２は、バイトデータ格納領域２８０へライトイネーブル（Ｗｒｉｔｅ  Ｅｎａｂｌｅ）信号４０８を出力して、書き込みポインタ情報３００の示す送信データ２０１の格納位置へのデータ書き込みを制御する。ＤＭＡ回路１８は、ＦＩＦＯ制御回路３５２からＦＩＦＯ書き込み許可信号４１０を入力しない限り送信データの転送は行わない。これにより、バイトデータ格納領域２８０へ過剰な送信データの書き込みを抑制している。
【００４５】
また、ＦＩＦＯ制御回路３５２は、Ｐ／Ｓ変換回路１６からＰ／Ｓ変換完了信号２０６を入力すると、読み出しポインタ制御回路３５１から入力される読み出しポインタ情報３０１の示す次に読み出しを行うべきバイトデータ格納領域２８０の格納位置を特定する。ＦＩＦＯ制御回路３５２は、バイトデータ格納領域２８０へ、リードイネーブル（Ｒｅａｄ  Ｅｎａｂｌｅ）信号４０９を出力して、読み出しポインタ情報３０１の示す次に読み出しを行うべき送信データの格納位置へのデータ読み出しを制御する。
【００４６】
以上が、本実施形態におけるデータバッファ１７の詳細な説明である。
【００４７】
次に、送信制御回路１９の詳細な説明を行う。本実施形態における送信制御回路１９は、送信バイト長カウンタ２６と、フラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とを備える。以下、送信制御回路１９の備える各構成を説明する。
【００４８】
まず、送信バイト長カウンタ２６は、バイトデータ格納領域２８０へ格納された送信データのバイト数をカウントする。送信バイト長カウンタ２６は、ＤＭＡ回路１８と、フラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９と、それぞれ接続される。
【００４９】
送信バイト長カウンタ２６は、送信バイト長をカウントするためのカウンタを構成する。送信バイト長カウンタ２６は、ＤＭＡ回路１８から書き込み信号２０２を入力すると、カウンタを「＋１」ずつインクリメントする。つまり、送信バイト長カウンタ２６は、ＤＭＡ回路１８がメモリ２３からバイトデータ格納領域２８０へ送信データを１バイト格納する毎に、カウンタを「＋１」ずつ増加させていくことになる。なお、送信バイト長カウンタ２６によるカウンタの初期値は「０」である。
【００５０】
送信バイト長カウンタ２６が、カウンタの値をクリアして初期値「０」へ戻すための条件（以下、クリア条件）は、２つ存在する。
【００５１】
第１のクリア条件は、カウンタの値がＩｒＤＡ規格における１パケットに格納可能なバイト数の上限である２０４８バイトに達するか、もしくは、予めデータ記憶回路２１へ設定された上限バイト数に達した場合である。この場合、送信バイト長カウンタ２６は、カウンタの値をクリアして初期値へ戻し、限界通知信号２０８をフラグビット制御回路２７へ出力する。
【００５２】
第２のクリア条件は、ＤＭＡ回路１８から転送終了通知２０３を入力した場合である。送信バイト長カウンタ２６は、ＤＭＡ回路１８から転送終了通知２０３を入力すると、カウンタの値をクリアして初期値へ戻す。なお、このとき、送信バイト長カウンタ２６は、限界通知信号２０８の出力は行わない。
【００５３】
また、送信バイト長カウンタ２６は、ＩｒＤＡフラグ制御通知信号生成回路２９へ、データ存在通知信号２０９を出力する。データ存在通知信号２０９は、バイトデータ格納領域２８０に１バイト以上の送信データが格納されているか否かを示す信号である。送信バイト長カウンタ２６は、カウンタの値に基づいてデータ存在通知信号２０９を出力する。例えば、送信バイト長カウンタ２６は、カウンタの値が「０」の場合に、バイトデータ格納領域２８０に１バイト以上の送信データは存在しないことを示し、カウンタの値が「０」以外の場合に、バイトデータ格納領域２８０に１バイト以上の送信データは存在することを示すように、データ存在通知信号２０９を切り替えてもよい。
【００５４】
次に、フラグビット制御回路２７は、データ格納領域３５３のパケット終端ビット、及び転送終了ビットを設定する。フラグビット制御回路２７は、Ｐ／Ｓ変換回路１６と、ＤＭＡ回路１８と、送信バイト長カウンタ２６と、書き込みポインタ制御回路３５０と、読み出しポインタ制御回路３５１と、データ格納領域３５３と、それぞれ接続される。
【００５５】
フラグビット制御回路２７は、パケット終端ビット格納領域３０２のパケット終端ビットを設定する。フラグビット制御回路２７は、送信バイト長カウンタ２６から限界通知信号２０８を入力すると、パケット終端ビット設定信号４００をパケット終端ビット格納領域３０２へ出力する。パケット終端ビット設定信号４００は、前述の通り、パケット終端ビット格納領域３０２へ設定するべきパケット終端ビットの数と同じビット幅を備える。つまり、本実施形態において、パケット終端ビット設定信号４００は、７ビットのビット幅を備える。フラグビット制御回路２７は、送信バイト長カウンタ２６から限界通知信号２０８を入力すると、パケット終端ビット設定信号４００において、書き込みポインタ制御回路３５０から入力する書き込みポインタ情報３００の示す送信データの格納位置に対応するビットを「１」と設定する。
【００５６】
ここで、パケット終端ビット格納領域３０２において、パケット終端ビットが「１」の場合、当該パケット終端ビットに対応するバイトデータ格納領域２８０の送信データが「有効状態」であることを示す。一方、パケット終端ビット格納領域３０２において、パケット終端ビットが「０」の場合、当該パケット終端ビットに対応するバイトデータ格納領域２８０の送信データが「無効状態」であることを示す。前述の通り、パケット終端ビット格納領域３０２に格納されるパケット終端ビットは、当該パケット終端ビットに対応してバイトデータ格納領域２８０に格納された送信データが、ＩｒＤＡパケットのフレーム構成において、１パケットに格納可能なバイト数における最終の１バイトであるか否かを示す。
【００５７】
フラグビット制御回路２７は、送信バイト長カウンタ２６から限界通知信号２０８を入力することで、バイトデータ格納領域２８０へ格納される送信データがＩｒＤＡ規格に規定された１パケットに格納可能なバイト数における最終の１バイトであることを検知して、書き込みポインタ制御回路３５０から入力される書き込みポインタ情報３００により当該送信データの格納される位置を検出して、当該送信データの格納位置を「有効状態」であるビット「１」に設定したパケット終端ビット設定信号４００をパケット終端ビット格納領域３０２へ出力する。パケット終端ビット格納領域３０２は、パケット終端ビット設定信号４００により指定された格納位置のパケット終端ビットがビット「１」に設定される。これにより、フラグビット制御回路２７は、パケット終端ビット情報４０１を入力するときに、当該送信データがＩｒＤＡ規格に規定された１パケットに格納可能なバイト数における最終の１バイトであることを検知することができる。
【００５８】
また、フラグビット制御回路２７は、転送終了ビット格納領域２０３の転送終了ビットを設定する。フラグビット制御回路２７は、ＤＭＡ回路１８から転送終了通知２０３を入力すると、転送終了ビット設定信号４０２を転送終了ビット格納領域３０３へ出力する。転送終了ビット設定信号４０２は、前述の通り、転送終了ビット格納領域３０３へ設定するべき転送終了ビットの数と同じビット幅を備える。つまり、本実施形態において、転送終了ビット設定信号４０２は、７ビットのビット幅を備える。フラグビット制御回路２７は、ＤＭＡ回路１８から転送終了通知２０３を入力すると、書き込みポインタ制御回路３５０から入力する書き込みポインタ情報３００の示す送信データの格納位置に対応する転送終了ビット設定信号４０２のビットを「１」と設定する。
【００５９】
ここで、転送終了ビット格納領域３０３において、転送終了ビットが「１」の場合、当該転送終了ビットに対応する送信データが「有効状態」であることを示す。一方、転送終了ビット格納領域３０３において、転送終了ビットが「０」の場合、当該転送終了ビットに対応する送信データが「無効状態」であることを示す。前述の通り、転送終了ビットは、当該転送終了ビットに対応してバイトデータ格納領域２８０に格納された送信データが、送信するべき全送信データにおける最終の１バイトであるか否かを示す。
【００６０】
フラグビット制御回路２７は、ＤＭＡ回路１８から転送終了通知２０３を入力すると、バイトデータ格納領域２８０へ格納される送信データが当該転送終了ビットに対応してバイトデータ格納領域２８０に格納された送信データが、送信するべき全送信データにおける最終の１バイトであることを検知して、書き込みポインタ制御回路３５０から入力される書き込みポインタ情報３００により当該送信データの格納される位置を検出して、当該送信データの格納位置を「有効状態」であるビット「１」に設定した転送終了ビット設定信号４０２を転送終了ビット格納領域３０３へ出力する。転送終了ビット格納領域３０３は、転送終了ビット設定信号４０２により指定された格納位置がビット「１」に設定される。これにより、フラグビット制御回路２７は、転送終了ビット情報４０３を入力するときに、当該送信データが、送信するべき全送信データにおける最終の１バイトであることを検知することができる。
【００６１】
また、フラグビット制御回路２７は、パケット終端ビット格納領域３０２のパケット終端ビットと転送終了ビット格納領域３０３の転送終了ビットとをクリアする。フラグビット制御回路２７は、Ｐ／Ｓ変換回路１６からＰ／Ｓ変換完了信号２０６を入力すると、パケット終端ビット設定信号４００をパケット終端ビット格納領域３０２へ出力すると同時に、転送終了ビット設定信号４０２を転送終了ビット格納領域３０３へ出力する。フラグビット制御回路２７は、Ｐ／Ｓ変換完了信号２０６を入力したときに、読み出しポインタ制御部３５１から入力された読み出しポインタ情報３０１に基づいて、Ｐ／Ｓ変換回路１６においてパラレルシリアル変換の完了した送信データの格納位置を特定して、当該送信データに対応するビットをビット「０」に設定したパケット終端ビット設定信号４００と転送終了ビット設定信号４０２とを出力する。パケット終端ビット格納領域３０２と転送終了ビット格納領域３０３とは、それぞれパケット終端ビット設定信号４００、および転送終了ビット設定信号４０２により指定された格納位置がビット「０」に設定される。このようにして、フラグビット制御回路２７は、読み出しが完了した送信データの格納位置に対応するパケット終端ビット格納領域３０２と転送終了ビット格納領域３０３の各ビットをクリアする。
【００６２】
なお、フラグビット制御回路２７は、パケット終端ビット設定信号４００と転送終了ビット設定信号４０２に対してビットのセットを、ビットのクリアに優先して行う。
【００６３】
次に、ＩｒＤＡフラグ制御通知信号生成回路２９は、ＩｒＤＡパケットのフラグの送信を制御する。ＩｒＤＡフラグ制御通知信号生成回路２９は、データ符号化回路１５と、Ｐ／Ｓ変換回路１６と、プリアンブル送信制御回路２０と、割り込み要因生成回路２２と、送信バイト長カウンタ２６と、書き込みポインタ制御回路３５０と、読み出しポインタ制御回路３５１と、データ格納領域３５３と、それぞれ接続されている。
【００６４】
ＩｒＤＡフラグ制御通知信号生成回路２９は、パケット終端ビット情報４０１と転送終了ビット情報４０３とを監視している。
【００６５】
まず、ＩｒＤＡフラグ制御通知信号生成回路２９は、Ｐ／Ｓ変換回路１６からＰ／Ｓ変換完了信号２０６を入力すると、読み出しポインタ制御回路３５１から入力される読み出しポインタ情報３０１の示す次に読み出されるべき格納位置に格納された送信データが、パケット終端ビットにより「有効状態」であるビット「１」に設定されているか否かを判定する。つまり、ＩｒＤＡフラグ制御通知信号生成回路２９は、パケット終端ビットを「有効状態」であるビット「１」に設定された送信データがＰ／Ｓ変換回路１６により読み出されることを検知する。ＩｒＤＡフラグ制御通知信号生成回路２９は、パケット終端ビットが「有効状態」である送信データがＰ／Ｓ変換回路１６により読み出されると、データ符号化回路１５とプリアンブル送信制御回路２０へフラグ制御通知信号２０５を出力する。ＩｒＤＡフラグ制御通知信号生成回路２９は、フラグ制御通知信号２０５を送信することで、符号化回路１５に対してＩｒＤＡパケットにおけるストップフラグ（ＳＴＯ）の送信を命令し、プリアンブル送信制御回路２０から符号化回路１５に対して、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）の送信と、スタートフラグ（ＳＴＡ）の送信と、次のパケットに格納されるべき送信データの送信とを、続けて行うことを命令させる。
【００６６】
ここで、図５を参照して、ＩｒＤＡ規格に規定されるＩｒＤＡパケットのフレーム構成を説明する。図５は、ＩｒＤＡ規格に規定されるＩｒＤＡパケットのフレーム構成を示す図である。ＩｒＤＡパケットは、最初にプリアンブルフラグ（ＰＲＥＡＭＢＬＥ）を送信して、続けて、スタートフラグ（ＳＴＡ）、送信データ（ＤＡＴＡ  ｆｉｅｌｄ）、ストップフラグ（ＳＴＯ）を送信することで、１パケットとなる。ＩｒＤＡ規格において複数のパケットを連続して送信するバックトゥバック（Ｂａｃｋ  ｔｏ  Ｂａｃｋ）転送では、ストップフラグの送信後にプリアンブルフラグを続けて送信する。ＩｒＤＡ規格におけるＩｒＤＡパケットは、このようなフレーム構成である。
【００６７】
ＩｒＤＡフラグ制御通知信号生成回路２９は、読み出しポインタ情報３０１とパケット終端ビット情報４０１により、送信されるべき送信データがＩｒＤＡ規格に規定された１パケットに格納可能なバイト数における最終の１バイトであることを検知すると、符号化回路１５に対して、ＩｒＤＡパケットにおけるストップフラグ（ＳＴＯ）の送信を命令し、プリアンブル送信制御回路２０から符号化回路１５に対して、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）の送信と、スタートフラグ（ＳＴＡ）の送信と、次のパケットに格納されるべき送信データの送信とを、続けて行うことを命令させることで、次のＩｒＤＡパケットにより引き続き送信データを連続送信するバックトゥバック転送を可能にする。
【００６８】
また、ＩｒＤＡフラグ制御通知信号生成回路２９は、ＩｒＤＡパケットの送信停止を制御する。ＩｒＤＡフラグ制御通知信号生成回路２９は、読み出しポインタ制御回路３５１から入力される読み出しポインタ情報３０１の示す次に読み出されるべき格納位置に格納された送信データが、転送終了ビット情報４０３により「有効状態」であるビット「１」であるかを判定する。つまり、ＩｒＤＡフラグ制御通知信号生成回路２９は、転送終了ビットを「有効状態」であるビット「１」に設定された送信データがＰ／Ｓ変換回路１６により読み出されることを検知する。ＩｒＤＡフラグ制御通知信号生成回路２９は、転送終了ビットを「有効状態」に設定された送信データがＰ／Ｓ変換回路１６により読み出されるときに、データ符号化回路１５へフラグ制御通知信号２０５を出力する。ＩｒＤＡフラグ制御通知信号生成回路２９は、フラグ制御通知信号２０５を送信することで、符号化回路１５に対してＩｒＤＡパケットにおけるストップフラグ（ＳＴＯ）の送信を行うことを命令する。
【００６９】
ＩｒＤＡフラグ制御通知信号生成回路２９は、読み出しポインタ情報３０１と転送終了ビット情報４０３により、送信されるべき送信データが、送信するべき全送信データにおける最終の１バイトであることを検知すると、符号化回路１５に対して、ＩｒＤＡパケットにおけるストップフラグ（ＳＴＯ）の送信を命令することで、ＩｒＤＡパケットの送信を終了させる。
【００７０】
また、ＩｒＤＡフラグ制御通知信号生成回路２９は、マイクロプロセッサ２５に対する割り込み処理を制御する。ＩｒＤＡフラグ制御通知信号生成回路２９は、割り込み要因生成回路２２にマイクロプロセッサ２５へ送信アンダーラン通知を送信させることで、割り込み処理を制御する。ＩｒＤＡフラグ制御通知信号生成回路２９は、送信バイト長カウンタ２６からデータ存在通知信号２０９を入力する。ＩｒＤＡフラグ制御通知信号生成回路２９は、データ存在通知信号２０９がバイトデータ格納領域２８０に１バイト以上の送信データが格納されていないことを示すときに、Ｐ／Ｓ変換回路１６からＰ／Ｓ変換完了通知２０６を入力すると、アンダーランが発生したと検知して、割り込み要因生成回路２２へ送信アンダーラン通知２０７を出力する。ＩｒＤＡフラグ制御通知信号生成回路２９は、データ存在通知信号２０９に加えて、書き込みポインタ情報３００、読み出しポインタ情報３０１、パケット終端ビット情報４０１、転送終了ビット情報４０３に基づいて、バイトデータ格納領域２８０に１バイト以上の送信データが格納されていないことを判定することが可能である。ＩｒＤＡフラグ制御通知信号生成回路２９は、送信アンダーラン通知２０７を出力することで、割り込み要因生成回路２２にマイクロプロセッサ２５に対して、送信データ転送時の送信アンダーラン割り込みを行わせて、マイクロプロセッサ２５にＩｒＤＡパケットの再送を行わせる。
【００７１】
以上が、本実施形態におけるデータバッファ１７の詳細な説明である。ここまで、本実施形態における赤外線データ送信装置の構成の説明を行った。
【００７２】
［動作方法の説明］
次に、本実施形態における赤外線データ送信装置の動作方法の説明を行う。図６は、本実施形態における赤外線データ送信装置の動作フローを示す図である。以下、図６に示された動作フローのステップに沿って説明を行う。
【００７３】
（ステップＳ１００）
マイクロプロセッサ２５は、メモリ２３の内部に格納された処理用プログラムを実行して、データ記憶回路２１内のレジスタへこれから行うべき通信の転送方式、転送速度、送受信選択といったパラメータを設定する。なお、このとき、マイクロプロセッサ２５は、送信されるべきパケット数、および、各パケットに格納されるべきバイト長の設定を行う必要はない。マイクロプロセッサ２５によるデータ記憶回路２１へのパラメータの設定が、データ記憶回路２１へのＤＭＡ転送の開始とリガとなる。データ記憶回路２１は、マイクロプロセッサ２５からの書き込みを受けて、ＤＭＡ回路１８とプリアンブル送信制御回路２０とに対してデータ送信の開始トリガを出力する。ＤＭＡ回路１８は、データ記憶回路２１からのトリガを受けて、メモリ２３に記憶された送信データをデータバッファ１７へ転送を開始する。
【００７４】
（ステップＳ１１０）
データ符号化回路１５は、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）の送信を開始する。プリアンブル送信制御回路２０は、データ記憶回路２１からデータ送信開始のトリガを受けて、データ符号化回路１５へフラグ送信のトリガを出力する。データ符号化回路１５は、プリアンブル送信制御回路２０からのトリガを受けて、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）とスタートフラグ（ＳＴＡ）を出力する。
【００７５】
（ステップＳ１２０）
ＤＭＡ回路１８は、メモリ２３のリング領域に対してメモリリードを行う。ＤＭＡ回路１８は、データ記憶回路２１からのトリガを受けて、メモリ２３のリング領域に対して送信データのメモリリードを実行する。
【００７６】
（ステップＳ１３０）
ＤＭＡ回路１８は、メモリ２３のデータ領域に対してメモリリードを行う。ＤＭＡ回路１８は、メモリ２３のデータ領域に対してメモリリードを行って送信データを取得し、データバッファ１７のデータ格納領域３５３へ送信データを格納する。
【００７７】
より詳細には、ＤＭＡ回路１８は、データ格納領域３５３へ送信データを格納するときに、書き込みポインタ制御回路３５０と、ＦＩＦＯ制御回路３５２と、送信バイト長カウンタ２６とへ、書き込み信号２０２を出力する。書き込みポインタ制御回路３５０は、書き込み信号２０２を受けて、データ格納領域３５３と、ＦＩＦＯ制御回路３５２と、フラグビット制御回路２７とへ、書き込みポインタ情報３００を出力して、ＤＭＡ回路１８よりバイトデータ格納領域２８０へ格納される送信データの格納位置を通知する。ＦＩＦＯ制御回路３５２は、書き込み信号２０２と書き込みポインタ情報３００とを受けて、ライトイネーブル信号４０８をバイトデータ格納領域２８０へ出力して、バイトデータ格納領域２８０において送信データの格納されるべき格納位置へのデータ書き込みを制御する。ＤＭＡ回路１８は、バイトデータ格納領域２８０において送信データの格納されるべき格納位置へ、送信データ２０１を格納する。
【００７８】
また、送信バイト長カウンタ２６は、ＤＭＡ回路１８からの書き込み信号２０２を受けて、カウンタをインクリメントする。このとき、送信バイト長カウンタ２６は、３つの動作を取りえる。それは、送信バイト長カウンタ２６のカウンタに対する２つのクリア条件に適合する場合と、それ以外の場合である。また、これに伴って、フラグビット制御回路２７の動作も異なる。以下、３つの場合をそれぞれ説明する。
【００７９】
まず、第１のクリア条件である送信バイト長カウンタ２６のカウンタの値が、ＩｒＤＡ規格における１パケットへ格納可能なバイト数の上限である２０４８バイトに達するか、もしくは、予めデータ記憶回路２１へ設定された１パケットへ格納される上限バイト数に達した場合である。送信バイト長カウンタ２６は、カウンタの値がＩｒＤＡ規格における１パケットへ格納可能なバイト数の上限である２０４８バイトに達するか、もしくは、予めデータ記憶回路２１へ設定された１パケットへ格納される上限バイト数に達した場合、カウンタの値をクリアして初期値へ戻し、限界通知信号２０８をフラグビット制御回路２７へ出力する。
【００８０】
このとき、フラグビット制御回路２７は、書き込みポインタ制御回路３５０から入力される書き込みポインタ情報３００に基づいて、パケット終端ビット設定信号４００をデータ格納領域３５３のパケット終端ビット格納領域３０２へ出力する。前述の通り、フラグビット制御回路２７は、パケット終端ビット設定信号４００のビットにより、パケット終端ビット格納領域３０２のパケット終端ビットを設定する。フラグビット制御回路２７は、送信バイト長カウンタ２６から限界通知信号２０８を入力すると、書き込みポインタ情報３００の示す当該送信データを格納するべき格納位置に対応するビットを「有効状態」であるビット「１」に設定したパケット終端ビット設定信号４００を、パケット終端ビット格納領域３０２へ出力する。これにより、パケット終端ビット格納領域３０２のパケット終端ビットは、送信中のＩｒＤＡパケットにおいて、ＩｒＤＡ規格における１パケットへ格納可能なバイト数の上限である２０４８バイトに達するか、もしくは、予めデータ記憶回路２１へ設定された１パケットへ格納される上限バイト数に達する送信データの格納された格納位置に対応させて「有効状態」であるビット「１」を格納することになる。
【００８１】
次に、第２のクリア条件であるＤＭＡ回路１８から転送終了通知を入力した場合である。ＤＭＡ回路１８は、データ格納領域３５３のバイトデータ格納領域２８０へ格納する送信データが、送信するべき全送信データにおける最終バイトである場合、書き込み信号２０２を出力すると共に、転送終了通知２０３を、送信バイト長カウンタ２６と、フラグビット制御回路２７とへ出力する。送信バイト長カウンタ２６は、ＤＭＡ回路１８から転送終了通知２０３を入力すると、カウンタの値をクリアして初期値へ戻す。なお、この場合、送信バイト長カウンタ２６は、限界通知信号２０８の出力は行わない。
【００８２】
このとき、フラグビット制御回路２７は、書き込みポインタ制御回路３５０からの書き込みポインタ情報３００に基づいて、転送終了ビット設定信号４０２をデータ格納領域３５３の転送終了ビット格納領域３０３へ出力する。前述の通り、フラグビット制御回路２７は、転送終了ビット設定信号４０２のビットにより、転送終了ビット格納領域３０３の転送終了ビットを設定する。フラグビット制御回路２７は、ＤＭＡ回路１８から転送終了通知２０３を入力したとき、書き込みポインタ情報３００の示す当該送信データを格納するべき格納位置に対応するビットを「有効状態」であるビット「１」に設定された転送終了ビット設定信号４０２を、転送終了ビット格納領域３０３へ出力する。これにより、転送終了ビット格納領域３０３は、送信中のＩｒＤＡパケットにおいて、送信するべき全送信データにおける最終の１バイトである送信データの格納される格納位置に対応させて「有効状態」であるビット「１」を格納することになる。
【００８３】
そして、送信バイト長カウンタ２６の第１、第２のクリア条件にいずれも適合しない場合である。送信バイト長カウンタ２６は、第１、第２のクリア条件にいずれも適合しない場合、カウンタをインクリメントする動作のみ行う。このとき、フラグビット制御回路２７は、当該送信データの格納位置に対応するビットを「無効状態」である「０」に設定したパケット終端ビット設定信号４００と転送終了ビット設定信号４０２とを、それぞれ、パケット終端ビット格納領域３０２と転送終了ビット格納領域３０３とへ出力する。このような場合、データ格納領域３５３に格納される送信データは、送信中のＩｒＤＡパケットにおいて、ＩｒＤＡパケットの１パケットに格納可能なバイト数（例えば、２０４８バイト）における最終の１バイトに達する送信データでも、予めデータ記憶回路２１へ設定された１パケットに格納される上限バイト数に達する送信データでもなく、また、バックトゥバック（Ｂａｃｋ  ｔｏ  Ｂａｃｋ）転送により送信するべき全送信データにおける最終の１バイトである送信データでもない。そのため、パケット終端ビット格納領域３０２と転送終了ビット格納領域３０３とは、当該送信データの格納位置に対応するビットを「無効状態」であるビット「０」を対応させて格納することになる。
【００８４】
（ステップＳ１４０）
赤外線発光装置１４は、送信データを送信する。データ符号化回路１５は、データバッファ１７内の送信データ２０４をＰ／Ｓ変換回路１６を介して入力し、所定の符号化処理を行って、赤外線発光装置１４へ出力する。赤外線発光装置１４は、符号化後の送信データを入力すると、当該送信データを赤外線信号へ変換して対向する装置へ送信する。
【００８５】
より詳細には、データ符号化回路１５は、赤外線発光装置１４へプリアンブルフラグとスタートフラグとを送信すると、Ｐ／Ｓ変換回路１６へ送信データの読み出しトリガを出力する。Ｐ／Ｓ変換回路１６は、データ符号化回路１５からのトリガを受けて、読み出しポインタ制御回路３５１へ、送信データの読み出しトリガを出力する。読み出しポインタ制御回路３５１は、データ格納領域３５３のバイトデータ格納領域２８０において読み出すべき送信データの格納位置（初期値は初段）を示す読み出しポインタ情報３０１を、ＦＩＦＯ制御部３５２と、データ格納領域３５３と、フラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とへ出力する。ＦＩＦＯ制御部３５２は、読み出しポインタ情報３０１の指し示すバイトデータ格納領域２８０の送信データの格納位置に対して、リードイネーブル信号４０９を生成して送信データの読み出しを制御する。Ｐ／Ｓ変換回路１６は、読み出しポインタ情報３０１の指し示すバイトデータ格納領域２８０の送信データ２０４を取得する。Ｐ／Ｓ変換回路１６は、送信データのパラレルシリアル変換を行って、変換後の送信データをデータ符号化回路１５へ出力する。データ符号化回路１５は、送信データの符号化を行って、赤外線発光装置１４を介して送信データを送信する。
【００８６】
Ｐ／Ｓ変換回路１６は、送信データ２０４のパラレルシリアル変換が１バイト完了する毎に、Ｐ／Ｓ変換完了信号２０６を、読み出しポインタ制御回路３５１と、ＦＩＦＯ制御回路３５２と、フラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とへ出力する。読み出しポインタ制御回路３５１は、Ｐ／Ｓ変換完了信号２０６を入力すると、次に送信データの読み出しを行うべきバイトデータ格納領域２８０における格納位置を示す読み出しポインタ情報３０１を、ＦＩＦＯ制御部３５２と、データ格納領域３５３と、フラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９とへ出力する。
【００８７】
ＦＩＦＯ制御部３５２は、Ｐ／Ｓ変換完了信号２０６により送信データ２０４の読み出しが完了したことを検知すると、読み出しポインタ情報３０１の指定する次に読み出しを行うべきバイトデータ格納領域２８０における格納位置に対して、リードイネーブル信号４０９を生成して送信データ読み出し位置を更新する。また、フラグビット制御回路２７は、Ｐ／Ｓ変換完了信号２０６により送信データ２０４の読み出しが完了したことを検知して、Ｐ／Ｓ変換完了信号２０６をパケット終端ビット設定信号４００、及び転送終了ビット設定信号４０２の送信処理のトリガとする。
【００８８】
（ステップＳ１５０）
ＩｒＤＡフラグ制御通知信号生成回路２９は、ＤＭＡ回路１８により転送終了通知２０３の通知された送信データを送信したか否かを判定する。具体的には、ＩｒＤＡフラグ制御通知信号生成回路２９は、読み出しポインタ情報３０１と転送終了ビット情報４０３とに基づいて、転送完了ビットが「有効状態」であるビット「１」を設定された送信データが、Ｐ／Ｓ変換回路１６により読み出されたか否かを判定する。前述の通り、転送完了ビットが「有効状態」である送信データは、送信するべき全送信データにおける最終の１バイトの送信データである。ＩｒＤＡフラグ制御通知信号生成回路２９は、転送完了ビットが「有効状態」である送信データがＰ／Ｓ変換回路１６により読み出されたことで、送信するべき全送信データの送信が完了したことを検知する。ＤＭＡ回路１８により転送終了通知２０３の通知された送信データを送信していない場合、ステップＳ１６０へ進む。一方、ＤＭＡ回路１８により転送終了通知２０３の通知された送信データを送信した場合、ステップＳ１８０へ進む。
【００８９】
（ステップＳ１６０）
ＩｒＤＡフラグ制御通知信号生成回路２９は、送信バイト長カウンタの閾値に達した送信データが送信されたか否かを判定する。具体的には、ステップＳ１５０においてＤＭＡ回路１８により転送終了通知２０３の通知された送信データを送信していない場合、ＩｒＤＡフラグ制御通知信号生成回路２９は、読み出しポインタ情報３０１とパケット終端ビット情報４０１とに基づいて、パケット終端ビットが「有効状態」であるビット「１」を設定された送信データが読み出されたか否かを判定する。前述の通り、パケット終端ビットが「有効状態」であるビット「１」を設定された送信データは、送信バイト長カウンタ２６のカウンタの値が、ＩｒＤＡ規格において１パケットに格納可能なバイト数における上限である２０４８バイトに達したか、もしくは、予めデータ記憶回路２１へ設定された上限バイト数に達して、送信バイト長カウンタ２６から限界通知信号２０８が出力されたときにバイトデータ格納領域２８０へ格納された送信データである。ＩｒＤＡフラグ制御通知信号生成回路２９は、パケット終端ビットが「有効状態」に設定された送信データが読み出されたことで、１パケットに格納可能なバイト数に対する最終の１バイトにあたる送信データの送信したことを検知する。送信バイト長カウンタの閾値に達したときに格納された送信データを送信した場合、ステップＳ１７０へ進む。一方、送信バイト長カウンタの閾値に達したとき格納された送信データを送信していない場合、ステップＳ１３０へ戻る。この場合、引き続き送信データの送信処理が継続される。
【００９０】
（ステップＳ１７０）
データ符号化回路１５は、ストップフラグ（ＳＴＯ）、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）、スタートフラグ（ＳＴＡ）を連続で送信する。ＩｒＤＡフラグ制御通知信号生成回路２９は、送信バイト長カウンタの閾値に達したときに格納された送信データを送信したことを検知すると、データ符号化回路１５と、プリアンブル送信制御回路２０へフラグ制御通知信号２０５を出力する。データ符号化回路１５は、フラグ制御通知信号２０５を入力すると、ストップフラグ（ＳＴＯ）を送信する。プリアンブル送信制御回路２０は、フラグ制御通知信号２０５を入力すると、データ符号化回路１５へ、フラグ送信のトリガを出力する。データ符号化回路１５は、プリアンブル送信制御回路２０からのトリガを受けて、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）とスタートフラグ（ＳＴＡ）を出力する。この後、ステップＳ１３０へ戻り、データ符号化回路１５は、送信データの送信を継続する。このように、ＩｒＤＡフラグ制御通知信号生成回路２９が、送信バイト長カウンタの閾値に達した送信データを送信したことを検知して、データ符号化回路１５へ、ストップフラグ（ＳＴＯ）、プリアンブルフラグ（ＰＲＥＡＭＢＬＥ）、スタートフラグ（ＳＴＡ）を連続で送信させることで、引き続き、バックトゥバック転送による送信データの送信を継続することが可能となる。
【００９１】
（ステップＳ１８０）
データ符号化回路１５は、ストップフラグ（ＳＴＯ）を送信する。ＩｒＤＡフラグ制御通知信号生成回路２９は、ＤＭＡ回路１８により転送終了通知２０３の通知された送信データを送信したことを検知すると、データ符号化回路１５へ、フラグ制御通知信号２０５を出力する。データ符号化回路１５は、フラグ制御通知信号２０５を入力すると、ストップフラグ（ＳＴＯ）を送信する。
【００９２】
（ステップＳ１９０）
データ符号化回路１５は、送信データの送信を終了する。データ符号化回路１５は、送信するべき全送信データにおける最終の送信データを送信して、ストップフラグ（ＳＴＯを送信すると、送信データの送信を終了する。
【００９３】
以上が、本実施形態における赤外線データ送信装置の動作方法の説明である。
【００９４】
ここまで、本実施形態における赤外線データ送信装置の説明を行ってきた。本実施形態における赤外線送信装置では、データ格納領域３５３に１バイト毎に格納される送信データに、パケット終端ビット格納領域３０２に設定されたパケット終端ビットと、転送終了ビット格納領域３０３に設定された転送終了ビットと、を対応させて記憶しておき、パケット終端ビットと転送終了ビットとに基づいてＩｒＤＡパケットのフラグ送信を制御してバックトゥバック転送を実現する。データ格納領域３５３は、１バイト毎の送信データにパケット終端ビットと転送終了ビットとを対応させて記憶している。ＤＭＡ回路１８は、書き込みポインタ情報３００により指定されたバイトデータ格納領域２８０の格納位置へ送信データを格納し、フラグビット制御回路２７は、送信データがバイトデータ格納領域２８０へ格納されるときに、当該送信データがＩｒＤＡパケットのフラグ制御を行うべき送信データである場合、パケット終端ビットあるいは転送終了ビットを「有効状態」に設定する。Ｐ／Ｓ変換回路１６は、読み出しポインタ制御回路３５１により指定されたデータ格納領域３５３の格納位置から送信データを読み出し、ＩｒＤＡフラグ制御通知信号生成回路２９は、パケット終端ビット、あるいは転送終了ビットに基づいて、読み出された送信データが「有効状態」に設定されている送信データである場合、ＩｒＤＡパケットのフラグ制御を行う。
【００９５】
このように、本発明の赤外線データ送信装置は、データ格納領域３５３に送信データを１バイト毎に格納して、送信データに対応させて設定したパケット終端ビット情報４０１と転送終了ビット情報４０３とに基づいて、ＩｒＤＡパケットのフラグ制御を行うことで、連続で転送するパケット数や、各パケットにおける送信バイト長をデータ記憶回路２１へ記憶する必要がない。そのため、連続転送を行うパケット数や、各パケットにおける送信バイト長を記録するための大規模なレジスタが不要であり、送信するべきデータ量に比例して回路規模が増加することがない。そのため、大容量データを連続して転送する規格にも、回路規模を増大させずに、容易に対応することができる。
【００９６】
仮に、２００パケットの連続転送に対応する回路仕様を検討した場合、従来技術では少なくとも２３２１個分の回路規模が必要となる。しかし、本実施形態の赤外線データ送信装置によれば、データバッファ１７に内蔵するパケット終端ビット格納領域３０２と、転送終了ビット格納領域３０３とフラグビット制御回路２７と、ＩｒＤＡフラグ制御通知信号生成回路２９に必要な回路素子の増加分のみに抑えることができる。送信バイト長カウンタ２６は、従来技術を流用するため回路規模は増加しない。そのため、増加分のレジスタを含めて、数十ビット規模に抑えることが可能となる。
【００９７】
また、従来技術で必要であった、メモリ上のリング領域に対する各パケットの送信バイト情報を事前に作成する必要がないため、マイクロプロセッサ２５が、リング領域とデータ領域の作成時に行う、メモリ間のデータコピー処理と、バイト長カウント処理と、ストップフラグ送信後の割り込み処理と、メモリ上のリング領域に送信情報を書き込み処理とが不要となる。これによって、マイクロプロセッサ２５の処理負荷を低減することができる。
【００９８】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００９９】
１  赤外線発光装置
２  データ符号化回路
３  パラレルシリアル変換回路
４  データバッファ
５  通信完了検出回路
６  ＤＭＡ回路
７  割り込み要因生成回路
８  データ記憶回路
９  プリアンブル送信制御回路
１０  ローカルバス
１１  メモリ
１２  マイクロプロセッサ
１３  バスブリッジ
１４  赤外線発光装置
１５  データ符号化回路
１６  パラレルシリアル変換回路
１７  データバッファ
１８  ＤＭＡ回路
１９  送信制御回路
２０  プリアンブル送信制御回路
２１  データ記憶回路
２２  割り込み要因生成回路
２３  メモリ
２４  バスブリッジ
２５  マイクロプロセッサ
２６  送信バイト長カウンタ
２７  フラグビット制御回路
２９  ＩｒＤＡフラグ制御通知信号生成回路
２００  ローカルバス
２０１  送信データ
２０２  書き込み信号
２０３  転送終了通知
２０４  送信データ
２０５  フラグ制御通知信号
２０６  パラレルシリアル変換完了信号
２０７  送信アンダーラン通知
２０８  限界通知信号
２０９  データ存在通知信号
２８０  バイトデータ格納領域
３００  書き込みポインタ情報
３０１  読み出しポインタ情報
３０２  パケット終端ビット格納領域
３０３  転送終了ビット格納領域
３５０  書き込みポインタ制御回路
３５１  読み出しポインタ制御回路
３５２  ＦＩＦＯ制御回路
３５３  データ格納領域
４００  パケット終端ビット設定信号
４０１  パケット終端ビット情報
４０２  転送終了ビット設定信号
４０３  転送終了ビット情報
４０８  ライトイネーブル信号
４０９  リードイネーブル信号
４１０  ＦＩＦＯ書き込み許可信号
【図１】
2011091506.tif 000003
【図２】
2011091506.tif 000004
【図３】
2011091506.tif 000005
【図４】
2011091506.tif 000006
【図５】
2011091506.tif 000007
【図６】
2011091506.tif 000008