(57)【特許請求の範囲】
【請求項１】
少なくとも１つの記憶場所にベクトルを記憶させるメモリのメモリ構造であって、
前記メモリは、並列に配置された１〜Ｍ（Ｍは２以上の自然数）のメモリブロックに分割され、
前記メモリの記憶場所は、前記ベクトルの長さに応じて、各々のメモリブロックに前記ベクトルの一部が配置されるように、当該一方の端部に配置されたメモリブロックから他方の端部に配置されているメモリブロックに向けて形成され、
前記メモリブロックは、前記ベクトルを構成する情報の連続順が分断しないように当該情報を当該メモリブロックに入力する入力バッファを有し、
メモリブロックの一方の端部に配置されているメモリブロックに前記ベクトルの始点が配置され、当該一方の端部に配置されたメモリブロックから他方の端部に配置されているメモリブロックに向けて、前記ベクトルの長さに応じて、各メモリブロックに前記ベクトルの一部が配置され、
前記ベクトルのアドレス指定が、前記一方の端部に配置されたメモリブロックに行なわれ、
前記メモリの記憶場所は、前記一方の端部に配置されたメモリブロックから他方の端部に配置されているメモリブロックに向けて、前記ベクトルの長さに応じた長さとなるように拡張可能であること、
を特徴とするメモリ構造。
【請求項２】
請求項１に記載のメモリ構造であって、
前記入力バッファは、シフトレジスタと同様なデータの直列入力を行い、
前記メモリブロックのメモリフィールドは、前記入力バッファからの情報が直列的または並列的に入力されるように構成されていて、
各メモリブロックには制御ロジックが配置され、
前記制御ロジックは、入力バッファを介しての前記メモリフィールドへの情報の入力を制御し、
前記各メモリブロックは、入力バッファを介して互いにカスケード結合され、これにより、情報を異なるメモリブロックの幾つかの入力バッファを介して直列的に次々と供給でき、各メモリブロックの制御ロジックは、それ自体のメモリブロックが情報で満たされるときに、次のメモリブロックの制御ロジックに通報するように配置されており、これにより次のメモリブロックの制御ロジックが当該メモリブロックのメモリフィールドに情報の書込みを行なうことができること
を特徴とするメモリ構造。
【請求項３】
請求項２に記載のメモリ構造であって、
前記メモリブロックは、
前記メモリに記憶されているベクトルが、該ベクトルを構成する情報の連続順が分断しないで出力されるための、シフトレジスタの機能を有する出力バッファを備えること
を特徴とするメモリ構造。
【請求項４】
請求項３に記載のメモリ構造であって、
前記出力バッファは、シフトレジスタと同様、前記メモリフィールドに記憶されたデータの直列的出力を行い、
前記各メモリブロックの制御ロジックは、前記出力バッファを介してメモリフィールドの情報の出力を制御し、かつ、それ自体のメモリブロックの情報が空になると次のメモリブロックの制御ロジックに通報するように配置され、これにより、該次のメモリブロックのメモリフィールドから情報を読取る処理を行うことができること
を特徴とするメモリ構造。
【請求項５】
請求項３〜４のいずれか一項に記載のメモリ構造であって、
前記メモリブロックのメモリフィールドと前記入力バッファとの間の転送は、該メモリブロックにある制御ロジックにより並列的に行なわれ、
前記メモリブロックのメモリフィールドと前記出力バッファとの間の転送は、該メモリブロックにある制御ロジックにより並列的に行なわれること
を特徴とするメモリ構造。
【請求項６】
請求項３〜５のいずれか一項に記載のメモリ構造であって、
前記入力バッファは、前記情報が入力中に、異なるメモリブロック間でいかなるハンドシェーク作動もなく、異なるメモリブロックの入力バッファに連続的に該情報を転送されるように配置され、
前記出力バッファは、前記情報が出力中に、異なるメモリブロック間でいかなるハンドシェーク作動もなく、異なるメモリブロックの出力バッファに連続的に転送されるように配置されていること
を特徴とするメモリ構造。
【請求項７】
請求項３〜６のいずれか一項に記載のメモリ構造であって、
前記各メモリブロックの入力バッファは、隣接するメモリブロックの入力バッファと出力バッファとは、互いに並列に配置されかつ互いに独立的に制御でき、前記各メモリブロックの出力バッファは、隣接するメモリブロックの出力バッファと互いに並列に配置されかつ互いに独立的に制御でき、これにより、メモリの記憶場所への情報の入力と、該記憶場所からの情報の出力とを略同じタイミングに行なうことができること
を特徴とするメモリ構造。
【請求項８】
請求項３〜７のいずれか一項に記載のメモリ構造であって、
前記各メモリブロックの出力バッファは、
前記メモリフィールドからのデータを受け付けて記憶する中間バッファと、
前記中間バッファから転送されたデータを受け付け、該受け付けたデータを隣接するメモリブロックの出力バッファに出力するシフトレジスタと、
選択的なクロックパルス数により、前記メモリフィールドから前記中間バッファへの書込み期間に対する、前記中間バッファからシフトレジスタへの読取り期間の位相シフトを行なう手段と、を有すること
を特徴とするメモリ構造。
【請求項９】
請求項８に記載のメモリ構造であって、
前記位相シフト手段は、所望の位相遅延に等しい遅延をもつ調節可能な遅延回路を有することを特徴とするメモリ構造。
【請求項１０】
請求項２〜９のいずれか一項に記載のメモリ構造であって、
前記各メモリブロックは、
前記メモリフィールドからの情報を受け付けて記憶する処理バッファと、
前記処理バッファに記憶された情報に所定の処理を行う信号処理ユニットと、を備え、
前記各メモリブロックの信号処理ユニットは、自身と異なるメモリブロックの信号処理ユニットが行う処理と並列的に、前記メモリフィールドから読み出した情報を処理することが可能に構成されていること
を特徴とするメモリ構造。
【請求項１１】
請求項１０に記載のメモリ構造であって、
前記信号処理ユニットが処理した情報は、処理後にメモリブロックのメモリフィールドに再記憶させることができること
を特徴とするメモリ構造。
【請求項１２】
請求項１０または１１に記載のメモリ構造であって、
前記信号処理ユニットが処理した情報は、メモリブロックからの情報と結果とを組み合わせる結果ユニットに転送できること
を特徴とするメモリ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、請求の範囲第１項の前提部に記載の形式のメモリ構造に関する。
【背景技術】
【０００２】
メモリの開発は、コンピュータプロセッサの開発と同時に行なわれている。このことは、プロセッサの開発がメモリの開発を案内してきたといえる。従って、メモリの情報は、一定数のビットからなるビット群（以下、バイトと呼ぶ）に任意に分割され、殆どの場合、前に選択された情報とは独立してアドレスされる。このため、メモリへの情報の書込みまたは読取りを行なうには、アドレスデコーダは、或るアクセス時間内にメモリ内の任意位置に到達できなくてはならない。データ転送速度はアクセス時間に反比例する。アクセス時間は、本来的に、メモリに使用される製造技術の種類に基づいて定まる。回路のサイズおよび複雑さを最小にするため、ＶＬＳＩ技術（ＶＬＳＩ＝Ｖery Ｌarge Ｓcale Ｉntegration、大規模集積回路）が使用されかつ努力がなされている。所与の技術にとって、メモリのサイズは、信号の伝播速度により常に制限される。同時に、メモリが増大するとアドレスデコーダの複雑さも増大するため、従来技術では、大きなメモリ領域は長いアクセス時間を伴うという関係がある。データ処理速度に対する要望は常に増大している。アドレスデコーダの複雑さが増大しかつ伝播速度が一定であるため、全記憶スペース、すなわち情報が記憶されるアドレス指定可能表面は、コンピュータ速度の増大につれて常に減少する。
【０００３】
遠隔通信、レーダ、コンピュータ用大メモリ等の近年非常に重要になっている多くの使用分野では、情報は、バイトの形態ではなく、ベクトルと呼ばれるバイト列として取り扱われる。現代のデジタルホンシステムおよびデータ通信システムでは、情報のパケット（ＡＴＭ）が使用されている。レーダでは、情報はパルスの形態をなしている。デジタル化の後は、パルスは、出発点と長さとにより定義される大きなベクトルであると考えられる。
【０００４】
多くの用途では、連結バイトの大きなブロックが同じ態様（例えば、ワードプロセッサではテキストのブロック）で取り扱われる。他の例は、コンピュータのスワップメモリである。これらでは、一般に、全体として大量の情報（ベクトル）が取り扱われ、バイトレベルでのアドレス指定は使用されていない。
【発明の開示】
【０００５】
発明の目的本発明の目的は、ベクトルの記憶ができるメモリ構造を作ることにある。
【０００６】
本発明の他の目的は、ベクトルの読取りおよび／または書込みを行なうため、記憶場所への高速かつ連続アクセスが可能なメモリ構造を作ることにある。
【０００７】
本発明の他の目的は、ベクトルの読取りが行なわれているのと同時に、およびベクトルの読取りとは独立して、ベクトルの書込みが行なえるメモリ構造を作ることにある。
【０００８】
本発明の他の目的は、ベクトルの読取りと殆ど同時にベクトルの書込みが行なえるメモリ構造を作ることにある。
【０００９】
本発明の他の目的は、書込まれたデータの取出し時間を、クロック期間内に確実に制御できるメモリ構造を作ることにある。
【００１０】
本発明の他の目的は、コンピュータの現在のメモリ構造形式の補足物として使用できるメモリ構造を作ることにある。
【００１１】
本発明の他の目的は、記憶されたベクトルを、複数のベクトル記憶場所により並列処理して、処理されたベクトルを再位置決めし、または処理結果を取り出すことができるメモリ構造を作ることにある。
発明の簡単な要約
上記目的は、請求の範囲第１項の特徴部に記載のメモリ構造により達成される。本発明の他の特徴および他の長所は、他の請求の範囲の記載に示されている。
【００１２】
本発明によれば、構成(configuration)後のメモリの各記憶場所が、大きなベクトルの長さに適合した長さを有し、かつ情報の入力から延び、そして、メモリ内に深く入るように並列に配置され、これにより各ベクトルは、メモリの入力によりベクトルの始点をもつ連続順で、非分割記憶されるように配置され、これにより、アドレス指定がメモリへの入力に行なわれるように配置されている。メモリの記憶場所に中断されない順序で情報を入力するための、シフトレジスタのように機能する手段が設けられている。
【００１３】
メモリは、好ましくは横方向に分割されてメモリブロックを形成し、これにより、全ての記憶場所の各々が各メモリブロックの一部を有する。メモリの記憶場所が、１つ以上のメモリブロックを一緒に結合することにより拡大できる。各メモリブロックは、
シフトレジスタのように機能する手段としての、
シフトレジスタと同様なデータの直列入力をもつ入力バッファと、
記憶場所としての、
入力バッファからの情報が連続的に入力される多数のデータメモリフィールドとからなる。
【００１４】
この点において、制御ロジックが各メモリブロックに配置され、制御ロジックは、入力バッファを介してのメモリフィールドへの情報の入力を制御し、これにより、メモリブロックは、各々がそなえる入力バッファを介して互いにカスケード結合される。これにより、情報を、異なるメモリブロックの多数のバッファを介して直列的にかつ段階的に供給できる。各メモリブロックの制御ロジックは、それ自体のメモリブロックが情報で満たされるか、これらの全ての情報が読取られるときに、次のメモリブロックの制御ロジックに通報するように配置されており、これにより次のメモリブロックの制御ロジックが当該メモリブロックへの情報の書込みの仕事を行なうことができる。メモリの記憶場所からの非分割順序(undivided order)での情報の出力のための、シフトレジスタのように機能する手段を設けることができる。また、異なるメモリブロックに並列的に記憶されたデータの処理手段を設けることもできる。
本発明の長所
本発明によるメモリ構造は、連続的にかつ極めて高速に情報のデータ転送が行なえる、大きくかつ拡大可能な記憶スペースを設けることができる。ベクトル用記憶スペース、従ってメモリサイズの拡大は、外部から見たメモリとのインターフェースが不変であるので、データ転送速度に影響を与えることなく行なうことができる。
【００１５】
本発明によるメモリ構造では、現在の３０〜１００メガバイト／秒に匹敵する約0.5〜１ギガバイト／秒で連続データ転送を行なうことができる。これは、同じ基本技術を使用したものよりも１０倍速いことを意味する。これらのメモリ構造は、使用される技術により左右されるものではなく、任意の記憶技術（ＲＡＭ、磁気メモリ、光メモリ等）に使用できる。
実施例の説明
定義
記憶情報：  記憶情報とは、外部から見て、各々が連続的にかつ非分割の形態で処理される複数のベクトルをいう。
【００１６】
ベクトル：  一つのかたまりとして処理されるべき情報の全連続量をいう。ベクトルは、出発点又は識別情報（identity）および長さの補助により、外部から定義される。
【００１７】
バイト群：  メモリフィールドのサイズに適合するベクトルの一部をいう。ベクトルは、バイト群の合計として説明できる。
【００１８】
メモリ構造：  第２図のシステム全体をいう。メモリ構造は、１つ以上のメモリブロックと、コンバータユニット５、６と、制御ロジック４とからなる。
【００１９】
メモリブロック：  最も近くのメモリ構造とのみ通信する明確な機能をもつユニットをいう（第２図参照）。メモリ構造は、新しいメモリブロックの全数に従って常に拡大される。
【００２０】
記憶場所： メモリ構造の全メモリ領域の一部（構成後に、現在のベクトルの長さに適合される）をいう。各記憶場所は、メモリ構造内部で、メモリブロック＃１から分配されている（第１図参照）。
【００２１】
メモリプレーン：  構成後に或るベクトル（識別情報）に割り当てられるメモリブロックの一部をいう。
【００２２】
メモリフィールド：  一つのかたまりとして処理されるべきメモリプレーンの一部をいう。メモリフィールドのサイズは、入力／出力バッファのサイズに等しい。
図面の説明
第１図は、互いにカスケード結合された多数のメモリブロック＃１、＃２・・・＃Ｍを示す。各メモリブロックは、情報部１Ｉ、２Ｉ・・・ＭＩと、入力バッファ１ＩＢ、２ＩＢ・・・ＭＩＢと、出力バッファ１ＵＢ、２ＵＢ・・・ＭＵＢと、制御ロジック１Ｓ、２Ｓ・・・ＭＳとを有している。各メモリブロックは別々のチップに設けることができ、選択した個数のチップを互いに一体接続して、選択した大きさのメモリを形成することができる。また、１つのチップに幾つかのメモリブロックを設けて、幾つかの多ブロックチップを一体にカスケード結合することもできる。メモリ内の各記憶場所は、大きなベクトルの長さに適合する長さを有する。ブロックは、並列に配置され、これにより、各ベクトルは、入力バッファを介してメモリの入力／出力にベクトルの始点を持つ、ベクトルを構成する情報の連続順が非分割となるように記憶され、かつ同様に、その必要がある場合には出力バッファを介して連続順に出力されるように配置されている（第７図の実施例を参照）。アドレス指定は、メモリの入力／出力に対して行なわれる。
【００２３】
第２図に示す実施例では、メモリ構造は、カスケード結合された多数のユニットすなわちメモリブロック＃１〜＃Ｍと、制御ロジック４と、適当なコンバータユニット５、６とを有する。ここに示す各メモリブロックは、互いに前後に位置する幾つかのメモリプレーン＃１Ｉ−＃１ＮおよびＭ１−＃ＭＮを有し、各メモリプレーンは多数のメモリフィールドＦ１〜ＦＰを有する。ここでの説明で留意すべきは、メモリ内の特定メモリフィールドは、どのメモリブロックおよびどのメモリプレーンに属するかを識別する基準（例えば、メモリブロック＃ｍのメモリプレーンＱｉのメモリフィールドＦｊの場合には、＃ｍ、Ｑｉ、Ｆｊ）を有する。この基準システムは、全体を通じて適用されている。
【００２４】
しかしながら、実際のメモリブロックは、各々、表面上の異なる位置に拡がって配置されたプレーン、または、各々、メモリフィールドとして次々に配置されたプレーンをもつ表面構造にすることができ、これにより、例えば幾つかのブロックをもつチップの場合には、メモリブロック＃２／メモリプレーン＃Ｑ１でのメモリフィールドは、メモリブロック＃１／メモリプレーン＃Ｑ１でのメモリフィールドに直接連続するように配置されることは明白である。
【００２５】
第３図から分かるように、メモリ構造は、幾つかのアドレス指定可能な記憶場所すなわちメモリプレーンＱ１・・Ｑｉ・・ＱＮ（ｉ＝１〜Ｎ）を有する。各メモリブロック＃ｍは、アドレス指定可能な各メモリプレーンＱｉに割り当てられる多数のメモリフィールドＦ１〜ＦＰを有する。
【００２６】
各メモリブロック＃ｍは、物理的に、Ｗｍ行（第３図のＮ×Ｐに相当）およびａ×ｂ列に編成される。各行はメモリフィールドを形成しかつ多数のバイト群すなわちワード（ａ）（各ワードは適当なビット数（ｂ）を有する）を保有している。従ってメモリブロック＃ｍは、Ｗｍ×ａ×ｂビットの大きさになる。メモリ構造は、（Ｗ１＋Ｗ２＋・・・＋ＷＭ）×ａ×ｂビットの全サイズを有する。また、ａ、ｂおよびＷがメモリブロック間で変化する特別な場合を考えることもできるが、ここでは取り上げない。
【００２７】
長さＬＩワードをもつベクトルＶｉが、Ｌｉ／ａ部分ベクトルとして、メモリフィールド「＃１,Ｑi,Ｆ１」・・・「＃１,Ｑi,ＦＰ」；「＃２,Ｑi,Ｆ１」・・・「＃２,Ｑi,ＦＰ」；・・・；「＃Ｍ,Ｑi,Ｆ１」・・・「＃Ｍ,Ｑi,ＦＰ」に記憶される。構成(configuration)の後、Ｌｉ＝ａ×（Ｏi1＋Ｏi2＋・・・＋ＯiＭ）ワードは有効である。ここで、Ｏiｍとは、メモリプレーンの中の行の数、すなわち、メモリブロック＃ｍの中のメモリプレーンＱｉのメモリフィールドの総数をいう。従って、ベクトルＶｉの大きさは、ａ×ｂ×（Ｏi1＋Ｏi2＋・・・＋ＯiＭ）ビットとなる。各メモリブロックは、行の数が、常にメモリフィールドの数の合計に等しくなる（Ｗｍ＝Ｏ1ｍ＋Ｏ2ｍ＋・・・＋ＯＮｍ）。
【００２８】
同時に、異なる長さのベクトルをメモリ構造に記憶させることができる。
【００２９】
メモリ構造は、種々の態様に構成できる。外部から見て、ベクトルは出発点（識別情報）＃１ＱｉＦ１からのみアドレスされる。ここで、ｉは１とＮとの間の任意の数、Ｆ１は、メモリブロック＃１のメモリプレーンＱｉの第１メモリフィールドである。ベクトルＬｉの長さは構成により定められ、構成はスタティックでもダイナミックでもよい。
【００３０】
スタティック構成では、全てのＯiｍが予め定められる。制御ロジック４は、記憶位置Ｍｉの数Ｎ並びにそれぞれの記憶場所Ｌｉの長さの知識を有する。メモリブロックの制御ロジック１Ｓ−ＭＳは、それぞれのメモリブロックについて、出発点＃１ＱｉＦ１および長さＯiｍの知識を有する。終点＃ｍＱｉＦｊは、出発点および長さにより間接的に定められる。
【００３１】
ダイナミック構成では、現在のメモリプレーンまたは記憶場所Ｑｉの長さが書込み中に変化される。情報ベクトルは、長さに関する情報並びに他のグローバル情報によって続けられるように外部から仮定される。あるいは、この情報は、ベクトルＶｉのヘッドとして、第１バイト群内に見出すこともできる。次に制御ロジックは、メモリ構造内にいかにして更に入るかに従って、この情報を読取り、使用しかつ変化させる。ヘッドの後、情報は連続的に続く。
【００３２】
スタティック構成では、記憶場所Ｑｉから読取られまたは記憶場所Ｑｉに書込まれる情報ベクトルが、構成に等しい長さを有すると仮定する。スタティック構成では、ヘッドは省略できる。
【００３３】
どのメモリブロック＃ｉも、入力情報のため、メモリプレーン内の各記憶メモリフィールドのために多数の記憶ビットを有するバッファ記憶を備えた入力バッファｉＩＢと、出力情報のため、入力バッファと同じバッファ記憶サイズを備えた出力バッファｉＵＢとを有する。メモリプレーン内の、従ってメモリプレーン内のメモリフィールド（単一または複数）内の情報の書込みおよび読取りを制御するための制御ロジックｉＳが更に存在する。
【００３４】
本発明に従って、インターフェース５、６（第２図参照）を介してメモリ構造に接続されるコンピュータユニットは、情報入力ポートを介して入力される情報をロードし、かつ情報出力ポートから出力されるベクトルの形態の情報（例えばデータパケット）を取り出す。各ベクトルには、識別情報を含むヘッド、長さ等を設けることができる。或いは、当業者に明白な他の任意の態様でインターフェースに必要な情報を与えることができる。制御ロジック４はインターフェースに接続され、メモリから読取られたものに従ってメモリを制御する。また、制御ロジック４には、記憶されたベクトルに関するデータを記憶するための内部メモリ（図示せず）を設け、ベクトルおよび新しいベクトルを内部メモリに記憶させることができる。かくして、制御ロジック４の影響を受けて、メモリへのアドレス指定が行なわれる。これは第４Ａ図から理解されよう。
【００３５】
第４Ａ図から第４Ｃ図は、制御ロジックが作動する方法の一実施例のフローチャートであり、付勢時のもの（第４Ａ図）、メモリへの書込み時のもの（第４Ｂ図）およびメモリから読取り時のもの（第４Ｃ図）である。このフローチャートは非常に明白であるので、種々の段階についての詳しい説明は不要である。
【００３６】
以下に詳述するように、メモリへの入力情報は並列形式（すなわち、例えば８、１６、３２ビットの適当な長さの並列バイトの形態）が適している。純粋なシリアル情報が入力される場合には、コンバータユニット５において、ビット形態から並列バイト形態への変換が行なわれる。必要ならば、同様に、コンバータユニット６において並列バイトからビットへの変換を行なう。情報入力ポートでの入力情報が連続ビット形態になりかつ情報出力ポートでの情報が並列バイト形態になること（またはこの逆）を妨げるものはなく、この場合には、コンバータユニット５、６のうちのいずれか一方のみでよい。
【００３７】
ダイナミック構成（第４Ｂ図参照）中、書込まれるべき各情報ベクトルのヘッドが読取られる。この情報の一部は、ベクトルがどれほど多くのメモリスペースを占めるかを決定するのに使用され、他の一部は、第１メモリブロック＃１の制御ロジック１Ｓを付勢して、該制御ロジックに、他のメモリブロック＃ｉのどれほど多くの従属制御ロジックｉＳを付勢する必要があるかの情報を与えるのに使用される。
【００３８】
実際には、記憶されたどのベクトルも、メモリブロック＃１のプレーンＱｉの１つのメモリフィールドＦ１にその始点を有し、ここからメモリ内へとより深く入る。ベクトルの記憶は単一の連続糸のように行なわれると考えることができる。ベクトルは、この態様において並列に配置され、これらへのアドレス指定が、メモリブロック＃１の異なるプレーンの始点に行なわれる。実際に、多くのメモリフィールドＦ１〜ＦＰが、記憶のための各メモリに使用される。すなわち、全ベクトルが始点から終点まで、メモリブロックからメモリブロックへと、切断されないシーケンスに配置される。
【００３９】
メモリブロックのどの制御ロジックも、その内部に、これらのメモリプレーンおよびメモリフィールドは空であるか、既に充満されているかを示す情報をもつメモリを有している。記憶すべきベクトルが到達すると、制御ロジック４または制御ロジック１Ｓにおいて最初のサーチがなされ、利用可能な記憶プレーンを見出す。
【００４０】
メモリブロックの各制御ロジック１Ｓ〜ＭＳについてのフローチャートの一実施例を示す第５図から明らかなように、情報すなわちベクトルがインターフェース(第２図参照)を通るとき、書込みが開始する。構成は全てのメモリについて完了する必要はない。なぜならば、これは、メモリ内での情報の下降伝播に従って連続的に遂行されるからである。プレーンＱｉ（ｉは、１とＮとの間の数）が空であることが示されていると仮定する。ベクトルは、全ての異なるブロックにおいて常に同じプレーン、例えばプレーンＱｘ（ここで、ｘは１とＮとの間の数）すなわち、＃１Ｑｘ；＃２Ｑｘ；＃MＱｘ等に記憶されることに留意すべきである。入力バッファ１ＩＢへのベクトルの入力が開始される。そして、入力バッファがバイト群で充満されるやいなや、プレーン＃１Ｑｘの第１記憶メモリフィールドＦ１へのこの転送が行なわれる。入力バッファは、シフトレジスタと同様な態様で充満されるが、メモリフィールドへの出力は直列または並列（好ましくは並列）に行なわれ、これにより入力バッファの全メモリ内容が空にされる。
【００４１】
シフトレジスタと同様に直接再充満（direct refilling）が行なわれ、その後、プレーン＃１Ｑｘの最終メモリフィールドＦＰが充満されるまで、メモリの全内容がプレーン＃１Ｑｘの次のメモリフィールドＦ２に空にされる。これに関連して、制御ロジック１Ｓは、現在書込みが行なわれているメモリフィールドを与える入力フィールドポインタ（図示せず）を有する。
【００４２】
次に、入力バッファ１ＩＢは、入力バッファ２ＩＢの充満を、シフトレジスタと同様直列に、すなわち、並列バイトから並列バイトへと、これが満たされるまで始めるように制御される。以下の説明では、バッファとして使用されるシフトレジスタの全直列長さを直列バイトと呼ぶことにする。なぜならば、これは、バッファを充満するのに必要なクロック信号の数を表す（すなわち、並列バイト群の直列長さを表す）からである。
【００４３】
入力バッファが充満されると、入力バッファは、プレーン＃２Ｑｘの第１メモリフィールドＦ１および異なる次のメモリフィールドに充満され、次に、メモリプレーン＃１Ｑｘと同様に充満される（すなわち、制御ロジックからの入力フィールドポインタにより制御される）。メモリプレーン＃１Ｑｘが充満されると、メモリブロック＃２の入力バッファ２ＩＢの情報が、次のメモリブロックの入力バッファに転送し続け、次に、ここから、このメモリブロックの次のメモリプレーン＃３Ｑｘのメモリフィールドに転送し続け、このことが以下同様に行なわれる。いずれの図面にも示されていないが、例えば幾つかのメモリプレーンを同時に働かせるためには、多くの入力バッファおよび出力バッファを設けることができることに留意すべきである。制御ユニットを二重化することもできる。
【００４４】
情報は、連続並列バイトの形態で入力バッファに入力でき、このため、実際に各バッファは各バッファにあるビットと同様な多くの並列シフトレジスタを有することに留意すべきである。並列バイト群という表現は、入力／出力バッファを充満するバイト数に使用される。入力バッファがプレーンのメモリフィールドに注がれると、これにより、転送される非常に大量のデータがある。従って各メモリフィールドは、極めて大きな数の並列バイト群を有する。
【００４５】
データは、これが書込まれた後に、直ちにメモリフィールドから読取られかつ出力される。
【００４６】
第５図のフローチャートから明らかなように、読取り中に、１つのメモリフィールドの内容が、当該プレーン１ｉの第１フィールドの全並列バイト群と並列に、出力バッファＩＵＢに一度に転送されかつ直列にすなわち並列バイトから並列バイトへと出力される。
【００４７】
プレーン＃１Ｑｉの最終メモリフィールドの次の出力バッファへの転送が行なわれると、制御ロジック１Ｓは制御ロジック２ｓを付勢して、第１メモリフィールド＃２Ｑｉの内容を出力バッファ２ＵＢに転送する。最終メモリフィールドＦＰが出力バッファ１ＵＢに転送されかつこれがその並列バイトの内容を直列に出力した直後に、出力バッファ２ＵＢは、その内容を、並列バイトから並列バイトへと直列に、出力バッファ１ＵＢに出力し、従って、これがバッファ１ＵＢの前の内容の直後に続くようにする。
【００４８】
この方法では、出力された情報に中断が生じない。プレーン＃２Ｑｉのメモリフィールドの情報は、出力バッファ２ＵＢに段階的に出力され、制御ロジック２Ｓからの出力フィールドポインタ（図示せず）により制御され、かつここからバッファ１ＵＢを介して直列的に出力される。プレーン２ｉの最終メモリフィールドＦＰに続くメモリフィールドが出力バッファ２ＵＢに転送されると、次のメモリブロックのために制御ロジックが付勢され、メモリフィールド情報がメモリブロック等の出力バッファに転送されるようにする。
【００４９】
上記実施例では、異なるブロックの各出力バッファが、その内容、並列バイト群、並列バイトから並列バイトへと直列的に次の出力バッファに出力する。これは、入力および出力の両方において、制御が並列バイトから並列バイトへと行なわれることを意味する。各並列バイト群は比較的多数の並列バイトを有し、これは、データをもつベクトルの出力の開始が、並列バイト群の長さにより与えられる多数のクロック期間の比較的長い時間間隔で行なわれることを意味する。
【００５０】
しかしながら、データ出力の制御が本発明のメモリが一部を形成するシステムのクロック期間で終了する場合の用途がある。メモリのヘッド論理は、並列バイト群の出力が行なわれることに関する情報および並列バイト群の時間内に正確な所望時間に出力が行なわれるために必要とされる位相変位を有する。
【００５１】
第６図には、これを達成するための制御ロジックを備えたメモリの一実施例が示されている。同じメモリ内容を、独立的に制御可能な時点でシステムの異なる部分に出力することができ、この場合には多くの出力バッファをメモリプレーンに接続することができる。しかしながら、図面には１つのみの出力バッファＯＵＴＢＵＦＦが示されているだけである。各出力バッファは中間バッファＭＢＵＦＦを有し、中間バッファでは、制御中に、内容がシフトレジスタｓｋに転送される。
各出力バッファを機能させる方法は全て同じであり、従って、ＯＵＴＢＵＦＦに関する説明はこれらの全てに有効である。
【００５２】
メモリブロックのローカル制御装置(local control arrangement)が、メモリプレーンのメモリ内容が出力バッファＯＵＴＢＵＦＦを介して出力すべき旨の表示を受けると、このメモリプレーンの第１メモリフィールドが、そのための制御信号Ｃ−１により、中間バッファＭＢＵＦＦにロードダウンされる。実際の出力のための適当なクロック信号で、中間バッファの内容が、シフトレジスタのクロック入力ＣＬＫの制御と直接タイミングが合った出力を得るため、制御信号Ｃ−２によりシフトレジスタｓｋに転送される。次のメモリフィールドの内容が、中間バッファからシフトレジスタへの転送の直後に、または好ましくは、次の全並列バイト群期間の開始時に、中間バッファＭＢＵＦＦに転送される。しかしながら、シフトレジスタｓｋへの転送前の期間中、例えば中間メモリからシフトレジスタへの転送の直前のクロック期間中の任意の時点で行なわれる中間バッファへの転送を防止するものは何もない。
【００５３】
上記のように、全メモリブロックがひとたび空になると、更に出力に転送するため、情報が連続的に出力バッファに出力される。このデータは、次のブロックも同じ制御であるため、シフトレジスタを介してメモリの出力に出力されるように次の出力バッファのためのシフトレジスタに接続されたその直列入力上のシフトレジスタｓｋに連続順序で入力する、正しくタイミングがとれた連続直列バイト群として直接帰着する。
【００５４】
第６図の下部には、メモリプレーンのそれぞれのメモリフィールドから中間バッファＭＢＵＦＦへの転送、次にメモリバッファからシフトレジスタｓｋへの転送を出力するメモリブロックの第１出力バッファＯＵＴＢＵＦＦの制御手段の一例が示されている。特定時点で開始するメモリプレーンにおいて、データが、データに関する制御がロジック１０に入力されると、これは、最初に、小ゲート回路１１を通過後にメモリプレーンの第１メモリフィールドへの出力フィールドポインタに向く。小ゲート回路１は、制御信号ＣＫＬ／ｂ（ここで、ｂは、カウンタ１２によりカウントされたシフトレジスタＳＫの並列バイト段の数である）の存在において、そのロジックからの信号を通ることを可能にする。出力フィールドポインタは、次の制御信号ＣＬＫ／ｂで次のメモリフィールドに移動し、以下同様に、次の制御信号で次のメモリフィールドに移動する。これは楕円１３で示されている。また、出力フィールドポインタの位相に対する位相変位が、異なる位置Ｐ１〜Ｐａとして第６図の上部に示されている。ここで、ａは、異なるフィールドＦｉおよびＦ（ｉ＋１）におけるメモリフィールドの位置長さであり、これにより、Ｃ−１は、この実施例では、フィールドポインタの始点になり、Ｃ−２は、所望位置（例えばＰ２）に制御可能に変位される。
【００５５】
カウンタ１２からの出力は、論理１１からの出力と一緒に、フィールドの変化に関する第２論理１４に入力される。次に、論理１４は、図示の実施例に従って、その出力に信号Ｃ−１を発生する。この信号Ｃ−１は、図示の実施例では、選択されたメモリフィールドから小ゲート回路１５（該回路は、次のクロック信号ＣＬＫで信号を発生する）を介して中間バッファＭＢＵＦＦに送られるデータ転送を制御する。また、信号Ｃ−１は、遅延ユニット１６の入力にも供給される。
【００５６】
遅延ユニット１６は、その１つの制御入力に、論理１０からの信号１７（該信号はデジタル形態が好ましい）を受け、該信号１７は、シフトレジスタＳＫ１に転送される前に、データの現在の遅延を中間バッファに知らせる。これは、出力フィールドポインタが、出力されるべきメモリプレーンの最終フィールドに到達するまで続く。この場合、論理１０からの論理１４からの信号はもはや生じない。その代わり、最終出力フィールドポインタ位置に続く位置で、論理１０は、その制御ロジックを付勢すべく次のブロックへの出力を与える。
【００５７】
図示しないが、必要ならば、信号Ｃ−１に所望の遅延を与えるため、および／または異なる出力バッファ等に異なる遅延を与えるため、論理１０とは別の制御可能な多くの遅延を設けることができる。
【００５８】
メモリの上記全ての実施例において、入力データおよび出力データはメモリブロックの同じ側でそれぞれ入力および出力される。第７図は、記憶された全ベクトルが上記実施例に従って出力されるか、或いは異なるメモリブロックに記憶されたデータの信号処理を同時にすなわち並列的に遂行できる実施例を示す。
【００５９】
記憶された全ベクトルを、出力バッファ＃ｍＵＢ, ＃（ｍ＋１）ＵＢを介して後で出力するため、信号処理は、例えば、記憶されたテキストストリングの全体に亘る特殊記号の置換に関するものとすることができる。このような場合、データは、処理後に、該データが取り出されたメモリのメモリフィールドに戻し転送される。或いは、より精巧な信号処理を行なうことができる。この実施例の１つの長所は、多量の記憶データの信号処理を迅速に遂行できることである。
【００６０】
特殊文字を捜索しまたは結果を得るため、記憶データの或る種の処理を行なうこともできる。このような場合、入力されたベクトルを出力バッファを介して出力する必要はない。従って、これらは、本発明に必ずしも必要なものではない。
【００６１】
どのメモリブロック（例えばメモリブロック＃ｍ）も処理バッファｍＢｍを有し、該処理バッファｍＢｍは、制御ロジック＃ｍＬがその出力バッファと同様にしてメモリフィールド毎にメモリプレーンの内容を送ることができるメモリブロックに接続されている。次に、バッファ＃ｍＢｍの内容がローカル信号処理ユニット＃ｍＬＳｍに転送され、該ローカル信号処理ユニットでは、特殊な信号処理が行なわれる。次に、処理されたデータは、上記のようにかつ図面に破線で示すように、該データが取り出されたメモリフィールド（単一または複数）に戻し転送されるか、全てのブロックに共通の信号処理ユニットＧＳ（該ユニットは結果を抽出しかつこれを出力する）に転送される。この結果の抽出は、それぞれのメモリブロックに記憶されるものに基づいて、別のメモリプレーン、１つのメモリプレーンのメモリフィールドまたは全メモリブロックで行なうことができる。使用される信号処理の形式は発明の概念とは無関係であるので、１つの実施例、すなわち全メモリブロックまたはメモリブロックのメモリプレーンの実施例のみを示す。
【００６２】
また、上記方法で、同じメモリブロックの全てのメモリプレーンの処理を行なうことができる。これが生じる状況は、画像の各線がメモリブロックの異なるメモリプレーンに記憶される画像制作用ビデオ信号を記憶する場合である。本発明は、迅速かつ容易なアクセスができかつ特定のメモリブロックまたは幾つかの隣接メモリブロックに線が集合された画像の部分の処理を行なうことができる。このため、あらゆる種類の画像の迅速な処理が可能になる。
用例における長所
本発明による方法により記憶するのに特に適したベクトルの例は、ワードプロセッサからのテキストのボリュームである。テキストのボリュームは、ベクトルの始点およびその長さで定められる。しかしながら、実際には、これがどこにあるかを知る必要はない。本発明を用いることの利点は、コンピュータ速度をかなり増大できることである。
【００６３】
伝統的に、テキストのボリュームは、例えばハードディスクの異なる場所に分割されて記憶される。記憶情報を保持するには、先ず、１つのセクタをアドレス指定し、ここから情報を取り出し、他のセクタをアドレス指定し、ここから情報を取り出し、以下同様の手順を繰り返す。従って、この場合には非常に多くのアドレス指定と情報待機が必要である。
【００６４】
また、伝統的に、近くの位置から情報を取り出すことは比較的高速に行なえる。調査すべきメモリが多いほど、長時間を要する。このため、データ速度は、メモリの大きさおよび情報の拡大度合いに比例して低下する。
【００６５】
本発明では、情報の始点はメモリの入力／出力でのベクトルにありかつストリン
グのようなものである。すなわち、異なるプレーン＃ｍｉ，Ｑｊ（ここで、ｊは１とＮとの間の任意の数である）において、ストリングは、入力／出力からメモリ内に深く入る。適当な位置を探すため、新しいベクトルが、中断することなくメモリに入力される。同様に、記憶されたベクトルは、出力が必要な実施例では中断することなく出力される。これは、とにかくアクセス時間を損なうことなく情報量を無限に大きくできることを意味する。ベクトルの終点は、この情報をその内部メモリに記憶するメモリブロックの制御ロジックによりベクトルの書込みおよび読取りが行なえる最終メモリブロックのメモリフィールドにマークされる。メモリの同時読取りおよび書込みが行なわれる。従って、この制御ロジックは、常に入力および出力の両者の終点を知っており、特に、それぞれの出力バッファからベクトルの終点を出力する間に、終点を他の制御ロジックに信号入力する。
【００６６】
従って、各制御ロジックｉＳは各情報についてのリストを有し、該リストには、どの情報実態であるかについて、および関連メモリブロックおよびリンクに書込むことができるベクトル部分の始点および終点が記載されている。制御ロジックのこの部分は、ダイナミックメモリより効率的なハードウェアで適当に遂行される。第１図〜第５図の実施例の制御ロジックの一実施例は、遅延１６なくして第６図の実施例と同様に遂行される。メモリは、外部からは通常のメモリのように見える。本発明によるメモリに適用される僅かな制限は、ベクトルの処理中にのみ効率的なことである。本発明のメモリは、コンピュータの通常のメモリの一部に含めることができる。
【００６７】
新しいシステムでは、両情報が迅速に見出されかつデータ転送が迅速に行なわれる。メモリブロックはチップの一部で構成できる。すなわち、幾つかのメモリブロックを同一チップに設けることもできるし、別々のチップに設けることもできる。或いは、各メモリブロックは幾つかのチップで、すなわち標準コンポーネンツで製造することができる。これらの全ての可能性は、市場と共存するものであり、種々のユニットの組合せにフレキシブルに使用できることを意味する。
【００６８】
１つの用途のベクトルが非常に長くなり、メモリに記憶できるようにするには幾つかのベクトルに分割しなければならないことが明らかになった場合には、例えば、最終メモリブロックの後に、簡単な方法で特別なメモリブロック（チップ）を接続し、記憶すべきベクトルの記憶スペースを拡大することができる。
【００６９】
他の使用領域は、データが直列ビット形態で到達する電話網であり、この場合には、第１入力バッファに入力される、ビットからバイトに変換するための情報用コンバータユニット５が適している。
【００７０】
また、入力バッファは、これらが直列シフトレジスタ（特別な場合）を形成するように編成することもできる。また、入力バッファに直列シフトレジスタを設け、出力バッファに並列シフトレジスタを設けることができ、或いはこの逆の構成にすることもできる。実施上の問題は、データの上り並列化（up-paralleling）を最初に遂行することを選択する場合にある。これは、将来遠隔通信を考える場合には、起こり得る蓋然性が非常に高い。入力される情報は直列的であり、従って、第１並列変換がメモリの外部のコンポーネント５で遂行される。
【００７１】
各制御ロジック４、ｍＳは、固定プログラムを有する簡単なデータチップの形態に構成できる。或いは、制御ロジックｍＳはメモリプレーンと一体化させることができる。第４図および第５図は、制御ロジックのフローチャートの一設計を示す。このフローチャートにより達成される機能は上述した通りであり、これが、このフローチャートについて特別な説明をしない理由であり、当業者には直接理解できるであろう。
【００７２】
本発明の範囲内で考え得る多くの変更が請求の範囲に記載されている。
【図面の簡単な説明】
【００７３】
以下、本発明を添付図面を参照してより詳細に説明する。
【００７４】
【図１】第１図は、本発明によるメモリ構造の原理を示す概略図である。
【００７５】
【図２】第２図は、本発明によるメモリ構造の第１実施例を示す図面である。
【００７６】
【図３】第３図は、メモリブロックの内部構造を第２図より詳細に示す図面である。
【００７７】
【図４】第４図は、メモリの全制御ロジックを示すフローチャートである。
【００７８】
【図５】第５図は、メモリブロックの制御ロジックを示すフローチャートである。
【００７９】
【図６】第６図は、本発明によるメモリ構造の第２実施例を示す図面である。
【００８０】
【図７】第７図は、本発明によるメモリ構造の第３実施例を示す図面である。
【図１】
0004659792.tif 000002
【図２】
0004659792.tif 000003
【図３】
0004659792.tif 000004
【図４】
0004659792.tif 000005
【図５】
0004659792.tif 000006
【図６】
0004659792.tif 000007
【図７】
0004659792.tif 000008