説明

半導体装置および半導体装置の動作試験方法

【課題】ROMに試験用プログラムを記憶させることができない場合にも初期動作の試験が可能な半導体装置の実現。
【解決手段】CPUコア11と、ROM13と、RAM14と、アドレス信号をデコードして、ROMまたはRAMの選択信号を発生するROM/RAM選択アドレスデコーダ15と、スタンバイ制御回路19と、RAM、ROM/RAM選択アドレスデコーダおよびスタンバイ制御回路の電源を、通常電源とバックアップ電源の間で切り替えるバックアップ電源切換機構と、を備え、スタンバイ制御回路は、スタンバイモードから通常動作状態に変化すると、CPUコアがROMの替わりにRAMをアクセスするように、ROM/RAM選択アドレスデコーダを設定可能であり、CPUコアがRAMに記憶された初期動作プログラムにしたがって起動動作を実行可能である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体装置および半導体装置の動作試験方法に関する。
【背景技術】
【0002】
マイクロコンピュータやシーケンサなどの半導体装置が広く利用されている。このような半導体装置は、内部にCPUコアを有し、メモリに記憶したプログラムにしたがって動作するのが一般的である。プログラムを記憶するメモリとしては、マスクROMやフラッシュROMなどのROMを使用するのが一般的であるが、RAMを使用して外部からRAMにプログラムをロードする場合もある。RAMを使用する場合でも、半導体装置に電源を投入した時の起動動作を含む初期動作は、ROMに記憶された起動動作用プログラムで行うので、半導体装置は、ROMを有することが必要である。半導体装置は、ROMに記憶された初期動作用プログラムで起動動作を行った後、外部からプログラムをRAMにロードする動作を行い、それ以後RAMにロードされたプログラムによる動作に移行する。
【0003】
以下の説明では、通常の動作時にはROMに記憶されたプログラムで動作する半導体装置を例として説明するが、これに限定されるものではない。
【0004】
消費電力を低減するためのスタンバイモードを有する半導体装置が知られている。スタンバイモードを有する半導体装置は、スタンバイモードになると、その時点のCPUコアの状態をRAMに退避し、CPUコアはスタンバイモードに移行する。スタンバイモード時には、通常電源の供給を停止し、スタンバイ用の電源に切り替える。この状態では、RAMへのアクセスは発生せず、トランジスタのリークレベルの電流が消費されるだけであり、消費電力は数十分の1から数百分の1に低減される。なお、スタンバイモードを有する半導体装置では、通常電源の供給が一時的に遮断された場合にも、動作が続行可能である。スタンバイ用の電源としては、電池などを接続するが、通常電源の供給が一時的に遮断された場合にも動作が続行可能であるように構成するには、通常電源により充電可能な容量を接続するようにしてもよい。
【0005】
内部にCPUを有し、ROMに記憶したプログラムにしたがって動作する半導体装置の製造工程では、半導体装置の動作を確認する動作試験が行われる。マスクROMの場合には、試験用のプログラムを書き込むことはできないので、外部にメモリを接続するなどして、動作プログラムを読み込んで動作試験を行っていた。また、フラッシュROMの場合は、試験用のプログラムを書き込んで試験を行い、試験終了後、試験用プログラムを消去することも可能であるが、不良調査のためにフラッシュROMデータを調査する必要があり、消去できない場合がある。そのため、フラッシュROMの場合でも、外部に揮発性メモリを接続して試験を行うことがあり、そのような試験が可能であるように構成することが望ましい。
【0006】
図1は、半導体装置の外部にメモリを接続して半導体装置の動作試験を行う場合の構成を示す図である。
【0007】
図1に示すように、半導体装置10は、CPUコア11と、内部論理(LOGIC)回路12と、ROM13と、RAM14と、ROM/RAMアドレスデコーダ15と、I/O入出力部回路16と、レギュレータ回路18と、スタンバイ制御回路19と、外部割込み回路20と、低電圧検出回路21と、内部バス22と、外部電源ライン23と、内部電源ライン24と、外部バスインターフェース25と、を有する。CPUコア11、内部LOGIC回路12、ROM13、RAM14、ROM/RAMアドレスデコーダ15、I/O入出力部回路16および外部バスインターフェース25は、内部バス22を介してデータを送受信する。ROM/RAMアドレスデコーダ15は、内部バス22上に出力されたアドレス信号をデコードして、ROM13およびRAM14がアクセスされた時に、アクセスされたROM13またはRAM14を選択する。
【0008】
半導体装置10の内部は、消費電力を低減するために、外部電源電圧より低い内部動作電圧で動作する。レギュレータ回路18は、外部電源から内部動作電圧の内部電源を発生して、各部に供給する。I/O入出力部回路16は、外部電源電圧に基づいて外部との信号の入出力を行うために、外部電源ライン23に接続される。内部電源ライン24は、外部端子を介してスタンバイ用電源に接続される。図1の例では、スタンバイ用電源は、容量31であり、内部電源ライン24に内部電源が供給されている時に充電される。以下、スタンバイ用電源として容量31を接続した例を説明するが、これに限定されるものではない。また、レギュレータ回路18を設けずに、半導体装置10の内部が、外部電源電圧で動作する場合もある。
【0009】
外部割込み回路20は、外部割込みを受け付ける回路であり、外部割込みの1つであるスタンバイ復帰割り込みを受けて、スタンバイ復帰割り込みの発生をスタンバイ制御回路19に通知する。スタンバイ制御回路19は、通常モードからスタンバイモードになる時に各部の制御を行う。さらに、スタンバイ制御回路19は、上記のスタンバイ復帰割り込みの発生、外部からのリセット信号の入力および図示していないタイマーによるタイマー割り込みに応じて、スタンバイモードから通常モードに復帰する時に各部の制御を行う。低電圧検出回路21は、スタンバイモード中の内部電源ライン24の電圧を検出し、所定電圧以下になったことを検出するとスタンバイ制御回路19に通知する。内部電源ライン24の電圧が所定電圧以下になった場合には、スタンバイ制御回路19、RAM14に記憶された退避データによる通常モードへの復帰ではなく、ROM13の初期動作(ブート)プログラムによる通常モードへの復帰を行うように各部を制御する。
【0010】
図1に示した半導体装置10は、広く知られているので、これ以上の詳しい説明は省略する。
【0011】
動作試験を行う場合には、図1に示すように、外部バスインターフェース25に外部メモリ33を接続する。外部メモリ33は、マスクROM、フラッシュROM、電源バックアップされたRAMなどで実現される。外部メモリ33は、試験用プログラムを記憶している。CPUコア11は、外部バスインターフェース25を介して、外部メモリ33に記憶された試験用プログラムにアクセスし、動作試験が実行される。
【0012】
図1の半導体装置の動作試験を行う場合の構成では、外部メモリ33を外部バスインターフェース16に接続するための外部接続メモリバスポートを設ける。この外部接続メモリバスポートは、動作試験のために設けるもので、半導体装置10の完成後は使用されないものであり、チップ面積の増加などの問題を発生するので、設けないことが望ましい。
【0013】
そこで、図2に示すように、半導体装置10が元々有する通信回路(通信マクロ)26を使用して、外部のデータ送信装置35から試験用プログラムを転送し、転送した試験用プログラムをRAM14に記憶することが行われる。CPUコア11は、RAM14に記憶された試験用プログラムにアクセスし、動作試験を実行する。データ送信装置35は、例えば、パーソナルコンピュータなどで実現される。図2の構成であれば、図1の構成のように、外部接続メモリバスポートを設ける必要がない。
【0014】
図2に示した構成のように、RAM14に記憶した試験用プログラムで動作試験を実行する場合、RAM14が揮発性であり、外部電源の供給を停止すると、RAM14に記憶した試験用プログラムは消失する。そのため、図2の構成では、電源立ち上げ時の初期動作を試験することができない。
【0015】
また、半導体装置10は、電源立ち上げ時には、CPUコア11はROM13の所定のアドレスにアクセスし、そこに記憶された起動プログラムにアクセスして電源立ち上げ時の初期動作を実行するのが一般的である。そのため、たとえRAM14に起動プログラムを記憶しても、電源立ち上げ時に、CPUコア11が、RAM14に記憶した試験用プログラムをアクセスすることはない
以上のように、ROM13に試験用プログラムを記憶させることができない場合には、半導体装置10の初期動作の試験が行えなかった。
【先行技術文献】
【特許文献】
【0016】
【特許文献1】特開平10−247125号公報
【特許文献2】特開昭62−006315号公報
【特許文献3】特開昭59−158418号公報
【特許文献4】特開昭60−220415号公報
【発明の概要】
【発明が解決しようとする課題】
【0017】
実施形態によれば、ROMに試験用プログラムを記憶させることができない場合にも初期動作の試験が可能な半導体装置が実現される。
【課題を解決するための手段】
【0018】
発明の一観点によれば、半導体装置は、CPUコアと、ROMと、RAMと、CPUコアのアドレス空間におけるアドレス信号をデコードして、ROMまたはRAMがアクセスされた時に、ROMまたはRAMの選択信号を発生するROM/RAM選択アドレスデコーダと、スタンバイ制御回路と、RAM、ROM/RAM選択アドレスデコーダおよびスタンバイ制御回路の電源を、通常電源とバックアップ電源の間で切り替えるバックアップ電源切換機構と、を備え、スタンバイ制御回路は、スタンバイモードから通常動作状態に変化すると、CPUコアがROMの替わりにRAMをアクセスするように、ROM/RAM選択アドレスデコーダを設定可能であり、CPUコアがRAMに記憶された初期動作プログラムにしたがって起動動作を実行可能である。
【発明の効果】
【0019】
上記の観点によれば、半導体装置において、ROMに試験用プログラムを記憶せずに、起動動作の試験が可能になる。
【図面の簡単な説明】
【0020】
【図1】図1は、半導体装置の外部にメモリを接続して半導体装置の動作試験を行う場合の構成を示す図である。
【図2】図2は、通信回路(通信マクロ)を使用して、外部のデータ送信装置から試験用プログラムを転送し、転送した試験用プログラムをRAMに記憶して、半導体装置の動作試験を行う場合の構成を示す図である。
【図3】図3は、第1実施形態の半導体装置の外部にデータ送信装置を接続して半導体装置の動作試験を行う場合の構成、および第1実施形態の半導体装置の状態を示した図である。
【図4】図4は、ROM/RAMアドレスデコーダの一部の回路例を示す図である。
【図5】図5は、第1実施形態の半導体装置のスタンバイ制御回路で、これまでのスタンバイ制御回路に加えて設けられる回路例を示す図である。
【図6】図6は、レギュレータ回路およびRAM用レギュレータ回路の回路図である。
【図7】図7は、低電圧検出回路の回路図である。
【図8】図8は、外部割込み回路の構成を示すブロック図である。
【図9】図9は、第1実施形態の半導体装置の初期動作試験を説明するフローチャートである。
【図10】図10は、外部電源の供給が行われている状態で、半導体装置がスタンバイモードになり、その後通常動作に復帰する場合の動作を示すフローチャートである。
【図11】図11は、外部電源の供給が停止された場合で、スタンバイモード終了時にバックアップ電圧が不足した状態で通常動作に復帰する動作を示すフローチャートである。
【図12】図12は、第1実施形態の半導体装置に外部電源を供給した状態で、リセット信号に応じてスタンバイモードに移行して外部電源を遮断し、その後電源の供給を再開して再起動する場合の動作を示すタイムチャートである。
【図13】図13は、第2実施形態の半導体装置の構成を示す図である。
【発明を実施するための形態】
【0021】
図3の(A)は、第1実施形態の半導体装置の外部にデータ送信装置を接続して半導体装置の動作試験を行う場合の構成を示す図であり、図3の(B)は、第1実施形態の半導体装置の状態を表で示した図である。
【0022】
図3の(A)に示すように、第1実施形態の半導体装置10は、CPUコア11と、内部LOGIC回路12と、ROM13と、RAM14と、ROM/RAMアドレスデコーダ15と、I/O入出力部回路16と、レギュレータ回路18と、スタンバイ制御回路19と、外部割込み回路20と、低電圧検出回路21と、内部バス22と、外部電源ライン23と、第1内部電源ライン24と、通信マクロ26と、RAM用レギュレータ回路27と、第2内部電源ライン28と、を有する。CPUコア11、内部LOGIC回路12、ROM13、RAM14、ROM/RAMアドレスデコーダ15、I/O入出力部回路16および外部バスインターフェース25は、内部バス22を介してデータを送受信する。通信マクロ26は、例えばUART(Universal Asynchronous Receiver-Transmitter)などの通信回路である。ROM/RAMアドレスデコーダ15は、内部バス22上に出力されたアドレス信号をデコードして、ROM13およびRAM14がアクセスされた時に、アクセスされたROM13またはRAM14を選択する。具体的には、ROM/RAMアドレスデコーダ15は、アドレス信号をデコードして、ROM13またはRAM14のチップセレクト信号を発生する。
【0023】
外部電源ライン23は、外部電源端子から、レギュレータ回路18、RAM用レギュレータ回路27およびI/O入出力部回路16に接続される。したがって、I/O入出力部回路16は、外部電源電圧に基づいて動作する。
【0024】
レギュレータ回路18は、外部電源から内部動作電圧の第1内部電源を発生し、第1内部電源ライン24を介して、CPUコア11、内部LOGIC回路12、ROM13および通信マクロ26に供給する。RAM用レギュレータ回路27は、外部電源から内部動作電圧の第2内部電源を発生し、第2内部電源ライン28を介して、RAM14、ROM/RAMアドレスデコーダ15、スタンバイ制御回路19、外部割込み回路20および低電圧検出回路21に供給する。したがって、CPUコア11、内部LOGIC回路12、ROM13、RAM14、ROM/RAMアドレスデコーダ15、スタンバイ制御回路19、外部割込み回路20、低電圧検出回路21および通信マクロ26は、外部電源電圧より低い内部動作電圧で動作する。
【0025】
さらに、第2内部電源ライン28は、外部端子を介してスタンバイ用電源に接続される。第1実施形態では、スタンバイ用電源は、容量31であり、第2内部電源ライン28に第2内部電源が供給されている時に充電され、外部電源の供給が停止されると、第2内部電源ライン28にスタンバイ用電源を供給する。
【0026】
外部割込み回路20は、外部割込みを受け付ける回路であり、外部割込みの1つであるスタンバイ復帰割り込みを受けて、スタンバイ復帰割り込みの発生をスタンバイ制御回路19に通知する。スタンバイ制御回路19は、通常モードからスタンバイモードになる時に、ROM/RAMアドレスデコーダ15、レギュレータ回路18およびRAM用レギュレータ回路27を含む各部の制御を行う。さらに、スタンバイ制御回路19は、上記のスタンバイ復帰割り込み要求、外部からのリセット信号の入力およびタイマー割り込み要求に応じて、スタンバイモードから通常モードに復帰する時に各部の制御を行う。低電圧検出回路21は、スタンバイモード中の内部電源ライン24の電圧を検出し、所定電圧以下になったことを検出すると低電圧検出信号を発生し、スタンバイ制御回路19に送信する。
【0027】
第1実施形態の半導体装置10の動作試験を行う場合には、図3の(A)に示すように、通信マクロ26を使用して、外部のデータ送信装置35から試験用プログラムをRAM14に転送して記憶する。CPUコア11は、RAM14に記憶された試験用プログラムにアクセスし、動作試験を実行する。データ送信装置35は、例えば、パーソナルコンピュータなどで実現される。
【0028】
図3の(B)に示すように、第1実施形態の半導体装置10は、外部電源の状態およびスタンバイ制御回路19のスタンバイ制御信号により、図示のそれぞれの状態になる。
【0029】
外部電源がオン(ON)状態で、スタンバイ制御信号が「通常動作」状態を示す場合には、I/O入出力部回路16は「通常動作」状態になり、レギュレータ回路18、RAM用レギュレータ回路27およびRAM14は、ON状態になる。この時、CPUコア11、内部LOGIC回路12、ROM13および通信マクロ26もON状態であり、半導体装置10は、通常の動作状態である。ROM/RAMアドレスデコーダ15は、内部バス22上に出力されたアドレス信号に応じて、アクセスされたROM13またはRAM14を選択するアドレススワップ無しの状態になる。
【0030】
外部電源がオン(ON)状態で、スタンバイ制御信号が「スタンバイ」状態を示す場合には、I/O入出力部回路16は「データ保持」状態になり、レギュレータ回路18はOFF状態になるが、RAM用レギュレータ回路27およびRAM14はON状態になる。CPUコア11、内部LOGIC回路12、ROM13および通信マクロ26は、OFF状態になる。ROM/RAMアドレスデコーダ15は、初期動作用プログラムを記憶するROM13のアドレスを、RAM14のアドレスに置き換えるアドレススワップ状態になる。
【0031】
外部電源がオフ(OFF)状態になると、外部容量31により、RAM14、ROM/RAMアドレスデコーダ15、スタンバイ制御回路19、外部割込み回路20および低電圧検出回路21に、スタンバイ用電源が供給される。これにより、スタンバイ制御信号が「スタンバイ」状態を継続しており、I/O入出力部回路16は「不定」状態に、レギュレータ回路18およびRAM用レギュレータ回路27はOFF状態になるが、RAM14はスタンバイ用電源によりON状態になる。ROM/RAMアドレスデコーダ15は、アドレススワップ状態になる。
【0032】
外部電源がオフ(OFF)状態で、外部容量31によりスタンバイ用電源が供給されない状態になるか、またはスタンバイ制御回路19にリセット信号が入力されると、スタンバイ制御信号が「リセット」状態になる。この時、I/O入出力部回路16は「不定」状態に、レギュレータ回路18およびRAM用レギュレータ回路27はOFF状態に、RAM14は「不定」状態になり、ROM/RAMアドレスデコーダ15は、アドレススワップ無し状態になる。
【0033】
図4は、ROM/RAMアドレスデコーダ15の一部の回路例を示す図である。図4に示していないが、ROM/RAMアドレスデコーダ15は、内部バス22のアドレス信号をデコードするアドレスデコーダなどをさらに有する。
【0034】
図4に示すように、ROM/RAMアドレスデコーダ15は、ANDゲートG1と、ORゲートG2と、インバータG3と、ANDG4と、を有する。ANDゲートG1は、CPUコア11からのベクタアドレス要求と、スタンバイ制御回路19からのROM/RAM選択切り替え信号が入力される。ベクタアドレス要求は、電源投入またはリセット信号などに応じてCPUコア11が初期動作を開始する時に発生される。ORゲートG2は、アドレスデコーダからのRAM14の選択信号と、ANDゲートG1の出力が入力される。ANDゲートG4は、アドレスデコーダからのROM13の選択信号と、ANDゲートG1の出力をインバータG3で反転した信号が入力される。
【0035】
図4の回路によれば、スタンバイ制御回路19からのROM/RAM選択切り替え信号が「高(H)」の状態で、CPUコア11からベクタアドレス要求が出力されると、ORゲートG2の出力がHになり、RAM14が選択される。この時、ANDゲートG1の出力は「低(L)」で、ROM13が選択されることはない。それ以外の場合には、アドレスデコーダからの選択信号に応じて、RAM14またはROM13が選択される。
【0036】
図5は、第1実施形態の半導体装置のスタンバイ制御回路19で、図1などのこれまでのスタンバイ制御回路に加えて設けられる回路例を示す図である。
【0037】
図5に示すように、スタンバイ制御回路19は、ROM/RAM選択アドレス設定/レギュレータ制御ビットレジスタ(以下、レジスタ)41と、ORゲートG11と、インバータG12と、ANDゲートG13と、を有する。ORゲートG11は、リセット信号と低電圧検出信号を受けて、出力をレジスタ41に送る。ANDゲートG13は、スタンバイ制御信号と、レジスタ41からのROM/RAM選択切り替え信号をインバータG12で反転した信号を受けて、RAM用レギュレータ27の制御信号を発生する。スタンバイ制御信号は、そのままレギュレータ回路18の制御信号となる。
【0038】
レジスタ41は、内部バス22のデータバスからデータを受け、内部バス22のアドレス・制御バスからの書き込み制御信号(set信号)に応じて、アドレススワップ時に置き換えるROM13のアドレスとRAM14のアドレスのスワップ動作の許可ビットデータを記憶する。さらに、レジスタ41は、ORゲートG11を受ける。レジスタ41は、通常動作時に、アドレススワップ時に置き換えるROM13とRAM14のアドレスの入れ替え許可ビットを内部バス22より書き込み、ROM/RAM選択切り替え信号を設定する。ただし、レジスタ41は、パワーオンリセット信号または低電圧検出信号がH(アクティブ)の時には、ROM/RAM選択切り替え信号を解除しない。
【0039】
図6は、レギュレータ回路18の回路図であり、RAM用レギュレータ回路27も同じ構成を有する。この回路は、レギュレータ回路として広く使用されており、外部電源がVDP5に入力され、VCCに内部電源を出力する。したがって、第1内部電源ライン24または第2内部電源ライン28は、VCCに接続される。スタンバイ制御回路19からのレギュレータ制御信号(RAM用レギュレータ制御信号)は、STB1に入力され、STB1がHになると、コンパレータの出力が変化してVDP5からVCCの間のトランジスタが遮断状態になり、電源供給が停止する。
【0040】
図7は、低電圧検出回路21の回路図である。第2内部電源ライン28の電圧VCCを抵抗分圧した電圧値と、BGR(Band Gap Reference)回路の出力する閾値電圧を比較し、閾値電圧になると低電圧検出信号を発生して、スタンバイ制御回路19に送る。
【0041】
図8は、外部割込み回路20の構成を示すブロック図である。外部割込み回路20は、割り込みレベル設定レジスタ51と、優先順位判定回路52と、を有している。優先順位判定回路52は、外部端子からのスタンバイ復帰割り込み要求信号およびリソースからの各種の割り込み要求信号を受け、割り込みレベル設定レジスタ51に記憶されたレベルにしたがって、CPUコア11への割り込み信号を発生する。この回路は広く知られているので、説明は省略する。
【0042】
図3の(A)に示すように、第1実施形態の半導体装置の初期動作試験を行う場合、第2内部電源ライン28の外部端子には、スタンバイ用電源として容量31が接続される。容量31は、第2内部電源ライン28に第2内部電源が供給されている時に充電され、外部電源の供給が停止されると、第2内部電源ライン28にスタンバイ用電源を供給する。ここで、動作試験を行うために必要な容量31の容量値について説明する。内部電源電圧を3.5Vとし、低電圧検出回路21の閾値電圧を3Vとする。外部電源の供給を停止した後、レギュレータ回路18およびRAM用レギュレータ回路27を停止状態にしてから、CPUコア11、内部LOGIC回路12、ROM13などの電荷が十分の消失した後、外部電源の供給を再開して、初期動作を試験する。外部電源の供給を停止した後、外部電源の供給を再開するまでの時間を、1分程度とする。スタンバイモード中、RAM14などスタンバイ用電源が供給される部分はスタンバイ状態になり、スタンバイ状態で消費される電流を100μA程度とする。容量31の容量値をCμFとすると、CμF×(3.5−3)V=100μA×50secである。したがって、C=12mFであり、これ以上の容量値の容量31を接続すればよい。
【0043】
図9は、第1実施形態の半導体装置の初期動作試験を説明するフローチャートである。
【0044】
ステップS11では、パーソナルコンピュータなどのデータ送信装置35から通信マクロ(UART)26を使用して、初期動作試験のプログラムをRAM14に書き込む。
【0045】
ステップS12では、スタンバイ制御回路19のレジスタ41に、ROM13のアドレスと、初期動作試験のプログラムを書き込んだRAM14のアドレスのスワップ許可を設定する。ROM13のアドレス領域は、CPUコア11のベクタアドレスの領域を含む。さらに、レギュレータ制御ビットに書き込みを行うと、レジスタ41はROM/RAM選択切り替え信号をアクティブにし、これによりRAM用レギュレータ回路27はOFF状態になり、RAM14などはバックアップ電源が供給されたバックアップ動作状態になると共に、ROM13とRAM14のアドレススワップが可能な状態となる。
【0046】
ステップS13では、外部電源の供給を停止する(電源をOFFする)。なお、これにより、CPUコア11などに電源が供給されない状態になる。
【0047】
ステップS14では、外部電源の供給を再開する(電源をONする)。これにより、CPUコア11などに電源が供給され、CPUコア11は所定のアドレス(ベクタアドレス)をアクセスする初期化動作を開始する。
【0048】
ステップS15では、CPUコア11が、ベクタアドレスのプログラムを読み出すベクタ読み出しを行う。ROM/RAM選択アドレスデコーダ15は、ベクタアドレスを、RAM14のアドレスに置き換えるように設定されているので、CPUコア11は、RAM14に書き込んだ初期動作試験のプログラムを読み出し、初期化動作を開始する。この時の動作を確認することにより、半導体装置10の初期動作試験が完了する。
【0049】
以上説明したように、第1実施形態の半導体装置では、外部電源の供給を停止してもバックアップ電源によりRAMに記憶したデータ(プログラム)が保持されるため、RAMを不揮発性のメモリとして使用することが可能である。また、ROM/RAM選択アドレスデコーダによりROMのアドレスをRAMのアドレスに置き換えることが可能である。これにより、ROMを使用せずに、RAMに記憶させたプログラムにより半導体装置を起動して初期動作試験を行うことが可能になる。
【0050】
第1実施形態の半導体装置は、スタンバイモード時に、以下に説明するような動作を行うことにより、消費電力を一層低減することが可能になる。以下、スタンバイモードになる各種の場合について説明する。
【0051】
図10は、外部電源の供給が行われている状態で、半導体装置10がスタンバイモードになり、その後通常動作に復帰する場合の動作を示すフローチャートであり、(A)がスタンバイモードになる動作を、(B)が通常動作に復帰する動作を示す。
【0052】
ステップS21では、CPUコア11の各設定レジスタのデータをRAM14の所定のアドレスにコピーするレジスタ退避動作を行う。
【0053】
ステップS22では、RAM14上に退避した設定レジスタのデータをCPUコア11の対応する設定レジスタに戻した後、プログラムカウンタの値をROM13上のアドレスにジャンプさせる命令を行う転送用プログラムを、RAM14上に書き込む。
【0054】
ステップS23では、CPUコア11がスタンバイモードになり、スタンバイ制御回路19にスタンバイビットを設定する。
【0055】
ステップS24では、スタンバイ制御回路19のレジスタ41に、アドレス切り替えビットをセットする。
【0056】
ステップS25では、レギュレータ回路18およびRAM用レギュレータ回路27をOFFにする。
【0057】
以上の動作により、半導体装置10は、スタンバイモードになり、CPUコア11などに電源が供給されず、RAM14などにはバックアップ電源が供給されたバックアップ動作状態になる。RAM14などは、実際の動作が行われないと消費電流は小さいので、スタンバイモード時の消費電流を削減できる。
【0058】
ステップS31では、外部リセット信号の入力、外部割込み信号の入力、またはタイマー割り込み信号の発生のいずれかに応じて、半導体装置10のスタンバイモードから通常動作への復帰が起動される。
【0059】
ステップS32では、スタンバイ制御回路19のスタンバイビットをクリアする。
【0060】
ステップS33では、レギュレータ回路18およびRAM用レギュレータ回路27をONにする。
【0061】
ステップS34では、レギュレータ回路18およびRAM用レギュレータ回路27の出力が安定するまで、所定時間待機する。
【0062】
ステップS35では、CPUコア11が初期動作(ブート動作)を行う。この時、ROM/RAM選択アドレスデコーダ15により、ブート動作時にアクセスされるROM13のアドレスは、RAM14のアドレスに置き換えられているので、RAM14に記憶されたプログラムでブート動作が行われる。
【0063】
ステップS36では、RAM14に記憶されたブート・プログラムによる初期動作が終了した後、ROM/RAM選択アドレスデコーダ15のアドレス切り替えビットの書き込みをCPU11にて行い、ROM13が選択されるように切り替える。
【0064】
ステップS37では、CPUコア11がROM13に記憶されたプログラムで動作するように、プログラムカウンタの値がROM13のアドレスに変更される。これにより、半導体装置10は、通常動作状態になる。
【0065】
次に、外部電源の供給が停止された場合にスタンバイモードになる場合の動作について説明する。外部電源の供給が停止された場合、スタンバイモード中に、バックアップ電源の電圧が所定電圧以上の場合と、バックアップ電源の電圧が所定電圧以下になる場合、すなわちバックアップ電圧が不足する場合と、に分けられる。前述のように、バックアップ電源として容量31を使用する場合には、容量31の容量値と、スタンバイモード中の消費電力により、所定電圧以上のバックアップ電源の電圧を維持できる時間が決定される。したがって、バックアップ電源として容量31を使用する場合、スタンバイモードの時間がこの時間より短ければ、スタンバイモード終了時にバックアップ電圧が所定電圧以上であり、この時間より長ければスタンバイモード終了時にバックアップ電圧が不足する。
【0066】
いずれの場合も、スタンバイモードになる場合の動作は、図10の(A)と同じである。また、スタンバイモード終了時にバックアップ電源の電圧が所定電圧以上の状態で通常動作に復帰する動作は、図10の(B)のフローチャートと同じである。
【0067】
図11は、外部電源の供給が停止された場合で、スタンバイモード終了時にバックアップ電圧が不足した状態で通常動作に復帰する動作を示すフローチャートである。
【0068】
ステップS41では、低電圧検出回路21がバックアップ電源の電圧が所定電圧より低くなったことを検出し、スタンバイ回路29に低電圧検出信号を送る。低電圧検出信号は、図5のゲートG11を介してレジスタ41に入力される。これに応じて、レジスタ41は、ROM/RAM選択切り替え信号を非アクティブにする。これにより、ROM/RAM選択アドレスデコーダ15は、ROM13のアドレスのRAM14のアドレスによる置き換えを行わないようになる。
【0069】
ステップS42では、レギュレータ回路18およびRAM用レギュレータ回路27をONにする。
【0070】
ステップS43では、レギュレータ回路18およびRAM用レギュレータ回路27の出力が安定するまで、所定時間待機する。
【0071】
ステップS44では、CPUコア11が初期動作(ブート動作)を行う。この時、ROM/RAM選択アドレスデコーダ15はアドレスの置き換えを行わないので、ブート動作時にROM13のアドレスがアクセスされ、ROM13に記憶されたプログラムでブート動作が行われる。
【0072】
図12は、第1実施形態の半導体装置10に外部電源を供給した状態で、リセット信号に応じてスタンバイモードに移行して外部電源を遮断し、その後電源の供給を再開して再起動する場合の動作を示すタイムチャートである。
【0073】
外部電源を供給すると、レギュレータ回路18およびRAM用レギュレータ回路27の出力電圧が立ち上がり、第1電源ライン24および第2電源ライン28の電圧が立ち上がる。これに応じて、バックアップ電源の容量31の電圧も立ち上がる。この状態でリセット信号を入力すると、CPUコア11からROM13の所定アドレスにアクセスするベクタアドレス(ブートアドレス)信号が出力され、ROM13の所定アドレスに記憶された初期動作プログラムにしたがって初期動作を行う。このようにして電源立ち上げに応じた半導体装置10の起動が行われ、通常動作状態になる。
【0074】
通常動作状態で、スタンバイモードになる命令を発行する前に、復帰後動作用プログラムをRAM14に記憶させ、さらにCPUコア11のレジスタデータをプログラムにてRAM14に退避させる。さらに、ROM/RAM選択アドレスデコーダにおけるROM/RAM選択アドレスの切り替えを行い、スタンバイ制御回路19にスタンバイの設定(書き込み)が行われる。これに応じて、スタンバイ制御回路19は、スタンバイ信号を発生し、レギュレータ回路18およびRAM用レギュレータ回路27をOFFする。これに応じて、第1電源ライン24の電圧は0Vまで低下する。一方、第2電源ライン28の電圧は、バックアップ電源によりバックアップされているが、内部リーク電流のために緩やかに低下する。したがって、バックアップ電圧も緩やかに低下する。この状態で、外部電源を遮断し、電力消費の少ないスタンバイモードになる。スタンバイモード中、ROM/RAM選択アドレスの切り替え状態が維持され、スタンバイ信号も維持される。
【0075】
次に外部電源の供給を再開し、リセット信号を入力すると、スタンバイ信号の出力が停止(非アクティブ)され、レギュレータ回路18およびRAM用レギュレータ回路27をONする。これに応じて、第1電源ライン24および第2電源ライン28の電圧が立ち上がり、バックアップ電圧も回復する。そして、スタンバイ制御回路19のスタンバイの設定が解除され、CPUコア11からROM13の所定アドレスにアクセスするベクタアドレス(ブートアドレス)信号が出力される。ここでは、ROM/RAM選択アドレスの切り替えが行われた状態なので、RAM14の所定アドレスに記憶された復帰後動作用プログラムにしたがって復帰動作を行い、元の状態に復帰する。
【0076】
図13は、第2実施形態の半導体装置10の構成を示す図である。第1実施形態の半導体装置では、レギュレータ回路18及びRAM用レギュレータ回路27を設けて外部電源電圧を降圧した内部電源を発生し、内部の各部に降圧した電源を供給した。これに対して、第2実施形態の半導体装置10は、外部電源電圧の電源を各部に供給することが第1実施形態と異なる。そのため、第2実施形態の半導体装置10は、第1実施形態の半導体装置に設けられたレギュレータ回路18が除かれており、他の部分は第1実施形態と同じである。第2実施形態のRAM用レギュレータ回路27は、外部電源ライン23と第2電源ライン28を接続するスイッチで、降圧などは行わない。
【0077】
第2実施形態の半導体装置10の動作は、第1実施形態と同じであり、説明は省略する。
【0078】
第1および第2実施形態以外にも各種の変形例があり得る。例えば、第1および第2実施形態では、初期動作試験プログラムは、データ送信装置35から通信マクロ26を介してRAM14に転送したが、データ送信装置35からI/O入出力部回路16を介してRAM14に転送することも可能である。また、RAM14の端子に直接外部からアクセス可能なモードを設けて、初期動作試験プログラムをRAM14に書き込むことも可能である。さらに、通信マクロ26は、UART以外のCAN、LINなどの通信マクロを使用することも可能である。
【0079】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものであり、特に記載された例や条件は発明の範囲を制限することを意図するものではなく、明細書のそのような例の構成は発明の利点および欠点を示すものではない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【符号の説明】
【0080】
10 半導体装置
11 CPUコア
12 内部論理(LOGIC)回路
13 ROM
14 RAM
15 ROM/RAMアドレスデコーダ
16 I/O入出力部回路
18 レギュレータ回路
19 スタンバイ制御回路
20 外部割込み回路
21 低電圧検出回路
22 内部バス
24 第1内部電源ライン
26 通信マクロ
27 RAM用レギュレータ回路
28 第2内部電源ライン
31 バックアップ電源容量
35 データ送信装置

