JP2002318783A - マルチプロトコル型シリアル通信装置及びマイクロコンピュータ - Google Patents

マルチプロトコル型シリアル通信装置及びマイクロコンピュータ

Info

Publication number
JP2002318783A
JP2002318783A JP2001124248A JP2001124248A JP2002318783A JP 2002318783 A JP2002318783 A JP 2002318783A JP 2001124248 A JP2001124248 A JP 2001124248A JP 2001124248 A JP2001124248 A JP 2001124248A JP 2002318783 A JP2002318783 A JP 2002318783A
Authority
JP
Japan
Prior art keywords
data
transmission
state
serial communication
communication device
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.)
Pending
Application number
JP2001124248A
Other languages
English (en)
Inventor
Hitoshi Kuroyanagi
等 黒柳
Masato Rinnai
政人 林内
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.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2001124248A priority Critical patent/JP2002318783A/ja
Publication of JP2002318783A publication Critical patent/JP2002318783A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 【課題】 シリアル通信の多様なプロトコルにワンチッ
プで対応することができるマルチプロトコル型シリアル
通信装置を提供する。 【解決手段】 マルチプロトコル型シリアル通信装置1
1を、トリガ信号発生手段によって内部でFSTA,F
END,BSTA,BENDの各トリガ信号を発生させ
るように構成し、これらのトリガ信号の発生に基づいて
送信ステートマシン38,受信ステートマシン30の状
態を遷移させ、通信制御信号の発生状態に応じて必要な
出力信号をECU101のTAB2インターフェイス部
103に出力させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、シリアル通信を複
数種類のプロトコルに対応して実行可能に構成されるマ
ルチプロトコル型シリアル通信装置、及びそのマルチプ
ロトコル型シリアル通信装置を備えて構成されるマイク
ロコンピュータに関する。
【0002】
【従来の技術】シリアル通信プロトコルには、例えば、
RS−232CやIIC(Inter Integrated Circuit),
HDLC(High-level Data Link Control procedure),
TAB(Telekontrol Audio Bus 2) など、様々な種類が
ある。ホストたるCPUが、接続先デバイスとの間でシ
リアル通信を行う場合には、各プロトコルに対応した専
用のインターフェイスICが用意されていたり、或いは
UART(Universal Asynchronous Reciever Transmitt
er) またはUSART(Universal Synchronous Asynchr
onous Reciever Transmitter) と称する汎用インターフ
ェイスIC(シリアルポート)を用い、各プロトコルに
対応した設定を行なって使用するようにしている。
【0003】
【発明が解決しようとする課題】例えば、図58には、
ホストのメインプロセッサ(CPUやDSPなどの汎用
演算装置で構成される)1が接続先デバイス2との間で
何れかのプロトコルに準拠するシリアル通信を実行する
場合の構成例を示す。この場合、メインプロセッサ1
は、接続先デバイス2と通信するために汎用ポート(同
期処理や入出力制御を行う)3と、上述した例えばUS
ARTなどのシリアルポート4とを直接制御せず、サブ
プロセッサ5を介して通信制御を行うようにしている。
【0004】サブプロセッサ5は、メインプロセッサ1
と同様にCPU,DSPなどの汎用演算装置で構成され
るが、接続先デバイス2について想定される様々なシリ
アルプロトコルに対してプログラムで柔軟に対応するた
めに配置されている。また、通信処理の実行中には、汎
用ポート3,シリアルポート4が頻繁に割り込みを発生
させるため、その割り込み処理によってメインプロセッ
サ1の処理効率が低下することを防止する役割をもなし
ている。しかしながら、斯様な構成では高価なサブプロ
セッサ5を必要とするため、コストアップが避けられな
い。
【0005】本発明は上記事情に鑑みてなされたもので
あり、その目的は、サブプロセッサを用いることなくシ
リアル通信の多様なプロトコルに対応することができ、
ホストの通信処理負担を軽減することが可能となるマル
チプロトコル型シリアル通信装置、及びそのマルチプロ
トコル型シリアル通信装置を備えて構成されるマイクロ
コンピュータを提供することにある。
【0006】
【課題を解決するための手段】請求項1記載のマルチプ
ロトコル型シリアル通信装置は、以下の原理に基づいて
構成されている。シリアル通信のプロトコルが多様であ
るとしても、大枠で見ると、それらに共通して行われて
いる原則的な処理方式が存在する。即ち、何らかの形式
の信号によって通信の開始と終了を示すと共に、データ
の送受信は、バイト単位(通常8ビットだが、本発明で
は定義された複数ビットのまとまりをいう)で行われ、
1回の通信で送受信される複数バイトのデータが1つの
フレームを構成していると見ることが可能である。
【0007】そして、本発明のマルチプロトコル型シリ
アル通信装置では、送信または受信トリガ信号発生手段
は、上記原則に基づいて、フレーム送受信(通信)の開
始に対応するフレームスタート信号,バイトデータの送
受信開始に対応するバイトスタート信号,バイトデータ
の送受信終了に対応するバイトエンド信号通信,フレー
ム送受信(通信)の終了に対応するフレームエンド信号
を、ホストによる設定と外部より与えられる通信制御信
号の状態とに基づき、各プロトコルに対応したタイミン
グで状態遷移のトリガ信号として夫々発生させる。
【0008】また、送信及び受信ステートマシンは、フ
レームスタート待ちステート,バイトスタート待ちステ
ート,通信中ステート,バイト通信終了ステート,フレ
ーム通信終了ステートの各ステート間を遷移するように
構成されている。そして、送信及び受信ステートマシン
は、フレームスタート信号の発生に応じて、フレームス
タート待ちステートからバイトスタート待ちステートに
遷移して通信を開始させ、バイトスタート信号の発生に
応じて、バイトスタート待ちステートから通信中ステー
トに遷移することでバイト単位のデータ通信を行わせ
る。
【0009】それから、バイトエンド信号の発生に応じ
て、通信中ステートからバイト通信終了ステートに遷移
しバイトデータの送受信に区切りをつけ、バイト通信終
了ステートにおいてフレームエンド信号が発生しない場
合はバイトスタート待ちステートに遷移してバイトデー
タの送受信を更に続行する。また、バイト通信終了ステ
ートにおいてフレームエンド信号が発生した場合はフレ
ーム通信終了ステートに遷移して通信を終了させるよう
に動作する。加えて、送信及び受信ステートマシンは、
各プロトコル毎に、各ステートに応じて必要な通信制御
信号を外部に対して出力させる。
【0010】従って、ホストが例えば内部レジスタ等に
必要な設定を行うことで、夫々のプロトコルにおける適
切なタイミングでトリガ信号を発生させてステートマシ
ンの状態を遷移させることにより、シリアル通信の多様
なプロトコルが実行される場合に容易に対応することが
可能となる。
【0011】そして、従来はサブプロセッサ5が行って
いた通信処理をシリアル通信装置がハードウエアによっ
て代行することになるので、サブプロセッサ5を使用し
ない場合でもホストに対して発生させる割り込みを削減
することが可能となり、ホストの処理効率が低下するこ
とを防止できると共に、ホストを含むシステムを構成す
る場合のコストを削減することが可能となる。また、各
プロトコルに対応してホストに実行させるプログラム
を、通信装置に用意されているレジスタの設定に合わせ
て作成することができるので、プログラミングの手法を
ある程度標準化させることが可能となり、プログラミン
グ作業をより容易に行なうことができる。
【0012】請求項2記載のマルチプロトコル型シリア
ル通信装置によれば、トリガ信号発生手段に、少なくと
も一部のトリガ信号に関する発生条件を選択するための
トリガ条件選択手段を備え、トリガ条件選択手段を、発
生条件として、外部(この場合、ホスト又は接続先デバ
イス)より付与される外部トリガ信号を選択可能に構成
する。即ち、シリアル通信装置の外部より付与される外
部トリガ信号を条件としてトリガ信号を発生させること
で、例えば、接続先デバイスよりドライブされた通信制
御信号の遷移状態をトリガとして、ステートマシンの状
態を遷移させることが可能となる。
【0013】請求項3記載のマルチプロトコル型シリア
ル通信装置によれば、外部トリガ信号が、ホストが内部
レジスタに書込みを行うことで発生されるように構成す
る。即ち、ホストが制御プログラムに従って動作し、シ
リアル通信装置の内部レジスタに書込みを行ったタイミ
ングでトリガ信号を発生させることが可能となる。
【0014】請求項4記載のマルチプロトコル型シリア
ル通信装置によれば、トリガ条件選択手段を、外部トリ
ガ信号として、ホストが内部レジスタに書込みを行うこ
とで発生させるトリガ信号と、外部より入力ポートに与
えられる通信制御信号の遷移状態に基づいて発生される
トリガ信号とを選択可能に構成する。即ち、両者を選択
可能とすることで、トリガ信号の発生条件をより柔軟に
設定することができr、多様なプロトコル対応を行うこ
とができる。
【0015】請求項5記載のマルチプロトコル型シリア
ル通信装置によれば、トリガ条件選択手段を、発生条件
として、通信制御信号の遷移状態をカウントするカウン
タより、そのカウント値がホストによって設定されたカ
ウント値と一致した場合に出力されるカウンタマッチ信
号を選択可能に構成する。即ち、斯様なカウンタマッチ
信号を選択することで、基準時点から通信制御信号が遷
移した回数に基づくタイミングで送信トリガ信号を発生
させることができる。
【0016】請求項6記載のマルチプロトコル型シリア
ル通信装置によれば、トリガ条件選択手段を、発生条件
として、通信データのサイズをカウントするカウンタよ
り、そのカウント値がホストによって設定されたカウン
ト値と一致した場合に出力されるカウンタマッチ信号を
選択可能に構成する。即ち、斯様なカウンタマッチ信号
を選択すれば、基準時点から送信されたデータのサイズ
(バイト数)に基づくタイミングで送信トリガ信号を発
生させることができる。
【0017】請求項7記載のマルチプロトコル型シリア
ル通信装置によれば、トリガ条件選択手段は、受信側の
トリガ信号の発生条件として、受信データのパターンが
ホストより設定された特定のデータパターンに一致した
場合にコンパレータより出力されるパターンマッチ信号
を選択可能に構成する。即ち、斯様なパターンマッチ信
号を選択することで、プロトコルで定められている特定
のデータを受信した場合に受信トリガ信号を発生させる
ことができる。従って、より多様なプロトコルに対応し
て適切に受信トリガ信号を発生させることが可能とな
る。
【0018】請求項8記載のマルチプロトコル型シリア
ル通信装置によれば、送信データ列にビットデータの挿
入を行うためのビット挿入手段を備えるので、例えば、
データを送信する際にスタートフラグ,スタートビット
やストップビット、パリティビットなどが必要とされる
プロトコルにも対応することが可能となる。或いは、送
信データ列を適当なビットによって区分することが必要
とされる場合にも、適当なデータビットを挿入して対応
することができる。
【0019】請求項9記載のマルチプロトコル型シリア
ル通信装置によれば、送信ステートマシンを、フレーム
スタート待ちステートとバイトスタート待ちステートと
の間において、内部レジスタの設定に応じてフラグデー
タ挿入ステートに遷移可能に構成する。従って、例えば
HDLCのように、送信の開始時と終了時にフラグシー
ケンスを送信する必要があるプロトコルにも対応するこ
とが可能となる。
【0020】請求項10記載のマルチプロトコル型シリ
アル通信装置によれば、送信ステートマシンを、バイト
スタート待ちステートと通信中ステートとの間におい
て、内部レジスタの設定に応じてスタートビット挿入ス
テートに遷移可能に構成し、また、通信中ステートとバ
イト通信終了ステートとの間に、内部レジスタの設定に
応じてストップビット挿入ステートに遷移可能に構成す
る。従って、例えばRS−232Cのように、送信デー
タの最初と最後にスタートビット,ストップビットが場
合によって必要となるプロトコルにも対応することがで
きる。
【0021】請求項11記載のマルチプロトコル型シリ
アル通信装置によれば、送信ステートマシンを、通信中
ステートから、内部レジスタの設定に応じて送信データ
にビットデータを挿入するためのビット挿入ステートに
遷移可能に構成する。従って、例えばHDLCのよう
に、ビットスタッフィングを行う必要があるプロトコル
にも対応することができる。
【0022】請求項12記載のマルチプロトコル型シリ
アル通信装置によれば、受信ステートマシンを、通信中
ステートから、内部レジスタの設定に応じてビット挿入
ステートにより受信データに挿入されたビットデータを
削除するためのビット削除ステートに遷移可能に構成す
る。従って、例えばHDLCのように、ビットスタッフ
ィングが行われているデータから本来不要なビットを削
除することができる。
【0023】請求項13記載のマルチプロトコル型シリ
アル通信装置によれば、送信ステートマシンを、通信中
ステートとバイト通信終了ステートとの間に、内部レジ
スタの設定に応じて送信データにパリティビットを挿入
するためのパリティビット挿入ステートに遷移可能に構
成する。従って、例えばRS−232Cのように、エラ
ー検出用のパリティビットを付加する必要があるプロト
コルにも対応することができる。
【0024】請求項14記載のマルチプロトコル型シリ
アル通信装置によれば、ホストが外部のメモリと内部の
送信バッファ,受信バッファとの間でDMA転送を行わ
せるために設けられる、データ転送装置との間で転送制
御を行うためのインターフェイス回路を備える。
【0025】即ち、通信装置がインターフェイス回路を
介してデータ転送装置との間で転送制御を行い、ホスト
と内部バッファとの間でDMA転送を行わせるようにす
れば、通信装置と接続先デバイスとの間でデータの送受
信が行われている間は、通信装置はホストに対して1バ
イト毎に割込みを発生させる必要がなくなり、通信が終
了した時点で割込みを発生させれば良い。従って、ホス
ト側の割り込み処理負担を大きく軽減することができ
る。
【0026】請求項15記載のマイクロコンピュータに
よれば、例えば、送信の場合は、ホストとして機能する
汎用演算処理装置が接続先デバイスに送信するデータを
メモリに書込み、データ転送装置のレジスタに必要な設
定を行うと、請求項14記載のマルチプロトコル型シリ
アル通信装置がデータ転送装置の転送制御を行って、メ
モリに書込まれた送信データを内部の送信バッファにD
MA転送を実行させる。また、受信の場合は、接続先デ
バイスから受信したデータがマルチプロトコル型シリア
ル通信装置内部の受信バッファに書込まれると、データ
転送装置に受信バッファからメモリに対してDMA転送
を実行させる。
【0027】従って、マルチプロトコル型シリアル通信
装置は、汎用演算処理装置に対してバイトデータの送
信,受信毎に割り込みを発生させる必要がなく、送信,
受信処理の終了時に割り込みを発生させれば良いので、
汎用演算処理装置の割り込み処理負担を大きく軽減する
ことができる。
【0028】
【発明の実施の形態】(第1実施例)以下、本発明の第
1実施例について図1乃至図22を参照して説明する。
図1は、マルチプロトコル型シリアル通信装置の全体構
成を概略的に示す機能ブロック図である。マルチプロト
コル型シリアル通信装置(以下、単にシリアル通信装置
と称す)11は、ホストたるCPU(汎用演算処理装
置)12が図示しない接続先デバイスとの間でシリアル
通信を行う場合のインターフェイス機能をなすように構
成されたLSIである。
【0029】シリアル通信装置11は、CPU12が内
部のレジスタやバッファなどに書込み及び読み出しを行
うためのホストインターフェイス(I/F)部13を備
えている。また、ホストI/F部13は、DMAコント
ローラ(DMAC,データ転送装置)14との間のイン
ターフェイス機能をも含むものである。DMAC14
は、図示しない外部メモリとシリアル通信装置11のバ
ッファとの間でデータ転送を行うために設けられてい
る。
【0030】シリアル通信装置11の受信側は、ビット
検出部20,クロック生成部21,シフトレジスタ(SHI
FTER) 22,受信バッファ(BUF)23,一致検出部
24,エラー検出及び割り込み制御部25,汎用入力部
26並びに受信制御部28などを備えている。
【0031】ビット検出部20は、シリアル受信データ
(RX)について伝送符号形式(例えば、NRZ,NR
ZI,FM0/1,マンチェスタなど)に応じたビット
検出を行うように構成されている。クロック生成部21
は、復調されたビット列及び外部より与えられるシステ
ムクロック信号(SYSCK) や同期クロック入力信号(CLKI
N) に基づいて同期クロック出力信号(CLKOUT)を生成す
るものである。
【0032】シフトレジスタ22は、シリアル受信デー
タを格納してパラレル変換するものであり、受信バッフ
ァ(内部バッファ)23は、パラレル変換された受信デ
ータが格納されるようになっている。エラー検出及び割
り込み制御部25は、シリアル受信データに基づいて受
信データパターンの一致検出を行ったり、割り込み信号
(INT)を発生させる機能を有している。
【0033】汎用入力部26は、接続先デバイスより与
えられる通信制御信号が、プロトコルに応じて3つの入
力端子UIN1〜3に適宜割り当てられるようになって
いる。また、受信制御部28は、受信コントロール部2
9,受信ステートマシン30及び受信カウンタ31を備
えている。受信コントロール部29は、CPU12が受
信側の処理について各種設定を行うためのレジスタ群や
後述する受信トリガ信号発生部,パターンマッチ回路な
どで構成され、受信ステートマシン30は、異なるプロ
トコルに対する受信処理を共通化してなるステートを受
信トリガ信号に応じて遷移させる論理回路である。
【0034】受信カウンタ31は、詳細は後述するが、
通信制御信号の遷移状態や受信データサイズなどをカウ
ンタするためのカウンタであり、それらのカウンタ値が
レジスタに設定されたカウンタ値と一致すると、カウン
タマッチ信号を出力するようになっている。
【0035】一方、シリアル通信装置11の送信側は、
送信バッファ(内部バッファ)32,シフトレジスタ3
3,ビット符号化部34,送信制御部35及び汎用出力
部36などを備えている。送信バッファ32は、CPU
12またはDMAC14より書込まれる送信データが格
納されるようになっており、シフトレジスタ33は、送
信バッファ32に格納されたデータをシリアル変換して
ビット符号化部34に出力するものである。ビット符号
化部34は、シリアル送信データ(TX)について前述
した伝送符号形式に応じたビット符号化を行うように構
成されている。
【0036】送信制御部35は、送信コントロール部3
7,送信ステートマシン38及び送信カウンタ39を備
えている。送信コントロール部37は、CPU12が送
信側の処理について各種設定を行うためのレジスタ群や
後述する送信トリガ信号発生部などで構成され、送信ス
テートマシン38は、異なるプロトコルに対する送信処
理を共通化してなるステートを送信トリガ信号に応じて
遷移させる論理回路である。また、ホストたるCPU1
2がレジスタに設定を行なうことにより、汎用出力UO
UT1〜3やクロック生成部21より出力されるCLK
OUTの信号レベルをソフトウエア的に制御することも
可能となっている。
【0037】送信カウンタ39は、詳細は後述するが、
通信制御信号の遷移状態や送信データサイズなどをカウ
ンタするためのカウンタであり、それらのカウンタ値が
CPU12によってレジスタに設定されたカウンタ値と
一致すると、カウンタマッチ信号を出力するようになっ
ている。汎用出力部36は、接続先デバイスより与えら
れる通信制御信号が、プロトコルに応じて3つの出力端
子UOUT1〜3に適宜割り当てられるようになってい
る。
【0038】図2は、シリアル通信装置11で取り扱わ
れるデータ列及びトリガ信号の定義を示すチャートであ
る。即ち、受信または送信データ(RX,TX)は、N
ビット(例えば、N=8)のまとまりをバイトと称し、
一回の通信で送受信されるバイトデータのまとまりをフ
レームと称する(図2(a)参照)。データの通信は、
各ビットがクロック信号CLK(図2(b)参照)に同
期するようにして行われる。
【0039】そして、通信の開始時に出力される信号F
STAをフレームスタート信号(図2(e)参照),バ
イトデータの通信の開始時に出力される信号BSTAを
バイトスタート信号(図2(c)参照),バイトデータ
の通信の終了時に出力される信号BENDをバイトエン
ド信号(図2(d)参照),通信の終了時に出力される
信号FENDをフレームエンド信号(図2(f)参照)
と称する。
【0040】また、図3は、受信時における各種クロッ
ク信号の定義を示すタイミングチャートである(バイト
数N=3の場合)。伝送クロックTCKは、データの伝
送制御に使用されるクロックであり(図3(a)参
照)、受信データRXは、ハイレベルから1ビット期間
だけロウレベルに遷移することでデータの送信開始(ス
タートビット)を示す(図3(b)参照,但し、プロト
コルに応じて必要な場合)。そして、3ビットのデータ
D0〜D2を受信した後、1ビットのハイレベル期間で
データの送信終了(ストップビット,必要な場合)を示
す。
【0041】FF_Qは、RXのTCK同期信号であり
(図3(c)参照)、前述したバイトスタート信号BS
TAは、FF_Qのスタートビットと同時に(スタート
ビットを送信する場合)出力される(図3(d)参
照)。そして、バイトエンド信号BENDは、FF_Q
のストップビットと同時に(ストップビットを送信する
場合)出力される(図3(e)参照)。受信中信号RE
NGは、その間のデータD0〜D2が受信されている間
にハイレベルとなって受信中であることを示す信号であ
る(図3(f)参照)。そして、データシフトクロック
SCKは、伝送クロックTCKがデータD0〜D2の受
信中にだけ出力されるクロックであり、受信データのシ
フトに利用される(図3(e)参照)。
【0042】次に、受信側の構成を中心として説明す
る。図4は、受信バッファ23を中心とする詳細な構成
を示すものである。ビット検出部20で検出された受信
データ列は、シフトクロックSCKにより16ビットの
シフトレジスタ22に格納され、2つの32ビット受信
バッファ23(0),23(1)にパラレルデータとし
て格納される。ライトポインタによって下位側の受信バ
ッファ23(0)から先に格納され、32ビットモード
の場合は32ビットが格納された時点で、8ビットモー
ドの場合は8ビットが格納された時点でフルとなり、受
信バッファ23(1)側に移る。受信バッファ23
(0),23(1)に格納されたデータは、マルチプレ
クサ40を介してCPU12側のデータバス41に出力
される。
【0043】ビット検出部20は、受信データRXのビ
ット列より生成したクロックBCKをクロック生成部2
1に出力し、クロック生成部21は、クロックBCKの
出力の有無に応じてCPU12側より供給される外部ク
ロックSYSCk ,接続先デバイス側より供給される外部ク
ロックCLKIN の何れか一方を伝送クロックTCKとして
ANDゲート42に出力する。ANDゲート42には、
その他、後述する受信許可信号RE及び受信中信号RE
NGが入力されており、それらの論理積結果としてシフ
トクロックSCKを出力するようになっている。
【0044】図5(a)は、受信側のパターンマッチ回
路43の構成を示すものである。パターンマッチ回路4
3は、マルチプレクサ44,シフトレジスタ46,コン
パレータ47,データ設定レジスタ48,サンプル区間
設定レジスタ49及び論理回路50などで構成される。
8ビットのシフトレジスタ46は、ビット検出部20よ
り出力される受信データ列を、マルチプレクサ44を介
して与えられるクロックTCK,SCKの何れかでシフ
トするようになっている。
【0045】コンパレータ47は、シフトレジスタ46
に格納された受信データと、データ設定レジスタ48に
セットされたパターンデータとを比較して一致信号(PAT
_MATCH) を出力する。図5(b)に示す論理回路50
は、フレームスタート信号FSTAをトリガとして、サ
ンプル区間設定レジスタ49に設定されたサンプル開始
位置のデータまでカウントを行うとイネーブル信号SE
の出力を開始し、その時点から同レジスタ49に設定さ
れたサンプル終了位置のデータまでカウントを行うとイ
ネーブル信号SEの出力を停止するようになっている。
このイネーブル信号SEをコンパレータ47に与えるこ
とで、連続するデータの特定部分のみを指定してデータ
パターンの比較を行わせるようにしている。パターンマ
ッチ回路43は、例えばシリアルデータRXとして送信
されるアドレス値の比較などに用いられる。
【0046】図6は、カウンタマッチ検出回路51の構
成を示すものである。カウンタマッチ検出回路51は、
カウンタ52,カウント値設定レジスタ53,マルチプ
レクサ54及び55などを中心として構成されている。
カウント値設定レジスタ53に設定されたデータはカウ
ンタ52にロードされ、マルチプレクサ54によって選
択される信号によってダウンカウントが行われる。そし
て、カウント値が“0”になった時点でカウンタマッチ
信号CNT_MATCH を出力するようになっている。
【0047】マルチプレクサ54では、トリガ信号FS
TA,FEND,BSTA,BENDに加えて、伝送ク
ロックTCK及び後述する同期信号ACKの内から何れ
か1つが選択される。また、カウンタ52のクリアは、
ORゲート56を介したカウンタマッチ信号CNT_MATCH
の出力によるか、或いは、マルチプレクサ55で選択さ
れる上記トリガ信号FSTA〜BEND,及び受信デー
タRXまたはその反転レベルによって行われる。
【0048】図7は、受信制御部28における受信ステ
ートマシン30の状態遷移を示すものである。受信ステ
ートマシン30には、概括して以下の6つのステート
(状態)が規定されている。 フレームスタート待ち バイトスタート待ち 受信中 バイト受信終了処理 フレーム受信終了処理 エラー
【0049】そして、リセット状態でのステートとな
り、そこから、各トリガ信号の発生によって以下のよう
に遷移する。 尚、トリガ信号ERRは、図示しないエラー検出回路が
CRCやFCCに基づいて受信データにエラーを検出し
た場合に出力される。また、送信ステートマシン38に
ついても、図7のレベルでは、エラーを除いて受信ス
テートマシン30と同様に構成される(但し、“受信
中”→“送信中”)。また、ステートにおいて“no
t ERR”である場合は通信処理を一旦終了しても良
い。
【0050】次に、図8は、受信コントロール部29に
おける受信側のフレームスタート信号RX_FSTA の出力回
路(トリガ信号発生手段)57の構成を示すものであ
る。出力回路57は、マルチプレクサ(トリガ条件選択
手段)58及びANDゲート59で構成されており、マ
ルチプレクサ58は、以下の4つの信号〜の内1つ
をトリガ信号として、レジスタRX_FSTA_SEL の設定に応
じて選択的にANDゲート59に出力するようになって
いる。 INP1 :汎用入力UIN1/ホストによるS/W
設定 PATM1:パターンマッチ1 RX_MCNTM :受信マルチカウンタマッチ RE :受信許可信号 そして、ANDゲート59は、マルチプレクサ58が出
力する信号と、受信許可信号REとの論理積をとってフ
レームスタート信号RX_FSTA を出力する。即ち、マルチ
プレクサ58においてREが選択された場合には、受
信許可信号REの発生のみがトリガ信号の発生条件とな
る。
【0051】また、INP1は、別途のレジスタ設定
によって汎用入力UIN1に与えられる外部信号と、C
PU12が指定されたレジスタに書込みを行って発生さ
せるトリガ信号(S/W(ソフトウエア)設定)の何れ
かを選択することが可能となっている。
【0052】図9は、受信側のフレームエンド信号RX_F
END の出力回路(トリガ信号発生手段)60の構成を示
すものである。出力回路60は、マルチプレクサ(トリ
ガ条件選択手段)で構成されており、以下の4つの信号
〜の内1つをトリガ信号として、レジスタRX_FEND_
SEL の設定に応じて選択的に出力するようになってい
る。 RX_DCNTM :受信データサイズカウンタマッチ RX_MCNTM :受信マルチカウンタマッチ PATM1:パターンマッチ1 INP1 :汎用入力UIN1/ホストによるS/W
設定
【0053】図10は、受信側のバイトスタート信号RX
_BSTA の出力回路(トリガ信号発生手段,トリガ条件選
択手段)61の構成を示すものである。出力回路61
は、マルチプレクサで構成され、出力回路57のマルチ
プレクサ58に与えられている3つの信号〜に加え
て、 INP3 :汎用入力UIN3/ホストによるS/W
設定 が与えられており、レジスタRX_BSTA_SEL の設定に応じ
て選択的に出力するようになっている。また、受信側の
バイトエンド信号RX_BEND は、バイトサイズカウンタ
(受信トリガ信号発生手段)のマッチ信号がそのまま出
力されるように固定されている。
【0054】図11は、送信バッファ32を中心とする
詳細な構成を示すものである。CPU12側のデータバ
ス41より転送された送信データは、32ビットの送信
バッファ32に格納され、16ビットのシフトレジスタ
33に読み出される。32ビットモードの場合はシフト
レジスタ33により2回または4回で読み出され(シフ
トレジスタ33の使用ビット数で決まる)、8ビットモ
ードの場合は1回で読み出される。送信バッファ32の
エンプティ信号TBEMPTは、リセット入力時,送信開始時
及び送信バッファ32が空になった場合に出力され、D
MAC14に対しては転送要求信号DREQとして出力
される。
【0055】シフトレジスタ33によりシリアルに送出
される送信データ列は、ビット挿入部(ビット挿入手
段)62においてプロトコルに応じてスタートビット,
ストップビット,パリティビットなどの挿入が行われて
からビット符号化部34に入力される。
【0056】図12は、送信コントロール部37におけ
る送信側のフレームスタート信号TX_FSTA の出力回路
(トリガ信号発生手段)63の構成を示すものである。
出力回路63は、マルチプレクサ(トリガ条件選択手
段)64及びANDゲート65で構成されており、マル
チプレクサ64は、以下の4つの信号〜の内1つを
トリガ信号として、レジスタTX_FSTA_SEL の設定に応じ
て選択的にANDゲート65に出力するようになってい
る。 TE :送信許可信号 INP2 :汎用入力UIN2/ホストによるS
/W設定 INP2+notTBEMPT:とバッファエンプティTBEMPTの否
定との論理和 TX_MCNTM :送信マルチカウンタマッチ そして、ANDゲート65は、マルチプレクサ64が出
力する信号と、送信許可信号TEとの論理積をとってフ
レームスタート信号TX_FSTA を出力する。即ち、マルチ
プレクサ64においてTEが選択された場合には、送
信許可信号TEの発生のみがトリガ信号の発生条件とな
る。
【0057】また、INP2は、別途のレジスタ設定
によって汎用入力UIN2に与えられる外部信号と、C
PU12が指定されたレジスタに書込みを行って発生さ
せるトリガ信号の何れかを選択することが可能となって
いる。
【0058】図13は、送信側のフレームエンド信号TX
_FEND の出力回路(トリガ信号発生手段,トリガ条件選
択手段)66の構成を示すものである。出力回路66
は、マルチプレクサで構成されており、以下の4つの信
号〜の内1つをトリガ信号として、レジスタTX_FEN
D_SEL の設定に応じて選択的に出力するようになってい
る。 TX_DCNTM :送信データサイズカウンタマッチ TX_MCNTM :送信マルチカウンタマッチ INP2 :汎用入力UIN2/ホストによるS/W
設定 INP3 :汎用入力UIN3/ホストによるS/W
設定
【0059】図14は、送信側のバイトスタート信号TX
_BSTA の出力回路(トリガ信号発生手段)67の構成を
示すものである。出力回路67は、マルチプレクサ(ト
リガ条件選択手段)68,ANDゲート69及びマルチ
プレクサ70で構成されている。マルチプレクサ68に
は、以下の3つの信号〜が与えられており、レジス
タTX_BSTA_SEL の設定に応じて選択的に出力するように
なっている。 INP2 :汎用入力UIN2/ホストによるS/W
設定 INP3 :汎用入力UIN3/ホストによるS/W
設定 TX_MCNTM :送信マルチカウンタマッチ そして、マルチプレクサ68の出力信号は、ANDゲー
ト69を介して、また、直接マルチプレクサ70の入力
端子に与えられている。ANDゲート69の他方の入力
端子には送信バッファのエンプティ信号TBEMPTの反転が
与えられており、マルチプレクサ70はレジスタCLK_MA
STERの設定に応じてマルチプレクサ68,ANDゲート
69の出力信号を選択的に出力する。また、送信側のバ
イトエンド信号TX_BEND は、受信側と同様に、バイトサ
イズカウンタ(トリガ信号発生手段)のマッチ信号がそ
のまま出力されるように固定されている。
【0060】図15は、シリアル通信装置11に汎用的
に入力される信号を内部制御に使用するための構成を概
略的に示すものである。前述したように、汎用入力信号
選択レジスタINP_SEL の設定に応じて、マルチプレクサ
71において汎用入力UIN1〜3と、CPU12によ
るレジスタINP_SWCTL に対する書込みとの何れか一方を
選択して、送受信制御や割り込み要因などに使用するこ
とができる。
【0061】また、論理回路72は、マルチプレクサ7
1からの出力信号を、エッジで検出(立上がり,立下が
り,両エッジ)するか、またはレベル(High,Low )で
検出するかを設定するものであり、設定された検出タイ
プに応じてトリガ信号を発生するようになっている。そ
のトリガ信号は、受信制御部28や送信制御部35に出
力されたり、CPU12に対する割り込み要因として用
いられる。
【0062】図16は、シリアル通信装置11内部で汎
用化したトリガ信号等に基づいて、シリアル通信装置1
1より外部に出力される信号を各プロトコルに応じて生
成するための構成を概略的に示すものである。4つのト
リガ信号FSTA,BSTA,FEND,BENDは、
マルチプレクサ73S,73Rに与えられており、マル
チプレクサ73S,73Rは、夫々出力開始,出力終了
のトリガ信号として何れか1つを選択的に出力するよう
になっている。マルチプレクサ73S,73Rの出力信
号はマルチプレクサ74S,74Rに直接入力されると
共に、インバータゲート75S,75Rを介して入力さ
れている。
【0063】マルチプレクサ74S,74Rの出力信号
は、マルチプレクサ76S,76Rの一方の入力端子に
与えられており、マルチプレクサ76S,76Rの他方
の入力端子には、カウンタ77S,77Rのカウンタマ
ッチ出力が与えられている。カウンタ77S,77Rに
は、カウンタ値設定レジスタ78S,78Rに設定され
たデータがロードされるようになっており、伝送クロッ
クTCKなどによりダウンカウントされてカウント値が
“0”になると、カウンタマッチ信号を出力するように
なっている。また、カウンタ77S,77Rは、マルチ
プレクサ74Sの出力信号でリセットされるようになっ
ている。
【0064】マルチプレクサ76S,76Rの出力信号
は、SRフリップフロップ79のS,R入力端子に夫々
与えられている。RSフリップフロップ79の出力信号
は、マルチプレクサ80に直接入力されていると共に、
インバータゲート81を介して入力されている。そし
て、マルチプレクサ80の出力信号が、汎用出力信号と
して外部に出力される。尚、SRフリップフロップ79
のセット側Sとリセット側Rとに同一のトリガ信号を選
択した場合は、トリガ信号が発生する毎に出力レベルが
反転するトグル動作となる。
【0065】図17は、汎用出力信号の出力例を示すタ
イミングチャートである。出力開始トリガとしてFST
Aを選択し、FSTAの出力タイミングでカウンタ77
S,77Rがリセットされると共にレジスタ78S,7
8Rに設定されたデータがロードされカウントが開始さ
れる。そして、カウンタ77Sのカウントマッチ信号が
出力されるとRSフリップフロップ79がセットされ、
カウンタ77Rのカウントマッチ信号が出力されるとR
Sフリップフロップ79がリセットされるようになる。
そのセット,リセットの時間差によって汎用出力信号が
出力されるようになっている。
【0066】次に、シリアル通信装置11を、具体的な
プロトコル(TAB2)に適用した場合の例を図18乃
至図22をも参照して説明する。TAB2(Telecontrol
Audio Bus 2) は、(株)富士通テンによって仕様が定
められたオーディオ用のシリアルバスである。図18
は、システム全体の構成を示すものである。シリアル通
信装置11,CPU12,DMAC14及びメモリ(R
AM)100は、例えば、カーナビゲーション装置を制
御するECU(Electronic Control Unit ,マイクロコ
ンピュータ)101の一部として構成されている。そし
て、接続先デバイスであるカーオーディオ装置102
は、TAB2インターフェイス(I/F)部103及び
オーディオ本体部104とで構成されている。
【0067】TAB2で使用される通信制御信号には以
下のものがあり、シリアル通信装置11の端子は、括弧
内のものが割り当てられる。 TCK :同期クロック(CLKOUT) MDT :送信データ(TX) SDT :受信データ(RX) SYN :同期初期化要求(UOUT1) ANS :通信制御に対するスレーブの応答(UIN
3) TRQ :バス使用権譲渡要求(UIN2) そして、シリアル通信装置11は、マスタとして機能す
る。
【0068】<送信処理>図19は、CPU12がカー
オーディオ装置102に対してデータを送信する場合の
フローチャートであり、図20は送信のタイミングチャ
ートである。図19の左側に示すものはCPU12側が
行うソフトウエア(S/W)的な処理であり、図19の
右側に示すものはシリアル通信装置11側が行うハード
ウエア(H/W)的な処理である。
【0069】CPU12は、先ず、ステップにおい
て、(1)送信を行うための初期化,(2)送信データ
のチェックサムであるFCCの計算及び(3)DMA転
送の初期設定を行う。以下により具体的な項目を示す。
尚、以下の項目の設定は、送信制御部,受信制御部の各
種レジスタにCPU12が書込みを行うことで行うよう
になっている。 (1)送信初期化 (SYN出力設定) ・汎用出力UOUT1より同期初期化要求信号SYNを
CPU12のレジスタ書込みで行うことを設定。 (送受信初期設定) ・同期プロトコル,バスデータサイズ(8ビット),割
り込み処理等の設定。 ・バイトACK信号を汎用入力UIN3(ANS)に割
り当てる。 ・同期クロックTCKとして出力されるクロック信号
に、内部のデータシフトクロックSCKを選択。
【0070】(汎用入力) ・汎用入力UIN1,2はS/W設定。ハイレベル検
出。“1”をセット。 ・汎用入力UIN3(ANS)は外部入力。立上がりエ
ッジ検出。 (送信制御) ・TX_FSTA に送信許可信号TEを選択。 ・TX_BSTA に汎用入力UIN2を選択。 ・TX_FEND にデータサイズカウンタマッチTX_DCNTMを選
択。及び送信データサイズの設定。 ・バイトサイズカウンタをTX_BSTA でセット。バイトサ
イズN=8。 ・応答信号ANSの返信待ちタイムアウトをカウントす
るマルチカウンタTX_MCNT の設定。
【0071】(受信制御)尚、ここでの受信制御は、後
述するようにオーディオ装置102側より1フレーム分
のデータ受信の確認応答として送信される信号ACKが
受信データラインSDTによって送信されるのを、シリ
アル通信装置11が受信する必要があるからである。 ・RX_FSTA ,RX_BSTA に汎用入力UIN1を選択。 ・RX_FEND にデータサイズカウンタマッチRX_DCNTMを選
択。及び受信データサイズの設定(8ビット)。 ・バイトサイズカウンタをRX_BSTA でセット。バイトサ
イズN=8。
【0072】(汎用マッチ) ・汎用マッチ出力に、送信カウンタTX_MCNT の出力を選
択。 ・汎用マッチ出力をエラー信号として出力。 (2)FCCの計算は、CPU12側で行われる。 (3)DMA初期設定 ・CPU12が、メモリ100に送信データ列を書込
む。 ・DMAC14のモード設定(送信データサイズ,デー
タ量,ソース及びデスティネーションアドレス)を、C
PU12がDMAC14の内部レジスタに書込んで行
う。 ・DMA転送の使用設定(転送要求DREQの出力許
可)。 以上までが、ステップに相当する。
【0073】次のステップにおいて、CPU12は、
同期初期化要求信号SYNをシリアル通信装置11に出
力させるためレジスタに書込みを行う。先ず、UOUT
1を“1”にセットした後、2ms〜5msの経過後に
“0”にセットするように書込みを行う。すると、ステ
ップにおいてシリアル通信装置11のUOUT1から
図20に示すようにロウレベルのパルス信号SYNが出
力される。
【0074】続くステップでは、CPU12がシリア
ル通信装置11の内部レジスタに書込みを行うことによ
り送信許可信号TEを発生させる。また、DMAC14
のカウンタをセットする。すると、フレームスタート信
号TX_FSTA が出力され、送信ステートマシン38は“フ
レームスタート待ち”→“バイトスタート待ち”へと移
行する。
【0075】また、送信バッファ32は初期状態で空で
あり、転送要求DREQの出力が許可されることでエン
プティ信号TBEMPTがDREQとしてDMAC14に出力
される。すると、DMAC14は、応答信号DACKを
通信装置11に返してメモリ100のソースアドレスか
ら送信バッファ32のデスティネーションアドレスへデ
ータを転送するので、エンプティ信号TBEMPTはインアク
ティブとなる。
【0076】バイトスタート信号TX_BSTA には汎用入力
UIN2が選択され(1)(送信初期化)の(汎用入
力)において既に“1”がセットされているので、信号
TBEMPTバーとの論理積によってバイトスタート信号TX_B
STA が出力される。すると、送信ステートマシン38は
“バイトスタート待ち”→“送信中”へと移行する。送
信バッファ32に転送された8ビットの送信データ(最
初は“FH”)はシフトレジスタ33に転送され、1ビ
ットずつシリアルに送信データMDTとして送信され
る。そして、送信バッファ32が空になるとエンプティ
信号TBEMPT→転送要求信号DREQが発行され、DMA
C14に次のデータ転送を促す。
【0077】データの送信中は、図3(f)に示す受信
中信号RENGに相当する送信中信号TENGが出力さ
れているので、各ビットの送信に合わせて同期クロック
TCKとしてシフトクロックSCKが出力される。そし
て、バイトサイズカウンタでN=8に設定されているの
で、8ビットの送信が完了した時点でバイトエンド信号
TX_BEND が出力される。
【0078】すると、送信ステートマシン38は“バイ
ト受信終了処理”:ステップに移行し、カーオーディ
オ装置102のTAB2インターフェイス部103より
スレーブ応答ANSが返信されるのを2ms以内で待
つ。その間にスレーブ応答ANSが返信されると(「Y
ES」)ステップに移行して、フレームエンド信号TX
_FEND が出力されたか否かを判定する。
【0079】また、ステップにおいて、2ms以内に
スレーブ応答ANSが返信されなければ、マルチカウン
タTX_MCNT よりカウンタマッチ信号が出力され、CPU
12に対して割込みを発生させる。この時、送信ステー
トマシン38は“バイト受信終了処理”から“エラー”
に移行する。すると、CPU12は、ステップにおい
てシリアル通信装置11内部の割込みレジスタの内容を
参照し、割込み要因(TMCERR_INT ) によりスレーブ応答
タイムアウトであることを判断するとタイムアウトエラ
ー処理を行ってからステップに戻る(送信ステートマ
シン38:“フレームスタート待ち”)。また、ステッ
プではDMAC14のカウンタをクリアする。
【0080】一方、ステップにおいて、トリガ信号TX
_FEND の出力条件にはデータサイズカウンタマッチTX_D
CNTMが選択されており、設定された送信データサイズ分
の送信が完了しなければTX_FEND は出力されない。そし
て、ステップで「NO」であればステップ(送信ス
テートマシン38は“バイトスタート待ち”)に戻り、
同時にトリガ信号TX_BSTA が発行されて次のバイトデー
タを送信する。
【0081】以上のようにして定められたデータサイズ
の送信が完了すると、ステップにおいてトリガ信号TX
_FEND が発行され(「YES」)、CPU12に対して
割込みを発生させる(TX_END_INT ) 。すると、CPU1
2は、ステップにおいて受信初期化処理を以下のよう
に行う。 ・送信禁止:TE=0 ・送信終了フラグクリア:TX_END_INT=0 ・バイトACK信号無し。 ・受信許可:RE=1
【0082】受信許可信号REがアクティブになると、
汎用入力UIN1=1,との論理積でトリガ信号RX_FST
A が発行され、ステップ“10”に移行する。また、トリ
ガ信号RX_BSTA にも汎用入力UIN1が割り当てられて
いるので、図20に示すように、トリガ信号RX_BSTA は
ステップの時点で既にアクティブとなっている。従っ
て、受信ステートマシン30は直ちに“受信中”とな
る。
【0083】そして、図20に示すように、TAB2イ
ンターフェイス部103より送信された送信応答ACK
のパターンデータ(8ビット)を受信データSDTとし
て受信すると、トリガ信号RX_BEND ,RX_FEND が発行さ
れ、シリアル通信装置11はCPU12に受信終了割込
みRX_END_INTを発行し、CPU12は受信終了処理(必
要なレジスタ設定)を行う。以上が送信処理の一連の流
れである。
【0084】<受信処理>次に、受信処理について図2
1及び図22をも参照して説明する。図21は、受信処
理の手順を示すフローチャートである。 初期設定 (SYN出力設定):送信と同様。 (送受信初期設定):送信と同様。 (汎用入力) ・汎用入力UIN1はS/W設定。ハイレベル検出。
“1”をセット。 ・汎用入力UIN2は外部入力。ロウレベル検出。→T
RQ検出用。 ・汎用入力UIN3(ANS)は外部入力。立上がりエ
ッジ検出。 ・汎用入力UIN2にS/W設定用の“1”をセット
(後で、ステップで切り換えて使用する)。 (送信制御):送信と同様。
【0085】(受信制御) ・受信データサイズの設定(16ビット)以外は送信と
同様。 ・受信側マルチカウンタRX_MCNT を、TX_MCNT と同様に
設定。 (パターンマッチ) ・シフトクロックSCKによりイネーブル信号SEの有
効区間に受信データをサンプリング(NAQデータ)。 (汎用マッチ) ・送信側は送信と同様。 ・受信側を送信側と同様に設定。 (DMA初期設定) 以上までが、ステップに相当する。
【0086】次のステップにおいて、CPU12は、
シリアル通信装置11の割込み要因レジスタをポーリン
グして、TAB2インターフェイス部103がバス使用
権譲渡要求信号TRQをロウレベルにドライブすること
を検出するまで待機する。即ち、割込み要因レジスタに
は、汎用入力2の検出割込み要求状態を示すビットがあ
り、の設定により、UIN2がロウレベル(TRQ=
L)になると上記ビットに“1”がセットされるように
なっている(尚、この要因による割込みは、設定により
マスクされている。)。そして、CPU12がTRQ=
Lを検出すると(「YES」)、送信処理と同等にして
同期初期化要求信号SYNをシリアル通信装置11に出
力させる(ステップ,)。それから、CPU12
は、ENQの送信設定を行なう(ステップ)。
【0087】ステップでは、送信バッファ32に送信
データENQをセットし、汎用入力UIN2をS/W設
定,ハイレベル検出に切り換える。そして、送信許可T
E=1とすると、の(汎用入力)において汎用入力U
IN2にS/W設定用の“1”がセットされているの
で、トリガ信号TX_FSTA ,TX_BSTA が出力される。する
と、シリアル通信装置11によって、データENQがT
AB2インターフェイス部103側に送信される(ステ
ップ)。
【0088】続いては、送信処理と同様に、TAB2イ
ンターフェイス部103よりスレーブ応答ANSが返信
されるのを2ms以内で待つ(ステップ)。その間に
スレーブ応答ANSが返信されると(「YES」)、C
PU12に対して送信終了割込みTX_END_INTを発生させ
る。
【0089】すると、CPU12は、FH/NAQの受
信設定を行なう(ステップ)。即ち、送信禁止:TE
=0,送信終了フラグクリア,受信許可:RE=1を設
定する。そして、シリアル通信装置11はデータの受信
を行ない(ステップ)、スレーブ応答ANSの返信を
待つ(ステップ“10”)。スレーブ側のTAB2インタ
ーフェイス部103は、マスタ側のシリアル通信装置1
1に送信すべきデータがある場合は“FH”を送信して
応答ANSを返す。また、送信すべきデータがない場合
は“NAQ”を送信し、応答ANSは返さない。
【0090】従って、ステップ“10”で応答ANSを受
信すると(「YES」)、シリアル通信装置11は、続
いてFDLを受信する(ステップ“12”)。また、応答
ANSを受信しなければ(「NO」)、シリアル通信装
置11は、CPU12に対して受信汎用マッチ割込み(R
MC_INT) を発生させる。CPU12は、その割込みを受
けて受信データを読み出し、データがNAQか否かを判
定する。そして、受信データがNAQであれば(「YE
S」)ステップに戻り、NAQでなければタイムアウ
トエラー処理を行なう(ステップ“19”)。
【0091】ステップ“12”でFDLを受信すると、シ
リアル通信装置11は、ステップ“13”に移行してスレ
ーブ応答ANSの返信を待ち、ANSの返信があると
(「YES」)CPU12に対して受信終了割込みRX_E
ND_INTを発生させる。すると、CPU12は、受信デー
タFH,FDLについてヘッダ処理を行い(ステップ
“14”)、続いて、DATA〜FCCの受信設定を行な
う(ステップ“15”)。
【0092】また、ステップ“13”において、2ms以
内にスレーブ応答ANSが返信されなければマルチカウ
ンタRX_MCNT よりカウンタマッチ信号が出力され、CP
U12に対して割込みRMCERR_INTを発生させる。する
と、CPU12は、ステップ“19”に移行して送信処理
の場合と同様にタイムアウトエラー処理を行ってからス
テップに戻る。
【0093】ステップ“15”では、一旦受信禁止とし
(RE=0)、受信終了フラグをクリアしてからDAT
A〜FCCの受信データサイズをセットする。更に、D
MAC14に対する転送要求DREQの出力を許可する
と共に、再び受信を許可する(RE=1)。すると、ト
リガ信号RX_FSTA 及びRX_BSTA が出力される。
【0094】続くステップ“16”において、シリアル通
信装置11は、TAB2インターフェイス部103より
送信されたデータが受信バッファ23に格納されてバッ
ファ23がフル状態になると、フル信号RBFUL を転送要
求信号DREQとしてDMAC14に出力する。する
と、DMAC14は、受信バッファ23から読み出した
データをメモリ100のデスティネーションアドレスへ
転送する。
【0095】そして、シリアル通信装置11は、1バイ
トのデータを受信するとスレーブ応答ANSの返信を待
ち(ステップ“17”)、2ms以内に返信があれば
(「YES」)次のステップ“18”に移行してトリガ信
号RX_FEND が出力されたか否かを判定する。また、ステ
ップ“17”において、2ms以内にスレーブ応答ANS
が返信されなければ(「NO」)、ステップ“13”と同
様にステップ“19”に移行する。
【0096】ステップ“18”においては、設定された受
信データサイズ分の受信が完了しなければRX_FEND は出
力されない。そして、ステップ“18”で「NO」であれ
ばステップ“16”に戻り、同時にトリガ信号RX_BSTA が
発行されて次のバイトデータを受信する。また、全ての
データの受信が完了した場合は(「YES」)、CPU
12に対して受信終了割込みRX_END_INTを発生させる。
すると、CPU12は、ACK送信設定を行なう(ステ
ップ“20”)。ACK送信設定は、受信を禁止し(RE
=0)受信終了フラグをクリアしてから送信バッファ3
2に送信データACKをセットし、送信を許可する(T
E=1)。
【0097】すると、シリアル通信装置11は、ACK
データをTAB2インターフェイス部103側に送信し
て(ステップ“21”)、CPU12に対して送信終了割
込みTX_END_INTを発生させる。
【0098】以上のように本実施例によれば、シリアル
通信装置11を、トリガ信号発生手段によってFST
A,FEND,BSTA,BENDの各トリガ信号を発
生させるように構成し、これらのトリガ信号の発生に基
づいて送信ステートマシン38,受信ステートマシン3
0の状態を遷移させ、通信制御信号の発生状態に応じて
必要な出力信号をTAB2インターフェイス部103に
出力させるように構成した。
【0099】従って、カーナビゲーション装置のCPU
12が、カーオーディオ装置102のTAB2インター
フェイス部103とシリアル通信を行う場合に、設定に
応じて対処することができる。そして、従来はサブプロ
セッサ5が行っていた通信処理をシリアル通信装置11
のハードウエアによって代行することになり、図58に
示す従来構成では、汎用ポート3,シリアルポート4及
びサブCPU5によって実現されていた機能をシリアル
通信装置11に置き換えることができる。従って、サブ
プロセッサ5を用いずともCPU12に対して発生させ
る割り込みを削減することが可能となり、CPU12の
処理効率を向上させることができる。また、ECU10
1を低コストで構成することが可能となる。
【0100】また、各プロトコルに対応してホストに実
行させるプログラムを、シリアル通信装置11に用意さ
れているレジスタの設定に合わせて作成することができ
るので、プログラミングの手法をある程度標準化させる
ことが可能となり、プログラミング作業をより容易に行
なうことができる。
【0101】更に、ECU101を、シリアル通信装置
11,CPU12,DMAC14,及びメモリ100で
構成したので、シリアル通信装置11は、CPU12に
対してバイトデータの送信,受信毎に割り込みを発生さ
せる必要がなく、送信,受信処理の終了時に割り込みを
発生させれば良いので、CPU12の割り込み処理負担
を大きく軽減することができる。
【0102】(第2実施例)図23乃至図28は本発明
の第2実施例を示すものである。第2実施例では、シリ
アル通信装置11を、RS−232C(無手順)に適用
した場合であり、図23は、シリアル通信装置11をR
S−232Cモジュールとして機能させる場合における
入出力信号の割当状態を示すものである。 CLKIN :入力クロック(CLKIN) RXD :受信データ(RX) RTS :送信要求信号(UOUT2) CLKOUT :出入力クロック(CLKOUT) TXD :送信データ(TX) CTS :送信許可信号(UIN2) 尚、RTS,CTSは負論理である。
【0103】<送信処理>図24は送信処理のフローチ
ャート、図25は同タイミングチャートを示す。また、
図26は、送信ステートマシン28の構成を図7のレベ
ルよりも詳細に示すものである。図26において、
“フレームスタート待ち”から“バイトスタート待
ち”に移行する場合は、条件(TX_FSTA &notFLSYNC )
が成り立つ場合であり、条件(TX_FSTA &FLSYNC)が成
り立つ場合は、a“フラグ挿入”のステートを経由す
る。
【0104】また、“バイトスタート待ち”から
“送信中”に移行する場合は、条件(TX_BSTA &notSTA
STP )が成り立つ場合であり、条件(TX_BSTA &STAST
P)が成り立つ場合は、a“スタートビット挿入”の
ステートを経由する。更に、“送信中”において条件
(BIT_STF &TX_MCNTM)が成り立つ場合は、a“0ビ
ット挿入”のステートを経由してに戻る。
【0105】また、“送信中”から直接“バイト受
信終了”に移行するのは、条件(TX_BEND &notPE &no
tSTASTP )が成り立つ場合であり、条件(TX_BEND &P
E)が成り立つ場合は、b“パリティ挿入”のステー
トに移行する。bにおいて条件STASTPが成り立つ場合
はc“ストップビット挿入”のステートを経由して
に移行し、条件notSTASTP が成り立つ場合は直接に移
行する。加えて、において条件(TX_BEND &notPE &
STASTP)が成り立つ場合はbに移行する。但し、第2
実施例では、a“フラグ挿入”及びa“0ビット挿
入”のステートに移行するケースはなく、これらは後述
の第3実施例において利用される。
【0106】再び図24を参照して、先ず、ステップ
では、CPU12は以下の設定を行なう。 (送信初期化) ・非同期プロトコル,全二重通信の設定。 ・パリティビット(PE),スタート・ストップビット
(STASTP)の設定。 (汎用入力設定) ・汎用入力2(UIN2)を外部入力に設定(CT
S)。ロウレベル検出。 (送信制御) ・TX_FSTA に汎用入力2(UIN2)を選択。 ・TX_BSTA に(UIN2&notTBEMPT )を選択。 ・TX_FEND にデータサイズカウンタマッチTX_DCNTMを選
択。及び送信データサイズの設定。 ・バイトサイズカウンタをTX_BSTA でセット。バイトサ
イズN=8。 (DMA初期設定) 以上までが、ステップに相当する。
【0107】次のステップでは、CPU12が送信許
可TE=1を行い、送信を開始させる。すると、シリア
ル通信装置11は、汎用入力UIN2がロウレベルにド
ライブされるまで待機し(ステップ)、ロウレベルに
ドライブされると(「YES」)トリガ信号TX_FSTA を
発生させてステップに移行する。DMAC14により
最初の送信データが送信バッファ32に転送されると、
エンプティ信号TBEMPTはインアクティブとなりトリガ信
号TX_BSTA が発生される。そして、送信データTXDは
シフトレジスタ33よりシリアルに送信されるが、この
時、条件STASTPと条件PEとが成り立っているので、デー
タの送信に先立ってビット挿入部62によりスタートビ
ットの挿入が行われる。
【0108】8ビットのバイトデータが送信されるとト
リガ信号TX_BEND が発生されるが、付帯条件(&PE&ST
ASTP)によって、バイトデータ送信の送信後にビット挿
入部62によりパリティビット,ストップビットの付加
が行われる。そして、シリアル通信装置11は、ステッ
プにおいてデータサイズカウンタによる送信終了判定
行い、設定されたデータサイズの送信が完了していなけ
ればステップに戻り、送信が完了した場合はCPU1
2に対して送信終了割込みTX_END_INTを発生させる。
【0109】<受信処理>図27は受信処理のフローチ
ャート、図28は同タイミングチャートを示す。先ず、
ステップの(受信初期化)は、送信処理と全く同様に
行われる。 (汎用入力設定) ・汎用入力1(UIN1)をS/Wに設定。ハイレベル
検出。“1”をセット。 (汎用出力設定) 汎用出力2(UOUT2)から送信要求信号RTSを出
力するための設定を行なう。 ・出力開始トリガ,出力終了トリガに受信バッファフル
信号RBFUL を選択。
【0110】(受信制御) ・RX_FSTA に汎用入力UIN1を選択。 ・RX_BSTA にパターンマッチ1を選択。 ・RX_FEND にデータサイズカウンタマッチRX_DCNTMを選
択。及び受信データサイズの設定(8ビット)。RX_BST
A でカウンタセット。 ・バイトデータサイズの設定(8ビット)。 (パターンマッチ) ・伝送クロックTCKによりクロック毎サンプリング
(スタートビット検出)。第0〜第6ビットはマスクす
る。 ・パリティエラー検出。 (DMA初期設定):第1実施例の受信処理と同様。
【0111】次に、CPU12は、受信許可RE=1を
設定して受信を開始させる(ステップ)。すると、シ
リアル通信装置11は、パターンマッチ1によってスタ
ートビット“0”の受信を検出するまで待機し(ステッ
プ)、受信を検出すると(「YES」)RX_BSTA を発
生させてバイトデータを受信する(ステップ)。尚、
実際の受信開始は接続先デバイスによるデータ送信タイ
ミングで決まるため、RX_BSTA の発生は、RX_FSTA の発
生よりも後になるのが通常である。ステップにおいて
受信バッファ23がフルとなり、バッファフル信号RBFU
L =1となると、DMAC14に転送要求DREQを出
力する。
【0112】また、ステップ〜“11”は、他のステッ
プとは独立のシリアル通信装置11のH/W処理ルーチ
ンである。即ち、受信バッファ23がフルでなければ
(ステップ,「NO」)(汎用出力設定)に基づき送
信要求信号RTSをアクティブ“0”にし(ステップ
“10”)、受信バッファ23がフルであれば(ステップ
,「YES」)送信要求信号RTSをインアクティブ
“1”にする(ステップ“11”)。
【0113】ステップ,では、パリティエラー,フ
レーミングエラー(ストップビット検出無し)の検出を
行なう。エラーが検出されると(「YES」)、CPU
12に対して割込みPCERR_INT ,FERR_INTを発生させ、
エラー処理を実行させる(ステップ)。ステップで
エラー処理を行った後はステップに移行する。そし
て、ステップ,でエラーが検出されなければ(「N
O」)、データサイズカウンタによる受信終了判定行い
(ステップ)、設定されたデータサイズの受信が完了
していなければステップに戻り、受信が完了した場合
はCPU12に対して受信終了割込みRX_END_INTを発生
させる。
【0114】以上のように第2実施例によれば、送信デ
ータ列にビットデータの挿入を行うためのビット挿入部
62を備え、送信ステートマシン38を、バイトスター
ト待ちステートと送信中ステートとの間においてスター
トビット挿入ステートに遷移可能に構成し、また、通信
中ステートとバイト通信終了ステートとの間にストップ
ビット挿入ステートに遷移可能に構成した。
【0115】更に、通信中ステートとバイト通信終了ス
テートとの間において、送信データにパリティビットを
挿入するためのパリティビット挿入ステートに遷移可能
に構成した。従って、RS−232Cのように、送信デ
ータの最初と最後にスタートビット,ストップビットや
エラー検出用のパリティビットを場合によって付加する
必要があるプロトコルにも対応することができる。
【0116】(第3実施例)図29乃至図33は本発明
の第3実施例を示すものである。第3実施例では、シリ
アル通信装置11を、HDLC(High Level Data Link
Control procedure)に適用した場合であり、図29は、
シリアル通信装置11をHDLCモジュールとして機能
させる場合における入出力信号の割当状態を示すもので
ある。 CLKIN :非同期クロック(CLKIN) TX :送信データ(TX) RX :受信データ(RX) CLKOUT :非同期クロック(CLKOUT)
【0117】<送信処理>図30は送信処理のフローチ
ャート、図31は同タイミングチャートを示す。先ず、
ステップでは、CPU12は以下の設定を行なう。 (送信初期化) ・非同期プロトコル,全二重通信の設定。 ・ビットスタッフィング(BIT_STF ),フラグ同期(FL
SYNC)ありの設定。 (汎用入力設定) ・汎用入力2(UIN2)をS/W設定。ロウレベル検
出。“1”をセット。 (送信制御) ・TX_FSTA にTEを選択。 ・TX_BSTA に(UIN2&notTBEMPT )を選択。 ・TX_FEND にデータサイズカウンタマッチTX_DCNTMを選
択。 ・送信マルチカウンタ設定(ビットスタッフィングに利
用される)。TCKカウント,TX=0でセット、カウ
ントサイズ=5。 ・バイトサイズカウンタTX_BSTA でセット。バイトサイ
ズN=8。 ・フラグシーケンスデータ0x7eをレジスタにセッ
ト。
【0118】(エラー検出) ・CRC(Cyclic Redundancy Check) によるエラー検出
設定。 (DMA初期設定) ・メモリ100に送信データ列(フラグ,CRCを除
く)を書込む。 ・DMAC14のモード設定。 ・DMA転送の使用設定。 以上までが、ステップに相当する。
【0119】次のステップでは、CPU12が送信デ
ータサイズを設定して(CRCを除く)送信許可TE=
1を行い送信を開始させる。この時点でトリガ信号TX_F
STAの発生条件が成立するが、シリアル通信装置11
は、付帯条件(&FLSYNC)によって先ず内部レジスタに
セットされたフラグシーケンスデータ(0x7e)を送
信するためのタイミングに利用する(ステップ)。そ
れから、内部的にトリガ信号TX_FSTA を出力すると、第
1,第2実施例と同様に、DMAC14より送信バッフ
ァ32に転送されるバイトデータ(アドレス,制御,情
報)を順次送信する(ステップ,)。
【0120】尚、この場合、ビットスタッフィング(BI
T_STF )がアクティブとなっているので、シリアル通信
装置11はビット挿入部62により送信データに必要に
応じて“0”ビット挿入を行う。即ち、送信マルチカウ
ンタをTX=0でカウントサイズ=5をセットしTCK
をカウントする。そして、TX=1の状態を5回カウン
トした場合は、フラグシーケンスと同じビットパターン
が発生していることになる。従って、その時点で送信デ
ータに“0”ビット挿入を行うことで、フラグシーケン
スと同一のビットパターンを送信することを回避する。
【0121】そして、シリアル通信装置11は、ステッ
プにおいてデータサイズカウンタによる送信終了判定
行い、設定されたデータサイズの送信が完了すると(<
Y>)ステップにおいてCRCデータを送信する。そ
れから、TX_BEND と共にTX_FEND を発生させてフラグシ
ーケンスデータを送信し(ステップ)、CPU12に
対して送信終了割込みTX_END_INTを発生させる。
【0122】<受信処理>図32は受信処理のフローチ
ャート、図33は同タイミングチャートを示す。先ず、
ステップでは、CPU12は以下の設定を行なう。 (受信初期化):送信と同じ。 (汎用入力設定) ・汎用入力1(UIN1)をS/W設定。ロウレベル検
出。“1”をセット。 (受信制御) ・RX_FSTA に(RE&パターンマッチ1)を選択。 ・RX_BSTA に汎用入力1(UIN1)を選択。 ・RX_FEND にパターンマッチ1を選択。 ・受信データサイズを最大にセット。 ・バイトサイズカウンタRX_BSTA でセット。バイトサイ
ズN=8。 ・受信マルチカウンタ設定(スタッフィングされた
“0”ビット削除に使用)。TCKカウント,RX=0
でセット、カウントサイズ=5。 ・フラグシーケンスデータ0x7eをレジスタにセッ
ト。
【0123】(パターンマッチ) ・伝送クロックTCKで、クロック毎にサンプリング。 ・パターンマッチ1のデータをフラグ検出用(0x7
e)に設定。 ・パターンマッチ2のデータをアボート検出用(0xf
f)に設定。第8ビットをマスク。 (エラー検出) ・CRC(Cyclic Redundancy Check) によるエラー検出
設定。 ・パターンマッチ2をエラー検出用に選択。 (DMA初期設定) 以上までが、ステップに相当する。
【0124】次のステップでは、CPU12が受信許
可RE=1を設定し受信を開始させる。すると、シリア
ル通信装置11は、フラグシーケンスデータ(0x7
e)の受信を待つ(ステップ,)。フラグシーケン
スを受信した場合は、シリアル通信装置11内部でパタ
ーンマッチ1が出力され(ステップ,<Y>)、受信
許可RE=1とのAND条件によってトリガ信号RX_FST
A が発生されると共に、トリガ信号RX_BSTA も発生され
る。
【0125】続くステップ〜は、フラグシーケンス
に続いて送信される同期(制御)フラグを受信する。ス
テップで受信した8ビットデータがアボートパターン
である場合は(ステップ,「YES」)、CPU12
に受信マッチエラー割り込みRMCERR_INTを発生させる。
すると、CPU12は、そのエラーが必要なデータの受
信後に発生したものか否かを判断し(ステップ“1
3”)、必要なデータの受信後であれば(「YES」)
エラー要因をクリアして受信停止RE=0とし、処理を
終了する。また、必要なデータの受信中に発生したエラ
ーであれば(「NO」)、ステップ“14”に移行してエ
ラー処理を行った後、ステップに戻る。
【0126】一方、ステップで受信した8ビットデー
タがフラグである場合は(ステップ,「YES」)ス
テップに戻り、前記データが受信データ(情報)であ
れば(ステップ,「NO」)、データを8ビット単位
で受信し、受信バッファフル信号RBFUL =1であればD
MAC14に転送要求DREQを出力する(ステップ
)。
【0127】この場合、シリアル通信装置11は、受信
データ中にスタッフィングされている“0”ビットを検
出すると、その“0”ビットの削除を行う。即ち、受信
マルチカウンタをRX=0でカウントサイズ=5をセッ
トしTCKをカウントする。そして、RX=1の状態を
5回カウントした場合はその次のビットに“0”ビット
が挿入されているので、その“0”ビットを削除する。
【0128】そして、情報データの受信中においてもア
ボートパターンを検出すると(ステップ,「YE
S」)ステップ“13”に移行する。そして、ステップ
“10”において、パターンマッチ1が出力されるか否か
によってフラグシーケンスを受信したか否かを判断し、
受信しなけば(「NO」)ステップに戻り、受信した
場合は(「YES」)CPU12に受信終了割込みRX_E
ND_INTを発生させる。すると、CPU12は、その時点
までに受信したデータの内容から受信終了と判断すると
(「YES」)、その時点で強制的に受信停止RE=0
とし(ステップ“12”)処理を終了する。
【0129】以上のように第3実施例によれば、シリア
ル通信装置11の送信ステートマシン38を、フレーム
スタート待ちステートとバイトスタート待ちステートと
の間において、内部レジスタの設定に応じてフラグデー
タ挿入ステートに遷移可能に構成したので、HDLCの
ように、送信の開始時と終了時にフラグシーケンスを送
信する必要があるプロトコルにも対応することが可能と
なる。また、パターンマッチによりフラグシーケンスを
検出することで、シリアル通信装置11を、フラグ同期
型のプロトコルであるHDLCのモジュールとして使用
することができる。
【0130】(第4実施例)図34乃至図38は本発明
の第4実施例を示すものである。第4実施例では、シリ
アル通信装置11を、IIC(Inter Integrated Circui
t)バスに適用した場合であり、図34は、シリアル通信
装置11をIICモジュール(マスタ,スレーブ)とし
て機能させる場合における入出力信号の割当状態を示す
ものである。 SCL :同期クロック(CLKOUT,CL
KIN) SDA :通信データ(TX,RX)
【0131】<送信処理>図35は送信処理のフローチ
ャート、図36は同タイミングチャートを示す。先ず、
ステップでは、CPU12は以下の設定を行なう。 (送信初期化)IICプロトコルでは、マスタ側が送信
開始時にスタートコンディション(SCLがハイレベル
の場合にSDAを立下げる)をスレーブ側に出力するこ
とでデータの送受信が開始される。そのスタートコンデ
ィションを出力するための設定を行なう。 ・同期プロトコル。半二重通信。TXの初期値=1。 ・スレーブからのBACK信号を、データラインTXで
受信。 ・フレーム開始同期信号として“0”出力。データライ
ンTXで送信。 ・フレーム終了同期信号無し。 ・CLKOUTにシフトクロックSCKを選択。 ・DREQ出力禁止。
【0132】(汎用入力)・汎用入力2(UIN2)を
S/W設定。ロウレベル検出。“1”をセット。 (送信制御) ・TX_FSTA にTEを選択。 ・TX_BSTA に汎用入力2(UIN2)を選択。 ・TX_FEND にデータサイズカウンタを選択。 ・バイトサイズカウンタをTX_BSTA でセット,バイトサ
イズN=8。 (DMA初期設定) (送信許可) ・送信データサイズ8ビット。送信許可TE=1(TX_F
STA 発生) 以上までが、ステップに相当する。
【0133】次のステップでは、CPU12が送信バ
ッファ32にアドレス及びR/Wのデータを書込んでセ
ットすると、送信バッファ32のエンプティ信号がイン
アクティブになり、トリガ信号TX_BSTA が発生する。そ
して、ステップにおいて、シリアル通信装置11がS
DA(TX)のレベルを“0”にすることでスタートコ
ンディションを出力し、続いて、送信バッファ32にセ
ットされたアドレス及びR/Wのデータを送信する(ス
テップ)。
【0134】そして、シリアル通信装置11は、データ
ラインTXがスレーブによってロウレベルにドライブさ
れることでスレーブ応答ACKを受信したか否かを判断
し(ステップ)、受信した場合は(「YES」)CP
U12に対して送信終了割込み(TX_END_INT)を発生させ
る。また、スレーブ応答ACKを受信しなかった場合は
(「NO」)、CPU12に対して送信フレーミングエ
ラー割込み(TFERR_INT) を発生させる。すると、CPU
12はエラー処理(ステップ“10”)を行ってからステ
ップに戻る。
【0135】また、スレーブ側がSCLをロウレベルに
ドライブすることでビジーステータスを示した場合、シ
リアル通信装置11は、そのビジーステータスが解除さ
れるまで次の送信処理を行わない。
【0136】CPU12は、送信終了割込みを受け付け
ると、送信初期化(ステップ)を行う。即ち、一旦送
信を禁止し(TE=0)、フレーム開始同期信号を“無
し”に、フレーム同期終了信号として“0”出力及び送
信データサイズを設定する。そして、DMAC14にD
REQの出力を許可すると、DMAC14にカウンタの
設定を行ない送信を許可(TE=1)する(ステップ
)。
【0137】続くステップ,,“11”において、シ
リアル通信装置11は、バイトデータの送信を行う。ス
テップにおいてスレーブ応答ACKが返らなかった場
合は、ステップ“10”に移行する。また、ステップ“1
1”においてデータサイズカウンタのマッチ出力(TX_FEN
D) が発生した場合は(「YES」)、ストップコンデ
ィション(SCLがハイレベルの場合にSDAを立上げ
る)をスレーブ側に出力することで(ステップ“1
2”)、CPU12に対して送信終了割込み(TX_END_IN
T)を発生させる。
【0138】<受信処理>図37は受信処理のフローチ
ャート、図38は同タイミングチャートを示す。ステッ
プの送受信初期化は、送信処理の場合と略同様であ
る。 (汎用入力設定) ・汎用入力1,2(UIN1,2)をS/W設定。ロウ
レベル検出。夫々“1”をセット。 (送信制御) ・TX_FSTA にTEを選択。 ・TX_BSTA に汎用入力2(UIN2)を選択。 ・TX_FEND にデータサイズカウンタを選択。 ・バイトサイズカウンタをTX_BSTA でセット,バイトサ
イズN=8。
【0139】(受信制御) ・RX_FSTA に汎用入力1(UIN1)を選択。 ・RX_BSTA に汎用入力2(UIN2)を選択。 ・RX_FEND にデータサイズカウンタを選択。 ・バイトサイズカウンタをRX_BSTA でセット,バイトサ
イズN=8。 (DMA初期設定) ・DMAC14のモード設定。DMA転送の使用設定。 (送信許可) ・送信データサイズ8ビット。 ・送信許可TE=1 以上までが、ステップに相当する。続くステップ〜
は、送信処理と同様に行われる。また、ステップに
おけるエラー処理も、ステップ“10”と同様である。
【0140】CPU12は、シリアル通信装置11によ
る送信終了割込みを受け付けると、受信初期化(ステッ
プ)を行う。ここでは、送信処理のステップと同様
の設定を行なうと共に、データの受信に応じてSDAラ
インに出力するバイトACK信号の出力設定を行なう。
即ち、バイトACK信号をロウレベル“0”として出力
すると共に、最終バイトの受信に対応するACK信号は
ストップコンディションを出力することで不要となるた
め、ACK信号の出力をマスクするように設定する。以
降のステップ〜“12”は、送信処理のステップ〜
“12”を受信について行なうものである。
【0141】以上のように第4実施例によれば、シリア
ル通信装置11をIICバスのモジュールとして機能さ
せるので、同一データラインでアドレス及びデータやA
CK信号を送信するようなプロトコルにも対応すること
ができる。
【0142】(第5実施例)図39乃至図44は本発明
の第5実施例を示すものである。第5実施例では、シリ
アル通信装置11を、IIS(Inter IC Sound)バスに適
用した場合であり、図39は、シリアル通信装置11を
IISモジュール((a)クロックマスタ,(b)クロ
ックスレーブ)として機能させる場合における入出力信
号の割当状態を示すものである。 SCK :同期クロック(CLKOUT,CL
KIN) WS :L/Rクロック(UOUT1,UI
N1or2) SDI :シリアルデータ(TX) SDO :シリアルデータ(RX)
【0143】<送信処理>図40は送信処理のフローチ
ャート、図41は同タイミングチャート(クロックマス
タの場合)を示す。先ず、ステップでは、CPU12
は以下の設定を行なう。 (送信初期化) ・同期プロトコル,全二重通信。TXの初期値=1。M
SBファースト。 ・音声データ,前詰め送信。 ・送受信時,自身(マスタ)がクロックマスタとなる設
定。 (汎用入力設定) ・汎用入力2(UIN2)をS/W設定。ロウレベル検
出。“1”をセット。 (汎用出力設定) ・汎用出力1(UOUT1)のセットトリガ,リセット
トリガに送信マルチカウンタ出力を設定。S−Rフリッ
プフロップ出力。
【0144】(送信制御) ・TX_FSTA にマルチカウンタ出力を選択。 ・TX_BSTA に汎用入力2(UIN2)を選択。 ・TX_FEND にデータサイズカウンタを選択。データサイ
ズ16ビット。TX_FSTA でカウンタセット。 ・バイトサイズ,N=16。 (送信マルチカウンタTX_MCNT 設定) ・TCKカウント,TE=1でセット。カウントサイズ
0x1f (DMA初期設定) 以上までが、ステップに相当する。
【0145】次のステップでは、CPU12は、DM
AC14にカウンタ設定を行ない、送信許可TE=1を
セットする。すると、送信マルチカウンタにカウンタ値
がセットされカウントが開始される(ステップ)。次
のステップにおいて送信マルチカウンタのカウンタマ
ッチ出力が検出されると(「YES」,TX_FSTA 発
生)、それをトリガとしてステップに移行し、バイト
データの送信が開始される。即ち、WSがロウレベルの
期間はLチャネル用の16ビットデータが送信され、ハ
イレベルの期間はRチャネル用の16ビットデータが送
信される。
【0146】尚、送信マルチカウンタのカウンタマッチ
出力は、UOUT1のフリップフロップ出力をトグルさ
せるので、その出力毎にL/RクロックWSのレベルは
遷移する。そして、ステップでは、送信データサイズ
カウンタの出力に基づいてTX_FEND を発生させる。
【0147】また、シリアル通信装置11がクロックス
レーブとなる場合は、以下のようになる。先ず、図41
におけるステップを“WS信号検出開始”に、ステッ
プを“WS検出?”に置き換える。そして、ステップ
の(送信初期化)では、スレーブがクロックマスタと
なる設定を行なう部分だけが相違する。 (汎用入力設定) ・汎用入力2(UIN2)を外部入力に設定(WS)。
立下がりエッジ検出(又は立上がりでも可)。 ・汎用入力3(UIN3)をS/W設定。ロウレベル検
出。“1”をセット。 (汎用出力設定):不要。
【0148】(送信制御) ・TX_FSTA に汎用入力2(&notTBEMPT )選択。 ・TX_BSTA に汎用入力3(UIN3)を選択。 (送信マルチカウンタTX_MCNT 設定):不要。 ・TCKカウント,TE=1でセット。カウントサイズ
0x1f (DMA初期設定)以上までが、ステップに相当す
る。そして、CPU12は、ステップを同様に実行す
ると、シリアル通信装置11はWS信号の(レベル変化
の)検出を開始し(ステップ)、WS信号を検出する
と(「YES」)ステップに移行する。その他はクロ
ックマスタの場合と同様である。
【0149】<受信処理>図42は受信処理のフローチ
ャートを示す。ステップの送受信初期化は、送信処理
の場合と略同様である。尚、受信時のタイミングチャー
トは送信時と同様となるので、図示を省略する。 (汎用入力設定) ・汎用入力2(UIN2)をS/W設定。ロウレベル検
出。“1”をセット。 (汎用出力設定) ・汎用出力1(UOUT1)のセットトリガ,リセット
トリガに受信マルチカウンタ出力を設定。S−Rフリッ
プフロップ出力。
【0150】(受信制御) ・RX_FSTA にマルチカウンタを選択。 ・RX_BSTA に汎用入力1(UIN1)を選択。 ・RX_FEND にデータサイズカウンタを選択。 ・バイトサイズカウンタをRX_BSTA でセット,バイトデ
ータサイズN=16。 (受信マルチカウンタRX_MCNT 設定) ・TCKカウント,RE=1でセット。カウントサイズ
0x1f。 (DMA初期設定)以上までが、ステップに相当す
る。そして、以降のステップ〜は、送信処理を受信
に置き換えたものとして行なう。但し、ステップにお
いて「YES」と判断した場合はステップに戻る。そ
して、CPU12は、DMAC14からのDMA終了割
込みを受けると、データの受信を終了する(ステップ
)。
【0151】また、シリアル通信装置11がクロックス
レーブとなる場合は、上記受信のフローチャートを、送
信処理においてクロックスレーブとなる場合と同様に置
き換えたものとなる。
【0152】以上のように第5実施例によれば、シリア
ル通信装置11をIISバスのモジュールとして機能さ
せるので、L/RクロックWSのような通信制御信号に
よってデータの種類を判別するようなプロトコルにも対
応することができる。
【0153】(第6実施例)図43乃至図47は本発明
の第6実施例を示すものである。第6実施例は、シリア
ル通信装置11をHIT64に適用した場合であり、図
43は、シリアル通信装置11をHIT64モジュール
として機能させる場合における入出力信号の割当状態を
示すものである。 TX :送信データ(TX) RX :受信データ(RX) HBREQ :スレーブからのポーリング要求(U
IN3)
【0154】<送信処理>図44は送信処理のフローチ
ャート、図45は、シリアル通信装置11と接続先デバ
イスとの間における通信シーケンス((a)は制御フレ
ーム,(b)はデータフレーム)を示す。先ず、ステッ
プでは、CPU12は以下の設定を行なう。 (送信初期化) ・非同期プロトコル,全二重通信。TXの初期値=1。 ・スタート/ストップビット,夫々1ビット (汎用入力設定) ・汎用入力1,2(UIN1,2)をS/W設定。ハイ
レベル検出。夫々“1”をセット。
【0155】・汎用入力3を外部入力設定。ハイレベル
検出。 (送信制御) ・TX_FSTA にTEを選択。 ・TX_BSTA に汎用入力2(UIN2)を選択。 ・TX_FEND にデータサイズカウンタを選択。データサイ
ズ任意。 ・バイトサイズカウンタをTX_FSTA でセット。バイトサ
イズN=8。
【0156】(受信制御) ・RX_FSTA に汎用入力1(UIN1)を選択。 ・RX_BSTA にパターンマッチ1を選択。 ・RX_FEND にデータサイズカウンタを選択。受信データ
サイズ任意。 ・バイトサイズカウンタをRX_BSTA でセット。バイトサ
イズN=8。 (パターンマッチ設定) ・伝送クロックTCKによりクロック毎サンプリング
(スタートビット検出)。第0〜第6ビットはマスクす
る。 (タイムアウト設定) ・送信フレーム間,受信フレーム間のタイムアウト時間
を40msに設定。 (DMA初期設定) 以上までが、ステップに相当する。
【0157】そして、CPU12は、ステップでDM
AC14のカウンタを設定すると共に送信を許可し(T
E=1)、シリアル通信装置11はバイトデータの送信
を開始する(ステップ)。そして、データサイズカウ
ンタにより送信終了と判断すると(ステップ,「YE
S」)、CPU12に対して送信終了割込みを発生させ
てステップに移行する。尚、送信中にステップ“15”
において送信フレームタイムアウトが発生すると(「Y
ES」)、CPU12に対してタイムアウトエラー割り
込みTX_FTOERR_INT を発生させる。すると、CPU12
は、ステップ“17”においてエラー処理を行う。
【0158】CPU12は、ステップにおいて送信を
一旦停止させる(TE=0)。そして、送信したデータ
がMDHであれば(「YES」)データフレームの送信
中であり、10msの間隔をとってから(ステップ)
ステップに移行する。また、送信したデータがMDH
でなければ(ステップ,「NO」)、制御フレームE
NQの問い合わせ(データあり?)に対するスレーブ応
答ACKを受信するため、受信フレームタイムアウトを
許可してから(ステップ)受信を許可する(RE=
1,ステップ)。
【0159】すると、シリアル通信装置11は、スター
トビットの検出を待って(ステップ,「YES」)バ
イトデータの受信を行なう(ステップ“10”)。この場
合、受信バッファ23がフルになった場合は、CPU1
2に対して割り込みRBFUL_INT を発生させて、受信デー
タの引上げを要請する(ステップ“11”)。
【0160】データの受信中にフレーミングエラー(ス
トップビット検出無し)が発生すると(ステップ“1
2”,「YES」)、CPU12に対して割り込みRFERR
_INT を発生させてステップ“17”でエラー処理を行な
わせる。また、受信中にステップ“16”において受信フ
レームタイムアウトが発生すると(「YES」)、CP
U12に対してタイムアウトエラー割り込みRX_FTOERR_
INT を発生させる。
【0161】そして、データの受信が完了すると(ステ
ップ“13”,「YES」)、CPU12は受信を禁止し
(RE=0)、受信データ中に含まれているFCCをチ
ェックする(ステップ“14”)。FCCの計算結果がO
Kであれば(「YES」)処理を終了し、結果がNGで
あればステップ“17”に移行する。
【0162】<受信処理>図46は受信処理のフローチ
ャート、図47は同通信シーケンスを示す。ステップ
で行なう各種設定は、基本的に送信処理の場合と同様で
ある(但し、DMAC14は受信に使用する)。そし
て、シリアル通信装置11は、汎用入力UIN3におい
てHBREQがハイレベルになったことを検出すると
(ステップ,「YES」)、CPU12に対して割り
込みINP3_IR を発生させる。すると、CPU12は、送
信データサイズを任意に設定して送信を許可する(TE
=1,ステップ)。
【0163】シリアル通信装置11は、バイトデータの
送信(データあり?の問い合わせ)を開始するが(ステ
ップ)、送信バッファ32が空になった場合は、CP
U12に対して割り込みTBEMP_INT を発生させて、CP
U12に送信データをセットさせる(ステップ)。送
信が終了すると(ステップ,「YES」)終了割込み
により、CPU12は、受信設定(ステップ,送信禁
止,割り込みクリア,DMA使用,受信データサイズ設
定)を行ない、受信を許可する(ステップ)。
【0164】以降の受信処理ステップ〜“13”は、送
信処理における受信処理ステップ〜“14”と略同様に
行なわれるが、受信バッファ23がフルになった場合
は、DMAC14に対して転送要求DREQを発生させ
て、受信データの転送を要請する。
【0165】CPU12は、ステップ“13”において、
FCCの計算結果がOKであれば(「YES」)、受信
データがSDHであるか否かを判断し(ステップ“1
4”)、SDHである場合は(「YES」)その後に続
く受信データフレームを受信するためステップに戻
る。SDHでない場合は(「NO」)データフレームか
否かを判断する(ステップ“15”)。
【0166】即ち、SDHに続くデータフレームを受信
した場合、CPU12はステップ“15”で「YES」と
判断して、応答ACKを送信するため送信を開始する
(ステップ“16”)。そして、シリアル通信装置11が
ステップ“17”,“18”においてステップ,と同様
にして応答ACKを送信すると受信処理を終了する。ま
た、ステップ“19”,“20”におけるフレーミングエラ
ー処理は、送信処理におけるステップ“15”,“16”と
同様に行われる。
【0167】以上のように第6実施例によれば、シリア
ル通信装置11を、HIT64のモジュールとして機能
させるようにしたので、通信にクロックを使用しないよ
うなプロトコルにも対応させることができる。
【0168】(第7実施例)図48乃至図52は本発明
の第7実施例である。第7実施例は、シリアル通信装置
11をCHIP(Centralized High-level Information
control Protocol)に適用した場合であり、図48は、
シリアル通信装置11をCHIPモジュールとして機能
させる場合における入出力信号の割当状態を示すもので
ある。 MDT :送信データ(TX) SMD :受信データ(RX) BREQ :受信要求信号(UIN3)
【0169】<送信処理>図49は送信処理のフローチ
ャート、図50は同タイミングチャートを示す。先ず、
ステップでは、CPU12は以下の設定を行なう。 (送信初期化) ・非同期プロトコル,全二重通信。TXの初期値=1。 ・スタート/ストップビット,夫々1ビット。 (汎用入力設定) ・汎用入力1,2(UIN1,2)をS/W設定。ハイ
レベル検出。夫々“1”をセット。 ・汎用入力3を外部入力設定。ハイレベル検出。
【0170】(送信制御) ・TX_FSTA にTEを選択。 ・TX_BSTA に汎用入力2(UIN2)を選択。 ・TX_FEND にデータサイズカウンタを選択。データサイ
ズ任意(但し、FH〜DCCまでのデータサイズ)。 ・バイトサイズカウンタをTX_FSTA でセット。バイトサ
イズN=8。 (送信マルチカウンタ設定) ・TCKカウント,TX_FEND でカウンタセット,カウン
トサイズ=15。→DMYコード出力に用いる。
【0171】(受信制御) ・RX_FSTA に汎用入力1(UIN1)を選択。 ・RX_BSTA にパターンマッチ1を選択。 ・RX_FEND に受信マルチカウンタを選択。 ・バイトサイズカウンタ,RX_BSTA でセット,バイトデ
ータのサイズN=8。 (パターンマッチ設定) ・第7実施例と同様にスタートビット検出。 (エラー) ・送信汎用マッチにマルチカウンタ出力を選択。割り込
み要因に設定。 ・バイトタイムアウトを、TCK15クロック相当のカ
ウント値に設定。 ・FCC設定。 (DMA初期設定) 以上までが、ステップに相当する。
【0172】次に、CPU12は、ステップにおいて
DMAC14のカウンタ設定を行なうと共に送信を許可
する(TE=1)。ステップ,は、シリアル通信装
置11によりバイトデータの送信(FH,DATA,F
CC)が行われる。FCCまでのデータ送信が終了する
と(ステップ,「YES」)トリガ信号TX_FEND が発
生し、送信マルチカウンタがカウントを開始する。
【0173】そして、送信マルチカウンタがTCKを1
5カウントすることでカウンタマッチ信号が出力される
と(ステップ,「YES」)DMYコードが送信され
たことになり、シリアル通信装置11は、CPU12に
対する割り込みTMC_INT を発生させる。
【0174】CPU12は、前記割り込みの発生を受け
て受信設定(送信禁止,割り込みクリア)及び受信開始
(受信許可RE=1)を行う(ステップ,)。する
と、シリアル通信装置11は受信を開始して、パターン
マッチ1によりスタートビットを検出すると(ステップ
,「YES」:RX_BSTA 発生)スレーブ側より送信さ
れるバイトデータの受信を開始する(ステップ,“1
1”)。
【0175】ステップにおいて受信バッファ23がフ
ルの場合は割り込みによってCPU12にデータの引上
げを要請し(ステップ“10”)、フレーミングエラーが
発生した場合は(ステップ“11”,「YES」)CPU
12にエラー処理を実行させる(ステップ“12”)。そ
して、ステップ“13”においてバイトデータの受信終了
後、TCK15クロック分の無通信状態が生じると受信
バイトタイムアウトが発生し(RX_FEND 発生)、CPU
12に対して割り込みRX_BTOERR_INT を発生させて受信
を終了させる。
【0176】<受信処理>図51は受信処理のフローチ
ャート、図52は同タイミングチャートを示す。ステッ
プで行なう各種設定は、基本的に送信処理の場合と同
様である(但し、DMAC14は受信に使用する。ま
た、汎用入力UIN3を、外部入力でロウレベル検出
(BREQ)に設定。)。そして、シリアル通信装置1
1は、汎用入力UIN3においてBREQがロウレベル
になったことを検出すると、CPU12に対して割り込
みINP3_IR を発生させる(ステップ)。すると、CP
U12は送信を許可(TE=1)する(ステップ)。
【0177】シリアル通信装置11は、ステップ,
において送信処理におけるステップ〜と同様にバイ
トデータ(但し、FH,FCC,DMY)の送信を行な
うが、送信バッファ32が空になった場合は、CPU1
2に対して割り込みTBEMP_INT を発生させて、CPU1
2に送信データをセットさせる(ステップ)。
【0178】また、ステップ〜“14”における受信処
理も、基本的に送信処理におけるステップ〜“13”と
同様に行われる。但し、受信バッファ23がフルになっ
た場合は、DMAC14に対して転送要求DREQを発
生させて、受信データの転送を要請する。以上のように
第7実施例によれば、シリアル通信装置11を、CHI
Pのプロトコルにも対応させることができる。
【0179】(第8実施例)図53乃至図57は本発明
の第8実施例である。第8実施例は、シリアル通信装置
11をCCB(Computer Control Bus)に適用した場合で
あり、図43は、シリアル通信装置11をCCBモジュ
ールとして機能させる場合における入出力信号の割当状
態を示すものである。 CL :同期クロック(CLKOUT) DI :マスタ送信データ(TX) DO :マスタ受信データ(RX) CE :データ制御信号(UOUT1) INT :CCBデバイスからの割り込み信号
(UIN3)
【0180】<送信処理>図54は送信処理のフローチ
ャート、図55は同タイミングチャートを示す。先ず、
ステップでは、CPU12は以下の設定を行なう。 (送信初期化) ・同期プロトコル,全二重通信。TXの初期値=1。 ・CLKOUTよりシフトクロックSCKを出力。 (汎用入力) ・汎用入力2(UIN2)をS/W設定。ハイレベル検
出。“1”をセット。 (汎用出力) ・汎用出力1(UOUT1)のセット,リセットをS/
W設定。
【0181】(送信制御) ・TX_FSTA に(UIN2&notTBEMPT )を選択。 ・TX_BSTA に汎用入力2(UIN2)を選択。 ・TX_FEND にデータサイズカウンタを選択。 ・バイトサイズカウンタ,TX_FSTA でセット,バイトデ
ータのサイズN=8。 (DMA初期設定) (送信許可) ・データサイズ8ビット,送信許可(TE=1)。 以上までが、ステップに相当する。
【0182】次に、CPU12は、ステップにおいて
送信バッファ32に送信先デバイスのアドレス及びR/
Wを書込む。すると、条件(UIN2&notTBEMPT )が
成立し、TX_FSTA 及びTX_BSTA が発生し、シリアル通信
装置11はアドレス及びR/Wを送信する(ステップ
)。
【0183】8ビットデータを送信するとTX_BEND 及び
TX_FEND が発生し、シリアル通信装置11はCPU12
に対して送信終了割込みを発生させる。すると、CPU
12は、データ送信用の設定を行なう(ステップ)。
即ち、一旦送信を禁止(TE=0)してから送信データ
サイズを設定し、データ制御信号CEを出力(セット)
するためレジスタに書込みを行なう。すると、シリアル
通信装置11は、UOUT1をロウレベルからハイレベ
ルに遷移させてデータ制御信号CEを出力する(ステッ
プ)。
【0184】続いて、CPU12はDMAC14のカウ
ンタをセットして送信を許可する(TE=1,ステップ
)。すると、シリアル通信装置11によりバイトデー
タの送信が行われる(ステップ,)。バイトデータ
送信が終了すると(ステップ,「YES」)CPU1
2に対して送信終了割込みを発生させ、CPU12は、
送信を禁止(TE=0)してから、データ制御信号CE
の出力を停止(リセット)するためレジスタに書込みを
行なう(ステップ)。すると、シリアル通信装置11
は、UOUT1をハイレベルからロウレベルに遷移させ
てデータ制御信号CEの出力を停止する(ステップ“1
0”)。
【0185】<受信処理>図56は受信処理のフローチ
ャート、図57は同タイミングチャートを示す。ステッ
プでは、CPU12は以下の設定を行なう。 (送信初期化):基本的に送信処理と同様。 (汎用入力) ・汎用入力1,2(UIN1,2)をS/W設定。ハイ
レベル検出。夫々“1”をセット。 ・汎用入力3(UIN3)を外部入力設定。ロウレベル
検出。 (汎用出力):送信処理と同様。 (受信制御) ・RX_FSTA にREを選択。 ・RX_BSTA に汎用入力1(UIN1)を選択。 ・RX_FEND にデータサイズカウンタを選択。受信データ
サイズは任意。 ・バイトサイズカウンタ,RX_BSTA でセット,バイトデ
ータのサイズN=8。
【0186】(送信制御) ・TX_FSTA にTEを選択。 ・TX_BSTA に汎用入力2(UIN2)を選択。 ・TX_FEND にデータサイズカウンタを選択。 ・バイトサイズカウンタ,TX_FSTA でセット,バイトデ
ータのサイズN=8。 (DMA初期設定) 以上までが、ステップに相当する。
【0187】次に、シリアル通信装置11は、UIN3
において接続先デバイスからの割り込み信号INTを検
出するまで待機し(ステップ)、割り込み信号INT
を検出すると(「YES」)CPU12に対して割込み
INP3_INTを発生させる。以降のステップ〜“11”は、
<送信処理>におけるステップ〜“10”と基本的に同
様である。但し、ステップにおいて受信するのは、接
続先デバイスが送信したデータである。
【0188】以上のように第8実施例によれば、シリア
ル通信装置11を、CCBプロトコルにも対応させるこ
とができる。そして、シリアル通信装置11の、送信側
のトリガ信号発生手段たる出力回路63,66,67の
トリガ信号発生条件として、通信制御信号の遷移状態を
カウントするカウンタより出力されるカウンタマッチ信
号,送信データのサイズをカウントするカウンタより出
力されるカウンタマッチ信号,外部より付与される外部
トリガ信号を、適宜組み合わせて選択するように構成し
た。
【0189】また、受信側のトリガ信号発生手段たる出
力回路57,60,61におけるトリガ信号発生条件と
して、通信制御信号の遷移状態をカウントするカウンタ
より出力されるカウンタマッチ信号,受信データのサイ
ズをカウントするカウンタより出力されるカウンタマッ
チ信号,受信データのパターンが特定データパターンに
一致した場合にコンパレータより出力されるパターンマ
ッチ信号,外部より付与される外部トリガ信号の各条件
を適宜組み合わせて選択するように構成した。
【0190】従って、シリアル通信の様々なプロトコル
に対応して、適切なタイミングでトリガ信号を発生させ
ることができる。そして、外部トリガ信号としては、C
PU12がシリアル通信装置11の内部レジスタに書込
みを行うことで発生させるトリガ信号と、外部より汎用
入力UIN1〜3に与えられる通信制御信号の遷移状態
に基づいて発生されるトリガ信号とを選択可能に構成し
たので、各プロトコルに応じて、CPU12のプログラ
ム動作や、汎用入力UIN1〜3に与えられる通信制御
信号の遷移状態などのタイミングでトリガ信号を発生さ
せるように選択することができ、より柔軟にプロトコル
対応を行うことが可能となる。
【0191】本発明は上記し且つ図面に記載した実施例
にのみ限定されるものではなく、次のような変形または
拡張が可能である。接続先デバイスは、カーオーディオ
装置102に限ることなく、シリアル通信を行うもので
あれば何でもよい。以上の第1〜第8実施例では、トリ
ガ信号の発生条件について選択しなかった要因がある
が、第1〜第8実施例において示したプロトコルの範囲
で対応することを考えればそれらは必ずしも必要ではな
い。また、第1〜第8実施例において示したプロトコル
について全て対応する必要がない場合には、不要な要因
は適宜削除すれば良い。更に、第1〜第8実施例では示
さなかったその他のプロトコルについて、選択しなかっ
た要因を用いることで対応することが想定できる。
【0192】受信ステートマシンにおける“エラー”ス
テートは、エラー処理が必要なプロトコルについてのみ
設ければ良い。また、フラグデータやスタート/ストッ
プビットの挿入,通信データ中のビット挿入及び削除,
パリティの付加などの機能も、対応するプロトコル範囲
に応じて選択的に設ければ良い。例えばスタートビット
だけを挿入するようにしても良い。データ転送装置は必
要に応じて設ければ良く、データ転送装置を設けない場
合は、送信バッファエンプティ,受信バッファフルが発
生する毎にホストに対して割込みを発生させ、送信デー
タの書込み,受信データの引上げをホストに要請すれば
良い。ホストは、CPU12に限ることなく、その他D
SPなどの汎用演算処理装置であれば良い。
【図面の簡単な説明】
【図1】本発明の第1実施例であり、マルチプロトコル
型シリアル通信装置の全体構成を概略的に示す機能ブロ
ック図
【図2】シリアル通信装置で取り扱われるデータ列及び
トリガ信号の定義を示すチャート
【図3】受信時における各種クロック信号の定義を示す
タイミングチャート
【図4】受信バッファを中心とする詳細な構成を示す図
【図5】(a)は受信側のパターンマッチ回路の構成を
示す図、(b)はパターンマッチ回路に対してイネーブ
ル信号を出力する構成を示す図
【図6】カウンタマッチ検出回路の構成を示す図
【図7】受信ステートマシンの状態遷移図
【図8】受信側のフレームスタート信号の出力回路の構
成を示す図
【図9】受信側のフレームエンド信号の出力回路の構成
を示す図
【図10】受信側のバイトスタート信号の出力回路の構
成を示す図
【図11】送信バッファを中心とする詳細な構成を示す
【図12】送信側のフレームスタート信号の出力回路の
構成を示す図
【図13】送信側のフレームエンド信号の出力回路の構
成を示す図
【図14】送信側のバイトスタート信号の出力回路の構
成を示す図
【図15】汎用的に入力される信号を内部制御に使用す
るための構成を概略的に示す図
【図16】内部で汎用化したトリガ信号等に基づいて、
シリアル通信装置より外部に出力される信号を各プロト
コルに応じて生成するための構成を概略的に示す図
【図17】汎用出力信号の出力例を示すタイミングチャ
ート
【図18】シリアル通信装置を、TAB2プロトコルに
適用した場合のシステム構成を示す図
【図19】CPUがカーオーディオ装置に対してデータ
を送信する場合のフローチャート
【図20】TAB2の送信タイミングチャート
【図21】CPUがカーオーディオ装置よりデータを受
信する場合のフローチャート
【図22】TAB2の受信タイミングチャート
【図23】本発明の第2実施例であり、シリアル通信装
置をRS−232Cモジュールとして機能させる場合に
おける入出力信号の割当状態を示す図
【図24】CPUがデータを送信する場合のフローチャ
ート
【図25】送信タイミングチャート
【図26】送信ステートマシンのより詳細な状態遷移図
【図27】CPUがデータを受信する場合のフローチャ
ート
【図28】受信タイミングチャート
【図29】本発明の第3実施例であり、シリアル通信装
置をHDLCモジュールとして機能させる場合における
入出力信号の割当状態を示す図
【図30】図24相当図
【図31】図25相当図
【図32】図26相当図
【図33】図27相当図
【図34】本発明の第4実施例であり、シリアル通信装
置をIICモジュールとして機能させる場合における入
出力信号の割当状態を示す図
【図35】図24相当図
【図36】図25相当図
【図37】図26相当図
【図38】図27相当図
【図39】本発明の第5実施例であり、シリアル通信装
置をIISモジュールとして機能させる場合における入
出力信号の割当状態を示す図,(a)はクロックマスタ
の場合、(b)はクロックスレーブの場合
【図40】図24相当図
【図41】図25相当図
【図42】図26相当図
【図43】本発明の第6実施例であり、シリアル通信装
置をHIT64モジュールとして機能させる場合におけ
る入出力信号の割当状態を示す図
【図44】図24相当図
【図45】送信処理のシーケンス図
【図46】図26相当図
【図47】受信処理のシーケンス図
【図48】本発明の第7実施例であり、シリアル通信装
置をCHIPモジュールとして機能させる場合における
入出力信号の割当状態を示す図
【図49】図24相当図
【図50】図25相当図
【図51】図26相当図
【図52】図27相当図
【図53】本発明の第8実施例であり、シリアル通信装
置をCCBモジュールとして機能させる場合における入
出力信号の割当状態を示す図
【図54】図24相当図
【図55】図25相当図
【図56】図26相当
【図57】図27相当図
【図58】従来技術を示す図18相当図
【符号の説明】
11はマルチプロトコル型シリアル通信装置、12はC
PU(ホスト)、14はDMAコントローラ(データ転
送装置)、23は受信バッファ(内部バッファ)、30
は受信ステートマシン、32は送信バッファ(内部バッ
ファ)、38は受信ステートマシン、57は出力回路
(トリガ信号発生手段)、58はマルチプレクサ(トリ
ガ条件選択手段)、60,61は出力回路(トリガ信号
発生手段,受信トリガ条件選択手段)、62はビット挿
入部(ビット挿入手段)、63は出力回路(トリガ信号
発生手段)、64はマルチプレクサ(トリガ条件選択手
段)、66は出力回路(トリガ信号発生手段,トリガ条
件選択手段)、67は出力回路(トリガ信号発生手
段)、68はマルチプレクサ(トリガ条件選択手段)、
100はメモリ、101はECU(マイクロコンピュー
タ)、102はカーオーディオ装置(接続先デバイス)
を示す。

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 ホストが接続先デバイスとの間でシリア
    ル通信を行う場合に、そのシリアル通信を複数種類のプ
    ロトコルに対応して実行可能に構成されるマルチプロト
    コル型シリアル通信装置であって、 ホストによる設定と外部より与えられる通信制御信号の
    状態とに基づき、各プロトコルに対応したタイミング
    で、 データフレームの開始に対応して出力されるフレームス
    タート信号,データバイトの開始に対応して出力される
    バイトスタート信号,データバイトの終了に対応して出
    力されるバイトエンド信号,データフレームの終了に対
    応して出力されるフレームエンド信号,を状態遷移のト
    リガ信号として発生する送信及び受信トリガ信号発生手
    段と、 前記フレームスタート信号の発生に応じて、フレームス
    タート待ちステートからバイトスタート待ちステートに
    遷移し、 前記バイトスタート信号の発生に応じて、バイトスター
    ト待ちステートから通信中ステートに遷移することでバ
    イト単位のデータ通信を行わせ、 前記バイトエンド信号の発生に応じて、通信中ステート
    からバイト通信終了ステートに遷移し、 バイト通信終了ステートにおいて、前記フレームエンド
    信号が発生しない場合はバイトスタート待ちステートに
    遷移し、前記フレームエンド信号が発生した場合はフレ
    ーム通信終了ステートに遷移するように構成され、各プ
    ロトコル毎に、各ステートに応じて必要な通信制御信号
    を外部に対して出力させるための送信ステートマシン及
    び受信ステートマシンとを備えたことを特徴とするマル
    チプロトコル型シリアル通信装置。
  2. 【請求項2】 前記トリガ信号発生手段は、少なくとも
    一部のトリガ信号に関する発生条件を選択するためのト
    リガ条件選択手段を備えており、 前記トリガ条件選択手段は、発生条件として、外部より
    付与される外部トリガ信号を選択可能に構成されている
    ことを特徴とする請求項1記載のマルチプロトコル型シ
    リアル通信装置。
  3. 【請求項3】 前記外部トリガ信号は、前記ホストが内
    部レジスタに書込みを行うことで発生されるように構成
    されていることを特徴とする請求項2記載のマルチプロ
    トコル型シリアル通信装置。
  4. 【請求項4】 前記トリガ条件選択手段は、前記外部ト
    リガ信号として、前記ホストが内部レジスタに書込みを
    行うことで発生させるトリガ信号と、 外部より入力ポートに与えられる通信制御信号の遷移状
    態に基づいて発生されるトリガ信号とを選択可能に構成
    されていることを特徴とする請求項3記載のマルチプロ
    トコル型シリアル通信装置。
  5. 【請求項5】 前記トリガ条件選択手段は、発生条件と
    して、通信制御信号の遷移状態をカウントするカウンタ
    により、そのカウント値が前記ホストによっって設定さ
    れたカウント値と一致した場合に出力されるカウンタマ
    ッチ信号を選択可能に構成されていることを特徴とする
    請求項2乃至4の何れかに記載のマルチプロトコル型シ
    リアル通信装置。
  6. 【請求項6】 前記トリガ条件選択手段は、発生条件と
    して、通信データのサイズをカウントするカウンタによ
    り、そのカウント値が前記ホストによって設定されたカ
    ウント値と一致した場合に出力されるカウンタマッチ信
    号を選択可能に構成されていることを特徴とする請求項
    2乃至5の何れかに記載のマルチプロトコル型シリアル
    通信装置。
  7. 【請求項7】 前記トリガ条件選択手段は、受信側のト
    リガ信号の発生条件として、受信データのパターンが前
    記ホストより設定された特定のデータパターンに一致し
    た場合にコンパレータより出力されるパターンマッチ信
    号を選択可能に構成されていることを特徴とする請求項
    2乃至6の何れかに記載のマルチプロトコル型シリアル
    通信装置。
  8. 【請求項8】 送信データ列にビットデータの挿入を行
    うためのビット挿入手段を備えたことを特徴とする請求
    項1乃至7の何れかに記載のマルチプロトコル型シリア
    ル通信装置。
  9. 【請求項9】 前記送信ステートマシンは、フレームス
    タート待ちステートとバイトスタート待ちステートとの
    間において、内部レジスタの設定に応じて送信データに
    フラグを付加するためのフラグデータ挿入ステートに遷
    移可能に構成されていることを特徴とする請求項8記載
    のマルチプロトコル型シリアル通信装置。
  10. 【請求項10】 前記送信ステートマシンは、バイトス
    タート待ちステートと通信中ステートとの間において、
    内部レジスタの設定に応じて送信データにスタートビッ
    トを挿入するためのスタートビット挿入ステートに遷移
    可能に構成されていると共に、通信中ステートとバイト
    通信終了ステートとの間に、内部レジスタの設定に応じ
    て送信データにストップビットを挿入するためのストッ
    プビット挿入ステートに遷移可能に構成されていること
    を特徴とする請求項8または9記載のマルチプロトコル
    型シリアル通信装置。
  11. 【請求項11】 前記送信ステートマシンは、通信中ス
    テートから、内部レジスタの設定に応じて送信データに
    ビットデータを挿入するためのビット挿入ステートに遷
    移可能に構成されていることを特徴とする請求項8乃至
    10の何れかに記載のマルチプロトコル型シリアル通信
    装置。
  12. 【請求項12】 前記受信ステートマシンは、通信中ス
    テートから、内部レジスタの設定に応じて前記ビット挿
    入ステートにより受信データに挿入されたビットデータ
    を削除するためのビット削除ステートに遷移可能に構成
    されていることを特徴とする請求項11記載のマルチプ
    ロトコル型シリアル通信装置。
  13. 【請求項13】 前記送信ステートマシンは、通信中ス
    テートとバイト通信終了ステートとの間に、内部レジス
    タの設定に応じて送信データにパリティビットを挿入す
    るためのパリティビット挿入ステートに遷移可能に構成
    されていることを特徴とする請求項8乃至12の何れか
    に記載のマルチプロトコル型シリアル通信装置。
  14. 【請求項14】 前記ホストが、外部のメモリと内部の
    送信バッファ,受信バッファとの間でDMA転送を行わ
    せるために設けられる、データ転送装置との間で転送制
    御を行うためのインターフェイス回路を備えていること
    を特徴とする請求項1乃至13の何れかに記載のマルチ
    プロトコル型シリアル通信装置。
  15. 【請求項15】 請求項14記載のマルチプロトコル型
    シリアル通信装置と、 ホストとして機能する汎用演算処理装置と、 この汎用演算処理装置がデータの書込み及び読み出しを
    行うためのメモリと、 このメモリと前記マルチプロトコル型シリアル通信装置
    の内部バッファとの間でDMA転送を行うデータ転送装
    置とを備えて構成されることを特徴とするマイクロコン
    ピュータ。
