JPH05182471A - 機能メモリプロセッサ - Google Patents
機能メモリプロセッサInfo
- Publication number
- JPH05182471A JPH05182471A JP34566991A JP34566991A JPH05182471A JP H05182471 A JPH05182471 A JP H05182471A JP 34566991 A JP34566991 A JP 34566991A JP 34566991 A JP34566991 A JP 34566991A JP H05182471 A JPH05182471 A JP H05182471A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- search
- word
- bit data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Landscapes
- Memory System (AREA)
Abstract
(57)【要約】
【目的】本発明は、多数のメモリを備え、これら多数の
メモリに記憶された全部もしくは所定の一部の多数のデ
ータに並列的に所定の演算を行う機能メモリプロセッサ
に関し、多数のメモリにそれぞれ記憶された値に、メモ
リ毎にそれぞれ異なる値を加算することができ、しかも
加算演算速度の早い機能メモリプロセッサを提供する。 【構成】スルー機能が付加されたフルアダーを備え、こ
のフルアダーに備えられた結果レジスタの出力をワード
メモリに戻して記憶させる機能を備えた。
メモリに記憶された全部もしくは所定の一部の多数のデ
ータに並列的に所定の演算を行う機能メモリプロセッサ
に関し、多数のメモリにそれぞれ記憶された値に、メモ
リ毎にそれぞれ異なる値を加算することができ、しかも
加算演算速度の早い機能メモリプロセッサを提供する。 【構成】スルー機能が付加されたフルアダーを備え、こ
のフルアダーに備えられた結果レジスタの出力をワード
メモリに戻して記憶させる機能を備えた。
Description
【0001】
【産業上の利用分野】本発明は、多数のメモリを備え、
これら多数のメモリに記憶された全部もしくは所定の一
部の多数のデータに並列的に所定の演算を行なう機能メ
モリプロセッサに関する。
これら多数のメモリに記憶された全部もしくは所定の一
部の多数のデータに並列的に所定の演算を行なう機能メ
モリプロセッサに関する。
【0002】
【従来技術】近年の集積回路技術の進歩により、従来の
逐次形コンピュータでは計算量が厖大すぎて実用的な時
間内で処理することが難しい場合に対処するため、高い
並列性をもつ機能メモリプロセッサと呼ばれるハードウ
ェアが実現されるようになってきている。
逐次形コンピュータでは計算量が厖大すぎて実用的な時
間内で処理することが難しい場合に対処するため、高い
並列性をもつ機能メモリプロセッサと呼ばれるハードウ
ェアが実現されるようになってきている。
【0003】このような機能メモリプロセッサの一例と
して、‘「組合せ問題に対する機能メモリ形並列プロセ
ッサアーキテクチャ」 安浦寛人ほか 電子情報通信学
会論文誌A vol.572−A No.2 pp22
2−230 1989年2月’に提案されたものがあ
る。以下、この例に沿って従来の技術について説明す
る。
して、‘「組合せ問題に対する機能メモリ形並列プロセ
ッサアーキテクチャ」 安浦寛人ほか 電子情報通信学
会論文誌A vol.572−A No.2 pp22
2−230 1989年2月’に提案されたものがあ
る。以下、この例に沿って従来の技術について説明す
る。
【0004】図6は、従来の機能メモリプロセッサの基
本構成を示した模式図である。この機能メモリプロセッ
サ10には、キーワードレジスタ12、マスクレジスタ
14、多数のワードメモリ16(ここでは1つのみ示さ
れている)が備えられており、各レジスタ/メモリ1
2,14,16はアドレス部Adとデータ部Dataと
から成り、各レジスタ/メモリ12,14,16には、
それぞれキーワードデータ、マスクデータ、ワードデー
タが入力、記憶される。キーワードレジスタ12にセッ
トされたキーワードデータは、マスクレジスタ14にセ
ットされたマスクデータにより、各ビット毎に後述する
一致検索に用いるか否かに区分される。一致検索に使用
されないビットに関しては一致するものとして取り扱わ
れる。ここでは、キーワードデータのうち、このように
して区分された一致検索に用いるビットデータのみで構
成されたデータを検索データと呼ぶ。この検索データが
各ワードメモリ16に伝えられ、図示しない一致検出回
路により各ワードメモリ16に記憶されたワードデータ
と検索データとの一致不一致が検出される。この一致不
一致が検出されると、各ワードメモリ16毎に備えられ
た検索一致線18に、一致する場合はHレベル‘1’、
不一致の場合はLレベル‘0’の一致信号が出力され、
論理演算回路20にその第一のビットデータ入力端子2
2から入力される。またこの論理演算回路20の出力端
子24は結果レジスタ28に接続されており、論理演算
回路20で演算された結果が、クロックCLKが結果レ
ジスタ28に入力される所定のタイミングで該結果レジ
スタ28にセットされる。またこの結果レジスタ28の
出力信号Cは論理演算回路20の第二のビットデータ入
力端子26から該論理演算回路20に入力される。この
論理演算回路28は、アンド、オア、エクスクルーシブ
オア、及びスルーの各機能を備えている。ここで、スル
ーとは、検索一致線18に出力された一致信号をそのま
ま通過させて結果レジスタにセットする機能をいう。
本構成を示した模式図である。この機能メモリプロセッ
サ10には、キーワードレジスタ12、マスクレジスタ
14、多数のワードメモリ16(ここでは1つのみ示さ
れている)が備えられており、各レジスタ/メモリ1
2,14,16はアドレス部Adとデータ部Dataと
から成り、各レジスタ/メモリ12,14,16には、
それぞれキーワードデータ、マスクデータ、ワードデー
タが入力、記憶される。キーワードレジスタ12にセッ
トされたキーワードデータは、マスクレジスタ14にセ
ットされたマスクデータにより、各ビット毎に後述する
一致検索に用いるか否かに区分される。一致検索に使用
されないビットに関しては一致するものとして取り扱わ
れる。ここでは、キーワードデータのうち、このように
して区分された一致検索に用いるビットデータのみで構
成されたデータを検索データと呼ぶ。この検索データが
各ワードメモリ16に伝えられ、図示しない一致検出回
路により各ワードメモリ16に記憶されたワードデータ
と検索データとの一致不一致が検出される。この一致不
一致が検出されると、各ワードメモリ16毎に備えられ
た検索一致線18に、一致する場合はHレベル‘1’、
不一致の場合はLレベル‘0’の一致信号が出力され、
論理演算回路20にその第一のビットデータ入力端子2
2から入力される。またこの論理演算回路20の出力端
子24は結果レジスタ28に接続されており、論理演算
回路20で演算された結果が、クロックCLKが結果レ
ジスタ28に入力される所定のタイミングで該結果レジ
スタ28にセットされる。またこの結果レジスタ28の
出力信号Cは論理演算回路20の第二のビットデータ入
力端子26から該論理演算回路20に入力される。この
論理演算回路28は、アンド、オア、エクスクルーシブ
オア、及びスルーの各機能を備えている。ここで、スル
ーとは、検索一致線18に出力された一致信号をそのま
ま通過させて結果レジスタにセットする機能をいう。
【0005】上記のように構成された従来の機能メモリ
プロセッサにおいては、以下に示すような基本命令が用
意されている。但しここでは、以下の説明に必要な命令
のみを挙げるものとする。以下の各命令において、引数
address,dataは、それぞれ前述したアドレ
ス部Ad,データ部Dataに与えられるデータを表
す。この入力が必要ないときは省略される。 (A)一致検索:REF function 〈add
ress,data〉 値address、dataに、マスクレジスタにセッ
トされたマスクデータによるマスクを施して検索データ
を生成し、この検索データが内部バスを通じて各ワード
メモリ16に伝送される。各ワードメモリでは、そのワ
ードメモリに記憶されたワードデータと伝送されてきた
検索データとの比較が対応する各ビット毎に行なわれ
る。尚、前述したようにマスクが施されたビットは一致
しているものとみなされる。検索一致線18には全ビッ
トが一致したときに‘1’、1ビットでも不一致の場合
は‘0’が出力される。このようにして出力された一致
信号と、結果レジスタ28にセットされていた値Cとの
間にfunctionで指定される論理演算(スルー
(THRU)/アンド(AND)/オア(OR)/イク
スクルーシブオア(XOR))が施され、この演算結果
が再び結果レジスタ28にセットされる。 (B)選択ワードメモリ並列書き込み:WRITE C
〈,data〉 値dataにマスクデータによるマスクを施し、対応す
る結果レジスタ28にセットされている値が’1’のワ
ードメモリ(これを選択ワードメモリと称する)に値d
ataを並列に書き込む。マスクされたビットは書き換
えられない。 (C)マスクレジスタ14への書き込み:MASKSE
T〈address,data〉 値address、dataをマスクレジスタ14に書
き込む。 (D)リセット:RESET C 全ての結果レジスタ20に‘0’をセットする。
プロセッサにおいては、以下に示すような基本命令が用
意されている。但しここでは、以下の説明に必要な命令
のみを挙げるものとする。以下の各命令において、引数
address,dataは、それぞれ前述したアドレ
ス部Ad,データ部Dataに与えられるデータを表
す。この入力が必要ないときは省略される。 (A)一致検索:REF function 〈add
ress,data〉 値address、dataに、マスクレジスタにセッ
トされたマスクデータによるマスクを施して検索データ
を生成し、この検索データが内部バスを通じて各ワード
メモリ16に伝送される。各ワードメモリでは、そのワ
ードメモリに記憶されたワードデータと伝送されてきた
検索データとの比較が対応する各ビット毎に行なわれ
る。尚、前述したようにマスクが施されたビットは一致
しているものとみなされる。検索一致線18には全ビッ
トが一致したときに‘1’、1ビットでも不一致の場合
は‘0’が出力される。このようにして出力された一致
信号と、結果レジスタ28にセットされていた値Cとの
間にfunctionで指定される論理演算(スルー
(THRU)/アンド(AND)/オア(OR)/イク
スクルーシブオア(XOR))が施され、この演算結果
が再び結果レジスタ28にセットされる。 (B)選択ワードメモリ並列書き込み:WRITE C
〈,data〉 値dataにマスクデータによるマスクを施し、対応す
る結果レジスタ28にセットされている値が’1’のワ
ードメモリ(これを選択ワードメモリと称する)に値d
ataを並列に書き込む。マスクされたビットは書き換
えられない。 (C)マスクレジスタ14への書き込み:MASKSE
T〈address,data〉 値address、dataをマスクレジスタ14に書
き込む。 (D)リセット:RESET C 全ての結果レジスタ20に‘0’をセットする。
【0006】以上のように定義された命令を用いて、多
数のワードメモリ16にそれぞれ記憶されたワードデー
タにある一定の値を並列加算するには、図7に示す命令
群となる。ここでnはアドレス部Adのビット長、mは
データ部Dataのビット長を表し、ここではアドレス
部Adのi番目のビットが‘1’のワードメモリについ
て、そのデ−タ部Dataの内容に、ビット列{b
k }、k=1,2,…,mで表されるデータが加算され
る。
数のワードメモリ16にそれぞれ記憶されたワードデー
タにある一定の値を並列加算するには、図7に示す命令
群となる。ここでnはアドレス部Adのビット長、mは
データ部Dataのビット長を表し、ここではアドレス
部Adのi番目のビットが‘1’のワードメモリについ
て、そのデ−タ部Dataの内容に、ビット列{b
k }、k=1,2,…,mで表されるデータが加算され
る。
【0007】
【発明が解決しようとする課題】ここで、上記のように
構成された機能メモリプロセッサ10では、並列加算を
行なう場合に、加算演算1ビットあたり、加算される定
数{bk }の各ビットが‘0’か‘1’かに応じて5命
令ないし7命令必要となり、しかも‘if’文によるb
k =0かbk =1かの判断が必要となり、したがって加
算演算を実行するのに時間がかかるという問題がある。
また、‘if’文が必要なため加算される定数{bk }
は予め知られている必要があり、しかも各ワードメモリ
16に記憶されている各ワードデータ{ak }j に対し
(jはワードメモリの番号を表す)、どのワードメモリ
16に対しても同一の1つの定数{bk }を加算するこ
としかできず、このように加算演算に大きな制限を伴っ
ているという問題もある。
構成された機能メモリプロセッサ10では、並列加算を
行なう場合に、加算演算1ビットあたり、加算される定
数{bk }の各ビットが‘0’か‘1’かに応じて5命
令ないし7命令必要となり、しかも‘if’文によるb
k =0かbk =1かの判断が必要となり、したがって加
算演算を実行するのに時間がかかるという問題がある。
また、‘if’文が必要なため加算される定数{bk }
は予め知られている必要があり、しかも各ワードメモリ
16に記憶されている各ワードデータ{ak }j に対し
(jはワードメモリの番号を表す)、どのワードメモリ
16に対しても同一の1つの定数{bk }を加算するこ
としかできず、このように加算演算に大きな制限を伴っ
ているという問題もある。
【0008】本発明は、上記問題に鑑み、多数のワード
メモリにそれぞれ記憶された値に、各ワードメモリ毎に
異なる値をそれぞれ加算することができ、しかも加算演
算速度の早い機能メモリプロセッサを提供することを目
的とする。
メモリにそれぞれ記憶された値に、各ワードメモリ毎に
異なる値をそれぞれ加算することができ、しかも加算演
算速度の早い機能メモリプロセッサを提供することを目
的とする。
【0009】
【課題を解決するための手段】上記目的を達成するため
の本発明の機能メモリプロセッサは、 (a)キーワードデータがセットされるキーワードレジ
スタ (b)該キーワードレジスタにセットされたキーワード
データを構成する各ビットデータのうち一致検索に用い
るビットデータと用いないビットデータとを区分するマ
スクデータがセットされるマスクレジスタ (c)多数のワードデータをそれぞれ記憶する多数のワ
ードメモリ (d)該多数のワードメモリのそれぞれに対応して備え
られた、第一のビットデータ入力端子と、第二のビット
データ入力端子と、キャリーフラグがセットされるキャ
リーレジスタと、加算結果がセットされる、出力端子が
上記第二のビットデータ入力端子と接続された結果レジ
スタとを有し、上記第一のビットデータ入力端子から入
力されたビットデータをそのまま通過させて結果レジス
タにセットするスルー機能が付加されたフルアダーを備
え、上記多数の各ワードメモリが、 (e)該ワードメモリに対応するフルアダーの上記第一
のビットデータ入力端子と接続された検索一致線 (f)該フルアダーの上記第二のビットデータ入力端子
と接続された結果出力線 (g)該ワードメモリを構成する各メモリセル毎に備え
られた、キーワードレジスタにセットされたキーワード
データを構成する各ビットデータのうち一致検索に用い
るビットデータで構成された検索データを構成する、該
メモリセルに対応する検索ビットデータと該メモリセル
に記憶されたビットデータとの一致不一致を検索し、該
ワードメモリに記憶されたワードデータと検索データと
の一致と不一致とを区別する一致信号が検索一致線に出
力されるように、該検索一致線にビット一致信号を出力
する一致検出回路 (h)該ワードメモリを構成する各メモリセル毎に備え
られた、ビット線を経由して入力されたビットデータと
結果出力線を経由して入力された結果レジスタの出力ビ
ットデータとを切換えて該各メモリセルに入力する切換
回路 を備えたことを特徴とするものである。
の本発明の機能メモリプロセッサは、 (a)キーワードデータがセットされるキーワードレジ
スタ (b)該キーワードレジスタにセットされたキーワード
データを構成する各ビットデータのうち一致検索に用い
るビットデータと用いないビットデータとを区分するマ
スクデータがセットされるマスクレジスタ (c)多数のワードデータをそれぞれ記憶する多数のワ
ードメモリ (d)該多数のワードメモリのそれぞれに対応して備え
られた、第一のビットデータ入力端子と、第二のビット
データ入力端子と、キャリーフラグがセットされるキャ
リーレジスタと、加算結果がセットされる、出力端子が
上記第二のビットデータ入力端子と接続された結果レジ
スタとを有し、上記第一のビットデータ入力端子から入
力されたビットデータをそのまま通過させて結果レジス
タにセットするスルー機能が付加されたフルアダーを備
え、上記多数の各ワードメモリが、 (e)該ワードメモリに対応するフルアダーの上記第一
のビットデータ入力端子と接続された検索一致線 (f)該フルアダーの上記第二のビットデータ入力端子
と接続された結果出力線 (g)該ワードメモリを構成する各メモリセル毎に備え
られた、キーワードレジスタにセットされたキーワード
データを構成する各ビットデータのうち一致検索に用い
るビットデータで構成された検索データを構成する、該
メモリセルに対応する検索ビットデータと該メモリセル
に記憶されたビットデータとの一致不一致を検索し、該
ワードメモリに記憶されたワードデータと検索データと
の一致と不一致とを区別する一致信号が検索一致線に出
力されるように、該検索一致線にビット一致信号を出力
する一致検出回路 (h)該ワードメモリを構成する各メモリセル毎に備え
られた、ビット線を経由して入力されたビットデータと
結果出力線を経由して入力された結果レジスタの出力ビ
ットデータとを切換えて該各メモリセルに入力する切換
回路 を備えたことを特徴とするものである。
【0010】また、上記本発明の機能メモリプロセッサ
において、上記多数の各ワードメモリが、 (i)上記検索ビットデータを上記検索一致線に出力す
るスルー機能を備えていることが好ましい。
において、上記多数の各ワードメモリが、 (i)上記検索ビットデータを上記検索一致線に出力す
るスルー機能を備えていることが好ましい。
【0011】
【作用】本発明の機能メモリプロセッサは、上記(d)
のスルー機能が付加されたフルアダーを備え、このフル
アダーに備えられた結果レジスタの出力を結果出力線
(上記(f))を経由してワードメモリに戻し、切換回
路(上記(h))で切り換えてこの結果レジスタの出力
をワードメモリに入力するようにしたため、各ワードメ
モリ中のデータ領域Dataを2つのデータ領域A、B
と観念したとき、これら2つのデータ領域A、Bに記憶
されたデータを互いに加算してその結果をデータ領域A
もしくはデータ領域Bに記録することができ、したがっ
て各ワードメモリjに記憶されている、各ワードメモリ
j毎に異なる2つの数{ak }j ,{bk }j を加算す
ることができる。また、この加算は、後述するように、
各ビットあたり5ステップ(5命令)で済み、上記2つ
の数{ak }j ,{bk }j は未知数でよくしたがって
‘if’文も不要であり、このため高速な加算演算が可
能となる。
のスルー機能が付加されたフルアダーを備え、このフル
アダーに備えられた結果レジスタの出力を結果出力線
(上記(f))を経由してワードメモリに戻し、切換回
路(上記(h))で切り換えてこの結果レジスタの出力
をワードメモリに入力するようにしたため、各ワードメ
モリ中のデータ領域Dataを2つのデータ領域A、B
と観念したとき、これら2つのデータ領域A、Bに記憶
されたデータを互いに加算してその結果をデータ領域A
もしくはデータ領域Bに記録することができ、したがっ
て各ワードメモリjに記憶されている、各ワードメモリ
j毎に異なる2つの数{ak }j ,{bk }j を加算す
ることができる。また、この加算は、後述するように、
各ビットあたり5ステップ(5命令)で済み、上記2つ
の数{ak }j ,{bk }j は未知数でよくしたがって
‘if’文も不要であり、このため高速な加算演算が可
能となる。
【0012】また上記本発明の機能メモリプロセッサに
おいて、各ワードメモリが上記(i)のスルー機能を備
えた場合、検索データが被加算定数{bk }として用い
られ、この場合、各ワードメモリに同一の値{bk }j
={bk }を記憶させることなく、前述した従来例と同
様に、各ワードメモリに記憶された値{ak }j に各ワ
ードメモリに共通の定数{bk }を加算することができ
るが、この場合も、後述するように、1ビットあたり5
ステップ(5命令)で加算が行なわれ、また値{bk }
は未知数であってもよく‘if’文も不要であるため、
この場合も従来と比べ高速な加算演算が可能となる。
おいて、各ワードメモリが上記(i)のスルー機能を備
えた場合、検索データが被加算定数{bk }として用い
られ、この場合、各ワードメモリに同一の値{bk }j
={bk }を記憶させることなく、前述した従来例と同
様に、各ワードメモリに記憶された値{ak }j に各ワ
ードメモリに共通の定数{bk }を加算することができ
るが、この場合も、後述するように、1ビットあたり5
ステップ(5命令)で加算が行なわれ、また値{bk }
は未知数であってもよく‘if’文も不要であるため、
この場合も従来と比べ高速な加算演算が可能となる。
【0013】
【実施例】以下、本発明の実施例について説明する。図
1は、本発明の機能メモリプロセッサの一実施例の基本
構成を示した模式図である。この機能メモリプロセッサ
100には、従来例(図6参照)と同様に、キーワード
レジスタ120、マスクレジスタ140、多数のワード
メモリ160(ここでは1つのみ示されている)が備え
られているが、各レジスタ/メモリ120,140,1
60はアドレス部Adと2つのデータ部A、Bが備えら
れているものと観念される。ここで2つのデータ部A、
Bを観念するのは、以下の説明の都合上のことであっ
て、従来例の場合と同様な1つのデータ部Dataを上
位ビット側と下位ビット側とに分けてそれぞれをデータ
部A、データ部Bと称してもよい。各レジスタ/メモリ
120,140,160には、従来例の場合と同様に、
キーワードデータ、マスクデータ、ワードデータが入
力、記憶される。尚、ここでは、マスクデータは、
‘0’のビットがマスクをかけることに対応している。
1は、本発明の機能メモリプロセッサの一実施例の基本
構成を示した模式図である。この機能メモリプロセッサ
100には、従来例(図6参照)と同様に、キーワード
レジスタ120、マスクレジスタ140、多数のワード
メモリ160(ここでは1つのみ示されている)が備え
られているが、各レジスタ/メモリ120,140,1
60はアドレス部Adと2つのデータ部A、Bが備えら
れているものと観念される。ここで2つのデータ部A、
Bを観念するのは、以下の説明の都合上のことであっ
て、従来例の場合と同様な1つのデータ部Dataを上
位ビット側と下位ビット側とに分けてそれぞれをデータ
部A、データ部Bと称してもよい。各レジスタ/メモリ
120,140,160には、従来例の場合と同様に、
キーワードデータ、マスクデータ、ワードデータが入
力、記憶される。尚、ここでは、マスクデータは、
‘0’のビットがマスクをかけることに対応している。
【0014】キーワードデータのうちマスクデータでマ
スクされていない部分のみからなる検索データは、各ワ
ードメモリ160に伝えられ、この図1には図示されて
いない一致検出回路により各ワードメモリ160に記憶
された各ワードデータと検索データとの一致不一致が検
出され、各ワードメモリ160毎に備えられた検索一致
線180に、一致する場合は‘1’、不一致の場合は
‘0’の一致信号が出力される。このワードメモリ16
0の構造については後述する。
スクされていない部分のみからなる検索データは、各ワ
ードメモリ160に伝えられ、この図1には図示されて
いない一致検出回路により各ワードメモリ160に記憶
された各ワードデータと検索データとの一致不一致が検
出され、各ワードメモリ160毎に備えられた検索一致
線180に、一致する場合は‘1’、不一致の場合は
‘0’の一致信号が出力される。このワードメモリ16
0の構造については後述する。
【0015】また各ワードメモリ160に対応して各フ
ルアダー200が備えられている。このフルアダー20
0には、2つの入力端子202,204、キャリーレジ
スタ206、結果レジスタ208が備えられており、2
つの入力端子202,204から入力された各ビットデ
ータが互いに加算されるとともにキャリーインフラグC
inが加算され、その加算結果は結果レジスタにセットさ
れ、キャリーアウトフラグCout がキャリーレジスタ2
06にセットされる。このフルアダー200の2つの入
力端子202,204のうちの一方の入力端子202に
は上記検索一致線180が接続されており、他方の入力
端子204には結果レジスタ208の出力端子に接続さ
れた結果出力線210が接続されている。この結果出力
線210は、さらにワードメモリ160にも接続されて
いる。またこのフルアダー200には入力端子202か
ら入力されたビットデータ(一致信号)をそのまま通過
させて結果レジスタ208にセットするスルー機能が付
加されている。
ルアダー200が備えられている。このフルアダー20
0には、2つの入力端子202,204、キャリーレジ
スタ206、結果レジスタ208が備えられており、2
つの入力端子202,204から入力された各ビットデ
ータが互いに加算されるとともにキャリーインフラグC
inが加算され、その加算結果は結果レジスタにセットさ
れ、キャリーアウトフラグCout がキャリーレジスタ2
06にセットされる。このフルアダー200の2つの入
力端子202,204のうちの一方の入力端子202に
は上記検索一致線180が接続されており、他方の入力
端子204には結果レジスタ208の出力端子に接続さ
れた結果出力線210が接続されている。この結果出力
線210は、さらにワードメモリ160にも接続されて
いる。またこのフルアダー200には入力端子202か
ら入力されたビットデータ(一致信号)をそのまま通過
させて結果レジスタ208にセットするスルー機能が付
加されている。
【0016】図2は、ワードメモリを構成するi番目の
メモリセルを表わした回路図である。図2の上側には左
右方向にワード線161が延び、下側には左右方向に互
いに逆論理の信号C、C´が伝送される一対の結果出力
線160,160´が延び、図の左右には図の縦方向
に、互いに逆論理の信号B、B´が伝送される一対のビ
ット線162,162´が延びている。
メモリセルを表わした回路図である。図2の上側には左
右方向にワード線161が延び、下側には左右方向に互
いに逆論理の信号C、C´が伝送される一対の結果出力
線160,160´が延び、図の左右には図の縦方向
に、互いに逆論理の信号B、B´が伝送される一対のビ
ット線162,162´が延びている。
【0017】このメモリはSRAM構造を有しており、
入力セレクト信号WSが‘0’の場合は一対のビット線
162、162´から入力されるビットデータが記憶さ
れ、あるいは記憶されたビットデータが一対のビット線
162、162´を経由して出力される。また入力セレ
クト信号WSが‘1’の場合は、一対の結果出力線21
0、210´の信号C,C´、即ち図1に示す結果レジ
スタ208にセットされた信号が入力されるモードとな
る。
入力セレクト信号WSが‘0’の場合は一対のビット線
162、162´から入力されるビットデータが記憶さ
れ、あるいは記憶されたビットデータが一対のビット線
162、162´を経由して出力される。また入力セレ
クト信号WSが‘1’の場合は、一対の結果出力線21
0、210´の信号C,C´、即ち図1に示す結果レジ
スタ208にセットされた信号が入力されるモードとな
る。
【0018】また、このメモリセルにはライトネーブル
信号WEi が入力されるように構成されており、このラ
イトネーブル信号WEi が‘0’の場合はこのメモリセ
ルはアクセスされないマスクがかけられた状態となり、
‘1’の場合はこのメモリセルにアクセスが可能なマス
クが解除された状態となる。またこのメモリセルの記憶
内容は互いに逆論理の信号m,m´として各メモリセル
毎に備えられた、以下に述べる一致検索回路に入力され
る。
信号WEi が入力されるように構成されており、このラ
イトネーブル信号WEi が‘0’の場合はこのメモリセ
ルはアクセスされないマスクがかけられた状態となり、
‘1’の場合はこのメモリセルにアクセスが可能なマス
クが解除された状態となる。またこのメモリセルの記憶
内容は互いに逆論理の信号m,m´として各メモリセル
毎に備えられた、以下に述べる一致検索回路に入力され
る。
【0019】図3は、図2に示す各メモリセル毎に備え
られた一致検索回路を示した回路図である。この一致検
索回路にはスルー機能も付加されている。キーワードレ
ジスタ160にセットされたキーワードデータのうち、
このメモリに対応するビットデータBi ,Bi ´がビッ
ト線対162、162´を経由して入力され、メモリセ
ル(図2参照)に記憶されたビットデータm,m´との
イクスクルーシブオア(XOR)が演算され、そのイク
スクルーシブオア信号XORがノード163に現れる。
このイクスクルーシブオア信号XORは、スルー信号T
hruが‘0’の場合ノード164に伝送される。尚、
スルー信号Thruが‘1’の場合はノード164には
検索ビットデータBの逆論理の信号B´が出力される。
さらに各ビット毎のリードイネーブル信号REi が
‘1’の場合、このイクスクルーシブオア信号XORが
ノード165にまで伝達される。このリードイネーブル
信号REi は、対応する検索ビットデータが‘1’のと
き、即ちマスクがかけられていないときリードイネーブ
ル状態‘1’となり、対応する検索ビットデータが
‘0’のとき、即ちマスクがかけられているときは
‘0’となってノード165は接地される。
られた一致検索回路を示した回路図である。この一致検
索回路にはスルー機能も付加されている。キーワードレ
ジスタ160にセットされたキーワードデータのうち、
このメモリに対応するビットデータBi ,Bi ´がビッ
ト線対162、162´を経由して入力され、メモリセ
ル(図2参照)に記憶されたビットデータm,m´との
イクスクルーシブオア(XOR)が演算され、そのイク
スクルーシブオア信号XORがノード163に現れる。
このイクスクルーシブオア信号XORは、スルー信号T
hruが‘0’の場合ノード164に伝送される。尚、
スルー信号Thruが‘1’の場合はノード164には
検索ビットデータBの逆論理の信号B´が出力される。
さらに各ビット毎のリードイネーブル信号REi が
‘1’の場合、このイクスクルーシブオア信号XORが
ノード165にまで伝達される。このリードイネーブル
信号REi は、対応する検索ビットデータが‘1’のと
き、即ちマスクがかけられていないときリードイネーブ
ル状態‘1’となり、対応する検索ビットデータが
‘0’のとき、即ちマスクがかけられているときは
‘0’となってノード165は接地される。
【0020】ここで検索一致線180に一致信号MLを
出力するには、先ず信号S1が‘1’となって検索一致
線180に電荷をチャージし、その後該信号S1を
‘0’とする。その後この図3に示す一致検出回路によ
りイクスクルーシブオア信号XORを得、このワードメ
モリの全てのビットについてイクスクルーシブオア信号
XORが決定された後信号S2が‘1’となる。このと
き1ビットでも不一致であればそのビットについてイク
スクルーシブオア信号XORが‘1’となり検索一致線
18にチャージされた電荷は放電されることになる。し
たがって検索一致線180には検索データとワードデー
タが一致すると‘1’、1ビットでも相違すると‘0’
の一致信号MLが出力されることになる。尚、マスクさ
れているビットに関してはリードネーブル信号REi が
‘0’となり、したがってノード165には、ビット線
を経由して入力された検索ビットデータB,B´とメモ
リセルに記憶されたビットデータm、m´とが一致して
いる場合と同じ‘0’が出力される。即ちマスクがかけ
られたビットに関しては一致しているものとみなされる
ことになる。またマスクがかけられていない状態におい
てスルー信号Thruが‘1’のときはノード165に
は信号B´が現れ、したがって検索ビットデータBi が
‘0’,‘1’のときは、このビットについては検索一
致線180にそれぞれ‘0’,‘1’が出力されること
になる。
出力するには、先ず信号S1が‘1’となって検索一致
線180に電荷をチャージし、その後該信号S1を
‘0’とする。その後この図3に示す一致検出回路によ
りイクスクルーシブオア信号XORを得、このワードメ
モリの全てのビットについてイクスクルーシブオア信号
XORが決定された後信号S2が‘1’となる。このと
き1ビットでも不一致であればそのビットについてイク
スクルーシブオア信号XORが‘1’となり検索一致線
18にチャージされた電荷は放電されることになる。し
たがって検索一致線180には検索データとワードデー
タが一致すると‘1’、1ビットでも相違すると‘0’
の一致信号MLが出力されることになる。尚、マスクさ
れているビットに関してはリードネーブル信号REi が
‘0’となり、したがってノード165には、ビット線
を経由して入力された検索ビットデータB,B´とメモ
リセルに記憶されたビットデータm、m´とが一致して
いる場合と同じ‘0’が出力される。即ちマスクがかけ
られたビットに関しては一致しているものとみなされる
ことになる。またマスクがかけられていない状態におい
てスルー信号Thruが‘1’のときはノード165に
は信号B´が現れ、したがって検索ビットデータBi が
‘0’,‘1’のときは、このビットについては検索一
致線180にそれぞれ‘0’,‘1’が出力されること
になる。
【0021】また、図1に示す機能メモリプロセッサ1
00について、従来の機能メモリプロセッサ(図6参
照)と異なる回路部分として、ワードメモリ160以外
にフルアダー200が備えられているが、このフルアダ
ー200の回路構成そのものについては広く知られた技
術であるため、ここではその回路構成についての図示及
び説明は省略する。また、このフルアダー200におい
て各ビット毎に順次演算を行なうためにワードメモリ1
60のうちの所定のビットのデータをフルアダ−200
に送り他のビットについてはマスクしておく等の各種制
御についても当然に行われるものとし、ここでは特に説
明は行なわない。
00について、従来の機能メモリプロセッサ(図6参
照)と異なる回路部分として、ワードメモリ160以外
にフルアダー200が備えられているが、このフルアダ
ー200の回路構成そのものについては広く知られた技
術であるため、ここではその回路構成についての図示及
び説明は省略する。また、このフルアダー200におい
て各ビット毎に順次演算を行なうためにワードメモリ1
60のうちの所定のビットのデータをフルアダ−200
に送り他のビットについてはマスクしておく等の各種制
御についても当然に行われるものとし、ここでは特に説
明は行なわない。
【0022】以下に、図1に示す機能メモリプロセッサ
において、従来例おいて示した命令に追加,変更される
命令を示す。 (E) REF ADD <address, dat
aA, DataB> キーワードレジスタ120のアドレス部Ad,データ部
A,データ部Bにそれぞれ値address,data
A,dataBをセットし、キーワードレジスタ160
にセットされた内容もしくはキーワードレジスタ16に
セットされた内容とメモリセルに記憶された内容とのア
ンドを、マスクされていないビットに関して検索一致線
180に出力する。キーワードレジスタ16にセットさ
れた内容を出力するか、あるいはキーワードレジスタ1
60にセットされた内容とメモリセルに記憶された内容
とのアンドを出力するかはスルー信号Thruによって
決定される。図3に示すようにスルー信号Thruが’
1’ならばキーワードレジスタ160の内容、スルー信
号Thruが’0’ならばキーワードレジスタ160の
内容とメモリセルの内容とのアンドが出力される。ここ
でスルー信号Thruは、アドレス部Ad,データ部
A,データ部Bのそれぞれに応じてThru_Ad,T
hru_A,Thru_Bと表記する。
において、従来例おいて示した命令に追加,変更される
命令を示す。 (E) REF ADD <address, dat
aA, DataB> キーワードレジスタ120のアドレス部Ad,データ部
A,データ部Bにそれぞれ値address,data
A,dataBをセットし、キーワードレジスタ160
にセットされた内容もしくはキーワードレジスタ16に
セットされた内容とメモリセルに記憶された内容とのア
ンドを、マスクされていないビットに関して検索一致線
180に出力する。キーワードレジスタ16にセットさ
れた内容を出力するか、あるいはキーワードレジスタ1
60にセットされた内容とメモリセルに記憶された内容
とのアンドを出力するかはスルー信号Thruによって
決定される。図3に示すようにスルー信号Thruが’
1’ならばキーワードレジスタ160の内容、スルー信
号Thruが’0’ならばキーワードレジスタ160の
内容とメモリセルの内容とのアンドが出力される。ここ
でスルー信号Thruは、アドレス部Ad,データ部
A,データ部Bのそれぞれに応じてThru_Ad,T
hru_A,Thru_Bと表記する。
【0023】また、この命令によりフルアダー200の
スルー機能は解除されてこのフルアダー200が加算を
行う状態とされる。尚、キーワードレジスタ160のア
ドレスAdにセットされる値Addressと一致しな
い値がアドレス部Adに記憶されているワードメモリ1
60については、その検索一致線180には常に’0’
が出力される。
スルー機能は解除されてこのフルアダー200が加算を
行う状態とされる。尚、キーワードレジスタ160のア
ドレスAdにセットされる値Addressと一致しな
い値がアドレス部Adに記憶されているワードメモリ1
60については、その検索一致線180には常に’0’
が出力される。
【0024】(F)WRITE C <addres
s, dataA, DataB> 前述した従来例の場合の命令(B)がこの命令に置換さ
れる。結果レジスタ208にセットされている内容C、
またはキーワードレジスタ120の対応するビットにセ
ットされているデータのうちマスクされていないビット
に対するデータを対応するメモリセルに書き込む。ただ
し各ワードメモリ160のアドレス部Adに記憶されて
いるアドレスが値Addressでないワードメモリ1
60については書込みは行われずそのメモリセルの内容
がそのまま保持される。ここで、結果レジスタ208に
セットされている内容Cをメモリセルに書き込むか、あ
るいはキーワードレジスタ120にセットされている内
容をメモリセルに書き込むかは、入力セレクト信号WS
(図2参照)によって決定され、WS=0ならばビット
線162,162’を経由して入力されるキーワードレ
ジスタ120側の信号B,B’、WS=1ならば結果出
力線210,210’を経由して入力される信号Cが書
き込まれる。
s, dataA, DataB> 前述した従来例の場合の命令(B)がこの命令に置換さ
れる。結果レジスタ208にセットされている内容C、
またはキーワードレジスタ120の対応するビットにセ
ットされているデータのうちマスクされていないビット
に対するデータを対応するメモリセルに書き込む。ただ
し各ワードメモリ160のアドレス部Adに記憶されて
いるアドレスが値Addressでないワードメモリ1
60については書込みは行われずそのメモリセルの内容
がそのまま保持される。ここで、結果レジスタ208に
セットされている内容Cをメモリセルに書き込むか、あ
るいはキーワードレジスタ120にセットされている内
容をメモリセルに書き込むかは、入力セレクト信号WS
(図2参照)によって決定され、WS=0ならばビット
線162,162’を経由して入力されるキーワードレ
ジスタ120側の信号B,B’、WS=1ならば結果出
力線210,210’を経由して入力される信号Cが書
き込まれる。
【0025】以下、入力セレクト信号WSを、アドレス
部Ad,データ部A,データ部Bに応じて、WS_A
d,WS_A,WS_Bと表記する。 (G)RESET SIG ・Thru_Ad=Thru_A=Thru_B=0 とし、かつ ・WS_Ad=WS_A=WS_B=0 とする。
部Ad,データ部A,データ部Bに応じて、WS_A
d,WS_A,WS_Bと表記する。 (G)RESET SIG ・Thru_Ad=Thru_A=Thru_B=0 とし、かつ ・WS_Ad=WS_A=WS_B=0 とする。
【0026】(H)THRU_A ON Thru_A=1とする。Thru_Ad,Thru_
Bについても同様である。 (I)THRU_A OFF Thru_A=0とする。Thru_Ad,Thru_
Bについても同様である。
Bについても同様である。 (I)THRU_A OFF Thru_A=0とする。Thru_Ad,Thru_
Bについても同様である。
【0027】(J)WS_A ON WS_A=1とする。WS_Ad,WS_Bについても
同様である。 (K)WS_A OFF WS_A=0とする。WS_Ad,WS_Bについても
同様である。 尚、他の命令については、データ部がデータ部Aとデー
タ部Bに分割されており、したがってアドレス部Adを
含めて<>内に3つの値address,dataA,
dataBが表記されることを除き、前述した従来例と
同様であるため、ここでは説明は省略する。
同様である。 (K)WS_A OFF WS_A=0とする。WS_Ad,WS_Bについても
同様である。 尚、他の命令については、データ部がデータ部Aとデー
タ部Bに分割されており、したがってアドレス部Adを
含めて<>内に3つの値address,dataA,
dataBが表記されることを除き、前述した従来例と
同様であるため、ここでは説明は省略する。
【0028】以上のように定義された命令を用いて、多
数の各ワードメモリ160のデータ部Aに記憶されたデ
ータ{ak }j (jはワードメモリの番号を表わす)と
データ部Bに記憶された{bk }j の加算を行い、同じ
ワードメモリ160のデータ部Aに加算後の値を記録す
る場合には、図4に示す命令群となる。ここでnはアド
レス部Adのビット長,mは各データ部A,Bのそれぞ
れのビット長を表わし、ここではアドレス部Adのi番
目のビットが’1’のワードメモリについてのみ加算演
算が行われる。
数の各ワードメモリ160のデータ部Aに記憶されたデ
ータ{ak }j (jはワードメモリの番号を表わす)と
データ部Bに記憶された{bk }j の加算を行い、同じ
ワードメモリ160のデータ部Aに加算後の値を記録す
る場合には、図4に示す命令群となる。ここでnはアド
レス部Adのビット長,mは各データ部A,Bのそれぞ
れのビット長を表わし、ここではアドレス部Adのi番
目のビットが’1’のワードメモリについてのみ加算演
算が行われる。
【0029】図4に示すように、先ず初期化作業とし
て、全ての結果レジスタ208に’0’がセットされ
(命令(1))、Thru_Ad=Thru_A=Th
ru_B=0(検索一致線180に検索結果を出力す
る)とされ、WS_Ad=WS_A=WS_B=0(メ
モリセルをキーワードレジスタ120側(ビット線16
2,162’側)に接続する(図2参照))とされ(命
令(2))、このうちWS_Aのみ’1’(メモリセル
を結果出力線210,210’側に接線する)とされる
(命令(3))。
て、全ての結果レジスタ208に’0’がセットされ
(命令(1))、Thru_Ad=Thru_A=Th
ru_B=0(検索一致線180に検索結果を出力す
る)とされ、WS_Ad=WS_A=WS_B=0(メ
モリセルをキーワードレジスタ120側(ビット線16
2,162’側)に接続する(図2参照))とされ(命
令(2))、このうちWS_Aのみ’1’(メモリセル
を結果出力線210,210’側に接線する)とされる
(命令(3))。
【0030】次に、データA,データBのmビットにつ
いて各ビット毎に以下の(4)〜(8)の5命令が繰り
返される。先ず、マスクレジスタ140にそれぞれの値
を設定する(命令(4))。ここではマスクレジスタ1
40のnビットからなるアドレス部Adのi番目のビッ
トのみに’1’がセットされ、データ部Aについてはm
ビットすべてが’0’とされ、データ部Bについてはm
ビット中のk番目のビットのみが’1’(即ちマスク解
除)とされる。即ち、ここでは各ワードメモリ160の
アドレス部Adのi番目のビットに’1’が記憶されて
いるワードメモリについてのみ処理が行われることとな
り、またデータ部Aについては全ての操作が無視される
こととなる。次に命令(5)において各選択されたワー
ドメモリ(アドレス部Adのi番目のビットが’1’で
あるワードメモリをいう)のデータ部Bのk番目のビッ
トデータが検索一致線180に出力され、フルアダー2
00がスルー状態とされて結果レジスタ208にそのk
番目のビットデータが保持される。次に命令(6)にお
いてデータ部Aのk番目のマスクが解除され、次に、フ
ルアダー200において、出力されたデータ部Aのk番
目のビットデータと結果レジスタ208にセットされて
いるデータ部Bのk番目のビットデータとの加算演算が
行われ(命令(7))、その後、加算結果(加算演算後
の結果レジスタ208の内容C)がワードメモリ160
のデータ部Aのk番目のメモリセルに記憶される(命令
(8))。この(4)〜(8)の命令がm回繰り返され
て加算演算が完了する。
いて各ビット毎に以下の(4)〜(8)の5命令が繰り
返される。先ず、マスクレジスタ140にそれぞれの値
を設定する(命令(4))。ここではマスクレジスタ1
40のnビットからなるアドレス部Adのi番目のビッ
トのみに’1’がセットされ、データ部Aについてはm
ビットすべてが’0’とされ、データ部Bについてはm
ビット中のk番目のビットのみが’1’(即ちマスク解
除)とされる。即ち、ここでは各ワードメモリ160の
アドレス部Adのi番目のビットに’1’が記憶されて
いるワードメモリについてのみ処理が行われることとな
り、またデータ部Aについては全ての操作が無視される
こととなる。次に命令(5)において各選択されたワー
ドメモリ(アドレス部Adのi番目のビットが’1’で
あるワードメモリをいう)のデータ部Bのk番目のビッ
トデータが検索一致線180に出力され、フルアダー2
00がスルー状態とされて結果レジスタ208にそのk
番目のビットデータが保持される。次に命令(6)にお
いてデータ部Aのk番目のマスクが解除され、次に、フ
ルアダー200において、出力されたデータ部Aのk番
目のビットデータと結果レジスタ208にセットされて
いるデータ部Bのk番目のビットデータとの加算演算が
行われ(命令(7))、その後、加算結果(加算演算後
の結果レジスタ208の内容C)がワードメモリ160
のデータ部Aのk番目のメモリセルに記憶される(命令
(8))。この(4)〜(8)の命令がm回繰り返され
て加算演算が完了する。
【0031】このように、本実施例においては、各ビッ
ト毎に繰り返される命令は図4に示す(4)〜(8)の
5ステップで済み、したがって従来よりも高速な加算演
算が可能となる。また各ワードメモリ160のデータ部
Aに記憶された{ak }j とデータ部Bに記憶された内
容{bk }j を各ワードメモリ毎に加算することができ
るという、従来にない機能を備えた機能メモリプロセッ
サとなる。
ト毎に繰り返される命令は図4に示す(4)〜(8)の
5ステップで済み、したがって従来よりも高速な加算演
算が可能となる。また各ワードメモリ160のデータ部
Aに記憶された{ak }j とデータ部Bに記憶された内
容{bk }j を各ワードメモリ毎に加算することができ
るという、従来にない機能を備えた機能メモリプロセッ
サとなる。
【0032】また、本実施例においては、各メモリセル
にスルー機能が付加されているため、次にこの機能を用
いて各選択されたワードメモリのデータ部Aに記憶され
た各値{ak }j に一定の定数{bk }を加算する、従
来と同様な加算演算について説明する。図5は、この加
算演算を行うための命令群を表わした図である。ここで
は図4に示す各命令と相違する命令についてのみ説明す
る。
にスルー機能が付加されているため、次にこの機能を用
いて各選択されたワードメモリのデータ部Aに記憶され
た各値{ak }j に一定の定数{bk }を加算する、従
来と同様な加算演算について説明する。図5は、この加
算演算を行うための命令群を表わした図である。ここで
は図4に示す各命令と相違する命令についてのみ説明す
る。
【0033】命令(1),(2)については図4の場合
と同様であり、命令(3)においてThru_B=1、
即ちデータ部Bについて、図3に示すようにビット線1
62,162’を経由して入力された信号がそのまま検
索一致線180に出力される状態とされる。また命令
(4)において、WS_A=1、即ちデータ部Aについ
て、入力セレクト信号WS(図2参照)によりメモリセ
ルへの入力線が結果出力線を10側に切り換えられる。
と同様であり、命令(3)においてThru_B=1、
即ちデータ部Bについて、図3に示すようにビット線1
62,162’を経由して入力された信号がそのまま検
索一致線180に出力される状態とされる。また命令
(4)において、WS_A=1、即ちデータ部Aについ
て、入力セレクト信号WS(図2参照)によりメモリセ
ルへの入力線が結果出力線を10側に切り換えられる。
【0034】次に加算データ{ak }j 、被加算データ
{bk }のビット長mだけ以下の(5)〜(9)の5命
令が繰り返される。命令(5)については、図4におけ
る命令(3)と同一であり、それぞれの値がマスクレジ
スタ140にセットされる。命令(6)において、フル
アダー200がスルー状態され、値bk が結果レジスタ
208にセットされる。
{bk }のビット長mだけ以下の(5)〜(9)の5命
令が繰り返される。命令(5)については、図4におけ
る命令(3)と同一であり、それぞれの値がマスクレジ
スタ140にセットされる。命令(6)において、フル
アダー200がスルー状態され、値bk が結果レジスタ
208にセットされる。
【0035】命令(7)については、図4における命令
(5)と同一である。命令(8)については、各選択さ
れてたワードメモリ160のデータ部Aのk番目のビッ
トデータak が読出され、このak に結果レジスタ20
8にセットされている値bk が加算される。この加算結
果は、命令(8)により選択されている各ワードメモリ
160のデータ部Aのk番目のメモリセルに格納され
る。
(5)と同一である。命令(8)については、各選択さ
れてたワードメモリ160のデータ部Aのk番目のビッ
トデータak が読出され、このak に結果レジスタ20
8にセットされている値bk が加算される。この加算結
果は、命令(8)により選択されている各ワードメモリ
160のデータ部Aのk番目のメモリセルに格納され
る。
【0036】このように、この場合も各ビット毎の演算
は5ステップ(命令(5)〜(9))で済み、しかも’
if’文も不要であり、従来と比べ高速な加算演算が可
能となる。
は5ステップ(命令(5)〜(9))で済み、しかも’
if’文も不要であり、従来と比べ高速な加算演算が可
能となる。
【0037】
【発明の効果】以上詳細に説明したように、本発明の機
能メモリプロセッサは、スルー機能が付加されたフルア
ダーを備え、このフルアダーに備えられた結果レジスタ
の出力を結果出力線を経由してワードメモリに戻して記
憶させる機能を備えたため、各ワードメモリ中の2つの
データ部A,Bにそれぞれ記憶された値{ak }j ,
{bk }j を高速並列加算することができる。
能メモリプロセッサは、スルー機能が付加されたフルア
ダーを備え、このフルアダーに備えられた結果レジスタ
の出力を結果出力線を経由してワードメモリに戻して記
憶させる機能を備えたため、各ワードメモリ中の2つの
データ部A,Bにそれぞれ記憶された値{ak }j ,
{bk }j を高速並列加算することができる。
【0038】また、各ワードメモリにスルー機能を付加
した場合は、従来と同様な各ワードメモリに記憶された
値{ak }j に定数{bk }を加算することができ、し
かも従来よりも高速に加算演算を行うことができる。
した場合は、従来と同様な各ワードメモリに記憶された
値{ak }j に定数{bk }を加算することができ、し
かも従来よりも高速に加算演算を行うことができる。
【図1】本発明の機能メモリプロセッサの一実施例の基
本構成を示した模式図である。
本構成を示した模式図である。
【図2】図1に示す機能メモリプロセッサの各ワードメ
モリを構成するi番目のメモリセルを表わした図であ
る。
モリを構成するi番目のメモリセルを表わした図であ
る。
【図3】図2に示す各メモリセル毎に備えられた一致検
索回路を示した回路図である。
索回路を示した回路図である。
【図4】加算演算を行う命令群を示した図である。
【図5】加算演算を行う他の命令群を示した図である。
【図6】従来の機能メモリプロセッサの基本構成を示し
た模式図である。
た模式図である。
【図7】図6に示す従来の機能メモリプロセッサにおけ
る、加算演算を行う命令群を示した図である。
る、加算演算を行う命令群を示した図である。
120 キーワードレジスタ 140 マスクレジスタ 160 ワードメモリ 161 ワード線 162,162’ ビット線 180 検索一致線 200 フルアダー 206 キャリーレジスタ 208 結果レジスタ 210,210’ 結果出力線
Claims (2)
- 【請求項1】 キーワードデータがセットされるキーワ
ードレジスタ、 該キーワードレジスタにセットされたキーワードデータ
を構成する各ビットデータのうち一致検索に用いるビッ
トデータと用いないビットデータとを区分するマスクデ
ータがセットされるマスクレジスタ、 多数のワードデータをそれぞれ記憶する多数のワードメ
モリ、および該多数のワードメモリのそれぞれに対応し
て備えられた、第一のビットデータ入力端子と、第二の
ビットデータ入力端子と、キャリーフラグがセットされ
るキャリーレジスタと、加算結果がセットされる、出力
端子が前記第二のビットデータ入力端子と接続された結
果レジスタとを有し、前記第一のビットデータ入力端子
から入力されたビットデータをそのまま通過させて前記
結果レジスタにセットするスルー機能が付加されたフル
アダーを備え、 前記多数の各ワードメモリが、 該ワードメモリに対応する前記フルアダーの前記第一の
ビットデータ入力端子と接続された検索一致線、 該フルアダーの前記第二のビットデータ入力端子と接続
された結果出力線、 該ワードメモリを構成する各メモリセル毎に備えられ
た、前記キーワードレジスタにセットされたキーワード
データを構成する各ビットデータのうち前記一致検索に
用いるビットデータで構成された検索データを構成する
該メモリセルに対応する検索ビットデータと該メモリセ
ルに記憶されたビットデータとの一致不一致を検索し、
該ワードメモリに記憶されたワードデータと前記検索デ
ータとの一致と不一致とを区別する一致信号が前記検索
一致線に出力されるように、該検索一致線にビット一致
信号を出力する一致検出回路、および該ワードメモリを
構成する各メモリセル毎に備えられた、ビット線を経由
して入力されたビットデータと前記結果出力線を経由し
て入力された前記結果レジスタの出力ビットデータとを
切換えて該各メモリセルに入力する切換回路を備えたこ
とを特徴とする機能メモリプロセッサ。 - 【請求項2】 前記多数の各ワードメモリが、前記検索
ビットデータを前記検索一致線に出力するスルー機能を
備えたことを特徴とする請求項1記載の機能メモリプロ
セッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34566991A JPH05182471A (ja) | 1991-12-27 | 1991-12-27 | 機能メモリプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34566991A JPH05182471A (ja) | 1991-12-27 | 1991-12-27 | 機能メモリプロセッサ |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05182471A true JPH05182471A (ja) | 1993-07-23 |
Family
ID=18378167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34566991A Withdrawn JPH05182471A (ja) | 1991-12-27 | 1991-12-27 | 機能メモリプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05182471A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0973793A (ja) * | 1995-08-31 | 1997-03-18 | Nec Corp | 連想記憶装置 |
-
1991
- 1991-12-27 JP JP34566991A patent/JPH05182471A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0973793A (ja) * | 1995-08-31 | 1997-03-18 | Nec Corp | 連想記憶装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6396732B1 (en) | Semiconductor memory apparatus, semiconductor apparatus, data processing apparatus and computer system | |
US4975873A (en) | Content addressable memory with flag storage to indicate memory state | |
US6392910B1 (en) | Priority encoder with multiple match function for content addressable memories and methods for implementing the same | |
US5497488A (en) | System for parallel string search with a function-directed parallel collation of a first partition of each string followed by matching of second partitions | |
JPH0271497A (ja) | 内容でアドレス指定可能なメモリ・システム | |
JPH0676583A (ja) | 内容番地付記憶装置および一致ワード不要化方法 | |
JP2715465B2 (ja) | 記号列照合装置 | |
JPS6120157A (ja) | データ処理システム | |
JPH05182471A (ja) | 機能メモリプロセッサ | |
JPS58146088A (ja) | メモリ回路 | |
US6879523B1 (en) | Random access memory (RAM) method of operation and device for search engine systems | |
JPH0312896A (ja) | 半導体記憶装置 | |
JPS6031040B2 (ja) | メモリ用集積回路装置 | |
JPH07114076B2 (ja) | 半導体記憶装置 | |
JP2783954B2 (ja) | 連想メモリ装置 | |
RU1805499C (ru) | Ассоциативное запоминающее устройство | |
JPH0315772B2 (ja) | ||
JPH0550078B2 (ja) | ||
Hurson et al. | Modular scheme for designing special purpose associative memories and beyond | |
JPS6214919B2 (ja) | ||
JP2616714B2 (ja) | 半導体記憶装置 | |
JPH01290194A (ja) | 選択的連想記憶装置及びその制御方式 | |
JPH03100997A (ja) | 選択的連想記憶装置及びその制御方式 | |
JPH0585988B2 (ja) | ||
JPH0278091A (ja) | デュアル・ポート・メモリ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990311 |