【特許請求の範囲】
【請求項1】
CPUコアと、
ROMと、
RAMと、
前記CPUコアのアドレス空間におけるアドレス信号をデコードして、前記ROMまたは前記RAMがアクセスされた時に、前記ROMまたは前記RAMの選択信号を発生するROM/RAM選択アドレスデコーダと、
スタンバイ制御回路と、
前記RAM、前記ROM/RAM選択アドレスデコーダおよび前記スタンバイ制御回路の電源を、通常電源とバックアップ電源の間で切り替えるバックアップ電源切換機構と、を備え、
前記スタンバイ制御回路は、スタンバイモードから通常動作状態に変化すると、前記CPUコアが前記ROMの替わりに前記RAMをアクセスするように、前記ROM/RAM選択アドレスデコーダを設定可能であり、
前記CPUコアが前記RAMに記憶された初期動作プログラムにしたがって起動動作を実行可能であることを特徴とする半導体装置。
【請求項2】
外部データ入力部を備え、
前記動作プログラムは、前記通常電源供給時に、前記外部データ入力部を介して、前記RAMに記憶される請求項1に記載の半導体装置。
【請求項3】
外部電源から、前記RAMおよび前記ROM/RAM選択アドレスデコーダに供給する前記通常電源を発生するRAM用レギュレータ回路を備え、
前記スタンバイ制御回路は、前記スタンバイモード時に、前記RAM用レギュレータ回路をオフする請求項1または2に記載の半導体装置。
【請求項4】
前記RAMへ供給される前記バックアップ電源の電圧が所定値以下になったことを検出する低電圧検出回路を備える請求項1から3のいずれかに記載の半導体装置。
【請求項5】
請求項1に記載の半導体装置の動作試験方法であって、
前記RAMに前記初期動作プログラムを書き込み、
前記通常電源の供給を停止した後、前記通常電源の供給を開始し、
前記半導体装置の動作を確認する、ことを特徴とする半導体装置の動作試験方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2011−257912(P2011−257912A)
【公開日】平成23年12月22日(2011.12.22)
【国際特許分類】
【出願番号】特願2010−130896(P2010−130896)
【出願日】平成22年6月8日(2010.6.8)
【出願人】(308014341)富士通セミコンダクター株式会社 (2,507)
【Fターム(参考)】