(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-19
(54)【発明の名称】行列-ベクトル乗算の為の抵抗メモリデバイス
(51)【国際特許分類】
G11C 13/00 20060101AFI20240312BHJP
G06G 7/16 20060101ALI20240312BHJP
【FI】
G11C13/00 480J
G11C13/00 210
G11C13/00 480H
G06G7/16 510
G11C13/00 270J
G11C13/00 400D
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023546074
(86)(22)【出願日】2022-02-15
(85)【翻訳文提出日】2023-07-28
(86)【国際出願番号】 IB2022051322
(87)【国際公開番号】W WO2022189872
(87)【国際公開日】2022-09-15
(32)【優先日】2021-03-09
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(74)【復代理人】
【識別番号】100118599
【氏名又は名称】村上 博司
(74)【復代理人】
【識別番号】100160738
【氏名又は名称】加藤 由加里
(72)【発明者】
【氏名】カダム-アルジャメ,リドゥアン
(72)【発明者】
【氏名】ル ガロ-ブルドー,マニュエル
(72)【発明者】
【氏名】セバスティアン,アブ
(57)【要約】
行列とベクトルとの行列-ベクトル乗算を実行する為のデバイス。該デバイスはメモリクロスバーアレイを備えており、該メモリクロスバーアレイは、複数の行線;複数の列線;該複数の行線と該複数の列線との間に配置された複数の接合部を備えている。各接合部は、プログラム可能な抵抗素子と、該プログラム可能な抵抗素子にアクセスする為のアクセス素子とを備えている。該メモリクロスバーアレイは更に、1以上の書き込みアシストワイヤと、複数のスイッチング素子の1以上の対応するアレイとを備えている。該書き込みアシストワイヤは、該複数のスイッチング素子を介して、該複数の列線に接続可能である。
【選択図】
図1
【特許請求の範囲】
【請求項1】
行列とベクトルとの行列-ベクトル乗算を実行する為のデバイスであって、該デバイスはメモリクロスバーアレイを備えており、
該メモリクロスバーアレイは、
複数の行線;
複数の列線;
前記複数の行線と前記複数の列線との間に配置された複数の接合部、ここで、各接合部は、プログラム可能な抵抗素子と、前記プログラム可能な抵抗素子にアクセスする為のアクセス素子とを備えている;並びに、
1以上の書き込みアシストワイヤ、及び複数のスイッチング素子の1以上の対応するアレイ、ここで、前記書き込みアシストワイヤは、前記複数のスイッチング素子を介して、前記複数の列線に接続可能である、
を備えており、
ここで、前記デバイスは、
前記複数の行線のうちの1つのサブセットにプログラミング信号を印加して、前記行列-ベクトル乗算の為に前記抵抗素子のコンダクタンス値をプログラムすること;及び、
前記複数のスイッチング素子の前記1以上のアレイによって、書き込み動作の間に前記1以上の書き込みアシストワイヤをオンにし、それによって、前記書き込み動作の間に前記プログラミング信号の為の1以上のシャントパスを提供すること
によって、前記書き込み動作を実行するように構成されている、
前記デバイス。
【請求項2】
前記デバイスが、
前記メモリクロスバーアレイの前記列線に読み取り電圧を印加するように構成された読み出し回路;及び、
前記メモリクロスバーアレイの行線の読み出された電流
を備えている、請求項1に記載のデバイス。
【請求項3】
前記メモリクロスバーアレイが複数のセグメントに分割されており;
前記複数のセグメントの各セグメントが複数の行線を備えており;及び、
前記複数のセグメントの各セグメントが、前記1以上の書き込みアシストワイヤのうちの割り当てられた書き込みアシストワイヤを備えている、
請求項1に記載のデバイス。
【請求項4】
前記メモリクロスバーアレイがM本の行線を備えており;
前記メモリクロスバーアレイは、M/L個のセグメントに分割され、ここで、M及びLは整数であり、並びに前記M/L個のセグメントの各セグメントは、L本の行線と前記1以上の書き込みアシストワイヤのうちの割り当てられた書き込みアシストワイヤとを備えている、
請求項1に記載のデバイス。
【請求項5】
前記デバイスが、前記書き込み動作の間に、前記複数の列線のうちの1つの列線において少なくともM/L個のデバイスを並列にプログラムするように構成されている、請求項4に記載のデバイス。
【請求項6】
前記コンダクタンス値が、前記行列-ベクトル乗算の前記行列の行列値を表す;
前記読み取り電圧が、前記行列-ベクトル乗算の前記ベクトルのベクトル値を表す;及び、
前記電流が、前記行列-ベクトル乗算の積ベクトルのベクトル要素の結果値である、
請求項2に記載のデバイス。
【請求項7】
前記接合部が、抵抗素子とアクセストランジスタとの直列配置を含む、請求項1に記載のデバイス。
【請求項8】
前記書き込みアシストワイヤが、前記行線に平行に配置されている、請求項1に記載のデバイス。
【請求項9】
前記スイッチング素子が、トランジスタとして埋め込まれている、請求項1に記載のデバイス。
【請求項10】
読み取り電圧の情報が、読み取り電圧パルスの持続時間若しくは読み取り電圧パルスの電圧レベル又はそれらの組み合わせとしてエンコードされる、請求項1に記載のデバイス。
【請求項11】
読み取り電圧の情報が、二値電圧パルスのシーケンスとしてエンコードされる、請求項1に記載のデバイス。
【請求項12】
前記デバイスが、
前記行列-ベクトル乗算の為に複数の実行を行い、及び、
前記複数の実行の結果値を平均化する
ように構成されている、請求項1に記載のデバイス。
【請求項13】
前記抵抗素子が、相変化メモリ(PCM)素子、導電性ブリッジ抵抗メモリ素子、金属酸化物抵抗ランダムアクセスメモリ(RRAM)素子、磁気抵抗ランダムアクセスメモリ(MRAM)素子、強誘電体ランダムアクセスメモリ(FeRAM)素子、光学メモリ素子、並びに、トランジスタ、抵抗、コンデンサ若しくはインダクタ又はそれらの組み合わせを備え、抵抗メモリ素子の挙動を共同でエミュレーションするシステムデバイス、のうちの1つである、請求項1に記載のデバイス。
【請求項14】
前記デバイスが信号発生器を備えており、該信号発生器は、反復プログラム及び検証手順によって前記抵抗素子の前記コンダクタンス値をプログラムするように構成されている、請求項1に記載のデバイス。
【請求項15】
前記読み出し回路が、前記メモリクロスバーアレイの前記列線に正及び負の読み取り電圧を印加するように構成されている、請求項2に記載のデバイス。
【請求項16】
前記読み出し回路が、転置行列-ベクトル乗算を実行する為に、前記メモリクロスバーアレイの前記行線に読み取り電圧を印加するように構成されている、請求項2に記載のデバイス。
【請求項17】
集積回路を設計、製造、又は試験する為に機械可読媒体内に実態的に組み込まれた設計構造体であって、該設計構造体が、行列とベクトルとの行列-ベクトル乗算を実行する為のデバイスを備えており、該デバイスはメモリクロスバーアレイを備えており、
該メモリクロスバーアレイは、
複数の行線;
複数の列線;
前記複数の行線と前記複数の列線との間に配置された複数の接合部、ここで、各接合部は、プログラム可能な抵抗素子と、前記プログラム可能な抵抗素子にアクセスする為のアクセス素子とを備えている;並びに、
1以上の書き込みアシストワイヤ、及び複数のスイッチング素子の1以上の対応するアレイ、ここで、前記書き込みアシストワイヤは、前記複数のスイッチング素子を介して、前記複数の列線に接続可能である、
を備えており、
ここで、前記デバイスは、
前記複数の行線のうちの1つのサブセットにプログラミング信号を印加して、前記行列-ベクトル乗算の為に前記抵抗素子のコンダクタンス値をプログラムすること;及び、
前記複数のスイッチング素子の前記1以上のアレイによって、書き込み動作の間に前記1以上の書き込みアシストワイヤをオンにし、それによって、前記書き込み動作の間に前記プログラミング信号の為の1以上のシャントパスを提供すること
によって、前記書き込み動作を実行するように構成されている、
前記設計構造体。
【請求項18】
前記デバイスが、
前記メモリクロスバーアレイの前記列線に読み取り電圧を印加するように構成された読み出し回路;及び、
前記メモリクロスバーアレイの行線の読み出された電流
を備えている、請求項17に記載の設計構造体。
【請求項19】
前記メモリクロスバーアレイが複数のセグメントに分割されており;
前記複数のセグメントの各セグメントが複数の行線を備えており;及び、
前記複数のセグメントの各セグメントが、割り当てられた書き込みアシストワイヤを備えている、
請求項17に記載の設計構造体。
【請求項20】
行列とベクトルとの行列-ベクトル乗算をメモリクロスバーアレイによって実行する方法であって、該メモリクロスバーアレイは、
複数の行線;
複数の列線;
前記複数の行線と前記複数の列線との間に配置された複数の接合部、ここで、各接合部は、プログラム可能な抵抗素子と、前記プログラム可能な抵抗素子にアクセスする為のアクセス素子とを備えている;並びに、
1以上の書き込みアシストワイヤ、及び複数のスイッチング素子の1以上の対応するアレイ、ここで、前記書き込みアシストワイヤは、前記複数のスイッチング素子を介して、前記複数の列線に接続可能である、
を備えており、
ここで、前記方法は、
前記複数の行線のうちの1つのサブセットにプログラミング信号を印加して、前記行列-ベクトル乗算の為に前記抵抗素子のコンダクタンス値をプログラムすることによって、前記書き込み動作を実行すること;及び、
前記複数のスイッチング素子の前記1以上のアレイによって、書き込み動作の間に前記1以上の書き込みアシストワイヤをオンにし、それによって、前記書き込み動作の間に前記プログラミング信号の為の1以上のシャントパスを提供すること
を含む、前記方法。
【発明の詳細な説明】
【技術分野】
【0001】
コグニティブコンピューティングは、膨大な量のデータから知能及びナレッジを導き出す有望な技術である。現在のコグニティブコンピュータは通常、コンピューティングユニットとメモリユニットとが分離されたフォン・ノイマン・アーキテクチャ(Von Neumann architecture)に基づく。コグニティブコンピューティングは本質的にデータ中心であり、膨大な量のデータを高速で行き来させる必要がある。フォン・ノイマン・アーキテクチャはそのようなタスクにはかなり非効率である故に、効率的なコグニティブコンピュータ、特にメモリ及びロジックが何らかの形で共存するアーキテクチャを構築する為には他のアーキテクチャが望まれることが益々明らかになってきている。
【発明の概要】
【課題を解決するための手段】
【0002】
1つの観点に従うと、本開示は、行列とベクトルとの行列-ベクトル乗算を実行する為のデバイスとして具現化される。該デバイスはメモリクロスバーアレイを備えており、該メモリクロスバーアレイは、複数の行線;複数の列線;該複数の行線と該複数の列線との間に配置された複数の接合部を備えている。各接合部は、プログラム可能な抵抗素子と、該プログラム可能な抵抗素子にアクセスする為のアクセス素子とを備えている。該メモリクロスバーアレイは更に、1以上の書き込みアシストワイヤと、複数のスイッチング素子の1以上の対応するアレイとを備えている。該書き込みアシストワイヤは、該複数のスイッチング素子を介して、該複数の列線に接続可能である。
【0003】
該デバイスは、該複数の行線のうちの1つのサブセットにプログラミング信号を印加して、該行列-ベクトル乗算の為に該抵抗素子のコンダクタンス値をプログラムすること;及び、複数のスイッチング素子の該1以上のアレイによって、書き込み動作の間に該1以上の書き込みアシストワイヤをオンにし、それによって、該書き込み動作の間に該プログラミング信号の為の1以上のシャントパスを提供することによって、前記書き込み動作を実行するように構成されている。
【0004】
他の観点に従うと、設計構造体が提供される。該設計構造体は、集積回路を設計、製造、又は試験する為に機械可読媒体内に実態的に組み込まれている。該設計構造体は、上記観点に従うデバイスを備えている。
【0005】
他の観点に従うと、行列とベクトルとの行列-ベクトル乗算を上記観点のデバイスによって実行する方法が提供される。該方法は、該複数の行線のうちの1つのサブセットにプログラミング信号を印加して、該行列-ベクトル乗算の為に該抵抗素子のコンダクタンス値をプログラムすることによって、前記書き込み動作を実行すること;及び、複数のスイッチング素子の該1以上のアレイによって、書き込み動作の間に該1以上の書き込みアシストワイヤをオンにし、それによって、該書き込み動作の間に該プログラミング信号の為の1以上のシャントパスを提供することを含む。
【0006】
本開示の実施態様は、添付の図面を参照しながら、例示的且つ非限定的な例によって、以下においてより詳細に説明されるであろう。
【図面の簡単な説明】
【0007】
【
図1】
図1は、本開示の1つの実施態様に従う、行列とベクトルとの乗算を実行する為のデバイスの簡略化された概略ブロック図である。
【
図2】
図2は、本開示の1つの実施態様に従う、行列-ベクトル乗算の一例を示す。
【
図3】
図3は、相変化メモリセルによって実行されるべきスカラー乗算の例示的な実施態様を示す。
【
図4】
図4は、相変化メモリセルの材料成分の電流/電圧特性を示す概略図である。
【
図5】
図5は、本開示の1つの実施態様に従うメモリクロスバーアレイの概略図を示す。
【
図6】
図6は、メモリクロスバーアレイの反復行列プログラミングスキームの書き込み動作を示す。
【
図7】
図7は、メモリクロスバーアレイの反復プログラミングスキームの読み取り動作を示す。
【
図8】
図8は、メモリクロスバーアレイによって実行される行列-ベクトル乗算の演算を示す。
【
図9】
図9は、本開示の1つの実施態様に従う、クロスバーアレイによる(M/L)プログラミングの順序を示す。
【
図10】
図10は、メモリクロスバーアレイにおいて実行される行列-ベクトル乗算を示す。
【
図12】
図12は、メモリクロスバーアレイによって行列-ベクトル乗算を実行する方法の方法工程を示すフローチャート図を示す。
【発明を実施するための形態】
【0008】
コグニティブコンピューティングは、膨大な量のデータから知能及びナレッジを導き出す有望な技術である。現在のコグニティブコンピュータは通常、コンピューティングユニットとメモリユニットとが分離されたフォン・ノイマン・アーキテクチャに基づく。コグニティブコンピューティングは本質的にデータ中心であり、膨大な量のデータを高速で行き来させる必要がある。フォン・ノイマン・アーキテクチャはそのようなタスクにはかなり非効率である故に、効率的なコグニティブコンピュータ、特にメモリ及びロジックが何らかの形で共存するアーキテクチャを構築する為には他のアーキテクチャが望まれることが益々明らかになってきている。
【0009】
メンコンピューティング(memcomputing)は、研究されている重要な非フォン・ノイマン・アプローチである。この新規なコンピューティングパラダイムにおける重要な要素は、高密度、低消費電力、可変状態、プログラム可能な且つ不揮発性のメモリデバイスである。
【0010】
基本的な計算プリミティブは、行列-ベクトル乗算である。このプリミティブは、幾つかの線形代数演算の基礎を形成し、科学及び工学において最も一般的に使用されている数学演算の1つである故に、特に興味深いものである。行列は通常、行列要素の2次元アレイによって表され、及びベクトルはベクトル要素の1次元アレイによって表される。行列はベクトルのアレイと考えられうる。従って、行列-ベクトル乗算は、行列-行列乗算に及びベクトル-ベクトル乗算に一般化されることができる。
【0011】
しかしながら、メモリデバイスのアレイにおいて正確な行列-ベクトル演算を効率的な様式で行う為には、多くの課題が残されている。
【0012】
従って、新しい且つ改良されたメンコンピューティングデバイス、特に行列-ベクトル乗算を実行することができるメンコンピューティングデバイス、に対するニーズがある。
【0013】
図1~
図12を参照すると、本開示の実施態様の幾つかの一般的な観点及び語が記載されている。
【0014】
本開示の実施態様に従うと、抵抗素子は、電気プログラミング信号を該抵抗素子に印加することによって電気抵抗が変化されることができる素子として定義されうる。該抵抗素子は特に、抵抗メモリ素子として具現化されうる。該電気プログラミング信号は、例えば、該抵抗メモリ素子を通じて流れる電流、又は該抵抗メモリ素子に印加される電圧でありうる。該電流若しくは電圧又はそれらの組み合わせは、例えば、パルスの形態で該抵抗メモリ素子に印加されうる。その結果、或る抵抗メモリ素子の該電気抵抗は、該抵抗メモリ素子を通じて流れる以前に流れていた電流の履歴若しくは該抵抗メモリ素子に印加されていた電気信号の履歴又はそれら履歴の組み合わせに依存する。
【0015】
抵抗メモリ素子は、電流又は電界の作用下でその抵抗値が変化する材料に生じる物理現象に基づく。該変化は通常、不揮発性で且つ可逆的である。金属酸化物からカルコゲナイド(chalcogenide)まで、幾つかのクラスの抵抗メモリ素子が知られている。典型的な抵抗メモリ素子は、金属/絶縁体/金属の構造であり、ここで、金属成分は電極として機能し、及び該絶縁体は抵抗スイッチング材料(例えば、カルコゲナイド)である。これらの抵抗メモリ素子は、消費電力、集積密度の可能性、保持力、及び耐久性の観点において良好な性能を示す。
【0016】
本開示の実施態様は、不正確な高速行列-ベクトル乗算を行う為の方法を提供する。この乗算の結果は、好ましくは、乗算タスクの為に高精度を必要としないアルゴリズムにおいて使用されうる。本開示の実施態様に従う乗算の結果の後処理に使用されることができるそのようなアルゴリズムは、例えば、Klavik等「Changing Computing Paradigms Towards Power Efficiency」、Proc.Royal Society A.,2014年によって開示されたアルゴリズムである。本開示の実施態様に従って実行される乗算は、高速、低電力であることができ、10000x10000以上の行列サイズに拡張可能でありうる。
【0017】
本開示の実施態様は、データが中央処理ユニット(CPU:central processing unit)とメモリとの間で往復しなければならない慣用的なフォン・ノイマン・アプローチと比較して、電力若しくは速度又はそれらの組み合わせの有意な利点をもたらしうる。
【0018】
行列-ベクトル乗算は、行列-行列乗算及びベクトル-ベクトル乗算に一般化されることができる為に、本開示の実施態様に従うデバイス及び方法はまた、行列-行列乗算及びベクトル-ベクトル乗算を実行する為に使用されることができる。
【0019】
図1は、行列とベクトルとの乗算を実行する為のデバイス100の簡略化された概略ブロック図である。デバイス100は、複数のプログラム可能な抵抗素子を有する抵抗メモリ10を備えている。その上、信号発生器11が備えられている。信号発生器11は、電気プログラミング信号を抵抗メモリ10の該抵抗素子に印加するように構成されている。信号発生器11は、行列とベクトルとの乗算が実行されることができるように、データ書き込み又はプログラミングの動作の間に抵抗メモリセルをプログラミングする為の回路を備えている。該行線及び列線はまた、ワード線及びビット線と表記されうる。信号発生器11は、入力として行列Aを受け取り及び行列-ベクトル乗算の為に該抵抗素子のコンダクタンス値をプログラムする為にプログラミング信号を該抵抗素子に印加するように構成されている。
【0020】
該コンダクタンス値は、該ベクトルと乗算されるべき行列の行列値を表す。
【0021】
加えて、デバイス100は、データ読み取り動作の間に該抵抗素子の抵抗値を読み出すように構成された読み出し回路12を備えている。デバイス100は、読み出された電圧をメモリクロスバーアレイの行に印加するように構成されている。該読み出された電圧は、該行列と乗算されるべきベクトルのベクトル要素を表す。該デバイスは、メモリアレイの列の電流値を読み出すように更に構成されている。該電流値は、該乗算の結果ベクトルのベクトル要素の結果値を表す。
【0022】
デバイス100は、信号発生器11及び読み出し回路12を制御するように構成された制御回路13を更に備えている。
【0023】
抵抗メモリ10は一般的に、上述された在りうる種類の抵抗メモリでありうる。特に、抵抗メモリ10は相変化メモリ(PCM:phase change memory)又は抵抗ランダムアクセスメモリ(RRAM:resistive random access memory)であってもよい。以下において、抵抗メモリ10がPCMとして具現化されると仮定する。従って、抵抗メモリ10は、抵抗メモリ素子として複数のPCMセルを備えている。メモリ10のPCMセルは、s=2又はs>2のプログラム可能な抵抗状態を備えていてもよく、後者の場合はマルチレベル動作を提供する。s個のプログラム可能な抵抗状態は、該セルのPCM材料内の非晶質相及び結晶質相の異なる相対的割合に対応する。これらの状態は、高抵抗の完全な非晶質RESET状態、低抵抗の完全結晶SET状態、及び非晶質PCM材料内の結晶相の大きさの増加に対応する多数の中間状態を包含しうる。s個のプログラム可能なセル状態は典型的には、読み出し回路12による読み取り検出の為に使用される抵抗メトリックの所定の基準値又は値の範囲の観点から定義される。
【0024】
行列-ベクトル乗算を実行する為に、該PCMセルは、一種の書き込み動作において、実施態様に従ってプログラムされる。より特には、信号発生器11は、結果として得られるプログラミング信号が、該ベクトルと乗算されるべき行列の行列要素を表す状態(コンダクタンス値)にセルを設定するように、列線及び行線を介して該セルに電圧を印加する。読み取り動作において、(低い)読み取り電圧が列線又は行線に印加される。次に、結果として得られる行線又は列線の電流値が読み取られ/測定されて、該結果であるベクトルを得る。
【0025】
図2は、本開示の実施態様に従う行列乗算の一例を示す。該行列乗算は、抵抗メモリクロスバーアレイにおけるオームの法則(Ohm’s law)及びキルヒホッフの法則(Kirchhoff’s law)を使用する。
【0026】
図示された例に従うと、サイズ3x3の行列Aは、ベクトルxと乗算され、そして、その結果が、積又は結果ベクトルbであるものとする:
【数1】
【0027】
従って、行列Aは、行列要素A11、A21及びA31から成る第1列、行列要素A12、A22及びA32から成る第2列、並びに行列要素A13、A23及びA33から成る第3列を含む。該ベクトルxは、ベクトル要素x1、x2及びx3を含む。
【0028】
サイズ3x3を有する行列Aのそのような乗算の為に、抵抗メモリ10は、対応するサイズ3x3のメモリクロスバーアレイ200を備えている。
【0029】
メモリクロスバーアレイ200は、3本の行線201、202及び203、並びに3本の列線204、205及び206を備えている。該3本の行線201、202及び203は、点線で示されている該3本の列線204、205及び206の上に配置されている。より特には、行線201、202及び203は第1のx-y面内に延在し、及び3つの列線は第2のx-y面内に延在し、ここで、該第1のx-y面は該第2のx-y面よりも垂直z方向に配置されている。
【0030】
該3つの行線201、202及び203並びに該3つの列線204、205及び206は、垂直方向の接合部210を介して互いに接続されている。接合部210は、行線201~行線203の上側交差点211aと列線204~列線206の下側交差点211bとの間で垂直z方向に延在している。
【0031】
各接合部210は、抵抗メモリ素子及びトランジスタの直列配置で構成されている。なお、図示を容易にする為に、
図2においてトランジスタは図示されていない。
【0032】
より特には、メモリクロスバーアレイ200は、PCMセルとして具現化された9個の抵抗メモリ素子を備えている。行線201は、抵抗メモリ素子R11、R12及びR13を備えており、及び行線202は、抵抗メモリ素子R21、R22及びR23を備えており、並びに行線203は、抵抗メモリ素子R31、R32、及びR33を備えている。
【0033】
上記行列の行列-ベクトル乗算を行う為に、信号発生器11は、抵抗メモリ素子にプログラミング信号、特に電流パルス、を印加し、そして、それによって、該行列-ベクトル乗算の為のコンダクタンス値をプログラムする。
【0034】
より特には、該抵抗メモリ素子の該コンダクタンス値は、該行列-ベクトル乗算の該行列の行列値を表す。従って、抵抗メモリ素子R11のコンダクタンスは行列値A11にプログラムされ、抵抗メモリ素子R12のコンダクタンスは行列値A12にプログラムされ、又はより一般的には抵抗メモリRijのコンダクタンスは対応する行列値Aijにプログラムされる。
【0035】
次に、読み出し回路12は、読み取り電圧を列線204、205及び206に印加する。より特には、読み出し回路12は、読み取り電圧X1を列線204に印加し、読み取り電圧X2を列線205に印加し、及び読み取り電圧X3を列線206に印加する。従って、該読み取り電圧は、行列-ベクトル乗算のベクトルのベクトル値を表す。
【0036】
その上、読み出し回路12は、行線201、202及び203の電流値を読み出す。一例として、読み出し回路12は、行線201から電流値b
1を読み出すが、この電流値は、次の3つの乗算の和、すなわち、
【数2】
である。
【0037】
従って、読み出し回路12は、行線202から電流値b2を読み出し、及び行線203から電流値b3を読み出す。該電流値は、積ベクトルbのベクトル要素の結果値を表す。
【0038】
対応する様式において、読み出し回路12は、行線201、202及び203に読み取り電圧を印加してもよく、並びに列線204、205及び206の電流値を読み出して、転置行列-ベクトル乗算を行ってもよい。
【0039】
図3は、PCMセル300によって実行されうるスカラー乗算の例示的な実施態様を示す。そのようなスカラー乗算は、本開示の実施態様に従って実行される行列-ベクトル乗算の基礎を形成する。
【数3】
であるとする。β
n及びγ
nは、[0,1]において均一に生成される数である。β
nは実効コンダクタンスG
nに対応し、及びγ
nは電圧V
nに対応する。PCMセル300における電流は電圧のわずかに非線形関数(slightly non-linear function of the voltage)である為に、アナログのスカラー乗算は「疑似」オームの法則(“pseudo” OHM’s law)、すなわち、
【数4】
によって表されうる。
【0040】
この式において、αは時間依存のコンダクタンス変動パラメータであり、及びfは関数、特にPCMセル300の電流-電圧特性に近似する多項式関数である。PCMセル300は、反復プログラム及び検証手順によって、実効コンダクタンスG
nにプログラムされうる。次に、読み出し回路12は、読み取り電圧V
nを印加し、そして、電流I
nを読み出しうる。最後に、電流I
nが逆変換されて、スカラー乗算の結果を表す値
【数5】
に近似する。
【0041】
好ましい実施態様に従うと、K個のメモリ素子/PCMセルにわたる結果の平均化が実行される。
【0042】
図4は、
図3のメモリセル300の材料成分の電流/電圧(従って、抵抗)特性を示す概略図である。実線は、完全結晶のSET状態(上の曲線)から始まる、PCM材料についての電圧に対する電流の変化、及びまた、完全非晶質のRESET状態(下の曲線)から始まる、PCM材料についての電圧に対する電流の変化を示す。これらの2つの曲線は、該結晶相と該非晶質相との間の抵抗率において大きい(典型的に、3桁)変化をすることを反映する。該非晶質相は、電界誘起である閾値スイッチング現象を伴う非線形特性を示す。或る閾値電圧V
THにおいて、この相は結晶性PCM材料に相当する非常に低い「オン状態」(ON-state)抵抗に切り替わる。セルプログラミング(書き込み)電圧は、示されているこの閾値電圧よりも上になるように選択される。
【0043】
図4からわかるように、読み取りモードにおける電流は、電圧のわずかに非線形関数である。
【0044】
図5は、本開示の1つの実施態様に従うメモリクロスバーアレイ500の概略図を示す。メモリクロスバーアレイ500は、複数の行線RL、複数の列線CL、並びにプログラム可能な抵抗素子Rとアクセス素子としてのトランジスタTとの直列配置を備えている複数の接合部30を備えている。トランジスタTは、特にMOSFETとして具現化されうる。
【0045】
メモリクロスバーアレイ500は、複数の垂直アクセス線(vertical access line)ALを更に備えており、ここで、該複数の垂直アクセス線ALの各々は、抵抗メモリ素子Rの夫々のアレイに接続されている。より特には、各々の垂直アクセス線ALは、対応する列線CLのアクセストランジスタTのゲートに接続されている。従って、該複数の垂直アクセス線ALのうちの1以上に適切な制御信号、言い換えれば選択信号、を提供することによって、夫々のアクセス線ALに接続されている全ての抵抗メモリ素子Rが同時にオン又はオフ、言い換えれば選択されること又は選択されないことができる。
【0046】
メモリクロスバーアレイ500は、書き込みアシストワイヤ40、及びスイッチング素子51の対応するアレイ50を更に備えている。スイッチング素子51は、トランジスタ、特にMOSFETトランジスタ、として具現化されうる。アレイ50は、書き込みアシストワイヤ40にアクセスする為の、言い換えれば、書き込みアシストワイヤ40をオンにする為の、アクセスワイヤ(access wire)52を更に備えている。より特には、アクセスワイヤ52は、トランジスタ51のゲートに接続されている。トランジスタ51のソース及びドレインは、書き込みアシストワイヤ40とメモリクロスバーアレイ500の列線CLとの間に配置されている。従って、書き込みアシストワイヤ40は、スイッチング素子/トランジスタ51を介して、複数の列線CLに接続可能である。より特には、アクセスワイヤ52に適切な制御信号、言い換えればセレクト信号、を提供することによって、トランジスタ51がスイッチオン/ターンオンされてもよく、従って、書き込みアシストワイヤ40が列線CLに電気的に接続されることができ、言い換えれば書き込みアシストワイヤ40がオンにされることができる。トランジスタ51がスイッチオフ/ターンオフされた場合に、書き込みアシストワイヤ40がまたターンオフされ、すなわち、列線CLに電気的に接続されない。書き込みアシストワイヤ40は、
図6及び
図7を参照してより詳細に説明される書き込み動作の間のプログラミング信号の為のシャントパスを提供する。
【0047】
図6及び
図7は、
図5のメモリクロスバーアレイ500の反復行列プログラミングを示す。
【0048】
図6は、プログラミング工程を示す。より特には、制御回路13は、メモリクロスバーアレイ500の例えば左列線CL 610を選択する為に選択信号を印加しうる。このことは、左アクセス線AL 620に選択信号Sを送ることによって行われることができる。
【0049】
次に、信号発生器11は、制御回路13の制御下で、複数の行線RLのうちの1以上にプログラミング信号PS、特には書き込みパルスの形態における書き込み電圧を印加することができる。
図6において、プログラミング信号PSとして、メモリクロスバーアレイ500の下側の行線RL 630に1つの書き込みパルスのみが印加されているが、一般的にプログラミング信号は、該複数の行線のうちの1つのサブセットに印加されてもよい。該プログラミング信号は、メモリクロスバーアレイ500でその後に実行される行列-ベクトル乗算の為に抵抗素子のコンダクタンス値をプログラムする為に印加される。
【0050】
実施態様に従うと、該書き込みパルスによって書き込まれるべき情報は、該書き込みパルスの振幅又は該書き込みパルスの長さでエンコードされうる。
【0051】
該書き込み動作の間、書き込みアシストワイヤ40は、スイッチングアレイ50によってオンにされている。より特には、制御信号/選択信号がアクセスワイヤ52に印加され、そしてそれによって、トランジスタ51のゲートに印加された。それによって、トランジスタ51がスイッチングされ、書き込みアシストワイヤ40が列線CL 610に電気的に接続された。結果として、プログラミング信号PSは、行線RL 630から抵抗素子R 641、トランジスタT 642、列線CL 610及びトランジスタ51を介して書き込みアシストワイヤ40に流れるプログラミング電流PCを生じる。従って、シャントパス70が、書き込み動作の間にプログラミング電流PCの為に提供される。
【0052】
図6に示されている書き込み動作は、単発プログラミング(single shot programming)又は反復プログラミングによって行うことができる。
【0053】
反復プログラミングで、最初の工程において、
図6に示されている書き込み動作が行われる。そして、次の工程において、該書き込み動作の結果が読み取り動作によって検証される。
【0054】
図7は、
図5のメモリクロスバーアレイ500についての反復プログラミングスキームのそのような読み取り動作を示す。該読み取り動作の場合に、制御回路13は、アクセス線AL 620に選択信号Sを印加する。次に、読み取り信号RS、特に読み取り電圧、が列線CL 610に印加される。結果として、読み取り電流I
読み取りが行線RLの積分回路60によって測定され得、及び左の列線CL 610の選択された3つの抵抗素子Rの抵抗値が決定されうる。書き込みアシストワイヤ40は、該読み取り動作の為にオフにされる。
【0055】
この繰り返し処理は、選択された抵抗素子Rについて所望の抵抗値が達成されるまで、所望に応じて又は必要に応じて繰り返されることができる。
【0056】
本開示の他の実施態様に従うと、該反復プログラミングはまた、例えば、抵抗メモリ素子のコンダクタンスの電圧依存性を利用しうる可変読み取り電圧で実行されうる。
【0057】
図8は、
図5のメモリクロスバーアレイ500によって実行される行列-ベクトル乗算の演算を示す図である。
【0058】
該行列-ベクトル乗算の場合、全てのアクセス線ALが選択されている。このことは、制御回路13によって、全てのアクセス線ALに選択信号Sを送信することによって実施されることができる。次に、該行列-ベクトル乗算は、読み取り信号RS、特に電圧パルス、を列線CLに並列に印加することによって実行されることができる。該計算の入力、この例において該行列-ベクトル乗算のベクトル値、は、該列線に印加される電圧パルスの振幅として、又は該電圧パルスの時間持続時間として、又は二値電圧パルスのシーケンスとしてエンコードされうる。該計算の結果は、積分ユニット60によって、読み取り電流I読み取り又は該読み取り電流I読み取りの積分を、固定された時間にわたり測定することによって得られる。
【0059】
書き込みアシストワイヤ40は、対応する読み取り動作の為にオフにされる。
【0060】
図9は、本開示の1つの実施態様に従う、メモリクロスバーアレイ900による(M/L)プログラミングの順序を示す。メモリクロスバーアレイ900は、M本の複数の行線RL、複数の列線CL、及びアクセス素子としてのプログラム可能な抵抗素子RとアクセストランジスタTとの直列配置を含む複数の接合部30を備えている。
【0061】
Mは整数であり、メモリクロスバーアレイ900の行線の総数を示す。メモリクロスバーアレイ900は、M/L個のセグメントに分割され、ここで、Lはまた整数であり、及びM/L個のセグメントの各セグメントは、L本の行線RLと割り当てられた書き込みアシストワイヤ40とを備えている。
図9の図示された例において、メモリクロスバーアレイ900は、N個のセグメントS1、S2、...、SNを含み、ここで、3個のセグメントS1、S2及びS3が詳細に示されている。N個のセグメントの各々は、割り当てられた書き込みアシストワイヤ40と、スイッチング素子/トランジスタ51及びアクセスワイヤ52を備えている対応するアレイ50とを有するL=3の行線RLを備えている。メモリクロスバーアレイ900は、対応する列線CLのアクセストランジスタTのゲートに接続された複数の垂直アクセス線ALを更に備えている。
【0062】
メモリクロスバーアレイ900は、書き込み動作の間に、複数の列線のうちの1つの列線CLにおいて少なくともM/L個の抵抗素子を並列にプログラムする為に使用されうる。言い換えれば、各セグメントの列線の少なくとも1つの抵抗素子が並列にプログラムされうる。
図9の例において、プログラミング信号PSが、セグメントS1、S2及びS3の下位の行線930に印加される。該プログラミングの為に、書き込みアシストワイヤ40がオンにされる。より特には、制御信号/選択信号がアクセスワイヤ52に印加され、そしてそれによって、トランジスタ51のゲートに印加される。それによって、トランジスタ51がスイッチングされ、そして、書き込みアシストワイヤ40が左列線CL 910に電気的に接続される。その上、制御回路13は、メモリクロスバーアレイ900の左列線CL 910を選択する為に選択信号を印加する。このことは、左アクセス線AL 920に選択信号Sを送信することによって実施されることができる。結果として、セグメントS1、S2及びS3の各々(及び、場合によっては更なるセグメントS4、...、SN)において、プログラミング信号PSは、行線930から、抵抗素子941、トランジスタ942、列線910及びトランジスタ51を介して書き込みアシストワイヤ40へ流れるところのプログラミング電流PCを生じる。従って、セグメントS1、S2、S3、...、SNの各々において、書き込み/プログラミング動作の間のプログラミング電流PCの為のシャントパス70が提供される。従って、メモリクロスバーアレイ900は、並列プログラミングを可能にする。
【0063】
実施態様に従うと、信号発生器13は、プログラミング信号/プログラミング電流が十分に低い場合に、セグメント毎に複数の抵抗素子を並行してプログラミングするように構成されうる。より特には、個々のシャントパス70は、セグメントの行の全ての抵抗素子の為の共通の電流パスとして機能し、従って、最大プログラミング電流は、セグメントの列線が運びうる最大電流によって制限される。しかしながら、M/L書き込みアシストワイヤ40の為に、夫々の列線のプログラミング電流は、セグメントの数だけ、すなわち係数L/Mだけ、減少する。言い換えれば、該複数のセグメントは、書き込みアシストワイヤ40によって、個々の列線のプログラミング電流をN個のセグメントS1、S2、S3、...、SNに分散する。
【0064】
図10は、
図9のメモリクロスバーアレイ900において実行される行列-ベクトル乗算を示す。
【0065】
該行列-ベクトル乗算の場合、全てのアクセス線ALが選択されている。このことは、制御回路13によって、全てのアクセス線ALに選択信号Sを送信することによって実施されることができる。次に、該行列-ベクトル乗算は、読み取り信号RS、特に電圧パルス、を列線CLに並列に印加することによって、O(1)の複雑さで実行されることができる。該計算の入力、この例において該行列-ベクトル乗算のベクトル値、は、該列線に印加される電圧パルスの振幅として、又は該電圧パルスの時間持続時間として、又は二値電圧パルスのシーケンスとしてエンコードされうる。該計算の結果は、積分ユニット60によって、読み取り電流I読み取り又は読み取り電流I読み取りの積分を、固定された時間にわたり測定することによって得られる。書き込みアシストワイヤ40は、対応する読み出し動作の為にオフにされる。実施態様に従うと、デバイスは、該行列-ベクトル乗算の為に複数の実行を行い、そして該複数の実行の結果値の平均化を実行しうる。
【0066】
実施態様に従うと、読み出し回路12は、メモリクロスバーアレイ900の列線CLに、読み取り信号RSとして正及び負の読み取り電圧を印加しうる。
【0067】
列線CLに読み取り電圧を印加する代わりに、読み出し回路12は、メモリクロスバーアレイ900の行線RLに読み取り電圧を実施態様に従って印加しうる。それによって、転置行列-ベクトル乗算がメモリクロスバーアレイ900によって実行されうる。そのような実施態様に従うと、該行列-ベクトル乗算の結果は、列線CLにおいて配置された積分ユニットによって、読み取り電流又は該読み取り電流の積分を、固定された時間にわたり測定することによって得られうる。
【0068】
図11は、例えば、半導体IC論理設計、シミュレーション、テスト、レイアウト及び製造において使用される例示的な設計フロー1100のブロック図である。設計フロー1100は、設計構造体又はデバイスを処理して、上述され及び例えば
図1~
図10において示された設計構造体若しくはデバイス又はそれらの組み合わせの論理的又は他の機能的に等価な表現を生成する為のプロセス、機械若しくは機構又はそれらの組み合わせを含む。設計フロー1100によって処理若しくは生成又は処理且つ生成された設計構造体は、データ処理システム上で実行又は他の方法で処理されたときに、ハードウェアコンポーネント、回路、デバイス又はシステムの論理的、構造的、機械的又は他の機能的に同等の表現を生成するデータ若しくは命令又はそれらの組み合わせを含むように機械可読伝送媒体又はストレージ媒体上にエンコードされてもよい。機械は、IC設計プロセスにおいて使用されるあらゆる機械、例えば、回路、コンポーネント、デバイス、又はシステムの設計、製造、又はシミュレーション、を包含するが、これらに限定されるものではない。例えば、機械は、リソグラフィ機械、マスクを生成する為の機械若しくはデバイス(例えば、電子ビーム描画デバイス)又はそれらの組み合わせ、設計構造体をシミュレーションする為のコンピュータ若しくはデバイス、製造若しくはテストプロセスで使用される任意のデバイス、又は設計構造体の機能的に等価な表現を任意の媒体にプログラミングする為の任意の機械(例えば、プログラム可能なゲートアレイをプログラミングする機械)、を包含しうる。
【0069】
設計フロー1100は、設計される表現のタイプに依存して変わりうる。例えば、特定用途向けIC(ASIC:application specific IC)を構築する為の設計フロー1100は、標準コンポーネントを設計する為の設計フロー1100と異なっていてもよく、又は、該設計をプログラム可能なアレイ、例えばAltera登録商標 Inc.又はXilinx登録商標 Inc.によって提供されるプログラム可能なゲートアレイ(PGA:programmable gate array)又はフィールドプログラム可能なゲートアレイ(FPGA:field programmable gate array)内にインスタンスを作成する為の設計フロー1100と異なりうる。
【0070】
図11は、複数のそのような設計構造体、例えば、好ましくは設計プロセス1110によって処理される入力設計構造体1120を包含する上記の複数のそのような設計構造体、を示す。設計構造体1120は、ハードウェアデバイスの論理的に等価な機能表現を生成する為に設計プロセス1110によって生成及び処理される論理シミュレーション設計構造体でありうる。設計構造体1120はまた、又は代替的に、設計プロセス1110によって処理される場合に、ハードウェアデバイスの物理的構造体の機能的表現を生成するデータ若しくはプログラム命令又はそれらの組み合わせ備えていてもよい。機能的若しくは構造的若しくはそれらの組み合わせ設計特徴を表すかどうかにかかわらず、設計構造体1120は、電子コンピュータ支援設計(ECAD)、例えば、コア開発者/設計者によって実装されるような電子コンピュータ支援設計、を使用して生成されうる。機械可読データ伝送媒体、ゲートアレイ、又はストレージ媒体上にエンコードされる場合に、設計構造体1120は、設計プロセス1110内の1以上のハードウェアモジュール若しくはソフトウェアモジュール又はそれらの組み合わせによってアクセス及び処理されて、電子コンポーネント、回路、電子若しくは論理モジュール、デバイス、デバイス又はシステム、例えば、
図1~
図10に示されている電子コンポーネント、回路、電子若しくは論理モジュール、デバイス、デバイス又はシステム、をシミュレーションしてもよく又は他の方法で機能的に表されてもよい。このように、設計構造体1120は、設計又はシミュレーションデータ処理システムによって処理される場合に、回路又はハードウェア論理設計の他のレベルを機能的にシミュレートするか又はさもなければ表すファイル又は他のデータ構造、例えば、人間若しくは機械又は人間且つ機械可読のソースコード、コンパイルされた構造及びコンピュータ実行可能コード構造を包含する上記のファイル又は他のデータ構造、を含みうる。そのようなデータ構造は、ハードウェア記述言語(HDL:hardware-description language)設計エンティティ、又は低レベルHDL設計言語(例えば、Verilog及びVHDL)、若しくは高レベル設計言語(例えば、C若しくはC++)又はそれら設計言語の組み合わせに準拠し若しくは互換性があり又は準拠し且つ互換性がある他のデータ構造を含みうる。
【0071】
設計プロセス1110は好ましくは、設計構造体、例えば設計構造体1120、を含みうるネットリスト1180を生成する為に、
図1~
図10において示されているコンポーネント、回路、デバイス又は論理構造の設計/シミュレーション機能等価物を合成、翻訳、又は他の方法で処理する為のハードウェアモジュール若しくはソフトウェアモジュール又はそれらの組み合わせのモジュールを使用し及び取り込む。ネットリスト1180は、例えば、集積回路設計における他の素子及び回路への接続を記述する、ワイヤ、ディスクリートコンポーネント、論理ゲート、制御回路、I/Oデバイス及びモデル等のリストを表すコンパイルされた又は他の方法で処理されたデータ構造を含みうる。ネットリスト1180は、該デバイスの設計仕様及びパラメータに依存してネットリスト1180が1回1以上再合成されるところの反復プロセスを使用して合成されうる。本明細書において記載されている他の設計構造体タイプと同様に、ネットリスト1180は、機械可読データストレージ媒体上に記憶されてもよく、又はプログラム可能なゲートアレイ内にプログラムされてもよい。該媒体は、不揮発性ストレージ媒体、例えば、磁気若しくは光ディスクドライブ、プログラム可能なゲートアレイ、コンパクトフラッシュ
登録商標、又は他のフラッシュメモリ、でありうる。加えて、又は代替的に、該媒体は、システム又はキャッシュメモリ、バッファ空間、又はデータパケットがインターネット又は他のネットワーキングに適した手段を介して送信され且つ中間的に記憶されうるところの電気的若しくは光学的に導電性のデバイス及び材料であってもよい。
【0072】
設計プロセス1110は、様々な入力データ構造体タイプ、例えば、ネットリスト1180を包含する上記の様々な入力データ構造体タイプ、を処理する為のハードウェアモジュール及びソフトウェアモジュールを含みうる。そのようなデータ構造体タイプは、例えば、ライブラリ要素1130内に存在してもよく、及び所与の製造技術(例えば、異なる技術ノード、32nm、45nm、90nm等)の為に、一般的に使用される素子、回路及びデバイスの1組、例えば、モデル、レイアウト及び記号表現を包含する上記の素子、回路及びデバイスの1組、を備えている。該データ構造体タイプは、設計仕様1140、特徴データ1150、検証データ1160、設計ルール1170、並びに入力テストパターン、出力テスト結果及び他のテスト情報を含みうるテストデータファイル1185を更に含みうる。設計プロセス1110は、標準機械設計プロセス、例えば、応力解析;熱解析;機械的事象シミュレーション;操作、例えば、鋳造、成形、及びダイプレス成形等の操作、の為のプロセスシミュレーション、を更に含みうる。機械設計の技術分野における通常の技術者は、本開示の範囲及び精神から逸脱すること無しに、設計プロセス1110において使用される在りうる機械設計ツール及びアプリケーションの範囲を理解することができる。設計プロセス1110は、標準的な回路設計プロセス、例えば、タイミング解析、検証、設計ルールチェック、配置及び経路操作、を実行する為のモジュールも含みうる。
【0073】
設計プロセス1110は、論理及び物理設計ツール、例えば、HDLコンパイラ及びシミュレーションモデル構築ツール、を使用し且つ取り込み、設計構造体1120を、任意の追加の機械設計又はデータ(該当する場合)と共に、図示されたサポートデータ構造の一部又は全てと共に処理して、第2の設計構造体1190を生成する。設計構造体1190は、機械デバイス及び構造のデータの交換の為に使用されるデータ形式(例えば、IGES、DXF、Parasolid XT、JT、DRG、又はそのような機械設計構造体を格納又はレンダリングする為の任意の他の適切な形式で記憶される情報)のストレージ媒体又はプログラム可能なゲートアレイ上に常駐する。設計構造体1120と同様に、設計構造体1190は好ましくは、伝送媒体又はデータストレージ媒体上に存在し且つECADシステムによって処理される場合に、
図1~
図10において示されている本開示の複数の実施態様のうちの1以上の論理的又はその他の機能的に等しい形態を生成する、1以上のファイル、データ構造又は他のコンピュータエンコードされたデータ若しくは命令を含む。1つの実施態様において、設計構造体1190は、
図1~
図10において示されているデバイスを機能的にシミュレートするコンパイルされた実行可能なHDLシミュレーションモデルを含みうる。
【0074】
設計構造体1190はまた、集積回路のレイアウトデータ若しくはシンボリックデータ形式の交換の為に使用されるデータ形式(例えば、GDSII(GDS2)、GL1、OASIS、マップファイル、又はそのような設計データ構造体を格納する為の任意の他の適切な形式で記憶された情報)を使用しうる。設計構造体1190は、情報、例えば、シンボルデータ、マップファイル、テストデータファイル、設計内容ファイル、製造データ、レイアウトパラメータ、ワイヤ、金属のレベル、ビア、形状、製造ラインを通る経路用データ、及び製造業者又は他の設計者/開発者が、上述され且つ
図1~
図10において示されているデバイス又は構造体を製造する為に必要とされる他の在りうるデータ、を含みうる。次に、設計構造体1190は段階1195に進んでもよく、該段階では、例えば、設計構造体1190はテープアウトに進む、製造の為にリリースされる、マスクハウスにリリースされる、別のデザインハウスに送られる、又は顧客に送り返される。
【0075】
図12は、行列とベクトルとの行列-ベクトル乗算を実行する為の方法の方法工程のフローチャート図を示す。該方法は、例えば、
図5のメモリクロスバーアレイ500又は
図9のメモリクロスバーアレイ900によって、実行されうる。
【0076】
該方法は、工程1210で開始する。
【0077】
工程1220では、制御回路13は、スイッチング素子の1以上のアレイによって、書き込み動作の間に1以上の書き込みアシストワイヤをオンにする。
【0078】
工程1230では、信号発生器11は、複数の行線のうちの1つのサブセットにプログラミング信号を印加して、該行列-ベクトル乗算の為の抵抗素子のコンダクタンス値をプログラミングする。
【0079】
工程1240では、制御回路13は、該1以上の書き込みアシストワイヤをオフにする。
【0080】
工程1250では、該方法は終了する。
【0081】
本発明の様々な実施態様の記載は、例示の目的の為に提示されたものであり、網羅的であること又は開示された実施態様に限定されることが意図されたものでない。多くの修正及び変形が、記載された実施態様の範囲及び精神から逸脱することなしに当業者に明らかであろう。本明細書において使用される語は、実施態様の原理、実用的な用途、又は市場において見られる技術に対する技術的改善を最もよく説明する為に、又は当業者が本明細書において開示されている実施態様を理解することができるようにする為に選択された。
【0082】
一般的に、或る実施態様の為に記載された修正は、適宜、別の実施態様に適用されうる。
【国際調査報告】