JP2001124248A 2001-04-23 2001-04-23 マルチプロトコル型シリアル通信装置及びマイクロコンピュータ Pending JP2002318783A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001124248A JP2002318783A (ja) 2001-04-23 2001-04-23 マルチプロトコル型シリアル通信装置及びマイクロコンピュータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001124248A JP2002318783A (ja) 2001-04-23 2001-04-23 マルチプロトコル型シリアル通信装置及びマイクロコンピュータ

Publications (1)

Publication Number Publication Date
JP2002318783A true JP2002318783A (ja) 2002-10-31

Family

ID=18973665

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001124248A Pending JP2002318783A (ja) 2001-04-23 2001-04-23 マルチプロトコル型シリアル通信装置及びマイクロコンピュータ

Country Status (1)

Country Link
JP (1) JP2002318783A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100647370B1 (ko) 2004-04-20 2006-11-23 주식회사 하이닉스반도체 멀티 프로토콜 시리얼 인터페이스 시스템
JP2008186130A (ja) * 2007-01-29 2008-08-14 Matsushita Electric Ind Co Ltd I2cバス制御回路
EP1987431A2 (en) * 2006-02-09 2008-11-05 Texas Instruments Incorporated System and method for sharing a communications link between multiple communications protocols
KR100881191B1 (ko) 2007-03-27 2009-02-05 삼성전자주식회사 멀티 프로토콜 씨리얼 인터페이스 장치 및 그에 따른soc 장치
KR100922969B1 (ko) 2003-12-24 2009-10-22 주식회사 현대오토넷 차량의 통신 프로토콜 설계 방법
JP2011095884A (ja) * 2009-10-28 2011-05-12 Nec Corp 情報処理装置におけるハードウェアフロー制御方法
JP2020523236A (ja) * 2017-06-14 2020-08-06 グロー ソリューションズ テック エルエルシー 産業用カートとの軌道を介する通信のためのシステムおよび方法
CN117112480A (zh) * 2023-10-24 2023-11-24 上海泰矽微电子有限公司 一种两线通信方法、装置及芯片

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100922969B1 (ko) 2003-12-24 2009-10-22 주식회사 현대오토넷 차량의 통신 프로토콜 설계 방법
US7555589B2 (en) 2004-04-20 2009-06-30 Hynix Semiconductor Inc. Multi-protocol serial interface system
KR100647370B1 (ko) 2004-04-20 2006-11-23 주식회사 하이닉스반도체 멀티 프로토콜 시리얼 인터페이스 시스템
US7865651B2 (en) 2004-04-20 2011-01-04 Hynix Semiconductor Inc. Multi-protocol serial interface system
US10101391B2 (en) 2005-03-21 2018-10-16 Texas Instruments Incorporated Adapter circuitry with link and system interfaces to core circuitry
US8136003B2 (en) 2005-03-21 2012-03-13 Texas Instruments Incorporated JTAG debug test system adapter with three sets of leads
US9952285B2 (en) 2005-03-21 2018-04-24 Texas Instruments Incorporated Adapter circuitry with global bypass register, legacy test data, multiplexer
EP1987431A2 (en) * 2006-02-09 2008-11-05 Texas Instruments Incorporated System and method for sharing a communications link between multiple communications protocols
EP1987431A4 (en) * 2006-02-09 2011-03-30 Texas Instruments Inc SYSTEM AND METHOD FOR SHARING A COMMUNICATION LINK BETWEEN MULTIPLE COMMUNICATION PROTOCOLS
JP2008186130A (ja) * 2007-01-29 2008-08-14 Matsushita Electric Ind Co Ltd I2cバス制御回路
KR100881191B1 (ko) 2007-03-27 2009-02-05 삼성전자주식회사 멀티 프로토콜 씨리얼 인터페이스 장치 및 그에 따른soc 장치
US7979611B2 (en) 2007-03-27 2011-07-12 Samsung Electronics Co., Ltd. Multi-protocol serial interface apparatus and system-on-chip apparatus including the same
JP2011095884A (ja) * 2009-10-28 2011-05-12 Nec Corp 情報処理装置におけるハードウェアフロー制御方法
JP2020523236A (ja) * 2017-06-14 2020-08-06 グロー ソリューションズ テック エルエルシー 産業用カートとの軌道を介する通信のためのシステムおよび方法
CN117112480A (zh) * 2023-10-24 2023-11-24 上海泰矽微电子有限公司 一种两线通信方法、装置及芯片
CN117112480B (zh) * 2023-10-24 2024-02-06 上海泰矽微电子有限公司 一种两线通信方法、装置及芯片

