図面 (/)

技術 半導体装置

出願人 ソニー株式会社
発明者 宇佐美公良工藤優
出願日 2016年6月9日 (5年4ヶ月経過) 出願番号 2017-525184
公開日 2018年4月12日 (3年6ヶ月経過) 公開番号 WO2016-208407
状態 特許登録済
技術分野 静的メモリのアクセス制御 MRAM・スピンメモリ技術 ホール/MR素子 S-RAM
主要キーワード スリープ制御回路 スリープ制御信号 復元制御 不揮発性レジスタ 不揮発化 遮断中 揮発性レジスタ EOR回路
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2018年4月12日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (12)

課題・解決手段

本発明は、不揮発性記憶部にデータを書き込むことによる消費エネルギーを削減することができるようにする半導体装置に関する。書込制御回路34は、MTJ素子MTJ1、MTJ2が記憶するデータと同一のデータを記憶する。書込制御回路34は、スレーブラッチ32に保持されているデータをMTJ素子MTJ1、MTJ2に記憶させるストア時に、内部に記憶されているデータとスレーブラッチ32が保持するデータとを比較して、MTJ素子MTJ1、MTJ2への書込みを行うか否かを制御する。書込制御回路34は、内部に記憶されているデータと、スレーブラッチ32が保持するデータとが一致する場合は、MTJ素子MTJ1、MTJ2にデータの書き込ませない制御を行う。

概要

背景

一般的に、半導体集積回路(LSI:Large Scale Integration circuit)の消費電力を低下させる技術として、半導体チップ内部の回路内部回路)に供給する電源電圧遮断し、内部回路をいわゆるスリープ状態にするパワーゲーティングと呼ばれる技術が知られている。パワーゲーティングに関する技術として、電源電圧の供給を遮断することにより内部状態や内部データが消失することを防止するための技術がある。例えば、特許文献1には、揮発性レジスタ及び不揮発性レジスタを設け、電源電圧の供給を遮断する場合に、揮発性レジスタから不揮発性レジスタにデータを退避させ、電源電圧の供給を再開する場合に、不揮発性レジスタから揮発性レジスタにデータを復元する技術が記載されている。

このように電源電圧の供給を遮断する場合に、内部状態や内部データを記憶させる不揮発性記憶部として例えば、特許文献2には、MTJ(Magnetic Tunnel Junction:磁気トンネル接合素子を用いた不揮発性フリップフロップ回路が記載されている。

図11には、不揮発性記憶部としてMTJ素子を用いた従来の不揮発性フリップフロップ回路の回路図の一例を示す。図11に示した不揮発性フリップフロップ回路1016は、マスターラッチ1030、スレーブラッチ1032、PMOSトランジスタP5、6、及びMTJ素子MTJ1、MTJ2を備える。マスターラッチ1030は、インバータIV1、IV2、NAND(Not And)回路NAND1、及びトランスファーゲートTG1〜TG3を備える。また、スレーブラッチ1032は、インバータIV5、IV6、PMOSトランジスタP7、NAND回路NAND2、及びトランスファーゲートTG4を備える。トランスファーゲートTG1〜TG4は、クロック信号CLKがインバータIV10により反転されたクロック信号CBと、インバータIV10の出力がインバータIV11により反転されたクロック信号C(クロック信号CLKと同じ論理値)とにより制御される。

図11に示した従来の不揮発性フリップフロップ回路1016では、パワーゲーティングにより電源電圧の供給を遮断する場合に、制御信号SRの論理値を「0」にし、制御信号SRがゲート印加されるPMOSトランジスタP5〜P7をオン状態にさせる。そして、制御信号CTRLの論理値として「1」及び「0」を順次与えることにより、スレーブラッチ1032が保持している1ビットの情報をMTJ素子MTJ1、MTJ2に書き込むことができる。パワーゲーティング終了後は、電源電圧の供給を再開させ、制御信号SRの論理値を「0」にし、PMOSトランジスタP5〜P7をオン状態にすることにより、MTJ素子MTJ1、MTJ2の抵抗値の差を利用して、上記書き込みを行った際の内部回路状態をスレーブラッチ1032に復元させることができる。

概要

本発明は、不揮発性記憶部にデータを書き込むことによる消費エネルギーを削減することができるようにする半導体装置に関する。書込制御回路34は、MTJ素子MTJ1、MTJ2が記憶するデータと同一のデータを記憶する。書込制御回路34は、スレーブラッチ32に保持されているデータをMTJ素子MTJ1、MTJ2に記憶させるストア時に、内部に記憶されているデータとスレーブラッチ32が保持するデータとを比較して、MTJ素子MTJ1、MTJ2への書込みを行うか否かを制御する。書込制御回路34は、内部に記憶されているデータと、スレーブラッチ32が保持するデータとが一致する場合は、MTJ素子MTJ1、MTJ2にデータの書き込ませない制御を行う。

目的

本発明は上記問題点を解決するためになされたものであり、不揮発性記憶部にデータを書き込むことによる消費エネルギーを削減することができる半導体装置を提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

フリップフロップと、前記フリップフロップが保持するデータを記憶する不揮発性記憶部と、自装置に対する電源電圧またはグランド電圧の供給が遮断される場合に、前記不揮発性記憶部に記憶されているデータと前記フリップフロップが保持するデータとが同一でない場合は、前記フリップフロップが保持するデータを前記不揮発性記憶部に書き込ませる制御を行い、前記不揮発性記憶部に記憶されているデータと前記フリップフロップに保持されているデータとが同一の場合は、前記フリップフロップが保持するデータを前記不揮発性記憶部に書き込ませない制御を行う書込制御部と、を備えた半導体装置

請求項2

前記書込制御部は、前記不揮発性記憶部に記憶されているデータを記憶し、記憶している当該データと、前記フリップフロップが保持するデータとを比較した比較結果に基づいて前記制御を行う、請求項1に記載の半導体装置。

請求項3

前記フリップフロップと前記不揮発性記憶部との間の接続及び切断を切り替える第1スイッチ素子をさらに備え、前記書込制御部は、前記書き込ませる制御を行う場合は、前記第1スイッチ素子により前記フリップフロップと前記不揮発性記憶部との間を接続させ、前記書き込ませない制御を行う場合は、前記第1スイッチ素子により前記フリップフロップと前記不揮発性記憶部との間を切断させる制御を行う、請求項1または請求項2に記載の半導体装置。

請求項4

自装置に対する電源電圧またはグランド電圧の供給が遮断された後に当該供給が再開された場合は、前記不揮発性記憶部に書き込まれたデータを復元させるために外部から入力される復元制御信号に応じて、前記不揮発性記憶部に書き込まれたデータを復元する復元部をさらに備えた、請求項1から請求項3のいずれか1項に記載の半導体装置。

請求項5

前記復元部は、前記復元制御信号に応じて前記フリップフロップと前記不揮発性記憶部との間の接続及び切断を切り替える第2スイッチ素子を備えた、請求項4に記載の半導体装置。

請求項6

前記不揮発性記憶部は、磁気トンネル接合素子である、請求項1から請求項5のいずれか1項に記載の半導体装置。

技術分野

0001

本発明は、半導体装置に関する。

背景技術

0002

一般的に、半導体集積回路(LSI:Large Scale Integration circuit)の消費電力を低下させる技術として、半導体チップ内部の回路内部回路)に供給する電源電圧遮断し、内部回路をいわゆるスリープ状態にするパワーゲーティングと呼ばれる技術が知られている。パワーゲーティングに関する技術として、電源電圧の供給を遮断することにより内部状態や内部データが消失することを防止するための技術がある。例えば、特許文献1には、揮発性レジスタ及び不揮発性レジスタを設け、電源電圧の供給を遮断する場合に、揮発性レジスタから不揮発性レジスタにデータを退避させ、電源電圧の供給を再開する場合に、不揮発性レジスタから揮発性レジスタにデータを復元する技術が記載されている。

