(57)【特許請求の範囲】
【請求項１】
ダイヤルパルス波形の一周期に対応した値と、当該一周期中の波形の変化点の時間間隔に対応した値とを、一周期毎にダイレクト・メモリ・アクセス転送するＤＭＡ制御部と、
クロック数をカウントし、かつ、前記ＤＭＡ制御部がダイレクト・メモリ・アクセス転送するタイミングでリセットされるカウンタと、
前記カウンタのカウント値と、前記ダイレクト・メモリ・アクセス転送された一周期に対応した値および波形の変化点の時間間隔に対応した値とを比較し、前記カウント値がこれらそれぞれの値に一致した場合にデータマッチ信号を出力するデータ比較部と、
前記データ比較部からデータマッチ信号が出力された場合に割り込み信号を出力する割り込み出力制御部と、
前記割り込み信号に基づいて前記ダイヤルパルス波形を生成するダイヤルパルス生成手段とを備えたことを特徴とするダイヤルパルス生成回路。
【請求項２】
前記ＤＭＡ制御部は、指定された数のデータを連続して転送可能に構成され、
前記ダイヤルパルス生成手段が発生するダイヤルパルスの桁毎のダイヤルパルス数は、
前記ＤＭＡ制御部の連続データ転送数に応じて決定され、
前記ダイヤルパルスの桁毎に発生させる前記ダイヤルパルス数に応じて、前記ＤＭＡ制御部へ連続データ転送数を設定する制御部を更に備えたことを特徴とする請求項１に記載のダイヤルパルス生成回路。
【請求項３】
前記ＤＭＡ制御部は、指定された連続データ数の転送が終了すると、
前記制御部へ割り込み信号を発生させ、ダイヤルパルス桁発生の終了を前記制御部へ通知することを特徴とする請求項２に記載のダイヤルパルス生成回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電話機またはファクシミリ等において、ダイヤルパルスを生成するダイヤルパルス生成回路に関する。
【０００２】
【従来の技術】
電話機やファクシミリ等では、デジタル技術を用いて、電話回線からのリング信号を検出するためのリング周波数検出回路や、電話回線へのダイヤルパルスを送出するためのダイヤルパルス生成回路が設けられている。
【０００３】
図２は、従来のリング信号検出回路及びダイヤルパルス生成回路の概念を示す説明図である。
リング信号検出回路は、電話回線２０１から入力されるリング信号２０４をＮＣＵ（ネットワーク・コントロール・ユニット：網制御装置）２０２中で矩形波２０５（以下、パルス信号と称す）に波形整形し、これをＣＰＵ２０３のポートに入力するようになっている。また、ダイヤルパルス生成回路は、ＣＰＵ２０３の出力ポートからダイヤルパルス波形信号が出力されるようになっている。
【０００４】
図３は、従来のリング信号検出の動作説明図である。
従来は、リング信号検出方法として、ＣＰＵ内部のソフトウェアで入力ポートの論理（“Ｈ”入力／“Ｌ”入力）データを入手し、“Ｈ”／“Ｌ”の変化点〜次の“Ｈ”／“Ｌ”の変化点までの時間をタイマによるサンプリング周期にて計測し、パルス信号の１周期分のサンプリング数（データ：値ＮやＮ＋Ｍ）と、タイマサンプリング周期“Ｔ”を用いて、パルス波形の周波数“Ｆｒ”を検出していた。即ち、リング周波数Ｆｒ＝１／（Ｍ×Ｔ）となる。
【０００５】
図４は、従来のダイヤルパルス生成の動作説明図である。
ダイヤルパルス発生においては、図２に示したＣＰＵ２０３の出力ポートを利用して出力する。図４において、ソフトウェアタイマのサンプリング周期Ｔ毎にカウント値がインクリメントされる。ＣＰＵ２０３の処理はカウント値“Ｎ”で出力ポート“Ｈ”→“Ｌ”、カウント値“Ｎ＋Ｌ”で出力ポート“Ｌ”→“Ｈ”、カウント値“Ｎ＋Ｍ”で出力ポート“Ｈ”→“Ｌ”という処理である。このような処理により、ダイヤルパルス周期をＴｐ、周波数をＦｐとすると、Ｔｐ＝Ｍ×Ｔ、Ｆｐ＝１／Ｔｐ＝１／（Ｍ×Ｔ）となり、Ｔｐの“Ｈ”時間をＴｐｈ、“Ｌ”時間をＴｐｌとすると、Ｔｐｈ＝（Ｍ×Ｌ）×Ｔ、Ｔｐｌ＝Ｌ×Ｔで表現することができる。
【０００６】
【発明が解決しようとする課題】
上記のように、従来の構成では、リング信号検出、ダイヤルパルス波形生成ともに、その検出や生成のための判断方法は、ソフトウェアをＣＰＵが実行することによって実現されていた。従って、タイマのサンプリング周期、プログラムの処理速度に依存して変化するということになり、その結果、リング周波数検出やダイヤルパルス波形の精度を高めようとした場合は、ＣＰＵの負荷が重くなってしまうという問題点があった。
また、タイマのサンプリング周期の精度、プログラム処理速度によってリング周波数検出、ダイヤルパルス波形の精度にばらつきが発生するという問題点もあった。
【０００７】
更に、例えば、何らかの原因でＣＰＵを別なＣＰＵに置き換えた場合は、必ずこれらに関するソフトウェアの変更を行わなくてはならないということが発生してしまい、汎用性がないという問題点があった。
【０００８】
【課題を解決するための手段】
本発明は、前述の課題を解決するため次の構成を採用する。
【０００９】
〈構成１〉
ダイヤルパルス波形の一周期に対応した値と、一周期中の波形の変化点の時間間隔に対応した値とを、一周期毎にダイレクト・メモリ・アクセス転送するＤＭＡ制御部と、クロック数をカウントし、かつ、ＤＭＡ制御部がダイレクト・メモリ・アクセス転送するタイミングでリセットされるカウンタと、カウンタのカウント値と、ダイレクト・メモリ・アクセス転送された一周期に対応した値および波形の変化点の時間間隔に対応した値とを比較し、カウント値がこれらそれぞれの値に一致した場合にデータマッチ信号を出力するデータ比較部と、データ比較部からデータマッチ信号が出力された場合に割り込み信号を出力する割り込み出力制御部と、割り込み信号に基づいてダイヤルパルス波形を生成するダイヤルパルス生成手段とを備えたことを特徴とするダイヤルパルス生成回路。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態を具体例を用いて詳細に説明する。
《具体例１》
〈構成〉
図１は、本発明の具体例１のリング周波数検出回路の要部を示す構成図であるが、これに先立ち、本発明のリング周波数検出回路の全体構成を説明する。
【００１１】
図５は、リング周波数検出回路の全体構成図である。
図の回路は、メモリ部１、ＣＰＵ部２、タイマ部３、ＮＣＵ部４、電話回線５、データバス６で構成される。メモリ部１は、リング周波数検出のための各種のプログラムを格納すると共に、ＣＰＵ部２のワークエリアを提供するための記憶部である。ＣＰＵ部２は、メモリ部１に格納されたプログラムを実行してリング周波数検出のための種々の処理を行うためのマイクロプロセッサであり、後述するリング信号判定手段１６（図１参照）を構成するものである。
【００１２】
タイマ部３は、ＮＣＵ部４から出力されたリング信号のパルス波形信号を入力してそのパルス波形の周期を検出する機能を有しており、これについては図１を用いて後述する。ＮＣＵ部４は、従来と同様にアナログ信号を矩形波のデジタル信号に変換する回路であり、電話回線５はリング信号が入力される電話回線である。また、データバス６は、メモリ部１とＣＰＵ部２およびタイマ部３を相互に接続するためのバスである。
【００１３】
このように構成されたリング周波数検出回路では、ＣＰＵ部２からメモリ部１に対しては、制御を行うためのメモリコントロール信号が出力されている。また、ＣＰＵ部２からタイマ部３に対してはシステムクロックが供給されている。一方、タイマ部３からＣＰＵ部２に対してはタイマ割り込み信号が供給されている。また、ＮＣＵ部４から出力されるパルス波形はＣＰＵ部２とタイマ部３に供給されるようになっている。
【００１４】
次に、図１を用いて本発明の要部を説明する。
タイマ部３は、エッヂ検出回路１０、カウンタ１１、カウンタ制御部１２、クロック分周回路１３、レジスタ１４、割り込み出力制御部１５からなる。また、このタイマ部３にはデータバス６を介してリング信号判定手段１６が接続されている。
【００１５】
エッヂ検出回路１０は、ＮＣＵ部４からのパルス波形信号を受けて、そのパルスの立ち下がりに対応したエッヂ検出信号をレジスタ１４に対して送出する回路である。即ち、このエッヂ検出回路１０は、入力信号の周期を検出する周期検出手段である。カウンタ１１は、クロック分周回路１３のカウンタ用分周クロックに基づいてカウントを行うカウンタである。また、カウンタ制御部１２は、割り込み出力制御部１５からの割り込み信号出力に基づいてカウンタ１１のカウント値をレジスタ１４に書き込んだり、カウンタクリアパルスに基づいてカウンタ１１をクリアするといったカウンタ１１の制御を行うための制御部である。
【００１６】
クロック分周回路１３は、ＣＰＵ部２から供給されるシステムクロックに基づいて分周クロックを生成する回路である。クロック分周回路１３はシステムクロックのＫ分周（Ｋは整数）のクロックを生成することが可能であり、値ＫはＣＰＵ部２がタイマ部３に設定するようになっている。レジスタ１４は、エッヂ検出回路１０からエッヂ検出信号が出力された場合に、その時点のカウンタ１１のカウント値、即ち、一周期中のカウンタ１１のカウント値を保持するカウント値保持手段を構成するレジスタである。割り込み出力制御部１５は、エッヂ検出回路１０からエッヂ検出信号が出力された場合、即ち、一周期中の所定のタイミングを検出した場合に割り込み信号をデータバス６に対して出力する制御部である。
【００１７】
リング信号判定手段１６は、図５におけるＣＰＵ部２とメモリ部１内に格納された図示しない周波数検出のためのプログラムとからなり、プログラムをＣＰＵ部２が実行することによって実現される手段である。即ち、リング信号判定手段１６は、割り込み信号を受けた場合に、レジスタ１４の値を読み出し、この読み出したカウント値に基づいて入力信号がリング信号であるか否かを判定する機能を有している。
【００１８】
〈動作〉
図６は、図１のリング周波数検出回路の動作を示すタイミングチャートである。
この図において、パルス波形入力は、ＮＣＵ部４からタイマ部３に出力されるパルス波形であり、システムクロックは、ＣＰＵ部２からタイマ部３に出力される信号である。エッヂ検出回路内部信号１、エッヂ検出回路内部信号２は、それぞれエッヂ検出回路１０の内部信号であり、エッヂ検出信号はエッヂ検出回路１０から出力される信号である。カウンタ用分周クロックはクロック分周回路１３で生成した信号である。尚、本具体例ではクロック分周回路１３から出力されるクロックの周期をＴとする。
【００１９】
カウントデータは、カウンタ１１がカウントしたデータ値であり、レジスタ内部データは、カウントデータをレジスタ１４にストアしたデータである。割り込み信号出力は、割り込み出力制御部１５の出力であり、また、リング信号判定手段１６に入力される信号である。カウンタクリアパルスは、カウントデータがレジスタ１４にストアされた直後に発生する信号で、カウンタ制御部１２がカウンタ１１をクリアするための信号である。
【００２０】
先ず、システムクロックに同期してクロック分周回路１３からはカウンタ用分周クロックがカウンタ１１に入力され、カウンタ１１はこのクロックをカウントしている（クロックに従ってカウント値をインクリメントする）。
一方、パルス波形入力として、ＮＣＵ部４からのリング出力信号をタイマ部３に入力し、エッヂ検出回路１０でパルス波形入力信号の立ち下がりエッヂを検出する。このとき、エッヂ検出回路１０は、システムクロックに同期した１周期分のパルス波（＝エッヂ検出信号）を出力する。尚、これは、エッヂ検出回路１０の内部信号１と２によって形成されるものである。
【００２１】
そして、エッヂ検出信号が“Ｈ”の時のシステムクロックの立ち上がりでカウンタ１１のカウント値“Ｎ”をレジスタ１４にストアする。また、レジスタ１４にカウントデータがストアされた時点で、割り込み出力制御部１５から割り込み信号が出力され、この割り込み信号がリング信号判定手段１６に入力される。更に、このとき、カウンタクリアパルスが割り込み信号の次のシステムクロックサイクルで発生し、これに基づき、カウンタ制御部１２はカウンタ１１のカウント値をクリアする。
【００２２】
次に、リング信号判定手段１６のＣＰＵ部２が割り込み出力制御部１５からの割り込み信号を受け付けると、レジスタ１４に保持されている値を読み出す。この時読み出した値がカウンタ１１のカウントした値“Ｎ”である。リング信号判定手段１６は、このカウント値“Ｎ”と分周クロックの周期Ｔを利用してパルス波形の周波数を検出する。即ち、この周波数検出は、パルス波形周期をＴｐ、周波数をＦｐとすると、Ｔｐ＝Ｎ×Ｔ、Ｆｐ＝１／（Ｎ×Ｔ）の式で表すことができる。
【００２３】
尚、上記具体例では、リング信号判定手段１６では、カウント値“Ｎ”と分周クロックの周期Ｔを利用してリング信号の周波数を算出するようにしたが、他の態様として、予め、特定の周波数に対応するカウント値を設け、このカウント値とレジスタ１４で保持したカウント値を比較することで、その特定の周波数であるか否かを判断するようにしてもよい。例えば、メモリ部１に、検出されるべき規定の周波数に対応したカウント値を予め登録しておき、この値とレジスタ１４のカウント値とを比較して、カウント値“Ｎ”が登録値と等しいか判断するようにしてもよい。
【００２４】
更に、所定の誤差範囲内であれば、検出されるべき規定の周波数（リング周波数）であると判定するようにしてもよい。例えば、検出されるべき規定の周波数として上限値と下限値を設け、これらの値の範囲にカウント値“Ｎ”が入っていれば、規定のリング信号であると判定するといった構成であってもよい。
【００２５】
〈効果〉
以上のように具体例１によれば、リング信号波形のエッヂ間のクロックをカウントしてこの値をレジスタに保持すると共に、保持したタイミングで割り込み信号を送出し、この割り込み信号により、ＣＰＵが保持した値を取込んで周波数を判定するようにしたので、次のような効果がある。
【００２６】
即ち、従来のようにＣＰＵでリング信号波形のエッヂを検出し、かつ、ＣＰＵでタイマのカウント値を読んでいた構成と比較して、ＣＰＵが行う処理を非常に簡素化することができる。即ち、リング周波数検出時のＣＰＵの負荷を軽くすることができる。
【００２７】
また、リング周波数に対応したカウント値をハードウェアで求め、その値をレジスタ１４に保持しておいてから、ＣＰＵが読み出すようにしたため、その読み出しタイミングでカウント値が変動してしまうということがない。即ち、従来では、ＣＰＵへの割り込みによってＣＰＵ自身がタイマのカウント値をリードしていたため、割り込み発生から実際にリード処理を実行するまでのタイムラグによりカウント値が不正確になる恐れがあった。これに対し、本具体例では、カウント値をＣＰＵとは別の回路で保持しておき、これを次のパルス波形の立ち下がりまでにリードすればよいため、そのリードタイミングによってカウント値が変動するといった問題を解消することができる。
【００２８】
更に、カウンタ１１のサンプリング周波数（カウンタ用分周クロック）を大きくすることで検出するリング周波数の精度を向上させることができる。例えば、リング周波数の値（中心値）やその範囲（中心値からの±の許容誤差）は世界各国で一律ではなく、種々異なっている。従って、このような高い精度を要求している国（または地域）に対しても、本具体例のリング周波数検出回路は十分に対応することができる。
【００２９】
しかも、何らかの理由でＣＰＵ部２自体を入れ替える事態が発生したとしても、本回路構成を崩すことなくリング検出回路を実現でき、汎用性が高いという効果がある。
【００３０】
《具体例２》
具体例２は、ダイヤルパルス波形の“Ｈ”および“Ｌ”区間に対応した値をメモリからデータ比較部にＤＭＡ転送し、これらの値とカウンタのカウント値とを比較し、一致した場合にＣＰＵに対して割り込み信号を発生させるようにしたダイヤルパルス生成回路を示すものである。
【００３１】
〈構成〉
図７は、具体例２のダイヤルパルス生成回路の全体構成図である。
図の回路は、メモリ部１ａ、ＣＰＵ部２ａ、タイマ部３ａ、ＮＣＵ部４、電話回線５、データバス６、ＤＭＡ制御部７で構成される。メモリ部１ａは、ダイヤルパルス生成のための各種のプログラムを格納すると共に、ＣＰＵ部２ａのワークエリアを提供するための記憶部である。また、メモリ部１ａは、ダイヤルパルス波形の時間に対応したデータを格納するためのメモリエリアを有している。
【００３２】
図８は、メモリエリアとダイヤルパルス波形の説明図である。
図中、（ａ）はメモリエリア、（ｂ）は、これらのメモリエリアのデータに対応したダイヤルパルス波形を示している。（ａ）に示すＤＡＴＡ−Ａｘ（ｘ＝０，１，２，…）は、（ｂ）に示すようにダイヤルパルス波形の一周期に対応するデータのエリアであり、ＤＡＴＡ−Ｂｘは、ダイヤルパルス波形の“Ｌ”区間（“Ｈ”から“Ｌ”への変化点〜“Ｌ”から“Ｈ”への変化点の間隔）に対応するデータのエリアである。尚、ＤＡＴＡ−Ａ０、ＤＡＴＡ−Ｂ０の値は、ダイヤルパルスにおけるセットアップ時間に対応した値であり、これ以外の値（ＤＡＴＡ−Ａ１，Ａ２，…、ＤＡＴＡ−Ｂ１，Ｂ２，…の値）は、それぞれ同一の値となっている。また、ＤＡＴＡ−Ａ０、ＤＡＴＡ−Ｂ０のエリア以外のエリアの数（データが格納された数）がダイヤルパルスのパルス数に一致した値となっている。例えば、“３”をダイヤルする場合は、ＣＰＵ２ａからＤＡＴＡ−Ａ０〜Ａ３、ＤＡＴＡ−Ｂ０〜Ｂ３のエリアにデータが書き込まれるようになっている。
【００３３】
図７に戻って、ＣＰＵ部２ａは、メモリ部１ａに格納されたプログラムを実行してダイヤルパルス生成のための種々の処理を行うためのマイクロプロセッサであり、後述するダイヤルパルス生成手段２６を構成するものである。
【００３４】
タイマ部３は、ＣＰＵ部２ａから出力されたシステムクロックに基づいて、ダイヤルパルスに対応したタイミングで割り込み信号を出力するもので、これについては図９を用いて後述する。ＮＣＵ部４および電話回線５は具体例１と同様である。また、データバス６は、メモリ部１ａ、ＣＰＵ部２ａ、タイマ部３ａ、ＤＭＡ制御部７をそれぞれ接続しているデータバスである。
【００３５】
ＤＭＡ制御部７は、メモリ部１ａに格納されたダイヤルパルス波形に対応したデータをタイマ部３ａのデータ比較部２３にＤＭＡ（ダイレクト・メモリ・アクセス）転送する制御部（ＤＭＡコントローラ）である。
【００３６】
次に、本具体例のダイヤルパルス生成回路の要部を説明する。
図９は、本具体例のダイヤルパルス生成回路の要部の構成図である。
図において、タイマ部３ａは、カウンタ２０、カウンタ制御部２１、レジスタ２２、データ比較部２３、クロック分周回路２４、割り込み出力制御部２５、ダイヤルパルス生成手段２６からなる。
【００３７】
カウンタ２０は、カウンタ制御部２１によって制御されるカウンタであり、具体例１のカウンタ１１と同様に、クロック分周回路２４からの分周クロックに従ってカウントを行うよう構成されている。カウンタ制御部２１は、具体例１のカウンタ制御部１２と同様にカウンタ２０の制御を行う制御部である。レジスタ２２は、カウンタ２０のカウント値を保持するためのレジスタである。尚、本具体例では、レジスタ２２は特に必須の構成ではない。
【００３８】
データ比較部２３は、ＤＭＡ制御部７によって、メモリ部１ａに格納されているダイヤルパルス用データがセットされ、このセット値とカウンタ２０から出力されるカウント値とを比較し、その一致判定を行うもので、データ比較部Ａ（２３ａ）とデータ比較部Ｂ（２３ｂ）で構成されている。データ比較部Ａ（２３ａ）は、メモリエリアのＤＡＴＡ−Ａｘの値がセットされる比較部、データ比較部Ｂ（２３ｂ）はメモリエリアのＤＡＴＡ−Ｂｘの値がセットされる比較部であり、これらの値とカウント値とが一致した場合にデータマッチ信号を出力するよう構成されている。
【００３９】
クロック分周回路２４は、具体例１のクロック分周回路１３と同様に、システムクロックを入力してその分周クロックをカウンタ２０に対して出力する回路である。割り込み出力制御部２５は、データ比較部２３からのデータマッチ信号が入力された場合は、割り込み信号をデータバス６を介してダイヤルパルス生成手段２６に出力するものである。
【００４０】
ダイヤルパルス生成手段２６は、図７におけるＣＰＵ部２ａとメモリ部１ａ内に格納された図示しないダイヤルパルス波形生成のためのプログラムとからなり、これらのプログラムをＣＰＵ部２ａが実行することによって実現される手段である。即ち、ダイヤルパルス生成手段２６は、ダイヤルパルスの一周期に対応したタイミングの割り込み信号が入った場合は、ダイヤルパルス信号を“Ｈ”→“Ｌ”にし、パルス波形の“Ｌ”区間のタイミングに対応した割り込み信号の場合は、ダイヤルパルス信号を“Ｌ”→“Ｈ”とする機能を有している。
【００４１】
〈動作〉
次に動作について説明する。
図１０は、ダイヤルパルス生成回路の動作を示すタイミングチャートである。
先ず、ＣＰＵ部２ａは、メモリ部１ａのメモリエリアＡおよびメモリエリアＢにパルス波形に対応したデータを書き込む。即ち、ＣＰＵ部２ａは、メモリ部１ａ内の図示しないデータ格納部等から、ダイヤルパルス数に対応した値であるＤＡＴＡ−ＡｘをメモリエリアＡのOOOO_0000h〜0000_000Ahに、またＤＡＴＡ−ＢｘをメモリエリアＢのOOO1_0000h〜0001_000Ahに書き込む。例えば、“０”のダイヤルパルスを生成する場合はＤＡＴＡ−Ａ０〜ＤＡＴＡ−Ａ１０、ＤＡＴＡ−Ｂ０〜ＤＡＴＡ−Ｂ１０のエリアにデータを書き込む。これらデータＤＡＴＡ−ＡｘおよびＤＡＴＡ−Ｂｘは、分周クロックの周期Ｔとの積をとることによってそれぞれダイヤルパルス波形周期、ダイヤルパルス波形の“Ｌ”区間の時間を表すことになる。
【００４２】
また、ＣＰＵ部２ａは、ＤＭＡ制御部７に対してダイヤルパルスの桁数に対応したＴＣ（Terminal Count）を設定する。例えば、桁数が“０”である場合はＴＣを１１（セットアップ時間のための値１＋“０”のダイヤルパルス数１０）に設定する。
【００４３】
次に、ＤＭＡ制御部７は、上記のＤＡＴＡ−Ａｘ、ＤＡＴＡ−Ｂｘのデータを、それぞれＤＡＴＡ−Ａ０、ＤＡＴＡ−Ｂ０から順に、データ比較部２３のデータ比較部Ａ（２３ａ）およびデータ比較部Ｂ（２３ｂ）にＤＭＡ転送する。尚、ＤＭＡ転送を行う場合、ＤＭＡ制御部７からＢＲＥＱ（バス要求信号）が出力され、これを受けてＣＰＵ部２ａがＢＡＣＫ（バス使用許可信号）を出力されることによって開始されるが、これらの動作については一般的なＤＭＡ転送処理と同様であるため、ここでの説明は省略する。
【００４４】
ＤＭＡ転送されたＤＡＴＡ−Ａ０およびＤＡＴＡ−Ｂ０がデータ比較部２３にストアされる。ここで、最初にストアされるＤＡＴＡ−Ａ０およびＤＡＴＡ−Ｂ０の値をそれぞれｎ、ｍとする。また、この時、カウンタ２０はクロック分周回路２４からの分周クロックの立ち上がりエッヂに同期してカウントを開始する。
【００４５】
その後、カウンタ２０はカウントを継続し、データ比較部Ｂ（２３ｂ）は、ストアされている値ｍに一致した時にデータマッチ信号としてシステムクロック１周期分のパルスを出力する。このパルスを割り込み出力制御部２５が受けて割り込み信号をデータバス６に出力する。ダイヤルパルス生成手段２６は、この割り込み信号の“Ｈ”区間のシステムクロックの立ち上がりで、ダイヤルパルス波形の“Ｌ”→“Ｈ”のデータをＣＰＵ部２ａのＤＰ出力ポートから出力する。
【００４６】
また、データ比較部Ａ（２３ａ）もデータ比較部Ｂ（２３ｂ）の動作と同様に、カウンタ２０のカウント値が値ｎに一致した時にデータマッチ信号としてシステムクロック１周期分のパルスを出力する。このパルスを割り込み出力制御部２５が受けて割り込み信号をデータバス６に出力する。ダイヤルパルス生成手段２６は、この割り込み信号の“Ｈ”区間のシステムクロックの立ち上がりで、ダイヤルパルス波形の“Ｈ”→“Ｌ”のデータをＣＰＵ部２ａのＤＰ出力ポートから出力する。
【００４７】
また、次のＤＭＡ転送を行うタイミングは、カウント値と値ｎが一致した時の割り込み出力制御部２５から割り込み信号が出力されたタイミングである。即ち、ＤＭＡ制御部７は、この割り込み信号をトリガとして、次のデータ（ＤＡＴＡ−Ａ１およびＤＡＴＡ−Ｂ１）をデータ比較部２３にＤＭＡ転送する。これ以降にデータ比較部２３にストアされるＤＡＴＡ−ＡｘおよびＤＡＴＡ−Ｂｘの値をそれぞれＮ、Ｍとする。そして、上述したＤＭＡ転送処理をダイヤルパルスの桁数分行う。
【００４８】
図１１は、この動作の説明図である。
図示の動作は、ＤＡＴＡ−Ａ１（値Ｎ）およびＤＡＴＡ−Ｂ１（値Ｍ）がＤＭＡ転送された以降の動作を示しており、図示のように、ＤＭＡ転送の回数だけ同様の動作が繰り返される。そして、この繰り返し回数がダイヤルパルスの桁数となる。
【００４９】
ＤＭＡ制御部７は、設定されたＴＣのＤＭＡ転送を行うとＣＰＵ部２ａに対してＴＣ割り込み信号を出力する。これによりＣＰＵ部２ａは、次のダイヤルパルスの桁数に対応したメモリエリアＡ，ＢへのデータセットおよびＤＭＡ制御部７へのＴＣのセットを行う。このような処理を電話番号の回数分行う。例えば、電話番号が、027-123-4567であった場合、１０回分の処理が行われることになる。
【００５０】
尚、上記のように、その都度ＣＰＵ部２ａがメモリエリアＡ，Ｂにデータセットするのではなく、使用する全メモリエリアＡ，Ｂにデータを予めセットしておき、ダイヤルパルスの桁数に対応した値をその都度ＤＭＡ制御部７に指示するようにしてもよい。
【００５１】
このように、ＣＰＵ部２ａは、タイマ割り込み信号やＴＣ割り込み信号が入ってきた場合にのみダイヤルパルス生成のための処理を行う。このため、ＣＰＵ部２ａはこのような割り込みが入る以外の時間を他の処理を当てることができ、従来に比べてダイヤルパルス生成時のＣＰＵの負担を著しく軽減させることができる。
【００５２】
〈効果〉
以上のように、具体例２のダイヤルパルス生成回路によれば、ダイヤルパルス波形の一周期と変化点にそれぞれ対応した時間のデータをＤＭＡ転送して、カウンタのカウント値と比較し、それぞれの値にカウント値が一致した場合に割り込み信号を発生させ、これらの割り込み信号によってダイヤルパルス波形の“Ｈ”または“Ｌ”区間の時間を決定するようにしたので次のような効果がある。
【００５３】
先ず、ダイヤルパルス発生時のＣＰＵ処理に時間的余裕を持たせることができる。また、クロック分周回路で生成するカウンタ用サンプリングクロックの周波数を大きくすることによって、ダイヤルパルス信号の出力の周期や“Ｈ”または“Ｌ”時間の精度を上げることができるという効果もある。更に、具体例１と同様に、何らかの理由でＣＰＵ自体を入れ替える事態が発生したとしても、本具体例の回路構成を崩すことなくダイヤルパルス回路を実現することができ、汎用性が高いという効果がある。
【００５４】
《利用形態》
上記具体例１、２は、ファクシミリ装置や電話装置等、電話回線に接続する機器に使用することができる。即ち、具体例１の構成では電話回線のリング信号の周波数検出を行う部分に適用することができ、具体例２の構成ではダイヤルパルスの発生回路として適用することができる。ここで、例えばファクシミリ装置等では、リング検出とダイヤルパルス生成は同時に行うことはないため、タイマ部３、３ａを具体例１と具体例２の構成を組み合わせたものとし、カウンタやクロック分周回路、レジスタ等の構成を共用することも可能である。
【図面の簡単な説明】
【図１】本発明の具体例１のリング周波数検出回路の要部を示す構成図である。
【図２】従来のリング信号検出回路及びダイヤルパルス生成回路の概念を示す説明図である。
【図３】従来のリング信号検出の動作説明図である。
【図４】従来のダイヤルパルス生成の動作説明図である。
【図５】本発明の具体例１のリング周波数検出回路の全体構成図である。
【図６】リング周波数検出回路の動作を示すタイミングチャートである。
【図７】具体例２のダイヤルパルス生成回路の全体構成図である。
【図８】メモリエリアとダイヤルパルス波形の説明図である。
【図９】本発明の具体例２のダイヤルパルス生成回路の要部の構成図である。
【図１０】ダイヤルパルス生成回路の動作を示すタイミングチャートである。
【図１１】ＤＭＡ転送回数とダイヤルパルスの関係を示す説明図である。
【符号の説明】
７  ＤＭＡ制御部
１０  エッヂ検出回路（周期検出手段）
１１、２０  カウンタ
１３、２４  クロック分周回路
１４  レジスタ（カウント値保持手段）
１５、２５  割り込み出力制御部
１６  リング信号判定手段
２３  データ比較部
２６  ダイヤルパルス生成手段
【図１】
0003947017.tif 000002
【図２】
0003947017.tif 000003
【図３】
0003947017.tif 000004
【図４】
0003947017.tif 000005
【図５】
0003947017.tif 000006
【図６】
0003947017.tif 000007
【図７】
0003947017.tif 000008
【図８】
0003947017.tif 000009
【図９】
0003947017.tif 000010
【図１０】
0003947017.tif 000011
【図１１】
0003947017.tif 000012