(57)【要約】【課題】  入出力端子の入出力機能切換えを、制御プログラムが介在することなく自動的に行なうことが可能な半導体装置を提供する。【解決手段】  端子制御部１２は、レベル変化が非同期的に発生する内部リセット信号を、内部クロック信号ＣＬＫによって同期化し、その同期化信号を、更に内部クロック信号の１周期分，２周期分だけ遅延させた第１，第２遅延信号ｒｅｇ２，ｒｅｇ３を生成して出力し、第１遅延信号の出力タイミングによって入出力端子２に設定されているＩＤデータをデータラッチ１８でラッチさせ、第２遅延信号の出力タイミングによって出力バッファ４をディスエーブル状態からイネーブル状態に切換える。【選択図】  図１
2005322036.tif 000002
【特許請求の範囲】
【請求項１】
起動時において、外部端子に設定されているレベルをデータとして読み込むと共に、その読取りを行った以降は、前記外部端子を出力端子として使用する構成の半導体装置において、
リセット信号のレベルが変化することでリセット状態が解除された時点から所定時間が経過するまでは、前記外部端子を入力端子として機能させると共に、前記所定時間が経過すると前記外部端子を出力端子として機能させるように切換えを行うハードウエアロジックで構成される外部端子制御部を備えることを特徴とする半導体装置。
【請求項２】
前記外部端子には、入力バッファの入力端子と、出力バッファの出力端子とが接続されており、
前記外部端子制御部は、
前記リセット信号を、内部クロック信号によって同期化した信号を出力するための同期化信号出力手段と、
前記同期化信号を、前記内部クロック信号の１周期分だけ遅延させた第１遅延信号を出力するための第１遅延信号出力手段と、
前記同期化信号を、前記内部クロック信号の２周期分だけ遅延させた第２遅延信号を出力するための第２遅延信号出力手段と、
前記入力バッファを介して与えられる前記外部端子に設定されているレベルデータを、前記第１遅延信号の出力タイミングによってラッチするデータラッチとを備え、
初期状態において前記出力バッファをディスエーブル状態に制御すると共に、前記第２遅延信号の出力タイミングによって前記出力バッファをイネーブル状態に切換えるように構成されることを特徴とする請求項１記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、起動時において、外部端子に設定されているレベルをデータとして読み込むと共に、その読取りを行った以降は、前記外部端子を出力端子として使用する構成の半導体装置に関する。
【背景技術】
【０００２】
例えば、マイクロコンピュータ（マイコン）やシステムＬＳＩにおいては、外部端子のレベルをハイ、ロウの２値に設定することで、マイコンの動作モードを選択させるように構成する場合がある。その場合、レベル設定を行うためだけの入力端子を設けると、端子数が増加するためコストアップに繋がってしまう。
そこで、レベル設定用の入力端子を出力端子と共通化しておき、ユーザがプログラミングを行うことで設定レベルの読み込みを行った後に端子の機能を入力から出力に切換えるようにすることが一般に行われている。その構成を、図４に示す。システムＬＳＩ１は、例えばシリアル通信用のＬＳＩであり、各ＬＳＩ毎に通信で使用するためのＩＤが割り付けられようになっている。システムＬＳＩ１の入出力端子２には、入力バッファ３の入力端子と出力バッファ４の出力端子とが接続されている。入力バッファ３の出力端子は、ＩＤ認識回路５に接続されている。
【０００３】
ＩＤ認識回路５は、入出力端子２を介して与えられたＩＤデータを保持し、以降の通信において送信されるＩＤを比較認識するための回路である。即ち、ＩＤ認識回路５は、送信されたＩＤが保持されているＩＤに一致した場合は、当該システムＬＳＩ１を送信先として選択されたデータであるとして受信を許可するようになっている。出力バッファ４の入力端子は出力ブロック６に接続されており、その出力ブロック６によって出力される信号を、出力バッファ４及び入出力端子２を介してシステムＬＳＩ１の外部に出力する。
【０００４】
出力バッファ４のイネーブル制御は、ＣＰＵ７が端子制御回路８にデータを書込むことで行う。端子制御回路８は、インターフェイス（Ｉ／Ｆ）部８ａとレジスタＩ／Ｏ制御部８ｂとで構成され、ＣＰＵ７は、端子制御回路８に割り付けられているアドレスに書き込むデータ値によって、出力バッファ４のディスエーブル／イネーブルを切換える。
即ち、出力バッファ４は初期状態でディスエーブル状態に設定されており、システムＬＳＩ１のリセットが解除されて起動すると、入出力端子２に設定されたＩＤデータが取り込まれる。それから、ＣＰＵ７は、端子制御回路８に所定のデータを書き込むことで出力バッファ４をイネーブル状態に切換え、以降、入出力端子２は、出力ブロック６によって出力されるデータをシステムＬＳＩ１の外部に出力するためなどに使用される。尚、入出力端子２は、実際には複数本存在するものを代表して１本として図示したものである。
また、以上に類似する構成は、例えば特許文献１の従来技術として記載されている。
【特許文献１】特開２００１−１６７０４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記の従来構成では、入出力端子２の入出力切換えをユーザが制御プログラムを記述することで行うようになっているため、その分だけプログラムを作成するための工数を要することになる。また、端子制御回路８を、レジスタアドレスの設定などに応じて一々設計しなければならず、その設計負荷が重いという問題もあった。
ところで、特許文献１は、上記に類似する従来技術を改良する目的でなされたものであるが、入出力端子の入出力機能切換えを常時ダイナミックに行なう構成を前提としており、本件のように、リセット解除後における一定の期間内に入出力機能切換えを１回だけ行うものとは前提が相違している。
【０００６】
本発明は上記事情に鑑みてなされたものであり、その目的は、入出力端子の入出力機能切換えを、制御プログラムが介在することなく自動的に行なうことが可能な半導体装置を提供することにある。
【課題を解決するための手段】
【０００７】
請求項１記載の半導体装置によれば、ハードウエアロジックで構成される外部端子制御部は、リセット信号のレベルが変化することでリセット状態が解除された時点から所定時間が経過するまでは外部端子を入力端子として機能させ、外部端子に設定されているレベルデータはこの間に読み込むようにする。そして、所定時間が経過すると、外部端子を出力端子として機能させるように切換えを行う。
従って、ユーザは、外部端子の入出力機能切換えを行なうために制御プログラムを記述する必要がなくなり、プログラムの開発工数を削減することができる。また、上記の外部端子制御部は、背景技術で示した端子制御回路８に比較すると簡単な構成であるため、ハードウエアの設計負荷も極めて軽くすることができる。
【０００８】
請求項２記載の半導体装置によれば、外部端子制御部は、レベル変化が非同期的に発生するリセット信号を内部クロック信号によって同期化し、その同期化信号を、更に内部クロック信号の１周期分，２周期分だけ遅延させた第１，第２遅延信号を生成して出力する。そして、第１遅延信号の出力タイミングによって外部端子に設定されているレベルデータをラッチし、第２遅延信号の出力タイミングによって出力バッファをディスエーブル状態からイネーブル状態に切換える。従って、設定レベルデータの入力→ラッチ→入出力切換え、という一連のシーケンスを時系列的に確実に実行することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明をシリアル通信用マイクロコンピュータに適用した場合の一実施例について図１乃至図３を参照して説明する。尚、図４と同一部分には同一符号を付して説明を省略し、以下異なる部分についてのみ説明する。本実施例におけるシステムＬＳＩ（半導体装置）１１は、端子制御回路８が削除されており、入力バッファ３とＩＤ認識回路５との間には端子制御部（外部端子制御部）１２が配置されている。
また、外部より与えられるリセット信号は、直接端子制御部１２に与えられていると共に内部リセット生成部１３にも与えられている。そして、内部リセット生成部１３より出力される内部リセット信号も、端子制御部１２に与えられている。更に、ＣＰＵ７は、ＣＰＵ１４に置き換わっている。
【００１０】
内部リセット生成部１３は、ロウアクティブの外部リセット信号がハイレベルに変化してリセットが解除されると内部のタイマにより計時を開始し、所定時間が計時された時点で内部リセット信号のレベルをロウからハイに変化させるようになっている。これは、具体的には図示しないが、システムＬＳＩ１１が内部クロック信号を生成出力するのに、リングオシレータを用いて構成されるＤＰＬＬ（Digital Phase Locked Loop）回路を用いていることから、極めて高速でデジタル的に発振動作を行なうリングオシレータの発振が安定するまで、ＣＰＵ１４による制御プログラムの実行を待機させるためである。従って、ＣＰＵ１４は、内部リセット信号がハイレベルに変化した時点でリセットが解除され、制御プログラムの実行を開始するようになっている。
【００１１】
図２は、端子制御部１２の詳細構成を示すものである。端子制御部１２は、３個直列に接続されているフリップフロップ（Ｆ／Ｆ）１５〜１７と、データラッチ１８とで構成されている。各フリップフロップ１５〜１７のクロック入力端子には、システムＬＳＩ１１の内部クロック信号ＣＬＫが与えられており、初段のフリップフロップ１５（同期化信号出力手段）のデータ入力端子には、内部リセット信号が与えられている。２段目のフリップフロップ１６（第１遅延信号出力手段）のデータ出力端子は、データラッチ１８にラッチ信号として与えられており、３段目のフリップフロップ１７（第２遅延信号出力手段）のデータ出力端子は、出力バッファ４のイネーブル制御信号として与えられている。
【００１２】
次に、本実施例の作用について図３も参照して説明する。図３は、端子制御部１２の動作を中心として示すタイミングチャートである。尚、出力バッファ４が初期状態でディスエーブル状態にある点は、図４と同様である。図３（ｂ）に示すように、外部リセット信号のレベルが（１）の時点でロウからハイに変化すると、内部リセット生成部１３は、その時点から計時を開始し、所定の発振安定時間が経過すると内部リセット信号のレベルをロウからハイに変化させる（図３（ｃ），時点（２）参照）。
【００１３】
すると、フリップフロップ１５は、その内部リセット信号をクロック信号ＣＬＫで同期化し、同期化信号ｒｅｇ１を次段のフリップフロップ１６に出力する（図３（ｄ），時点（３）参照）。そして、フリップフロップ１６は、その同期化信号ｒｅｇ１をクロック信号ＣＬＫの１周期分遅延させ、第１遅延信号ｒｅｇ２を次段のフリップフロップ１６及びデータラッチ１８に出力する（図３（ｅ），時点（４）参照）。
【００１４】
入力バッファ３は、常時イネーブル状態にあるので、外部より入出力端子（外部端子）２に与えられているデータは常に入力バッファ３を介して入力されている。そして、データラッチ１８は、そのデータを第１遅延信号ｒｅｇ２の出力タイミングでラッチする。データラッチ１８によってラッチされたデータはＩＤ認識回路５に与えられ、以降の通信において外部より送信されるＩＤデータとの比較が行われる。
【００１５】
それから、最終段のフリップフロップ１７は、第１遅延信号ｒｅｇ２を、更にクロック信号ＣＬＫの１周期分遅延させて第２遅延信号ｒｅｇ３として、出力バッファ４のイネーブル信号として出力する（図３（ｆ），時点（５）参照）。すると、その時点で出力バッファ４はイネーブル状態に切り換わるので、システムＬＳＩ１１は、出力ブロック６より出力されるデータを、入出力端子２を介して外部に出力可能となる。
【００１６】
以上のように本実施例によれば、端子制御部１２をハードウエアロジックで構成し、内部リセット信号のレベルがロウからハイに変化することでリセット状態が解除された時点から所定時間が経過するまでは入出力端子２を入力端子として機能させ、入出力端子２に設定されているＩＤデータをこの間に読み込ませ、所定時間が経過すると、入出力端子２を出力端子として機能させるように切換えを行うように構成した。
従って、ユーザは、入出力端子２の入出力機能切換えを行なうために制御プログラムを記述する必要がなくなり、プログラムの開発工数を削減することができる。また、端子制御部１２は、背景技術で示した端子制御回路８に比較すると簡単な構成であるため、ハードウエアの設計負荷も極めて軽くすることができる。
【００１７】
また、端子制御部１２は、レベル変化が非同期的に発生する内部リセット信号を、内部クロック信号ＣＬＫによって同期化し、その同期化信号を、更に内部クロック信号の１周期分，２周期分だけ遅延させた第１，第２遅延信号ｒｅｇ２，ｒｅｇ３を生成して出力し、第１遅延信号の出力タイミングによって入出力端子２に設定されているＩＤデータをデータラッチ１８でラッチさせ、第２遅延信号の出力タイミングによって出力バッファ４をディスエーブル状態からイネーブル状態に切換えるようにした。従って、ＩＤデータの入力→ラッチ→入出力切換え、という一連のシーケンスを時系列的に確実に実行することができる。
【００１８】
本発明は上記し且つ図面に記載した実施例にのみ限定されるものではなく、次のような変形または拡張が可能である。
内部リセット生成部１３は、リングオシレータを使用した回路のように、ハードウエアのリセットが解除された後、ＣＰＵが制御プログラムの実行を開始するまでの間に、所定の待機時間を設ける必要がある場合に設ければ良い。従って、第１実施例の構成においても、ＤＰＬＬ回路を用いない構成であれば、内部リセット生成部１３を削除して、外部リセット信号を初段のフリップフロップ１５に与えても良い。
半導体装置は、シリアル通信用のマイコン若しくはシステムＬＳＩに限ることなく、起動時に外部端子に設定されているレベルをデータとして読み込み、その読取り以降は外部端子を出力端子として使用する構成の半導体装置であれば広く適用することが可能である。
【図面の簡単な説明】
【００１９】
【図１】本発明をシリアル通信用のシステムＬＳＩに適用した場合の一実施例であり、システムＬＳＩの構成を示す機能ブロック図
【図２】端子制御部の詳細構成を示す図
【図３】端子制御部の動作を中心として示すタイミングチャート
【図４】従来技術を示す図１相当図
【符号の説明】
【００２０】
図面中、２は入出力端子（外部端子）、３は入力バッファ、４は出力バッファ、１１はシステムＬＳＩ（半導体装置）、１２は端子制御部（外部端子制御部）、１５はフリップフロップ（同期化信号出力手段）、１６はフリップフロップ（第１遅延信号出力手段）、１７はフリップフロップ（第２遅延信号出力手段）、１８はデータラッチを示す。
【図１】
2005322036.tif 000003
【図２】
2005322036.tif 000004
【図３】
2005322036.tif 000005
【図４】
2005322036.tif 000006