Similar Documents

Publication Publication Date Title
US5828865A (en) Dual mode bus bridge for interfacing a host bus and a personal computer interface bus
CN104811273B (zh) 一种高速单总线通信的实现方法
US7821919B2 (en) Data processing apparatus and data processing method
US20180095920A1 (en) Semiconductor device, method of operating semiconductor device and system incorporating same
EP0380856A2 (en) Method and apparatus for interfacing a system control unit for a multi-processor
JPH02227766A (ja) デジタル・コンピユータのデータ転送装置
WO2008065045A2 (en) Dmac to handle transfers of unknown lengths data
JP2002318783A (ja) マルチプロトコル型シリアル通信装置及びマイクロコンピュータ
JP2009502072A (ja) FlexRay通信モジュール及びFlexRay通信制御装置、並びにFlexRay通信接続とFlexRay加入者装置との間でメッセージを伝送する方法
JP2004518263A (ja) 照明システム用の通信ポート制御モジュール
US6889265B2 (en) Apparatus and method to allow and synchronize schedule changes in a USB enhanced host controller
JP4012907B2 (ja) 非同期伝送方法及びその回路
JP4737049B2 (ja) 通信システム及び電子制御装置
CN116192624A (zh) 通信接口的配置方法和通信接口
EP3671720B1 (en) Real-time on-chip data transfer system
JPS63228856A (ja) 通信制御装置
CN111832047B (zh) 一种spi数据传输方法及系统
CN111832049B (zh) 一种基于spi的数据传输方法及系统
JP2001134525A (ja) Id発生装置
JPS63228855A (ja) 通信制御装置
JPH03266011A (ja) フォールト・トレラント・システム及びその冗長系間の同期方法並びに多重化クロツク発振器
US20050083836A1 (en) Flow control for interfaces providing retransmission
JP3401729B2 (ja) スプリットバス制御回路
CN117806713A (zh) 支持多条spi指令拼接为完整spi指令的从设备
KR900007548Y1 (ko) 셀프 클럭레이트 에어보정 및 회복회로