(57)【特許請求の範囲】
【請求項１】
不揮発性論理ベースの演算を提供する演算デバイス装置であって、
複数の不揮発性論理要素アレイと、
マスタ段論理要素とスレーブ段論理要素とを含む複数の揮発性ストレージ要素であって、前記スレーブ段論理要素が前記複数の不揮発性論理要素アレイにデータを記憶する又は前記複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される、前記複数の揮発性ストレージ要素と、
処理コアと、
前記マスタ段論理要素に電力を供給するように構成される第１の電力ドメインと、
前記スレーブ段論理要素に電力を供給するように構成される第２の電力ドメインと、
前記複数の不揮発性論理要素アレイのための電力を供給するように構成される第３の電力ドメインと、
前記複数の揮発性ストレージ要素に保持される機械状態を記憶し、記憶された機械状態を前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素に読み出すために、前記複数の不揮発性論理要素アレイを制御するように構成される少なくとも１つの不揮発性論理コントローラと、
を含み、
前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが、前記処理コアに関連する前記演算デバイス装置の第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが、前記処理コアに関連する前記演算デバイス装置の第２の機能に関連付けられ、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作が、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立しており、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインが、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーダウン又はパワーアップされるように構成され、
前記第３の電力ドメインが、前記演算デバイス装置の通常動作の間にパワーダウンされるように構成される、装置。
【請求項２】
不揮発性論理ベースの演算を提供する演算デバイス装置であって、
複数の不揮発性論理要素アレイと、
マスタ段論理要素とスレーブ段論理要素とを含む複数の揮発性ストレージ要素であって、前記スレーブ段論理要素が前記複数の不揮発性論理要素アレイにデータを記憶する又は前記複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される、前記複数の揮発性ストレージ要素と、
処理コアと、
前記マスタ段論理要素に電力を供給するように構成される第１の電力ドメインと、
前記スレーブ段論理要素に電力を供給するように構成される第２の電力ドメインと、
前記複数の不揮発性論理要素アレイのための電力を供給するように構成される第３の電力ドメインと、
前記複数の揮発性ストレージ要素に保持される機械状態を記憶し、記憶された機械状態を前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素に読み出すために、前記複数の不揮発性論理要素アレイを制御するように構成される少なくとも１つの不揮発性論理コントローラと、
を含み、
前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが、前記処理コアに関連する前記演算デバイス装置の第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが、前記処理コアに関連する前記演算デバイス装置の第２の機能に関連付けられ、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作が、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立しており、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインが、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーダウン又はパワーアップされるように構成され、
前記第１の電力ドメインが、前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素へのデータの書き戻しの間にパワーダウンされるように構成される、装置。
【請求項３】
方法であって、
複数の揮発性ストレージ要素を用いて処理コアを有する処理デバイスを動作させることと、
前記複数の揮発性ストレージ要素に記憶されたデータを複数の不揮発性論理要素アレイに記憶させることであって、前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが、前記処理コアに関連する前記処理デバイスの第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが、前記処理コアに関連する前記処理デバイスの第２の機能に関連付けられる、前記記憶させることと、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作を、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立して制御することと、
第１の電力ドメインによって前記複数の揮発性ストレージ要素の個々の揮発性ストレージ要素の一次論理回路部分に電力供給することと、
第２の電力ドメインによって前記複数の揮発性ストレージ要素のスレーブ段論理要素に電力供給することであって、前記スレーブ段論理要素が前記複数の不揮発性論理要素アレイにデータを記憶させる又は前記複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される、前記スレーブ段論理要素に電力供給することと、
第３の電力ドメインによって前記複数の不揮発性論理要素アレイに電力供給することと、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインを、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーアップ又はパワーダウンすることと、
システム電力の分断を示す信号を受信することに応答して、システムバックアップモードに入って前記第３の電力ドメインをパワーアップすることと、
前記システムバックアップモードが完了したと少なくとも１つの不揮発性論理コントローラが判定することに応答して、スリープモード入って前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとをパワーダウンすることと、
スリープモードにある間に電力の復元を示す信号を受信することに応答して、システム復元モードに入って前記第２の電力ドメインと前記第３の電力ドメインとをパワーアップして前記第１の電力ドメインをパワーダウンしたまま保つことと、
前記システム復元モードが完了したと前記少なくとも１つの不揮発性論理コントローラが判定することに応答して、通常動作モード入って前記第１の電力ドメインと前記第２の電力ドメインとをパワーアップして前記第３の電力ドメインをパワーダウンすることと、
を含む、方法。
【請求項４】
方法であって、
複数の揮発性ストレージ要素を用いて処理コアを有する処理デバイスを動作させることと、
前記複数の揮発性ストレージ要素に記憶されたデータを複数の不揮発性論理要素アレイに記憶させることであって、前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが、前記処理コアに関連する前記処理デバイスの第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが、前記処理コアに関連する前記処理デバイスの第２の機能に関連付けられる、前記記憶させることと、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作を、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立して制御することと、
第１の電力ドメインによって前記複数の揮発性ストレージ要素の個々の揮発性ストレージ要素の一次論理回路部分に電力供給することと、
第２の電力ドメインによって前記複数の揮発性ストレージ要素のスレーブ段論理要素に電力供給することであって、前記スレーブ段論理要素が前記複数の不揮発性論理要素アレイにデータを記憶させる又は前記複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される、前記スレーブ段論理要素に電力供給することと、
第３の電力ドメインによって前記複数の不揮発性論理要素アレイに電力供給することと、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインを、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーアップ又はパワーダウンすることと、
前記第３の電力ドメインの第１の部分によって前記第１の機能に関連付けられる不揮発性論理要素アレイに電力供給することと、
前記第３の電力ドメインの第２の部分によって前記第２の機能に関連付けられる不揮発性論理要素アレイに電力供給することと、
前記第３の電力ドメインの前記第１の部分と前記第２の部分とを前記第３の電力ドメインの他の部分から独立して個々に電源投入又は電源遮断することと、
を含む、方法。
【請求項５】
不揮発性論理ベースの演算を提供する演算デバイス装置であって、
複数の不揮発性論理要素アレイと、
保持フリップフロップを含む複数の揮発性ストレージ要素と、
前記複数の揮発性ストレージ要素に保持される機械状態を記憶し、記憶された機械状態を前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素に読み出すために、前記複数の不揮発性論理要素アレイを制御するように構成される少なくとも１つの不揮発性論理コントローラと、
前記保持フリップフロップのマスタ段論理要素に電力供給するように構成され、前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素にデータを書き戻す間にパワーダウンされるように構成される第１の電力ドメインであって、第１の機能に関連付けられるマスタ段論理要素に電力供給するように構成される第１の部分と、第２の機能に関連付けられるマスタ段論理要素に電力供給するように構成される第２の部分とを含む、前記第１の電力ドメインと、
前記保持フリップフロップの個々の保持フリップフロップのスレーブ段に電力を提供するように構成される第２の電力ドメインと、
前記複数の不揮発性論理要素アレイのための電力を供給するように構成され、前記演算デバイス装置の通常動作の間にパワーダウンされるように構成される、第３の電力ドメインと、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインをパワーダウンするように制御されるように構成される統合電力ゲート、
を含み、
前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが前記演算デバイス装置の前記第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが前記演算デバイス装置の前記第２の機能に関連付けられ、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作が、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立しており、
前記第１の電力ドメインの前記第１の部分と前記第２の部分とが、前記第１の電力ドメインの他の部分から独立して個々にパワーアップ又はパワーダウンされるように個々に構成され、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインが、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーダウン又はパワーアップされるように構成され、
前記第３の電力ドメインが、前記第１の機能に関連付けられる不揮発性論理要素アレイに電力を供給するように構成される第１の部分と、前記第２の機能に関連付けられる不揮発性論理要素アレイに電力を供給するように構成される第２の部分とに分割され、
前記第３の電力ドメインの前記第１の部分と前記第２の部分とが、前記第３の電力ドメインの他の部分から独立してパワーアップ又はパワーダウンされるように個々に構成される、装置。
【請求項６】
不揮発性論理ベースの演算を提供する演算デバイス装置であって、
複数の不揮発性論理要素アレイと、
マスタ段論理要素とスレーブ段論理要素とを含む複数の揮発性ストレージ要素であって、前記スレーブ段論理要素が前記複数の不揮発性論理要素アレイにデータを記憶する又は前記複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される、前記複数の揮発性ストレージ要素と、
前記複数の揮発性ストレージ要素に保持される機械状態を記憶し、記憶された機械状態を前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素に読み出すために、前記複数の不揮発性論理要素アレイを制御するように構成される少なくとも１つの不揮発性論理コントローラと、
前記マスタ段論理要素に電力を供給するように構成される第１の電力ドメインと、
前記スレーブ段論理要素に電力を供給するように構成される第２の電力ドメインと、
前記複数の不揮発性論理要素アレイに電力を供給するように構成される第３の電力ドメインと、
を含み、
前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが前記演算デバイス装置の第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが前記演算デバイス装置の第２の機能に関連付けられ、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作が、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立しており、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインが、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーダウン又はパワーアップされるように構成され、
前記第３の電力ドメインが、前記演算デバイス装置の通常動作の間にパワーダウンされるように構成される、装置。
【請求項７】
不揮発性論理ベースの演算を提供する演算デバイス装置であって、
複数の不揮発性論理要素アレイと、
マスタ段論理要素とスレーブ段論理要素とを含む複数の揮発性ストレージ要素であって、前記スレーブ段論理要素が前記複数の不揮発性論理要素アレイにデータを記憶する又は前記複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される、前記複数の揮発性ストレージ要素と、
前記複数の揮発性ストレージ要素に保持される機械状態を記憶し、記憶された機械状態を前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素に読み出すために、前記複数の不揮発性論理要素アレイを制御するように構成される少なくとも１つの不揮発性論理コントローラと、
前記マスタ段論理要素に電力を供給するように構成される第１の電力ドメインと、
前記スレーブ段論理要素に電力を供給するように構成される第２の電力ドメインと、
前記複数の不揮発性論理要素アレイに電力を供給するように構成される第３の電力ドメインと、
を含み、
前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが前記演算デバイス装置の第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが前記演算デバイス装置の第２の機能に関連付けられ、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作が、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立しており、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインが、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーダウン又はパワーアップされるように構成され、
前記第１の電力ドメインが、前記複数の不揮発性論理要素アレイから前記複数の揮発性ストレージ要素にデータを書き戻す間にパワーダウンされるように構成される、装置。
【請求項８】
方法であって、
複数の揮発性ストレージ要素を用いて処理デバイスを動作させることと、
前記複数の揮発性ストレージ要素に記憶されたデータを複数の不揮発性論理要素アレイに記憶させることであって、前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが前記処理デバイスの第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが前記処理デバイスの第２の機能に関連付けられる、前記記憶させることと、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作を、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立して制御することと、
第１の電力ドメインによって前記複数の揮発性ストレージ要素の個々の揮発性ストレージ要素の一次論理回路部分に電力供給することと、
第２の電力ドメインによって前記複数の揮発性ストレージ要素のスレーブ段論理要素に電力供給することであって、前記スレーブ段論理要素が前記複数の不揮発性論理要素アレイにデータを記憶させる又は前記複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される、前記スレーブ段論理要素に電力供給することと、
第３の電力ドメインによって前記複数の不揮発性論理要素アレイに電力供給することと、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインを、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーアップ又はパワーダウンすることと、
システム電力の分断を示す信号を受信することに応答して、システムバックアップモードに入って前記第３の電力ドメインをパワーアップすることと、
前記システムバックアップモードが完了したと少なくとも１つの不揮発性論理コントローラが判定することに応答して、スリープモード入って前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとをパワーダウンすることと、
スリープモードにある間に電力の復元を示す信号を受信することに応答して、システム復元モードに入って前記第２の電力ドメインと前記第３の電力ドメインとをパワーアップして前記第１の電力ドメインをパワーダウンしたまま保つことと、
前記システム復元モードが完了したと前記少なくとも１つの不揮発性論理コントローラが判定することに応答して、通常動作モード入って前記第１の電力ドメインと前記第２の電力ドメインとをパワーアップして前記第３の電力ドメインをパワーダウンすることと、
を含む、方法。
【請求項９】
方法であって、
複数の揮発性ストレージ要素を用いて処理デバイスを動作させることと、
前記複数の揮発性ストレージ要素に記憶されたデータを複数の不揮発性論理要素アレイに記憶させることであって、前記複数の不揮発性論理要素アレイの少なくとも１つの第１のセットが前記処理デバイスの第１の機能に関連付けられ、前記複数の不揮発性論理要素アレイの少なくとも１つの第２のセットが前記処理デバイスの第２の機能に関連付けられる、前記記憶させることと、
前記複数の不揮発性論理要素アレイの少なくとも１つの前記第１のセットの動作を、前記複数の不揮発性論理要素アレイの少なくとも１つの前記第２のセットの動作から独立して制御することと、
第１の電力ドメインによって前記複数の揮発性ストレージ要素の個々の揮発性ストレージ要素の一次論理回路部分に電力供給することと、
第２の電力ドメインによって前記複数の揮発性ストレージ要素のスレーブ段論理要素に電力供給することであって、前記スレーブ段論理要素が前記複数の不揮発性論理要素アレイにデータを記憶させる又は前記複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される、前記スレーブ段論理要素に電力供給することと、
第３の電力ドメインによって前記複数の不揮発性論理要素アレイに電力供給することと、
前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとの個々の電力ドメインを、前記第１の電力ドメインと前記第２の電力ドメインと前記第３の電力ドメインとのうちの他の電力ドメインから独立してパワーアップ又はパワーダウンすることと、
前記第３の電力ドメインの第１の部分により前記第１の機能に関連する不揮発性論理要素アレイに電力供給することと、
前記第３の電力ドメインの第２の部分により前記第２の機能に関連する不揮発性論理要素アレイに電力供給することと、
前記第３の電力ドメインの他の部分から独立して前記第３の電力ドメインの前記第１の部分と第２の部分とを個々にパワーアップ又はパワーダウンすることと、
を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、不揮発性メモリセル及びシステムにおける不揮発性メモリセルの使用に関し、特に、論理アレイと組み合わせて不揮発性論理モジュールを提供することに関する。
【背景技術】
【０００２】
携帯電話、デジタルカメラ／カムコーダ、携帯情報端末、ラップトップコンピュータ、及びビデオゲームなど、多くの携帯電子デバイスはバッテリで動作する。イナクティブ期間の間、デバイスは処理動作を実施しないことがあり、電力を節減するためパワーダウン又はスタンバイ電力モードにされることがある。低電力スタンバイ電力モードでは、電子デバイス内の論理の一部に供給される電力がオフにされることがある。しかし、スタンバイ電力モード中の漏れ電力の存在により、携帯バッテリ作動デバイスを設計することが難しい課題になる。デバイスがスタンバイ電力モードに入る前にその後の使用のために状態情報を記憶するために、デバイス内のフリップフロップ及び／又はラッチなどのデータ保持回路が用いられ得る。データ保持ラッチは、シャドーラッチ又はバルーンラッチと称することもあり、典型的に、別個の「常時オン」電源によって電力が供給される。
【０００３】
イナクティブ期間の間の漏れ電流を減少させるための既知の技法の１つは、マルチ閾値ＣＭＯＳ（ＭＴＣＭＯＳ）技術を用いてシャドーラッチを実装する。この手法では、シャドーラッチは、厚いゲート酸化物トランジスタ及び／又は高閾値電圧（Ｖｔ）トランジスタを用いて、スタンバイ電力モードにおける漏れ電流を減少させる。シャドーラッチは、典型的に、通常動作の間（例えば、アクティブ電力モードの間）、回路の残りの部分から切り離されてシステム性能が維持される。「マスタースレーブ」フリップフロップトポロジーにおいてデータを保持するために、例えばシャドーラッチである、第３のラッチがデータ保持のためマスタラッチ及びスレーブラッチに付加され得る。他の場合において、スレーブラッチは、低電力動作の間保持ラッチとして動作するように構成され得る。しかし、保存した状態を保持するためにいくらかの電力が依然として必要とされる。例えば、米国特許第７，６３９，０５６号「パワーダウン応用例のための超低面積オーバーヘッド保持フリップフロップ」を参照されたく、この特許は、参照により本明細書に組み込まれる。
【特許文献１】米国特許第７，６３９，０５６号
【０００４】
システムオンチップ（ＳｏＣ）は、長く用いられてきた概念であり、その基本的な手法は、より多くの機能性を所与のデバイスに統合することである。この統合は、ハードウェア又はソリューションソフトウェアのいずれかの形態を取り得る。性能の向上は、従来、クロックレートを速くし、より最新の処理ノードを用いることによって実現されている。多くのＳｏＣでは、マイクロプロセッサコア又はマルチコアと様々な周辺デバイス及びメモリ回路を対にして設計される。
【０００５】
パワーハーベスティング又はエネルギースカベンジングとも呼ばれるエネルギーハーベスティングは、ウェアラブル電子機器やワイヤレスセンサネットワークで用いられるものなどの小型ワイヤレス自律デバイスのため、外部供給源からエネルギーを引き出し、取り込み、蓄えるプロセスである。エネルギーハーベスティングでは、太陽エネルギー、熱エネルギー、風力エネルギー、塩分勾配、及び運動エネルギーなど、様々な供給源からエネルギーが引き出され得る。しかし、典型的なエネルギーハーベスタは、低エネルギー電子機器のための極めて小量の電力を提供する。エネルギーハーベスタのためのエネルギー源は、周囲環境に存在し、利用可能である。例えば、燃焼機関の動作からは温度勾配が存在し、都市部にはラジオ及びテレビ放送などがあるので環境には大量の電磁エネルギーがある。
【図面の簡単な説明】
【０００６】
【図１】本発明の様々な実施形態に従って構成されるような例示のシステムオンチップ（ＳｏＣ）の一部の機能的ブロック図である。
【０００７】
【図２】図１のＳｏＣにおいて用いられる１つのフリップフロップクラウドのより詳細なブロック図である。
【０００８】
【図３】強誘電性コンデンサが示す分極ヒステリシスを図示するグラフである。
【０００９】
【図４】本発明の種々の実施形態に従って構成されるような例示の強誘電性不揮発性ビットセルを図示する概略図である。
【図５】本発明の種々の実施形態に従って構成されるような例示の強誘電性不揮発性ビットセルを図示するタイミング図である。
【図６】本発明の種々の実施形態に従って構成されるような例示の強誘電性不揮発性ビットセルを図示するタイミング図である。
【図７】本発明の種々の実施形態に従って構成されるような例示の強誘電性不揮発性ビットセルを図示するタイミング図である。
【００１０】
【図８】本発明の種々の実施形態に従って構成されるような別の例示の強誘電性不揮発性ビットセルを図示する概略図である。
【図９】本発明の種々の実施形態に従って構成されるような別の例示の強誘電性不揮発性ビットセルを図示するタイミング図である。
【００１１】
【図１０】図１のＳｏＣにおいて用いられる例示のＮＶＬアレイを示すブロック図である。
【００１２】
【図１１Ａ】図１０のＮＶＬアレイに用いられる入力／出力回路のより詳細な概略図である。
【図１１Ｂ】図１０のＮＶＬアレイに用いられる入力／出力回路のより詳細な概略図である。
【００１３】
【図１２Ａ】本発明の様々な実施形態に従って構成されるような読み出しサイクルの間の例示のオフセット電圧テストを示すタイミング図である。
【００１４】
【図１２Ｂ】本発明の様々な実施形態に従って構成されるようなオフセット電圧の例示の掃引の間生成されるヒストグラムを示す。
【００１５】
【図１３】図１０のＮＶＬアレイにおけるパリティ生成を図示する概略図である。
【００１６】
【図１４】本発明の様々な実施形態に従って構成されるようなＮＶＬアレイ内の例示の電力ドメインを図示するブロック図である。
【００１７】
【図１５】本発明の様々な実施形態に従って構成されるようなＮＶＬアレイにおいて用いるための例示のレベルコンバータの概略図である。
【００１８】
【図１６】本発明の様々な実施形態に従って構成されるような強誘電性ビットセル内のセンスアンプを用いるレベルシフトの例示の動作を図示するタイミング図である。
【００１９】
【図１７】本発明の様々な実施形態に従って構成されるような例示の電力検出配置のブロック図である。
【００２０】
【図１８】本発明の様々な実施形態に従って構成されるような処理デバイスに電力供給する例示の動作を示すフローチャートである。
【００２１】
【図１９】本発明の様々な実施形態に従って構成されるような処理デバイスに電力供給する別の例示の動作を示すフローチャートである。
【００２２】
【図２０】本発明の様々な実施形態に従って構成されるようなＮＶＬアレイを含む別の例示のＳｏＣのブロック図である。
【発明を実施するための形態】
【００２３】
従来のシステムは低電力動作の間論理モジュールにおけるフリップフロップの状態を保持するために保持ラッチを利用していたが、状態保持にはいくらかの電力が依然として必要とされる。これに対し、不揮発性要素は、電力が完全に取り去られても、論理モジュールにおけるフリップフロップの状態を保持し得る。このような論理要素を本明細書では不揮発性論理（ＮＶＬ）と称する。ＳｏＣ（システムオンチップ）内でＮＶＬを備えて実装されるマイクロコントロールユニット（ＭＣＵ）は、機能性を喪失せずに、停止、パワーダウン、及びパワーアップする能力を有する。電力が完全に取り去られた後動作を再開するためにシステムリセット／リブートは必要とされない。この能力は、例えば、近距離通信（ニアフィールドコミュニケーション：ＮＦＣ）、無線周波数識別（ＲＩＦＤ）応用例、及び埋込み制御及び監視システムなどの台頭しつつあるエネルギーハーベスティング応用例に理想的である。こういった応用例では、リセット／リブートプロセスの時間及び電力コストが、利用可能なエネルギーの多くを消費してしまうことがあり、有用な演算、センシング、又は制御機能のためのエネルギーがほとんど又は全く残らない。本記載ではＳｏＣ状態機械をシーケンス処理するためのプログラマブルＭＣＵを含むＳｏＣについて説明するが、当業者には、通常の論理ゲート又はＲＯＭ、ＰＬＡ、或いはＰＬＤベースの制御システムにハードコーディングされる状態機械にＮＶＬが適用され得ることが理解されよう。
【００２４】
一手法では、ＳｏＣが不揮発性論理の１つ又は複数のブロックを含む。例えば、不揮発性論理（ＮＶＬ）ベースのＳｏＣが、パワーインタラプタトを受信すると、その作動状態（全てのフリップフロップ）をバックアップし得、スリープモードでの漏れがなくなり得、パワーアップ時にシステム状態を復元するために４００  ｎｓ未満しか必要としないことがある。
【００２５】
ＮＶＬなしでは、チップが、スタンバイモードでも連続電源を必要とする少なくとも低電力保持状態において全てのフリップフロップを電力供給される状態に保つか、又は、パワーアップ後のリブートでエネルギー及び時間を無駄にするか、いずれかを必要し得る。エネルギーハーベスティング応用例では、フリップフロップ（ＦＦ）の状態を保存するために必要とされる定電力源がなく、たとえ間欠電源が利用可能であるときでもブートアップコードだけでエネルギーハーベスティングで得たエネルギーを全て消費し得るので、ＮＶＬが有用である。冷却及びバッテリ能力が限られるハンドヘルドデバイスの場合、「即時オン」能力を備えた漏れのないＩＣ（集積回路）が理想的である。
【００２６】
強誘電性ランダムアクセスメモリ（ＦＲＡＭ）は、ＤＲＡＭ（ダイナミックランダムアクセスメモリ）に類似の挙動を有する不揮発性メモリ技術である。各個別ビットがアクセスされ得るが、ＥＥＰＲＯＭ（電気的に消去可能なプログラマブル読み出し専用メモリ）又はフラッシュと異なり、ＦＲＡＭは、データを書き込むための特別なシーケンスを必要せず、また、ＥＥＰＲＯＭやフラッシュには必要とされる高プログラミング電圧を実現するためのチャージポンプも必要としない。各強誘電性メモリセルは、１つ又は複数の強誘電性コンデンサ（ＦｅＣａｐ）を含む。個々の強誘電性コンデンサは、本明細書で説明するＮＶＬ回路における不揮発性要素として用いられ得る。
【００２７】
図１は、演算デバイスの一部を図示する機能的ブロック図であり、この場合、例示のシステムオンチップ（ＳｏＣ）１００が、不揮発性論理ベースの演算特性を提供する。本明細書では、ＳｏＣという用語は、１つ又は複数のシステム要素を含む集積回路を指すために用いるが、この開示の教示は、不揮発性状態保持を提供する、ラッチ、集積クロックゲーティングセル、及びフリップフロップ回路要素（ＦＦ）などの機能的論理モジュールを含む様々な種類の集積回路に適用され得る。大型アレイの制御環境外に不揮発性ストレージ要素を埋め込むと、信頼性及び製作上の難題が生じる。ＮＶＬビットセルベースのＮＶＬアレイは、典型的に、いかなるＮＶメモリ技術でも必要とされるような最大読み出し信号マージン及びインサイチュマージンテスト容易性のために設計される。しかし、個々のＮＶＬ  ＦＦにテスト容易性特性を付加することは、面積オーバーヘッドの点で困難であり得る。
【００２８】
テスト特性コストを償却し製造性を改善するために、また、図１及び図２の例を参照して、複数の不揮発性論理要素アレイ又はＮＶＬアレイ１１０が、複数の揮発性ストレージ要素２２０とともに配設される。少なくとも１つの不揮発性論理コントローラ１０６が、複数の揮発性ストレージ要素２２０によって表される機械状態を記憶するため、及び、記憶された機械状態を複数のＮＶＬアレイ１１０から複数の揮発性ストレージ要素２２０に読み出すために、複数のＮＶＬアレイ１１０を制御するように構成される。例えば、少なくとも１つの不揮発性論理コントローラ１０６は、機械状態を複数のＮＶＬアレイ１１０に保存するため、又は、機械状態を複数のＮＶＬアレイ１１０から引き出すための制御シーケンスを生成するように構成される。揮発性ストレージ要素２２０の個々の揮発性ストレージ要素を１つ又は複数の対応するＮＶＬアレイ１１０の個々のＮＶＬアレイに可変的に接続するためにマルチプレクサ２１２が接続される。
【００２９】
図示の例では、演算デバイス装置はシングルチップ上に配置される。ここでは、シングルチップは、本明細書でＮＶＬアレイと称する、電力が取り去られたときに種々のフリップフロップ１２０の状態を保存するため論理クラウドにわたって分散されるＦｅＣａｐ（強誘電性コンデンサ）ベースのビットセルの２５６ｂのミニアレイ１１０を用いて実装されるＳｏＣ１００である。ＦＦ１２０の各クラウド１０２〜１０４は、関連するＮＶＬアレイ１１０を含む。このように分散させることにより、ＮＶＬアレイ１１０の個々のＮＶＬアレイは、揮発性ストレージ要素２２０の対応する個々の揮発性ストレージ要素に物理的に近接して配置され、かつ、これらの要素からデータを受け取るように接続される。中央ＮＶＬコントローラ１０６が、全てのアレイ、及びこれらのアレイのＦＦ１２０との通信を制御する。ここでは３つのＦＦクラウド１０２〜１０４が図示されているが、ＳｏＣ１００は付加的なＦＦクラウド又はより少ないＦＦクラウドを有してもよく、いずれのＦＦクラウドもＮＶＬコントローラ１０６によって制御される。ＳｏＣ１００は、１つ以上のＮＶＬドメインに区分され得、別個のＮＶＬドメインの各々においてＮＶＬアレイ１１０及びＦＦ１２０を管理するための専用のＮＶＬドメインコントローラがある。既存のＮＶＬアレイの実施形態では、２５６ビットミニアレイが用いられるが、アレイは、必要に応じてより多数又は少数のビットを有し得る。
【００３０】
ＳｏＣ１００は、複数の不揮発性論理要素アレイの個々の不揮発性論理要素アレイから複数のフリップフロップ回路の個々のフリップフロップ回路へのデータの書き戻しを可能にするように構成される回路要素を含む、改変された保持フリップフロップ１２０を用いて実装される。保持フリップフロップを実装する様々な既知の手法がある。例えば、データ入力が第１のラッチによってラッチされ得る。第１のラッチに結合される第２のラッチが、保持のためこのデータ入力を受け取り得、第１のラッチはスタンバイ電力モードでは作動しない。第１のラッチは、スタンバイ電力モードの間オフに切り替えられる第１の電力ラインから電力を受け取る。第２のラッチは、スタンバイモードの間オンのままである第２の電力ラインから電力を受け取る。コントローラが、クロック入力及び保持信号を受け取り、クロック出力を第１のラッチ及び第２のラッチに提供する。保持信号の変化は、スタンバイ電力モードへの遷移を示す。コントローラは、クロック出力を所定の電圧レベルで保持し続け、第２のラッチは、スタンバイ電力モードで第２の電力ラインから電力を受け取り続け、それによって、データ入力が保持される。このような保持ラッチが、米国特許第７，６３９，０５６号「パワーダウン応用例のための超低面積オーバーヘッド保持フリップフロップ」により詳細に記載されている。
【００３１】
図２は、保持の間クロックが特定の状態に保持されることを必要としない、例示の保持フロップアーキテクチャを図示する。このような「クロックフリー」ＮＶＬフロップ設計では、保持の間、クロック値は「ドントケア」である。
【００３２】
ＳｏＣ１００では、改変された保持ＦＦ１２０は、例えば、システムがパワーオフ状態に遷移されているとき、各ＦＦの状態をＮＶＬアレイ１１０における関連するＦｅＣａｐビットセルに保存させ得る、単純な入力及び制御改変を含む。システムが復元されるとき、保存された状態はＮＶＬアレイ１１０から各ＦＦ１２０に転送されて戻される。電力節減及びデータ保全性が、特定の電力構成を実装することにより改善され得る。１つのこのような手法では、個々の保持フリップフロップ回路は、第１の電力ドメイン（下記で説明する例におけるＶＤＤＬなど）によって電力供給される一次論理回路部分（マスタ段又はラッチ）と、第２の電力ドメイン（下記で説明する例におけるＶＤＤＲなど）によって電力供給されるスレーブ段回路部分とを含む。この手法では、複数のＮＶＬアレイから複数の揮発性ストレージ要素へのデータの書き戻しの間、第１の電力ドメインはパワーダウンされるように構成され、第２の電力ドメインはアクティブである。複数の不揮発性論理要素は、演算デバイス装置の通常動作の間パワーダウンされるように構成される第３の電力ドメイン（下記で説明する例におけるＶＤＤＮなど）によって電力供給されるように構成される。
【００３３】
この構成では、所与の実装形態に適合するように特別に設計され得る方式で独立してパワーアップ又はパワーダウンされる、複数の電力ドメインが実装され得る。そのため、別の態様において、演算装置は、演算デバイス装置の切替え論理要素に電力を供給するように構成される第１の電力ドメインと、複数の不揮発性論理要素アレイへデータを記憶させるため又は複数の不揮発性論理要素アレイからデータを読むために信号を制御するように構成される論理要素に電力を供給するように構成される第２のパワードメインとを含む。複数の揮発性ストレージ要素が保持フリップフロップを含む場合、第２の電力ドメインは、個々の保持フリップフロップのスレーブ段に電力を提供するように構成される。第３の電力ドメインが、複数の不揮発性論理要素アレイのための電力を供給する。電力ドメインに加えて、ＮＶＬアレイは、特定の機能に関係するドメインとして定義され得る。例えば、複数の不揮発性論理要素アレイの少なくとも１つの不揮発性論理要素アレイの第１のセットが、演算デバイス装置の第１の機能に関連付けられ得、複数の不揮発性論理要素アレイの少なくとも１つの不揮発性論理要素アレイの第２のセットが、演算デバイス装置の第２の機能に関連付けられ得る。複数の不揮発性論理要素アレイの少なくとも１つの不揮発性論理要素アレイの第１のセットの動作は、複数の不揮発性論理要素アレイの少なくとも１つの不揮発性論理要素アレイの第２のセットの動作から独立している。このように構成されると、個別のＮＶＬアレイのドメイン又はセットの制御及び取り扱いにおける柔軟性により、演算デバイスの全体的な機能をより細かく制御し得る。
【００３４】
このより特定的な制御は電力ドメインにも適用され得る。一例では、第１の電力ドメインは、第１の機能に関連付けられる切換え論理要素に電力を供給するように構成される第１の部分と、第２の機能に関連付けられる切換え論理要素に電力を供給するように構成される第２の部分とに分割される。第１の電力ドメインの第１の部分及び第２の部分は、第１の電力ドメインの他の部分とは独立してパワーアップ又はパワーダウンされるように個々に構成される。同様に、第３の電力ドメインは、第１の機能に関連付けられる不揮発性論理要素アレイに電力を供給するように構成される第１の部分と、第２の機能に関連付けられる不揮発性論理要素アレイに電力を供給するように構成される第２の部分とに分割され得る。第１の電力ドメインと同様に、第３の電力ドメインの第１の部分及び第２の部分は、第３の電力ドメインの他の部分とは独立してパワーアップ又はパワーダウンされるように個々に構成される。
【００３５】
このように構成されると、所与のデバイスについて個々の機能が用いられない場合、これらの使用されない機能に関連付けられるフリップフロップ及びＮＶＬアレイは、それぞれパワーダウンされ得、他のフリップフロップ及びＮＶＬアレイとは別個に動作され得る。電力及び動作管理におけるこのような柔軟性により、電力使用及び機能に関して演算デバイスの機能性が調整され得る。このことは、ＣＰＵ、３つのＳＩＰインターフェース、３つのＵＡＲＴインターフェース、３つのＩ２Ｃインターフェース、及び１つのみの論理電力ドメイン（ＶＤＤＬ）を有する下記の例示の設計においてさらに示され得る。論理電力ドメインは保持又はＮＶＬ電力ドメイン（それぞれＶＤＤＲ及びＶＤＤＮ）と区別されるが、これらの教示はこれらの電力ドメインにも適用され得る。この例示のデバイスは論理電力ドメインを１つしか有さないが、このデバイスの所与の応用例では、３つのＳＰＩユニットの１つ、３つのＵＡＲＴの１つ、及び３つのＩ２Ｃペリフェラルの１つのみが使用され得る。応用例にＮＶＬ応用例のウェイクアップ時間及びスリープ時間ならびにエネルギーコストを最適化させるために、ＶＤＤＬ電力ドメインが１０の別個のＮＶＬドメイン（１つのＣＰＵ、３つのＳＰＩ、３つのＵＡＲＴ、３つのＩ２Ｃ、合計１０のＮＶＬドメイン）に区分され得る。これらのＮＶＬドメインの各々は、他と独立してイネーブル／イナクティブにされ得る。そのため、カスタマーは、ＣＰＵ、１つのＳＰＩ、１つのＵＡＲＴ、及び１つのＩ２ＣについてのＮＶＬ能力を、それらの特定の応用例に対してイネーブルにし得、他をイナクティブにし得る。また、この区分により、エネルギーだけでなく時間についても柔軟性が得られ、異なるＮＶＬドメインが異なる時間に状態を保存及び復元し得る。
【００３６】
さらなる柔軟性を付加するために、ＮＶＬドメインは電力ドメインと重なり得る。上記の例を参照して、４つの電力ドメインが定義され得る。すなわち、ＣＰＵ、ＳＰＩ、ＵＡＲＴ、及びＩ２Ｃ（各周辺電力ドメインは３つの機能ユニットを有する）に対して１つ、一方、各周辺ドメイン内に３つのＮＶＬドメイン、及びＣＰＵに１つ（繰り返しになるが、合計１０のＮＶＬドメイン）を定義する。この場合、個々の電力ドメインは、電力節減及びウェイクアップ／スリープタイミングにおける付加的な柔軟性のため、各電力ドメイン内のＮＶＬドメインを、制御することに加えてオン又はオフにする。
【００３７】
また、第１の電力ドメイン、第２の電力ドメイン、及び第３の電力ドメインの個々の電力ドメインは、第１の電力ドメイン、第２の電力ドメイン、及び第３の電力ドメインの他のドメインから独立してパワーダウン又はパワーアップされるように構成される。例えば、統合電力ゲートが、第１の電力ドメイン、第２の電力ドメイン、及び第３の電力ドメインの個々の電力ドメインをパワーダウンするように制御されるように構成され得る。下記の表１に記載されるように、第３の電力ドメインは、演算デバイス装置の通常動作の間パワーダウンされるように構成され、第２の電力ドメインは、複数の不揮発性論理要素アレイから複数の揮発性ストレージ要素へのデータの書き戻しの間パワーダウンされるように構成される。第４の電力ドメインが、リアルタイムクロック及びウェイクアップインタラプト論理に電力を供給するように構成され得る。
【００３８】
このような手法は、図に示す例示のＳｏＣ１００を参照してさらに理解され得る。ＳｏＣ１００では、ＮＶＬアレイ１１０及びコントローラ１０６が、ＶＤＤＮと称するＮＶＬ電力ドメイン上で作動し、通常動作の間オフに切り換えられる。全ての論理、ＲＯＭ（読み出し専用メモリ）及びＳＲＡＭ（スタティックランダムアクセスメモリ）などのメモリブロック１０７、及びＦＦのマスタ段は、ＶＤＤＬと称する論理電力ドメイン上にある。ＦＲＡＭ（強誘電性ランダムアクセスメモリ）アレイは、ＦＲＡＭに必要なより高い固定電圧に維持される専用のグローバル電源レール（ＶＤＤＺ）に直接的に接続される（すなわち、ＶＤＤＬ≦ＶＤＤＺ、ここでＶＤＤＺは固定電源であり、ＶＤＤＬはＶＤＤＬがＶＤＤＺより低電位のままである限り変化し得る）。１０３で示されるＦＲＡＭアレイは、典型的に、必要に応じてＦＲＡＭアレイをパワーダウンさせ得る統合電力スイッチを含むが、内部電力スイッチを備えないＦＲＡＭアレイはＦＲＡＭアレイ外部の電力スイッチと関連して用いられ得ることに留意されたい。保持ＦＦのスレーブ段は、ＶＤＤＲドメインと称する保持電力ドメイン上にあり、それによって、動作のスタンバイモードにおいて通常保持が可能になる。表１は、通常動作、ＮＶＬアレイへのシステムバックアップ、スリープモード、ＮＶＬアレイからのシステム復元、及び通常動作への回帰の間の電力ドメイン動作の概要を示す。また、表１は、保持フリップフロップの揮発性保持機能を用いて低減電力状態に入るためにシステムソフトウェアの制御下で開始され得るスタンバイアイドルモードの間用いられるドメインも示す。１０８で示されるスイッチのセットが、様々な電力ドメインを制御するために用いられる。ＳｏＣ１００にわたって分散され得、ＳｏＣ１００上のプロセッサにより実行されるソフトウェアによって及び／又はＳｏＣ１００内のハードウェアコントローラ（図示せず）によって制御され得る、複数のスイッチ１０８が存在し得る。ここに示す３つに加えて、下記で説明されるように付加的なドメインがあり得る。
【表１】
0006336985.tif 000002
【００３９】
状態情報は、大型の集中型ＦＲＡＭアレイに保存され得るが、システムＦＦへの並列アクセスがないことによって生じる、スリープモードに入るためのより長い時間、より長いウェイクアップ時間、過度のルーティング、及び電力コストが必要とされ得る。
【００４０】
図２は、ＳｏＣ１００において用いられる１つのＦＦクラウド１０２のより詳細なブロック図である。この実施形態では、各ＦＦクラウドは最大２４８のフリップフロップを含み、各ＮＶＬアレイが８×３２ビットアレイとして編成されるが、この実施形態ではパリティのために１ビットが用いられる。しかし、他の実施形態において、フリップフロップの数及びＮＶＬアレイの編成は、４×ｍ、１６×ｍなどの異なる構成を有し得、ここで、ｍはＦＦクラウドのサイズに合うように選択される。いくつかの実施形態では、様々なクラウドにおけるＮＶＬアレイは全て同じサイズとし得るが、他の手法において、同じＳｏＣ内に異なるサイズのＮＶＬアレイが存在し得る。
【００４１】
ブロック２２０は、各保持ＦＦ１２０のより詳細な概略図である。信号のいくつかは、例えば、ＲＥＴとＲＥＴＢやＣＬＫとＣＬＫＢなど、添え字「Ｂ」（「バー」又は／と称する）で示される反転されたバージョンを有する。各保持ＦＦは、マスタラッチ２２１及びスレーブラッチ２２２を含む。スレーブラッチ２２２は、インバータ２２３及びインバータ２２４によって形成される。インバータ２２４は、低電力スリープ期間の間ＦＦ状態を保持するために用いられる保持信号（ＲＥＴ、ＲＥＴＢ）によって制御されるトランジスタのセットを含む。低電力スリープ期間の間、上記及び表１で説明したように、電力ドメインＶＤＤＲはオンのままであり、電力メインＶＤＤＬはオフにされる。
【００４２】
ＮＶＬアレイ１１０は、クラウド１０２において機能する２４８のＦＦと論理的に接続される。一般的に、ＮＶＬアレイからＦＦへのデータ転送を可能にするために、個々のＦＦは、複数のＮＶＬアレイ１１０の個々のＮＶＬアレイからのデータの書き戻しを可能にするように構成される回路要素を含む。図示の例では、ブロック２２０に示すように、各ＦＦのスレーブラッチ２２２に２つの付加的なポートが設けられる。データ入力ポート（ゲート２２５）が、ＮＶＬアレイ１１０のうちの１つのＮＶＬアレイから関連する揮発性ストレージ要素２２０にデータＮＤを挿入するように構成される。データ入力ポートは、データ入力ポートをトリガするためデータ入力イネーブルポートで少なくとも１つの不揮発性論理コントローラ１０６から更新信号ＮＵを受け取ることに応答して、ＮＶＬアレイのうちの１つのＮＶＬアレイから関連するフリップフロップ回路のスレーブ段に記憶データ関連信号を通過させることによってデータＮＤを挿入するように構成される。インバータ２２３は、トライステートインバータ２２３とＮＶＬデータポート入力トライステートインバータ２２５の間の電気的な衝突が回避されるように、反転ＮＶＬ更新信号ＮＵＺを受け取ることに応答してイナクティブにされるように構成される。
【００４３】
より詳細には、図示の例では、インバータ−インバータフィードバック対（２２３と２２４）がラッチ自体を形成する。これらのインバータは、データ状態を保持するための極めて安定な構成をつくり、データポートの１つを介して現在の状態を次の状態で上書きしようとする際の電気的な衝突を妨げるためにこれらのインバータの少なくとも１つがイナクティブにされない限り、ラッチ状態を変えようとするいかなる試みにも対抗する。図示のＮＶＬ  ＦＦ２２０は、通常のフロップの場合の１つのデータポートに比べると、スレーブラッチ２２２にアクセスする２つのデータポートを含む。一方のポートは、クロックによって制御されるＣＭＯＳパスゲートを介してマスタ段２２１からスレーブ段２２２にデータを転送する。このポートを用いてスレーブ状態２２１を更新するとき、ＣＬＫによって制御されるパスゲートの出力ノードに対して駆動するインバータ２２４は、電気的な衝突が避けるためイナクティブにされ、インバータ２２３は、次の状態をラッチの反対側に転送するためイネーブルにされ、それによって、クロックがローになる（ｐｏｓｅｄｇｅ  ＦＦに対して）ときデータを保持するための準備においてラッチの両側が次の状態を有する。
【００４４】
同じ理由で、インバータ２２３は、ＮＤポート上での電気的な衝突を回避するため、ＮＤデータポートがアクティブ高状態に遷移するＮＵによってアクティブにされるときイナクティブにされる。第２のインバータ２２４は、次の状態をラッチの反対側に転送するためイネーブルにされ、そのため、ラッチの両側はＮＵがローになるときラッチされるべき次の状態を有する。この例では、ＮＵポートは、クロックによって制御される他のデータポートにいかなる影響も及ぼさない。デュアルポートＦＦ上では、両方のポートが同時にアクティブになることは不当な制御条件であり、その結果生じるポートの衝突は、得られる次の状態が不確定であることを意味する。ポートの衝突を回避するために、システムは、機能モードにある一方でスレーブ状態が更新される場合、クロックをイナクティブ状態に保持する。保持モードでは、ＲＥＴ信号が、ＦＦ内の支持回路とともに、保持モードにある一方でＣＬＫの状態にかかわらず電気的な衝突を防ぐために用いられる（マスタ段でＲＥＴＢによって制御されるインバータを参照されたい）。
【００４５】
図に示すように、これらの付加的な要素は、関連するＦＦのスレーブ段２２２に配設される。ただし、付加的なトランジスタは、ＦＦのクリティカルな経路上にはなく、この特定の実装では、通常のＦＦ性能及び電力への影響の度合いはたかだか１．８％及び６．９％である（シミュレーションデータ）。ＮＶＬアレイからのデータがＮＤ（ＮＶＬ−Ｄａｔａ）ポート上で有効であるとき、ＮＵ（ＮＶＬ−Ｕｐｄａｔｅ）制御入力が、ＦＦへの書き込みサイクルのため高にパルスされる。ＮＶＬアレイの３１ビットデータ出力が、８の３１ビットＦＦグループのＮＤポートにファンアウトされる。
【００４６】
フリップフロップ状態を保存するために、複数のＮＶＬアレイ１１０の個々のＮＶＬアレイにおいて本質的に同時の記憶が行われるように、マルチプレクサが、複数の揮発性ストレージ要素２２０のうちの複数の個々の揮発性ストレージ要素からの状態を通過させるように構成される。例えば、マルチプレクサは、１グループ当たり複数の揮発性ストレージ要素のうちのＭ個の揮発性ストレージ要素のＮ個のグループに、及び複数のＮＶＬアレイのうちのＮ×ＭサイズのＮＶＬアレイに接続するように構成され得る。この構成では、マルチプレクサは、一度にＭ個の揮発性ストレージ要素からＮ×ＭサイズのＮＶＬアレイのローにデータを記憶するため、Ｎ個のグループの１つをＮ×ＭサイズのＮＶＬアレイに接続する。図示の例では、２４８のＦＦのＱ個の出力が、３１ｂワイド８−１マルチプレクサ２１２を介して、ＮＶＬアレイ１１０の３１ｂ並列データ入力に接続される。ＦＦローディングを最小化するために、マルチプレクサは、ＦＦクラウドのレイアウトに基づいてより小さなマルチプレクサに分割され得、それらが機能するＦＦに近く置かれ得る。この場合も、ＮＶＬコントローラは、ＮＶＬアレイへの書き込み、及び８−１マルチプレクサ２１２の選択信号ＭＵＸ＿ＳＥＬ＜２：０＞を同期化する。
【００４７】
ＦＦが保持モードで動作しているとき、演算デバイスのクロックＣＬＫは「ドントケア」であり、そのため、クロックＣＬＫはＮＵ信号がアクティブになる度にスレーブ段状態の更新に関する揮発性ストレージ要素に対して関連がなくなり、それにより、不揮発性論理コントローラは、揮発性ストレージ要素の個々の揮発性ストレージ要素から不揮発性ストレージ要素の個々の不揮発性ストレージ要素へのデータの記憶を制御及び実施するように構成される。言い換えれば、クロックＣＬＫ制御は、保持モードの間のＮＶＬデータ復元の間は必要とされないが、システム状態が復元されると、保持モードと機能モードとの間の遷移の直前で、クロックＣＬＫはシステムレベルで制御されるべきである。別の手法において、システムが機能性モードにあるとき、ＮＶＬ状態は揮発性ストレージ要素に回復され得る。ＶＤＤＬ電力がアクティブであるこの状況では、クロックＣＬＫは、ＮＶＬアレイからのデータ復元の間揮発性ストレージ要素に対してイナクティブ状態に保持され、それにより、不揮発性論理コントローラは、不揮発性ストレージ要素の個々の不揮発性ストレージ要素から揮発性ストレージ要素の個々の揮発性ストレージ要素へのデータの転送を制御及び実施するように構成される。例えば、システムクロックＣＬＫは、典型的に、正エッジＦＦベースの論理に対してローに保持され、負エッジＦＦベースの論理に対して高に保持される。
【００４８】
一般的に、通常動作からシステムバックアップモードに移るために、第１のステップは、イナクティブ状態におけるシステムクロックを停止して機械状態を凍結して、バックアップは進行中であるが機械状態が変わらないようにすることである。クロックは、バックアップが完了するまでイナクティブ状態で保持される。バックアップが完了した後、全ての電力ドメインはパワーダウンされ、クロックの状態は定義上スリープモードでドントケアになる。
【００４９】
ＮＶＬアレイから状態を復元する場合、ＦＦは保持状態（下記の表２参照）に置かれる。保持状態では、ＲＥＴ信号がアクティブである限り（クロックは、各保持ＦＦに付加される特殊なトランジスタのためにドントケアになり得、ＲＥＴ信号によって制御される）、クロックはドントケアのままである。ＮＶＬ状態を復元する一方で、フロップは保持モードのままであり、そのため、クロックはドントケアのままである。ＮＶＬ状態が回復されると、システムクロックの状態を制御する機械論理の状態も、これらが状態バックアップ時の状態に復元される。これは、この例では、システムクロックをイナクティブ状態にした全ての制御（揮発性ストレージ要素又はＦＦを含めて）がこの時点で復元されており、そのため、ＮＶＬデータ回復が完了したときシステムクロックはイナクティブ状態のままになることも意味する。この時点でＲＥＴ信号はイナクティブにされ得、ＮＶＬコントローラが復元が完了したことを電力管理コントローラに通知するまで、クロックがイナクティブにされてシステムは活動を停止し、ＮＶＬコントローラ信号に応答して、電力管理コントローラはクロックを再びイネーブルにする。
【００５０】
復元の間フリップフロップ状態を復元するため、ＮＶＬコントローラ１０６は、ＮＶＬアレイ１１０のＮＶＬローを読み、次いで適切なフリップフロップグループに対するＮＵ信号をパルス化する。システム復元の間、保持信号ＲＥＴは高に保たれ、スレーブラッチは電力ドメインＶＤＤＬに電力供給されていない状態でＮＤから書き込まれる。この時点で、システムクロックＣＬＫの状態はドントケアである。ＮＶＬアレイの読み出し動作の間３１のＦＦの各グループが更新されるときに生じる偽データスイッチングに関連する過剰な電力消費を抑制するために、ＦＦはＶＤＤＬ＝０Ｖ及びＶＤＤＲ＝ＶＤＤで保持状態に置かれる。適切に改変された非保持フロップがＮＶＬベースのＳｏＣで用いられ得るが、ＮＶＬデータ回復動作の間の電力消費は大きくなる。
【００５１】
システムクロックＣＬＫは、ＶＤＤＬがアクティブになると低から開始されるべきであり、その後、更新された情報がＦＦにある状態で通常同期動作が継続する。ＮＶＬアレイとそれらのそれぞれのＦＦとの間のデータ転送は、ピーク電流とバックアップ／復元時間とをトレードオフするために、シリアル又はパラレル或いはこれらの任意の組み合わせで行われ得る。演算デバイス装置の中央処理装置とは別の少なくとも１つの不揮発性論理コントローラによって制御されるＦＦへの直接アクセスが提供されるので、ＮＶＬ動作にはマイクロコントローラ処理装置（ＣＰＵ）からの介入は必要とされない。従って、この実装はＳｏＣ／ＣＰＵアーキテクチャ不可知である。表２は、ＮＶＬフリップフロップの動作の概要を示す。
【表２】
0006336985.tif 000003
【００５２】
少なくとも１つの不揮発性論理コントローラは、入力信号に基づいて、並列、順次、又はこれらの任意の組合せで複数の不揮発性アレイへのデータ転送又は複数の不揮発性アレイからの読み出しを可変制御するように構成されているので、システム設計者は、特定のニーズに対してシステム動作仕様を調整することに関して付加的な選択肢を有する。例えば、システムが低電力システム状態に入る時間の間、又は、低電力状態からウェイクアップするためには、ＭＣＵ  ＳｏＣ上で演算が生じ得ないので、ウェイクアップ時間又はスリープに至る時間を最小化することが有利である。一方、不揮発性状態保持は電力を多く消費する。これは、強誘電性コンデンサなどの不揮発性要素に状態を保存するため及び不揮発性要素から状態を復元するために、極めて多くのエネルギーが必要とされるからである。システム状態を保存及び復元するために必要とされる電力は、電力送達システムの能力を超えることがあり、エレクトロマイグレーションにより誘起される電力グリッド劣化、過度のピーク電流引き出しによるバッテリ寿命低下、又はダイ上の信号の保全性を損ない得る電源システムでの高レベルノイズ生成などの問題を生じさせ得る。そのため、システム設計者がこれら２つの懸念のバランスを取り得ることが望ましい。
【００５３】
１つのこのような手法では、少なくとも１つの不揮発性論理コントローラ１０６は、例えば当業者には既知であるものなどの、ユーザーインターフェース１２５を介して入力信号を受け取るように構成される。別の手法において、少なくとも１つの不揮発性論理コントローラは、アプリケーションを実行中であり得る別個の演算要素１３０から入力信号を受け取るように構成される。１つのこのような手法では、この別個の演算要素は、このアプリケーションを実行して、演算デバイス装置１３０についての電力及び演算リソース要件の決定に少なくとも部分的に基づいて、複数の不揮発性アレイについての読み出しシーケンスを決定するように構成される。このように構成されると、システムユーザーが、システム状態の記憶及び引き出し手順を操作して所与の設計に適合させることができる。
【００５４】
図３は、強誘電性コンデンサが示す分極ヒステリシスを示すグラフである。強誘電性ビットセルの概略動作は既知である。ほとんどの材料が分極している場合、誘起される分極Ｐは印加される外部電界Ｅにほぼ正比例し、そのため、分極は、線形関数になり、誘電体分極と称される。非線形であることに加えて、強誘電性材料は、印加電界Ｅがゼロになるとき、図３に示すような自発的非ゼロ分極を示す。強誘電体の際立った特性は、印加電界によって自発的分極が反転され得ることであり、分極は、電流に依存するだけでなくその履歴にも依存して、ヒステリシスループを生成する。「強誘電性」という用語は、自発的磁化を有しヒステリシスループも示す、強磁性材料との類似を示すために用いられる。
【００５５】
強誘電性コンデンサの誘電率は、典型的に、線形誘電体の誘電率よりずっと大きい。これは、強誘電性材料の結晶構造に形成される半恒久的電気双極子の影響のためである。強誘電性誘電体を横切って外部電界が印加されると、双極子は、原子の位置の小さなシフトによって生成される電界方向と整列する傾向があり、この原子の位置の小さなシフトにより、結晶構造内の電荷の分布がシフトする。電荷が取り除かれた後、双極子はその分極状態を保持する。バイナリ「０」及び「１」が、２つのあり得る電気分極の一方として各データストレージセルに記憶される。例えば、図３では、「１」は負の残余分極３０２を用いて符号化され得、「０」は正の残余分極３０４を用いて符号化され得、又はその逆であり得る。
【００５６】
強誘電体ランダムアクセスメモリがいくつかの構成に実装されている。ＦｅＲＡＭアレイにおける１トランジスタ・１コンデンサ（１Ｔ−１Ｃ）ストレージセル設計は、広く用いられているＤＲＡＭにおけるストレージセルに、いずれのセルタイプも１つのコンデンサ及び１つのアクセストランジスタを含むという点で、構築上類似している。ＤＲＡＭセルのコンデンサでは線形誘電体が用いられ、一方、ＦｅＲＡＭセルのコンデンサでは、誘電体構造は、典型的にジルコン酸チタン酸鉛（ＰＺＴ）である、強誘電性材料を含む。ＤＲＡＭタイプのアレイへのアクセスのオーバーヘッドのために、１Ｔ−１Ｃセルは、ＮＶＬアレイ１１０などの小型アレイに用いるにはあまり望ましくない。
【００５７】
４コンデンサ・６トランジスタ（４Ｃ−６Ｔ）セルは、小型アレイで用いることがより容易な通常タイプのセルである。ここで、改善された４コンデンサセルを説明する。
【００５８】
図４は、４個のコンデンサ及び１２個のトランジスタ（４Ｃ−１２Ｔ）を含む強誘電性不揮発性ビットセル４００の一実施形態を示す概略図である。４個のＦｅＣａｐが差動配置の２つの対として配置される。ＦｅＣａｐ  Ｃ１及びＣ２は直列に接続されてノードＱ４０４を形成し、ＦｅＣａｐ  Ｃ１’及びＣ２’は直列に接続されてノードＱＢ４０５を形成する。データビットが、ビットラインＢＬを介して、ノードＱに書き込まれ、ＦｅＣａｐ  Ｃ１及びＣ２に記憶され、このデータビットを反転したものが、反転ビットラインＢＬＢを介して、ノードＱＢに書き込まれ、ＦｅＣａｐ  Ｃ１’及びＣ２’に記憶される。センスアンプ４１０が、ノードＱに及びノードＱＢに結合され、ビットセルが読みだされるときノードＱ、ＱＢに現れる電圧の差を感知するように構成される。センスアンプ４１０内の４個のトランジスタが、２つの交差結合インバータとして構成されてラッチを形成する。パスゲート４０２がノードＱをビットラインＢに結合するように構成され、パスゲート４０３がノードＱＢをビットラインＢＬＢに結合するように構成される。各パスゲート４０２、４０３は、並列に接続されるＰＭＯＳデバイスとＮＭＯＳデバイスを用いて実装される。この配置により、書き込み動作の間のパスゲートの両端の電圧降下が低減され、そのため、書き込みの間ノードＱ、ＱＢにはより高い電圧が示され、それによって、より大きな分極がＦｅＣａｐに与えられる。プレートライン１（ＰＬ１）がＦｅＣａｐ  Ｃ１及びＣ１’に結合され、プレートライン２（ＰＬ２）がＦｅＣａｐ  Ｃ２及びＣ２’に結合される。これらのプレートラインは、読み出し及び書き込み動作の間ＦｅＣａｐにバイアスをかけるように用いられる。或いは、別の実施形態において、ＣＭＯＳパスゲートの代わりに、ＶＤＤＬより高い電圧を有するパスゲートイネーブルを用いるＮＭＯＳパスゲートが用いられ得る。この一層高い電圧の大きさは、ビットセルＱ／ＱＢノードからビットラインＢＬ／ＢＬＢに、及び、ビットラインＢＬ／ＢＬＢからビットセルＱ／ＱＢノードに、非劣化信号を通過させるために、通常のＮＭＯＳ  Ｖｔより大きくなければならない（すなわち、Ｖｐａｓｓ＿ｇａｔｅ＿ｃｏｎｔｒｏｌ＞ＶＤＤＬ＋Ｖｔ）。
【００５９】
典型的に、ビットセル４００のアレイがある。また、ｎロー×ｍコラムのアレイを形成するために同様のビットセルの複数のコラムがあり得る。例えば、ＳｏＣ１００では、ＮＶＬアレイは８×３２であるが、先に述べたように、異なる構成が実装され得る。
【００６０】
図５及び図６は、それぞれ、論理０のデータ値を読み出すため、及び論理０のデータ値を書き込むための、読み出し及び書き込み波形を示すタイミング図である。ＮＶＬアレイの読み出し及びＮＶＬアレイへの書き込みは、ＮＶＬコントローラによって制御され得、ＮＶＬクロックによって同期が取られ得るマルチサイクル手順である。別の実施形態において、これらの波形は、例えば、トリガ信号から開始される固定又はプログラマブル遅延によってシーケンス処理され得る。通常動作の間、典型的な４Ｃ−６Ｔビットセルが、「１」を記憶する側のＦｅＣａｐ両端の一定ＤＣバイアスのために経時的絶縁破壊（ＴＤＤＢ）を受けやすい。差動ビットセルでは、データ値を反転したバージョンも記憶されるため、一方の側又は他方の側が常に「１」を記憶している。
【００６１】
ＴＤＤＢを回避するために、プレートラインＰＬ１、プレートラインＰＬ２、ノードＱ、及びノードＱＢは、図５及び図６の時間期間ｓ０の間示されているように、セルがアクセスされていないとき静的低値に保持される。電力切断トランジスタＭＰ４１１及びＭＮ４１２により、センスアンプイネーブル信号ＳＡＥＮ及びＳＡＥＮＢに応答して時間期間ｓ０の間センスアンプ４１０が電力から切り離される。クランプトランジスタＭＣ４０６がノードＱに結合され、クランプトランジスタＭＣ’４０７がノードＱＢに結合される。クランプトランジスタ４０６、４０７は、非アクセス時間期間ｓ０の間クリア信号ＣＬＲに応答して、プレートライン上の低論理電圧にほぼ等しい電圧、この実施形態では０ボルト（接地電位）に等しい電圧、までＱ及びＱＢノードをクランプするように構成される。このようにして、ビットセルが読み出し又は書き込みのためにアクセスされていない時間の間、ＦｅＣａｐの両端に電圧が印加されず、従ってＴＤＤＢが本質的に排除される。クランプトランジスタはまた、ノードＱ及びＱＢに寄生漏れ電流によるいかなる浮遊電荷も蓄積されないように働く。浮遊電荷が蓄積すると、Ｑ又はＱＢ上の電圧が０Ｖを上回って上昇し得、それによって、Ｑ又はＱＢとＰＬ１及びＰＬ２の間のＦｅＣａｐ両端に電圧差が生じ得る。これは、ＦｅＣａｐ残余分極の意図しない脱分極につながり得、ＦｅＣａｐに記憶される論理値が潜在的に破壊されることがある。
【００６２】
この実施形態では、Ｖｄｄは１．５ボルトであり、接地基準面は０ボルトの値を有する。論理高が約１．５ボルトの値を有し、論理低が約０ボルトの値を有する。論理０（低）に対する接地及び論理１（高）に対するＶｄｄとは異なる論理レベルを用いる他の実施形態において、ビットセルがアクセスされていないときＦｅＣａｐの両端に事実上電圧が生じないように、ノードＱ、ＱＢを静的プレートライン電圧に対応する電圧までクランプし得る。
【００６３】
別の実施形態において、２つのクランプトランジスタが用いられ得る。これら２つのトランジスタはそれぞれ、各ＦｅＣａｐの両端の電圧を１つのトランジスタＶｔ（閾値電圧）以下にクランプするように用いられる。各トランジスタは、ＦｅＣａｐを短絡するように用いられる。この場合、第１のトランジスタでは、１つの端子がＱに接続し、他の端子がＰＬ１に接続し、トランジスタ２では、１つの端子がＱに接続し、他の端子がＰＬ２に接続する。これらのトランジスタは、ＮＭＯＳ又はＰＭＯＳとし得るが、ＮＭＯＳが用いられる可能性が高い。
【００６４】
典型的に、２トランジスタソリューションが用いられるビットセルは、１トランジスタソリューションより著しく大きな面積を消費しない。１トランジスタソリューションは、ＰＬ１及びＰＬ２が単一クランプトランジスタとの局所ＶＳＳ接続と同じ接地電位のままであると仮定しており、これは通常妥当な仮定である。しかし、ＰＬ１又はＰＬ２にグリッチを生じさせたり、ＰＬ１／ＰＬ２ドライバ出力とＶＳＳとの間に短期間ＤＣオフセットを生じさせたりし得るノイズ又は他の問題が（特にパワーアップの間）生じ得る。従って、２トランジスタ設計は、よりロバストなソリューションを提供し得る。
【００６５】
ビットセル４００を読むために、時間期間ｓ２に示されるように、プレートラインＰＬ１は低から高に切り換えられ、プレートラインＰＬ２は低のまま維持される。これにより、それぞれ、Ｃ１−Ｃ２とＣ１’−Ｃ２’の間のコンデンサ比に依存する値を有するノードＱ、ＱＢ上に電圧が誘起される。誘起された電圧は、ビットセル内のＦｅＣａｐへの最後のデータ書き込み動作の間形成された各ＦｅＣａｐの残余分極に依存する。残余分極は、事実上、各ＦｅＣａｐの有効静電容量値を「変化」させる。このようにして、ＦｅＣａｐは不揮発性ストレージを提供する。例えば、論理０がビットセル４００に書き込まれた場合、Ｃ２の残余分極によりＣ２はより小さな有効静電容量値を有し、Ｃ１の残余分極によりＣ１はより大きな有効静電容量値を有する。そのため、プレートラインＰＬ１を高に切り換え、プレートラインＰＬ２を低に保持することによってＣ１−Ｃ２の両端に電圧が印加されるとき、結果のノードＱ上の電圧は式（１）に従う。同様の式がノードＱＢについて成り立つが、Ｃ１’及びＣ２’の残余分極の順が逆転し、そのため、結果のノードＱ及びＱＢ上の電圧は、図５の５０２、５０３に示されるように、ビットセル４００に記憶されるデータ値の差動表現を提供する。
【数１】
0006336985.tif 000004
【００６６】
次いで、時間期間ｓ３の間、ローカルセンスアンプ４１０がイネーブルにされる。差動値５０２、５０３を感知した後、センスアンプ４１０はフルレール信号５０４、５０５を生成する。結果のフルレール信号は、時間期間ｓ４の間ビットラインＢＬ、ＢＬＢに転送される。これは、転送ゲートイネーブル信号ＰＡＳＳ、ＰＡＳＳＢをアサートして転送ゲート４０２、４０３をイネーブルにし、それによって、例えば、ＮＶＬアレイ１１０の周辺に位置するラッチイネーブル信号ＬＡＴ＿ＥＮに応答する出力ラッチにフルレール信号を転送することによって行われる。
【００６７】
図６は、ビットセル４００への論理０の書き込みを示すタイミング図である。書き込み動作は、時間期間ｓ１の間プレートラインをいずれもＶｄｄまで上げることによって開始される。これは１次記憶法と呼ばれる。ＰＬ１及びＰＬ２上の信号遷移は、ノードＱ及びＱＢに容量結合され、いずれのストレージノードも事実上ほぼＶＤＤ（１．５Ｖ）までプルされる。データがビットラインＢＬ、ＢＬＢ上に提供され、転送ゲート４０２、４０３は時間期間ｓ２〜ｓ４の間パス信号ＰＡＳＳによってイネーブルにされて、データビット及びその反転値をビットラインからノードＱ、ＱＢに転送する。センスアンプ４１０は、時間期間ｓ３、ｓ４の間センスアンプイネーブル信号ＳＡＥＮ及びＳＡＥＮＢによってイネーブルにされて、書き込みデータドライバが時間期間ｓ２の間Ｑ／ＱＢに適切な差分を強制的に与えた後、付加的な駆動を提供する。ただし、センスアンプから１．２Ｖドライバ電源への短絡を回避するために、書き込みデータドライバは、時間期間ｓ２の終了時、時間期間ｓ３、ｓ４の間センスアンプがオンにされる前に、オフにされる。２次記憶法と呼ばれる代替実施形態において、書き込み動作により、ＰＬ２が、データ書き込み動作の間０Ｖ又は接地に保持される。これにより、データ書き込み動作の間の電力が節減されるが、結果の読み出し信号マージンが５０％減少する。これは、Ｃ２及びＣ２’がもはや残余分極を介してデータを保持せず、Ｃ１及びＣ２のＦｅＣａｐに線形容量性負荷しか提供しないためである。
【００６８】
ｓ２の間のＰＬ１高からＳＡＥＮ高、読み出しの間のｓ３の間のＳＡＥＮ高パルス、及び書き込みの間のＦｅＣａｐ  ＤＣバイアス状態ｓ３〜ｓ４などの主要状態は、ＮＶＬクロックを遅くせずにより高いロバストさが得るために、選択的にマルチサイクルにされ得る。
【００６９】
ＦｅＣａｐベースの回路では、ＦｅＣａｐからデータを読み出すことにより、コンデンサが部分的に脱分極され得る。この理由で、ＦｅＣａｐからのデータ読み出しは、本質的に破壊的と考えられる。すなわち、データ読み出しにより、ＦｅＣａｐの内容が破壊され得るか、又は、最小でもデータの完全性が損なわれ得る。この理由で、ＦｅＣａｐに含まれるデータが読み出し動作が生じた後も有効なままであると予想される場合、データはＦｅＣａｐに書き戻さなければならない。
【００７０】
或る種の応用例では、特定のＮＶＬアレイは、或る時間期間にわたって変化しない特定の情報を記憶するように指定され得る。例えば、或るシステム状態が、デフォルトの戻り状態として保存され得、デバイスのフルリブートよりもこの状態に戻ることが好ましい。最新式の超低電力ＳｏＣのリブート及び構成プロセスは、メインアプリケーションコードスレッドに制御が渡されるポイントに達するには、１０００〜１００００クロックサイクル又はそれ以上かかり得る。このブート時間は、電力が間欠的であり、信頼性がなく、量的に制限されるエネルギーハーベスティング応用例ではきわどい値である。リブートの時間及びエネルギーコストは、演算に利用可能なエネルギーのほとんど又は全部を消費し得、エネルギーハーベスティング応用例でＭＣＵなどのプログラマブルデバイスを用いることができなくなる。応用例の例として、エネルギーハーベスティング照明スイッチがある。照明スイッチのボタンを押すことにより収集されるエネルギーは、下記のタスクを完了するために利用可能なエネルギー全体を表す。すなわち、１）所望の機能（オン／オフ又は調光レベル）を決定すること、２）要求をコマンドパケットにフォーマットすること、３）無線を起動し、照明システムへのＲＦリンクを介してパケットを送出することである。ハードコーディングされた状態機械を有する既知のカスタムＡＳＩＣチップが、厳しいエネルギー制約のためにこの応用例で用いられることがしばしばあり、こうするには、システムの柔軟性が失われ、変更にコストがかかる。これは、変更が望まれる度に、新たなＡＳＩＣチップを設計し製作しなければならないからである。プログラマブルＭＣＵ  ＳｏＣははるかに良好に適合するが、ブートプロセスの電力コストが利用可能なエネルギーの大部分を消費し、そのため、必要とされるアプリケーションコードを実行するためのバジェットが残らない。
【００７１】
この懸念に対処するために、１つの手法では、複数の不揮発性論理要素アレイの少なくとも１つが、所与の量のブートプロセスが完了した後の演算デバイス装置の状態を表すブート状態を記憶するように構成される。この手法における少なくとも１つの不揮発性論理コントローラは、演算デバイス装置に対する前のシステムリセット又は電力喪失イベントを検出することに応答して、複数の不揮発性論理要素アレイの少なくとも１つから複数の揮発性ストレージ要素のうちの対応する揮発性ストレージ要素へのブート状態を表すデータの復元を制御するように構成される。ＮＶＬアレイに対する典型的な読み出し／書き込み動作にわたる電力を節減するために、少なくとも１つの不揮発性論理コントローラは、ラウンドトリップデータ復元動作を実行するように構成され得る。ラウンドトリップデータ復元動作は、個々の不揮発性論理要素からデータを読み出した後、別々の読み出し及び書き込み動作を完了することなく、個々の不揮発性論理要素にデータを自動的に書き戻す。
【００７２】
ラウンドトリップデータ復元の実行例が図７に示されている。図７は、ビットセル４００に対する書き戻し動作を図示する。この動作では、ビットセルは、読み出され、同じ値に書き込まれる。図に示すように、個々の不揮発性論理要素からのデータの読み出しの開始は、第１の時間Ｓ１に、対応する強誘電性コンデンサビットセルのノード上に、対応する強誘電性コンデンサビットセルの強誘電性コンデンサのための静電容量比に基づいて電圧が誘起されるように、第１のプレートラインＰＬ１を高に切り替えることによって開始される。強誘電性コンデンサのノードを接地するためにクランプスイッチが用いられる場合、第１の時間Ｓ１にクリア信号ＣＬＲが高から低に切り替えられて、電気的接地からの、個々の不揮発性論理要素のそれらの態様がアンクランプされる。第２の時間Ｓ２に、ノード上に誘起される電圧をセンスアンプに検出させ、個々の不揮発性論理要素に記憶されたデータに対応する出力信号を提供するように、センスアンプイネーブル信号ＳＡＥＮが高に切り替えられる。第３の時間Ｓ３に、パスラインＰＡＳＳが高に切り替えられて転送ゲートが開き、個々の不揮発性論理要素に記憶されたデータに対応する出力信号が提供される。第４の時間Ｓ４に、第２のプレートラインＰＬ２が高に切り替えられて、強誘電性コンデンサの両端に分極信号が誘起され、対応する強誘電性コンデンサビットセルに、個々の不揮発性論理要素に記憶されたデータに対応するデータが書き戻される。個々の不揮発性論理要素に対して、そこに記憶された同じデータを有する不揮発性記憶状態に対して、第５の時間Ｓ５に、第１のプレートラインＰＬ１及び第２のプレートラインＰＬ２が低に切り替えられ、第６の時間Ｓ６にパスラインＰＡＳＳが低に切り替えられ、第７の時間Ｓ７にセンスアンプイネーブル信号ＳＡＥＮが低に切り替えられる。強誘電性コンデンサのノードを接地するためにクランプスイッチが用いられる場合、第７の時間にクリア信号ＣＬＲが低から高に切り替えられて、個々の不揮発性論理要素の態様を電気的接地にクランプし、本明細書で説明するようにデータの完全性を保つ助けとなる。このプロセスに含まれる遷移の総数は、独立した別個の読み出し及び書き込み動作（読み出し、次いで書き込み）に必要とされる遷移の総数より少ない。これにより、全体的なエネルギー消費が低減される。
【００７３】
ビットセル４００は、信頼性の高い第１世代のＮＶＬ製品を提供するために、Ｑ／ＱＢ間の読み出し差分を最大化するように設計される。１つのＦｅＣａｐ及び一定ＢＬ静電容量を負荷として用いるのではなく、各側に２つのＦｅＣａｐが用いられる。これにより、センスアンプが利用可能な差動電圧が倍になるからである。センスアンプが、ノードＱとＢＬ静電容量の間の電荷共有による差分の喪失を妨げるため、及び転送ゲートの両端における電圧降下を回避するためにビットセル内に置かれる。感知される電圧はほぼＶＤＤ／２であり、ＨＶＴ転送ゲートではこれらの電圧をＢＬに通過させるために長時間かかる。ビットセル４００は、当技術分野で既知の通常のＦＲＡＭビットセルの信号マージンを倍にする助けとなり、ＦｅＣａｐの両端にいかなるＤＣストレスも生じさせない。
【００７４】
図５及び図６に示す信号のタイミングは説明のためのものである。様々な実施形態において、クロックレート、プロセスパラメータ、デバイスサイズなどに依存して変化するシーケンスを信号し得る。例えば、別の実施形態において、制御信号のタイミングは下記のように動作し得る。時間期間Ｓ１の間、ＰＡＳＳは０から１になり、ＰＬ１／ＰＬ２は０から１になる。時間期間Ｓ２の間、ＳＡＥＮは０から１になり、この時間の間、センスアンプは、後述するレベルシフトを実施し得、又は、非レベルシフト設計に対して付加的な駆動強さを提供し得る。時間期間Ｓ３の間、ＰＬ１／ＰＬ２は１から０になり、波形の残りは同じままであるが、１クロックサイクルだけ上方に移動する。このシーケンスは、図６に示すものよりも１クロックサイクル短い。
【００７５】
別の代替形態において、制御信号のタイミングは下記のように動作し得る。時間期間Ｓ１の間、ＰＡＳＳは０から１になる（ＢＬ／ＢＬＢ、Ｑ／ＱＢは、それぞれ０Ｖ及びＶＤＤＬである）。時間期間Ｓ２の間、ＳＡＥＮは０から１になる（ＢＬ／ＢＬＢ、Ｑ／ＱＢは、それぞれ０Ｖ及びＶＤＤＮである）。時間期間Ｓ３の間、ＰＬ１／ＰＬ２は０１から１になる（ＢＬ／Ｑは、ＰＬ１／ＰＬ２によって接地を上回って結合され、ＳＡ及びＢＬドライバによって駆動されて低に戻される）。時間期間Ｓ４の間、ＰＬ１／ＰＬ２は１から０になり、波形の残りは同じままである。
【００７６】
図８及び図９は、２Ｃ−３Ｔ自己基準ベースのＮＶＬビットセルである、強誘電性不揮発性ビットセル８００の別の実施形態を示す概略図及びタイミング図である。先に説明した４ＦｅＣａｐベースのビットセル４００は、標準の１Ｃ−１Ｔ  ＦＲＡＭビットセルと比較してマージンが倍になった差動読み出しを実現するため、センスアンプの各側に２つのＦｅＣａｐを用いる。しかし、４ＦｅＣａｐベースのビットセルは、より多くのＦｅＣａｐを用いるので、面積がより大きく、変動がより大きくなり得る。
【００７７】
ビットセル８００は、より小さな面積で、本明細書で自己基準と称する、ビットセル自体を基準として用いることによって差動４ＦｅＣａｐで得られるようなマージンを実現する助けとなる。また、より少数のＦｅＣａｐを用いることにより、ビットセル８００は、４ＦｅＣａｐビットセルより変動が小さい。典型的に、単一側セルは、ビットセルの動作範囲の中央にある基準電圧を用いる必要がある。これにより、読み出しマージンが、両側セルと比較して半分に減少する。しかし、回路製作プロセスが進展するにつれ、基準値がずれることがあり、それによって読み出しマージンがさらに小さくなる。自己基準方式により、単一側セルとそれ自体との比較が可能になり、それによって、より大きなマージンが提供される。本明細書で説明する自己基準セルのテストから、固定基準セルに対しマージンが少なくとも倍になることがわかっている。
【００７８】
ビットセル８００は、直列に接続されてノードＱ８０４を形成する、２つのＦｅＣａｐ  Ｃ１、Ｃ２を有する。プレートライン１（ＰＬ１）はＦｅＣａｐ  Ｃ１に結合され、プレートライン２（ＰＬ２）はＦｅＣａｐ  Ｃ２に結合される。これらのプレートラインは、読み出し及び書き込み動作の間ＦｅＣａｐへのバイアスをかけるように用いられる。パスゲート８０２は、ノードＱをビットラインＢに結合するように構成される。パスゲート８０２は、並列に接続されるＰＭＯＳデバイスとＮＮＭＯＳデバイスを用いて実装される。この配置により、書き込み動作の間パスゲートの両端の電圧降下が低減され、そのため、書き込みの間ノードＱ、ＱＢに一層高い電圧が提示され、それによって、ＦｅＣａｐに一層大きな分極が与えられる。或いは、ＮＭＯＳパスゲートが、ブーストされたワードライン電圧と共に用いられてもよい。この場合、ＰＡＳＳ信号は、１つのＮＦＥＴ  Ｖｔ（閾値電圧）によってブーストされる。しかし、これにより、信頼性問題が生じ得、電力消費が過剰になり得る。ＣＭＯＳパスゲートを用いると、ビットセルに付加的な面積が加わるが、スピード及び電力消費が改善される。クランプトランジスタＭＣ８０６がノードＱに結合される。クランプトランジスタ８０６は、非アクセス時間期間ｓ０の間、この実施形態では０ボルト又は接地であるクリア信号ＣＬＲに応答して、プレートライン上の低論理電圧にほぼ等しい電圧までＱノードをクランプするように構成される。このようにして、ビットセルが読み出し又は書き込みのためにアクセスされていない時間の間、ＦｅＣａｐの両端に電圧が印加されず、従ってＴＤＤＢ及び意図しない部分的脱分極が本質的に排除される。
【００７９】
ノードＱ、プレートラインＰＬ１及びＰＬ２の初期状態は、図９に示すように、時間期間ｓ０で全て０であり、そのため、ビットセルがアクセスされていないときＦｅＣａｐの両端にＤＣバイアスが存在しない。読み出し動作を開始するために、時間期間ｓ１の間に図示するように、ＰＬ１は高に切り替えられ、ＰＬ２は低に保たれる。式１に関して先に説明したように、セルに前に書き込まれた最後のデータ値からのＦｅＣａｐの保持された分極に基づく静電容量比からノードＱに信号９０２が現れる。この電圧は、ビットセルの外にある読み出しコンデンサ８２０に記憶される。この記憶は、第２のイネーブル信号ＥＮ１に応答して、この電圧を転送ゲート８０２を通過させてビットラインＢＬに送り、次いで、転送ゲート８２２を通過させることによって行われる。ＢＬ及び読み出しコンデンサは、パスゲート８０２、８２２、８２３がイネーブルにされる前に、ＶＤＤ／２にプリチャージされることに留意されたい。これは、Ｑ上の回復された信号がＢＬを介して読み出しストレージコンデンサ８２０及び８２１に転送されるとき電荷共有による信号喪失を最小にするためである。次いで、時間期間ｓ２の間、ＰＬ１が切り替えられて低に戻り、クランプトランジスタ８０６を用いてノードＱが放電される。次に、時間期間ｓ３の間、ＰＬ１を低に保ったままＰＬ２が高に切り替えられる。新たな電圧９０４がノードＱ上に現れるが、今回はコンデンサ比が反対になっている。次いで、この電圧は、転送ゲート８２３を介して別の外部読み出しコンデンサ８２１に記憶される。このように、同じ２つのＦｅＣａｐが、高信号及び低信号を読み出すために用いられる。次いで、センスアンプ８１０は、外部読み出しコンデンサ８２０、８２１に記憶された電圧を用いることによってビットセルの状態を決定する。
【００８０】
典型的に、ビットセル８００のアレイがある。図８においてビットセル８００〜８００ｎの１コラムが、ビットライン８０１を介して読み出し転送ゲート８２２、８２３に結合されて示される。さらに、同様のビットセルの複数のコラムがあり、ｎロー×ｍコラムのアレイが形成される。例えば、ＳｏＣ１００では、ＮＶＬアレイは８×３２である。ただし、先に説明したように、異なる構成も実装され得る。読み出しコンデンサ及びセンスアンプは、例えば、メモリアレイの周辺に置かれ得る。
【００８１】
図１０は、ＮＶＬアレイ１１０をより詳細に示すブロック図である。大型アレイの制御環境外に不揮発性要素を埋め込むと、信頼性及び製作の難題が生じる。図１を参照して先に説明したように、個々のＮＶＬ  ＦＦにテスト容易性特性を付加することは、面積オーバーヘッドの点で困難であり得る。テスト特性コストを償却し、製造性を改善するために、ＳｏＣ１００は、論理クラウドにわたって分散されるＦｅＣａｐベースのビットセルの２５６ｂミニＮＶＬアレイ１１０を用いて実装されて、電力が取り去られたとき様々なフリップフロップ１２０の状態を保存する。ＦＦ１２０の各クラウド１０２〜１０４は、関連するＮＶＬアレイ１１０を含む。中央ＮＶＬコントローラ１０６が、全てのアレイ、及びこれらのアレイのＦＦ１２０との通信を制御する。
【００８２】
ＮＶＬアレイは任意の数のｎローｍコラム構成で実装され得るが、この例では、ＮＶＬアレイ１１０は、ビットセルの８のロー及び３２のビットコラムのアレイ１０４０を備えて実装される。ビットセル１０４１などの各個々のビットセルは、ロードライバ１０４２によって提供される制御ラインのセットに結合される。プレートライン（ＰＬ１、ＰＬ２）、センスアンプイネーブル（ＳＡＥＮ）、転送ゲートイネーブル（ＰＡＳＳ）、及びクリア（ＣＬＲ）を含む、先に説明した制御信号は全てロードライバによって駆動される。ビットセルの各ローに対してロードライバのセットがある。
【００８３】
ビットセル１０４１などの各個々のビットセルはまた、ビットラインを介して入力／出力（ＩＯ）ドライバ１０４４のセットに結合される。この実装形態では、ＩＯドライバのセット１０４５などのＩＯドライバの３２セットがある。各ドライバセットは、ビットラインの１ローが読み出されるときデータ値を提供する出力信号１０４７を生成する。各ビットラインは、ビットセルのコラムの長さ延び、そのコラムのためのＩＯドライバに結合する。各ビットセルは、例えば、２Ｃ−３Ｔビットセル８００として実装され得る。この場合、単一ビットラインが各コラムに対して用いられ得、センスアンプ及び読み出しコンデンサはＩＯドライバブロック１０４４に位置し得る。ＮＶＬアレイ１１０の別の実装形態において、各ビットセルは、４Ｃ−１２Ｔビットセル４００として実装され得る。この場合、ビットラインは、各コラムに対して２つのＩＯドライバを備えた差動対となり得る。コンパレータが、ビットラインの差動対を受け取り、出力ラッチに提供される最終的な単一ビットラインを生成する。ＮＶＬアレイ１１０の他の実装形態において、他の既知の又は後に開発されるビットセルが、下記でより詳細に説明されるロードライバ及びＩＯドライバとともに用いられ得る。
【００８４】
タイミング論理１０４６は、読み出しドライバを制御して各読み出し及び書き込み動作に対する制御信号のシーケンスを生成するために用いられるタイミング信号を生成する。タイミング論理１０４６は、同期又は非同期状態機械、或いは他の既知の又は後に開発される論理技法を用いて実装され得る。１つの潜在的な代替実施形態では、複数の出力を備えた遅延チェーンが用いられる。これらの出力は、遅延チェーンを所望の間隔で「タップ」して制御信号を生成する。マルチプレクサが、各制御信号に対して複数のタイミング選択肢を提供するように用いられ得る。別の潜在的な実施形態において、適切な制御信号に接続される専用の出力を用いて所望の間隔でエッジを生成するプログラマブル遅延生成器が用いられる。
【００８５】
図１１は、図１０のＮＶＬアレイに用いられる入力／出力回路１１５０のセットのより詳細な概略図である。図１０を再度参照すると、ＩＯブロック１０４４内の３２のドライバの各ＩＯセット１０４５は、ＩＯ回路１１５０と類似している。Ｉ／Ｏブロック１０４４は、ＮＶＬビットのテスト容易性を補助するいくつかの特性を提供する。
【００８６】
ここで図１１を参照すると、第１のラッチ（Ｌ１）１１５１が、読み出しの間出力ラッチとして働き、また、第２のラッチ（Ｌ２）１１５２と組み合わさってスキャンフリップフロップを形成する。スキャン出力（ＳＯ）信号は、書き込みドライバブロック１１５８内のマルチプレクサ１１５３に導かれて、デバッグの間スキャンデータをアレイに書き込ませる。スキャン出力（ＳＯ）は、ＩＯドライバの次のセットのスキャン入力（ＳＩ）にも結合されて、ＮＶＬアレイ１１０からビットの１ロー全体を読み出すため又はＮＶＬアレイ１１０に書き込むために用いられ得る３２ビットスキャンチェーンを形成する。ＳｏＣ１００内で、各ＮＶＬアレイのスキャンラッチは直列式に接続されてスキャンチェーンを形成し、そのため、全てのＮＶＬアレイがスキャンチェーンを用いてアクセスされ得る。或いは、各ＮＶＬアレイ内のスキャンチェーンは並列式に動作され得（Ｎ個のアレイがＮ個のチェーンを生成する）、スキャンテストをスピードアップするために各チェーンでの内部スキャンフロップビットの数が低減される。チェーンの数及びチェーン当たりのＮＶＬアレイの数は必要に応じて可変とし得る。典型的に、ＳｏＣ１００内の全てのストレージラッチ及びフリップフロップはスキャンチェーンを含み、そのためＳｏＣ１００の完全なテストが可能となる。スキャンテストは、周知であり、本明細書でより詳細に説明する必要はない。この実施形態では、ＮＶＬチェーンは、チップ上で論理チェーンから隔離されているため、これらのチェーンは独立して稼働され得、ＮＶＬアレイは論理チェーンの編成、実装、又は制御に全く依存せずにテストされ得る。ＮＶＬスキャンチェーンの最大全長は、常に、論理チェーンの全長より短い。これは、ＮＶＬチェーンの長さがＮＶＬアレイ内のローの数に等しい除数によって短くされるからである。この実施形態では、ＮＶＬアレイ当たり８のエントリがあり、そのため、ＮＶＬスキャンチェーンの全長は、論理スキャンチェーンの全長の１／８である。これにより、ＮＶＬアレイにアクセスし、ＮＶＬアレイをテストするために必要とされる時間が短縮され、そのため、テストコストが低減される。また、このことにより、論理フロップ、論理スキャンチェーン上のそれらの位置、及びそれらの対応するＮＶＬアレイビットロケーションの間のマッピングを決定する（アレイ、ロー、及びコラムのロケーションを識別する）必要がなくなり、ＮＶＬテスト、デバッグ、及び故障解析が大きく簡略化される。
【００８７】
スキャンテストは有用であるが、ＳｏＣ１００内の様々なＮＶＬアレイをテストするために何百又は何千ものビットにおけるスキャンを行うために膨大な長さの時間がかかり得るため、ＳｏＣ１００の製造テストには良好なメカニズムを提供しない。これは、ＮＶＬアレイ内のビットに対する直接アクセスがないためである。各ＮＶＬビットセルは、関連するフリップフロップに結合され、フリップフロップの状態を保存することによってのみフリップフロップに書き込まれる。そのため、ＮＶＬアレイに、関連するフリップフロップからパターンテストをロードするために、対応するフリップフロップは、スキャンチェーンを用いて設定されなければならない。ＮＶＬアレイにおける特定のローの内容を制御するためにスキャンチェーン上のどのビットがセット又はクリアされなければならないかを決定することは、シリコンダイ上のフロップの任意のグループの物理的ロケーションに基づくが、いかなる通常のアルゴリズムにも基づかないで接続が成されるので、複雑なタスクである。このように、フロップのＮＶＬロケーションへのマッピングは制御しなくてよく、典型的に、いくらか無作為に成される。
【００８８】
改善されたテスト技法がＩＯドライバ１１５０内で提供される。図１を再度参照すると、ＮＶＬコントローラ１０６は、チップ上の全てのＮＶＬアレイに対して高速合否判定テストを実施する状態機械を有し、それによって、不良ダイを排除する。１つのこのような手法では、少なくとも１つの不揮発論理コントローラが、組込み自己テストモードを制御するように構成され、このモードでは、複数のＮＶＬアレイのうち１つのＮＶＬアレイの少なくとも一部に全て０又は全て１が書き込まれ、次いで、ＮＶＬアレイのこの少なくとも一部から読み出されるデータが全て１又は全て０かどうか判定される。これは、まず、全０／１書き込みドライバ１１８０を用いて或るローに全て０又は１を書き込むこと、オフセットじょう乱電圧（Ｖ＿Ｏｆｆ）を印加すること、次いで、並列読み出しテストデータ論理１１７０を用いて同じローを読み出すことによって成される。データラッチ１１５１からのデータ出力信号（ＯＵＴ）が高である場合、ＡＮＤゲートＧ１からの信号ｃｏｒｒ＿１が高になり、隣接するコラムのＩＯドライバの並列読み出しテスト論理ＡＮＤゲートＧ１からの信号ｃｏｒｒ＿１が高になる。このようにして、ＮＶＬアレイ１１０における３２セットのＩ／Ｏブロック１１５０のＧ１  ＡＮＤゲートが、ＮＶＬアレイ１１０の選択されたローについて全ての出力が高かどうかをＮＶＬコントローラに通知する大きな３２入力ＡＮＤゲートを実装する。ＯＲゲートＧ０は、０の読み出しについて同じことを行う。このようにして、ＮＶＬコントローラは、ＮＶＬコントローラからＮＶＬアレイにいかなる明示的なテストデータも転送することなく、いくつかの制御信号のみを用いて、選択されるローへの全て１の書き込みを同時に実施するようにＳｏＣ１００内の全てのＮＶＬアレイに指示し得、次いで、選択されたローを同時に読み出すように及び合否表示を提供するように全てのＮＶＬアレイに指示し得る。典型的なメモリアレイＢＩＳＴ（組込み自己テスト）の実装において、ＢＩＳＴコントローラが、各出力ビットが予想される値と比較され得るように、全てのメモリ出力値にアクセスしなければならない。典型的なシリコンＳｏＣチップ上に何千もの論理フロップがあると仮定すると、ＮＶＬアレイ出力の総数も何千となり得る。通常のＢＩＳＴ論理回路を用いてこれらのアレイをテストすることは、多数のデータ接続及びデータコンパレータが必要とされるので、実際的ではない。そこで、ＮＶＬテスト方法は、８ローを有するＮＶＬアレイに対して８回繰り返され得（繰り返し数はアレイ編成に従って変わり得る。一例では、１０エントリＮＶＬアレイ実装でこのテスト方法を１０回反復する）、ＳｏＣ１００における全てのＮＶＬアレイが、８書き込みサイクル及び８読み出しサイクルのみで全て１の動作について正しいかどうかテストされ得る。同様に、ＳｏＣ１００における全てのＮＶＬアレイが、８書き込みサイクル及び８読み出しサイクルのみで全て０の動作について正しいかどうかテストされ得る。全てのＮＶＬアレイの結果は、ＮＶＬアレイの各々からｃｏｒｒ＿０及びｃｏｒｒ＿１信号を受け取り、単一のｃｏｒｒ＿０及びｃｏｒｒ＿１信号を生成する付加的なＡＮＤゲート及びＯＲゲ���トによって、合否を示す単一信号に凝縮され得るか、又は、ＮＶＬコントローラが、各個々のｃｏｒｒ＿０及びｃｏｒｒ＿１信号を検査し得る。
【００８９】
全０／１書き込みドライバ１１８０は、ＰＭＯＳデバイスＭ１、Ｍ３及びＮＭＯＳデバイスＭ２、Ｍ４を含む。デバイスＭ１とＭ２は、直列に接続されて、ビットラインＢＬに結合されるノードを形成し、デバイスＭ３とＭ４は、直列に接続されて、反転ビットラインＢＬＢに結合されるノードを形成する。制御信号「ａｌｌ＿１＿Ａ」及び反転制御信号「ａｌｌ＿１＿Ｂ」が、ＮＶＬコントローラ１０６によって生成される。書き込みサイクルの間アサートされると、これらの制御信号は、デバイスＭ１及びＭ４をアクティブにして、論理１のデータ値を表すようにビットラインＢＬ及びＢＬＢをプルにさせる。同様に、制御信号「ａｌｌ＿０＿Ａ」及び反転制御信号「ａｌｌ＿０＿Ｂ」が、ＮＶＬコントローラ１０６によって生成される。書き込みサイクルの間アサートされると、これらの制御信号は、デバイスＭ２及びＭ３をアクティブにして、論理０のデータ値を表すようにビットラインＢＬ及びＢＬＢをプルにさせる。このようにして、３２のドライバは、制御信号に応答してビットセルのローに全て１を書き込むように、及び、別の制御信号に応答してビットセルのローに全て０を書き込むように動作可能である。同じタスクを行なう他の回路トポロジーが当業者によって容易に設計され得る。本実施形態は、必要とされるデータ書き込みを行うために４個のトランジスタしか必要としないので好ましい。
【００９０】
通常の書き込み動作の間、書き込みドライバブロック１１５８は、ｄａｔａ＿ｉｎ信号に記憶されるべきデータビット値を受け取る。書き込みドライバ１１５６、１１５７は、相補データ信号を、ビットラインＢＬ、ＢＬＢに、及びそれによって選択されるビットセルに、結合する。書き込みドライバ１１５６、１１５７は、書き込みイネーブル信号ＳＴＯＲＥによってイネーブルにされる。
【００９１】
図１２Ａは、読み出しサイクルの間のオフセット電圧テストを図示するタイミング図である。ビットセルにじょう乱電圧を印加するために、読み出しの間状態ｓ１が改変される。この図は、「０」（ノードＱ）のデータ値を読み出すための電圧じょう乱テストを図示しており、「１」のデータ値についての電圧じょう乱テストはこれに類似するが、じょう乱電圧がセンスアンプの反対側（ノードＱＢ）に注入される。そのため、この実施形態におけるじょう乱電圧は、読み出される論理値に基づいてセンスアンプの低電圧側に注入される。転送ゲート１１５４、１１５５はビットラインＢＬ、ＢＬＢに結合される。図示しないデジタル−アナログコンバータ（これは、例えば、外部テスタにおけるオンチップ又はオフチップとし得る）が、所望の量のオフセット電圧Ｖ＿ＯＦＦを生成するため、ＮＶＬコントローラ１０６によって、オフチップテストコントローラによって、或いは、外部の生産テスタを介してプログラムされる。ＮＶＬコントローラ１０６は、ｓ１時間期間の間「０」を記憶する側のビットラインについてＶｃｏｎ制御電圧信号をアサートし得、それによって、Ｖｃｏｎ転送ゲート１１５４、１１５５がイネーブルにされ、ｓ１の間Ｍ２／Ｍ４を用いて他方のビットラインを放電し、ｓ１の間制御信号ＰＡＳＳをアサートして転送ゲート４０２、４０３をオンにする。これにより、１２０２で示されるように、「０」を記憶する側のノードＱ／ＱＢ上の電圧が電圧Ｖ＿Ｏｆｆに初期化される。このプリチャージ電圧は、１２０４で示されるように、ｓ３の間ＳＡに利用可能な差分を小さくし、そのため、ビットセルは不合格に一層近くプッシュされる。高速生産テストでは、Ｖ＿Ｏｆｆは、必要とされるマージン値に設定され得、次いで、いかなる不良ダイも排除するためＧ０〜Ｇ１を用いる合否テストが用いられ得る。
【００９２】
図１２Ｂは、オフセット電圧の掃引の間生成されるヒストグラムを図示する。ビットレベル不良マージンは、Ｖ＿Ｏｆｆを掃引すること、及び、上述したように、読み出しサイクルのシーケンスを用いて読み出しデータビットをスキャンすることによって検討され得る。この例では、最悪ケースの読み出しマージンは５５０  ｍＶであり、平均値は５９７  ｍＶであり、標準偏差は２２  ｍＶである。このようにして、ＳｏＣ上の各ＮＶＬアレイにおける全てのビットセルの動作特徴が容易に決定され得る。
【００９３】
上述したように、大型アレイの制御環境外に不揮発性要素を埋め込むと、信頼性及び製作上の難題が生じる。ＮＶＬビットセルは、任意のＮＶメモリ技術に必要とされるように、最大読み出し信号マージン及びインサイチュテスト容易性のために設計されるべきである。しかし、ＮＶＬ実装は、ＮＶＬアレイが論理クラウド内部で分散しているので、ＳＲＡＭのような組込み自己テスト（ＢＩＳＴ）に頼ることができない。上述のＮＶＬ実装は、中央ＮＶＬコントローラ１０６によって制御されるＮＶＬアレイを含む。満足な挙動についてダイをスクリーンニングする一方で、ＮＶＬコントローラ１０６は、いかなる外部テスタも介入させずにオンチップで実施されるステップのシーケンスを走らせる。テスタは、開始信号を送出し、所望の信号マージンに対応するアナログ電圧を印加するだけでよい。コントローラは、まず、ＮＶＬアレイにおける全てのビットに全て０又は１を書き込む。次いで、コントローラは、１回に１ローのアレイの読み出しを開始する。ＮＶＬアレイ読み出し動作は、必ずしもＮＶＬアレイ書き込み動作の直後に行うとは限らない。時間及び温度依存故障メカニズムを加速させるために、しばしば、データ書き込み動作とデータ読み出し動作との間に高温ベークサイクルが挿入され、そのため、製造関連テストの間長期データ保持に影響を及ぼす欠陥が排除され得る。上記でより詳細に説明したように、アレイは、アレイの全ての出力のＡＮＤ及びＯＲを取る論理を含む。これら２つの信号がコントローラに送られる。各ローを読み出すと、コントローラは、アレイからの２つの信号を検査し、コントローラが前に書き込んだものの知見に基づいて、読み込んだデータがじょう乱電圧の存在下で正しいか否かを判定する。データが不正確な場合、コントローラはテスタに不合格信号を送出し、この時点でテスタはこのダイを排除し得る。このローが合格である場合、コントローラはアレイにおける次のローに移る。全てのアレイが、通常のＮＶＬクロック周波数で並列にテストされ得る。これにより、テスタは、開始信号を送出し、所望の読み出し信号マージン電圧を提供するだけで、ＮＶＬアレイの高速オンチップテストを行い得、一方、ＮＶＬコントローラは、組込みテスト手順の終了時に良品レポートを作成するか、又は、最初の不良ローが検出されるたびに不合格信号を生成する。不良は直ちにレポートされるので、テスタは、最初の不良の時点でテスト手順を中止することができ、残りのローをテストするさらなるテスト時間を無駄に費やすことがない。このことは、全ての不揮発性メモリ（ＮＶＭ）に対するテスト時間ひいてはテストコストがＳｏＣに対する全体テストコストの多くを占めることが多いので、重要である。ＮＶＬコントローラが、テスト手順の間の任意の時点で、「終了」信号をアクティブにし、不良信号がアクティブにされていない場合、テスト下のダイは必要とされるテストに合格している。
【００９４】
さらなる故障解析のために、コントローラはさらにデバッグモードを有し得る。このモードでは、テスタはアレイ及びロー番号を指定し得、次いでＮＶＬコントローラはそのローだけに読み出し又は書き込みを行い得る。読み出された内容は、ＮＶＬスキャンチェーンを用いてスキャンされ得る。この方法は、ＣＰＵが介入することなく、又は、ＮＶＬアレイビットが個々のフロップに無作為にマッピングされる長く複雑なＳｏＣスキャンチェーンを用いることを必要とせずに、ダイ上の任意のＮＶＬビットに読み出し又は書き込みアクセスを提供する。また、これは、読み出し信号マージン決定のためのアナログ電圧の印加と協調して成され得、そのため、個々のビットに対する正確なマージンが測定され得る。
【００９５】
これらの能力はＮＶＬを実用的とする助けとなる。というのは、テスト容易特性なしには、製品に不揮発性論理要素を用いることは危険を伴い得るからである。また、テスタの介入を最小にしてオンダイで合否をテストすることにより、テスト時間ひいてはコストが低減される。
【００９６】
論理クラウド内に分散されるミニアレイを用いたＮＶＬ実装は、ＥＣＣのような高度な誤り検出方法が、膨大な量の付加的なメモリコラム、及びアレイ毎に用いられるべき制御論理を必要とし得ることを意味し、これは、面積の観点から困難であり得る。しかし、信頼性のレベルを高めるために、ＳｏＣ１００のＮＶＬアレイは、ローコスト誤り検出方法としてパリティ保護を含み得る。これをこれ以降により詳細に説明する。
【００９７】
図１３は、ビットの３２コラム（０：３１）を有する例示のＮＶＬアレイを図示するＮＶＬアレイ１００におけるパリティ生成を図示する概略図である。このＮＶＬアレイは、入力データ値ＤＡＴＡ＿ＩＮ１１５１と、前のコラムのＩＯドライバの同様のＸＯＲゲートの出力との排他的ＯＲを取る。図１１Ａを再度参照して、ＮＶＬアレイの例えば部分１３５０などの各ＩＯドライバセクションは、ＸＯＲゲート１１６０を含み得る。ロー書き込みの間、コラム３０にあるＸＯＲゲート１１６０の出力は、ビットコラム０：３０に書き込まれるデータのローの全体的なパリティ値であり、図１１ＢでＸＯＲ＿ＩＮとして示す、ＮＶＬミニアレイのコラム３１のデータ入力にその出力をフィードすることによって最後のコラムにパリティ値を書き込むために用いられる。
【００９８】
同様にして、読み出しの間、ＸＯＲゲート１１６０は、読み出しラッチ１１５１からマルチプレクサ１１６１（図１１参照）を介したデータ値ＤＡＴＡ＿ＯＵＴと、前のコラムのＩＯドライバの同様のＸＯＲゲートの出力との排他的ＯＲを取る。ビットコラム３０にあるＸＯＲゲート１１６０の出力は、ビットコラム０：３０から読み出されたデータのローに対する全体的なパリティ値であり、パリティ誤り検出器１３７０においてビットコラム３１から読み出されるパリティ値と比較するために用いられる。読み出されたデータから求められる全体的なパリティ値がコラム３１から読み出されるパリティビットとマッチングしない場合、パリティ誤りが宣言される。
【００９９】
パリティ誤りが検出されると、このパリティ誤りは、記憶されたＦＦ状態値が信頼できないことを示す。ＮＶＬアレイは典型的に、ＳｏＣがパワーオフ状態にされた後に動作を再開するとき読み出されるので、パリティ誤りの検出は、正しいＦＦ状態値を再生するためにフルブート動作の実施が必要とされることを示す。
【０１００】
しかし、例えば、電力をオフにする前にＦＦ状態が適切に記憶されなかった場合、又は、新品のデバイスの場合、中間の状態が存在し得る。例えば、ＮＶＬアレイが空である場合、典型的に、全てのビットが０の値を有し得るか、又は、全てのビットが１の値を有し得る。全て０の場合、全て０に対して生成されるパリティ値は０であり、これは０のパリティビット値とマッチングする。従って、このパリティテストは、ＦＦ状態が正しく、ブート動作が実際は必要とされるのに必要とされないと誤って示すことになる。こうしたことが生じるのを防ぐために、例えば、パリティビットを反転したバージョンがビットラインドライバ１３６５によってコラム３１に書き込まれ得る。図１１Ａを再度参照して、コラム０〜３０のためのビットラインドライバ１１５６は入力データビットも反転するが、マルチプレクサ１１５３はｄａｔａ＿ｉｎビットをそれらが受け取られたとき反転するので、その結果、コラム０〜３０のデータは非反転で記憶されることに留意されたい。別の実施形態において、例えば、データビットが反転され得、パリティ誤りは反転されない。
【０１０１】
全て１の場合、コラムの数が偶数の場合は、計算されるパリティはゼロに等しく、１の反転値がパリティコラムに記憶される。従って、全て１のデータコラムの数が偶数であるＮＶＬアレイでは、パリティ誤りは検出されない。こうしたことが生じないようにするために、ＮＶＬアレイ１１０は、データコラムの数が奇数となるように制約される。例えば、この実施形態では、３１のデータコラム及び１つのパリティコラムがあり、合計で３２のビットセルコラムがある。
【０１０２】
いくつかの実施形態では、ＮＶＬ読み出し動作が行われると、ＮＶＬアレイのための制御論理により、パリティビットが読みだされ、反転され、書き戻される。これにより、ＮＶＬアレイは、前のＮＶＬアレイ書き込みが不完全であったか又は無効／破損された時点を検出し得る。残余分極は、単一読み出しサイクルでは完全にはなくならない。典型的に、ＦｅＣａｐを完全に脱分極するには、又は、ＮＶＬ読み出しパリティを信頼性を持ってトリガするために十分にデータを破壊するには、５〜１５読み出しサイクルかかる。例えば、電力喪失のため最後のＮＶＬ記憶動作の間８ＮＶＬアレイローのうち４ローしか書き込まれなかった場合、前の機械状態の取り込みが不完全であるという結果になる可能性が極めて高い。しかし、残余分極のため、直近の状態記憶シーケンスで書き込まれなかった４ローは、直近のＮＶＬデータ記憶イベントからのデータではなく、２つ前のＮＶＬ記憶イベントなど、以前からの古いデータを依然として含んでいる可能性がある。これら４ローからのパリティ及び古いデータは、無効データとしてではなく有効なデータとして読み出される可能性がある。これは、次のウェイクアップ／パワーアップイベントの間ＮＶＬアレイから機械状態が復元されるとき、機械をハングアップ又はクラッシュさせる可能性が高い。従って、各エントリが読み出された後反転されたパリティビットを書き戻すことによって、古いデータの各ローが強制的に本質的に無効化される。
【０１０３】
ＮＶＬエントリにデータを書き戻すと電力が多く使われるので、全てのビットにデータを書き戻さず、パリティビットのみにデータを書き戻すことが好ましい。本実施形態のアレイでは、この特性の寄生電力消費を最小化するため、全ての非パリティビット（すなわち、データビット）に対するＰＬ１、ＰＬ２、及びセンスアンプイネーブル信号をイナクティブにする。
【０１０４】
このようにして、ＳｏＣが無電力状態からパワーオン状態に遷移するたびに、ＮＶＬアレイから読み出されるデータが有効なＦＦ状態情報を含むという有効性判定が成され得る。パリティ誤りが検出される場合、ＮＶＬアレイからＦＦ状態を復元する代わりに、ブート動作が実施され得る。
【０１０５】
図１を再度参照すると、低電力ＳｏＣ１００は、表１及び表２に関して先に説明したように、複数の電圧及び電力ドメインを有する。例えば、ＮＶＬアレイのためのＶＤＤＮ＿ＦＶ、ＶＤＤＮ＿ＣＶ、スリープモード保持ラッチ及びウェル電源のためのＶＤＤＲ、並びにシステムマイクロコントローラ、様々な周辺デバイス、ＳＲＡＭ、ＲＯＭなどを形成する論理ブロックの大部分のためのＶＤＤＬなどである。ＦＲＡＭは、内部電力スイッチを有し、常時オン電源ＶＤＤＺに接続される。また、ＶＤＤＮ＿ＦＶドメインは、ＦｅＣａｐビットセルが必要とする１．５ボルトなど、１つの電圧で動作するように設計され得、一方、ＶＤＤＬ及びＶＤＤＮ＿ＣＶドメインは、例えば０．９〜１．５ボルトなどの、より低い電圧で動作して電力を節減するように設計され得る。このような実装形態では、パワースイッチ１０８を用いること、レベル変換、及び適切な領域における絶縁が必要とされる。ＮＶＬブロック１１０に関して必要とされる絶縁及びレベル変換の態様をこれ以降により詳細に説明する。これらの回路は、ＶＤＤＬ／ＶＤＤＮ＿ＣＶをＶＤＤＮ＿ＦＶ以下の任意の有効電圧とし得るように、また、回路が正しく機能するように設計され得る。
【０１０６】
図１４は、ＮＶＬアレイ１１０内の電力ドメインを図示するブロック図である。論理及びメモリの様々なブロックが表３に図示するように配置され得る。
【表３】
0006336985.tif 000005
【０１０７】
表３で説明する電力ドメインＶＤＤＬ、ＶＤＤＮ＿ＣＶ、ＶＤＤＮ＿ＦＶ、及びＶＤＤＲは、前述のスイッチ１０８など、パワースイッチの別個のセットを用いて制御される。しかし、或る種の条件に対して絶縁が必要とされ得る。ＩＯバッファブロック１０４４内のデータ出力バッファが、ＮＶＬ論理電力ドメインＶＤＤＮ＿ＣＶ内にあり、従って、チップの通常動作の間ドメインＶＤＤＲ（又は特定の実装形態によってはＶＤＤＬ）がオンである一方で、オフのままとなり得る。このような状況下の間全てのこのような信号を接地に接続するためにＩＳＯ低絶縁が実装される。ＶＤＤＮ＿ＣＶがオフである一方で、ランダム論理領域におけるＶＤＤＲ（又は特定の実装形態によってはＶＤＤＬ）ドメインにおけるデータ出力に接続される論理は、ＶＤＤＮ＿ＣＶドメインからの任意の信号が浮いている（ＶＤＤＮ＿ＣＶドメインがパワーダウンされるとき駆動されていない）場合、これらの信号が絶縁されていないと、内部回路内の電力と接地の間で短絡回路を生成し得る。ＮＶＬアレイのｃｏｒｒｅｃｔ＿０／１出力及びスキャン出力にも同じことが当てはまる。ここでの全般的な考え方は、ＮＶＬアレイのいずれの出力も、ＮＶＬアレイに電力が与えられないとき絶縁されるということである。チップ内に常時オン論理が存在する場合、ＶＤＤＬ又はＶＤＤＮ＿ＣＶからＶＤＤに向かう全ての信号は、入力絶縁を用いて、ＶＤＤドメインの周辺で絶縁されなければならない。ＮＶＬフロップにはＮＤ入力において付加的な組込み絶縁が存在する。ここで、この入力は送信ゲートに向かい、送信ゲートの制御信号ＮＵは常時オン信号によって駆動される。この入力が中間であると予想されるとき、ＮＵは低にされ、それによって、ＮＤ入力ポートがイナクティブにされる。同様の組込み絶縁が、ＮＶＬアレイのデータ入力及びスキャンインに存在する。この絶縁は、ＶＤＤＬがオフになるときＮＶＬ復元の間必要とされ得る。また、信号ＮＵ及びＮＶＬデータ入力マルチプレクサイネーブル信号（ｍｕｘ＿ｓｅｌ）は、ＶＤＤＲドメインにおいてのみバッファされなければならない。同じことが保持イネーブル信号にも当てはまる。
【０１０８】
動作の様々な電力節減モードを可能にするために、ＶＤＤＬ及びＶＤＤＮ＊ドメインは様々な時点で遮断され、短絡回路電流を燃焼させずに絶縁により動作が可能になる。
【０１０９】
低電圧ＶＤＤＬドメインから高電圧ＶＤＤＮドメインへのレベル変換が、ＮＶＬビットセルに向かうＮＶＬアレイの制御入力、例えば、ローイネーブル、ＰＬ１、ＰＬ２、リストア、リコール、及びクリア、に対して必要とされる。これにより、低電圧で動作し得るＳｏＣ論理及びＮＶＬ論理ゲートのブロックを低電圧で動作させ得ることによって、システム電力消散の低減が可能になる。ビットセルアレイ１０４０におけるビットセルの各ローに対し、例えば、プレートラインＰＬ１、ＰＬ２、転送ゲートイネーブルＰＡＳＳ、センスアンプイネーブルＳＡＥＮ、クリアイネーブルＣＬＲ、及び電圧マージンテストイネーブルＶＣＯＮなどを含む、ビットセルの各ローに対する信号を駆動するワードラインドライバ１０４２のセットがある。ビットセルアレイ１０４０及びワードライン回路ブロック１０４２は、ＶＤＤＮによって供給される。１０４２への入力信号に対するレベルシフトは、専用のレベルシフタ（図１５参照）によって扱われ、ビットセルアレイ１０４０への入力に対するレベルシフトは、ＮＶＬビットセル内の回路の特殊なシーケンス処理によって、アレイデータ経路又はビットセルにいかなる付加的な専用回路も付加せずに、扱われる。
【０１１０】
図１５は、ＮＶＬアレイ１１０において用いるためのレベルコンバータ１５００の概略図である。図１５は、ワードラインドライバ１４０２のセットの一部とし得る１つのワードラインドライバを図示する。レベルコンバータ１５００は、ワードラインドライバ１０４２のための１．５ボルトＶＤＤＮドメインにおける領域１５０２に形成されるＰＭＯＳトランジスタＰ１、Ｐ２及びＮＭＯＳトランジスタＮ１、Ｎ２を含む。ただし、タイミング及び制御モジュール１０４６における制御論理は、１．２ボルトＶＤＤＬドメインにおける領域１５０３に置かれる（１．２Ｖは、０．９Ｖ〜１．５Ｖの範囲とし得る可変ＶＤＤＬコア電源を表すために用いられる）。１．２ボルト信号１５０６は、制御モジュール１０４６によって生成されるロー制御信号のうちの任意のものを示し、ＮＶＬビットセルアレイ１０４０にアクセスする際に用いられる。インバータ１５１０が、領域１５０３における制御信号１５１１、１５１２の相補対を形成し、これらの制御信号は、レベルコンバータ１５００内のトランジスタＮ１及びＮ２へ導かれる。動作において、１．２ボルト信号１５０６が高に向かうと、ＮＭＯＳデバイスＮ１がＰＭＯＳデバイスＰ２のゲートを低にプルし、それによって、Ｐ２が信号１５０４を最大１．５ボルトまでプルする。同様に、１．２ボルト信号１５０６が低に向かうと、相補信号１５１２により、ＮＭＯＳデバイスＮ２がＰＭＯＳデバイスＰ１のゲートを低にプルし、それがＰＭＯＳデバイスＰ２のゲートをプルアップし、信号１５０４を約０ボルトの低に向かわせる。ＮＭＯＳデバイスは、ＰＭＯＳより堅固でなければならず、そのため、このコンバータはスタックしない。このようにして、電圧ドメインを通じてレベルシフトが行われ得、インバータ１５１０を含む制御論理を低電圧ドメイン１５０３に置くことによって電力が節減され得る。各信号に対し、コントローラ２つの相補制御信号１５１１、１５１２によってレベルコンバータ１５００の各々に結合される。
【０１１１】
図１６は、強誘電性ビットセル内でセンスアンプを用いるレベルシフトの動作を図示するタイミング図である。図２を再度参照して、マルチプレクサ２１２からＮＶＬアレイ１１０へ提供される入力データも、１．２ボルトＶＤＤＬドメインから、書き込み動作の間１．５ボルトＶＤＤＮドメインにおけるＦｅＣａｐの最良動作のために必要とされる１．５ボルトまでレベルシフトされる必要がある。これは、例えば、ビットセル４００のセンスアンプを用いて行われ得る。図４及び図１３を再度参照して、１．２ボルトＶＤＤＬドメインからのＢＬ１３５２などの各ビットラインＢＬは、ビットセル４００内の転送ゲート４０２又は４０３に結合されることに留意されたい。センスアンプ４１０は、１．５ボルトＶＤＤＮ電力ドメインで動作する。ここで図１６を参照して、時間期間ｓ２の間、ビットラインＢＬ、ＢＬＢ上にデータが提供され、時間期間ｓ２の間転送ゲート４０２、４０３がパス信号ＰＡＳＳによってイネーブルにされてデータビット及びその反転値がビットラインから差動ノードＱ、ＱＢへ転送されることに留意されたい。しかし、１６０２で示すように、転送される電圧レベルは１．５ボルトレベル未満に制限されるに過ぎない。これは、ビットラインドライバが１．２ボルトＶＤＤＬドメインに置かれるからである。
【０１１２】
センスアンプ４１０は、書き込みドライバ１１５６、１１５７などの書き込みデータドライバが時間期間ｓ２の間適切な差分１６０２をＱ／ＱＢ上に強制的に与えた後、１６０４で示すように、付加的な駆動を提供するため、時間期間ｓ３、ｓ４の間センスアンプイネーブル信号ＳＡＥＮ、ＳＡＥＮＢによってイネーブルにされる。センスアンプにはより高い電圧（ＶＤＤＮ）によって電力が供給されるので、センスアンプは、書き込みデータドライバによってセンスアンプの両端に確立される差分に応答し得、センスアンプの論理０側をＶＳＳ（Ｑ又はＱＢ）までクランプし、論理１を含む他方の側はＶＤＤＮの電圧レベルまでプルアップされる。このようにして、ＮＶＬ記憶動作の間電圧レベルシフト機能を提供するために既存のＮＶＬアレイハードウェアが再利用される。
【０１１３】
ただし、センスアンプから１．２Ｖドライバ電源への短絡を回避するために、書き込みデータドライバは、時間期間ｓ２終了時、時間期間ｓ３、ｓ４の間センスアンプがオンにされる前に、センスアンプから隔離される。これは、時間期間ｓ２の後ＳＴＯＲＥ信号をデアサートすることによってビットラインドライバをオフにすることによって、及び／又は時間期間ｓ２の後ＰＡＳＳをデアサートすることによって転送ゲートをイナクティブにすることによって成され得る。
【０１１４】
上述の配置を用いて、処理又は演算デバイス動作サイクルにおける様々の点において電力節減又は有用性を最大化するために様々な構成が可能である。１つのこのような手法では、演算デバイスが、データの喪失なく又はリブートすることなく一連の電力中断にわたって連続的に動作するように構成され得る。図１７に示す例を参照すると、処理デバイス１７００が、上述のように、複数の不揮発性論理要素アレイ１７１０と、複数の揮発性ストレージ要素１７２０と、少なくとも１つの不揮発論理コントローラ１７３０とを含み、少なくとも１つの不揮発論理コントローラ１７３０は、複数の揮発性ストレージ要素１７２０によって表される機械状態を記憶するため、及び記憶した機械状態を複数の不揮発性論理要素アレイ１７１０から複数の揮発性ストレージ要素１７２０に読み出すために複数の不揮発性論理要素アレイ１７１０を制御する構成される。電圧又は電流検出器１７４０が、入力電源１７５０から電力品質を感知するように構成される。
【０１１５】
電力管理コントローラ１７６０が、電圧又は電流検出器１７４０から電力品質に関する情報を受け取るため、電圧又は電流検出器１７４０と通信する。電力管理コントローラ１７６０はまた、機械状態を複数の不揮発性論理要素アレイ１７１０に記憶させ、複数の不揮発性論理要素アレイ１７１０から機械状態を復元させるための情報を提供するため、少なくとも１つの不揮発論理コントローラ１７３０と通信するように構成される。
【０１１６】
電圧レギュレータ１７７０が、入力電源１７５０から電力を受け取るように、及び処理デバイス１７００に電力を提供するように構成される出力電源レール１７５５に電力を提供するように接続される。電圧レギュレータ１７７０はさらに、電力管理コントローラ１７６０と通信するように、及び電力品質が閾値を下回るという判定に応答して、スイッチ１７８０の制御などを介して、入力電源１７５０から出力電源レール１７５５を切断するように構成される。
【０１１７】
電力管理コントローラ１７６０及び電圧又は電流検出器１７４０は、少なくとも１つの不揮発論理コントローラ１７３０及び電圧レギュレータ１７７０と協調作動して、一次演算経路とは独立してデータバックアップ及び復元プロセスを管理する。１つのこのような例では、電力管理コントローラ１７６０は、電力品質が閾値を下回るという判定に応答して、処理デバイス１７００のためのクロックを停止させるために信号を送信するように構成される。次いで、電圧レギュレータ１７７０は、入力電源１７５０から出力電源レール１７５５が切断されることに応答して、電力管理コントローラ１７６０に切断信号を送信し得る。電力管理コントローラ１７６０は、切断信号の受信に応答して、少なくとも１つの不揮発論理コントローラ１７１０にバックアップ信号を送信する。ＮＶＬアレイへのシステム状態のバックアップが完了すると、ＳｏＣから電力が取り去られるか、又は、機械状態の喪失のさらなる懸念なしに電力が劣化し続け得る。
【０１１８】
電力品質を判定する個々の要素は、異なる手法において変化し得る。例えば、電圧レギュレータ１７７０は、閾値よりも電力品質がよくなることを検出するように、及び、それに応答して電力管理コントローラ１７６０に良好電力信号を送信するように構成され得る。それに応答して、電力管理コントローラ１７６０は、機械状態の復元を促すために複数の不揮発性論理要素アレイ１７１０及び少なくとも１つの不揮発論理コントローラ１７３０に電力を提供するよう信号を送信するように構成される。電力管理コントローラ１７６０は、パワーアップが完了したことを判定するように、及び、それに応答して、処理デバイス１７００のためのクロックを解放するために信号を送信するように構成される。ここで、処理デバイス１７００は、電力品質が閾値を下回るという判定の前の機械状態から動作を再開する。
【０１１９】
処理デバイス１７００がバックアッププロセスを完了するために十分な電力を有することを保証するために、電荷ストレージ要素１７９０が、出力電源レール１７５５が入力電源１７５０から切断された後複数の不揮発性論理要素アレイ１７１０に機械状態を記憶するために十分に長く処理デバイス１７００に電力供給するために十分な一時的電力を処理デバイス１７００に提供するように構成される。電荷ストレージ要素１７９０は、このような緊急電力を蓄えるように設計される少なくとも１つの専用オンダイ（又はオフダイ）コンデンサとし得る。別の手法において、電荷ストレージ要素１７９０は、自然に生じる寄生電荷がダイ内に蓄積する回路要素とし得る。この場合、回路要素から接地への電荷の消散により、バックアップ動作を完了するために十分な電力が得られる。
【０１２０】
図１８は、ＮＶＬドメイン及び電力ドメインを個々に制御する例示の方法の態様を示す。この方法は、複数の揮発性ストレージ要素を用いて処理デバイスを動作させること１８０２と、複数の揮発性ストレージ要素に記憶されたデータを複数の不揮発性論理要素アレイに記憶することとを含む。複数の不揮発性論理要素アレイの少なくとも１つの不揮発性論理要素アレイの第１のセットが処理デバイスの第１の機能に関連付けられ、複数の不揮発性論理要素アレイの少なくとも１つの不揮発性論理要素アレイの第２のセットが処理デバイスの第２の機能に関連付けられる。従って、この方法は、複数の不揮発性論理要素アレイの少なくとも１つの不揮発性論理要素アレイの第１のセットの動作を、複数の不揮発性論理要素アレイの少なくとも１つの不揮発性論理要素アレイの第２のセットの動作から独立して制御すること１８０４を含む。この独立制御は、関連する１つ又は複数のＮＶＬアレイ或いはこれらの組み合わせを独立して制御する、別個の不揮発性論理要素アレイコントローラを有することによって、複数のＮＶＬアレイを独立して制御するように構成される特殊化された不揮発性論理要素アレイコントローラを介して提供され得る。
【０１２１】
任意選択で、独立のＮＶＬアレイ制御を有することに加えて、又はその代わりに、個々の電力ドメインが区分され得、異なる区分は独立してパワーアップ又はパワーダウンされ得る。例えば、複数の揮発性ストレージ要素の個々の揮発性ストレージ要素の一次論理回路部分が、第１の電力ドメインによって電力供給され、第１の機能に関連付けられる切替え論理要素が第１の電力ドメインの第１の部分によって電力供給される１８０６。第２の機能に関連付けられる切替え論理要素が第１の電力ドメインの第２の部分によって電力供給される１８０８。この場合、この方法は、第１の電力ドメインの第１の部分及び第２の部分を、第１の電力ドメインの他の部分とは独立して個々にパワーアップ又はパワーダウンすること１８１０を含む。このように、第１の部分は、第２の部分がパワーダウンされるときにパワーアップされ得る。
【０１２２】
他の電力ドメインも同様に区分され得る。例えば、第１の機能に関連付けられる不揮発性論理要素アレイが、第３の電力ドメインの第１の部分によって電力供給され得１８１２、第２の機能に関連付けられる不揮発性論理要素アレイは第３の電力ドメインの第２の部分によって電力供給される１８１４。この例では、この方法は、第３の電力ドメインの第１の部分及び第２の部分を、第１の電力ドメインの他の部分とは独立して個々にパワーアップ又はパワーダウンすること１８１６を含む。
【０１２３】
また、個々の電力ドメインは独立して制御され得る。この例では、複数の揮発性ストレージ要素の個々の揮発性ストレージ要素の一次論理回路部分が、第１の電力ドメインによって電力供給される。複数の不揮発性論理要素アレイにデータを記憶させるため、及び複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される論理要素は第２の電力ドメインによって電力供給され、複数の不揮発性論理要素アレイは第３の電力ドメインによって電力供給される。この方法は、第１の電力ドメイン、第２の電力ドメイン、及び第３の電力ドメインの個々の電力ドメインを、第１の電力ドメイン、第２の電力ドメイン、及び第３の電力ドメインの他の電力ドメインとは独立して、パワーアップ又はパワーダウンすることを含み得る。
【０１２４】
この手法では、処理デバイスは下記のように動作し得る。システム電力の分断を示す信号の受信に応答して、処理デバイスは、システムバックアップモードに入り、第３の電力ドメインをパワーアップする。少なくとも１つの不揮発性論理コントローラがシステムバックアップモードが完了したと判定することに応答して、処理デバイスは、スリープモードに入り、第１の電力ドメイン、第２の電力ドメイン、及び第３の電力ドメインをパワーダウンする。スリープモードにある一方で電力の復元を示す信号を受信することに応答して、処理デバイスは、システム復元モードに入り、第２の電力ドメイン及び第３の電力ドメインをパワーオンし、第１の電力ドメインをパワーダウンのまま保つ。少なくとも１つの不揮発論理コントローラがシステム復元モードが完了したと判定することに応答して、処理デバイスは、通常動作モードに入り、第１の電力ドメイン及び第２の電力ドメインをパワーアップし、第３の電力ドメインをパワーダウンする。このように構成されると、処理デバイスの効率が向上するために電力制御の様々な組み合わせが実施され得る。
【０１２５】
図１９は、複数の不揮発性論理要素アレイ、複数の揮発性ストレージ要素、及び少なくとも１つの不揮発性論理コントローラを有する演算デバイスに電力供給する動作を図示するフローチャートである。演算デバイスは、演算デバイスの切替え論理要素に電力を供給するように構成される第１の電力ドメイン、複数の不揮発性論理要素アレイにデータを記憶させるため、及び複数の不揮発性論理要素アレイからデータを読み出すために信号を制御するように構成される論理要素に電力を供給するように構成される第２の電力ドメイン、及び複数の不揮発性論理要素アレイのために電力を供給するように構成される第３の電力ドメインを含む。この方法は、節電又は完全な電力喪失など、システム電力の分断を示す信号を受け取ること１９０２と、それに応答して、システムバックアップモードに入り、第３の電力ドメインをパワーアップする一方で、第１及び第２の電力ドメインの電力を保つこと１９０４を含む。バックアップモードの間、上述したように揮発性ストレージ要素からの機械状態が不揮発性論理要素アレイに記憶される。
【０１２６】
少なくとも１つの不揮発性論理コントローラは、システムバックアップモードが完了したことを判定し１９０６、それに応答して、デバイスは、スリープモードに入り、第１の電力ドメイン、第２の電力ドメイン、及び第３の電力ドメインをパワーダウンする１９０８。スリープモードにある一方で電力の回復を示す信号を受け取ること１９１０に応答して、この方法はさらに、システム復元モードに入り、第２の電力ドメイン及び第３の電力ドメインをパワーオンし、揮発性ストレージ要素に状態が復元される際の過剰なデータトグル電力使用を回避するため第１の電力ドメインをパワーダウンのまま保つこと１９１２を含む。少なくとも１つの不揮発性論理コントローラは、システム復元モードが完了したことを判定する１９１４。これに応答して、この方法は、通常動作モードに入り、第１の電力ドメイン及び第２の電力ドメインをパワーアップし、ＮＶＬアレイへの電力漏れをなくすため第３の電力ドメインをパワーダウンすることを含む。このように構成されると、ＮＶＬストレージからシステム状態が回復される間、過剰な論理切り替えによって失われる過剰な電力及びそれに伴う寄生電力消費が低減される。
【０１２７】
システム例
図２０は、上記のように、ＮＶＬアレイを含む別のＳｏＣ２０００のブロック図である。ＳｏＣ２０００は、Ｃｏｒｔｅｘ−Ｍ０プロセッサコア２００２、ユニバーサル非同期レシーバ／トランスミッタ（ＵＡＲＴ）１９０４及びＳＰＩ（シリアル周辺インターフェース）２００６インターフェース、並びに１０ＫＢ  ＲＯＭ２０１０、８ＫＢ  ＳＲＡＭ２０１２、６４ＫＢ（強誘電性ＲＡＭ）ＦＲＡＭ２０１４メモリブロック、市販の超低電力（ＵＬＰ）マイクロコントローラの特性を特徴とする。１３０  ｎｍＦＲＡＭプロセスベースのＳｏＣは、単一１．５Ｖ電源、８ＭＨｚシステムクロック、及びＮＶＬ動作のための１２５ＭＨｚクロックを用いる。このＳｏＣは、それぞれ、ＳＲＡＭ及びＦＲＡＭからのコードを実行する一方で、７５  μＡ／ＭＨｚ及び１７０  μＡ／ＭＨｚを消費する。２５３７のＦＦの全体システム状態をバックアップ及び復元するエネルギー及び時間コストは、それぞれ、４．７２  ｎＪ及び３２０  ｎｓと１．３４  ｎＪ及び３８４  ｎｓのみを要し、これらはこのクラスのデバイスの業界ベンチマークである。ＳｏＣ２０００は、先により詳細に説明したように、各ＮＶＬビットに対するテスト能力、及び５５０  ｍＶのインサイチュ読み出し信号マージンを提供する。
【０１２８】
ＳｏＣ２０００は、１０のＮＶＬアレイによって提供される２５３７のＦＦ及びラッチを有する。中央ＮＶＬコントローラが、先により詳細に説明したように、全てのアレイ、及びそれらのＦＦとの通信を制御する。この分散ＮＶＬミニアレイシステムアーキテクチャにより、テスト特性コストの償却が促進され、わずか３．６％のＳｏＣ面積オーバーヘッドが実現され、システムレベルのスリープ／ウェイクアップエネルギーコストがビット当たり２．２  ｐＪ／０．６６  ｐＪという極めて低い値となる。
【０１２９】
本発明は、特定の応用例として、例えばシステムオンチップ（ＳｏＣ）における、マイクロコントローラ（ＭＣＵ）に実装されるが、他の形態のプロセッサにも応用される。ＳｏＣは、設計ライブラリにより提供される予め設計された機能回路と組み合わされたカスタム設計された機能回路を各々が含む、１つ又は複数のモジュールを含み得る。
【０１３０】
本発明を例示の実施形態を参照して説明してきたが、この説明は限定的な意味で解釈されることを意図していない。本発明の様々な他の実施形態が、この説明を参照した当業者には明らかであろう。例えば、リモートコントロール、アクセスバッジ及びフォブ、スマートクレジット／デビットカード及びエミュレータ、スマートフォン、情報端末などの、他の携帯又は移動用システム、並びに任意の他の現時点で既知の又は今後開発される携帯又は埋め込みシステムが、完全にパワーダウンされた状態からフル動作状態をほぼ即座に回復し得るように本明細書で説明したようなＮＶＬアレイを具現化し得る。
【０１３１】
不揮発性ＦｅＣａｐビットセルに結合される保持ラッチの実施形態を本明細書で説明したが、別の実施形態において、ＮＶＬアレイからの不揮発性ＦｅＣａｐビットセルが、低電力保持ラッチを含まないフリップフロップ又はラッチに結合され得る。この場合、システムは、例えば、フル電力状態、又は別の状況で電圧又はクロックレートの低下に基づいて電力が減少した状態と、完全にオフ電力状態との間で遷移し得る。上述したように、電力をオフにする前に、フリップフロップ及びラッチの状態は分散ＮＶＬアレイに保存され得る。電力が回復されると、フリップフロップは、関連付けられたＮＶＬアレイビットセルによって提供される入力を介して初期化され得る。
【０１３２】
本開示に記載した技法は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの任意の組み合わせにおいて実装され得る。ソフトウェアにおいて実装される場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又はデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサにおいて実行され得る。本技法を実行するソフトウェアは、まず、コンピュータ可読媒体、例えば、コンパクトディスク（ＣＤ）、ディスケット、テープ、ファイル、メモリ、又は任意の他のコンピュータ可読媒体デバイスに記憶され得、プロセッサにおいてロード及び実行され得る。場合によっては、ソフトウェアは、コンピュータ可読媒体及びこのコンピュータ可読媒体のためのパッケージ材料を含む、コンピュータプログラム製品に含めて販売され得る。場合によっては、ソフトウェア命令は、着脱可能なコンピュータ可読媒体（例えば、フロッピーディスク、光ディスク、フラッシュメモリ、ＵＳＢキー）を介して、別のデジタルシステム上のコンピュータ可読媒体から送信経路を介する等の方式で配信され得る。
【０１３３】
本明細書では、方法ステップが順次に提示及び説明されることがあるが、示され説明されるステップの１つ又は複数が、省略、反復、同時実行され得、及び／又は、図示され及び／又は本明細書で説明された順とは異なる順で実施され得る。従って、本発明の実施形態は、図示され及び／又は本明細書で説明されたステップの特定の順に限定されるとみなされるべきではない。
【０１３４】
従って、特許請求の範囲は、本発明の真の範囲内に入るものとして実施形態の任意のそのような改変を包含することが意図されている。
【図１】
0006336985.tif 000006
【図２】
0006336985.tif 000007
【図３】
0006336985.tif 000008
【図４】
0006336985.tif 000009
【図５】
0006336985.tif 000010
【図６】
0006336985.tif 000011
【図７】
0006336985.tif 000012
【図８】
0006336985.tif 000013
【図９】
0006336985.tif 000014
【図１０】
0006336985.tif 000015
【図１１Ａ】
0006336985.tif 000016
【図１１Ｂ】
0006336985.tif 000017
【図１２Ａ】
0006336985.tif 000018
【図１２Ｂ】
0006336985.tif 000019
【図１３】
0006336985.tif 000020
【図１４】
0006336985.tif 000021
【図１５】
0006336985.tif 000022
【図１６】
0006336985.tif 000023
【図１７】
0006336985.tif 000024
【図１８】
0006336985.tif 000025
【図１９】
0006336985.tif 000026
【図２０】
0006336985.tif 000027