次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一または類似の部分には同一または類似の符号を付している。ただし、図面は模式的なものであり、現実のものとは異なることに留意すべきである。また、図面相互間においても互いの寸法の関係や比率が異なる部分が含まれていることはもちろんである。
また、以下に示す実施の形態は、この発明の技術的思想を具体化するための装置や方法を例示するものであって、この発明の技術的思想は、各構成部品の配置などを下記のものに特定するものでない。この発明の技術的思想は、特許請求の範囲において、種々の変更を加えることができる。
[第1の実施の形態]
(不揮発性CPU)
本発明の第1の実施の形態に係る不揮発性CPU1は、図1に示すように、命令処理部102と、命令処理部102に接続され、命令処理部102から演算制御信号ACSを受信する演算処理部110と、演算処理部110に接続され、演算処理部110から演算出力信号zを受信する演算結果記憶部104と、演算結果記憶部104および命令処理部102に接続され、出力信号aを演算処理部110に供給するスイッチブロック106と、スイッチブロック106および命令処理部102に接続され、命令処理部102からスイッチ制御信号SCSを受信し、出力信号bを演算処理部110に供給するスイッチブロック108とを備える。
さらに、不揮発性CPU1は、電源制御を行う電源制御部20を有する。電源制御部20は、命令処理部102、演算結果記憶部104、スイッチブロック106・108、演算処理部110への電源供給を制御するとともに、各部とバス接続され、データのやり取りを行う。電源制御部20は、後述する不揮発性記憶ゲート12に不揮発性記憶制御信号(NVCTL)を出力する。
プログラム/データ入出力線112を介して、命令処理部102には、プログラム/データ入力端子112aが接続され、スイッチブロック108には、プログラム/データ出力端子112bが接続される。
また、図1に示すように、不揮発性CPU1には、制御信号入出力線114を介して、制御信号入力端子114bおよび制御信号出力端子114aが接続される。
また、図1に示すように、不揮発性CPU1には、クロック制御端子192を介してクロック信号CLKが供給され、不揮発動作用制御線100に接続される不揮発動作制御端子194を介して、強誘電体素子書込み信号E1、通常動作信号E2、強誘電体素子駆動用信号PL1およびPL2、強誘電体素子両端短絡信号FRSTが供給される。
また、図1に示すように、命令処理部102は、不揮発性記憶ゲート12を有する論理回路ブロック8を備え、演算結果記憶部104は、不揮発性記憶ゲート12を有する論理回路ブロック4を備え、演算処理部110は、不揮発性記憶ゲート12を有する論理回路ブロック6を備える。
(不揮発性記憶ゲート組込み型論理回路)
図2の不揮発性記憶ゲート組込み型論理回路10は、図1に示す命令処理部102の一部を示すものである。
上記不揮発性記憶ゲート組込み型論理回路10は、図2(a)に示すように、論理回路ブロック8を備える。不揮発性記憶ゲート組込み型論理回路10は、さらに、4進カウンタ7,8進カウンタ9を備える。
論理回路ブロック8は、図2(b)に示すように、論理ゲート16を有する論理演算部14と、論理演算部14内の論理ゲート16に接続され、論理演算部14に隣接して配置された不揮発性記憶ゲート12を備える。
上記不揮発性記憶ゲート組込み型論理回路10は、図2(a)〜(c)に示すように、論理ゲート16を有する論理演算部14と不揮発性記憶ゲート12とを備える。不揮発性記憶ゲート12は、不揮発性記憶部18と、不揮発性記憶部18に隣接して配置され,不揮発性記憶部18へのデータ書込みおよび不揮発性記憶部18からのデータ読出しのための不揮発性記憶制御信号NVCTLを受信するデータインタフェース制御部22およびデータインタフェース制御部22に隣接して配置され,データ入力端子からデータ入力信号D,クロック入力端子からクロック信号CLKを受信し,データ出力端子からデータ出力信号Qを出力する揮発性記憶部24を有する。
また、不揮発性ゲート組込み型論理回路10において、論理ゲート16は、記憶機能を持たない又はデータの記憶に用いられないインバータ、NAND素子、NOR素子などを備える。揮発性記憶部24は、ラッチ、レジスタ等の記憶ゲートを備える。
また、不揮発性ゲート組込み型論理回路10において、不揮発性記憶部18は、揮発性記憶部24のラッチ、レジスタ等の記憶ゲート部分にのみ適用される。
また、不揮発性ゲート組込み型論理回路10において、不揮発性記憶部18は、既存の記憶ゲートと同じ揮発性動作が可能である。
また、不揮発性ゲート組込み型論理回路10において、データインタフェース制御部22は、不揮発性記憶部18へのデータ書込みおよび不揮発性記憶部18からのデータ読出しのための外部制御信号(不揮発性記憶制御信号)NVCTLを受信する外部端子を有する。
また、不揮発性記憶ゲート12のデータインタフェース制御部22は、不揮発性CPU1の電源制御部20からの図示しない電源遮断検知信号に応じて、不揮発性記憶部18へデータ書込みを行う機能を有する。
また、不揮発性ゲート組込み型論理回路10において、不揮発性記憶部18は、強誘電体素子を有する。但し、これに限るものではなく、例えばフローティングゲートMOSトランジスタ、磁気抵抗効果素子、相変化素子のいずれかを有するものであってもよい。
(不揮発性記憶ゲート)
不揮発性記憶ゲート12は、図2(c)に示すように、不揮発性記憶部(NVSE:Nonvolatile Storage Element)18と、不揮発性記憶部18に隣接して配置され、不揮発性記憶部18へのデータ書込みおよび不揮発性記憶部18からのデータ読出しのための不揮発性記憶制御信号NVCTLを受信するデータインタフェース制御部22と、データインタフェース制御部22に隣接して配置され、データ入力端子からデータ入力信号D、クロック入力端子からクロック信号CLKを受信し、データ出力端子からデータ出力信号Qを出力する揮発性記憶部(VSE:Volatile Storage Element)24とを備える。
(不揮発性記憶ゲート組込み型論理回路の動作例)
不揮発性記憶ゲート12の論理回路動作は、図3に示すように、論理回路の電源VDD、クロック信号CLK、不揮発性記憶制御信号NVCTL、揮発性データ信号VSEDATA、および不揮発性データ信号NVSEDATAのタイミングチャートを用いて示される。
(a)まず、タイミングt0〜t1の通常動作期間T1においては、NVSE待機信号U1で示されるように、通常動作状態にある。
(b)次に、タイミングt1〜t2のデータ書込み期間T2においては、データ書込み信号U2で示されるように、揮発性記憶部24から不揮発性記憶部18へのデータ書込み(矢印A)が実行される。
(c)次に、タイミングt2〜t3の電源遮断待ち期間T3においては、電源遮断待ち信号U3で示されるように、電源遮断待ち状態にある。
(d)次に、タイミングt3〜t4の電源遮断期間T4においては、電源遮断状態にある。
(e)次に、タイミングt4〜t5の電源復帰待ち期間T5においては、電源復帰待ち信号U4で示されるように、電源復帰待ち状態にある。
(f)次に、タイミングt5〜t6のデータ読出し期間T6においては、データ読出し信号U5で示されるように、不揮発性記憶部18から揮発性記憶部24へのデータ読出し(矢印B)が実行される。
(不揮発性記憶ゲートの構成例)
本実施の形態に係る不揮発性記憶ゲート12は、より詳細には、図4に示すように、第1および第2の不揮発性記憶部(NVSE)181 ,182と、第1の不揮発性記憶部181に隣接して配置され、第1の不揮発性記憶部181 へのデータ書込みおよび第1の不揮発性記憶部181からのデータ読出しのための外部制御信号を受信する第1のデータインタフェース制御部221と、第2の不揮発性記憶部182に隣接して配置され、第2の不揮発性記憶部182へのデータ書込みおよび第2の不揮発性記憶部182からのデータ読出しのための外部制御信号を受信する第2のデータインタフェース制御部222と、第1および第2のデータインタフェース制御部22に隣接して配置され、データ入力端子からデータ入力信号D、クロック入力端子からクロック信号CLKを受信し、データ出力端子からデータ出力信号Qを出力する揮発性記憶部(VSE)24とを備える。
なお、図2におけるNVCTL,データ入力信号D,CLK,データ出力信号Qは、図4に示すFRST・E1・E2・PL1・PL2,D,CLK・CLKB,Qに相当する。
第1の不揮発性記憶部(NVSE)181は、MOSトランジスタQ1a,Q1bと、強誘電体キャパシタ51a,51bとを備え、第2の不揮発性記憶部(NVSE)182は、MOSトランジスタQ2a,Q2bと、強誘電体キャパシタ52a,52bとを備える。
揮発性記憶部(VSE)24は、インバータ58,60,64,70,72,74と、パススイッチ62,66,68を備える。
第1のデータインタフェース制御部221は、インバータ76と、パススイッチ78とマルチプレクサ54を備え、第2のデータインタフェース制御部222は、インバータ80と、パススイッチ82とマルチプレクサ56を備える。
インバータ58の入力端は、データ入力信号Dの印加端に接続されている。インバータ58の出力端は、インバータ60の入力端に接続されている。インバータ60の出力端は、パススイッチ66を介して、マルチプレクサ54の第1入力端(1)に接続されている。さらに、インバータ60の出力端は、インバータ64の入力端に接続され、インバータ64の出力端は、パススイッチ62を介してインバータ60の入力端に接続されている。
マルチプレクサ54の出力端は、インバータ72の入力端に接続されている。インバータ72の出力端は、インバータ74の入力端に接続されている。インバータ74の出力端は、データ出力信号Qの引出端に接続されている。また、インバータ72の出力端は、マルチプレクサ56の第1入力端(1)に接続されている。マルチプレクサ56の出力端は、インバータ70の入力端に接続されている。インバータ70の出力端は、パススイッチ68を介して、マルチプレクサ54の第1入力端(1)に接続されている。
このように、不揮発性記憶ゲート12は、図4に示すように、ループ状に接続された2つの論理ゲート(図4ではインバータ72,70)を用いて、入力されたデータ入力信号Dを保持するループ構造部LOOP(図中の54,72,56,70で囲まれた部分)を有する揮発性記憶部(VSE)24を備える。揮発性記憶部24は、さらにインバータ60、64によるループを有している。
インバータ76の入力端はマルチプレクサ54の第1入力端(1)に接続されている。より詳細には、インバータ76の入力端には、パススイッチ66を介してインバータ60の出力端が接続されるか、またはパススイッチ68を介してインバータ70の出力端が接続される。インバータ76の出力端は、パススイッチ78を介して、マルチプレクサ56の第2入力端(0)に接続されている。
インバータ80の入力端は、マルチプレクサ56の第1入力端(1)に接続されている。より詳細には、インバータ80の入力端には、インバータ72の出力端が接続される。インバータ80の出力端は、パススイッチ82を介して、マルチプレクサ54の第2入力端(0)に接続されている。
強誘電体キャパシタ51aの正極端は、第1プレートラインに接続され、強誘電体素子駆動用信号PL1が供給される。強誘電体キャパシタ51aの負極端は、マルチプレクサ56の第2入力端(0)に接続されている。強誘電体キャパシタ51aの両端間には、MOSトランジスタQ1aが接続されている。MOSトランジスタQ1aのゲートは、強誘電体素子両端短絡信号FRSTの印加端に接続されている。
強誘電体キャパシタ51bの正極端は、マルチプレクサ56の第2入力端(0)に接続されている。強誘電体キャパシタ51bの負極端は、第2プレートラインに接続され、強誘電体素子駆動用信号PL2が供給される。強誘電体キャパシタ51bの両端間には、MOSトランジスタQ1bが接続されている。MOSトランジスタQ1bのゲートは、強誘電体素子両端短絡信号FRSTの印加端に接続されている。
強誘電体キャパシタ52aの正極端は、第1プレートラインに接続され、強誘電体素子駆動用信号PL1が供給される。強誘電体キャパシタ52aの負極端は、マルチプレクサ54の第2入力端(0)に接続されている。強誘電体キャパシタ52aの両端間には、MOSトランジスタQ2aが接続されている。MOSトランジスタQ2aのゲートは、強誘電体素子両端短絡信号FRSTの印加端に接続されている。
強誘電体キャパシタ52bの正極端は、マルチプレクサ54の第2入力端(0)に接続されている。強誘電体キャパシタ52bの負極端は、第2プレートラインに接続され、強誘電体素子駆動用信号PL2が供給される。強誘電体キャパシタ52bの両端間には、MOSトランジスタQ2bが接続されている。MOSトランジスタQ2bのゲートは、強誘電体素子両端短絡信号FRSTの印加端に接続されている。
なお、上記した構成要素のうち、パススイッチ62,66は、クロック信号CLKに応じてオン/オフされ、トライステートインバータ58およびパススイッチ68は、反転クロック信号CLKB(クロック信号CLKの論理反転信号)に応じてオン/オフされる。トライステートインバータ58とパススイッチ62は互いに排他的(相補的)にオン/オフされる。また、パススイッチ66とパススイッチ68は互いに排他的(相補的)にオン/オフされる。一方、パススイッチ78,82は、いずれも強誘電体素子書込み信号E1に応じてオン/オフされる。また、マルチプレクサ54,56は、いずれも通常動作信号E2に応じてその信号経路が切り換えられる。
(不揮発性ゲート組込み型論理回路のレイアウトパターン)
本実施の形態においては、図5に示すように、論理回路10のレイアウトパターンにおいて、論理ゲート30と不揮発性記憶ゲート12のセルピッチLCPが等しい。また、論理ゲート30と不揮発性記憶ゲート12に用いられる電源ライン(VVDD1)26と接地ライン(VGND1)28の線幅が等しい。すなわち、図5に示すように、論理ゲート30と不揮発性記憶ゲート12は、セルピッチLCPが等しくなるように、電源ライン26と接地ライン28の間に配置され、しかも電源ライン26と接地ライン28の線幅が等しいことによって、不揮発性記憶ゲート12を使用する際、論理ゲート30と同一の配置が可能となる。ここで、論理ゲート30としては、例えばインバータINV、NANDゲート、NORゲートなどが含まれる。
不揮発性ゲート組込み型論理回路10においては、図6に示すように、論理回路10のレイアウトパターンにおいて、電源ライン26と接地ライン28からなる複数のライン対が行方向に配置され、ライン対間には、例えばバッファ36、NORゲート38、NANDゲート40、強誘電体素子42を含む不揮発性記憶ゲート12、インバータ46などが配置されている。
また、図6に示すように、論理回路10のレイアウトパターンにおいて、バッファ36、NORゲート38、NANDゲート40、インバータ46と強誘電体素子42を含む不揮発性記憶ゲート12のセルピッチLCPが等しい。また、電源ライン26と接地ライン28の線幅が等しい。すなわち、図6に示すように、例えばバッファ36、NORゲート38、NANDゲート40、インバータ46などの論理ゲートと不揮発性記憶ゲート12は、セルピッチLCPが等しくなるように、電源ライン26と接地ライン28の間に配置され、しかも電源ライン26と接地ライン28の線幅が等しいことによって、不揮発性記憶ゲート12を使用する際、論理ゲートと同一の配置が可能となる。また、複数の電源ライン26は、グローバル電源ライン(VDD)32に接続され、複数の接地ライン28は、グローバル接地ライン(GND)34に接続されている。
また、不揮発性ゲート組込み型論理回路10においては、図6に示すように、論理回路10のレイアウトパターンにおいて、不揮発性記憶ゲート12と、例えばバッファ36、NORゲート38、NANDゲート40、インバータ46などからなる論理ゲートが共通の電源ライン26を使用する。
(論理回路タイミングチャート)
図4に示した不揮発性記憶ゲート12の論理回路動作は、図7に示すように、論理回路の電源VDD、クロック信号CLK、データ入力信号Din 、データ出力信号Dout 、不揮発性記憶制御信号NVCTL、揮発性データ信号VSEDATA、および不揮発性データ信号NVSEDATAのタイミングチャートを用いて示される。
図7においては、不揮発性記憶制御信号NVCTLとしては、強誘電体素子書込み信号E1、通常動作信号E2、強誘電体素子駆動用信号PL1およびPL2、強誘電体素子両端短絡信号FRSTが示されている。
以下の説明では、強誘電体キャパシタ51a、51bの接続ノードに現れる電圧をV1、強誘電体キャパシタ52a、52bの接続ノードに現れる電圧をV2、インバータ70の入力端に現れる電圧をV3、インバータ70の出力端に現れる電圧をV4、インバータ72の入力端に現れる電圧をV5、インバータ72の出力端に現れる電圧をV6とする。
―通常動作―
まず、通常動作について説明する。
(a)タイミングt1で示される時点W1までの期間T1は、強誘電体素子両端短絡信号FRSTが「H(ハイレベル)」とされており、MOSトランジスタQ1a、Q1b、Q2a、Q2bがオンされて、強誘電体キャパシタ51a、51b、52a、52bの各両端間がいずれも短絡されているので、これらの強誘電体キャパシタ51a、51b、52a、52bには一切電圧が印加されない状態となっている。なお、第1プレートラインおよび第2プレートラインに印加される強誘電体素子駆動用信号PL1およびPL2、は、いずれも「L(ローレベル)」とされている。
また、時点W1までは、強誘電体素子書込み信号E1が「L」とされており、パススイッチ78とパススイッチ82がオフされているので、データ書込み用ドライバ(図4の例ではインバータ76,82)はいずれも無効とされている。
また、時点W1までは、通常動作信号E2が「H」とされており、マルチプレクサ54とマルチプレクサ56の第1入力端(1)が選択されているので、ループ構造部LOOP(図4中の54,72,56,70で囲まれた部分)にて通常ループが形成されている。
揮発性記憶部24では、クロック信号CLKが「H」で反転クロック信号CLKBが「L」のとき、トライステートインバータ58がオフされ、パススイッチ62はオンされ、パススイッチ66はオンされ、パススイッチ68はオフされる。したがって、インバータ60・64からなるループでは、クロック信号CLKが「L」から「H」へと切り換わる際に取り込まれたデータ入力信号Dが保持される。そして、ループ構造部LOOPでは、そのデータをそのまま通過させ、揮発性記憶部24よりデータ出力信号Qが出力される。
クロック信号CLKが「L」のときは、ループ構造部LOOPでは、クロック信号が「H」から「L」へと切り換わる際に取り込まれた信号を保持する。揮発性記憶部24は、ループ構造部LOOPの信号に応じてデータ出力信号Qを出力する。
―強誘電体素子へのデータ書込み動作―
次に、強誘電体素子へのデータ書込み動作について説明する。
(b)タイミングt1〜t3で示される時点W1〜W3の期間T2では、クロック信号CLKが「L」とされ、反転クロック信号CLKBが「H」とされる。従って、第1パススイッチ66がオフされ、第2パススイッチ68がオンされる。このように、クロック信号CLK及び反転クロック信号CLKBの論理を予め固定しておくことにより、強誘電体キャパシタに対するデータ書込み動作の安定性を高めることが可能となる。
特に、タイミングt2〜t3で示される時点W2〜W3の期間において、揮発性記憶部(VSE)24から、不揮発性記憶部(NVSE)181,182へのデータ書込み(矢印A)が実行される。
また、時点W1〜W3では、強誘電体素子両端短絡信号FRSTが「L」とされ、MOSトランジスタQ1a、Q1b、Q2a、Q2bがオフされて、強誘電体キャパシタ51a、51b、52a、52bに対する電圧印加が可能な状態とされる。
また、時点W1〜W3では、強誘電体素子書込み信号E1が「H」とされ、パススイッチ78とパススイッチ82がオンされる。従って、データ書込み用ドライバ(図4の例ではインバータ76,82)がいずれも有効とされる。
なお、時点W1〜W3では、それまでと同様、通常動作信号E2が「H」とされており、マルチプレクサ54とマルチプレクサ56の第1入力端(1)が選択されているので、ループ構造部LOOP(図4中の54,72,56,70で囲まれた部分)にて通常ループが形成されている。
また、時点W1〜W2では、第1プレートラインに印加される強誘電体素子駆動用信号PL1と第2プレートライン印加される強誘電体素子駆動用信号PL2が「L」とされ、時点W2〜W3では、強誘電体素子駆動用信号PL1,PL2が「H」とされる。すなわち、第1プレートラインと第2プレートラインに対して、同一のパルス電圧が印加される。このようなパルス電圧の印加により、強誘電体キャパシタ内部の残留分極状態が反転状態/非反転状態のいずれかに設定される。
図7の例に即して具体的に述べると、時点W1では、データ出力信号Qが「H」であるため、ノード電圧V1が「L」となり、ノード電圧V2が「H」となる。従って、時点W1〜W2において、第1プレートラインに印加される強誘電体素子駆動用信号PL1と第2プレートラインに印加される強誘電体素子駆動用信号PL2が「L」とされている間、強誘電体キャパシタ51a、51bの両端間には電圧が印加されない状態となり、強誘電体キャパシタ52aの両端間には負極性の電圧が印加される状態となり、強誘電体キャパシタ52bの両端間には正極性の電圧が印加される状態となる。
一方、時点W2〜W3において、第1プレートラインに印加される強誘電体素子駆動用信号PL1と第2プレートラインに印加される強誘電体素子駆動用信号PL2が「H」とされている間、強誘電体キャパシタ52a、52bの両端間には電圧が印加されない状態となり、強誘電体キャパシタ51aの両端間には正極性の電圧が印加される状態となり、強誘電体キャパシタ51bの両端間には負極性の電圧が印加される状態となる。
このように、第1プレートラインと第2プレートラインに対して、パルス電圧を印加することにより、強誘電体素子内部の残留分極状態が反転状態/非反転状態のいずれかに設定される。なお、強誘電体キャパシタ51aと51bとの間、及び、強誘電体キャパシタ52aと52bとの間では、互いの残留分極状態が逆になる。また、強誘電体キャパシタ51aと52aとの間、及び、強誘電体キャパシタ51bと52bとの間でも、互いの残留分極状態が逆になる。
(c)タイミングt3〜t4で示される時点W3〜W4の期間T3においては、電源遮断待ち状態にある。時点W3では、強誘電体素子両端短絡信号FRSTが再び「1」とされ、MOSトランジスタQ1a、Q1b、Q2a、Q2bがオンされて、強誘電体キャパシタ51a、51b、52a、52bの各両端間がいずれも短絡されるので、これらの強誘電体キャパシタ51a、51b、52a、52bには一切電圧が印加されない状態となる。このとき、第1プレートラインに印加される強誘電体素子駆動用信号PL1と第2プレートラインに印加される強誘電体素子駆動用信号PL2は、いずれも「L」とされる。
また、時点W3では、強誘電体素子書込み信号E1が再び「L」とされ、パススイッチ78とパススイッチ82がオフされるので、データ書込み用ドライバ(図4の例ではインバータ76、80)がいずれも無効とされる。なお、通常動作信号E2については不問であるが、図7の例では「L」とされている。
(d)次に、タイミングt4〜t6で示される時点W4〜W6の期間T4においては、電源遮断待ち状態にある。すなわち、タイミングt4で示される時点W4では、電源VDDが遮断される。このとき、強誘電体素子両端短絡信号FRSTは、時点W3から「H」に維持されており、MOSトランジスタQ1a、Q1b、Q2a、Q2bがオンされて、強誘電体キャパシタ51a、51b、52a、52bの各両端間がいずれも短絡されている。従って、強誘電体キャパシタ51a、51b、52a、52bには一切電圧が印加されない状態となっているので、電源遮断時に電圧変動が生じた場合であっても、強誘電体キャパシタ51a、51b、52a、52bに意図しない電圧が印加されることはなく、データ化けを回避することが可能となる。
―強誘電体素子からのデータ読出し動作―
次に、強誘電体素子からのデータ読出し動作について、説明する。
(e)タイミングt5〜t9で示される時点R1〜R5では、クロック信号CLKが「L」とされており、反転クロック信号CLKBが「H」とされている。従って、第1パススイッチ66がオフされており、第2パススイッチ68がオンされている。このように、クロック信号CLK及び反転クロック信号CLKBの論理を予め固定しておくことにより、強誘電体素子からのデータ読出し動作の安定性を高めることが可能となる。
(f)時点R1では、最先に強誘電体素子両端短絡信号FRSTが「H」とされており、MOSトランジスタQ1a、Q1b、Q2a、Q2bがオンされて、強誘電体キャパシタ51a、51b、52a、52bの各両端間がいずれも短絡されている。従って、強誘電体キャパシタ51a、51b、52a、52bには一切電圧が印加されない状態となっているので、電源投入時に電圧変動が生じた場合でも、強誘電体キャパシタ51a、51b、52a、52bに意図しない電圧が印加されることはなく、データ化けを回避することが可能となる。
なお、時点R1において、第1プレートラインに印加される強誘電体素子駆動用信号PL1と第2プレートラインに印加される強誘電体素子駆動用信号PL2は、いずれも「L」とされている。
(g)タイミングt6〜t7で示される時点R2〜R3の期間T5においては、電源復帰待ち状態にある。
時点R2では、強誘電体素子書込み信号E1、通常動作信号E2がいずれも「L」とされた状態(すなわち、データ書込み用ドライバが無効とされ、かつ、ループ構造部LOOPで通常ループが形成されている状態)で、電源VDDが投入される。
(h)タイミングt7〜t9で示される時点R3〜R5の期間T6においては、不揮発性記憶部(NVSE)181,182から、揮発性記憶部(VSE)24へのデータ読出し(矢印B)が実行される。
時点R3では、強誘電体素子両端短絡信号FRSTが「L」とされ、MOSトランジスタQ1a、Q1b、Q2a、Q2bがオフされて、強誘電体キャパシタ51a、51b、52a、52bに対する電圧印加が可能な状態とされる一方、第2プレートラインに印加される強誘電体素子駆動用信号PL2が「L」に維持されたまま、第1プレートラインに印加される強誘電体素子駆動用信号PL1が「H」とされる。このようなパルス電圧の印加により、ノード電圧V1及びノード電圧V2として、強誘電体キャパシタ内の残留分極状態に対応した電圧信号が現れる。
図7の例に即して具体的に説明すると、ノード電圧V1としては、比較的低い電圧信号(以下、その論理をWL[Weak Low]と呼ぶ)が現れ、ノード電圧V2としては、比較的高い電圧信号(以下、その論理をWH[Weak Hi]と呼ぶ)が現れる。すなわち、ノード電圧V1とノード電圧V2との間には、強誘電体キャパシタ内の残留分極状態の差に応じた電圧差が生じる形となる。
このとき、時点R3〜R4では、通常動作信号E2が「L」とされ、マルチプレクサ66とマルチプレクサ68の第2入力端(0)が選択されるので、ノード電圧V3の論理はWLとなり、ノード電圧V4の論理はWHとなる。また、ノード電圧V5の論理はWHとなり、ノード電圧V6の論理はWLとなる。このように、時点R3〜R4では、各部のノード電圧V1〜V6が未だ不安定な状態(インバータ76及びインバータ80での論理反転が完全に行われず、その出力論理が確実に「L」/「H」となっていない状態)である。(i)次に、タイミングt8で示される時点R4では、通常動作信号E2が「H」とされ、マルチプレクサ66とマルチプレクサ68の第1入力端(1)が選択されるので、ループ構造部LOOPにて通常ループが形成されている。このような信号経路の切り換えに伴い、インバータ70の出力端(論理:WH)とインバータ72の入力端(論理:WH)が接続され、インバータ72の出力端(論理:WL)とインバータ70の入力端(論理:WL)が接続される。従って、各ノードの信号論理(WH/WL)に不整合は生じず、以降、ループ構造部LOOPにて通常ループが形成されている間、インバータ72は、論理WLの入力を受けて、その出力論理を「H」に引き上げようとし、インバータ70は、論理WHの入力を受けて、その出力論理を「L」に引き下げようとする。その結果、インバータ72の出力論理は、不安定な論理WLから「L」に確定され、インバータ70の出力論理は、不安定な論理WHから「H」に確定される。
このように、時点R4において、ループ構造部LOOPが通常ループとされたことに伴い、強誘電体キャパシタから読み出された信号(ノード電圧V1とノード電圧V2との電位差)がループ構造部LOOPで増幅される形となり、電源遮断前の保持データが復帰される。
(j)次に、タイミングt9で示される時点R5では、強誘電体素子両端短絡信号FRSTが再び「H」とされ、MOSトランジスタQ1a、Q1b、Q2a、Q2bがオンされて、強誘電体キャパシタ51a、51b、52a、52bの各両端間がいずれも短絡されるので、これらの強誘電体キャパシタ51a、51b、52a、52bには一切電圧が印加されない状態となる。このとき、第1プレートラインに印加される強誘電体素子駆動用信号PL1と第2プレートラインに印加される強誘電体素子駆動用信号PL2は、いずれも「L」とされる。従って、時点W1以前と同様、通常動作状態に復帰される。
上記で説明したように、図4に示した不揮発性記憶ゲート12の構成例1は、ループ状に接続された論理ゲート(図4ではインバータ60・64およびインバータ72、70)を用いてデータを保持する揮発性記憶部(VSE)24と、揮発性記憶部(VSE)24に保持されたデータを強誘電体キャパシタのヒステリシス特性を用いて不揮発的に記憶する不揮発性記憶部181,182と、揮発性記憶部(VSE)24と不揮発性記憶部181,182とを接続するデータインタフェース制御部221,222とを有する。データインタフェース制御部221,222は、不揮発性記憶ゲート12の通常動作中には、強誘電体キャパシタに対する印加電圧を一定に保ちつつ、揮発性記憶部(VSE)24を電気的に動作させる構成とされている。
このように、揮発性記憶部(VSE)24の信号線から強誘電体キャパシタ51a、51b、52a、52bを直接駆動するのではなく、揮発性記憶部(VSE)24の信号線と強誘電体キャパシタ51a、51b、52a、52bとの間に、バッファとしても機能するデータ書込み用ドライバ(図4ではインバータ76、80)を設けることにより、強誘電体キャパシタ51a、51b、52a、52bが揮発性記憶部(VSE)24内の負荷容量とならないようにすることが可能となる。
また、データ書込み用ドライバ(インバータ76、80)の出力端にパススイッチ78、82を接続し、強誘電体素子書込み信号E1に応じて、データの書込み時にのみ、パススイッチ78、82をオンさせる構成であれば、通常動作時には、強誘電体キャパシタ51a、51b、52a、52bが駆動されないようにすることが可能となる。
また、データ読出しの際には、通常動作信号E2に応じて、マルチプレクサ54、56の入出力経路を切り換えることにより、揮発性記憶部(VSE)24内の論理ゲート(図4ではインバータ72、70)と強誘電体キャパシタ51a、51b、52a、52bとの導通/遮断を制御することができる。従って、特定ノードをフローティングとするために、負荷の大きいクロック線を増設する必要がないため、消費電力の増大を回避することが可能となる。
なお、図4に示した不揮発性記憶ゲート12の構成例1では、誘電体素子書込み信号E1、通常動作信号E2が新たに必要となるが、これらの信号は、常時駆動されるクロック信号と異なり、通常時には一切駆動されないので、不揮発性記憶ゲート12の消費電力には、ほとんど影響を与えることがない。
このように、図4に示した不揮発性記憶ゲート12の構成例1であれば、通常動作中には強誘電体キャパシタが無駄に駆動されることがないので、揮発性の記憶ゲートと同レベルの高速化、並びに、低消費電力化を図ることが可能となる。
すなわち、揮発性の記憶ゲートと同等の取り扱いを行うことができるので、タイミング設計や消費電力設計などの再設計を行わずに、既存回路の記憶素子部分を本発明の不揮発性記憶ゲート12に置き換えることが可能となる。
従って、既存回路を容易に不揮発化することができるので、例えば、待機時にデータを消さずに電源を遮断し、電源投入後、即時に動作再開が可能なCPU等を実現することが可能となる。
(不揮発性記憶ゲートに用いられる強誘電体素子の特性)
次に、図4に示した不揮発性記憶ゲート12で用いられる強誘電体素子の特性について、詳細な説明を行う。
図8は、強誘電体素子の特性を説明するための図である。なお、図8の上段には、強誘電体キャパシタCsに電圧Vsを印加する様子が模式的に描写されている。また、図8の下段左側には、強誘電体キャパシタCsのヒステリシス特性が示されており、下段右側には、強誘電体キャパシタCsの容量特性が示されている。
図8に示すように、強誘電体キャパシタCsは、その両端間に電圧Vsを印加した際の残留分極状態に応じて容量特性が変化する。具体的に述べると、強誘電体キャパシタCsの両端間に正極性の電圧Vsを印加して、強誘電体キャパシタCsを非反転状態(y=1)とした場合には、その容量値が小さくなる。逆に、強誘電体キャパシタCsの両端間に負極性の電圧Vsを印加して、強誘電体キャパシタCsを反転状態(y=0)とした場合には、その容量値が大きくなる。従って、強誘電体キャパシタCsに記憶されたデータの読出しに際しては、上記した容量値の違いを電圧値に変換する必要がある。
そこで、図4に示した不揮発性記憶ゲート12は、不揮発性記憶部181,182からデータを読み出す際、非反転状態(y=1)の強誘電体キャパシタと、反転状態(y=0)の強誘電体キャパシタとの容量結合を用いる構成とされている。
図9は、強誘電体キャパシタ間の容量結合を用いたデータ読出し方式を説明するための図である。なお、図9の上段は、強誘電体キャパシタCL1a(強誘電体キャパシタCL2a)が反転状態(y=0)で、強誘電体キャパシタ51b(強誘電体キャパシタ52b)が非反転状態(y=1)であるときの容量特性を示している。図9の下段は、上記と逆に、強誘電体キャパシタ51a(強誘電体キャパシタ52a)が非反転状態(y=1)で、強誘電体キャパシタ51b(強誘電体キャパシタ52b)が反転状態(y=0)であるときの容量特性を示している。
先にも述べたように、強誘電体キャパシタに対するデータの書込みに際して、強誘電体キャパシタ51aと51bとの間、及び、強誘電体キャパシタ52aと52bとの間では、互いの残留分極状態が逆になるので、その容量特性としては、一方の容量値が大きいほど、他方の容量値が小さいという関係となる。
従って、互いに残留分極状態が逆である2つの強誘電体キャパシタ51aと51b、並びに、強誘電体キャパシタ52aと52bを直列に接続し、その一端にパルス電圧を加えたとき、両素子間の接続ノードに現れるノード電圧V1、V2(容量値の比で決まる電圧値であり、図9では読出し電圧Voutと表記)を検出する構成とすれば、読出し電圧Voutの振幅値を1(V)近辺まで確保して、読出しマージンを大幅に改善することが可能となる。
また、図4に示した不揮発性記憶ゲート12は、強誘電体キャパシタ51a、51bの容量比に応じたノード電圧V1と、強誘電体キャパシタ52a、52bの容量比に応じたノード電圧V2を比較することで、不揮発性記憶部181,182から読み出されたデータの0/1判定を行う構成とされているため、インバータの閾値を厳密に設定する必要はない。
このように、図4に示した不揮発性記憶ゲート12は、強誘電体キャパシタ間の容量結合を用いたデータ読出し方式が採用されているが、構成はこれに限定されるものではなく、強誘電体キャパシタ51a、52aと、インバータ72、70を構成するトランジスタのゲート容量との容量結合を用いて、不揮発性記憶部181,182からデータを読み出す構成(言い換えれば、図4の構成から、強誘電体キャパシタ51b、52bとMOSトランジスタQ1b、Q2bを除いた構成)としても構わないし、或いは、強誘電体キャパシタ51a、51bと、その他の容量素子C1、C2との容量結合を用いて、不揮発性記憶部181,182からデータを読み出す構成としても構わない。
(4進カウンタ)
図2(a)に示す4進カウンタ7の模式的回路構成は、図10に示すように、不揮発性記憶ゲート121,122,123,124と、ANDゲート841,842,843と、排他的ORゲート901,902,903,904とを備える。ANDゲート841,842,843と、排他的ORゲート901,902,903,904とから論理演算部14が構成される。不揮発性記憶ゲート121,122,123,124には、通常動作用制御線98と、不揮発動作用制御線100が接続される。
通常動作用制御線98には、クロック制御端子92を介してクロック信号CLK,反転クロック信号CLKBが供給される。
不揮発動作用制御線100には、不揮発動作制御端子94を介して、強誘電体素子書込み信号E1、通常動作信号E2、強誘電体素子駆動用信号PL1およびPL2、強誘電体素子両端短絡信号FRSTが供給される。
ANDゲート841の入力端および排他的ORゲート901の入力端には、4進カウンタデータ入力端子86を介して、データ入力信号Dinが供給される。
ANDゲート841の出力端は、ANDゲート842の入力端および排他的ORゲート902の入力端に接続される。
ANDゲート842の出力端は、ANDゲート843の入力端および排他的ORゲート903の入力端に接続される。
ANDゲート843の出力端は、排他的ORゲート904の入力端に接続される。
不揮発性記憶ゲート121,122,123,124のデータ出力端子(Q)は、それぞれANDゲート841,842,843の入力端と、排他的ORゲート901,902,903,904の入力端に接続される。
排他的ORゲート901,902,903,904の出力端は、それぞれ不揮発性記憶ゲート121,122,123,124のデータ入力端子(D)に接続され、同時に4進カウンタデータ出力端子961,962,963,964に接続される。
4進カウンタデータ出力端子961,962,963,964において、それぞれ4進カウンタデータ出力信号Dout[0],Dout[1],Dout[2],Dout[3]が出力される。
(不揮発性記憶ゲートの制御信号線)
図11は、4進カウンタ7における複数の不揮発性記憶ゲート121,122,123,124に接続される電源制御部20からの制御信号線の接続構成を示すものである。この接続構成は、ランダム/ライン型構造である。制御信号線がランダム/ライン型構造である場合には、電源制御部20から複数の不揮発性記憶ゲート121,122,123,124に送信される不揮発性記憶制御信号NVCTLの伝搬遅延がそれぞれ異なるようになる。
制御信号線の接続構成はこれに限るものではない。不揮発性ゲート組込み型論理回路10について説明すると、例えば図12に示すように、複数の不揮発性記憶ゲート121,122,123,…,126および127,128,129,…,1212接続される電源制御部20からの制御信号線がツリー構造を備えているても良い。すなわち、図12に示すように、制御信号線がツリー構造を備えることによって、電源制御部20から複数の不揮発性記憶ゲート121,122,123,…,126および127,128,129,…,1212に送信される不揮発性記憶制御信号NVCTLの伝搬遅延が等しくなる。
また、不揮発性ゲート組込み型論理回路10は、図13に示すように、複数の不揮発性記憶ゲート121,122,123,…,126および127,128,129,…,1212に接続される電源制御部20からの制御信号線が混載型構造を備えていても良い。すなわち、図7に示すように、制御信号線が混載型構造を備えることによって、電源制御部20から複数の不揮発性記憶ゲート121,122,123,…,126に送信される不揮発性記憶制御信号NVCTLの伝搬遅延が等しくなり、一方、電源制御部20から複数の不揮発性記憶ゲート127,128,129,…,1212に送信される不揮発性記憶制御信号NVCTLの伝搬遅延がそれぞれ異なるようになる。
(8進カウンタ)
図14は、8進カウンタ9の電源制御を説明するための概略のブロック図である。8進カウンタ9は、4進カウンタ111・112と、絶縁ゲート131・132と、フリップフロップ(FF)15と、pMOSトランジスタS1・S3およびnMOSトランジスタS2・S4を備えている。
8進カウンタ9の4進カウンタ111・112は、VDD・GND間の電源に接続されている。電力供給制御信号SLP1が「H」で反転信号SLPB1が「L」のとき、トランジスタS1・S2がオンされ、4進カウンタ111に電力が供給される。電力供給制御信号SLP2が「H」で反転信号SLPB2が「L」のとき、トランジスタS3・S4がオンされ、4進カウンタ112に電力が供給される。一方、電力供給制御信号SLP1が「L」で反転信号SLPB1が「H」のとき、トランジスタS1・S2がオフするので、4進カウンタ111への電力供給は停止する。電力供給制御信号SLP2が「L」で反転信号SLPB2が「H」のとき、トランジスタS3・S4がオフされ、4進カウンタ112への電力供給は停止する。
FF15は、入力信号INがクロック信号CLKの一周期内で急峻に上がって下がった場合でも、データを保持して、一クロック周期分は後段の4進カウンタ111の動作を保証するものである。
絶縁ゲート131・132は、4進カウンタ111・112への電力供給が停止した場合でも出力を不定値とせず、後段に誤動作を引き起こさせないためのものである。例えば、電力供給制御信号SLP1が「H」で、4進カウンタ111が動作中である場合、4進カウンタ111からの出力信号OUT1を検出すると、電源制御部20は絶縁制御信号SEN1を「H」とする。これにより、絶縁ゲート131からは4進カウンタ111からの出力がそのまま出力される。一方、電力供給制御信号SLP1が「L」で、4進カウンタ111の動作が停止した場合、4進カウンタ111からの出力信号OUT1を検出すると、電源制御部20は絶縁制御信号SEN1を「L」とする。4進カウンタ111からの出力が不定値となった場合でも、絶縁ゲート131から「L」を出力するので、後段に誤動作を引き起こすことはない。絶縁ゲート132も同様であるので説明は省略する。
8進カウンタ9は、電源制御部20からの信号に応じて動作する。電源制御部20が、8進カウンタ9への入力信号INおよび4進カウンタ111・112からの出力信号OUT1、OUT2に応じて、4進カウンタ111への電力供給制御信号SLP1およびその反転信号SLPB1と、4進カウンタ112への電力供給制御信号SLP2およびその反転信号SLPB2、および絶縁制御信号SEN1、SEN2を切り換える。また、電源制御部20は、4進カウンタ111・112に、クロックCLK1・CLK2及び不揮発性記憶制御信号NVCTL1・NVCTL2を供給して、4進カウンタ111・112の動作を制御する。
図15は、4進カウンタ111・112の概略構成を示すブロック図であり、4進カウンタ111・112は同じ構成なので簡単のために4進カウンタ11と示している。
4進カウンタ11は、不揮発性記憶ゲート121,122,123,124と、ANDゲート841,842,843,844と、排他的ORゲート901,902,903,904とを備える。不揮発性記憶ゲート121,122,123,124には、通常動作用制御線98と、不揮発動作用制御線100が接続される。
通常動作用制御線98には、クロック制御端子92を介してクロック信号CLK,反転クロック信号CLKBが供給される。
不揮発動作用制御線100には、不揮発動作制御端子94を介して、強誘電体素子書込み信号E1、通常動作信号E2、強誘電体素子駆動用信号PL1およびPL2、強誘電体素子両端短絡信号FRSTが供給される。
ANDゲート841の入力端および排他的ORゲート901の入力端には、4進カウンタデータ入力端子86を介して、データ入力信号Dinが供給される。
ANDゲート841の出力端は、ANDゲート842の入力端および排他的ORゲート902の入力端に接続される。
ANDゲート842の出力端は、ANDゲート843の入力端および排他的ORゲート903の入力端に接続される。
ANDゲート843の出力端は、ANDゲート844の入力端および排他的ORゲート904の入力端に接続される。
ANDゲート844の出力は、4進カウンタ11の出力Coutとなる。
不揮発性記憶ゲート121,122,123,124のデータ出力端子(Q)は、それぞれANDゲート841,842,843,844の入力端と、排他的ORゲート901,902,903,904の入力端に接続される。
排他的ORゲート901,902,903,904の出力端は、それぞれ不揮発性記憶ゲート121,122,123,124のデータ入力端子(D)に接続される。
図16は、8進カウンタ9のタイミングチャートである。カウント開始前に、イニシャライズして、4進カウンタ111,112の両方を0にする。
(a)タイミングt0からt1までは、入力信号INが「L」のため、電力供給制御信号SLP1・SLP2はともに「L」である。この後、次のクロック信号CLKの立ち上りタイミングまでは、カウンタ111・112への電力供給は停止している(期間T1)。
(b)タイミングt1において入力信号INが「H」になると、次のクロック信号CLKの立ち上りタイミングt2において、電力供給制御信号SLP1は「H」とされ、4進カウンタ111への電力供給が開始される。なお、電力供給制御信号SLP2は「L」であり、4進カウンタ112への電力供給は停止している。この後、前段の4進カウンタ111からの出力信号OUT1が「L」の状態が継続する期間T1−T4は、4進カウンタ112への電力供給は引き続き停止のままである。
(c)また、タイミングt2では、図7を参照して説明したように、不揮発性記憶制御信号NVCTLにより、4進カウンタ111では不揮発性記憶ゲート12中の不揮発性記憶部18から揮発性記憶部24へのデータ読み出しを行う(データ復帰信号)。その後、電源制御部20より、4進カウンタ111へクロックCLK1が供給され、クロック立ち上りタイミングでカウント(Dout[3:0])がなされる。概略的には入力信号INが「H」である間(t3まで)はカウンタ処理が継続し、より詳細には入力信号INが「H」から「L」に切り替わった次のクロック立ち上りタイミング(t4)までカウンタ処理が継続する(期間T2)。
(d)タイミングt3において入力信号INが「L」になると、次のクロック信号CLKの立ち上りタイミングt4において、図7を参照して説明したように、不揮発性記憶制御信号NVCTLにより、4進カウンタ111の不揮発性記憶ゲート12中の揮発性記憶部24から不揮発性記憶部18へのデータ退避を行う(データ退避信号)。その後、電力供給制御信号SLP1は「L」とされ、4進カウンタ111への電力供給が停止される。4進カウンタ111への電力供給は、次に入力信号INが「H」となるタイミングt5の直後のクロック信号CLKの立ち上りタイミングt6までは、停止されたままである(期間T3)。
(e)タイミングt5において入力信号INが「H」になると、次のクロック信号CLKの立ち上りタイミングt6において、電力供給制御信号SLP1は「H」とされ、4進カウンタ111への電力供給が再開される。不揮発性記憶制御信号NVCTLにより、不揮発性記憶ゲート12中の不揮発性記憶部18から揮発性記憶部24へのデータ読み出しを行い、その後、電源制御部20より、4進カウンタへクロックCLK1が供給され、カウント処理が行われる。カウント処理は、次に入力信号INが「H」から「L」に切り替わるタイミングt9の直後のクロック立ち上りタイミング(t10)まで継続する(期間T4・T5)。
(f)タイミングt7において0−15までカウントし終わると、4進カウンタ111は出力信号OUT1を「H」にするとともに、再度0からカウントを開始する。
(g)一方、タイミングt7において4進カウンタ111からの出力信号OUT1が「H」になると、次のクロック信号CLKの立ち上りタイミングt8において、電力供給制御信号SLP2が「H」とされ、4進カウンタ112への電力供給が開始される。
(h)タイミングt8では、図7を参照して説明したように、不揮発性記憶制御信号NVCTLにより、4進カウンタ112への不揮発性記憶ゲート12中の不揮発性記憶部18から揮発性記憶部24へのデータ読み出しを行う。この場合は、元々カウント0であるので、それを表すデータが読み出される。その後、電源制御部20より、4進カウンタ112へクロックCLK2が供給され、クロック立ち上りタイミングでカウントがなされる。
4進カウンタ112は、4進カウンタ111の出力に応じてカウントを行うので、出力直後のみ電源を供給すればよい。このため、電源制御部20は、前段の4進カウンタ111の出力信号OUT1をチェックし、OUT1が「L」であれば4進カウンタ112への電源供給を停止してよいと判断する。電源制御部20は、4進カウンタ112へのクロックCLK2を停止し、不揮発性記憶制御信号NVCTLを出力して4進カウンタ112においてデータ退避を行う。その後、電源制御部20は、4進カウンタへの電源供給制御信号SLP2を「L」へと切り換える。
(i)タイミングt9において入力信号INが「L」になると、次のクロック信号CLKの立ち上りタイミングt10において、図7を参照して説明したように、不揮発性記憶制御信号NVCTLにより、4進カウンタ111の不揮発性記憶ゲート12中の揮発性記憶部24から不揮発性記憶部18へのデータ退避を行う(データ退避信号)。その後、電力供給制御信号SLP1は「L」とされ、4進カウンタ111への電力供給が停止される。4進カウンタ111への電力供給は、次に入力信号INが「H」となるタイミングt11の直後のクロック信号CLKの立ち上りタイミングt12までは、停止されたままである(期間T6)。
(j)タイミングt11において入力信号INが「H」になると、次のクロック信号CLKの立ち上りタイミングt12において、電力供給制御信号SLP1は「H」とされ、4進カウンタ111への電力供給が再開される。不揮発性記憶制御信号NVCTLにより、不揮発性記憶ゲート12中の不揮発性記憶部18から揮発性記憶部24へのデータ読み出しを行い、その後、電源制御部20より、4進カウンタ111へクロックCLK1が供給され、カウント処理が行われる。カウント処理は、次に入力信号INが「H」から「L」に切り換わるタイミングt16の直後のクロック立ち上りタイミング(t17)まで継続する(期間T7)。
(k)タイミングt13において0−15までカウントし終わると、4進カウンタ111は出力信号OUT1を「H」にするとともに、再度0からカウントを開始する。
(l)一方、タイミングt13において4進カウンタ111からの出力信号OUT1が「H」になると、次のクロック信号CLKの立ち上りタイミングt14において、電力供給制御信号SLP2が「H」とされ、4進カウンタ112への電力供給が再開される。
(m)タイミングt14では、図7を参照して説明したように、不揮発性記憶制御信号NVCTLにより、4進カウンタ112への不揮発性記憶ゲート12中の不揮発性記憶部18から揮発性記憶部24へのデータ読み出しを行う。その後、電源制御部20より、4進カウンタ112へクロックCLK2が供給され、クロック立ち上りタイミングでカウントがなされる。電源制御部20は、4進カウンタ111の出力信号OUT1をチェックし、不揮発性記憶制御信号NVCTLにより4進カウンタ112のデータ退避を行い、電源供給制御信号SLP2を「L」へと切り換える。
(n)タイミングt15において0−15までカウントし終わると、4進カウンタ112は出力信号OUT2を「H」にするとともに、再度0からカウントを開始する。出力信号OUT2の出力により、8進カウンタ9の出力信号OUTが出力される。
図4に示した不揮発性記憶ゲート12の構成例では、データ書込み用ドライバ(インバータ76、80)や、マルチプレクサ54、56が新たに必要となるが、不揮発性CPU1の命令処理部102、演算処理部110、演算結果記憶部104内における不揮発性記憶ゲート12の占有面積は、数%に過ぎないため、不揮発性CPU1全体に与える面積増加の影響は殆どない。
不揮発性記憶ゲート12を約300個搭載した不揮発性CPU1の試作結果においては、例えば、不揮発性CPU1の処理中の、例えば、約4msのみ、電源をオン状態にし、不揮発性CPU1の待機中の、例えば、約10msは、電源をオフ状態にすることができる。
このように、不揮発性CPU1の待機中は、電源をオフにすることによって、常時動作の場合に比べて、約70%程度消費電力量(mW・sec)を削減することができる。
通常のCPUにおいて、電源遮断前に記憶ゲート内の全データを外部に退避する方法により、電源遮断後もデータを保持する場合には、退避データビットレートの上昇と共に、電源のオン/オフ動作に伴うデータ退避時間は、リニアに上昇する。これに対して、本発明の実施の形態に係る不揮発性ゲート組込み型論理回路の場合には、退避データビットレートを上昇しても電源のオン/オフ動作に伴うデータ退避時間は、上昇せず、きわめて低い値の一定値に保持されている。
本実施の形態に係る不揮発性ゲート組込み型論理回路は、記憶装置として、CPUのソフトウェアから読み書きできるメモリのほかにFRAM(Ferroelectric Random Access Memory)などの強誘電体メモリ素子を適用した点に特徴がある。つまり、CPUの中の回路に含まれるフリップフロップなどの論理回路セルの中にFRAMなどの強誘電体メモリ素子を配置し、回路そのものを不揮発化した点に特徴がある。これによって、論理回路の高速性と低消費電力性を両立することができる。
図4に示した不揮発性記憶ゲート12の構成例を適用した不揮発性CPU1の場合、プロセッサを構成するフリップフロップの素子レベルに、FRAMと同様の不揮発性記憶素子が組み込まれている。つまり、この不揮発性記憶素子が記憶内容を保持する。よって、この不揮発性CPU1はLSIの根元から電源を一気に切ることができる。つまり、リーク電流などというものをまったく考えずに停止時電力をゼロにすることができる。この点は、プロセッサに限らず、ロジック系LSIすべてに適用可能である。すなわち、より広い範囲のロジックLSI全般に適用可能な回路技術を提供することができる。
本実施の形態によれば、記憶ゲートに不揮発性機能を有するデバイスを組込み、電源遮断後もデータを保持可能な不揮発性記憶ゲートおよびその動作方法を提供することができる。
また、本実施の形態によれば、不揮発性記憶ゲートを組込み、データ保持用電源の確保や、外部へのデータ退避なく、待機状態に入ると同時に電源を遮断できる不揮発性記憶ゲート組込み型論理回路およびその動作方法を提供することができる。
また、本実施の形態によれば、不揮発性記憶ゲートに対して、揮発性記憶ゲートと同等の動作が可能な機構を持たせ、通常動作時は揮発性記憶ゲートとして動作させることで、既存の設計情報をそのまま流用可能な不揮発性記憶ゲートおよび当該不揮発性記憶ゲートを組み込んだ不揮発性記憶ゲート組込み型論理回路を提供することができる。
通常動作を行うか、不揮発性記憶素子によるデータ保持を行うかは、論理演算回路の外部に設けた電源制御部20で行うことができる。
また、本実施の形態の不揮発性CPU1では、内部の電源制御部20にて、不揮発性CPU1内部の不揮発性記憶ゲート12を制御したが、本発明はこれに限るものではない。不揮発性CPU1の不揮発動作制御端子194にて、不揮発性CPU1の外部からの不揮発性記憶制御信号NVCTLを受信することもできる。
また、本実施の形態によれば、論理回路のレイアウト設計を行うにあたって、論理ゲートと不揮発性記憶ゲートのセルピッチを同一にすることによって、論理回路内部に効率的に不揮発性記憶ゲートを配置する不揮発性記憶ゲート組込み型論理回路を提供することができる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、電源遮断時、データ退避なく瞬時に電源を遮断できるため、論理演算回路が待機状態に入った場合、瞬時に電源を遮断し、リーク電流を効率的に削減することができる。
また、本発明の実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、タイミング設計、消費電力設計などの再設計を行わずに、既存回路情報をそのまま流用することができる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、既存回路を容易に不揮発化することができ、例えば、待機時に(データを消さず)電源を遮断し、電源投入後、即時動作再開が可能な4進カウンタ、8進カウンタ、不揮発性CPU等を実現することができる。
[第2の実施の形態]
本実施の形態は、図1に示す不揮発性CPU1において、不揮発性記憶ゲート12の代わりに、以下で説明する不揮発性記憶ゲート212を適用したものである。以下で説明する点を除けば、その他は第1の実施の形態と同じであるので説明は省略する。
(不揮発性記憶ゲート212の構成例)
本実施の形態に係る不揮発性記憶ゲート組込み型論理回路において適用可能な不揮発性記憶ゲート212は、図17に示すように、データ保持回路133a,133b、インバータ回路170、178、およびトランスファゲート146、172を有する揮発性記憶部224と、強誘電体キャパシタ51を有する不揮発性記憶部218とを備える。
データ保持回路133bは、データラッチ時に、インバータ回路136、138を直列にループ状に接続することによりデータを保持する。インバータ回路136は、主信号路に配置され、インバータ回路138は、帰還信号路に配置されている。ここに、主信号路とは、入力側のデータ伝搬路130aから出力側のデータ伝搬路130bへと信号を伝えるための主たる信号路であり、帰還信号路とは、出力側のデータ伝搬路130bから入力側のデータ伝搬路130aへと信号を帰還させるための信号路である。
データ保持回路133aは、データ保持回路133bと同様に構成され、データラッチ時に、インバータ回路129、174を直列にループ状に接続することによりデータを保持する。インバータ回路129は、主信号路に配置され、インバータ回路174は、帰還信号路に配置されている。
図17において、不揮発性記憶部218の強誘電体キャパシタ51の一端は強誘電体接続ノード134に接続され、他端には、強誘電体素子駆動用信号PLが供給される。
強誘電体キャパシタ51は、データ書込み時に、他端に強誘電体素子駆動用信号PLとして不揮発性データ書込み信号を供給することで、データ保持回路133bに保持されているデータに対応した分極状態を記憶する。また、データ復元時に、他端に強誘電体素子駆動用信号PLとして不揮発性データ読出し信号を供給することで、記憶していた分極状態に対応した電荷であって、インバータ回路136のしきい値電圧より高いまたは低い電圧をインバータ回路136の入力ノード137に発生させる電荷を、インバータ回路136の入力ノード137に供給する。
データ保持回路133bは、また、トランスファゲート140を備えている。トランスファゲート140は、入力ノード137とインバータ回路138の出力ノード139との間に挿入される。
トランスファゲート140は、データラッチ時およびデータ書込み時にオン状態なるように制御されるとともに、データ復元時には、不揮発性データ読出し信号の供給時にオフ状態であり、その後所定期間経過後にオン状態となるようオン/オフ制御される。
トランスファゲート146は、一端131aが強誘電体接続ノード134に接続され、他端131bが、データ保持回路133bと外部とを結ぶデータ伝搬路130のうち入力側のデータ伝搬路130aに接続されている。トランスファゲート146は、データ伝搬時にオン状態となるようにオン/オフ制御されるとともに、データ復元時には、トランスファゲート140がオフ状態である期間オフ状態であり、その後所定期間経過後にオン状態となるようにオン/オフ制御される。
インバータ回路129は、入力側のデータ伝搬路130aに挿入される。
データ入力信号Dは、インバータ回路170、トランスファゲート172およびデータ保持回路133aを介して、トランスファゲート146の他端131bに与えられる。
トランスファゲート140は、nMOSトランジスタ142とpMOSトランジスタ141により構成される。nMOSトランジスタ142およびpMOSトランジスタ141のゲート端子144および143には、それぞれ、クロック信号CKBおよび/CKBが供給される。ここに、クロック信号/CKBは、クロック信号CKBの反転信号である。
トランスファゲート146も、トランスファゲート140と同様に、nMOSトランジスタ135とpMOSトランジスタ132により構成される。nMOSトランジスタ135およびpMOSトランジスタ132のゲート端子145および147には、それぞれ、クロック信号CKAおよび/CKAが与えられる。
不揮発性記憶ゲート212における通常動作を説明すると以下のようである。なお、データ書込み動作およびデータ復元動作は別途後述する。
不揮発性記憶ゲート212では、通常動作として、データ保持回路133a・133bによりデータの伝搬・保持が行われる。ここで、不揮発性記憶ゲート212に供給されるクロック信号CKAとクロック信号CKBとは、後述するように、同時に「L」レベルとなる区間が一部にあるが、これを無視すれば全体としては相補的な信号となっている。この通常動作の説明では、簡単のためクロック信号CKAとクロック信号CKBとは相補的であるものとする。この場合、データの伝播・保持はクロック信号の立ち上り、または立ち下りタイミングに生ずる。
すなわち、揮発性記憶部224では、クロック信号CKAが「H」でクロック信号CKBが「L」のとき、トランスファゲート172がオフされ、トランスファゲート176はオンされ、トランスファゲート146はオンされ、トランスファゲート140はオフされる。したがって、インバータ回路129・174を含むデータ保持回路133aでは、クロック信号CKAが「L」から「H」へと切り換わる際に取り込まれたデータ入力信号Dが保持される。そして、インバータ回路136・138を含むデータ保持回路133bでは、そのデータをそのまま通過させ、揮発性記憶部224よりデータ出力信号Qが出力される。
クロック信号CKAが「L」でクロック信号CKBが「H」のときは、データ保持回路133bでは、クロック信号CKAが「H」から「L」へと切り換わる際に取り込まれた信号を保持する。揮発性記憶部224は、データ保持回路133bの信号に応じてデータ出力信号Qを出力する。
(4進カウンタ)
不揮発性記憶ゲート212を適用した4進カウンタの模式的回路構成は、図18に示すように、内部クロック生成回路148と、不揮発性記憶ゲート2121,2122,2123,2124と、ANDゲート841,842,843と、排他的ORゲート901,902,903,904とを備える。不揮発性記憶ゲート2121,2122,2123,2124には、通常動作用制御線98と、不揮発動作用制御線100が接続される。
通常動作用制御線98には、クロック制御端子92を介してクロック信号CLKおよびイネーブル信号ENが供給される。クロック信号CLKおよびイネーブル信号ENは、図18に示すように、内部クロック生成回路148に供給される。
不揮発動作用制御線100には、不揮発動作制御端子94を介して、強誘電体素子駆動用信号PLが供給される。
ANDゲート841の入力端および排他的ORゲート901の入力端には、4進カウンタデータ入力端子86を介して、データ入力信号Dinが供給される。
ANDゲート841の出力端は、ANDゲート842の入力端および排他的ORゲート902の入力端に接続される。
ANDゲート842の出力端は、ANDゲート843の入力端および排他的ORゲート903の入力端に接続される。
ANDゲート843の出力端は、排他的ORゲート904の入力端に接続される。
不揮発性記憶ゲート2121,2122,2123,2124のデータ出力端子(Q)は、それぞれANDゲート841,842,843の入力端と、排他的ORゲート901,902,903,904の入力端に接続される。
排他的ORゲート901,902,903,904の出力端は、それぞれ不揮発性記憶ゲート2121,2122,2123,2124のデータ入力端子(D)に接続され、同時に4進カウンタデータ出力端子961,962,963,964に接続される。
4進カウンタデータ出力端子961,962,963,964において、それぞれ4進カウンタデータ出力信号Dout[0],Dout[1],Dout[2],Dout[3]が出力される。
(内部クロック生成回路)
不揮発性記憶ゲート212の動作に必要な複数のクロックパルスを供給するための内部クロック生成回路148は、図19に示すように、イネーブル信号入力端子149と、基本クロック入力端子150と、クロック生成部154と、第3クロック出力端子151と、第1クロック出力端子152と、第2クロック出力端子153とを備える。
イネーブル信号入力端子149には、イネーブル信号ENが入力され、基本クロック入力端子150には、不揮発性記憶ゲート12の動作を制御するクロック信号CLKが入力される。
第3クロック出力端子151からは、クロック信号CLKの反転信号に所定の遅延を与えて得られるクロック信号CKC(第3クロックパルス)が出力される。
第1クロック出力端子152からは、クロック信号CKA(第1クロックパルス)が出力される。第1クロック出力端子152から出力されたクロック信号CKA、および/CKAによって、トランスファゲート176・146がオン/オフ制御される。
一方、第2クロック出力端子153からは、クロック信号CKB(第2クロックパルス)が出力される。第2クロック出力端子153から出力されたクロック信号CKBおよび/CKBによって、トランスファゲート172・140がオン/オフ制御される。
クロック生成部154は、多数の論理ゲートにより構成されており、イネーブル信号ENおよびクロック信号CLKに基づいて、クロック信号CKA、CKB、およびCKCを生成する。
図20は、図19の内部クロック生成回路148の論理回路タイミングチャートを示す。
図20に、イネーブル信号EN、クロック信号CLK、クロック信号CKC、クロック信号CKA、およびクロック信号CKBの関係を示す。クロック信号CKAとクロック信号CKBとは、同時に「L」レベルとなる区間が一部にあるが、これを無視すれば全体としては相補的な信号となっている。
したがって、このように構成された本発明の第2の実施の形態に係る不揮発性記憶ゲート組込み型論理回路において適用可能な不揮発性記憶ゲート212の構成例(図17参照)においては、データの伝搬とラッチとが交互に繰り返されることになる。
(論理回路タイミングチャート)
不揮発性記憶ゲート212におけるデータ書込み動作およびデータ復元動作を説明するためのタイミングチャートの一例は、図21に示すように表される。
(データ書込み動作)
図21を用いて、データ書込み動作を説明する。
データ書込み動作においては、まず、不揮発性記憶ゲート212の電源VDDおよびイネーブル信号ENがともにオン状態で、強誘電体キャパシタ51の他端に、強誘電体素子駆動用信号PLとして、書込み用信号(a)が供給される。
書込み用信号(a)は、図21に示すように、「L」レベルの強誘電体素子駆動用信号PLを「H」レベルにしたあと再び「L」レベルに戻すことにより生成される矩形信号である。書込み用信号(a)を強誘電体キャパシタ51の他端に付与することで、その時点でデータ保持回路133bに保持されているデータに対応した分極状態が、強誘電体キャパシタ51に記憶される。
その後、電源VDDをオフにする。電源VDDをオフにすることで、イネーブル信号ENもオフ(「L」レベル)となる。
なお、図21に示す例では、実線で示すように、いったん「H」レベルにした強誘電体素子駆動用信号PLを「L」レベルに戻した後に電源VDDをオフにするようにしたが、例えば、破線で示すように、強誘電体素子駆動用信号PLを「L」レベルに戻すことなく、電源VDDをオフにするようにしても良い。また、電源VDDをオフにせず、イネーブル信号ENのみをオフにすることもできる。
(データ復元動作)
図21および前に説明した図20を用いて、データ復元動作を説明する。
データ復元動作においては、図21に示すように、まず、不揮発性記憶ゲート212の電源VDDをオフにし、その状態で強誘電体キャパシタ51の他端に、強誘電体素子駆動用信号PLとして、読出し用信号(b)を供給する。
読出し用信号(b)は、「L」レベルであった強誘電体素子駆動用信号PLを「H」レベルにした後、再び「L」レベルに戻すことにより生成される矩形信号である。読出し用信号(b)を強誘電体キャパシタ51の他端に供給することで、強誘電体キャパシタ51に記憶されていた分極状態に対応した電荷が強誘電体接続ノード134に放出される。
この状態においては、イネーブル信号ENは、まだ「L」レベルである。したがって、図20に示すように、クロック信号CKAおよびCKBは、いずれも「L」レベルである。すなわち、トランスファゲート140および146はいずれも、オフ状態になっている。したがって、強誘電体接続ノード134に放出された電荷が、トランスファゲート140を介してインバータ回路138側に漏出したり、トランスファゲート146を介してインバータ回路129側に漏出したりすることはない(図17参照)。よって、フローティング状態の強誘電体接続ノード134に読み出しができる。
同様に、強誘電体接続ノード134の電位が電源VDDの値を越えない限り、電荷が、トランスファゲート146を構成するpMOSトランジスタ132のウェル領域(図示せず)に漏出することはない。
このように、強誘電体接続ノード134の電位が電源VDDの値を越えない限り、放出された電荷は、強誘電体接続ノード134にとどまる。したがって、強誘電体接続ノード134の電位は、放出された電荷を正確に反映したものとなる。
一方、何らかの不具合で、放出された電荷が大きすぎた場合や強誘電体接続ノード134に不要な電荷が残っていた場合には、電荷の放出によって、強誘電体接続ノード134の電位が電源VDDの値を越えてしまう可能性がある。
このような場合、余分な電荷は、トランスファゲート140を構成するpMOSトランジスタ141を介して、電源VDDに流れ込む。同様に、余分な電荷は、トランスファゲート146を構成するpMOSトランジスタ132のウェル領域(図示せず)に接続された電源VDDに流れ込む。
したがって、不揮発性記憶ゲート212においては、放出された電荷が大きすぎた場合や強誘電体接続ノード134に不要な電荷が残っていた場合であっても、電荷の放出によって、強誘電体接続ノード134の電位が電源VDDを越えてしまうことはない。すなわち、このような事態によって装置が破損することを防止することができる。
図21に戻って、その後、イネーブル信号ENをオン状態にする。図20に示すように、その後、クロック信号CKBが「H」レベルになる(図20の信号(c)を参照)。このとき、クロック信号CKAは、「L」レベルのままである。すなわち、図17に示すトランスファゲート146はオフ状態のままで、トランスファゲート140のみがオン状態になる。
したがって、不揮発性記憶ゲート212のデータ保持回路133bは、入力側のデータ伝搬路130aと切り離されたままで、そのループが閉じた状態となる。すなわち、外部からの影響を排除しつつ、インバータ回路136および138がループ状に接続された状態となる。このため、強誘電体接続ノード134の電位は、データ入力信号Dの影響を受けることなく、放出された電荷を正確に反映した論理レベル(「H」または「L」レベル)に到達する。
本実施の形態によれば、記憶ゲートに不揮発性機能を有するデバイスを組込み、電源遮断後もデータを保持可能な不揮発性記憶ゲートおよびその動作方法を提供することができる。
また、本実施の形態によれば、不揮発性記憶ゲートを組込み、データ保持用電源の確保や、外部へのデータ退避なく、待機状態に入ると同時に電源を遮断できる不揮発性記憶ゲート組込み型論理回路およびその動作方法を提供することができる。
また、本実施の形態によれば、不揮発性記憶ゲートに対して、揮発性記憶ゲートと同等の動作が可能な機構を持たせ、通常動作時は揮発性記憶ゲートとして動作させることで、既存の設計情報をそのまま流用可能な不揮発性記憶ゲート、および当該不揮発性記憶ゲートを組み込んだ不揮発性記憶ゲート組込み型論理回路を提供することができる。
また、本実施の形態によれば、論理回路のレイアウト設計を行うにあたって、論理ゲートと不揮発性記憶ゲートのセルピッチを同一にすることによって、論理回路内部に効率的に不揮発性記憶ゲートを配置する不揮発性記憶ゲート組込み型論理回路を提供することもできる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、電源遮断時、データ退避なく瞬時に電源を遮断できるため、論理演算回路が待機状態に入った場合、瞬時に電源を遮断し、リーク電流を効率的に削減することができる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、タイミング設計、消費電力設計などの再設計を行わずに、既存回路情報をそのまま流用することができる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、既存回路を容易に不揮発化することができ、例えば、待機時に(データを消さず)電源を遮断し、電源投入後、即時動作再開が可能な4進カウンタ、不揮発性CPU等を実現することができる。
[第3の実施の形態]
本実施の形態は、図1に示す不揮発性CPU1において、不揮発性記憶ゲート12の代わりに、以下で説明する不揮発性記憶ゲート412を適用したものである。以下で説明する点を除けば、その他は第1の実施の形態と同じであるので説明は省略する。
(不揮発性記憶ゲート412の構成例)
本実施の形態に係る不揮発性記憶ゲート組込み型論理回路において適用可能な不揮発性記憶ゲート412は、図22に示すように、不揮発性記憶部418と、データ入力信号D、クロック信号CKを受信し、データ出力信号Qを出力する揮発性記憶部424とを備える。
不揮発性記憶ゲート412においては、上述の実施の形態で説明したデータインタフェース制御部は、回路素子としては示されていないが、不揮発性記憶部418に入力されるセルプレート電位CPが上述の実施形態における不揮発性記憶制御信号NVCTLに相当する。
本実施の形態に係る不揮発性記憶ゲート組込み型論理回路は、順序回路の記憶ノードに対応して不揮発性記憶部418を設けることにより、周辺回路を設ける必要をなくし、小規模な回路によりレジューム機能を提供することができる。
不揮発性記憶ゲート412は、図22に示すように、例えば、Dフリップフロップ回路等のデータを保持する順序回路と組合せ回路とを含む処理回路を備えたASIC(特定用途向けIC)として具体化される。
ASICに含まれるDフリップフロップ回路は、例えばクロックの立ち上りエッジでデータを取り込み保持する回路である。図22に示すように、Dフリップフロップ回路は、2個のインバータ162及びインバータ163からなるデータ保持回路を有するマスター側のハーフラッチ回路と、インバータ165及びインバータ166からなるデータ保持回路を有するスレーブ側のハーフラッチ回路とを備える。
不揮発性記憶ゲート412は、特に、Dフリップフロップ回路の記憶ノードN1,N2にそれぞれ強誘電体キャパシタ169,168が接続され、記憶ノードN1,N2のデータが電源遮断前に予め強誘電体キャパシタ169,168に待避されてから電源が遮断され、電源の再投入時に強誘電体キャパシタ169,168に待避させられたデータが記憶ノードN1,N2に復帰させられる。
(論理回路タイミングチャート)
図23は、不揮発性記憶ゲート412の電源遮断前の動作及び電源再投入時の動作を説明するための論理回路タイミングチャートを示す。
以下,図22及び図23を参照して、不揮発性記憶ゲート412の動作について説明する。
(a)まず、タイミングt0〜t1の通常動作期間T1においては、通常動作状態にある。通常動作中、不揮発性記憶ゲート412には、図示しないクロック信号CKが供給されており、データ入力信号Dに対応したデータが上記クロック信号の立ち上りエッジ毎に記憶ノードN1,N2にそれぞれ保持される。
(b)電源VDDを遮断しようとする場合、次に、タイミングt1において、クロック信号CKが停止させられる。この時、記憶ノードN1は「H」レベルにあり、記憶ノードN2は「L」レベルにあるものとする。
(c)次に、タイミングt1〜t2のデータ書込み期間T2においては、揮発性記憶部24から不揮発性記憶部18へのデータ書込みが実行される。図23に示すように、タイミングt1からタイミングt2までのデータ書込み期間T2においては、セルプレートCPの電位が「H」レベルに設定される。このとき、記憶ノードN2は、「L」レベルにあるから、強誘電体キャパシタ168に負極性の電圧が加えられ、強誘電体キャパシタ168にデータ「L」が書き込まれる。
(d)次に、タイミングt2〜t3の電源遮断待ち期間T3においては、電源遮断待ち状態にある。セルプレートCPの電位が「L」レベルに設定される。このとき、記憶ノードN1は「H」レベルにあるから、強誘電体キャパシタ169には正極性の電圧が加えられる。即ち、強誘電体キャパシタ169にデータ「H」が書き込まれる。
(e)次に,タイミングt3において電源VDDが遮断されると、記憶ノードN1及びN2はともに「L」レベルになってデータは失われるが、強誘電体キャパシタ168にデータ「L」が保持され、強誘電体キャパシタ169にデータ「H」が保持される。このようにして、Dフリップフロップ回路を含む不揮発性記憶ゲート412では、電源遮断前に記憶ノードN1,N2に保持されていたデータを強誘電体キャパシタ169,168にそれぞれ待避させた後、電源が遮断される。
(d)次に、タイミングt3〜t4の電源遮断期間T4においては、電源遮断状態にある。
(e)次に、タイミングt4〜t5の電源復帰待ち期間T5においては、電源復帰待ち状態にある。電源を再投入する場合には、まずセルプレートCPがタイミングt4から「H」レベルに設定される。このとき、強誘電体キャパシタ168、強誘電体キャパシタ169には、それぞれの分極電荷の変化量に応じた電位が、記憶ノードN2,N1に生じる。この場合には、強誘電体キャパシタ169が接続された記憶ノードN1の方が、記憶ノードN2の電位よりも大きくなる。
(f)次に、タイミングt5において、電源VDDが再投入されると、パススイッチ160,164、およびインバータ162,163からなるDフリップフロップ回路は、ラッチ型センスアンプとして動作し、記憶ノードN1の電位は「H」レベル,記憶ノードN2の電位は「L」レベルに確定される。尚、ラッチ型センスアンプの動作については、DRAM等で使用されるものと同じである。
(f)次に、タイミングt5〜t6のデータ読出し期間T6においては、不揮発性記憶部18から揮発性記憶部24へのデータ読出しが実行される。
(g)次に、タイミングt6において、セルプレートCPがローレベルに設定されると共に、クロック信号CKの供給が再開される。このようにして、不揮発性記憶ゲート412では、強誘電体キャパシタ168,169に待避させられたデータが、記憶ノードN2,N1にそれぞれ復帰させられる。
このようにして,不揮発性記憶ゲート412では、記憶ノードN2,N1のデータが電源遮断前に,記憶ノードN2,N1にそれぞれ接続された強誘電体キャパシタ168,169に待避させられ、電源遮断後に復帰させられるため、レジューム機能を実現するために周辺回路を備えた不揮発性メモリを用いる必要がなくなる。
このため,回路構成をより簡素なものとすることができ、不揮発性メモリにアクセスするための専用回路やソフトウェアも必要ない。
更に、不揮発性メモリへのアクセスが不要になった分だけ読出し及び書込みの時間を短縮することができる。
本実施の形態によれば、記憶ゲートに不揮発性機能を有するデバイスを組込み、電源遮断後もデータを保持可能な不揮発性記憶ゲートおよびその動作方法を提供することができる。
また、本実施の形態によれば、不揮発性記憶ゲートを組込み、データ保持用電源の確保や、外部へのデータ退避なく、待機状態に入ると同時に電源を遮断できる不揮発性記憶ゲート組込み型論理回路およびその動作方法を提供することができる。
また、本実施の形態によれば、不揮発性記憶ゲートに対して、揮発性記憶ゲートと同等の動作が可能な機構を持たせ、通常動作時は揮発性記憶ゲートとして動作させることで、既存の設計情報をそのまま流用可能な不揮発性記憶ゲート、および当該不揮発性記憶ゲートを組み込んだ不揮発性記憶ゲート組込み型論理回路を提供することができる。
また、本実施の形態によれば、論理回路のレイアウト設計を行うにあたって、論理ゲートと不揮発性記憶ゲートのセルピッチを同一にすることによって、論理回路内部に効率的に不揮発性記憶ゲートを配置する不揮発性記憶ゲート組込み型論理回路を提供することもできる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、電源遮断時、データ退避なく瞬時に電源を遮断できるため、論理演算回路が待機状態に入った場合、瞬時に電源を遮断し、リーク電流を効率的に削減することができる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、タイミング設計、消費電力設計などの再設計を行わずに、既存回路情報をそのまま流用することができる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、既存回路を容易に不揮発化することができ、例えば、待機時に(データを消さず)電源を遮断し、電源投入後、即時動作再開が可能な4進カウンタ、不揮発性CPU等を実現することができる。
[第4の実施の形態]
(不揮発性CPU)
本発明の第4の実施の形態に係る不揮発性記憶ゲート組込み型論理回路である不揮発性CPU101は、図24に示すように、命令処理部202と、命令処理部202に接続され、命令処理部202から演算制御信号ACSを受信する演算処理部210と、演算処理部210に接続され、演算処理部210から演算出力信号zを受信する演算結果記憶部204と、演算結果記憶部204および命令処理部202に接続され、出力信号aを演算処理部210に供給するスイッチブロック206と、スイッチブロック206および命令処理部202に接続され、命令処理部202からスイッチ制御信号SCSを受信し、出力信号bを演算処理部210に供給するスイッチブロック208とを備える。
さらに、不揮発性CPU101は、動作制御を行う動作制御部220を有する。動作制御部220は、命令処理部202、演算結果記憶部204、スイッチブロック206・208、演算処理部210への電源供給を制御するとともに、各部とバス接続されデータのやり取りを行う。動作制御部220は、後述する不揮発性記憶ゲート612に不揮発性記憶制御信号NVCTLを出力する。
プログラム/データ入出力線312を介して、命令処理部202には、プログラム/データ入力端子312aが接続され、スイッチブロック208には、プログラム/データ出力端子312bが接続される。
また、図24に示すように、不揮発性CPU101には、制御信号入出力線314を介して、制御信号入力端子314bおよび制御信号出力端子314aが接続される。
また、図24に示すように、不揮発性CPU101には、クロック制御端子292を介して、クロック信号CLKおよびリセット信号RESET#が供給され、不揮発動作用制御線200に接続される不揮発動作制御端子294を介して、レジスタ指定アドレス信号ADDR、電源遮断通知信号OFF、後述する不揮発性記憶部618への書込み制御信号WE、不揮発性記憶部618からの読出し制御信号RDが供給される。
また、命令処理部202は、図示しない不揮発性記憶ゲート612を有する論理回路ブロックを備え、演算結果記憶部204は、不揮発性記憶ゲート612を有する論理回路ブロックを備え、演算処理部210は、不揮発性記憶ゲート612を有する論理回路ブロックを備える。
後述する不揮発性記憶ゲート612では、パワーオンリセット部124、カウンタ105、デコーダ113、不揮発性記憶部618が必要となるが、不揮発性CPU101の命令処理部202、演算処理部210、演算結果記憶部204内における不揮発性記憶ゲート612の占有面積は、数%に過ぎないため、不揮発性CPU101全体に与える面積増加の影響は殆どない。
(不揮発性記憶ゲート612の構成例)
本実施の形態に係る不揮発性記憶ゲート組込み型論理回路において適用可能な不揮発性記憶ゲート612は、図25に示すように、不揮発性記憶部(NVSE)618と、データ入力端子からデータ入力信号DATA、クロック入力端子から(レジスタ内容保存部126を介して)クロック信号CLKを受信し、データ出力端子からデータ出力信号Qを出力する揮発性記憶部(VSE)624とを備える。
さらに、不揮発記憶ゲート612は、不揮発性記憶部618 へのデータ書込みおよび不揮発性記憶部618からのデータ読出しのための不揮発性記憶制御信号NVCTLを受信するデータインタフェース制御部622を有する。揮発性記憶部624は、データインタフェース制御部622に隣接して配置される。データインタフェース制御部622は不揮発性記憶部618に隣接して配置される。データインタフェース制御部622のブロック構成部より揮発性記憶部624および不揮発性記憶部618を除いた部分がデータインタフェース制御部622に相当している。
不揮発性記憶ゲート612は、電源切断時のレジスタ内容を、ソフトウェア等の外部サポート無しに電源投入時に復帰できるようにし、非動作時には電源を切る事によって消費電力を低減することができる。
不揮発性記憶ゲート612は、レジスタ部と表記された揮発性記憶部624、アドレスデコーダ111を含む従来回路部128と、カウンタ105、デコーダ113及び不揮発型記憶素子と表記された不揮発性記憶部618からなるレジスタ内容保存部126と、カウンタ105を初期化するパワーオンリセット部124を備えている。
電源VCCを投入すると、レジスタ内容保存部126に記憶されていた内容を揮発性記憶部624へ送る。通常動作中は揮発性記憶部624の内容はレジスタ内容保存部126には記憶されず、外部からオフ信号を与えた時点で記憶される。オフ信号を与えた後、電源を切断する。電源を再投入すると、オフ信号を与えた時点で記憶されたレジスタ内容保存部126の内容が揮発性記憶部624に送られ、電源を切った時点での状態に復帰する。
従来回路部128には、アドレスバス125の信号から揮発性記憶部24のI/Oアドレスをデコードするアドレスデコーダ111と、データバス120を通じて伝達される内容を記憶するフリップフロップからなる揮発性記憶部624が含まれている。
レジスタ内容保存部126は電源供給を停止したときのレジスタの状態を保存する不揮発性記憶部618と、クロック信号CLKのクロックパルスを計測するカウンタ105と、カウンタ105の出力から特定のカウント数をデコードし、アクティブLレベルである出力信号を持つデコーダ113とを有している。カウンタ105のリセット端子(/RESET)には、パワーオンリセット部124からの信号線が接続されている。
(不揮発性記憶ゲート612の動作)
まず、電源VCCを投入すると、パワーオンリセット部124からのパワーオンリセット出力信号PORにより、カウンタ105は初期状態(カウント0)になる。DE端子にはデコーダ113からの出力「H」レベルが入力されているため、カウンタ105に入力されるクロック信号CLKはそのまま0からカウントされることになる。カウンタ105の出力はデコーダ113に入力され、特定のカウントに至るまでその出力は「H」レベルのままであり、それは不揮発性記憶部618のOE信号となって伝達する。
不揮発性記憶部618は保持しておいた内容をVRDT端子から読みだし用内部データバス116を介して揮発性記憶部624へ送る。このとき、デコーダ113からの信号が「H」レベル、オフ端子には信号が来ていないので「L」レベルであるから、ORゲート115の出力は「H」レベルである。トライステートバッファ119はこれを受けてハイインピーダンスの状態にあるため、データバス120は内部データバス116から切り離されており、データの競合は起こらない。デコーダ113からの出力はORゲート118を通じて揮発性記憶部624のクロックにも伝わり、内部データバス116上の不揮発性記憶部618からのデータが揮発性記憶部624に記憶される。
上記動作が終了し、以前保持された揮発性記憶部624の内容が復帰する迄のクロック数がデコーダ113の持つ特定のカウントであり、このカウントに達した時点でデコーダ113の出力は「L」レベルになる。カウンタ105のDE端子はこれを受け、以後クロック信号CLKはカウントされず、カウンタ105の動作は影響しなくなる。よってデコーダ113の出力はこれ以降、常に「L」レベルのままとなる。OE端子もまた「L」レベルが伝わるから、不揮発性記憶部618からはデータが出力されなくなる。これと「L」レベルのオフ信号によって、ORゲート115の出力は「L」レベルとなり、トライステートバッファ119はゲートが開いた状態となって通常動作になる。
通常動作しているときは、アドレスバス125から入力されたレジスタ指定アドレス信号ADDRが揮発性記憶部624のI/Oアドレスであり、かつI/Oアクセスを表わす不揮発性記憶部618への書込み制御信号WEが同時に入力されているならば、アドレスデコーダ111からの出力と不揮発性記憶部618への書込み制御信号WEによりANDゲート127が開き、ORゲート118を介して揮発性記憶部624にクロックがはいる。
このときデータバス120に現れているデータ入力信号DATAはトライステートバッファ119を介し、揮発性記憶部624へ書き込まれる。揮発性記憶部624の内容を読み出すときは不揮発性記憶部618からの読出し制御信号RDを入力する。これによりトライステートバッファ121のゲートが開き、バッファ123を介して揮発性記憶部624の内容がデータバス120上に現れる。アドレスデコーダ111からの出力と不揮発性記憶部618からの読出し制御信号RDは、ANDゲート122を介して、トライステートバッファ121のゲートに供給される。揮発性記憶部624には、リセット信号RESET#が供給される。
電源を切るときは、まず電源遮断通知信号OFFに「H」レベルを与える。電源遮断通知信号OFFは不揮発性記憶部618のVE端子につながっており、これにより揮発性記憶部624の出力端子からRDDT端子へつながる書込み用内部データバス117を通じて揮発性記憶部624の内容が記憶される。このとき、ORゲート115の出力は、電源遮断通知信号OFFが「H」レベル、デコーダ113からの出力は「L」レベルのままであるから「H」レベルへと変化する。よってトライステートバッファ119はゲートが閉じた状態になり、データバス120は読出し用内部データバス116から切り離されるので、不揮発性記憶部618が揮発性記憶部624の内容を記憶する間に揮発性記憶部624の内容が書き換えられることは無い。この動作に必要十分な期間の後、電源遮断通知信号OFFを「L」レベルに戻す。そののち、投入されている電源VCCを切る。
以上のように説明した不揮発性記憶ゲート612を、概略のブロック図で表すと図26のようになる。不揮発性記憶ゲート612は、不揮発性記憶部618、揮発性記憶部624、切り換え部623、パワーオンリセット部124及び論理回路部628を備えている、と表現できる。なお、図26では、簡単のため外部との信号線は省略した。この場合、パワーオンリセット部124からのパワーオンリセット出力信号PORに応じて、不揮発性記憶部618から揮発性記憶部624への書込みを行わせるカウンタ105・デコーダ113・ORゲート115が切り換え部623に相当する。従来回路部128のうち揮発性記憶部624を除いたものが論理回路部628に相当する。
(論理回路タイミングチャート)
図27は電源VCC投入時および切断時のタイムチャートである。電源切断時に外部から入力する電源遮断通知信号OFF以外は制御信号類は必要無い。図27においては、論理回路電源VCC、パワーオンリセット出力信号POR、デコーダ113の動作タイミング信号、電源遮断通知信号OFF、ORゲート115の動作タイミング信号、トライステートバッファ119の動作タイミング信号のタイミングチャートがそれぞれ示されている。
(a)まず、期間T1は、通常動作状態にある。
(b)次に、期間T2においては、揮発性記憶部624から不揮発性記憶部618へのデータ書込みが実行される。
(c)次に、期間T3においては、電源遮断待ち状態にある。
(d)次に、期間T4においては、電源遮断状態にある。
(e)次に、期間T5においては、電源復帰待ち状態にある。
(f)次に、期間T6においては、不揮発性記憶部18から揮発性記憶部24へのデータ読出しが実行される。
(4進カウンタ)
図25に示した不揮発性記憶ゲート612を適用した4進カウンタの構成例は、図28に示すように、4進カウンタは、不揮発性記憶ゲート6121,6122,6123,6124と、ANDゲート841,842,843と、排他的ORゲート901,902,903,904とを備える。不揮発性記憶ゲート6121,6122,6123,6124には、通常動作用制御線298と、不揮発動作用制御線200が接続される。
通常動作用制御線298には、通常動作制御端子288を介してリセット信号RESET#が供給され、クロック制御端子292を介してクロック信号CLKが供給される。
不揮発動作用制御線200には、不揮発動作制御端子294を介して、レジスタ指定アドレス信号ADDR、電源遮断通知信号OFF、不揮発性記憶部618への書込み制御信号WE、不揮発性記憶部618からの読出し制御信号RDが供給される。
ANDゲート841の入力端および排他的ORゲート901の入力端には、4進カウンタデータ入力端子286を介して、データ入力信号Dinが供給される。
ANDゲート841の出力端は、ANDゲート842の入力端および排他的ORゲート902の入力端に接続される。
ANDゲート842の出力端は、ANDゲート843の入力端および排他的ORゲート903の入力端に接続される。
ANDゲート843の出力端は、排他的ORゲート904の入力端に接続される。
不揮発性記憶ゲート6121,6122,6123,6124のデータ出力端子(Q)は、それぞれANDゲート841,842,843の入力端と、排他的ORゲート901,902,903,904の入力端に接続される。
排他的ORゲート901,902,903,904の出力端は、それぞれ不揮発性記憶ゲート6121,6122,6123,6124のデータ入力端子(D)に接続され、同時に4進カウンタデータ出力端子2961,2962,2963,2964に接続される。
4進カウンタデータ出力端子2961,2962,2963,2964において、それぞれ4進カウンタデータ出力信号Dout[0],Dout[1],Dout[2],Dout[3]が出力される。
本実施の形態によれば、記憶ゲートに不揮発性機能を有するデバイスを組込み、電源遮断後もデータを保持可能な不揮発性記憶ゲートおよびその動作方法を提供することができる。
また、本実施の形態によれば、不揮発性記憶ゲートを組込み、データ保持用電源の確保や、外部へのデータ退避なく、待機状態に入ると同時に電源を遮断できる不揮発性記憶ゲート組込み型論理回路およびその動作方法を提供することができる。
また、本実施の形態によれば、不揮発性記憶ゲートに対して、揮発性記憶ゲートと同等の動作が可能な機構を持たせ、通常動作時は揮発性記憶ゲートとして動作させることで、既存の設計情報をそのまま流用可能な不揮発性記憶ゲート、および当該不揮発性記憶ゲートを組み込んだ不揮発性記憶ゲート組込み型論理回路を提供することができる。
また、本実施の形態によれば、論理回路のレイアウト設計を行うにあたって、論理ゲートと不揮発性記憶ゲートのセルピッチを同一にすることによって、論理回路内部に効率的に不揮発性記憶ゲートを配置する不揮発性記憶ゲート組込み型論理回路を提供することもできる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、電源遮断時、データ退避なく瞬時に電源を遮断できるため、論理演算回路が待機状態に入った場合、瞬時に電源を遮断し、リーク電流を効率的に削減することができる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、タイミング設計、消費電力設計などの再設計を行わずに、既存回路情報をそのまま流用することができる。
また、本実施の形態に係る不揮発性記憶ゲート組込み型論理回路によれば、既存回路を容易に不揮発化することができ、例えば、待機時に(データを消さず)電源を遮断し、電源投入後、即時動作再開が可能な4進カウンタ、不揮発性CPU等を実現することができる。
[その他の実施の形態]
上記のように、本発明は第1乃至第4の実施の形態によって記載したが、この開示の一部をなす論述および図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例および運用技術が明らかとなろう。各実施形態の詳細な構成を可能な範囲で任意に組み合わせた構成も、本発明の範囲に含まれる。
不揮発性記憶ゲート12、212、412、612を適用した不揮発性CPU1の場合、プロセッサを構成するフリップフロップの素子レベルに、FeRAMと同様の不揮発性記憶素子が組み込まれている。つまり、この不揮発性記憶素子が記憶内容を保持する。よって、この不揮発性CPU1はLSIの根元から電源を一気に切ることができる。つまり、リーク電流などというものをまったく考えずに停止時電力をゼロにすることができる。この点は、プロセッサに限らず、ロジック系LSIすべてに適用可能である。すなわち、より広い範囲のロジックLSI全般に適用可能な回路技術を提供することができる。
このように、本発明はここでは記載していない様々な実施の形態などを含むことは勿論である。したがって、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。