【発明の詳細な説明】
ゼロパワー高速構成メモリ
技術分野
この発明は、半導体記憶装置に関し、より特定的にはシリアル構成メモリに関
する。
背景技術
シリアル構成メモリとは、フィールドプログラマブルゲートアレイ(FPGA
)などの、プログラマブル論理デバイスを初期化するのに用いられるデバイスで
ある。FPGAなどのデバイスがパワーアップする場合、その論理ブロックの各
々は特定の論理演算に対して構成されていなければならず、そのプログラム可能
な相互接続は論理ブロック間でルーティングをもたらし、意図する論理機能を実
現するよう構成されていなければならない。構成情報はビットストリームの形態
を取り、ビットストリームはFPGAに供給され、デバイス内にストアされ、そ
こでビットがFPGA要素の論理およびルーティングを規定する。
シリアル構成メモリは構成ビットストリームを含むデバイスである。シリアル
構成メモリは、PROM(プログラム可能な読出専用メモリ)またはEEPRO
M(電気的に消去可能でプログラム可能な読出専用メモリ)などのメモリアレイ
と、アドレスカウンタと、プログラミングおよびリセット制御をもたらすサポー
ティング論理とからなる。アドレスカウンタはクロック入力ラインに結ばれ、ク
ロック信号の各立上がりエッジまたは各立下がりエッジにおいてインクリメント
される。カウンタ出力はメモリアレイの各ビットのアドレス指定をする役割を果
たし、ビットストリームを生じ、これはFPGAへシリアルに出力される。
今日のパーソナル電子デバイスの多くは独立した電源、すなわちバッテリによ
り電力が供給されるため、常に可能な限り電力を節約することに配慮がなされる
。電力消費を最小限にすることはこれらのデバイスの設計のあらゆる局面におい
て望まれることである。FPGAはラップトップコンピュータ、ノート型コンピ
ュ
ータおよびセルラー電話を含むこのようなデバイスの数多くに用途が見出される
。このため、電力消費を最小にするための改善がなされ得るところに構成メモリ
を利用する機会がある。
現在のFPGAのある局面はシステム内で再構成することが可能なことである
。そのため、システムが実行されている間にFPGAの機能を動的に変更するこ
とができる。この能力のため、システムがその動作を外部の条件に応じて適合さ
せる上でかなりの柔軟性がもたらされる。たとえば、デジタルフィルタとして構
成されるFPGAにおいて、そのフィルタパラメータを変更する必要が検出され
た際に、単に別のセットのフィルタ係数をロードインすることによって変更でき
る。しかしながら、リアルタイムでFPGAを再構成するには、システムの機能
性に有害な影響を与えることになる遅延を強いることなく新しい構成ビットスト
リームをダウンロードする能力が必要となる。このように、高速動作は構成メモ
リデバイスにおいて改善を要する別の領域である。
先行技術の構成メモリはその全内容をメモリの第1の場所から始まるビットス
トリームの形で出力する。しかしながら、FPGAのシステム内での再構成には
、各々がメモリ内でそれ自体の開始アドレスを有する、構成メモリに含まれてい
るであろう複数の構成ビットストリームのいずれにもアクセスすることが必要と
なる。このため、任意の開始アドレスが特定できる構成メモリを提供することが
望ましい。より一般的には、メモリデバイスに対し任意にアドレス指定する能力
を有することが望ましい。
発明の概要
この発明の構成メモリデバイスは、典型的には8ビットバイトまたは16ビッ
トワードである、Nビットデータとして編成されるメモリアレイを含む。外部ク
ロック信号が1/N分周回路に供給され、メモリアクセスを開始し、アクセスさ
れた記憶場所の内容を検知するトリガとなる。センス回路はアクセスされた記憶
場所のNビットのパラレル検知を行なう。好ましい実施例では、センス回路は検
知される各ビットに対して1つずつ、N個のセンスアンプを含む。
センス回路は記憶場所がアクセスされるとイネーブルされる。センス回路は、
メモリアドレスを復号化し、かつアドレス指定された記憶場所におけるNビット
を検知するのに要する時間にわたりイネーブルされたままである。センス回路は
一度にすべてのNビットに対して動作するため、センス時間は1つのセンスアン
プの速度に基づく。センス回路は、センスアンプがディスエーブルされてからデ
ータがデータレジスタにロードされるまでの間、検知されたデータを保持するラ
ッチを含む。
センス回路は、検知されたビットを受けるデータレジスタに結合される。ビッ
トはそこで、外部クロックと同期してシリアルにシフトアウトされる。この発明
によれば、検知されたビットは、前にストアされたデータの最後のビットがデー
タレジスタからシフトアウトされるとデータレジスタにロードされる。この結果
、検知されたデータの第1のビットは次のクロックでシフトアウトされる準備が
整っている。その間に、次の記憶場所がアクセスされ、そのビットが検知される
。このことから、外部クロックの周波数と等しい速度におけるビットのストリー
ムの連続した出力が生じる。さらに重要なことに、このアプローチでは、通常ク
ロック速度より遅いセンス回路の動作をビットストリーム出力を生成する動作か
ら切離すことになる。
デバイスはさらに、パワーアップシーケンスの間にメモリからの第1のデータ
でデータレジスタを予めロードするための手段を含む。このことでデータレジス
タが初期化され、次のデータがアクセスされ検知されている間にシフトアウトす
るデータが存在するようにする。好ましい実施例では、キャッシュレジスタがパ
ワーアップサイクルの間にメモリからのデータでロードされ、そこからデータは
後にデータレジスタにロードされる。
この発明の好ましい実施例では、アドレスカウンタは1/N分周回路に結合さ
れ、N番目のクロックごとにアドレスを供給する。アドレスカウンタはメモリに
アクセスするためにデコーダにアドレスを供給し、よってメモリを順次アクセス
する。好ましい実施例の変形では、アドレスカウンタを初期化する手段が含まれ
、メモリアレイの読出がアレイのどこからでも始められるようにする。この特徴
により、メモリアレイのどの場所から始まるビットストリームをも読出すことが
可能となる。別の変形では、アドレスカウンタは、外部から与えられるアドレス
を
受けるための手段で置き換えられる。このことで、外部デバイスが任意のシーケ
ンスの記憶場所からなるビットストリームを生成することができるようになる。
図面の簡単な説明
図1は、この発明によるメモリデバイスのシステムブロック図である。
図2Aから図2Cおよび図3は、この発明のデータキャッシュ機構を示す図で
ある。
図4は、この発明のメモリアレイを示すブロック図である。
図5は、この発明によるセンスアンプの概略図である。
図6は、この発明のセンスアンプの動作を示すタイミング図である。
図7は、センスアンプに関連して用いられる遅延回路を示す図である。
図8は、この発明の動作にかかわる主な信号のタイミング図である。
発明を実施するためのベストモード
図1を参照して、この発明によるシリアル構成メモリデバイス100は、典型
的に8ビットバイトのアレイに編成されるメモリアレイ20を含む。代わりに、
アレイに対して別のデータサイズを用いてもよく、たとえば16ビットワードを
用いてもよい。一般的に、この発明はNビットデータサイズで動作させることが
可能であり、ここでNは好ましくは2の累乗である。
アドレスカウンタ40はメモリアレイ20にアドレスを供給し、メモリアレイ
20はある記憶場所のアドレスをデコードするためのデコーダを含む。アドレス
カウンタ40は1/8分周回路60の出力によりクロックされる。1/8分周回
路は外部から与えられるクロック信号により駆動され、外部クロックの8番目の
サイクルごとにパルスを供給する。図1では、外部クロックにより与えられるク
ロックパルスの列および結果生じる、1/8分周回路により生成されるパルスが
示される。このように、アドレスのストリームがメモリアレイ20へ、8番目の
クロックごとに1つのアドレスが供給される速度において供給される。ここでも
、一般的なケースでは、回路はNビットデータサイズに対して1/N分周回路で
あり、アドレスはN番目のクロックごとに生成される。同様に1/8分周回路に
よ
り駆動される書込制御モジュール32は、読出および書込動作のためにメモリア
レイに信号を与える。さらに、書込制御モジュールは、アレイ20から読出され
たデータをデータレジスタ42にラッチするようデータレジスタコントローラ3
6に信号で知らせる。
メモリアレイ20は、パラレル8ビットデータ経路21を介してデータレジス
タ42へアクセスされたバイトのうちの8ビットを出力する。上述のように、デ
ータレジスタコントローラ36はデータレジスタがメモリ20から読出されたバ
イト(またはNビットデータ)をデータレジスタ42にパラレルロードし、かつ
シリアルデータ出力ラインからその8ビットをシリアルにシフトアウトしてメモ
リ20の内容をビットのストリームとして出力するようデータレジスタを動作さ
せる。シリアルデータ出力ラインはシリアルデータバッファ50に供給し、シリ
アルデータバッファ50は外部デバイス、たとえばFPGA(図示せず)などへ
のビットストリームを駆動する。また、シリアルデータバス50は、構成メモリ
デバイスのプログラミングを実現するためメモリアレイ20に書込むべきデータ
を受ける。書込制御モジュール32およびデータレジスタコントローラ36はと
もに、データをシリアルデータ入力からシリアルにシフトインしかつシフトイン
されたデータをメモリ20にパラレルに書込むようデータレジスタ42を動作さ
せる。
この発明の構成メモリデバイスはキャッシュレジスタ44をさらに含み、キャ
ッシュレジスタ44は、パワーアップシーケンスにおいて1バイトのデータを受
け、リセットシーケンスにおいてキャッシュレジスタ44に前にストアされたバ
イトをデータレジスタ42にロードするよう結合される。キャッシュレジスタコ
ントローラ34は以下に説明するように、キャッシュレジスタがこれらの動作を
行なうよう制御する。
次に図2Aを参照して、データレジスタ42およびキャッシュレジスタ44は
一連の1ビットステージ45を構成する。各ステージ45は1ビットレジスタ4
2nおよび1ビットキャッシュラッチ44nを含む。キャッシュラッチ44nは
その入力をレジスタ42nの出力から受ける。キャッシュロード制御信号により
キャッシュラッチがイネーブルされ、その入力ラインに現われるデータをストア
するようにさせる。キャッシュラッチの出力はスイッチ43の入力に供給される
。図2Bには、キャッシュラッチ44nの典型的な回路が示されており、これは
キャッシュロード信号により制御される伝送ゲートによりゲート制御されるラッ
チ回路アクセスを含む。
レジスタ42nはスイッチ41およびスイッチ43から入力を受け、プリセッ
ト制御入力を含む。スイッチ41はデータライン21nからのデータおよびシリ
アルデータインを受け、SER/PAR制御ラインにより切換えられる。スイッ
チ41の出力はレジスタ42nのデータインに供給される。スイッチ43はキャ
ッシュラッチ44nおよびデータライン21nからデータを受け、キャッシュリ
ード制御ラインにより切換えられる。スイッチ43の出力はレジスタ42nのプ
リセットインに供給される。レジスタ42nは外部クロック(図示せず)により
クロックされる。レジスタ42nの出力はシリアルデータアウトラインに供給さ
れ、上述のようにキャッシュラッチ44nに供給される。さらに、レジスタ42
nの出力はパストランジスタ48を介してデータライン21nにフィードバック
され、パストランジスタ48はWRT/RD制御ラインにより制御される。
プリセット制御入力はORゲート46の出力により駆動され、ORゲート46
は、ともにキャッシュコントローラ34から生じるピンリセット信号およびキャ
ッシュロード信号を受ける。プリセット制御により、レジスタ42nはデータイ
ン入力からではなくプリセットイン入力からデータをラッチインするようにされ
る。プリセット制御はレジスタ42nにラッチされるだけでなく、プリセットイ
ン入力を通過して直接レジスタの出力へ達する。この挙動の理由は以下の説明か
ら明らかになるであろう。レジスタ42nの典型的な回路は図2Cに示される。
データレジスタ42およびキャッシュレジスタ44(図1)は、図3に示され
る態様の8個の1ビットステージ45を互いに結合することによって構成される
。たとえば、データレジスタ42は1つのレジスタ42nのシリアルデータアウ
トをその後続のレジスタのシリアルデータインに結合することにより作られる。
メモリアレイ20(図1)からの8ビットデータ経路21はステージ45のデー
タライン21nを構成する。データレジスタ42のシリアルデータ出力(図1)
は最下位ビットを保持するステージのシリアルデータアウトラインから得られ、
デ
ータレジスタのシリアルデータ入力は最上位ビットを含むステージのシリアルイ
ンである。すべての制御ラインは各ステージに共通のものである。
データレジスタ42およびキャッシュレジスタ44はともに4つの根本的なタ
スクを行なう。すなわち、データレジスタはアクセスされた記憶場所からパラレ
ルにデータを受取り、データレジスタにストアされたデータはシリアル出力ライ
ン上にシリアルにシフトアウトされ、メモリアレイ20にストアすべきデータは
シリアル入力ラインからシリアルにシフトインされ、データは記憶場所に書込む
際にメモリアレイ20における8個のデータインバッファ(図示せず)にパラレ
ルに与えられる。
タスク1:アクセスされた記憶場所からデータをロードすることにはパラレル
読出動作が関係する。これは、データレジスタ42を構成する各々の1ビットス
テージ45のSER/PAR制御ラインおよびWRT/RDをローにアサートす
ることにより達成される。WRT/RDにおけるローはパストランジスタ48を
ターンオフすることとなり、そのためデータライン21nを介するメモリ20か
らの出力はスイッチ41およびスイッチ43に供給される。また、SER/PA
Rにおけるローにより、データライン21nがレジスタ42nのデータインに切
換えられる。ピンリセットおよびキャッシュロードラインはローであるため、レ
ジスタはそのデータをプリセットインではなくデータインからクロックする。
タスク2:データレジスタ42に含まれるデータのシリアルシフティングはW
RT/RD上に論理ローをアサートし、SER/PAR上にハイをアサートする
ことにより行なわれる。WRT/RDはパストランジスタ48をターンオフし、
シリアルデータアウトをデータライン21nから分離する。SER/PARは前
のレジスタ42nからのシリアルデータインを切換え、それによって外部クロッ
クが刻まれるごとに1つのレジスタ42nから次へとデータのシフト伝搬を実現
するようにする。
タスク3:シリアルデータ入力(図1)からのシリアルにシフトされた入力は
、データをデータレジスタにシリアルにクロックするためにSER/PAR上で
ハイがアサートされることを必要とする。WRT/RDはパストランジスタ48
をターンオフするようローにアサートされ、これによりレジスタ42nの出力が
デ
ータライン21nから分離される。
タスク4:データレジスタにシフトされるデータは、WRT/RD上でハイを
アサートすることによりメモリ20に書込まれる。書込むべきデータは各レジス
タ42nの出力に留まっているため、パスレジスタ48をターンオンすることで
データをメモリアレイ20のデータインバッファ(図示せず)にパラレルに与え
ることになる。
メモリデバイスのパワーアップ(パワーオンリセット)シーケンスおよび外部
から駆動されるリセットシーケンスの間、データおよびキャッシュレジスタ42
、44の動作は異なった態様で進行する。再び図2を参照して、パワーオンリセ
ット(POR)サイクルにおいて、キャッシュリードがローにアサートされ、キ
ャッシュロードはハイにアサートされる。キャッシュリードはデータライン21
nをレジスタ42nのプリセットインに切換える。キャッシュロードはプリセッ
トインをレジスタ42nにロードする。図2Cに関して上に述べたように、プリ
セットをアサートすることにより、プリセットインがレジスタ42nの出力に直
接結合される。さらに、キャッシュロードがハイにアサートされる場合では、プ
リセットインはキャッシュラッチ44nにもロードされる(図2Aおよび図2B
を参照)。このように、データの第1のバイト(通常は記憶場所0に含まれるバ
イト)がPORサイクルにおいて検知されると、この第1のバイトは8ビットデ
ータ経路21(図1)に与えられ、これは各データライン21nに供給され、そ
れぞれ、データレジスタ42およびキャッシュレジスタ44を構成するレジスタ
42nおよびキャッシュラッチ44nにロードされる。この動作は非同期であり
、キャッシュロードがローになると、データレジスタ42(キャッシュレジスタ
も同様)は第1のバイトを含む。第1のクロックがめぐってくる頃には、データ
レジスタ42には既にバイトが予めロードされており、データをシフトアウトし
始める準備が整っている。
外部から駆動されるリセットサイクルにおいては、第1のバイトを検知してデ
ータレジスタ42にロードするための十分な時間がない。典型的に、デバイスが
そのビットストリームを出力する準備が整うまでに、完了するのにマイクロ秒の
オーダを必要とするPORサイクルと比較してリセットサイクルはほんの数十ナ
ノ秒(たとえば20ナノ秒)で完了する。しかしながら、キャッシュレジスタ4
4はPORサイクルにおいて既に第1のバイトが予めロードされていることを思
い起こされたい。そのため、キャッシュリードがハイにアサートされ、キャッシ
ュラッチ44nの出力を受けるようプリセットインが切換えられるようにする。
(キャッシュコントローラ34を介する)ピンリセットがハイにアサートされ、
レジスタ42nがデータインからではなくプリセットインからその入力をロード
するようにする。記憶場所にアクセスしてデータレジスタ42にロードすべきバ
イトを検知する代わりに、第1のバイトはリセットサイクルにおいてキャッシュ
レジスタ44から直接ロードされるが、この動作はリセットサイクルを完了する
ための時間内に実行することができる。ここでも、これは非同期動作であり、ピ
ンリセット状態が解除されるとすぐに、データレジスタ42はキャッシュされた
バイトを保持し、クロックアウトされる準備が整っている。
次に図4を参照して、メモリアレイ20は、フローティングゲートデバイスの
アレイなど、複数のプログラマブルメモリセルを有するセルアレイ20’を含む
。Xデコーダ60およびYデコーダ62はアドレスを受取り、セルアレイ20’
内の記憶場所にアクセスするのに必要なデコード論理を供給する。Yデコーダの
出力はセンスアンプ回路66に供給され、センスアンプ回路66はパラレルに作
用する一連の8個のセンスアンプ(図5)を含む。この発明によれば、Yデコー
ダはアクセスされた記憶場所のNビット(たとえば8ビット)のすべてをセンス
アンプ回路66にパラレルに供給し、これによりビットをパラレルに検知する。
センス回路の出力はデータライン21を介してデータレジスタ42に結合される
。タイマ64はイネーブル信号SAENを与え、センス回路をターンオンしたり
ターンオフしたりし、1/8クロックにより駆動される。SER/PARはセン
スアンプ66から読出されたデータをデータレジスタ42にラッチする。
図5には、センスアンプ66を含むこのような増幅器200の各々が詳細に示
される。トランジスタT13−T17は差動増幅器ステージ230を構成する。
差動増幅器23のメモリセル側には、電圧基準セクション210と、トランジス
タT1およびT2を含む電流−電圧ステージとがある。同様に、基準セル側には
、電圧基準220と、トランジスタT7およびT8を含む電流−電圧ステージと
が
ある。差動増幅器の出力231(すなわち検知されたビット)はパストランジス
タ256を介して供給されラッチ250にストアされることになる。ラッチの出
力は伝送ゲート254を介してセンスアンプ出力ライン21nに結合され、伝送
ゲート254はSER/PARラインによりターンオンされる。
センスアンプ200は、この発明によれば、センスアンプイネーブル回路27
0をさらに含む。イネーブル回路は、図4に示されるタイマ64から得られるセ
ンスアンプイネーブル信号SAENにより駆動される。イネーブル回路はインバ
ータI1−I4の列を含み、これらには遅延キャパシタ対C1/C2およびC3
/C4が介在する。イネーブル回路270の出力271は(トランジスタ対25
2およびインバータ15から構成される)伝送ゲートを動作させ、伝送ゲートは
図5に示される態様でラッチ250にインラインで結合される。出力271はま
た、(インバータ15を介して)パストランジスタ256のゲートを駆動する。
イネーブル回路270に関して、SAEN信号はNANDゲートG1の入力B
およびインバータI1に直接供給される。インバータI1の出力はPチャネルト
ランジスタ246のゲートおよびインバータ242に供給される。インバータI
1はトランジスタ246およびインバータ242を同時にターンオンしたりター
ンオフしたりする。インバータI2の出力はNチャネルトランジスタT4および
T10を切換える。インバータI4の出力はNANDゲートG1の入力Aに供給
される。遅延キャパシタのため、入力Aに達する信号は入力Bにおける信号に対
して、遅延キャパシタの容量およびある程度インバータI1−I4の遅延に基づ
く時間だけ遅延される。
次に、センスアンプ200の動作を図5および図6のタイミングチャートに関
連して説明する。まず図5を参照して、SAENがパワーアップシーケンスにお
いてローからハイへ遷移すると、インバータI1から出る信号はローとなり、こ
れによりトランジスタ246がターンオンされ、VCCをトランジスタT1、T6
、T7およびT12に供給することとなる。また、インバータI1はインバータ
242を介してトランジスタT17をターンオンし、それによって接地への経路
をもたらすことより差動増幅器230をイネーブルする。それから短い遅延の後
に、インバータ12の出力はハイとなる。このことからトランジスタT4および
T1
0がターンオンされ、それによって電圧基準ステージ210、220がターンオ
ンされる。このとき、センスアンプのためのパワーアップシーケンスは完了する
。このパワーアップシーケンスのおかげで、センスアンプの電力が供給されてい
ない状態から電力が供給された状態への確実な切換が保証され、センスアンプ出
力21において現われ得るいかなる過渡現象をも避けることができる。
次に、図6に示されるパワーアップにおけるNANDゲートG1の入力Aおよ
びBにおける入力信号のタイミングを参照されたい。時刻t0の前、t0の後の時
間Δtにわたって、NANDゲートG1は、AおよびBがともにローであるため
、ハイである。このため、ラッチ250は伝送ゲート252がオンであるおかげ
でその状態を保つことができる。同時に、ラッチ250は、パストランジスタ2
56がオフであるため、差動増幅器の出力231から分離されている。遅延キャ
パシタC1−C4のため、入力Aにおける信号は入力Bにおける信号の後に届き
、このためゲートG1は、SAENがハイになってからΔtユニット後の、時刻
t1までハイのままである。t1において、ゲートG1はローとなり、これにより
伝送ゲート252はターンオフされ、そこでラッチがクリアされディスエーブル
される。また、パストランジスタ256がターンオンされ、これにより差動増幅
器230の出力がラッチに接続される。遅延経路により、ラッチの状態(よって
前に検知されたデータ)がセンスアンプに完全に電力が供給されるまで保たれる
ことが確実となる。
続いて、SAENがハイからローへ遷移する際にセンスアンプがそのパワーダ
ウンシーケンスを開始する場合を考慮されたい。再び図5を参照して、インバー
タI1の出力はハイとなり、これによりトランジスタ246がターンオフされ、
そこでトランジスタT1、T6、T7およびT12からVCCが除かれる。さらに
、トランジスタT17は(インバータ242を介して)ターンオフされ、これに
より差動増幅器230がディスエーブルされる。インバータ12の出力は次にロ
ーとなり、これによりトランジスタT4およびT10がターンオフされ、電圧基
準ステージ210、220の電源が切られる。このとき、センスアンプのための
パワーダウンシーケンスが完了する。
図6を参照して、時刻t2において、NANDゲートG1に直接結合されるB
入力における信号はSAENに遅れをとることなく後に続く。このことで、G1
はSAENがローになるとすぐハイに遷移することになる。差動増幅器出力23
1は、伝送ゲートがターンオンするのでラッチ250にラッチされる。同時に、
パストランジスタ256はターンオフされ、センスアンプ回路が上述のようにパ
ワーダウンされつつあるため、ラッチ250をセンスアンプ回路の残りの部分か
ら分離されるようにする。このように、検知されたデータはセンスアンプのパワ
ーダウンが完了する前に保存される。さらに、センスアンプ出力231をラッチ
から切離すことにより、パワーダウンシーケンスの間に生じ得るいかなる過渡現
象もラッチの状態を崩壊させることがない。
次に、図4に示したタイミング回路64のさらなる詳細に関して図7を参照さ
れたい。SAEN信号は図7に示される回路からNORゲート303の出力とし
て生じる。NANDゲート301はイネーブル信号ENがハイとなるとタイミン
グ回路をイネーブルする。NANDゲート301において受取られた入来1/8
クロック信号はデコーダ遅延回路302によって時間Δtaだけ遅延される。デ
コーダ遅延302は、センスアンプ200が実際にイネーブルされる前に、アド
レスレジスタ40(図1)をインクリメントし、かつアドレスデコーダ60、6
2(図4)が記憶場所にアクセスするのに十分な時間遅延をもたらす。インバー
タチェーン306により、1/8クロックのパルス幅が短すぎる場合に、パスト
ランジスタ310をバイアスするのを遅延することにより、次のアドレスをイン
クリメントしデコードすることができる最小の遅延が確実となる。
遅延Δtaの後、1/8クロックによりNORゲート303の出力(SAEN
)がハイとなり、センスアンプ200がターンオンされる。センス遅延回路30
4は1/8クロックを遅延して、SAENパルスが、センスアンプがメモリセル
の状態を検知するのに十分な時間Δtsにわたってアサートされたままであるこ
とを確実にする。
1/8クロックとSEANパルスとの相対的なタイミングは図7に示される。
時刻t0においてクロックが到達し、回路302によって時間Δt1の間遅延され
る。時刻t1において、SEANは時間Δtsの間ハイとなり、センスアンプ20
0をイネーブルする。時刻t2において、SAENはローとなり、これによりセ
ンスアンプをターンオフする。
次に、シリアル構成メモリの動作を図8のタイミングチャートに関連して説明
する。チャートに示されるように、アドレスは(図1の、1/8クロック60を
介して)8番目のクロックごとに生成される。このように、あるクロック(クロ
ック1と称する)において、アドレス遷移が開始される。上に述べたように、ク
ロック1から少しして(図7、Δta)SAENはタイマ64を介してハイにア
サートされ、センスアンプ回路66をターンオンする。SAENは、8ビットの
アドレス指定された記憶場所が検知されるのに十分長い時間(図7、Δts)に
わたってハイとなる。SAENは次にローとなり、検知された8ビットはセンス
アップラッチ250の内部に保持され、保持されたデータは図8で内部データと
して示される。
その間、前に読出された記憶場所Dn-1からのデータビットはデータレジスタ
42からシフトアウトされ、これは図8において外部データとして示される。実
際に、クロック0においてDn-1のビット1がシフトアウトされる。データがデ
ータレジスタ42からシフトアウトされる時間のほとんどの間、SER/PAR
はハイであることに気付き、このことが各クロックごとのストアされたビットの
右シフトを実現することを図2Aおよび図3から思い起こされたい。
クロック1−7に対し、Dn-1のビット2−8はデータレジスタからシフトア
ウトされる。クロック7においてDn-1のビット8がシフトアウトされる。また
、クロック7においてSER/PARはクロック8にまで延長される時間、ロー
にアサートされる。再び図2Aおよび図3を参照して、SER/PAR上でのロ
ーにより、スイッチ41がデータライン21nからの検知されたデータをレジス
タラッチ42nにロードすることになる。図8に示される場合では、クロック8
において、データはDnである。このため、クロック8が巡ってくると、データ
レジスタからシフトアウトされる次のビットはDnの第1のビットであり、これ
はクロック1−7の間(Dn-1がシフトアウトされている間)に読出されセンス
アンプ200のラッチ250にストアされた記憶場所である。
クロック1’−7’の間、Dnからなるビットはデータレジスタからシフトア
ウトされる。タイミングチャートに示されるように、プロセスは繰返される。次
のアドレスAn+1はクロック1’において与えられ、センスアンプはターンオン
されてDn+1の8ビットを読出し、これはセンスアンプがターンオフされる直前
にラッチ250にラッチされる。Dn+1ビットはクロック7’までラッチ250
内に留まり、クロック7’においてDnのビット8がシフトアウトされ、Dn+1ビ
ットは(ローにアサートされるSER/PARを介して)データレジスタにロー
ドされ、そのためクロック8’においてデータレジスタ42からシフトアウトさ
れる次のビットはDn+1の第1のビットである。
注目するに値するいくつかの点は以下のとおりである。すなわち、第1に、8
個のセンスアンプ200の各々は8番目のクロックごとにターンオンされ、アド
レスをデコードしビットを検知するのに十分な時間しかオンのままでいない。タ
イミングチャートに示されるように、このことから、前に読出されたバイトをシ
フトアウトするのに必要である8クロックの間のほとんどの時間はセンスアンプ
をターンオフすることができる。このことで、センスアンプが引出す定常電流を
大幅に低減でき、これは電力消費のかなりの削減となる。
第2に、結果生じるビットストリーム出力は外部クロックと同期する。より重
要なのは、ビットストリームの出力速度がセンスアンプの動作速度とは無関係で
あることである。これはこの発明において用いられるパイプライン処理技術によ
るものである。タイミングチャートに示されるように、どの一時点においても読
出される記憶場所は常にビットが出力されている記憶場所の1つ先の場所である
。記憶場所は常に、前に「フェッチされた」場所が出力されている間に「予めフ
ェッチされる」。読出動作とビットストリーム出力動作とのこうした重なり合い
により、ビットストリーム速度がセンスアンプの速度から切離される。このよう
に、先行技術の設計のようにビットストリームの速度がセンスアンプの速度によ
り制限されることは、もはやない。むしろ、ビット速度は外部クロック周波数の
みの関数である。
第3に、このアーキテクチャは容易に8ビットデータより大きいデータサイズ
にスケールアップすることができる。たとえば、16ビットのデータ経路を単に
さらなるセンスアンプを設けることにより提供することができる。相対的なタイ
ミングは図8に示されるものから変わることはない。このように、センス時間が
8ビットをシリアルに出力するのに要する時間に近づくと考えられるより高いク
ロック周波数において、データサイズを16ビットに拡張することはデータを検
知できる時間のより幅の広いウィンドウをもたらすことになる。
図1にはまた、この発明の実施例の変形が示される。この変形では、アドレス
カウンタ40は、外部から初期アドレスを受けるための仮想線で示される入力を
含む。このことで、アドレスカウンタを記憶場所0以外の記憶場所に予め設定し
、それによりビットストリームがメモリアレイ20のどこから始まってもよいよ
うにすることができる。これは、複数の構成ビットストリームが構成メモリにス
トアされていてもよく、そのためどの構成も実行時においてFPGAに送ること
ができるようにする再構成可能なFPGAにおいて有効である。
─────────────────────────────────────────────────────
フロントページの続き
(72)発明者 ペイン,ジェイムズ・イー
アメリカ合衆国、95005 カリフォルニア
州、ボールダー・クリーク、クロウズ・ネ
スト・ドライブ、214
(72)発明者 ハンゾー,ニアンラムチン
アメリカ合衆国、95129 カリフォルニア
州、サン・ノゼ、グルーウェル・プレイ
ス、1079