(57)【要約】【課題】外部端子数を増加させることなく不揮発性メモリへのトリミングデータの書込みを可能とし、これによりチップおよびモジュールの小型化を図ることができる通信制御用半導体集積回路およびそれを用いた無線通信システムを提供する。【解決手段】半導体集積回路内部に書換え可能な不揮発性メモリ（２４０）を設け、電子部品（ＸＴＡＬ）を含む回路の特性を測定してその特性のずれを補正するためのトリミングデータを上記不揮発性メモリに記憶させるようにした。また、上記トリミングデータを上記不揮発性メモリへ送って記憶させるための入力ピンおよびインタフェース回路として、テストピンやＪＴＡＧインタフェース回路のような半導体集積回路にもともと設けられているピンおよびテスト用インタフェース回路を兼用するようにした。【選択図】    図１
2005020349.tif 000002
【特許請求の範囲】
【請求項１】
書替え可能な不揮発性メモリとテスト用インタフェース回路を備えた半導体集積回路であって、
上記不揮発性メモリに、電子部品もしくは素子のばらつきに起因して生じる回路特性のずれを補正するための調整用データを、上記テスト用インタフェース回路を介して書き込むことができるように構成されていることを特徴とする半導体集積回路。
【請求項２】
上記不揮発性メモリに記憶されている調整用データもしくはそれをＤＡ変換した値を出力する端子を有することを特徴とする請求項１記載の半導体集積回路。
【請求項３】
プログラムの命令に従って制御を行なう制御用のマイクロプロセッサと、該マイクロプロセッサによって実行される上記プログラムを格納するプログラムメモリとを備え、
上記不揮発性メモリに記憶されている調整用データが上記マイクロプロセッサによって読出し可能に構成されていることを特徴とする請求項１又は２に記載の半導体集積回路。
【請求項４】
上記電子部品は水晶発振子であり、上記調整用データは上記水晶発振子を含む発振回路の発振周波数を調整するデータであることを特徴とする請求項１〜３のいずれかに記載の半導体集積回路。
【請求項５】
電子部品と、
第１の不揮発性メモリと、プログラムの命令に従って制御を行なう制御用のマイクロプロセッサと、該マイクロプロセッサによって実行される上記プログラムを格納する第２の不揮発性メモリとを備え、上記電子部品のばらつきに起因して生じる回路特性のずれを補正するための調整用データが上記第１の不揮発性メモリに格納されるようにされた第１の半導体集積回路と、
が１つの基板上に実装され、
上記第１の不揮発性メモリに格納された上記調整用データが書替え可能に構成されていることを特徴とする電子システム。
【請求項６】
上記調整用データを、上記基板に設けられたテスト兼用端子を介して上記第１の不揮発性メモリに書き込むことができるように構成されていることを特徴とする請求項５に記載の電子システム。
【請求項７】
上記第１の半導体集積回路はテスト用インタフェース回路を備え、上記調整用データは上記テスト用インタフェース回路を介して上記第１の不揮発性メモリに書き込むことができるように構成されていることを特徴とする電子システム。
【請求項８】
上記第２の不揮発性メモリはマスクＲＯＭであることを特徴とする請求項５〜７のいずれかに記載の電子システム。
【請求項９】
上記電子部品は水晶発振子であり、上記調整用データは上記水晶発振子を含む発振回路の発振周波数を調整するデータであることを特徴とする請求項５〜８のいずれかに記載の電子システム。
【請求項１０】
上記水晶発振子と共に発振回路を構成する素子が形成された第２の半導体集積回路を備え、
上記第２の半導体集積回路で生成されたクロック信号が基準クロック信号として上記第１の半導体集積回路に供給されるように構成されていることを特徴とする請求項９記載の電子システム。
【請求項１１】
上記第１の半導体集積回路は通信のためのベースバンド信号処理を行なうベースバンド用半導体集積回路であり、上記第２の半導体集積回路は送受信機能を有する高周波用半導体集積回路であることを特徴とする請求項１０に記載の電子システム。
【請求項１２】
書替え可能な不揮発性メモリとテスト用インタフェース回路を備えた半導体集積回路であって、
上記不揮発性メモリに、電子部品もしくは素子のばらつきに起因して生じる回路特性のずれを補正するための調整用データと該半導体集積回路に固有のデータを、上記テスト用インタフェース回路を介して書き込むことができるように構成されていることを特徴とする半導体集積回路。
【請求項１３】
上記電子部品は水晶発振子であり、上記調整用データは上記水晶発振子を含む発振回路の発振周波数を調整するデータであることを特徴とする請求項１２に記載の半導体集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体集積回路（以下、ＩＣと記すこともある）の外付け電子部品もしくは素子のばらつきによる回路特性のずれの調整特に振動子を有する発振器の周波数ばらつきの調整に適用して有効な技術に関し、例えばブルートゥース通信規格の通信制御用ＩＣやそれを用いた通信システムに利用して特に有効な技術に関する。
【０００２】
【従来の技術】
無線通信規格の１つにブルートゥースと呼ばれ、２．４ＧＨｚ〜２．４８ＧＨｚの周波数帯を使用し短距離無線通信を行うものがある。ブルートゥース規格の無線通信システム（ブルートゥースシステムと称する）は、一般に、信号の送受信や変復調機能を有する高周波ＩＣや、送信データに基づいて、たとえば、Ｉ／Ｑ信号を生成するベースバンド処理、受信データのベースバンド処理、乃至、高周波ＩＣの制御信号を生成したりするベースバンドＬＳＩ（大規模半導体集積回路）、制御用プログラム（ユーザプログラム）を記憶するＲＯＭ（リードオンリメモリ）乃至ＥＥＰＲＯＭ（電気的に消去及び書き込み可能なリードオンリメモリ）のような不揮発性メモリを含むプログラムメモリなどから構成されている。
【０００３】
ブルートゥースシステムでは、リンクコントローラと呼ばれる機能回路により通信相手の機器と相互通信接続を行うための制御が行なわれる。また、ブルートゥース通信では、マスター機器とスレーブ機器との間でクロックの同期をとるとともに通信接続を確立するために、ブルートゥースクロックと呼ばれる３．２ｋＨｚのクロック信号に基づき、３．２ｋＨｚの２倍の周期（６２５μｓ）でパケットデータの交換が行なわれる。
相互通信接続の確立時には、それぞれのリンクコントローラが、自分のブルートゥースクロックと相手機器のブルートゥースクロックのずれ量を割り出し、スレーブ側のリンクコントローラがクロックのずれを補正して通信制御を行う。これにより、マスタ側とスレーブ側との通信動作が互いに同期される。ブルートゥースの規格においては、上記３．２ｋＨｚのブルートゥースクロックに対して±２０ｐｐｍの周波数精度が要求されており、一般には８ＭＨｚや１３ＭＨｚのような基準クロックを分周することにより生成されている。
【０００４】
従来、ブルートゥースシステムでは、基準となる８ＭＨｚや１３ＭＨｚのようなクロックを生成するため、容易に入手可能な振動子の中でも比較的精度の高い水晶発振子が一般に用いられている。しかしながら、水晶発振子を用いた発振器といえども、発振子がもともと持っている製造バラツキに加えて、実装基板の寄生容量や発振子と共に接続される容量素子の製造バラツキ、温度変化や電源電圧変動により、発振周波数が所望の値からずれてしまうという問題点がある。
【０００５】
振動子を用いた発振器における周波数ずれを補正する技術して、例えば発振器に可変容量ダイオードを接続するとともに、予め測定により検出したばらつきを補正するトリミングデータを記憶する不揮発性メモリ（ＥＥＰＲＯＭ）を設け、該不揮発性メモリから読み出したトリミングデータをＤＡ変換器でアナログ電圧に変換して上記可変容量ダイオードに印加して、その容量値を変化させることで発振器の発振周波数をゼロ調整するようにした発明が提案されている（特許文献１参照）。
【０００６】
【特許文献１】
特開平１０−４１７４６号公報
【０００７】
【発明が解決しようとする課題】
本発明者等は、ブルートゥースシステムにおいては、ユーザプログラムを記憶するためＥＥＰＲＯＭのような不揮発性メモリが用いられていることに着目し、該ＥＥＰＲＯＭを、基準クロックを生成する水晶発振器の発振周波数のずれを補正するためのトリミングデータを保持する不揮発性メモリとして利用するようにした図９に示すようなシステムについて検討した。
【０００８】
図９において、符号１００が付されているのは高周波ＩＣ、２００はベースバンドＬＳＩ、４００は不揮発性メモリ、ＸＴＡＬは水晶振動子、ＤＶは可変容量ダイオードである。水晶振動子ＸＴＡＬを含む水晶発振器１２０は高周波ＩＣ１００側に設けられ、トリミングデータをＤＡ変換して上記可変容量ダイオードＤＶに印加するアナログ電圧を生成するＤＡ変換器２５０はベースバンドＬＳＩ２００内に設けられている。高周波ＩＣ１００とベースバンドＬＳＩ２００と不揮発性メモリ４００はセラミック基板のような１つの基板上に実装され、モジュールとして構成される。
【０００９】
図９に示すシステムにおいては、不揮発性メモリ４００にユーザプログラムを格納するようにされる。そのトリミングデータは、システム実装後に初めて測定可能となるのが一般的であるので、トリミングデータとユーザープログラムとあわせて上記不揮発性メモリ４００に書き込もうとすると、図９に示されているように、高周波ＩＣ１００とベースバンドＬＳＩ２００と不揮発性メモリ４００を１つの基板上に実装した状態で実行せざるを得ない。このような実装状態で、不揮発性メモリ４００にユーザプログラムを格納する方法としては、ベースバンドＬＳＩ２００内のＣＰＵ２２０により不揮発性メモリ４００に書込みを行なう方法と、別個の装置により不揮発性メモリ４００への書込みを行なう方法とが考えられる。
【００１０】
しかし、ベースバンドＬＳＩ２００内のＣＰＵ２２０によらず別個の装置により不揮発性メモリ４００への書込みを行なうには、ＣＰＵ２２０と不揮発性メモリ４００とを電気的に切断する仕組みと、モジュールの基板に書込みのためのアドレスやデータを入力するための端子とを設ける必要があるが、モジュールに設けることができる外付け回路や端子数には物理的な制約があるため、実現が困難であることが分かった。モジュールにあえてかかる外付け回路や端子を設けると、モジュールのサイズが大きくなってシステムの小型化を妨げる要因となる。
【００１１】
また、ベースバンドＬＳＩ２００内のＣＰＵ２２０により不揮発性メモリ４００に書込みを行なう方法にあっては、モジュール外部からベースバンドＬＳＩ２００内のＣＰＵ２２０へ、不揮発性メモリへの書込み指令と書き込むべきプログラムをシリアル転送等で送ってから書込みを実行する必要がある。そのため、一般的なＥＥＰＯＲＭライタによる書込みに比べて不揮発性メモリの書込みに必要な時間が非常に長くなり、例えば２Ｍバイトのフラッシュメモリの場合で約３０秒近くかかってしまい、量産性が低く製造コストが高くなるという課題がある。
【００１２】
さらに、図９に示す無線通信システムにあっては、不揮発性メモリ４００に格納されるプログラムが通信処理に必要なプログラムであるため、携帯電話器などの実装置に組み込まれた後に、通信処理を実行しながら発振器の周波数調整のためのトリミングデータや通信パラメータを不揮発性メモリに書き込んだり書き換えたりすることが困難であるという課題がある。
【００１３】
本発明の目的は、外部端子数を増加させることなく不揮発性メモリへのトリミングデータの書込みを可能とし、これによりチップおよびモジュールの小型化を図ることができる通信制御用半導体集積回路およびそれを用いた無線通信システムを提供することにある。
本発明の他の目的は、不揮発性メモリへの書込みに要する時間を短縮して量産性を高め、製造コストを低減することが可能な通信制御用半導体集積回路およびそれを用いた無線通信システムを提供することにある。さらに、本発明は、通信制御用半導体集積回路や無線通信システム以外の半導体集積回路や電子システムに適用できる技術を提供する。
本発明のさらに他の目的は、通信処理を実行しながら発振器等の外付け電子部品のばらつきによる回路特性のずれを補正するためのデータやシステムに固有のデータを不揮発性メモリに書き込んだり書き換えたりすることが可能な通信制御用半導体集積回路およびそれを用いた無線通信システムを提供することにある。
この発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添附図面から明らかになるであろう。
【００１４】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を説明すれば、下記のとおりである。
すなわち、半導体集積回路内部に書換え可能な不揮発性メモリを設け、電子部品を含む回路の特性を測定してその特性ばらつきを補正するためのトリミングデータを上記不揮発性メモリに記憶させるようにした。また、上記トリミングデータを上記不揮発性メモリへ送って記憶させるための入力ピンおよびインタフェース回路として、テストピンのような半導体集積回路にもともと設けられているピンおよびテスト用インタフェース回路を兼用するようにした。兼用インタフェース回路としては、例えばＪＴＡＧ（Ｊｏｉｎｔ  Ｔｅｓｔ  Ａｃｔｉｏｎ  Ｇｒｏｕｐ）により決定されたバウンダリスキャンテストに関する規格で規定されているＴＡＰ（Ｔｅｓｔ  Ａｃｃｅｓｓ  Ｐｏｒｔ）と呼ばれるＪＴＡＧインタフェース回路がある。
【００１５】
上記した手段によれば、外部端子数や外付け回路を増加させることなく不揮発性メモリへのトリミングデータの書替えが可能となり、これによりチップおよびモジュールの小型化を図ることができるとともに、使用中に回路の特性が変化した場合にもトリミングデータを書き替えることができるようになる。なお、本発明によれば、電子部品のばらつきのみならず回路を構成する素子のばらつきに起因して生じる回路特性のずれも補正することができる。
【００１６】
さらに、半導体集積回路内部に書換え可能な不揮発性メモリを設け、電子部品を含む回路の特性を測定してその特性ばらつきを補正するためのトリミングデータを上記不揮発性メモリに記憶させる一方、この半導体集積回路を組み込んだシステムを制御するプログラムは、マスクＲＯＭや電気的に消去及び書き込み可能な不揮発性メモリ（電気的に消去及び書き込み可能なＲＯＭ（ＥＥＰＲＯＭ）またはフラッシュメモリ）等のプログラムメモリに格納するようにした。このマスクＲＯＭはオンチップのＲＯＭでも良いし、別個のチップとして形成されたものでも良い。
【００１７】
上記した手段によれば、プログラムを不揮発性メモリに書き込む処理が不要になるため、不揮発性メモリへの書込みに要する時間を短縮して量産性を高め、製造コストを低減することが可能になる。プログラムを格納するマスクＲＯＭを別個のチップとして形成し、該マスクＲＯＭと前記不揮発性メモリを内蔵する半導体集積回路とを搭載したシステムにおいては、上記トリミングデータを上記不揮発性メモリへ送って記憶させるための入力ピンおよびインタフェース回路として、テストピンのような基板にもともと設けられているピンやそのインタフェース回路を兼用するようにする。これによりモジュールの小型化を図ることができる。
【００１８】
さらに、半導体集積回路内部に書換え可能な不揮発性メモリを設け、電子部品を含む回路の特性を測定してその特性ばらつきを補正するためのトリミングデータと、該半導体集積回路が組み込まれるシステムに固有のデータとを上記不揮発性メモリに記憶させるようにした。また、上記トリミングデータとシステムに固有のデータを上記不揮発性メモリへ送って記憶させるための入力ピンおよびインタフェース回路として、テストピンのような半導体集積回路にもともと設けられているピンおよびそのインタフェース回路を兼用するようにした。
【００１９】
上記した手段によれば、外部端子数を増加させることなく不揮発性メモリに格納されるトリミングデータとシステムに固有のデータを書き替えることが可能となり、これによりチップおよびモジュールの小型化を図ることができるとともに、半導体集積回路がモジュール基板に実装された状態で必要なデータを書き込んだり、システム構成や動作モードが変更になったような場合にもそれに応じてデータを書き替えたりすることができるようになる。
【００２０】
【発明の実施の形態】
以下、本発明の好適な実施例を図面に基づいて説明する。
図１は、本発明をブルートゥースのような無線通信システムに適用した場合のシステム構成例を示すブロック図である。
図１の実施例の無線通信システムは、送信信号の変調や受信信号の復調、送受信信号の周波数変換を行なう高周波ＩＣ１００、ベースバンド処理や高周波ＩＣ１００の制御を行なうベースバンドＬＳＩ２００などから構成されている。これらの半導体チップとその外付け素子が、チップ間を接続する配線が形成されたセラミック基板のような基板上に実装されて、通信用モジュール３００として構成されている。
【００２１】
図示しないが、高周波ＩＣ１００には、送信系回路と受信系回路が設けられる。図１においては、送信系回路と受信系回路を一体にしたものが高周波回路１１０として示されている。この実施例では、アンテナＡＮＴを駆動して送信を行なうパワーアンプ（高周波電力増幅回路）は示されていないが、パワーアンプが必要な場合には、高周波ＩＣ１００とアンテナＡＮＴとの間にパワーアンプやそのバイアス回路、インピーダンス整合回路、送受信切替えスイッチ等を有するモジュールが接続される。
【００２２】
図１に示されているように、この実施例の無線通信システムにおいては、高周波ＩＣ１００の外部端子Ｐ１，Ｐ２に水晶振動子ＸＴＡＬと容量Ｃ１，Ｃ２が接続され、チップ内部のインバータＩＮＶおよび抵抗Ｒ１，Ｒ２とにより水晶発振回路１２０が構成されている。特に制限されるものでないが、外付けの水晶振動子ＸＴＡＬとしては、例えば１３ＭＨｚのような固有振動数を有する振動子が用いられている。この実施例においては、水晶発振回路１２０に可変容量ダイオードＤＶが設けられており、この可変容量ダイオードＤＶへの印加電圧を変えることで発振周波数を調整できるようにされている。
【００２３】
そして、この実施例の高周波ＩＣ１００には、上記水晶発振回路１２０で生成された１３ＭＨｚの発振信号を基準信号とし通信に使用される高周波信号を発生する高周波源として機能するＰＬＬ回路などからなる逓倍回路１３０が設けられている。また、水晶発振回路１２０で生成された１３ＭＨｚの発振信号は、基準クロック信号φｃとして外部端子Ｐ３からベースバンドＬＳＩ２００へも供給されるように構成されている。
【００２４】
なお、図１の実施例においては、水晶発振回路１２０を構成する容量Ｃ１，Ｃ２と可変容量ダイオードＤＶとして外付け素子が用いられているが、これらの素子を高周波ＩＣ１００のチップ内部に設けることも可能である。
ベースバンドＬＳＩ２００は、送信データに基づいて高周波ＩＣ１００へ送る例えば、Ｉ／Ｑ信号を生成したり高周波ＩＣ１００で復調された受信信号から受信データを抽出したりするベースバンド処理回路２１０、制御用のマイクロプロセッサ（ＣＰＵ）２２０、該ＣＰＵ２２０が実行するプログラムが格納されたプログラムメモリとしてのマスクＲＯＭ２３０、ＥＥＰＲＯＭやフラッシュメモリなどからなる不揮発性メモリ２４０、ディジタル信号をアナログ信号に変換して外部端子Ｐ４からチップ外部へ出力するＤＡ変換回路２５０、これらの回路ブロック間のデータ転送を可能にする内部バス２６０、テスト用のインタフェース回路２７０、パワーオン検出回路２８０などから構成されている。
【００２５】
上記マスクＲＯＭ２３０の記憶容量は数Ｍバイト程度、不揮発性メモリ２４０は数ｋバイトあるいはそれ以下の小容量とされる。また、マスクＲＯＭ２３０は、電気的に消去及び書き込み可能な不揮発性メモリ（電気的に消去及び書き込み可能なＲＯＭ（ＥＥＰＲＯＭ）またはフラッシュメモリ）によって形成されてもよい。また、マスクＲＯＭ２３０は別チップとして構成されても良い。すなわち、トリミングデータが格納されるメモリと、プログラムが格納されるプログラムメモリとが異なるメモリとされている。図示しないが、ベースバンドＬＳＩ２００内には、通信相手の機器と相互通信接続を行うための制御を行なうリンクコントローラと呼ばれる機能回路も設けられる。
【００２６】
本実施例では、上記テスト用のインタフェース回路２７０として、ＪＴＡＧにより決定されたバウンダリスキャンテストに関する規格で規定されているＪＴＡＧインタフェースが用いられている。さらに、該インタフェース回路２７０が接続された外部端子Ｐ５は、モジュール３００に設けられているテスト用端子Ｐ１１に接続されている。従って、この実施例では、ベースバンドＬＳＩ２００の外部端子Ｐ５とモジュール３００側のテスト用端子Ｐ１１とは１：１で対応している。図１には、インタフェース回路２７０に接続された外部端子がＰ５として１つだけ示されているが、実際にはこの外部端子Ｐ５は後述のように５本ある。
【００２７】
本実施例の無線通信システムにおいては、高周波ＩＣ１００やベースバンドＬＳＩ２００がモジュール基板に実装された状態で、水晶発振回路１２０の発振周波数を測定し、周波数のずれを補正するのに必要なトリミングデータがベースバンドＬＳＩ２００内の上記不揮発性メモリ２４０に記憶されるように構成されている。
【００２８】
そして、ＣＰＵ２２０は電源投入時にパワーオン検出回路２８０から供給されるパワーオンリセット信号またはチップ外部から端子Ｐ６にリセット信号ＲＥＳが入力されると、不揮発性メモリ２４０から該トリミングデータを読み出して、内部バス２６０を介して上記ＤＡ変換回路２５０へ送る。すると、そのトリミングデータがアナログ電圧に変換されて、その出力電圧が外部端子Ｐ４および抵抗Ｒ３を介して水晶発振回路１２０の可変容量ダイオードＤＶに印加されて発振周波数が調整される。
【００２９】
ＤＡ変換回路２５０には、不揮発性メモリ２４０から読み出されたトリミングデータを保持するレジスタ２５１が設けられている。不揮発性メモリ２４０に格納されているトリミングデータを、内部バス２６０を介して上記ＤＡ変換回路２５０に供給する代わりに、図１に矢印Ａで示すように、直接ＤＡ変換回路２５０に供給するようにしてもよい。この場合、不揮発性メモリ２４０の構成によっては、ＤＡ変換回路２５０内にレジスタ２５１を設けなくてもよいようにすることができる。
【００３０】
図１に示されているようなブルートゥース規格の通信が可能なシステムを搭載したデバイスにおいては、デバイス間で通信の同期をとるために、３１２．５μ秒（３．２ｋＨｚ）刻みで動作するブルートゥースクロックと呼ばれる共通の時計によって時間管理を行なうこと、およびそのクロックの精度を±２０ｐｐｍ以内に収めることが、ブルートゥースの規格により規定されている。
【００３１】
このように、ブルートゥース通信システムにおいては、基準となるクロック信号に要求される精度が非常に高いため、上記実施例のように、水晶発振回路１２０の周波数を調整する機能が必要とされる。図１のシステムでは、ブルートゥースクロックを刻むためのクロック信号は、水晶発振回路１２０で生成された１３ＭＨｚの発振信号φｃをベースバンドＬＳＩ２００側の分周回路（図示略）で分周することによって形成される。
【００３２】
なお、実施例では、チップに内蔵された不揮発性メモリ２４０に水晶発振回路１２０のトリミングデータを格納するとしたが、それ以外にも例えばＩＤコードなどのアプリケーションデータを、チップ外部からあるいはＣＰＵが直接不揮発性メモリ２４０に格納することができる。また、不揮発性メモリ２４０には、全製品毎に異なる固有の識別コード与えるためのＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  ａｄｄｒｅｓｓ）アドレスを格納するようにすることができる。さらに、実施例においては、水晶発振回路１２０の発振周波数を調整するＤＡ変換回路２５０がベースバンドＬＳＩ２００内に設けられているが、ＤＡ変換回路２５０をチップ外部に設け、ベースバンドＬＳＩ２００からトリミングデータをディジタル値のまま出力させるように構成することも可能である。
【００３３】
次に、ブルートゥース通信により実現されるネットワークにおける時間管理について説明する。
図４は、ブルートゥースにより互いにデータ通信可能に接続されたピコネットと呼ばれるネットワークの構成例を示す。１つのピコネットは、１台のマスタ機器に対して最大７台のスレーブ機器が接続可能なネットワークである。図４のピコネットは、マスタ機器としてのＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）６１０と、スレーブ機器としての携帯電話機６２０、ヘッドセット６３０およびデジタルカメラ６４０とにより構成されている。
【００３４】
マスタ機器は、アクティブなスレーブ機器に対してアクティブメンバアドレスを交付してスレーブ機器との間の通信を管理するとともに、ブルートゥースクロックの同期管理を行なう。図３には、マスタ機器とスレーブ機器との間におけるブルートゥースクロックの同期の取り方が示されている。
【００３５】
マスタ機器は同期処理の前に、近隣に存在するアクティブなスレーブ機器を認知するために、先ずＩＱパケットと呼ばれる問合せパケットを一律に送信するブロードキャスト（放送）を行ない、該送信に応じてスレーブ機器から返送されるＦＨＳパケットと呼ばれる応答パケットを受信して、ピコネットに参加するスレーブ機器を把握する。スレーブ機器では、マスタ機器からの問合せ信号がないかスキャンする処理が行われており、このスキャン処理によりスレーブ機器がマスタ機器側からの問合せ信号を受信できた場合に、スレーブ機器はマスタ機器へ応答パケットを送信する。
【００３６】
次に、マスタ機器は、図３に示されているような個々のスレーブ機器の呼び出し処理を順次行なう。呼び出し処理では、マスタ機器がピコネット内のアクティブなスレーブ機器に対して順番に、先ず機器を識別するためのＩＤコードが入ったＩＤパケットを送信してそれに対する応答ＩＤパケットを受信したなら、ブルートゥースクロックの同期とアドレス交換のためのＦＨＳパケットを送信し、その応答パケットの受信を行なう。
【００３７】
ＦＨＳパケットの交換により、スレーブ機器が自己のブルートゥースクロックをマスタ機器のブルートゥースクロックに合わせることによって、１つのピコネットに参加するすべての機器間でブルートゥースクロックの同期が取られる。なお、ブルートゥース通信では、３．２ｋＨｚのブルートゥースクロックの２クロック期間（６２６μｓ）を１スロットとして、このスロットごとにマスタ機器とスレーブ機器との間で交互にパケットデータを送受信することで通信が行なわれる。
【００３８】
図２は、図１に示されているベースバンドＬＳＩ内のＪＴＡＧインタフェース回路２７０の具体例を示す。
ＪＴＡＧインタフェース回路２７０は、ＩＥＥＥ１１４９．１規格で規定されているＩＣ内部のシフトスキャンテストやＩＣ間のバウンダリスキャンテスト回路のためのインタフェースを行なう回路である。
【００３９】
ＪＴＡＧインタフェース回路２７０は、外部からシリアルに入力されるテストデータやコマンドを取り込んだりチップ内の回路ブロックからのテスト結果データをチップ外部へシリアルに出力するためのＴＡＰ（Ｔｅｓｔ  Ａｃｃｅｓｓ  Ｐｏｒｔ）とされるコマンド・データ入出力回路７１０と、該入出力回路７１０を制御するＴＡＰコントローラ７２０と、コマンド／データ入出力回路７１０により取り込まれた命令（コマンド）を解読し上記命令に対応するテスト制御を行なうテスト制御部７３０とから構成される。
【００４０】
ＴＡＰコントローラ７２０は、３つの専用外部端子５０１〜５０３に接続され、これらの端子５０１〜５０３から、テストモードを指定するためのテストモードセレクト信号ＴＭＳ、テスト用クロックＴＣＫ、非同期リセット信号ＴＲＳＴがそれぞれ入力可能に構成されている。ＴＡＰコントローラ７２０は、これらの信号ＴＭＳ，ＴＣＫ及びＴＲＳＴの信号レベルに基づいてコマンド・データ入出力回路７１０内のレジスタ７１１〜７１５やマルチプレクサ７１６を制御する制御信号を形成する。
【００４１】
コマンド／データ入出力回路７１０は、入力ポート用端子５０４からのテストデータを出力ポート用端子５０５へシフトするときに使用するバイパスレジスタ７１１、入出力データのシリアル／パラレル変換を行なうシフトレジスタ７１２、内部のテスト方法を制御するコマンドが格納されるインストラクションレジスタ（ＳＤＩＲ）７１３、チップ固有の製造識別番号を設定するためのデバイスＩＤレジスタ（ＩＤＣＯＤＥ）７１４、各回路ブロックへ特定の信号を伝える場合に使用するデータレジスタ（ＳＤＤＲ）７１５、バイパスレジスタ７１１とシフトレジスタ７１２のパスの切り換えを行なうマルチプレクサ７１６（ＭＵＸ）等により構成されている。
【００４２】
また、コマンド／データ入出力回路７１０には、コマンドまたはデータＴＤＩの入力端子５０４とテスト結果データＴＤＯの出力端子５０５が設けられており、入力されたテストデータＴＤＩは上記シフトレジスタ７１２を介して各レジスタ７１３〜７１５へ供給される。また、コマンド／データ入出力回路７１０内の上記レジスタ７１３〜７１５には、スキャンパスを構成する信号線７４０を介してチップ内の各回路ブロックからの値を格納することができるように構成されている。
【００４３】
テスト制御部７３０には、上記コマンドデコーダ７３１およびテストモード判定回路７３２の他に、他の半導体集積回路との信号のやり取りをテストするためのバウンダリスキャンパスを制御するバウンダリスキャン制御回路７３３や、シフトスキャンテストの際にスキャンパス上のフリップフロップをシフト動作させるスキャン用クロック信号ＣＫ２，ＣＫ３およびモニタ信号の取込みを行なわせるラッチ用クロック信号ＣＫ１等、テスト用のクロック信号および制御信号を生成するテスト回路７３４が設けられている。
【００４４】
テストコマンドがデータ入力端子５０４よりコマンド／データ入出力回路７１０に入力されると、インストラクションレジスタ７１３に格納され、コマンドデコーダ７３１がこのコマンドをデコードする。そして、テストモード判定回路７３２は、コマンドデータ７３１のデコード結果より、テストモードの種類とどの回路ブロックのテストが実行されるのかを判定し、判定結果に応じて制御信号を生成する。
【００４５】
ＪＴＡＧ規格では、上記インストラクションレジスタ７１３に設定される命令として、幾つかの必須命令が用意されているが、その他にオプション命令を何個か設けることができるようにされている。この実施例では、そのオプション命令の一つとして上記不揮発性メモリ２４０へチップ外部から供給されるデータを書き込むための書込みコマンドとベリファイコマンドが設けられる。
【００４６】
テストモード判定回路７３２は、コマンドデータ７３１のデコード結果より、入力コマンドがメモリ書込みコマンドであった場合には、不揮発性メモリ２４０を有効にするイネーブル信号や書込み制御信号を生成して不揮発性メモリ２４０へ供給すると共に、データ入力端子５０４より入力された書込みアドレスおよび書込みデータをチップ内部のスキャンパスを通して不揮発性メモリ２４０へ転送する。
【００４７】
入力コマンドがメモリのベリファイコマンドであった場合には、テストモード判定回路７３２は、不揮発性メモリ２４０を有効にするイネーブル信号や読出し制御信号を生成して不揮発性メモリ２４０へ供給し、データ入力端子５０４より入力された読出しアドレスをチップ内部のスキャンパスを通して不揮発性メモリ２４０へ転送してデータの読出しを実行させる。そして、不揮発性メモリ２４０より読み出されたデータを、同じくスキャンパスを通してコマンド／データ入出力回路７１０へ転送し、データ出力端子ＴＤＯより出力させる。
【００４８】
また、ＪＴＡＧインタフェース以外あるいはこれと兼用可能なインタフェースとして、ＣＰＵを内蔵したＬＳＩにエミュレータを接続してＣＰＵが実行するプログラムのデバッグを行なうデバックインタフェースがある。デバッグインタフェースを用いると、ＣＰＵによる命令の実行やメモリ空間へのアクセスが可能であるので、上記不揮発性メモリ２４０をＣＰＵ２２０のメモリ空間に割り当てておいて書込み用高電圧の印加などデータの書き替えに必要な信号の制御を行なえるようにすれば、モジュール実装状態でデバッグインタフェースを用いて不揮発性メモリ２４０にデータの書込みを行なうこともできる。
【００４９】
上記のように、ＬＳＩのテストのためにもともと設けられているインタフェース回路を利用して、不揮発性メモリ２４０へのトリミングデータ等の書込みを行なえるように構成することにより、専用の外部端子を設けることなく書込みが可能となる。これにより、外部端子数の増加を回避することができ、ひいてはチップサイズおよびモジュールサイズの低減を図ることができる。
【００５０】
次に、本発明の第２の実施例を、図５を用いて説明する。
第２の実施例は、水晶発振回路１２０の周波数トリミングデータのうち、上位数ビット（例えば５ビット）を不揮発性メモリ２４０に格納しおいて、下位数ビット（例えば３ビット）をＣＰＵ２２０によって設定可能なレジスタ２５２から与えるようにしたものである。かかる構成によれば、発振周波数が環境に依存して変化するシステムに対しても対応することができる。
【００５１】
一般に、ブルートゥースシステムでは、図４に示すようにマスタ機器６１０とスレーブ機器６２０〜６４０が各々ブルートゥースクロックを備えていて、互いに同期を取りながら通信を行なう。規格によりどの機器のクロックも３．２ｋＨｚ±２０ｐｐｐｍの精度をもつが、完全に一致させることはできないので、時間が経過するにつれてずれが生じる。従来のブルートゥースシステムでは、クロックがずれても発振回路の周波数を修正することはせず、生じたずれはスレーブ機器側においてクロックの値を変更することで対処していた。したがって、スレーブ機器は定期的にクロックの値を補正する必要があった。
【００５２】
これに対し、図５の実施例のように、発振周波数のトリミングデータのうち下位数ビットをレジスタ２５２により変更可能であれば、周波数のずれを定量的に算出して発振回路の周波数自体を修正することにより、それ以降はブルートゥースクロックのずれをなくして修正を不要にすることができるという利点がある。具体的には、例えば最初の同期時点から１００万スロット経過した時点でのマスタ機器とスレーブ機器のブルートゥースクロックのずれが１スロットであれば、スレーブ機器側で発振回路の周波数を１ｐｐｍだけ補正するようにトリミングデータの下位数ビットを変更すれば良い。
【００５３】
これにより、スレーブ機器側のブルートゥースクロックをマスタ機器側のブルートゥースクロックに正確に追従させることができる。図４に示されているようなピコネットにおいては、通信品質の維持、向上にとって、周波数の絶対値が正しいことはあまり重要ではなく、マスタとスレーブのブルートゥースクロックの周波数が一致していることが重要である。従って、上記のようにスレーブ側の発振周波数のトリミングデータのうち下位数ビットをレジスタ２５２により変更することで、通信品質を向上させることができる。
【００５４】
さらに、温度など使用環境の変化で周波数が大きく変動するようなシステムにおいては、本実施例のようにシステム稼動中に発振周波数を微調整することができれば、長時間に亘って通信品質を維持することができる。また、素子の特性が経年変化したような場合、出荷時のトリミングデータでは発振周波数の正確な調整ができなくなるおそれがあるが、レジスタ２５２の値を変更することで不揮発性メモリ２４０内のトリミングデータを書き替えなくても発振周波数を所望の値に調整することができるようになる。
【００５５】
なお、図５の第２実施例においては、プログラムを格納したマスクＲＯＭ２３０が外付け素子として構成され、内部バス２６０が接続された外部端子Ｐ７に接続されている。図５にはテスト用インタフェース回路２７０が示されていないが、これは図示の都合で省略したもので、この実施例においても、不揮発性メモリ２４０へのトリミングデータの書込みは、図示しないＪＴＡＧインタフェース回路から行なうことができる。
【００５６】
また、図５には、トリミングデータの下位数ビットをレジスタ２５２から与えるようにしたものが示されているが、レジスタの代わりに、“００１”，“０１０”，……“１１１”のような複数の固定コードを与える手段と、ＣＰＵ２２０からの指令によりこれらのコードの中から所望のものを選択してＤＡ変換回路２５０へ供給するセレクタとを設けるようにしても良い。固定コードを与える手段としては、例えばインバータとその入力端子に接続されたプルアップもしくはプルダウンの抵抗とを組み合わせた回路や不揮発性記憶素子を含む論理回路などが考えられる。
【００５７】
以上、実施例を用いて水晶発振子を有する発振回路の周波数のトリミングについて説明したが、送信信号を増幅するパワーアンプの最大出力電力を調整する制御電圧の生成など、発振子以外の外付けの電子部品の電圧調整を行なう場合は勿論、チップ内部の回路の動作条件の設定やモード変更等にも本発明を利用することができる。
【００５８】
次に、本発明の他の実施例を説明する。なお、以下に説明する実施例は、ベースバンドＬＳＩ２００内の不揮発性メモリ２４０に発振周波数のトリミングデータ以外のデータを記憶するようにしたものである。
【００５９】
図６の実施例は、不揮発性メモリ２４０に通信状態パラメータや高周波ＩＣの制御パラメータを格納しておいて、通信開始前にベースバンドＬＳＩ２００から高周波ＩＣ１００内のパラメータ設定レジスタ１４０へシリアル転送するようにしたものである。ベースバンドＬＳＩ２００には、不揮発性メモリ２４０からパラレルに読み出されたパラメータをシリアルデータに変換するパラレル−シリアル変換回路２９０が設けられている。この実施例は、パラメータが異なる複数の通信モードを有するシステムに用いる場合や、適用されるユーザシステムによって通信パラメータが異なるような場合に有効である。
【００６０】
なお、この実施例は、第１の実施例にように、不揮発性メモリ２４０に格納したトリミングデータにより高周波ＩＣ１００側の水晶発振回路１２０の周波数を調整する機能を否定するものでなく、不揮発性メモリ２４０に周波数のトリミングデータと通信パラメータの両方を格納しておくようにすることができる。
【００６１】
図７および図８は、ＬＳＩのモードを設定する端子の代わりに、不揮発性メモリ２４０に格納したモード設定データを利用するようにしたものである。ブルートゥースの通信システムを例にとって説明すると、高周波ＩＣとして、ベースバンドＬＳＩとの間の信号のやり取りの仕方が異なる各社各様のものが複数提供されており、セットメーカにとっては任意の高周波ＩＣを選択してベースバンドＬＳＩと組み合わせて使用できるのが便利である。
【００６２】
図７に示されているベースバンドＬＳＩ２００は、ベースバンド処理回路２１０の高周波ＩＣとのインタフェース部に、端子の機能や仕様が異なる複数の高周波ＩＣと接続可能なインタフェースが設けられており、組み合わされる高周波ＩＣに応じたインタフェースに切り替えるためのセレクタＳＥＬが外部端子Ｐ８との間に設けられている。そして、このセレクタＳＥＬは、不揮発性メモリ２４０に格納されているモード設定データにより切替えが行なわれるように構成される。しかも、この不揮発性メモリ２４０に格納されているモード設定データによるセレクタＳＥＬの切替えは、第１の実施例（図１）で説明したパワーオン検出回路による電源立上りの検出等により実行されるようにされる。
【００６３】
また、この実施例のベースバンドＬＳＩ２００においては、例えばモジュールに搭載されて組み合わされる高周波ＩＣが決定した段階で、その高周波ＩＣの端子に応じたインタフェースに切り替えるためのモード設定データを、ＪＴＡＧインタフェース回路２７０により不揮発性メモリ２４０に書き込むようにする。すると、電源が投入された時点でＣＰＵ２２０が、モード設定データを不揮発性メモリ２４０から読み出してセレクタＳＥＬへ送り、接続されている高周波ＩＣ１００に適したインタフェースや端子機能を選択するように切替えが行なわれる。従って、どのインタフェースや端子機能を使用するか指定するモード設定を行なう外部端子を設ける必要がない。
【００６４】
この実施例によれば、従来のベースバンドＬＳＩ２００ではモード設定端子の設定により行なっていた端子機能の選択を不揮発性メモリ２４０への書込みにより行なうことができ、しかも不揮発性メモリ２４０への書込みはＬＳＩにもともと設けられているＪＴＡＧインタフェース回路２７０を用いて行なうことができるため、端子数を減らしひいてはチップサイズを低減することができるという利点がある。なお、セレクタＳＥＬには、不揮発性メモリ２４０から読み出されたモード設定データを保持するレジスタ（図示省略）が設けられる。
【００６５】
本実施例は、上記のような高周波ＩＣとのインタフェースの切替えのみでなく、例えば図８のように、汎用マイコンあるいはＡＳＳＰ（特殊用途向け標準ＩＣ）において外部拡張メモリ４１０として、例えば１６ビットまたは３２ビットのいずれのメモリに設定するかなど、機能の選択あるいは動作モードの指定などをユーザが自由にできるようにしたい場合にも適用することができる。
【００６６】
このようなシステムにおいては、ＣＰＵが動作を開始するときにはシステムの状態が確定している必要があるので、前記実施例で説明したように、パワーオン検出回路からのパワーオンリセット信号等により最初に不揮発性メモリ２４０のデータをセレクタＳＥＬに供給して状態を確定させるようにするのが良い。図８のシステムでは、ＣＰＵ２２０が動作を開始するときに外部バス４６０が１６ビットと３２ビットのいずれであるか確定しかつそれに応じてセレクタＳＥＬの選択状態が確定していないと、ＣＰＵ２２０は外部メモリ４１０をアクセスすることすらできない。
【００６７】
図１，図５、図６、図７，図８の不揮発性メモリ２４０は、単層ポリシリコンゲートを有する不揮発性メモリとしてのフラッシュメモリで構成されて良い。以下その構成について説明する。
【００６８】
図１０には、フラッシュメモリとされた不揮発性メモリ２４０に含まれる複数の不揮発性記憶素子のうちの１つの記憶素子１３００、外部端子部分Ｐ６、Ｐ７、Ｐ８などに結合された外部入出力回路及びＣＰＵ２２０やベースバンド処理回路２１０などのロジック回路に含まれるｎチャネル型のＭＩＳトランジスタの断面構造が概略的に示される。
【００６９】
ロジック回路に含まれるＭＩＳトランジスタＭＬＧｎは、ｐ型半導体基板１２００に形成されたｐ型ウェル領域１２１０内に形成される。前記Ｐ型ウェル領域１２１０は素子分離領域１２３０で分離される。ＭＩＳトランジスタＭＬＧｎは、たとえば、膜厚４ｎｍのゲート酸化膜（Ｔｏｘ１）ＧＯ１、膜厚２００ｎｍのｎ型ポリシリコン膜からなるゲートＧＴ１、ｎ型領域からなるソースＳＴ１、及びｎ型領域からなるドレインＤＴ１によって構成される。外部入出力回路用のＭＩＳトランジスタＭＩＯｎは、前記ｐ型半導体基板１２００に形成されたｐ型ウェル領域１２１０内に形成される。Ｐ型ウェル領域１２１０は分離領域１２３０で分離される。ＭＩＳトランジスタＭＩＯｎは、たとえば、膜厚８ｎｍのゲート酸化膜ＧＯ２（Ｔｏｘ２）、膜厚２００ｎｍのｎ型ポリシリコン膜からなるゲートＧＴ２、ｎ型領域からなるソースＳＴ２、及びｎ型領域から成るドレインＤＴ２から構成される。
【００７０】
フラッシュメモリ２４０の不揮発性記憶素子１３００は、ＭＩＳトランジスタＭＦＳｎとコントロールゲートＣＧＴを構成するカップリング容量電極とによって構成される。即ち、ＭＩＳトランジスタＭＦＳｎは、前記ｐ型半導体基板１２００に形成されたＰ型ウェル領域（ｐ−ｗｅｌｌ）１２１０内に形成される。Ｐ型ウェル領域は前記素子分離領域１２３で分離される。
【００７１】
ＭＩＳトランジスタＭＦＳｎは、ｎ型領域のソースＳＴ３、ｎ型領域のドレインＤＴ３、前記ソースＳＴ３とドレインＤＴ３ｎの間のチャネルの上に設けられた前記膜厚８ｎｍのゲート酸化膜ＧＯ３（Ｔｏｘ２）、そして当該ゲート酸化膜ＧＯ３の上に配置された前記膜厚２００ｎｍのｎ型ポリシリコン膜からなるフローティングゲートＦＧＴによって構成される。前記コントロールゲートＣＧＴは前記ｐ型半導体基板１２００に形成されたｎ型ウェル領域（ｎ−ｗｅｌｌ）１２２０とされる。ｎ型ウェル領域１２２０は前記素子分離領域１２３０で分離される。上記ｎ型ウェル領域１２２０の上には、前記ゲート酸化膜ＧＯ３を介して前記フローティングゲートＦＧＴの延在部分が重ねられている。
【００７２】
図１０の断面図では、ＭＩＳトランジスタＭＦＳｎとコントロールゲートＣＧＴとの間でフローティングゲートＦＧＴが途中で途切れている様に図示されているが、実際は、一体的に構成されている。尚、ｎ型ウェル領域１２２０には、コントロールゲートＣＧＴの電極接続の為のｎ＋型領域２０３０が形成される。
【００７３】
このように、フラッシュメモリ２４０の不揮発性記憶素子１３０は、単層ポリシリコンプロセス、すなわち、標準的なＣＭＯＳ論理回路ＬＳＩを形成する際に利用される標準ＣＭＯＳプロセスによって、ロジック回路と同一の半導体基板上に形成可能な構造とされる。したがって、プログラムメモリ２３０がマスクＲＯＭとされるような場合、製造プロセスの追加無く、上記不揮発性記憶素子１３０が形成できるので、特に有効である。
【００７４】
プログラムメモリ２３０がＥＥＰＲＯＭやフラッシュメモリの様な２層ポリシリコンプロセスで形成される場合、図１０に示される単層ポリシリコンゲートの不揮発性記憶素子１３００は利用されなくてもよい。この場合、不揮発性記憶素子１３００は２層ゲート構造（フローティングゲート及びコントロールゲートの２層構造）とされて良い。
【００７５】
図１１は、上記図１０の不揮発性記憶素子１３００を用いた場合の回路構成を示す。図１２は、図１１の回路の書き込み時と読み出し時の動作波形図である。図１１において、４０は書き込みのためのデータを蓄積するレジスタ、４１はフラッシュメモリセルとされる不揮発性記憶素子１３００である。本発明のフラッシュメモリの動作を本図を用いて説明する。
【００７６】
まず、ＳＥＴ信号を”Ｈ”にしてフラッシュメモリに書き込むべきデータをレジスタ４０内のノードＮＳにセットする。この書き込むべきデータは、例えば、トリミングデータである。
フラッシュメモリにデータを書き込む場合、まずプログラムを許可するＰＲＯＧ信号を”Ｌ”にしてデータ信号をＭＯＳトランジスタ４２に送り込む。データが”１”であれば、ＭＯＳトランジスタ４２がオン状態になる。一方、ソースライン信号ＳＬとフラッシュメモリセルのゲートであるコントロールゲートＣＧにはフラッシュメモリを書き込むために必要な電圧、たとえば、５Ｖを印加するとフラッシュメモリのトランジスタ４４はオン状態になる。
【００７７】
また、ＭＯＳトランジスタ４３のスルーゲートＴＧにも電圧を印加して、このトランジスタをオン状態にする。このときソースラインＳＬからＭＯＳトランジスタ４４，４３，４２の経路で電流が流れることになる。この時ドレイン電圧が高い状態で流れる電流により、ＭＯＳトランジスタ４４のチャネルにホットエレクトロンが発生し、フローティングゲートであるＶｆに酸化膜のバリアを超えてエレクトロンが注入される。
【００７８】
これにより、ＭＯＳトランジスタ４４のしきい値電圧が上昇し”１”が書き込まれることになる。書き込みデータが”０”の場合はＭＯＳトランジスタ４２がオフ状態であり、この時にはＭＯＳトランジスタ４４には電流が流れず、そのしきい値電圧は変化しない。注入されたエレクトロンは、フローティング電極に蓄積されるので、電源を切っても放電せず状態が保持される。
【００７９】
一方、読み出し時にはコントロールゲートＣＧをホットエレクトロンが発生しない”Ｈ”の電圧、たとえば１．８Ｖを印加する。もし、フローティングゲートＶｆにエレクトロンが注入されていれば、ＭＯＳトランジスタ４４のしきい値電圧が高くなっているので、オンしない。エレクトロンが注入されていなければ、しきい値が低いままなのでオンする。読み出し時には、／ＲＥＡＤ信号により、ＰＭＯＳトランジスタ４６をオン状態にする。また、スルーゲートＴＧにも所定の電圧を印加してＭＯＳトランジスタ４３をオンにする。このとき、データが”１”の時であれば電流がながれず、ｂｉｔ端子電圧が高くなり”Ｈ”を出力する。また、データが”０”の時であれば電流が流れて、ｂｉｔ端子電圧が低くなり”Ｌ”を出力することになる。
なお、本実施例においては、図１１で示すように、書き込みのために高電圧が印加されることのあるＭＯＳトランジスタ４３，４４，４５には高耐圧のＭＯＳトランジスタを用いている。
【００８０】
以上のようなフラッシュメモリ４１とその回路により、電気的な書き込みと読み出しが行われる。
【００８１】
図１３及び図１４は、図１１に示される回路に対してフラッシュメモリセル４１の読み出し時の確実性、信頼性を高めたものであって、図１３はプログラムビットの回路の実施例であり、図１４はフラッシュメモリセル部のレイアウトの実施例である。
【００８２】
フラッシュメモリセル４１は、フローティング電極（ゲート）Ｖｆに電子を蓄積することによってデータを保持する。本発明の場合、フローティング電極も通常のＭＯＳトランジスタのゲート電極と同じ構造のゲート電極を用いるために、ゲート酸化膜にはエレクトロンの蓄積のために特殊な酸化膜は用いない。しかし、そのために素子によっては、酸化膜のリーク電流が大きく、蓄積された電荷が酸化膜を等して抜けてしまうことが考えられる。本実施例においては、このような状況を鑑み、フラッシュメモリセル２セルを用いて１ビットに構成して信頼性を高めた方式である。
【００８３】
フラッシュメモリセル４１はセル２つによって構成されている。読み出しや書き込みの方式は図１１で示した実施例と同様である。書き込み時、書き込みデータが”０”であれば２つのメモリセル両者ともにエレクトロンを注入動作はしないし、書き込みデータが”１”であれば２つのメモリセル両者ともエレクトロン注入動作を行い、それぞれＭＯＳトランジスタ４４のしきい値を高くする。
【００８４】
読み出し時、２つのメモリセル４４から読み出されたデータは、ゲート５０により論理和を得る。すなわち、読み出されたデータが”０”と”０”であれば出力する読み出しデータ（ｒｅａｄ  ｄａｔａ）は”０”であり、読み出されたデータが”０”と”１”，”０”と”１”，”１”と”１”の場合には、出力する読み出しデータは”１”である。このようにすることによって、フラッシュメモリセルの１つのフローティング電極に蓄積された電子が酸化膜の欠陥等、なんらかの原因によって抜けてしきい値がさがっても、間違ったデータを出力しないプログラムビットを構成でき、信頼性を高めることができる。
【００８５】
また、本実施例においては、読み出しデータ（ｒｅａｄ  ｄａｔａ）は、容量に電荷を保持するダイナミックタイプラッチではなく、フリップフロップ回路を用いたスタティックなレジスタ５９を用いている（なお、読み出し時にはＳＥＴ信号は”Ｌ”である）。これは、本プログラムビットの読み出しデータは半導体チップに電源が投入されている限りは常に有効でなければならないからである。
【００８６】
図１４において、５１はプログラムビットの境界を示している。また、５２はフラッシュメモリセルのゲートとなるＮウェル領域、５３はＰ＋拡散層領域、５４はＮ＋拡散層領域、５５はフローティング電極、５６はＰウエル領域、５７はＮ＋拡散層領域、５８はスルーゲートＴＧとなるゲート電極である。レイアウト図に示すようにフローティング電極が２つあっても、フラッシュメモリセルのゲート電極となるＮウエル領域５２は回路図上共通になるので、Ｎウエル領域は分断しなくてもよく、最小の面積で２つのフラッシュメモリセルを構成できる。このことは、プログラムビットを多ビット並べる場合も同様である。
【００８７】
なお、このような方式の場合でも、プログラムビットの回路規模が大きく、専有面積が増大する問題があるが、トリミングデータに用いる場合には多くのビットが必要なわけではなく、実質的にはチップ面積の増大をほとんどまねくことのない大きさにすることが可能である。
【００８８】
本実施例に従うと、以下の効果が得られる。
外部端子数および外付け回路を増加させることなく不揮発性メモリへのトリミングデータの書替えが可能となり、これによりチップおよびモジュールの小型化を図ることができるとともに、使用中に電子部品の特性が変化した場合にもトリミングデータを書き替えることができるようになる。
【００８９】
また、ユーザプログラムを不揮発性メモリに書き込む処理が不要になるため、不揮発性メモリへの書込みに要する時間を短縮して量産性を高め、製造コストを低減することが可能になるという効果がある。
【００９０】
さらに、半導体集積回路がモジュール基板に実装された状態で必要なデータを書き込んだり、システム構成や動作モードが変更になったような場合にもそれに応じてデータを書き替えたりすることができるようになる。
【００９１】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、ＬＳＩ内部に複数の回路ブロックがあって動作モードに応じていずれかあるいは幾つかの回路ブロックの動作を選択的に停止させる場合にも本発明を適用できる。
【００９２】
また、本発明は、発振回路の周波数の調整のみならず、ＬＳＩに内蔵されている電圧レギュレータやＤＡ変換回路などのアナログ回路の電圧トリミングにも適用することができる。さらに、論理ＬＳＩでは、例えばクリティカルパス上に互いに遅延量が異なる複数の遅延回路を設けておいて、テスト結果に応じて信号が通過する遅延回路を適宜選択してタイミングを調整するような場合にも本発明を適用することができる。
【００９３】
さらに、前記実施例おいては、プログラムを格納する不揮発性メモリとしてマスクＲＯＭを使用したが、代わりにフラッシュメモリを使用することも可能である。
【００９４】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるブルートゥース通信機能を備えた電子機器とそれを構成する通信用モジュールに適用した場合について説明したが、この発明はそれに限定されるものでなく、ブルートゥース機器と同様に発振回路を有する無線ＬＡＮ機能を搭載した電子機器さらには有線式の通信システムを構成するモジュールやＬＳＩであって、基板上あるいはＬＳＩチップ内部にトリミングを要する素子が存在するものやモード設定手段を有するものに広く利用することができる。
【００９５】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
すなわち、本発明に従うと、外部端子数および外付け回路を増加させることなく不揮発性メモリへのトリミングデータの書替えが可能となる。
【図面の簡単な説明】
【図１】本発明をブルートゥース通信システムに適用した場合のシステム構成例を示すブロック図である。
【図２】図１に示されているベースバンドＬＳＩ内のＪＴＡＧインタフェース回路２７０の具体例を示すブロック図である。
【図３】マスタ機器とスレーブ機器との間におけるブルートゥースクロックの同期の取り方を示すタイムチャートである。
【図４】ブルートゥースにより互いにデータ通信可能に接続されたピコネットと呼ばれるネットワークの構成例を示す概念図である。
【図５】本発明をブルートゥース通信システムを構成するベースバンドＬＳＩに適用した場合の第２の実施例を示すブロック図である。
【図６】本発明をブルートゥース通信システムを構成するベースバンドＬＳＩに適用した場合の第３の実施例を示すブロック図である。
【図７】本発明をブルートゥース通信システムを構成するベースバンドＬＳＩに適用した場合の第４の実施例を示すブロック図である。
【図８】本発明を汎用マイコンＬＳＩに適用した場合の実施例を示すブロック図である。
【図９】従来のブルートゥース通信システムの構成例を示すブロック図である。
【図１０】フラッシュメモリとされた不揮発性メモリ２４０に含まれる複数の不揮発性記憶素子のうちの１つの記憶素子１３０、外部端子部分Ｐ６、Ｐ７、Ｐ８などに結合されたの外部入出力回路及びＣＰＵ２２０やベースバンド処理回路２１０などのロジック回路に含まれるｎチャネル型のＭＩＳトランジスタの断面構造が概略的図である。
【図１１】図１０の不揮発性記憶素子１３００を用いた場合の回路構成を示す。
【図１２】図１１の回路の書き込み時と読み出し時の動作波形図である。
【図１３】プログラムビットの回路図である。
【図１４】フラッシュメモリセル部のレイアウト図である。
【符号の説明】
１００  高周波ＩＣ
１１０  高周波回路（送受信回路）
１２０  水晶発振回路
１３０  逓倍回路
２００  ベースバンドＬＳＩ
２１０  ベースバンド処理回路
２２０  制御用マイクロプロセッサ（ＣＰＵ）
２３０  プログラム格納用マスクＲＯＭ
２４０  不揮発性メモリ
２５０  ＤＡ変換回路
２５１，２５２  レジスタ
２６０  内部バス
２７０  テスト用インタフェース回路
２８０  パワーオン検出回路
２９０  パラレル−シリアル変換回路
３００  通信用モジュール
【図１】
2005020349.tif 000003
【図２】
2005020349.tif 000004
【図３】
2005020349.tif 000005
【図４】
2005020349.tif 000006
【図５】
2005020349.tif 000007
【図６】
2005020349.tif 000008
【図７】
2005020349.tif 000009
【図８】
2005020349.tif 000010
【図９】
2005020349.tif 000011
【図１０】
2005020349.tif 000012
【図１１】
2005020349.tif 000013
【図１２】
2005020349.tif 000014
【図１３】
2005020349.tif 000015
【図１４】
2005020349.tif 000016