0003

このように電源電圧の供給を遮断する場合に、内部状態や内部データを記憶させる不揮発性記憶部として例えば、特許文献2には、MTJ(Magnetic Tunnel Junction:磁気トンネル接合素子を用いた不揮発性フリップフロップ回路が記載されている。

0004

図11には、不揮発性記憶部としてMTJ素子を用いた従来の不揮発性フリップフロップ回路の回路図の一例を示す。図11に示した不揮発性フリップフロップ回路1016は、マスターラッチ1030、スレーブラッチ1032、PMOSトランジスタP5、6、及びMTJ素子MTJ1、MTJ2を備える。マスターラッチ1030は、インバータIV1、IV2、NAND(Not And)回路NAND1、及びトランスファーゲートTG1〜TG3を備える。また、スレーブラッチ1032は、インバータIV5、IV6、PMOSトランジスタP7、NAND回路NAND2、及びトランスファーゲートTG4を備える。トランスファーゲートTG1〜TG4は、クロック信号CLKがインバータIV10により反転されたクロック信号CBと、インバータIV10の出力がインバータIV11により反転されたクロック信号C(クロック信号CLKと同じ論理値)とにより制御される。

0005

図11に示した従来の不揮発性フリップフロップ回路1016では、パワーゲーティングにより電源電圧の供給を遮断する場合に、制御信号SRの論理値を「0」にし、制御信号SRがゲート印加されるPMOSトランジスタP5〜P7をオン状態にさせる。そして、制御信号CTRLの論理値として「1」及び「0」を順次与えることにより、スレーブラッチ1032が保持している1ビットの情報をMTJ素子MTJ1、MTJ2に書き込むことができる。パワーゲーティング終了後は、電源電圧の供給を再開させ、制御信号SRの論理値を「0」にし、PMOSトランジスタP5〜P7をオン状態にすることにより、MTJ素子MTJ1、MTJ2の抵抗値の差を利用して、上記書き込みを行った際の内部回路状態をスレーブラッチ1032に復元させることができる。

先行技術

0006

特開2014−225251号公報
特開2015−35653号公報

発明が解決しようとする課題

0007

図11に示した不揮発性フリップフロップ回路1016では、電源電圧の供給が遮断された後も、MTJ素子MTJ1、MTJ2にデータを保持し続けることが可能である(不揮発化)。これにより、パワーゲーティングを行い不揮発性フリップフロップ回路1016や出力信号Qによって駆動する内部回路をスリープ状態にすることにより、消費されるエネルギーを抑制することができる。さらに、パワーゲーティングを行う前後で内部回路の状態や内部データを保持することが可能となる。

0008

しかしながら、図11に示したような従来の不揮発性フリップフロップ回路1016では、MTJ素子MTJ1、MTJ2にデータを書き込む場合に多大なエネルギーが消費されるという問題点がある。

0009

すなわち、不揮発性フリップフロップ回路1016がパワーゲーティング時に保持しているデータをMTJ素子MTJ1、MTJ2に記憶させるためには、MTJ素子MTJ1、MTJ2に比較的大きな電流を流す必要がある。MTJ素子MTJ1、MTJ2に流す電流が大きいと、MTJ素子MTJ1、MTJ2の書き込み時の消費エネルギーが大きくなる。パワーゲーティングを行っている期間(スリープ期間)が比較的短い場合には、電源電圧の供給を遮断しているにもかかわらず、MTJ素子MTJ1、MTJ2の書き込みエネルギーのオーバーヘッドによって消費エネルギーがかえって増えてしまう場合がある。また、スリープ期間が比較的長い場合でも、MTJ素子MTJ1、MTJ2の書き込みエネルギーが大きいと、パワーゲーティングにより削減可能な消費エネルギーが少なくなってしまうという問題点がある。

0010

本発明は上記問題点を解決するためになされたものであり、不揮発性記憶部にデータを書き込むことによる消費エネルギーを削減することができる半導体装置を提供することを目的とする。

課題を解決するための手段

0011

本発明の第1の態様は、半導体装置であって、フリップフロップと、前記フリップフロップが保持するデータを記憶する不揮発性記憶部と、自装置に対する電源電圧またはグランド電圧の供給が遮断される場合に、前記不揮発性記憶部に記憶されているデータと前記フリップフロップが保持するデータとが同一でない場合は、前記フリップフロップが保持するデータを前記不揮発性記憶部に書き込ませる制御を行い、前記不揮発性記憶部に記憶されているデータと前記フリップフロップに保持されているデータとが同一の場合は、前記フリップフロップが保持するデータを前記不揮発性記憶部に書き込ませない制御を行う書込制御部と、を備える。

0012

また、本発明の第2の態様は、上記第1の態様において、前記書込制御部は、前記不揮発性記憶部に記憶されているデータを記憶し、記憶している当該データと、前記フリップフロップが保持するデータとを比較した比較結果に基づいて前記制御を行う。

0013

また、本発明の第3の態様は、上記第1の態様または第2の態様において、前記フリップフロップと前記不揮発性記憶部との間の接続及び切断を切り替える第1スイッチ素子をさらに備え、前記書込制御部は、前記書き込ませる制御を行う場合は、前記第1スイッチ素子により前記フリップフロップと前記不揮発性記憶部との間を接続させ、前記書き込ませない制御を行う場合は、前記第1スイッチ素子により前記フリップフロップと前記不揮発性記憶部との間を切断させる制御を行う。

0014

また、本発明の第4の態様は、上記第1の態様から第3の態様のいずれか1態様において、自装置に対する電源電圧またはグランド電圧の供給が遮断された後に当該供給が再開された場合は、前記不揮発性記憶部に書き込まれたデータを復元させるために外部から入力される復元制御信号に応じて、前記不揮発性記憶部に書き込まれたデータを復元する復元部をさらに備える。

0015

また、本発明の第5の態様は、上記第1の態様から第4の態様のいずれか1態様において、前記復元部は、前記復元制御信号に応じて前記フリップフロップと前記不揮発性記憶部との間の接続及び切断を切り替える第2スイッチ素子を備える。

0016

また、本発明の第6の態様は、上記第1の態様から第5の態様のいずれか1態様において前記不揮発性記憶部は、磁気トンネル接合素子である。

発明の効果

0017

本発明によれば、不揮発性記憶部にデータを書き込むことによる消費エネルギーを削減することができる、という効果が得られる。

図面の簡単な説明

0018

第1の実施形態の半導体装置の一例を示すブロック図である。
第1の実施形態の不揮発性フリップフロップ回路の回路図である。
第1の実施形態に係るMTJ素子の層構成及び動作を説明するための概略断面図である。
第1の実施形態に係るMTJ素子の動作の説明に関する電圧対抵抗値のグラフである。
第1実施形態の不揮発性フリップフロップ回路における入力信号Dの論理値が「1」の場合の制御シーケンスを表すタイムチャートである。
第1実施形態の不揮発性フリップフロップ回路における入力信号Dの論理値が「0」の場合の制御シーケンスを表すタイムチャートである。
第2の実施形態の不揮発性フリップフロップ回路の回路図である。
第3の実施形態の不揮発性フリップフロップ回路の回路図である。
第3実施形態の不揮発性フリップフロップ回路における入力信号Dの論理値が「1」の場合の制御シーケンスを表すタイムチャートである。
第4の実施形態の不揮発性フリップフロップ回路の回路図である。
従来の不揮発性フリップフロップ回路の回路図である。

実施例

0019

以下、図面を参照して本発明に係る実施形態の例を説明する。なお、各図面において同一機能を有する部分には同一符号が付されており、重複する説明は適宜、省略する。

0020

[第1の実施形態]
まず、本実施形態の半導体集積回路の構成について説明する。図1は、本実施形態の半導体集積回路10の一例を示すブロック図である。

0021

本実施形態の半導体集積回路10は、スリープ制御回路12、パワースイッチ14、不揮発性フリップフロップ回路16、及び内部回路18を備えている。

0022

本実施形態の半導体集積回路10は、内部回路18等に供給する電源電圧VDDVを遮断し、いわゆるスリープ状態にすることにより、消費電力を抑制する機能を有する。

0023

スリープ制御回路12は、上記スリープ状態(電源電圧VDDVの供給状態)を制御する機能を有している。本実施形態のスリープ制御回路12は、スリープ制御信号PS_ENをパワースイッチ14へ出力する。また、スリープ制御回路12は、詳細を後述する制御信号Save、SR1、SR2、及びCTRLを不揮発性フリップフロップ回路16へ出力する。

0024

パワースイッチ14は、スリープ制御信号PS_ENに応じて電源電圧VDDVの供給を遮断する機能を有する。図2に示すように本実施形態のパワースイッチ14は、具体例としてPMOSトランジスタP10を用いている。PMOSトランジスタP10のゲートはスリープ制御回路12に接続されており、スリープ制御回路12からスリープ制御信号PS_ENが入力される。

0025

PMOSトランジスタP10のソースは電源電圧VDDを供給する電源線に接続され、ドレインは電源電圧VDDVを供給する電源線に接続されている。本実施形態の半導体集積回路10では、スリープ状態に移行しない回路は電源電圧VDDにより駆動する。一方、スリープ状態に移行する回路は電源電圧VDDVにより駆動する。なお、本実施形態では、スリープ制御回路12の制御により、パワーゲーティングが行われスリープ状態に移行することができる回路領域(電源電圧VDDVで駆動する領域)を「PG(パワーゲーティング)領域」という。

0026

具体的には、通常の動作を行う通常状態では、スリープ制御回路12からパワースイッチ14へ論理値が「0」(Lowレベル)のスリープ制御信号PS_ENが出力される。これにより、パワースイッチ14のPMOSトランジスタP10はオン状態となり、電源電圧VDDVが供給される。一方、パワーゲーティング時のスリープ状態では、スリープ制御回路12からパワースイッチ14へ論理値が「1」(Highレベル)のスリープ制御信号PS_ENが出力される。これにより、パワースイッチ14のPMOSトランジスタP10はオフ状態となり、電源電圧VDDVの供給が遮断され、電源電圧VDDVにより駆動するPG領域の回路の駆動が停止し、スリープ状態となる。

0027

内部回路18は特に限定されるものではなく、ユーザ等の要求に応じた機能を有する回路であればよい。なお、内部回路18は、複数の機能(回路)を含んでいてもよい。また、内部回路18は、電源電圧VDDにより駆動する回路及び電源電圧VDDVにより駆動する回路(PG領域)の両者を含んでいてもよいし、一方の回路のみであってもよい。

0028

本発明の半導体装置として機能する不揮発性フリップフロップ回路16は、入力信号Dを保持(ラッチ)して、入力信号Dに応じた(同じ論理値(レベル)の)出力信号Qを出力する機能を有する。本実施形態の不揮発性フリップフロップ回路16は、PG領域であり、電源電圧VDDVにより駆動する。

0029

図2には、本実施形態の不揮発性フリップフロップ回路16の回路図を示す。図2に示すように、本実施形態の不揮発性フリップフロップ回路16は、D型フリップフロップであるマスターラッチ30及びスレーブラッチ32と、書込制御回路34と、を備える。

0030

マスターラッチ30は、不揮発性フリップフロップ回路16の外部から入力された入力信号Dをクロック信号CLKに応じたタイミングで取り込んで保持する機能を有する。

0031

マスターラッチ30は、インバータIV1〜IV3、及びトランスファーゲートTG1〜TG3を備える。インバータIV1には不揮発性フリップフロップ回路16の外部から入力信号Dが入力される。

0032

トランスファーゲートTG1〜TG3は、クロック信号CLKによりオン(ON)及びオフ(OFF)が制御される。なお、トランスファーゲートTG1と、トランスファーゲートTG2及びTG3とでは、クロック信号CLKによりオン、オフするタイミングが逆になっている。

0033

スレーブラッチ32は、マスターラッチ30から出力されたデータをクロック信号CLKに応じたタイミングで取り込んで保持し、入力信号Dと同じ論理値の出力信号Qを不揮発性フリップフロップ回路16の外部に出力する機能を有する。

0034

スレーブラッチ32は、インバータIV4〜IV6、トランスファーゲートTG4、及びNMOSトランジスタN7を備える。トランスファーゲートTG4は、クロック信号CLKによりオン及びオフが制御される。また、NMOSトランジスタN7は、制御信号SR1によりオン及びオフが制御される。トランスファーゲートTG1及びTG4は、クロック信号CLKによりオン、オフするタイミングが同一になっている。

0035

スレーブラッチ32のインバータIV6からは、出力信号Qが不揮発性フリップフロップ回路16の外部(内部回路18)に出力される。

0036

本実施形態のマスターラッチ30及びスレーブラッチ32によるフリップフロップ動作について説明する。

0037

クロック信号CLKの論理値が「1」から「0」になると、トランスファーゲートTG1、TG4はオン状態、トランスファーゲートTG2、TG3はオフ状態になる。これにより、マスターラッチ30では入力信号Dが取り込まれ、スレーブラッチ32ではクロック信号CLKの論理値が「0」になる前に取り込んだ信号が保持される。

0038

次にクロック信号CLKの論理値が「0」から「1」になると、トランスファーゲートTG1、TG4はオフ状態、トランスファーゲートTG2、TG3はオン状態になる。これにより、マスターラッチ30では、クロック信号CLKの論理値が「1」になる前に取り込んだ信号が保持され、スレーブラッチ32ではマスターラッチ30のトランスファーゲートTG3から出力された信号が取り込まれ、取り込まれた信号と同じ論理値の出力信号QがインバータIV6から出力される。

0039

本実施形態の書込制御回路34は、MTJ素子MTJ1、MTJ2に書き込んだデータと同一のデータを一時的に保持し、該データと、現在スレーブラッチ32に保持されているデータとの比較を行う。そして書込制御回路34は、比較結果に基づいてMTJ素子MTJ1、MTJ2にスレーブラッチ32に保持されているデータの書き込みを行うか否かを制御する。書込制御回路34は、MTJ素子MTJ1、MTJ2に記憶されているデータと、スレーブラッチ32に保持されているデータとが一致する場合は、MTJ素子MTJ1、MTJ2にデータの書き込みを行わない制御を行う。

0040

具体的には、本実施形態の書込制御回路34は、図2に示すようにインバータIV8、IV9、トランスファーゲートTG5、TG6、各々2入力のNEOR(Not Exclusive OR)回路NEOR1、及びNOR(Not OR)回路NOR1を備えている。

0041

トランスファーゲートTG5の入力端子はスレーブラッチ32のインバータIV4の入力端子(マスターラッチ30のトランスファーゲートTG3の出力端子)に接続されている。また、トランスファーゲートTG5の出力端子は、インバータIV8の入力端子及びトランスファーゲートTG6の出力端子に接続されている。インバータIV9の出力端子はトランスファーゲートTG6の入力端子に接続されている。トランスファーゲートTG5、TG6は制御信号Saveによりオン及びオフが制御される。なお、トランスファーゲートTG5と、トランスファーゲートTG6とでは、制御信号Saveによりオン、オフするタイミングが逆になっている。

0042

EOR回路NEOR1の一方の入力端子には、インバータIV8の出力端子及びインバータIV9の入力端子が接続されている。また、NEOR回路NEOR1の他方の入力端子には、スレーブラッチ32のインバータIV4の出力端子(インバータIV6の入力端子)が接続されている。

0043

NOR回路NOR1の一方の入力端子には制御信号SR2が入力される。また、他方の入力端子には、NEOR回路NEOR1の出力端子が接続されている。NOR回路NOR1からは出力信号selectWが出力される。

0044

さらに、図2に示すように本実施形態の不揮発性フリップフロップ回路16は、MTJ素子MTJ1、MTJ2、及びNMOSトランジスタN1〜N6を備える。なお、NMOSトランジスタN2、N3が本発明の第1スイッチ素子の一例であり、NMOSトランジスタN1、N4が本発明の復元部及び第2スイッチ素子の一例である。また、NMOSトランジスタN1、N4に入力される制御信号SR2が本発明の復元制御信号の一例である。

0045

ここで、本発明の不揮発性記憶部の一例であるMTJ素子MTJ1、MTJ2について説明する。図3には、本実施形態に係るMTJ素子MTJ1、MTJ2の層構成及び動作を説明するための概略断面図を示す。また、図4には、本実施形態に係るMTJ素子MTJ1、MTJ2の動作の説明に関する電圧対抵抗値のグラフを示す。図3に示すようにMTJ素子は、磁性を有し磁気の方向が変化する自由層(Free layer)20と、磁性を有し磁気の方向が一定のSAF(Synthetic anti-ferromagnetic)のピン層(Pinned layer)23と、の間にトンネルバリア層(Tunnel barrier layer)22を有する。ピン層23は、固定層(Reference layer)24を有している。また、MTJ素子は、下地層(Under layer)26、及び下部電極(Bottom electrode)28を有する。

0046

MTJ素子は、図4に示すようにMTJ素子に印加する電圧の大きさに応じて抵抗値が変化する。そのため、自由層20からピン層23へ向かう方向に電流を流すと、自由層20の磁化方向がピン層23と同一になってMTJ素子は低抵抗となり、論理値が「0」のデータを記憶した状態となる。一方、ピン層23から自由層20へ向かう方向に電流を流すと、自由層20の磁化方向がピン層23と反対になってMTJ素子は高抵抗となり、論理値が「1」のデータを記憶した状態となる。

0047

MTJ素子に記憶されたデータ(情報)は、電源電圧VDDVの供給が遮断されても保持される。そのため本実施形態の不揮発性フリップフロップ回路16は、パワーゲーティングを行う場合、電源電圧VDDVが遮断されてスリープ状態に移行する前に、スレーブラッチ32が保持しているデータをMTJ素子MTJ1、MTJ2に書き込んで記憶させる。また、不揮発性フリップフロップ回路16は、スリープ状態から復帰する場合は、MTJ素子MTJ1、MTJ2に書き込まれているデータをスレーブラッチ32へ読み出して復元する。

0048

なお、本実施形態では、スレーブラッチ32が保持しているデータをMTJ素子MTJ1、MTJ2に記憶させる動作を「ストア」という。また、MTJ素子MTJ1、MTJ2からデータを読み出しスレーブラッチ32に復元させる動作を「リストア」という。

0049

本実施形態のMTJ素子MTJ1、MTJ2は、自由層20側が制御信号CTRLが流れる制御信号線に接続されている。MTJ素子MTJ1のピン層23側はNMOSトランジスタN5の一端(ソース)に接続されており、MTJ素子MTJ2のピン層23側はNMOSトランジスタN6の一端(ソース)に接続されている。

0050

NMOSトランジスタN5は一端(ソース)がMTJ素子MTJ1に接続されており、他端(ドレイン)がNMOSトランジスタN1、N2の一端(ソース)に接続されている。一方、NMOSトランジスタN6は一端(ソース)がMTJ素子MTJ2に接続されており、他端(ドレイン)がNMOSトランジスタN3、N4の一端(ソース)に接続されている。NMOSトランジスタN5、N6は、制御信号SR1によりオン及びオフが制御される。

0051

NMOSトランジスタN1、N2は他端(ドレイン)がスレーブラッチ32(インバータIV4の入力端子)に接続されている。また、NMOSトランジスタN3、N4は他端(ドレイン)がスレーブラッチ32(インバータIV4の出力端子)に接続されている。NMOSトランジスタN1、N4は、制御信号SR2によりオン及びオフが制御される。また、NMOSトランジスタN2、N3は、書込制御回路34から出力される出力信号selectWによりオン及びオフが制御される。

0052

次に、本実施形態の不揮発性フリップフロップ回路16の動作について説明する。図5には、本実施形態の不揮発性フリップフロップ回路16の制御シーケンスを表すタイムチャートを示す。なお、図5では、論理値が「1」(Highレベル)の入力信号Dを不揮発性フリップフロップ回路16が取り込んで保持する場合を示している。

0053

まず、Initial(初期ステートにおいて、スリープ制御回路12から不揮発性フリップフロップ回路16に入力される制御信号SR2の論理値は「1」である。一方、制御信号SR1の論理値を「0」から「1」へ変化させ、制御信号SR1の論理値が「1」である期間に制御信号CTRLの論理値を「0」から「1」へ、さらに「1」から「0」へと変化させることにより、MTJ素子MTJ1、MTJ2を初期化する。MTJ素子MTJ1、MTJ2を初期化した後、再び制御信号SR1の論理値を「0」にする。さらに、制御信号Saveの論理値を「1」にして書込制御回路34内に記憶されているデータを初期化した後、再び制御信号Saveの論理値を「0」にする。

0054

次に、マスターラッチ30及びスレーブラッチ32に入力信号Dを取り込むActiveステートに移行する。図5に示したActive1ステートでは、制御信号SR1及び制御信号Saveの論理値を「0」にする。制御信号SR1の論理値が「0」のため、NMOSトランジスタN7はオフ状態である。また、制御信号Saveの論理値が「0」のため、トランスファーゲートTG5はオフ状態であり、トランスファーゲートTG6はオン状態である。

0055

この状態でクロック信号CLKをトグルさせることにより、マスターラッチ30及びスレーブラッチ32は通常のフリップフロップと同様の動作を行い、上述したように入力信号Dを取り込んで保持する。

0056

次に、パワーゲーティングを行う場合には、まずスレーブラッチ32に保持されているデータをMTJ素子MTJ1、MTJ2にストアする。この動作を行うのがStoreステートである。Storeステートでは、制御信号SR1の論理値を「1」、制御信号SR2の論理値を「0」に設定する。Storeステートでは、動作として以下の2つの場合が生ずる。

0057

1つ目は、図5においてStore1と記された場合であり、書込制御回路34内に記憶されているデータ(MTJ素子MTJ1、MTJ2に記憶されているデータ)と、スレーブラッチ32内に保持されているデータとが異なる場合の動作である。

0058

NEOR回路NEOR1の一方の入力端子にはインバータIV8から書込制御回路34内に記憶されているデータが入力される。また、NEOR回路NEOR1の他方の入力端子にはインバータIV4からスレーブラッチ32内に保持されているデータが入力される。NEOR回路NEOR1は、入力される2つのデータのレベルが一致しない場合は論理値が「0」の信号を出力する。そのため、NOR回路NOR1の一方の入力端子には論理値が「0」の制御信号SR2が入力され、他方の入力端子にはNEOR回路NEOR1から論理値が「0」の信号が入力される。従って、NOR回路NOR1から出力される出力信号selectWの論理値は「1」になる。

0059

出力信号selectWの論理値が「1」であるため、NMOSトランジスタN2、N3がオン状態になる。制御信号SR1の論理値が「1」であり、NMOSトランジスタN5〜N7がオン状態であるので、制御信号CTRLの論理値を「0」から「1」へ、さらに「1」から「0」へと変化させることにより、スレーブラッチ32とMTJ素子MTJ1、MTJ2との間で電流が流れ、スレーブラッチ32に保持されているデータがMTJ素子MTJ1、MTJ2に書き込まれる。この場合に、MTJ素子MTJ1、MTJ2に電流が流れるため、書き込みエネルギーが消費される。

0060

これに対し、Storeステートの2つ目は、図5においてSrore2と記された場合であり、書込制御回路34内に記憶されているデータと、スレーブラッチ32内に保持されているデータとが同一である場合の動作である。

0061

NEOR回路NEOR1は、入力される2つのデータのレベルが一致する場合は論理値が「1」の信号を出力する。そのため、この場合はNOR回路NOR1の一方の入力端子には論理値が「0」の制御信号SR2が入力され、他方の入力端子にはNEOR回路NEOR1から論理値が「1」の信号が入力される。従って、NOR回路NOR1から出力される出力信号selectWの論理値は「0」になる。

0062

出力信号selectWの論理値が「0」であるため、NMOSトランジスタN2、N3がオフ状態になる。NMOSトランジスタN1、N4もオフ状態であるため、NMOSトランジスタN5、N6がオン状態であっても、スレーブラッチ32とMTJ素子MTJ1、MTJ2との間には電流経路は生成されず、MTJ素子MTJ1、MTJ2にデータは書き込まれない。このとき、MTJ素子MTJ1、MTJ2には電流が流れないため、書き込みエネルギーは消費されない。

0063

Storeステートでの動作を行った後、Sleepステートに移行する。Sleepステートでは、スリープ制御信号PS_ENの論理値を「1」に設定することにより、パワースイッチ14のPMOSトランジスタP10をオフ状態にし、PG領域の電源電圧(電源電圧VDDV)の供給を遮断する。電源電圧の遮断中は、PG領域の回路内部の電荷はリークによって放電するため、スレーブラッチ32内の各ノードの電圧が0Vになる。そのため、出力信号Qの論理値は、図5に示すように「1」から「0」へ徐々に変化する。

0064

また、Sleepステートでは、制御信号SR1の論理値が「0」であるため、NMOSトランジスタN5、N6はオフ状態である。

0065

次に、Sleepステートを終了し、通常動作に復帰するためにリストアを行う。この動作を行うのがRestore(図5のRestore1、Restore2)ステートである。Restoreステートでは、スリープ制御信号PS_ENの論理値を「1」から「0」にし、また、制御信号SR1の論理値を「0」から「1」にし、制御信号SR2の論理値を「1」に保つ。

0066

この場合、スリープ制御信号PS_ENの論理値が「0」になるため、パワースイッチ14のPMOSトランジスタP10がオン状態になり、PG領域に対して電源電圧VDDVの供給が再開される。また、制御信号SR1の論理値が「1」になるため、NMOSトランジスタN5〜N7がオン状態になる。さらに、制御信号SR2の論理値が「1」であるため、NMOSトランジスタN1、N4がオン状態になる。そのため、MTJ素子MTJ1、MTJ2に記憶されているデータがスレーブラッチ32に書き込まれる。これによって、電源電圧VDDVの遮断前にスレーブラッチ32に保持されていたデータが復元できる。

0067

また、Restoreステートでは、スレーブラッチ32へのデータの復元が完了したタイミングで、制御信号SR1の論理値を「1」から「0」にし、制御信号Saveの論理値を「0」から「1」にする。制御信号SR1の論理値が「0」になるため、NMOSトランジスタN5〜N7がオフ状態になる。また、制御信号Saveの論理値が「1」になるため、トランスファーゲートTG5はオン状態になり、トランスファーゲートTG6はオフ状態になる。そのため、スレーブラッチ32へ復元したデータと同一のデータが、書込制御回路34内に記憶される。

0068

以上の動作により、本実施形態の不揮発性フリップフロップ回路16では、リストアにおいて、MTJ素子MTJ1、MTJ2に記憶されている最新のデータが、常に書込制御回路34内に記憶される。このため、その後マスターラッチ30及びスレーブラッチ32によるフリップフロップの通常動作(Activeステート)を続け、再びストアを行う場合にも、MTJ素子MTJ1、MTJ2に記憶されているデータを、書込制御回路34内に記憶されているデータによって代替することができる。

0069

書込制御回路34は、ストア時に、内部に記憶されているデータとスレーブラッチ32が保持するデータとを比較して、MTJ素子MTJ1、MTJ2への書き込みを行うか否かを切り替えることができる。書込制御回路34には、内部に記憶されているデータと、スレーブラッチ32が保持するデータとが一致する場合は、MTJ素子MTJ1、MTJ2にデータの書き込みを行わないよう制御する。従って、本実施形態の不揮発性フリップフロップ回路16は、MTJ素子MTJ1、MTJ2への無駄な書き込み動作を抑制することができ、無駄な書き込みエネルギーの消費を抑えることができる。

0070

なお、上記では、論理値が「1」の入力信号Dを取り込んで保持する場合の不揮発性フリップフロップ回路16の動作について図5を参照して詳細に説明したが、論理値が「0」の入力信号Dを保持する場合の不揮発性フリップフロップ回路16の動作も同様である。図6には、入力信号Dの論理値が「0」の場合の本実施形態の不揮発性フリップフロップ回路16の制御シーケンスを表すタイムチャートを示す。

0071

図6に示すように、Active1ステートでは、クロック信号CLKをトグルさせることにより、マスターラッチ30及びスレーブラッチ32は通常のフリップフロップと同様の動作を行い、上述したように入力信号Dを取り込んで保持する。入力信号Dの論理値が「0」であるため、図6に示した場合では、出力信号「Q」の論理値も「0」になり、Storeステート以降も「0」を維持する。また、出力信号Qの論理値が「0」の場合は、論理値が「1」である場合(図5参照)と異なり、Sleepステートでも論理値が変化することなく「0」のままである。

0072

論理値が「0」の入力信号Dを保持する場合は、上述のように出力信号Qの論理が異なる他は、図6に示すように不揮発性フリップフロップ回路16の動作、スリープ制御回路12から出力される各種制御信号の状態やパワースイッチ14の動作について、図5を参照して上述したものと同様であるため、ここでの詳細な説明を省略する。

0073

このように本実施形態の半導体集積回路10(不揮発性フリップフロップ回路16)では、入力信号Dの論理値に係わらず、MTJ素子MTJ1、MTJ2への無駄な書き込み動作を抑制することができる。
[第2の実施形態]
本実施形態の不揮発性フリップフロップ回路16は、NMOSトランジスタN1〜N6、NEOR回路NEOR1、及びNOR回路NOR1の配置が第1の実施形態の不揮発性フリップフロップ回路16と異なっている。なお、不揮発性フリップフロップ回路16のその他の構成や半導体集積回路10全体の構成は、第1の実施形態と同様のため、同様の部分については説明を省略する。

0074

図7には、本実施形態の不揮発性フリップフロップ回路の回路図を示す。図7に示すように、NMOSトランジスタN5、N6をスレーブラッチ32側に接続し、NMOSトランジスタN1〜N4をMTJ素子MTJ1、MTJ2側に接続している。

0075

具体的には、NMOSトランジスタN5は他端(ドレイン)がスレーブラッチ32(インバータIV4の入力端子)に接続されている。また、NMOSトランジスタN6は他端(ドレイン)がスレーブラッチ32(インバータIV4の出力端子)に接続されている。第1の実施形態と同様にNMOSトランジスタN5、N6は、制御信号SR1によりオン及びオフが制御される。

0076

NMOSトランジスタN1、N2は他端(ドレイン)がNMOSトランジスタN5の一端(ソース)に接続されており、一端(ソース)がMTJ素子MTJ1に接続されている。一方、NMOSトランジスタN3、N4は他端(ドレイン)がNMOSトランジスタN6の一端(ソース)に接続されており、一端(ソース)がMTJ素子MTJ2に接続されている。第1の実施形態と同様にNMOSトランジスタN1、N4は、制御信号SR2によりオン及びオフが制御される。また、NMOSトランジスタN2、N3は、書込制御回路34から出力される出力信号selectWによりオン及びオフが制御される。

0077

また、本実施形態の不揮発性フリップフロップ回路16は、書込制御回路34に備えられているNEOR回路NEOR1及びNOR回路NOR1の配置が異なっている。

0078

図7に示すようにNOR回路NOR1の一方の入力端子には制御信号SR2が入力される。また、他方の入力端子には、インバータIV4の出力が入力される。また、NEOR回路NEOR1の一方の入力端子には、インバータIV8の出力が入力され、他方の入力端子には、NOR回路NOR1の出力が入力される。NEOR回路NEOR1からは出力信号selectWが出力される。

0079

本実施形態の不揮発性フリップフロップ回路16の動作について説明する。

0080

第1の実施形態において上述したStoreステートにおいてNOR回路NOR1は、制御信号SR2の論理値が「0」であるため、インバータIV4の出力信号の論理値を反転した信号を出力する。そのため、NEOR回路NEOR1に入力される二つの信号は、書込制御回路34に記憶されているデータと、スレーブラッチ32が保持するデータとが一致している場合は論理値が異なり、両データが一致していない場合は論理値が同一になる。

0081

NEOR回路NEOR1から出力される出力信号selectWは、書込制御回路34に記憶されているデータと、スレーブラッチ32が保持するデータとが一致している場合は論理値が「0」になり、一致していない場合は論理値が「1」になる。このように書込制御回路34は、第1の実施形態で上述したStoreステートと同様に出力信号selectWを出力する。

0082

従って、第1の実施形態で説明した制御シーケンス(図2、6参照)と同様に動作させることにより、第1の実施形態の不揮発性フリップフロップ回路16と同様の機能を実現できる。
[第3の実施形態]
本実施形態では、上記各実施形態の不揮発性フリップフロップ回路16で用いていたNMOSトランジスタN1〜N7に代わりPMOSトランジスタを用いる場合について説明する。なお、上記各実施形態の不揮発性フリップフロップ回路16及び半導体集積回路10と同様の構成及び動作については説明を省略する。

0083

図8には、本実施形態の不揮発性フリップフロップ回路の回路図を示す。図8に示すように、本実施形態の不揮発性フリップフロップ回路116は、上記各実施形態の不揮発性フリップフロップ回路16におけるNMOSトランジスタN1〜N7に代わり、PMOSトランジスタP1〜P7を備えている。なお、PMOSトランジスタP2、P3が本発明の第1スイッチ素子の一例であり、PMOSトランジスタP1、P4が本発明の復元部及び第2スイッチ素子の一例である。また、PMOSトランジスタP1、P4に入力される制御信号SR2が本発明の復元制御信号の一例である。

0084

そのため、本実施形態の半導体集積回路110では、パワースイッチ114も上記各実施形態のパワースイッチ14と異なっている。本実施形態のパワースイッチ114は、図8に示すように具体例としてNMOSトランジスタN10を用いている。NMOSトランジスタN10のゲートにはスリープ制御回路12から出力されるスリープ制御信号PS_ENと論理値が反転した反転信号が入力される。

0085

通常状態では、論理値が「1」の信号(スリープ制御信号PS_ENの反転信号)が入力されてNMOSトランジスタN10がオン状態となり、VGND電圧がGND電圧に引き下げられる(VGND>GND)。一方、パワーゲーティングを行う場合には、論理値が「0」の信号(スリープ制御信号PS_ENの反転信号)が入力されてNMOSトランジスタN10がオフ状態になり、PG領域に供給されるGND電圧がVGND電圧に切り替わる。すなわち、通常状態(NMOSトランジスタN10がオン状態)の場合は、PG領域にはグランドとしてGND電圧が供給される。一方、パワーゲーティングを行う場合(NMOSトランジスタN10がオフ状態)には、GND電圧の供給が遮断され、グランドがVGND電圧になる。この場合、VGND>GNDであり、グランドの電位が高くなったことにより、PG領域の回路の駆動が停止し、スリープ状態となる。

0086

また、本実施形態の不揮発性フリップフロップ回路116では、PMOSトランジスタP1〜P7を用いたことに応じて、書込制御回路134が備える論理回路も上記各実施形態と異なっている。

0087

図8に示すように本実施形態の書込制御回路134は、論理回路としてNEOR回路NEOR1及びOR(OR)回路OR1を備える。

0088

NEOR回路NEOR1の一方の入力端子にはインバータIV8の出力が入力される。また、他方の入力端子にはインバータIV4の出力が入力される。また、OR回路OR1の一方の入力端子には制御信号SR2の論理値を反転した反転信号が入力され、他方の入力端子にはNEOR回路NEOR1の出力が入力される。OR回路OR1からは出力信号selectWが出力される。

0089

次に、本実施形態の不揮発性フリップフロップ回路116の動作について説明する。図9には、本実施形態の不揮発性フリップフロップ回路116の制御シーケンスを表すタイムチャートを示す。なお、図9では、論理値が「1」の入力信号Dを不揮発性フリップフロップ回路116が取り込んで保持する場合を示している。

0090

まず、Initial(初期)ステートにおいて、スリープ制御回路12から不揮発性フリップフロップ回路116に入力される制御信号SR2の論理値は「0」である。一方、制御信号SR1の論理値を「1」から「0」へ変化させ、制御信号SR1の論理値が「0」である期間に制御信号CTRLの論理値を「1」から「0」へ、さらに「0」から「1」へと変化させることにより、MTJ素子MTJ1、MTJ2を初期化する。MTJ素子MTJ1、MTJ2を初期化した後、再び制御信号SR1の論理値を「1」にする。さらに、制御信号Saveの論理値を「1」にして書込制御回路134内に記憶されているデータを初期化した後、再び制御信号Saveの論理値を「0」にする。

0091

次に、マスターラッチ30及びスレーブラッチ32に入力信号Dを取り込むActiveステートに移行する。図9に示したActive1ステートでは、制御信号SR1の論理値を「1」に、制御信号Saveの論理値を「0」にする。制御信号SR1の論理値が「1」のため、PMOSトランジスタP7はオフ状態である。また、制御信号Saveの論理値が「0」のため、トランスファーゲートTG5はオフ状態であり、トランスファーゲートTG6はオン状態である。

0092

この状態でクロック信号CLKをトグルさせることにより、マスターラッチ30及びスレーブラッチ32は通常のフリップフロップと同様の動作を行い上述したように入力信号Dを取り込んで保持する。

0093

次に、パワーゲーティングを行う場合には、まずスレーブラッチ32に保持されているデータをMTJ素子MTJ1、MTJ2にストアする。Storeステートでは、制御信号SR1の論理値を「0」、制御信号SR2の論理値を「1」に設定する。

0094

まず、書込制御回路34内に記憶されているデータ(MTJ素子MTJ1、MTJ2に記憶されているデータ)と、スレーブラッチ32内に保持されているデータとが異なる場合のStore1ステートについて説明する。

0095

NEOR回路NEOR1の一方の入力端子にはインバータIV8から書込制御回路134内に記憶されているデータが入力される。また、NEOR回路NEOR1の他方の入力端子には、インバータIV4からスレーブラッチ32内に保持されているデータが入力される。NEOR回路NEOR1は、入力される2つのデータのレベルが一致しない場合は論理値が「0」の信号を出力する。

0096

制御信号SR2の論理値が「1」であるため、OR回路OR1の一方の入力端子には制御信号SR2を反転した論理値が「0」の信号が入力され、他方の入力端子にはNEOR回路NEOR1から論理値が「0」の信号が入力される。従って、OR回路OR1から出力される出力信号selectWの論理値は「0」になる。

0097

出力信号selectWの論理値が「0」であるため、PMOSトランジスタP2、P3がオン状態になる。制御信号SR1の論理値が「0」であり、PMOSトランジスタP5〜P7がオン状態であるので、制御信号CTRLの論理値を「1」から「0」へ、さらに「0」から「1」へと変化させることにより、スレーブラッチ32とMTJ素子MTJ1、MTJ2との間で電流が流れ、スレーブラッチ32に保持されているデータがMTJ素子MTJ1、MTJ2に書き込まれる。この場合に、MTJ素子MTJ1、MTJ2に電流が流れるため、書き込みエネルギーが消費される。

0098

これに対して、書込制御回路34内に記憶されているデータと、スレーブラッチ32内に保持されているデータとが同一である場合の動作であるSrore2ステートについて説明する。

0099

NEOR回路NEOR1は、入力される2つのデータのレベルが一致する場合は論理値が「1」の信号を出力する。そのため、OR回路OR1の一方の入力端子には制御信号SR2を反転した論理値が「0」の信号が入力され、他方の入力端子にはNEOR回路NEOR1から論理値が「1」の信号が入力される。従って、OR回路OR1から出力される出力信号selectWの論理値は「1」になる。

0100

出力信号selectWの論理値が「1」であるため、PMOSトランジスタP2、P3がオフ状態になる。PMOSトランジスタP1、P4もオフ状態であるため、PMOSトランジスタP5、P6がオン状態であっても、スレーブラッチ32とMTJ素子MTJ1、MTJ2との間には電流経路は生成されず、MTJ素子MTJ1、MTJ2にデータは書き込まれない。このとき、MTJ素子MTJ1、MTJ2には電流が流れないため、書き込みエネルギーは消費されない。

0101

Storeステートでの動作を行った後、Sleepステートに移行する。Sleepステートでは、スリープ制御信号PS_ENの論理値を「1」に設定することにより、その反転信号により制御されるパワースイッチ114のNMOSトランジスタN10をオフ状態にし、PG領域へのGND電圧の供給を遮断する。GND電圧の遮断中は、PG領域の回路内部のすべてのノードは、電源電圧VDDからのリークによって充電されるため、スレーブラッチ32内の各ノードの電圧が電源電圧VDDと同一になる。

0102

また、Sleepステートでは、制御信号SR1の論理値が「1」であるため、PMOSトランジスタP5、P6はオフ状態である。

0103

次に、Sleepステートを終了し、通常動作に復帰するためにリストアを行う。Restoreステートでは、スリープ制御信号PS_ENの論理値を「1」から「0」にし、また、制御信号SR1の論理値を「1」から「0」にし、制御信号SR2の論理値を「0」に保つ。

0104

パワースイッチ14のNMOSトランジスタN10がオン状態になり、PG領域に対してGND電圧の供給が再開され、グランドの電位がVGND電圧からGND電圧に引き下げられる。また、制御信号SR1の論理値が「0」になるため、PMOSトランジスタP5〜P7がオン状態になる。さらに、制御信号SR2の論理値が「0」であるため、PMOSトランジスタP1、P4がオン状態になる。そのため、MTJ素子MTJ1、MTJ2に記憶されているデータがスレーブラッチ32に書き込まれる。これによって、GND電圧(グランド電圧)の遮断前にスレーブラッチ32に保持されていたデータが復元できる。

0105

また、Restoreステートでは、スレーブラッチ32へのデータの復元が完了したタイミングで、制御信号SR1の論理値を「0」から「1」にし、制御信号Saveの論理値を「0」から「1」にする。制御信号SR1の論理値が「1」になるため、PMOSトランジスタP5〜P7がオフ状態になる。また、制御信号Saveの論理値が「1」になるため、トランスファーゲートTG5はオン状態になり、トランスファーゲートTG6はオフ状態になる。そのため、スレーブラッチ32へ復元したデータと同一のデータが、書込制御回路34内に記憶される。

0106

このように、本実施形態の不揮発性フリップフロップ回路116も、上記各実施形態の不揮発性フリップフロップ回路16と同様の機能を実現できる。従って、本実施形態の不揮発性フリップフロップ回路116も、MTJ素子MTJ1、MTJ2への無駄な書き込み動作を抑制することができ、無駄な書き込みエネルギーの消費を抑えることができる。
[第4の実施形態]
本実施形態の不揮発性フリップフロップ回路116は、PMOSトランジスタP1〜P6の配置、及び書込制御回路134の論理回路が第3の実施形態の不揮発性フリップフロップ回路116と異なっている。不揮発性フリップフロップ回路116のその他の構成や半導体集積回路110全体の構成は、上記各実施形態と同様のため、同様の部分については説明を省略する。

0107

図10には、本実施形態の不揮発性フリップフロップ回路の回路図を示す。図10に示すように、PMOSトランジスタP5、P6をスレーブラッチ32側に接続し、PMOSトランジスタP1〜P4をMTJ素子MTJ1、MTJ2側に接続している。

0108

具体的には、PMOSトランジスタP5は一端(ソース)がスレーブラッチ32(インバータIV4の入力)に接続されている。また、PMOSトランジスタP6は一端(ソース)がスレーブラッチ32(インバータIV4の出力)に接続されている。第3の実施形態と同様にPMOSトランジスタP5、P6は、制御信号SR1によりオン及びオフが制御される。

0109

PMOSトランジスタP1、P2は一端(ソース)がPMOSトランジスタP5の他端(ドレイン)に接続されており、他端(ドレイン)がMTJ素子MTJ1に接続されている。一方、PMOSトランジスタP3、P4は一端(ソース)がPMOSトランジスタP6の他端(ドレイン)に接続されており、他端(ドレイン)がMTJ素子MTJ2に接続されている。第3の実施形態と同様にPMOSトランジスタP1、P4は、制御信号SR2によりオン及びオフが制御される。また、PMOSトランジスタP2、P3は、書込制御回路134から出力される出力信号selectWによりオン及びオフが制御される。

0110

また、本実施形態の書込制御回路134は、図10に示すように論理回路としてNOR回路NOR1及びEOR(Exclusive OR)回路EOR1を備えている。

0111

NOR回路NOR1の一方の入力端子には制御信号SR2の論理値が反転した反転信号が入力される。また、他方の入力端子には、インバータIV4の出力が入力される。また、EOR回路EOR1の一方の入力端子には、インバータIV8の出力が入力され、他方の入力端子には、NOR回路NOR1の出力が入力される。EOR回路EOR1からは出力信号selectWが出力される。

0112

本実施形態の不揮発性フリップフロップ回路116の動作について説明する。

0113

第3の実施形態において上述したStoreステートにおいてNOR回路NOR1は、制御信号SR2の論理値が「1」であり反転信号の論理値が「0」であるため、インバータIV4の出力信号の論理値を反転した信号を出力する。そのため、EOR回路EOR1に入力される二つの信号は、書込制御回路134に記憶されているデータと、スレーブラッチ32が保持するデータとが一致している場合は論理値が異なり、両データが一致していない場合は論理値が同じになる。

0114

EOR回路EOR1から出力される出力信号selectWは、書込制御回路134に記憶されているデータと、スレーブラッチ32が保持するデータとが一致している場合は論理値が「1」になり、一致していない場合は論理値が「0」になる。このように書込制御回路134は、第3の実施形態で上述したStoreステートと同様に出力信号selectWを出力する。

0115

従って、第3の実施形態で説明した制御シーケンス(図9参照)と同様に動作させることにより、第3の実施形態の不揮発性フリップフロップ回路116と同様の機能を実現できる。

0116

以上説明したように、上記各実施形態の不揮発性フリップフロップ回路16(116)は、マスターラッチ30、スレーブラッチ32、書込制御回路34(134)、MTJ素子MTJ1、MTJ2、及びNMOSトランジスタN1〜N6(PMOSトランジスタP1〜P6)を備える。

0117

書込制御回路34(134)は、MTJ素子MTJ1、MTJ2と同一のデータを一時的に記憶し、パワーゲーティングにより電源電力が遮断される場合(ストア)に、記憶しているデータとスレーブラッチ32が保持するデータとの比較を行って、MTJ素子MTJ1、MTJ2にデータを書き込むか否かを制御する。書込制御回路34は出力信号selectWにより、記憶しているデータとスレーブラッチ32が保持するデータとが一致しない場合は、MTJ素子MTJ1、MTJ2にデータを書き込ませ、一致する場合は、MTJ素子MTJ1、MTJ2にデータを書き込ませない制御を行う。

0118

上記各実施形態のNMOSトランジスタN2、N3(PMOSトランジスタP2、P3)は、スレーブラッチ32とMTJ素子MTJ1、MTJ2との間の電流経路に設けられ、書込制御回路34(134)から出力される出力信号selectWにより、オン及びオフが制御される。

0119

書込制御回路34(134)は、記憶しているデータとスレーブラッチ32が保持するデータとが一致する場合は、出力信号selectWによりNMOSトランジスタN2、N3(PMOSトランジスタP2、P3)がオフ状態となり、スレーブラッチ32とMTJ素子MTJ1、MTJ2との間に電流経路が形成されない。これにより、スレーブラッチ32が保持するデータはMTJ素子MTJ1、MTJ2に書き込まれない。

0120

また、記憶しているデータとスレーブラッチ32が保持するデータとが一致しない場合は、出力信号selectWによりNMOSトランジスタN2、N3(PMOSトランジスタP2、P3)がオン状態となり、スレーブラッチ32とMTJ素子MTJ1、MTJ2との間に電流経路が形成される。これにより、スレーブラッチ32が保持するデータがMTJ素子MTJ1、MTJ2に書き込まれる。

0121

パワーゲーティングを行う場合、従来の不揮発性フリップフロップ回路(図11の不揮発性フリップフロップ回路1016参照)では、MTJ素子MTJ1、MTJ2の状態に関係なく書き込み電流を流してしまう。つまり、従来の不揮発性フリップフロップ回路では、MTJ素子MTJ1、MTJ2が記憶しているデータとこれから書き込もうするデータとが同じ論理値の場合には、あえて書込みを行う必要がないにもかかわらず、書き込みを行おうとして電流を流してしまう。従来の不揮発性フリップフロップ回路では、MTJ素子MTJ1、MTJ2が記憶しているデータに応じて書き込みを制御する技術がないため、無駄な書き込みエネルギーを生じてしまう場合があった。

0122

これに対して上記各実施形態の不揮発性フリップフロップ回路16(116)では、MTJ素子MTJ1、MTJ2が記憶するデータとスレーブラッチ32が保持するデータとが一致する場合は、スレーブラッチ32とMTJ素子MTJ1、MTJ2との間に電流経路が形成されず電流が流れない。

0123

従って、上記各実施形態の不揮発性フリップフロップ回路16(116)は、MTJ素子MTJ1、MTJ2にデータを書き込むことによる消費エネルギーを削減することができる。

0124

上記各実施形態の不揮発性フリップフロップ回路16(116)では、書込制御回路34(134)を設けたことによりエネルギーが消費される。しかしながら、MTJ素子MTJ1、MTJ2にデータを書き込むのに要する消費エネルギーは、書込制御回路34(134)による消費エネルギーよりもオーダが異なる程大きい。そのため、上記各実施形態の不揮発性フリップフロップ回路16(116)のように書込制御回路34(134)を設けても、従来の不揮発性フリップフロップ回路に比べて、消費エネルギーを大幅に削減することができる。

0125

なお、上記各実施形態では半導体集積回路10(110)が1つの不揮発性フリップフロップ回路16(116)を備えた場合について説明したが、不揮発性フリップフロップ回路16(116)の数は限定されるものではない。不揮発性フリップフロップ回路16(116)は、1ビットのデータを記憶するものであるため、記憶させるデータのビット数に応じた数の不揮発性フリップフロップ回路16(116)を備えればよい。

0126

半導体集積回路10(110)が複数の不揮発性フリップフロップ回路16(116)を備え、各々に保持されているデータの論理値として「1」と「0」とがそれぞれ50%の確率だとした場合、新たにMTJ素子MTJ1、MTJ2に書き込まなければならない不揮発性フリップフロップ回路16(116)の個数は全体の半分であると考えられる。この場合、書き込みエネルギーを従来の不揮発性フリップフロップ回路の1/2に抑えることが可能である。

0127

なお、上記各実施形態では、書込制御回路34(134)によりMTJ素子MTJ1、MTJ2にスレーブラッチ32が保持するデータを書き込む制御を行う場合について説明した。しかしながら、書込制御回路34(134)に代えて、ソフトウエアを用いて、MTJ素子MTJ1、MTJ2にデータを書き込む制御を行うようにしてもよい。この場合、例えば、CPU(Central Processing Unit)等を備えた制御部を設け、MTJ素子MTJ1、MTJ2が記憶するデータを予め取得して一時記憶しておく、またはストア時に取得し、当該データと、スレーブラッチ32が保持するデータとを比較して、両データが一致するか否かに応じた論理値の出力信号selectWを制御部から出力すればよい。

0128

また、上記各実施形態では、不揮発性記憶部の一例としてMTJ素子MTJ1、MTJ2を用いた場合について説明したがこれに限らない。パワースイッチ14(114)により電源電圧(グランド電圧)の供給の遮断後も、記憶しているデータが消えない(不揮発性)記憶部であれば特に限定されない。

0129

また、上記各実施形態で説明した半導体集積回路10(110)、不揮発性フリップフロップ回路16(116)等の構成及び動作等は一例であり、本発明の主旨を逸脱しない範囲内において状況に応じて変更可能であることは言うまでもない。

0130

10、110半導体集積回路
14、114パワースイッチ
16、116不揮発性フリップフロップ回路
30マスターラッチ
32スレーブラッチ
34、134書込制御回路
MJ1、MJ2MTJ素子
N1〜N7、N10NMOSトランジスタ
P1〜P7、P10 PMOSトランジスタ

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