(57)【要約】【課題】ＣＰＵ等の負荷を軽減することができ、かつ緊急処理に対応可能なＵＡＲＴを提供する。【解決手段】開始ビット検出部１、タイミング制御部２、シフトレジスタ３及び終了ビット検出部４による直列・並列変換手段で、調歩同期方式の入力信号ＩＮを文字単位の並列データに変換し、この並列データをＦＩＦＯバッファ６に格納すると共に、特殊コード検出器８で予め設定した特殊符号であるか否かを判定する。特殊符号の場合、検出信号ＤＥＴに基づいて、割り込み制御部７ＡからＣＰＵへ割り込み要求信号ＩＮＴが出力される。ＣＰＵは、識別レジスタ７ａを参照し、メッセージの区切りであれば読み出し信号ＲＤでＦＩＦＯバッファ６の並列データを読み出す。また、緊急処理の要求であれば直ちに緊急処理を行うことができる。【選択図】図１
2008078974.tif 000002
【特許請求の範囲】
【請求項１】
調歩同期方式の入力信号を並列データに変換してデータ処理装置へ出力するための非同期送受信回路であって、
前記入力信号を文字単位の並列データに変換する直列・並列変換手段と、
前記直列・並列変換手段から出力される並列データを格納し、前記データ処理装置からの読み出し要求に応じて読み出して出力する記憶手段と、
前記直列・並列変換手段から出力される並列データが予め設定された特定の符号であるときに検出信号を出力する特殊コード検出手段と、
前記検出信号に応じて前記データ処理装置へ割り込み要求信号を出力する割り込み制御手段とを、
備えたことを特徴とする非同期送受信回路。
【請求項２】
前記特殊コード検出手段は予め設定された複数の特定の符号を検出できるように構成すると共に、前記割り込み制御手段は前記データ処理装置からの要求に応じて割り込み要因を出力するように構成したことを特徴とする請求項１記載の非同期送受信回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、調歩同期方式で文字単位にデータを送受信するための非同期送受信回路(Universal  Asynchronous  Receiver-Transmitter、以下、「ＵＡＲＴ」という)、特にその受信回路に関するものである。
【背景技術】
【０００２】
図２は、従来のＵＡＲＴの説明図で、同図（ａ）は受信部の構成図、及び同図（ｂ）はシリアルデータの構成とタイミングを示す図である。
【０００３】
ＵＡＲＴで送受信されるシリアルデータは、一般的に図２（ｂ）に示すように、１ビット目の論理値“０”に対応するスタートビットＳＴ、２〜８ビット目のビットｂ０からビットｂ６までの７ビットの文字コード、９ビット目の誤りチェック用のパリティビットＰ、及び１０ビット目の論理値“１”に対応するストップビットＳＰの合計１０ビットで構成されている。
【０００４】
このような調歩同期方式で文字データを受信するＵＡＲＴの受信部は、図２（ａ）に示すように、開始ビット検出部１、タイミング制御部２、シフトレジスタ３、終了ビット検出部４、パリティチェック部５、ＦＩＦＯ(First-In  First-Out)バッファ６、及び割り込み制御部７で構成されている。
【０００５】
開始ビット検出部１は、受信クロック信号ＲＣＫに従って入力信号ＩＮを監視し、スタートビットＳＴを検出したときに開始パルスＳＴＡを出力するものである。タイミング制御部２は、開始ビット検出部１から開始パルスＳＴＡが与えられた後、受信クロック信号ＲＣＫに従ってシフトレジスタ３に対するサンプリングパルスＳＰＬと、終了ビット検出部４に対する終了パルスＳＴＰを順次出力するものである。
【０００６】
シフトレジスタ３は、８個のフリップフロップ(以下、「ＦＦ」という)を縦続接続し、タイミング制御部２から与えられるサンプリングパルスＳＰＬを共通のクロック信号として、入力信号ＩＮを順次シフトして保持するものである。シフトレジスタ３の各ＦＦに保持された入力信号ＩＮは、並列データとして出力されるようになっている。終了ビット検出部４は、タイミング制御部２から終了パルスＳＴＰが与えられたときに、入力信号ＩＮが正常なストップビットＳＰ（即ち、“１”）であるか否かを判定するものである。
【０００７】
終了ビット検出部４は、終了パルスＳＴＰのタイミングでストップビットＳＰが検出されれば、それまでに受信したデータは有効と判定し、パリティチェック部５へ有効信号ＶＡＬを出力するようになっている。もしも、有効なストップビットＳＰが検出されなければ、終了ビット検出部４は、それまでに受信したデータは無効と判定し、割り込み制御部７に対して無効信号ＩＮＶを出力するようになっている。
【０００８】
パリティチェック部５は、終了ビット検出部４から有効信号ＶＡＬが与えられたときに、シフトレジスタ３から出力されるパリティビットＰを含む８ビットの並列データの誤りチェックを行うものである。即ち、パリティチェック部５は、誤りがないと判定したときに書き込み信号ＷＲを出力し、誤りが有ると判定したときには誤り信号ＥＲＲを出力するものである。書き込み信号ＷＲは、ＦＩＦＯバッファ６と割り込み制御部７に与えられ、誤り信号ＥＲＲは、割り込み制御部７に与えられるようになっている。
【０００９】
ＦＩＦＯバッファ６は、パリティチェック部５から書き込み信号ＷＲが与えられたときに、シフトレジスタ３から出力されている８ビットの並列データのうち、パリティビットＰを除く７ビットのデータを１つの文字データとして格納するものである。また、ＦＩＦＯバッファ６は、外部のＣＰＵ（中央処理ユニット）等から読み出し信号ＲＤが与えられたときには、格納されている文字データの内で一番古い文字データから順番に読み出し、読み出しデータＲＤＴとして出力するようになっている。更に、ＦＩＦＯバッファ６は、読み出しが遅れて新たな文字データの格納領域が無くなったときに、割り込み制御部７に対して満杯信号ＦＵＬを出力するようになっている。
【００１０】
割り込み制御部７は、終了ビット検出部４から無効信号ＩＮＶ、パリティチェック部５から誤り信号ＥＲＲと書き込み信号ＷＲ、及びＦＩＦＯバッファ６から満杯信号ＦＵＬを与えられたときに、ＣＰＵ等へ割り込み要求信号ＩＮＴを出力すると共に、その割り込み要因をＣＰＵ等から参照可能な識別レジスタ（ＲＥＧ）７ａにセットするものである。
【００１１】
このＵＡＲＴでは、開始ビット検出部１によって入力信号ＩＮが監視され、有効なスタートビットＳＴが検出されると、タイミング制御部２からシフトレジスタ３に対するサンプリングパルスＳＰＬが出力される。これにより、入力信号ＩＮは、シフトレジスタ３に順次シフトして保持され、１文字分の並列データに変換される。ストップビットＳＰのタイミングになると、終了ビット検出部４によって正しくストップビットＳＰが検出されたか否かが判定される。
【００１２】
ストップビットＳＰが検出されれば、終了ビット検出部４からパリティチェック部５へ有効信号ＶＡＬが出力され、このパリティチェック部５によってシフトレジスタ３で並列データに変換された１文字分のデータのパリティチェックが行われる。パリティチェックの結果、正常であると判定されると、パリティチェック部５からＦＩＦＯバッファ６に書き込み信号ＷＲが出力され、正常であると判定された１文字分の文字データが、このＦＩＦＯバッファ６に格納される。
【００１３】
書き込み信号ＷＲは、割り込み制御部７へも与えられ、この割り込み制御部７からＣＰＵ等へ割り込み要求信号ＩＮＴが出力される。これにより、ＣＰＵ等は、ＵＡＲＴに対して読み出し信号ＲＤを与え、ＦＩＦＯバッファ６から正常に受信された文字データを１文字単位で読み出すことができる。
【００１４】
また、正常なストップビットＳＰが検出されなかったときには、終了ビット検出部４から割り込み制御部７に無効信号ＩＮＶが出力され、パリティチェックで誤りが検出されたときには、パリティチェック部５から割り込み制御部７に誤り信号ＥＲＲが出力される。これらの場合も、割り込み制御部７からＣＰＵ等へ割り込み要求信号ＩＮＴが出力されるので、ＣＰＵ等は識別レジスタ７ａを参照することにより、ＵＡＲＴの状況を判断することができる。
【００１５】
【特許文献１】特開平１１−５５２３１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら、前記ＵＡＲＴでは、次のような課題があった。
１文字の文字データを受信する毎に、ＣＰＵ等へ割り込み要求信号ＩＮＴを出力するようにしているため、ＣＰＵ等では１文字受信毎にＵＡＲＴからの割り込み要求信号を解析して、ＵＡＲＴから受信した文字データを読み出す必要がある。このため、その処理の負荷が大きくなっていた。また、ＣＰＵ等での緊急処理のために特殊コードを割り当てているシステムの場合、通常の文字データと特殊コードの区別が無いため、緊急処理が遅れてしまうというおそれがあった。
【００１７】
本発明は、ＣＰＵ等の負荷を軽減することができ、かつ緊急処理に対応可能なＵＡＲＴを提供すること目的としている。
【課題を解決するための手段】
【００１８】
本発明の非同期送受信回路は、次のような手段を備えたことを特徴としている。
即ち、この非同期送受信回路は、調歩同期方式の入力信号を文字単位の並列データに変換する直列・並列変換手段と、前記直列・並列変換手段から出力される並列データを格納し、前記データ処理装置からの読み出し要求に応じて読み出して出力する記憶手段と、前記直列・並列変換手段から出力される並列データが予め設定された特定の符号であるときに検出信号を出力する特殊コード検出手段と、前記検出信号に応じて前記データ処理装置へ割り込み要求信号を出力する割り込み制御手段を備えている。
【発明の効果】
【００１９】
本発明では、直列・並列変換手段で生成された並列データが予め設定された特定の符号のときに検出信号を出力する特殊コード検出手段と、この検出信号に応じてデータ処理装置へ割り込み要求信号を出力する割り込み制御手段を備えると共に、この並列データを格納してデータ処理装置からの読み出し要求に応じて読み出して出力する記憶手段を備えている。従って、例えば、メッセージの区切り符号を検出してデータ処理装置に割り込み要求を出力することにより、１文字毎に割り込み要求を行う場合に比べて、データ処理装置側の負荷を軽減することができる。また、緊急処理のために特殊コードを検出してデータ処理装置に割り込み要求を出力することにより、データ処理装置側では、直ちに緊急処理に対応することができるという効果がある。
【発明を実施するための最良の形態】
【００２０】
この発明の前記並びにその他の目的と新規な特徴は、次の好ましい実施例の説明を添付図面と照らし合わせて読むと、より完全に明らかになるであろう。但し、図面は、もっぱら解説のためのものであって、この発明の範囲を限定するものではない。
【実施例１】
【００２１】
図１は、本発明の実施例を示すＵＡＲＴの受信部の構成図であり、図２中の要素と共通の要素には共通の符号が付されている。
【００２２】
このＵＡＲＴは、図２と同様の開始ビット検出部１、タイミング制御部２、シフトレジスタ３、終了ビット検出部４、パリティチェック部５、及びＦＩＦＯバッファ６と、従来の割り込み制御部７とは機能が若干異なる及び割り込み制御部７Ａと、新たに設けた特殊コード検出部８とで構成されている。
【００２３】
開始ビット検出部１は、例えばデータ転送速度の１６倍の速度の受信クロック信号ＲＣＫに従って入力信号ＩＮを監視し、スタートビットＳＴを検出したときに開始パルスＳＴＡを出力するものである。即ち、開始ビット検出部１は、入力信号ＩＮが“１”から“０”に変化した後、１／２ビットに相当する時間（受信クロック信号ＲＣＫで８クロック分）まで、入力信号ＩＮが“０”であれば、有効なスタートビットＳＴと判定して開始パルスＳＴＡを出力するようになっている。
【００２４】
タイミング制御部２は、開始ビット検出部１から開始パルスＳＴＡが与えられた後、受信クロック信号ＲＣＫに従い、シフトレジスタ３に対するサンプリングパルスＳＰＬと、終了ビット検出部４に対する終了パルスＳＴＰを順次出力するものである。即ち、タイミング制御部２は、開始パルスＳＴＡが与えられると、その後、１ビットに相当する時間（受信クロック信号ＲＣＫで１６クロック分）毎に８個のサンプリングパルスＳＰＬと１個の終了パルスＳＴＰを順次出力するようになっている。
【００２５】
シフトレジスタ３は８個のＦＦを縦続接続したもので、タイミング制御部２から与えられるサンプリングパルスＳＰＬを共通のクロック信号として、入力信号ＩＮを順次シフトして保持するものである。シフトレジスタ３の各ＦＦに保持された入力信号ＩＮは、並列データに変換されて出力されるようになっている。
【００２６】
終了ビット検出部４は、タイミング制御部２から終了パルスＳＴＰが与えられたときに、入力信号ＩＮが正常なストップビットＳＰ（即ち、“１”）であるか否かを判定するものである。終了ビット検出部４は、終了パルスＳＴＰのタイミングでストップビットＳＰが検出されれば、それまでに受信したデータは有効と判定し、パリティチェック部５へ有効信号ＶＡＬを出力するようになっている。もしも、有効なストップビットＳＰが検出されなければ、終了ビット検出部４は、それまでに受信したデータは無効と判定し、割り込み制御部７Ａに対して無効信号ＩＮＶを出力するようになっている。
【００２７】
パリティチェック部５は、終了ビット検出部４から有効信号ＶＡＬが与えられたときに、シフトレジスタ３から出力されるパリティビットＰを含む８ビットの並列データの誤りチェックを行うものである。パリティチェック部５は、誤りがないと判定したときに書き込み信号ＷＲを出力し、誤りが有ると判定したときには誤り信号ＥＲＲを出力するものである。書き込み信号ＷＲは、ＦＩＦＯバッファ６と特殊コード検出部８に与えられ、誤り信号ＥＲＲは、割り込み制御部７Ａに与えられるようになっている。
【００２８】
ＦＩＦＯバッファ６は、パリティチェック部５から書き込み信号ＷＲが与えられたときに、シフトレジスタ３から出力されている８ビットの並列データのうち、パリティビットＰを除く７ビットのデータを１つの文字データとして格納するものである。また、ＦＩＦＯバッファ６は、外部のデータ処理装置であるＣＰＵ等から読み出し信号ＲＤが与えられたときには、格納されている文字データの内で一番古い文字データから順番に読み出し、読み出しデータＲＤＴとして出力するようになっている。更に、ＦＩＦＯバッファ６は、読み出しが遅れて新たな文字データの格納領域が無くなったときに、割り込み制御部７Ａに対して満杯信号ＦＵＬを出力するようになっている。
【００２９】
特殊コード検出部８は、パリティチェック部５から書き込み信号ＷＲが与えられたときに、シフトレジスタ３から出力されている８ビットの並列データのうち、パリティビットＰを除く７ビットのデータが、予め設定された特殊コードに一致しているか否かを検出するものである。特殊コードとしては、例えば、ＣＰＵ等での緊急処理を要求するための“Ｂｅｌｌ”符号（１６進表示で０７）や、メッセージの区切りを示す“］”符号（１６進表示で５Ｄ）等が有る。特殊コード検出部８は、文字データが特殊コードに一致していれば、検出信号ＤＥＴを割り込み制御部７Ａに出力するようになっている。
【００３０】
割り込み制御部７Ａは、終了ビット検出部４から無効信号ＩＮＶ、パリティチェック部５から誤り信号ＥＲＲ、ＦＩＦＯバッファ６から満杯信号ＦＵＬ、及び特殊コード検出部８から検出信号ＤＥＴを与えられたときに、ＣＰＵ等へ割り込み要求信号ＩＮＴを出力すると共に、その割り込み要因をＣＰＵ等から参照可能な識別レジスタ（ＲＥＧ）７ａにセットするものである。
【００３１】
次に動作を説明する。
このＵＡＲＴでは、開始ビット検出部１によって入力信号ＩＮが監視され、有効なスタートビットＳＴが検出されると、この開始ビット検出部１から開始パルスＳＴＡが出力される。開始パルスＳＴＡにより、タイミング制御部２からシフトレジスタ３に対するサンプリングパルスＳＰＬが所定のタイミングで順次出力される。これにより、入力信号ＩＮが、シフトレジスタ３に順次シフトして保持され、１文字分の並列データに変換される。ストップビットＳＰのタイミングになると、終了ビット検出部４によって正しくストップビットＳＰが検出されたか否かが判定される。
【００３２】
ストップビットＳＰが検出されれば、終了ビット検出部４からパリティチェック部５へ有効信号ＶＡＬが出力され、このパリティチェック部５によってシフトレジスタ３で並列データに変換された１文字分の文字データのパリティチェックが行われる。パリティチェックの結果、正常であると判定されると、パリティチェック部５からＦＩＦＯバッファ６と特殊コード検出部８に書き込み信号ＷＲが出力される。
【００３３】
ＦＩＦＯバッファ６では、書き込み信号ＷＲにより、正常であると判定された１文字分の文字データが格納される。
【００３４】
一方、特殊コード検出部８では、書き込み信号ＷＲにより、正常であると判定された１文字分の文字データが予め設定された特殊コードに一致しているか否かが判定される。そして、特殊コードに一致していると判定された場合には、特殊コード検出部８から割り込み制御部７Ａへ検出信号ＤＥＴが出力される。
【００３５】
検出信号ＤＥＴが与えられた割り込み制御部７Ａは、この検出信号ＤＥＴに対応して識別レジスタ７ａ内容をセットすると共に、ＣＰＵ等へ割り込み要求信号ＩＮＴを出力する。これにより、ＣＰＵ等は、ＵＡＲＴの識別レジスタ７ａを参照することにより、このＵＡＲＴの状況を判断することができる。また、ＣＰＵ等は、ＵＡＲＴに対して読み出し信号ＲＤを与え、ＦＩＦＯバッファ６から正常に受信された文字データを１文字単位で読み出すことができる。
【００３６】
なお、終了ビット検出部４で正常なストップビットＳＰが検出されなかったときには、割り込み制御部７Ａに無効信号ＩＮＶが出力され、パリティチェック部５でパリティエラーが検出されたときには、割り込み制御部７Ａに誤り信号ＥＲＲが出力される。また、ＦＩＦＯバッファ６が満杯のときは、割り込み制御部７Ａに満杯信号ＦＵＬが与えられる。これらの場合も、割り込み制御部７Ａでは、識別レジスタ７ａの内容をセットしてＣＰＵ等へ割り込み要求信号ＩＮＴを出力するので、ＣＰＵ等は識別レジスタ７ａを参照することにより、ＵＡＲＴの状況を判断することができる。
【００３７】
以上のように、この実施例のＵＡＲＴは、パリティチェック部５で１文字分の文字データが正常に受信されたと判定されたときに、更にこのデータが緊急処理やメッセージの区切りを示す特殊コードであるか否かを判定する特殊コード検出部８を設け、特殊コードと判定されたときにのみ検出信号ＤＥＴを割り込み制御部７Ａに出力するようにしている。これにより、１文字単位ではなく、１メッセージ単位でＣＰＵ等への割り込みが行われるので、ＣＰＵ等の負荷を軽減することができる。更に、緊急処理の要求を示す特殊コードの受信時にもＣＰＵ等へ割り込みが行われる。これにより、ＣＰＵ等は、割り込みが行われたときに、識別レジスタ７ａを参照して緊急処理の要求であることを認識し、直ちに対応することができるという利点がある。
【００３８】
なお、本発明は、上記実施例に限定されず、種々の変形が可能である。この変形例としては、例えば、次のようなものがある。
（ａ）  特殊コードは、“Ｂｅｌｌ”符号や“］”符号に限定されず、適用するシステムに応じて任意に変更することができる。
（ｂ）  特殊コード検出部８で検出する特殊コードは１種類に限定されない。複数の特殊コードを検出するように構成した場合は、検出された特殊コードの区分が識別できるように識別レジスタ７ａを構成しておけば良い。
（ｃ）  調歩同期方式の入力信号ＩＮを文字単位の並列データに変換する直列・並列変換手段は、本実施例で示したような、開始ビット検出部１、タイミング制御部２、シフトレジスタ３及び終了ビット検出部４による構成に限定するものではない。
【図面の簡単な説明】
【００３９】
【図１】本発明の実施例を示すＵＡＲＴの構成図である。
【図２】従来のＵＡＲＴの説明図である。
【符号の説明】
【００４０】
１    開始ビット検出部
２    タイミング制御部
３    シフトレジスタ
４    終了ビット検出部
５    パリティチェック部
６    ＦＩＦＯバッファ
７Ａ    割り込み制御部
７ａ    識別レジスタ
８    特殊コード検出部
【図１】
2008078974.tif 000003
【図２】
2008078974.tif 000004