JP3393127B2 - 通信端末装置およびそのデータ送信方法 - Google Patents

通信端末装置およびそのデータ送信方法

Info

Publication number
JP3393127B2
JP3393127B2 JP2001207515A JP2001207515A JP3393127B2 JP 3393127 B2 JP3393127 B2 JP 3393127B2 JP 2001207515 A JP2001207515 A JP 2001207515A JP 2001207515 A JP2001207515 A JP 2001207515A JP 3393127 B2 JP3393127 B2 JP 3393127B2
Authority
JP
Japan
Prior art keywords
data
transmission
interrupt
amount
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001207515A
Other languages
English (en)
Other versions
JP2003023469A (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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2001207515A priority Critical patent/JP3393127B2/ja
Priority to US10/015,695 priority patent/US7093039B2/en
Publication of JP2003023469A publication Critical patent/JP2003023469A/ja
Application granted granted Critical
Publication of JP3393127B2 publication Critical patent/JP3393127B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、通信端末装置およ
びそのデータ送信方法に関し、たとえば制御するメイン
側の機器に配した非同期シリアル通信用送受信回路(Un
iversal Asynchronous Receiver-Transmitter: 以下、U
ARTという)等に適用し、 このUARTによるメイン側の機
器に対する割込処理と、この処理後にUARTを介してメイ
ン側の機器とスレーブ側の機器との間で行う非同期通信
の方法に用いて好適な方法に関するものである。
【0002】
【従来の技術】UARTは、他のプロセッサの周辺装置と同
様に、有益な非同期シリアル通信を行う手段として、よ
り高速に動作でき、より集積化を図り、そして、これら
を満足しながら安価に提供することを目的に進化し続け
てきている。UARTは、米国IBM社のいわゆるAT(Advance
d Technologies)互換機における低速通信装置として米
国ナショナルセミコンダクタ社(National Semiconduct
or Corp.)の製品名8250という単独のLSI(Large-Scale
Integrator)チップが採用され、拡張ボードやマザーボ
ードに実装されたことに始まる。この後、UARTは、その
性能の向上およびソフトウェアとの互換性を維持しつつ
発展してきている。
【0003】UARTは、一般にプロセッサがUARTの通信速
度よりも高速にデータ通信を行えることを前提に設計さ
れている。プロセッサがUARTにサービスを提供すること
は、現在作業中のプロセッサ処理を中断することにな
り、プロセッサにはソフトウェア上の大きな負担が強い
られる。プロセッサがマルチタスクに処理を行っている
場合、UARTのサービス提供を行うために割込処理を行う
ことになる。このような割込処理は、プロセッサの負担
となってプロセッサ処理に遅延をもたらす。
【0004】現在、これらの点を考慮し、かつ高速通信
を行うために、16バイトのFIFO(First-In First-Out)
バッファを持つNS16550(米国National Semiconductor
Corp.の登録商標)が一般的に用いられている。FIFO
は、送受信の双方に装備されている。
【0005】ところで、身近で汎用性のある無線通信手
段としてブルートゥース(以下、Bluetoothという;スウ
ェーデンのエリクソン社の登録商標)が提案された。こ
の提案された通信規格は、1994年に自動車電話間の低コ
スト化および低消費電力化を図るものとして登場し、こ
の規格はパソコンの無線カード規格等にまで拡張されて
きている。この通信規格に対応したBluetooth機能を有
する装置は、この装置のBluetoothにおけるホスト制御
部とハードウェアモジュール部とをトランスポートバス
で接続し、このバスを介してBluetoothインタフェース
を実装する装置における内部の通信を行う。この通信制
御は、Bluetoothのプロトコル・スタックの一つであるH
CI(Host Controller Interface)レイヤで行われてい
る。ここで、HCIは、Bluetoothにおけるデータ通信のイ
ンタフェース規格である。ハードウェアモジュール部
は、配設したアンテナを通じて他のシステムにおける装
置との間で送受信を行い無線データ通信を行っている。
【0006】ホスト制御部には、HCIドライバおよびHCI
トランスポート・ドライバが実装されている。これら両
ドライバは、トランスポートバスを制御する。制御内容
は、主にHCIトランスポート・ドライバがハードウェア
を、HCIドライバがソフトウェアを制御している。ハー
ドウェアモジュール部は、たとえば内蔵するHCIトラン
スポート・ファームウェアが実装されている。HCIドラ
イバとHCIトランスポート・ファームウェアとの間に
は、HCIトランスポート・ドライバを含むHCTL層(Host
Controller Transport Layer)が設けられている。HCI
トランスポート・ドライバは、UARTの他に、RS(Recomm
ended Standard)-232C、USB(Universal Serial Bu
s)、PCMCIA(Personal Computer Memory Card Interna
tional Association)、PCI(Peripheral Component Int
erconnect)等が利用できるように制御する。
【0007】
【発明が解決しようとする課題】また、Bluetoothの通
信規格において、Bluetooth Radioという無線通信で
は、2.4GHzのISM(Industrial Scientific Medicine)帯
を使用し、拡散スペクトラム方式により通信することが
規定されている。この通信におけるデータ通信の実効速
度は、非対称通信時、最大で723kbpsである。非同期通
信を最大のデータ通信速度で行った場合、単純に約1.4
μsec/bitであるから、10ビットの送信には14μsecを要
する。
【0008】上述したBluetoothの構成で、たとえばUAR
Tを介して通信する場合、プロセッサに対して割込処理
を施すことにより、これにともなう遅延時間が現時点に
おいて大体20μsec生じることが知られている。したが
って、割込処理を経てデータ通信を行う場合、この遅延
後にデータ通信が行われることになる。
【0009】UARTでは、前述したように、高速通信を行
うためにたとえば、NS16550(登録商標)のLSIに16バイ
トのFIFOを用いて通信するデータに欠落が生じないよう
にしている。ここで、1バイトのデータ通信には、8ビ
ットのデータに相前後してスタートビットとストップビ
ットが1ビットずつ配されることから、10ビットを単位
に通信が行われる。これを踏まえて1バイトのFIFOによ
る緩衝時間を算出してみると、約220μsecの緩衝時間が
得られる。
【0010】ところで、Bluetooth機能を有する装置に
おいて割込処理を行い、UARTを介して通信を行う場合、
この緩衝時間のうち、約1割が割込処理の時間に費やさ
れてしまう。このように非同期通信が高速になればなる
ほどこの緩衝時間が短くなり、割込処理にともなう遅延
時間は無視できないくらいに大きくなる傾向にあり、さ
らに将来、データ通信において問題になることが避けら
れない。
【0011】また、Bluetoothにおける非同期通信は、B
luetooth間における無線通信速度で、723kbpsであり、U
ARTの非同期通信は、ホストのパーソナルコンピュータ
等とBluetoothのホスト制御部間の有線通信規格で規格
されている。たとえば、921.6kbpsをサポートしたUART
を用いて、前述した10ビットでシリアル通信を行うと
き、その最大実効通信速度は723kbpsよりも低い通信速
度になってしまう。Bluetooth機能を有する装置にて最
大の無線通信速度で通信を行う場合、UARTの非同期通信
をより一層高速化することが望まれる。
【0012】本発明はこのような従来技術の欠点を解消
し、非同期通信における有線通信の実効速度を無線通信
の実効速度以上に向上させることのできる通信端末装置
およびそのデータ送信方法を提供することを目的とす
る。
【0013】
【課題を解決するための手段】本発明は上述の課題を解
決するために、ホスト側の制御手段に割り込みを行い、
この割込み時にこの制御手段の制御に基づいて外部にデ
ータの送信を行う通信端末装置において、この装置は、
データの送信においてこのデータの連続したデータ転送
を維持し、かつこのデータ一時的に記憶して送出する送
信バッファ手段と、この装置におけるデータの送受信状
態やデータの伝送エラーの発生に関するステータスに応
じてホスト側に割込みの発生を報知する割込信号を出力
する割込手段と、送信バッファ手段のデータ量を監視
し、このデータ量の残り分を所定のデータ量として設定
し、この所定のデータ量にデータ量が達したか否かを検
出し、この検出結果に応動して割込手段が出力する割込
信号の出力制御を行うバッファ監視手段と、データ量の
監視に用いる情報をバッファ監視手段に提供し、かつ送
信バッファ手段の動作を制御するバッファ制御手段とを
含み、制御手段は、送信バッファ手段が格納する全デー
タ容量と所定のデータ量との差分で表されるデータ量を
送信バッファ手段に転送するデータ量として送出する制
御を行うことを特徴とする。
【0014】本発明の通信端末装置は、バッファ監視手
段でデータの送信におけるデータ量の監視に用いる情報
をバッファ制御手段から受けて、設定された所定のデー
タ量に送信バッファ手段のデータ量が達したか否かを検
出し、この検出結果に応動して割込手段に対する割込信
号の出力を制御を行い、送信バッファ手段内のデータが
なくなる前にホスト側に割り込みが行われることから、
この割込みから送信バッファ手段への書込みまでの何も
送信されない期間分を吸収してデータの書込みおよび読
出しを継続させることができ、この割込みにともなって
制御手段が全データ容量と所定のデータ量との差分で表
されるデータ量を送信バッファ手段に供給することによ
り、データ転送にともなう送信バッファ手段でのデータ
のオーバーフローを回避している。
【0015】また、本発明は上述の課題を解決するため
に、送信に際してデータの欠落を防止する送信バッファ
手段を用意し、ホスト側に対して割り込みを行い、この
割込みに応じてホスト側からの制御により供給されるデ
ータを送信バッファ手段を介してシリアル形式にして外
部に送信するデータ送信方法において、この方法は、送
信バッファ手段に残る所定のデータ量を割込みを発生さ
せるタイミング位置として設定する第1の工程と、送信
バッファ手段の全データ蓄積量と所定のデータ量とを考
慮してホスト側からデータをこの送信バッファ手段に転
送する第2の工程と、送信バッファ手段に格納されたデ
ータを読み出してシリアル変換する第3の工程と、送信
バッファ手段に残るデータ量が前記所定のデータ量にな
った否かの判定を行う第4の工程と、供給されたデータ
がまだ所定のデータ量よりも多く残っているとの判定の
結果に応動して送信バッファ手段から出力したデータ量
に換算するカウント値を歩進させる第5の工程と、送信
バッファ手段に残るデータ量が所定のデータになったと
の判定を受けてこの状態に対応する割込みを発生させる
タイミング位置にあるとし、この検出に応じて制御信号
を生成する第6の工程と、制御信号の生成を受けて割込
信号を生成する第7の工程と、ホスト側に供給された割
込信号に応じてさらにデータ転送を行うか否かの判定を
行う第8の工程と、データ転送の継続を行う場合に第2
の工程に戻り、データ転送を終了する場合に通信を終了
させる第9の工程とを含むことを特徴とする。
【0016】本発明の通信端末装置のデータ送信方法
は、割込みを発生させるタイミング位置として所定のデ
ータ量を設定し、送信バッファ手段の全データ蓄積量と
所定のデータ量とを考慮してホスト側からデータを送信
バッファ手段に転送し、送信バッファ手段のデータを読
み出し、シリアル変換して出力し、送信バッファ手段に
残るデータ量が所定のデータ量になった否かの判定し、
供給されたデータがまだ所定のデータ量よりも多く残っ
ているとの判定の結果に応動して出力済みのデータ量を
表すカウント値を歩進させ、送信バッファ手段に残るデ
ータ量が所定のデータになったとの判定を受けて割込み
発生のタイミング位置にあるとして、制御信号を生成
し、制御信号の生成を受けて割込信号を生成し、ホスト
側に供給された割込信号に応じてさらにデータ転送を行
うか否かの判定の上、データ転送の継続を行う場合にデ
ータ転送処理に戻り、データ転送を終了する場合に通信
を終了させることにより、割込みから送信バッファ手段
への書込みまでの何も送信されない期間分を吸収してデ
ータの書込みおよび読出しを継続させ、データ転送にと
もなうデータのオーバーフローを防止している。
【0017】
【発明の実施の形態】次に添付図面を参照して本発明に
よる通信端末装置の一実施例を詳細に説明する。
【0018】本実施例は、本発明の通信端末装置を、Bl
uetooth機能を有する装置内のインタフェースの一つで
あるUART装置10に適用した場合である。本発明と直接関
係のない部分について図示および説明を省略する。ここ
で、信号の参照符号はその現れる接続線の参照番号で表
す。
【0019】図1に示すUART装置10は、あらわには示し
ていないが、Bluetoothのホスト部12に対するBluetooth
モジュール部に配設されている。UART装置10は、バスバ
ッファ回路102、送信FIFO回路104、FIFO制御部106、シ
フトレジスタ108, 112、受信FIFO回路110、トリガ検出
部114、ステータスレジスタ116、および内部割込回路11
8を備えている。Bluetoothモジュール部には、図示しな
いがベースバンドコントローラ内にUARTの他、USB(Uni
versal Serial Bus)や音声PCM(Pulse Code Modulatio
n)等やRF(Radio Frequency)モジュール、水晶発振器
やフラッシュメモリ等も含まれている。また、図2に示
すホスト部12には、割込回路120およびCPU(Central Pr
ocessing Unit)122が含まれている。
【0020】図1に戻って、UART装置10の各部について
説明する。バスバッファ回路102は、UART装置10に配設
され、バスバッファ回路102には、パラレルに装置10内
の内部データバス10aと装置10の外部のホスト部12に配
設されたデータバス12aとのデータ通信を確実に行わせ
るように入力データを一時的に格納してデータを出力す
るバッファメモリが配されている。バスバッファ回路10
2は、ホスト部12のCPU 122から供給される各種のデータ
や制御データ等を内部データバス10aを介して送信FIFO
回路104、FIFO制御部106にそれぞれ出力する。また、バ
スバッファ回路102は、シフトレジスタ108、受信FIFO回
路110、内部データバス10aを介して供給される外部から
のデータをホスト部12に送っている。ホスト部12におい
て、この供給された受信データをデータバス12aを介し
て各部に送る。
【0021】送信FIFO回路104には、本実施例において1
6バイトのFIFOメモリが配設されている。送信FIFO回路1
04は、FIFO制御部106による書込み/読出し制御、パリ
ティ情報等の管理を受けてホスト部12側から供給される
データを一時的にバッファリングし、1バイトずつ読み
出したデータ104aをシフトレジスタ112に出力する。送
信FIFO回路104は現在の書込みポインタ(WP)情報104b
と現在の読出しポインタ(RP)情報104cを、それぞれ送
信制御部106aに出力する。
【0022】また、受信FIFO回路110にも、本実施例で
は16バイトのFIFOメモリが配設されている。受信FIFO回
路110も、FIFO制御部106による書込み/読出し制御、パ
リティ情報等の管理を受けている。受信FIFO回路110
は、シフトレジスタ108から供給されるデータ108aを1
バイトずつ取り込んで一時的にバッファリングし、受信
したデータ110aを内部データバス10a、バスバッファ回
路102に出力する。受信FIFO回路110は、現在の書込みポ
インタ情報110bと現在の読出しポインタ情報110cをそれ
ぞれ、受信制御部106bに出力する。
【0023】なお、送信FIFO回路104および受信FIFO回
路110は、16バイトのFIFOメモリを用いた場合を述べた
が、FIFOメモリの容量はこれに限定されるものでなく、
32バイトや64バイトのメモリを用いてもよい。しかしな
がら、メモリ容量を増やして割込みにともなって生じる
CPU 122の何もしない時間に対応して吸収することはで
きても、割込みにともなってCPU 122を占有し、その処
理効率を向上させることにはつながらない。
【0024】FIFO制御部106には、送信制御部106aおよ
び受信制御部106bが含まれている。送信制御部106aは、
書込みポインタ制御回路14と読出しポインタ制御回路18
を含み、受信制御部106bは、書込みポインタ制御回路16
と読出しポインタ制御回路20を含んでいる。書込みポイ
ンタ制御回路14と読出しポインタ制御回路18には、それ
ぞれ送信FIFO回路104から現在の書込みポインタ104bと
現在の読出しポインタ104cが供給される。同様に、受信
制御部106bの書込みポインタ制御回路16と読出しポイン
タ制御回路20にも受信FIFO回路110から現在の書込みポ
インタ110bと現在の読出しポインタ110cが供給される。
【0025】書込みポインタ制御回路14は、次の書込み
ポインタの位置をどの位置にするかを示すポインタ指示
信号106cとして内部データバス10a、信号線22を介して
送信FIFO回路104に供給する。読出しポインタ制御回路1
8は、次の読出しポインタの位置をどの位置にするかを
示すポインタ指示信号106cとして内部データバス10a、
信号線22を介して送信FIFO回路104に供給する。受信制
御部106bの書込みポインタ回路16と読出しポインタ回路
20においてもそれぞれ次のポインタの位置をどの位置に
するかを示すポインタ指示信号106cとして内部データバ
ス10a、信号線110aを介して受信FIFO回路110に供給す
る。
【0026】また、書込みポインタ制御回路14は、トリ
ガ検出部114の送信トリガ検出部114aに書込みカウント
信号24を出力する。読出しポインタ制御回路18も送信ト
リガ検出部114aに読出しカウント信号26を出力する。受
信制御部106bも受信トリガ検出部114bに書込みカウント
信号28と読出しカウント信号30とをそれぞれ供給してい
る。
【0027】FIFO制御部106は、このように送信FIFO回
路104および受信FIFO回路110に対する書込みおよび読出
しポインタを制御するだけでなく、パリティ情報等も供
給され、FIFO回路104, 110の状態を調べ、この結果に応
じて割込み制御も行う。FIFO制御部106は、割込み制御
を行う場合などの各状態に応じたステータス信号106cを
内部データバス10aを介してステータスレジスタ116に送
る。
【0028】シフトレジスタ108は、外部から供給され
るシリアルデータ32をパラレルデータ108aに変換する機
能を有し、受信FIFO回路110に出力する。シフトレジス
タ112は、送信FIFO回路104から供給される1バイトのデ
ータ104aを取り込み、シリアルデータ34に変換して外部
に送出する。
【0029】トリガ検出部114は、FIFO内のデータ残量
が所定の量になったか否かを検出する機能を有してい
る。トリガ検出部114には、送信トリガ検出部114aおよ
び受信トリガ検出部114bが含まれている。送信トリガ検
出部114aには、図示しないがカウンタ、送信トリガレジ
スタ(以下、TxTRGという)14a、演算器、比較器および
トリガ出力回路(図示せず)が含まれている。TxTRG 14
aは、内部レジスタである。カウンタは、書込みカウン
ト信号24に応じてカウントし、このカウント値Nを比較
器に送る。TxTRG 14aには、割込み位置であり、かつデ
ータ残量を示す数値nを格納し、演算器に出力する。演
算器は、FIFO回路として用意されたメモリ容量がFバイ
トのとき、送信FIFO回路104にホスト部12から転送する
データ量を算出する。この算出は、メモリ容量FとTxTRG
14aに記憶された数値nとを用い、(F-n)によって得られ
る。最初の割込み位置は、この供給されるデータ量に対
しても作用するから、16-3-3+1=11になる。2度目以降
は2×13-2=24、3×13-2=37,・・・という位置に割込がく
る。
【0030】したがって、割込み位置は、通し番号で表
すと、13×x+11(x=0,1,2,・・・という関係にある。比
較器は、一方に供給される数値(F-n)と、他方に供給
されるカウンタからの値Nとを比較する。値Nは、読出し
ポインタRPの位置を表している。比較器は、数値(F-
n)とカウンタ値Nとが等しくなった場合に書込みポイン
タが送信トリガ位置に達したと判断して、トリガ検出信
号をトリガ出力回路に出力する。比較器はこれ以外の場
合には無信号を出力する。トリガ出力回路は、出力バッ
ファとしての機能を有して、供給されたトリガ検出信号
を割込出力制御信号114cを出力する。割込出力制御信号
114cは、内部データバス10a、信号線32を介して内部割
込回路118に供給される。
【0031】また、受信トリガ検出部114bにも同様に受
信トリガレジスタ(RxTRG)14bが配設され、詳細に説明
しないが受信トリガ検出部114bに供給される書込みカウ
ント信号28と読出しカウント信号30を基にトリガ検出を
行い、トリガ検出信号を割込出力制御信号114cを内部割
込回路118に出力する。
【0032】ステータスレジスタ116は、供給されるス
テータス信号36に割込出力制御信号38を内部割込回路11
8に出力する機能を有している。内部割込回路118は、割
込出力制御信号114c, 38が供給されると内部割込信号40
をホスト部12に出力する機能を有している。
【0033】なお、トリガ検出部114は、FIFO制御部106
と分けて説明したが、FIFO制御部106内に一体的に含め
て構成することが好ましい。
【0034】図2の割込回路120には、内部割込信号40
とホスト部12にて発生した割込要求信号42とがそれぞれ
供給されている。割込回路120は、割込信号44をCPU 122
に出力する。CPU 122は、供給された割込信号44に応じ
た制御信号46をデータバス12aを介して各部に供給す
る。内部割込信号40が供給された場合に、割込み処理に
おいてCPU 122は、信号線12bを介して図1のバスバッフ
ァ回路102にデータ転送を行い、さらに、このデータが
バスバッファ回路102から信号線10b、内部データバス10
a、信号線22を経て送信FIFO回路104にデータ転送され
る。転送するデータ量は(F-n)バイトである。ここで、
CPU 122には、あらかじめ割込み位置のデータである数
値nが設定されている。
【0035】このように(F-n)バイトのデータ転送を行
うことにより、送信FIFO回路104に残るデータに対して
上書きされることなく、データを満杯に供給することが
できる。
【0036】次に、UART装置10とホスト部12とのデータ
転送のうち、ホスト部12からUART装置10への送信におけ
る手順を説明する。図3のフローチャートは、CPU 122
の動作手順を示し、図4のフローチャートは、UART装置
10における送信処理を示している。後段で説明するがCP
U 122とUART装置10はそれぞれの処理を並列に行う特徴
を有している。
【0037】図3のフローチャートにおいて、まず、図
2のCPU 122は、送信FIFO回路104に対して割込み位置を
表すデータ残量として数値nをRAM(Random Access Memo
ry;図示せず)に設定し、また、図1の送信トリガ検出
部114aのTxTRG 14aにも数値nを設定する(ステップS1
0)。CPU 122では、送信FIFO回路104に転送するデータ量
を考慮して転送する。転送するデータ量はデータ残量に
対して空いているデータ量分である(ステップS12)。
【0038】F=16バイトのFIFOメモリが配設されている
場合、転送データ量は(16-n)になる。この同じ演算は
送信トリガ検出部114aでも行われる。CPU 122の演算結
果を送信トリガ検出部114aのTxTRG 14aに供給し、読み
出して利用することができれば、送信トリガ検出部114a
に演算器を設けずに済ますことができる。このとき、CP
U 122および送信トリガ検出部114aは、カウント値N=0に
初期設定される。この設定後、CPU 112は各タスク処理
を実行する(ステップS14)。また、接続子Aを介してUAR
T装置10の処理に進む。
【0039】次に、内部割込みがあったか否かの判断を
ホスト部12の割込回路120で行う(ステップS16)。CPU 1
22に割込みがないとき(NO)、これまでの処理を継続す
るようにタスク処理を行う。また、内部割込みがあった
とき(YES)、割込回路120は、CPU 122に割込信号44を出
力する。
【0040】次に、転送するデータの有無に応じた判断
を行う(ステップS18)。転送するデータがあるとき、デ
ータの転送を行うようにステップS12に戻って前述した
処理を繰り返す。転送するデータがないとき(YES)、デ
ータの転送を終了し、データ送出を終了する。
【0041】一方、CPU 122の各タスクと並列にシリア
ル転送するUART装置10は、図4に示すように、送信FIFO
回路104に格納されたデータから1バイト読み出したデ
ータ104aをシフトレジスタ112に供給してシリアルデー
タに変換する。そして、シフトレジスタ112は、シリア
ルデータ34を外部に出力する(ステップS20)。
【0042】送信トリガ検出部114aでは、図示しない比
較器にてカウント値Nと(F-n)値(すなわち、16-n)と
比較を行う(ステップS22)。比較結果が等しくないとき
(NO)、割込み位置にはまだ達していないと判断してス
テップS24に進む。ステップS24では、カウント値Nを+1
歩進させて、以後の処理をシリアル送信に戻す。
【0043】また、比較結果が等しいとき(YES)、割込
み位置に達したと判断して送信トリガ信号をオンにする
(ステップS26)。送信トリガ検出部114aでは、送信トリ
ガ信号のオンを受けて出力バッファ(図示せず)を介し
て割込出力制御信号114cを出力する(ステップS28)。な
お、送信トリガ信号を割込出力制御信号114cとして出力
してもよい。
【0044】内部データバス10aを介して供給された割
込出力制御信号114cを内部割込回路118に供給し、この
回路118で生成した内部割込信号40をホスト部12の割込
回路120に出力する(ステップS30)。この処理の後、接
続子Bを介して図3のステップS16に進む。割込回路120
では、内部割込信号40の有無に応じてCPU 122に割込信
号44が出力される。内部割込がある場合、転送するデー
タの有無を確認して割込処理を行う。
【0045】この動作手順についてより具体的に送信FI
FO回路104の書込み/読出しの動作を基に外部へのデー
タ送出を説明する。送信FIFO回路104には、F=16バイト
のFIFOメモリが用いられている。CPU 122や送信トリガ
検出114aに割込みを発生させる位置のデータ量nを設定
する。ここでデータ量n=3に設定する。送信FIFO回路10
4内の数字は、便宜上のデータの順番を示している。ま
た、書込みポインタと読出しポインタはWP, RPと略しそ
の位置を矢印で示す。
【0046】図5(a)の送信FIFO回路104は、初期状態に
てデータが何もない状態である。WPとRPは同じ位置を示
している。次に、(16-3)=13個のデータがホスト部12か
ら送信FIFO回路104に供給される。このデータの書込み
に応じてWPは14の位置に移動する。この書込みと同時に
読出しが開始される。図5(b)の送信FIFO回路104は、RP
=3にある。現在の書込みポインタの位置WP=14から3
つ手前の位置が送信トリガの発生位置STG(Send TriGge
r)である(14-3=11)。3つ手前とは、残りn=3バイ
トを示している。カウンタの値Nは相対的な読出しポイ
ンタの位置に対応している。
【0047】図5(c)では、送信FIFO回路104の読出しポ
インタRPが送信トリガ発生位置に達し、送信トリガ検出
部114ではN=11でトリガ発生位置STGを検出する。これ
以降のトリガ発生位置は後述するように13ずつずらした
位置に設定される。送信トリガ検出部114でのトリガ検
出を受けて内部割込回路118は、内部割込信号40を割込
回路120に送出する。割込回路120は、割込信号44をCPU
122に送出する。
【0048】CPU 122は、転送するデータがまだ存在す
るか否かの判断を行い、転送データがまだある場合に、
CPU 122は、書込みポインタWPから13個のデータを転送
する。送信FIFO回路104は、転送の間にもデータ読出し
を行って読出しポインタが13の位置にある状態を図5(d)
に示している。このデータ転送後の送信FIFO回路104の
トリガ発生位置STGは、書込みポインタWPの位置からデ
ータ量3つ分戻った位置(STG=24)になっている。
【0049】図5(e)の送信FIFO回路104は、読出しポイ
ンタが13回カウントされて、トリガ発生位置STGと一致
した状態を示している。
【0050】ところで、FIFO制御部106は、送信FIFO回
路104が送出完了状態にあっても、データが送出中を示
しているトリガ検出部114の動作を優先させて、内部割
込回路118への内部割込信号40の発生制御を禁止する。
この禁止により、トリガ検出部114の送信トリガ検出部1
14aから出力される割込出力制御信号114cが有効にな
る。処理の上でもこの制御は有効である。
【0051】ホスト部12とUART装置10との間でデータ転
送を繰り返し行う際に、図6(a)に示すように、従来のデ
ータ送信処理は、割込み発生Iから書込みWが行われるま
で、待ち時間Tが生じていた。本発明を適用したUART装
置10によれば、あらかじめデータ送出が完了する前に割
込み位置を規定する残りバイト数nを設定し、この設定
に応じた位置に読出しポインタRPまたはカウント値Nが
達したかをトリガ検出し、内部割込処理を行うように割
込出力制御信号114cを出力する。このトリガ検出に応動
して内部割込信号40が出力される。まだ送信FIFO回路10
4内のデータは送出完了にはないが、ホスト部12のCPU 1
22は、送信FIFO回路104内のデータに上書きをされない
ように、転送するデータ量を考慮して送出している。こ
れにより、数値nの設定を理想的に設定した場合、待ち
時間なく送信FIFO回路104にデータを書き込み、読み出
すことができる。
【0052】しかしながら、CPU 122は、頻繁に割込処
理を行うことになり、他のタスク処理との兼ね合いから
処理効率が低下してしまう虞がある。CPU 122には、割
込みと処理効率との間にトレードオフの関係があり、こ
の点を考慮して残りのバイト数nを設定することが好ま
しい。現在、UART装置10には、64バイトまたはそれ以上
の深さのFIFOメモリが用いられつつある。このような場
合、本発明で指摘した残りバイト数も余裕を持って設定
することができる。たとえば、数値n=8乃至16程度に設
定すればよい。
【0053】また、CPU 122の高速化は、割込処理時間
を少なくする要因にはなるが、CPU 122を使用するシス
テムが複雑化することから、CPU 122の処理時間が大き
くなる。具体的な一例としては、Bluetooth等で用いら
れるITRON(Industrial The Real-time Operation Nucl
eus)のようなRTOS(Real-Time Operating System)下
でアプリケーションプログラムが実行する場合が挙げら
れる。このような場合、数値nは、実験的に決めること
が望ましい。
【0054】本実施例のUART装置10は、主に、ハードウ
ェア構成を基に説明したが、このデータ送信・設定した
割込み位置の検出に応じてホスト部12からUART装置10へ
のデータ転送がソフトウェア的に処理できることは言う
までもない(ソフトウェアUART)。
【0055】以上のように構成することにより、あらか
じめデータ送出が完了する前に割込み位置を設定し、こ
の設定に応じた割込み位置に読出しポインタRPまたはカ
ウンタ値によりが達したかをトリガ検出し、内部割込処
理を行うように割込出力制御信号を出力する。このトリ
ガ検出に応動して内部割込信号が出力される。まだ送信
FIFO回路内のデータは送出完了にはないが、ホスト部の
CPUは、送信FIFO回路内のデータに上書きをされないよ
うに、転送するデータ量を考慮し、CPUによる割込処理
の遅延を吸収して、データを送出している。これによ
り、割込みにともなう無駄な時間を極力最小に抑えて従
来に比べて実効効率の高い通信を行うことができる。特
に、高速データ通信の要求される分野、たとえばBlueto
othにおける無線通信のように高速データ通信での割込
処理の遅延を相対的に小さくできる。
【0056】
【発明の効果】このように本発明の通信端末装置によれ
ば、バッファ監視手段でデータの送信におけるデータ量
の監視に用いる情報をバッファ制御手段から受けて、設
定された所定のデータ量に送信バッファ手段のデータ量
が達したか否かを検出し、この検出結果に応動して割込
手段に対する割込信号の出力を制御を行い、送信バッフ
ァ手段内のデータがなくなる前にホスト側に割り込みが
行われることから、この割込みから送信バッファ手段へ
の書込みまでの何も送信されない期間分を吸収してデー
タの書込みおよび読出しを継続させることができ、この
割込みにともなって制御手段が全データ容量と所定のデ
ータ量との差分で表されるデータ量を送信バッファ手段
に供給して、データ転送にともなう送信バッファ手段で
のデータのオーバーフローを回避することにより、割込
みにともなう無駄な時間を極力最小に抑えて従来に比べ
て実効効率の高い通信を行うことができる。
【0057】また、本発明の通信端末装置のデータ送信
方法によれば、割込みを発生させるタイミング位置とし
て所定のデータ量を設定し、送信バッファ手段の全デー
タ蓄積量と所定のデータ量とを考慮してホスト側からデ
ータを送信バッファ手段に転送し、送信バッファ手段の
データを読み出し、シリアル変換して出力し、送信バッ
ファ手段に残るデータ量が所定のデータ量になった否か
の判定し、判定:否の結果に応動してカウント値を歩進
させ、判定:可を受けて割込み発生のタイミング位置に
あるとして、制御信号、割込信号を順次生成し、ホスト
側に供給された割込信号に応じてさらにデータ転送を行
うか否かの判定の上、データ転送の継続を行う場合にデ
ータ転送処理に戻り、データ転送を終了する場合に通信
を終了させ、割込みから送信バッファ手段への書込みま
での何も送信されない期間分を吸収してデータの書込み
および読出しを継続させ、データ転送にともなうデータ
のオーバーフローを防止することにより、割込みにとも
なう無駄な時間を極力最小に抑えて従来に比べて実効効
率の高い通信を行うことができる。
【図面の簡単な説明】
【図1】本発明の通信端末装置をUART装置に適用した概
略的な構成を示すブロック図である。
【図2】図1のUART装置を制御するホスト部の構成を示
すブロック図である。
【図3】図2のCPUが行う処理手順を説明するフローチ
ャートである。
【図4】図3のCPUと並列的に処理するUART装置の処理
手順を説明するフローチャートである。
【図5】図1の送信FIFO回路の動作にともなう各ポイン
タと割込み位置の関係を示す図である。
【図6】従来と本発明における割込みと書込みとの位置
関係について示す図である。
【符号の説明】
10 UART装置 12 ホスト部 14a 送信トリガレジスタ(TxTRG) 102 バスバッファ回路 104 送信FIFO回路 106 FIFO制御部 108, 112 シフトレジスタ 110 受信FIFO回路 114 トリガ検出部 114a 送信トリガ検出部 118 内部割込回路 120 割込回路 122 CPU
───────────────────────────────────────────────────── フロントページの続き (72)発明者 松尾 嘉勝 東京都港区虎ノ門1丁目7番12号 沖電 気工業株式会社内 (58)調査した分野(Int.Cl.7,DB名) H04L 13/08 H04L 29/02

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】 ホスト側の制御手段に割り込みを行い、
    該割込み時に該制御手段の制御に基づいて外部にデータ
    の送信を行う通信端末装置において、該装置は、 前記データの送信において該データの連続したデータ転
    送を維持し、かつ該データを一時的に記憶して送出する
    送信バッファ手段と、 該装置における前記データの送受信状態や前記データの
    伝送エラーの発生に関するステータスに応じて前記ホス
    ト側に割込みの発生を報知する割込信号を出力する割込
    手段と、 前記送信バッファ手段のデータ量を監視し、該データ量
    の残り分を所定のデータ量として設定し、該所定のデー
    タ量に前記データ量が達したか否かを検出し、該検出結
    果に応動して前記割込手段が出力する割込信号の出力制
    御を行うバッファ監視手段と、 前記データ量の監視に用いる情報を前記バッファ監視手
    段に提供し、かつ前記送信バッファ手段の動作を制御す
    るバッファ制御手段とを含み、 前記制御手段は、前記送信バッファ手段が格納する全デ
    ータ容量と前記所定のデータ量との差分で表されるデー
    タ量を前記送信バッファ手段に転送するデータ量として
    送出する制御を行うことを特徴とする通信端末装置。
  2. 【請求項2】 請求項1に記載の装置において、前記バ
    ッファ制御手段は、前記送信バッファ手段が送出完了状
    態にあっても、前記データが送出中を示している前記バ
    ッファ監視手段の動作を優先させて、前記割込手段への
    前記割込信号の発生制御を禁止することを特徴とする通
    信端末装置。
  3. 【請求項3】 請求項1に記載の装置において、前記バ
    ッファ制御手段は、前記バッファ監視手段を含むことを
    特徴とする通信端末装置。
  4. 【請求項4】 送信に際してデータの欠落を防止する送
    信バッファ手段を用意し、ホスト側に対して割り込みを
    行い、該割込みに応じて前記ホスト側からの制御により
    供給されるデータを前記送信バッファ手段を介してシリ
    アル形式にして外部に送信するデータ送信方法におい
    て、該方法は、 前記送信バッファ手段に残る所定のデータ量を前記割込
    みを発生させるタイミング位置として設定する第1の工
    程と、 前記送信バッファ手段の全データ蓄積量と前記所定のデ
    ータ量とを考慮して前記ホスト側からデータを該送信バ
    ッファ手段に転送する第2の工程と、 前記送信バッファ手段に格納されたデータを読み出して
    シリアル変換する第3の工程と、 前記送信バッファ手段に残るデータ量が前記所定のデー
    タ量になった否かの判定を行う第4の工程と、 前記供給されたデータがまだ前記所定のデータ量よりも
    多く残っているとの判定の結果に応動して前記送信バッ
    ファ手段から出力したデータ量に換算するカウント値を
    歩進させる第5の工程と、 前記送信バッファ手段に残るデータ量が前記所定のデー
    タになったとの判定を受けて該状態に対応する前記割込
    みを発生させるタイミング位置にあるとし、該検出に応
    じて制御信号を生成する第6の工程と、 前記制御信号の生成を受けて割込信号を生成する第7の
    工程と、 前記ホスト側に供給された割込信号に応じてさらにデー
    タ転送を行うか否かの判定を行う第8の工程と、 前記データ転送の継続を行う場合に第2の工程に戻り、
    前記データ転送を終了する場合に通信を終了させる第9
    の工程とを含むことを特徴とする通信端末装置のデータ
    送信方法。
  5. 【請求項5】 請求項4に記載の方法において、第6の
    工程は、前記送信バッファ手段が送出完了状態にあって
    も、前記データの送出中が示されている場合には該デー
    タ送出中の状態を優先させて、前記割込信号の発生制御
    を禁止することを特徴とする通信端末装置のデータ送信
    方法。
  6. 【請求項6】 請求項4ないし5のいずれか一項に記載
    の方法において、第3ないし第7の工程は、並行して各
    工程にて前記ホスト側で割込処理の有無を判定しながら
    他のタスク処理を行っていることを特徴とする通信端末
    装置のデータ送信方法。
JP2001207515A 2001-07-09 2001-07-09 通信端末装置およびそのデータ送信方法 Expired - Fee Related JP3393127B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001207515A JP3393127B2 (ja) 2001-07-09 2001-07-09 通信端末装置およびそのデータ送信方法
US10/015,695 US7093039B2 (en) 2001-07-09 2001-12-17 Communication terminal increasing effective data rate on asynchronous transmission and a data transmission method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001207515A JP3393127B2 (ja) 2001-07-09 2001-07-09 通信端末装置およびそのデータ送信方法

Publications (2)

Publication Number Publication Date
JP2003023469A JP2003023469A (ja) 2003-01-24
JP3393127B2 true JP3393127B2 (ja) 2003-04-07

Family

ID=19043489

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001207515A Expired - Fee Related JP3393127B2 (ja) 2001-07-09 2001-07-09 通信端末装置およびそのデータ送信方法

Country Status (2)

Country Link
US (1) US7093039B2 (ja)
JP (1) JP3393127B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100484134B1 (ko) * 2002-02-16 2005-04-18 삼성전자주식회사 선입선출기를 이용한 비동기 데이터 인터페이스 장치
KR100537637B1 (ko) * 2002-12-09 2005-12-20 한국전자통신연구원 블루투스 접속 시스템
US7409022B2 (en) * 2004-10-01 2008-08-05 Mitsubishi Electric Research Laboratories, Inc. Synchronizing clocks in wireless personal area networks
JP5043502B2 (ja) 2007-05-14 2012-10-10 キヤノン株式会社 画像形成装置
FR2943202A1 (fr) * 2009-03-13 2010-09-17 St Wireless Sa Procede d'echanges de donnees audio entre une unite principale et un controleur de type bluetooth
TW201036338A (en) * 2009-03-31 2010-10-01 Univ Nat Yang Ming Intelligent analog-digital converter chip
EP2583383B1 (en) 2010-06-18 2017-11-15 CommScope Technologies LLC Digital distributed antenna system with improved data transmission features
US8594223B2 (en) * 2010-06-18 2013-11-26 Andrew Llc Transport data reduction for DAS systems
CN103077145B (zh) * 2012-12-28 2016-11-02 Tcl康钛汽车信息服务(深圳)有限公司 一种数据发送、接收方法及系统
CN110505607B (zh) * 2018-09-06 2022-12-13 深圳市文鼎创数据科技有限公司 基于蓝牙安全设备的通信方法、蓝牙芯片及蓝牙安全设备
CN113419985A (zh) * 2021-06-15 2021-09-21 珠海市一微半导体有限公司 Spi系统自动读取数据的控制方法及spi系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5210749A (en) * 1990-05-29 1993-05-11 Advanced Micro Devices, Inc. Configuration of srams as logical fifos for transmit and receive of packet data
JPH06267246A (ja) 1993-03-11 1994-09-22 Matsushita Electric Ind Co Ltd ノンリニア映像編集装置
EP0615244B1 (en) * 1993-03-11 1999-07-21 Matsushita Electric Industrial Co., Ltd. System for non-linear video editing
US5619544A (en) * 1994-06-03 1997-04-08 Texas Instruments Incorporated Universal asynchronous receive/transmit circuit with flow control
EP0685797A1 (en) 1994-06-03 1995-12-06 Hewlett-Packard Company Overflow protection circuit for UART device
US6378011B1 (en) * 1999-05-28 2002-04-23 3Com Corporation Parallel to serial asynchronous hardware assisted DSP interface
US6717516B2 (en) * 2001-03-08 2004-04-06 Symbol Technologies, Inc. Hybrid bluetooth/RFID based real time location tracking

Also Published As

Publication number Publication date
US20030041199A1 (en) 2003-02-27
US7093039B2 (en) 2006-08-15
JP2003023469A (ja) 2003-01-24

Similar Documents

Publication Publication Date Title
US7802034B2 (en) Method for performing full transfer automation in a USB controller
US20190050366A1 (en) Device, event and message parameter association in a multi-drop bus
EP3847554B1 (en) Mixed-mode radio frequency front-end interface
US8127053B1 (en) System and method for peripheral device communications
US10572410B2 (en) Function-specific communication on a multi-drop bus for coexistence management
JP3393127B2 (ja) 通信端末装置およびそのデータ送信方法
US20190227971A1 (en) Architecture for consolidating multiple sources of low-bandwidth data over a serial bus
US10838898B2 (en) Bit-interleaved bi-directional transmissions on a multi-drop bus for time-critical data exchange
US20080162737A1 (en) USB Controller with Full Transfer Automation
US10579549B2 (en) Staggered transmissions on a multi-drop half-duplex bus
WO2018182949A1 (en) System and method for sending in band interrupt messages between devices on a bus
EP1535169B1 (en) Improved inter-processor communication system for communication between processors
US20200004699A1 (en) Variable-stride write in a multi-point bus architecture
US20190073327A1 (en) Ultra-short rffe datagrams for latency sensitive radio frequency front-end
US8335867B1 (en) Method and apparatus for reducing host processor activity during interaction with peripheral devices
US20020178310A1 (en) USB transmission control circuit
US20190171588A1 (en) Multi-point virtual general-purpose input/output (mp-vgi) for low latency event messaging
US11520729B2 (en) I2C bus architecture using shared clock and dedicated data lines
KR20040043198A (ko) 버스 시스템 및 버스 인터페이스
TWI343529B (en) Method and apparatus for performing full transfer automation in a usb controller
US20100216506A1 (en) System and Methods for Supporting Multiple Communications Protocols on a Mobile Phone Device
US11275703B1 (en) Real-time control compliant radio frequency coexistence management bus
KR101065588B1 (ko) 하드웨어 기반의 객체 교환(obex) 모듈, 그 모듈을 포함한 송수신 장치 및 그 프로토콜 모듈을 이용한 송수신 방법
CN114375446A (zh) 基于序列的执行来控制射频前端触发的应用时间
CN115729863A (zh) 数据传输方法、装置、电子设备及介质

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20021224

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

Free format text: PAYMENT UNTIL: 20090124

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090124

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100124

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20100124

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20100124

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110124

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120124

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120124

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130124

Year of fee payment: 10

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees