JPS6069748A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPS6069748A JPS6069748A JP58177773A JP17777383A JPS6069748A JP S6069748 A JPS6069748 A JP S6069748A JP 58177773 A JP58177773 A JP 58177773A JP 17777383 A JP17777383 A JP 17777383A JP S6069748 A JPS6069748 A JP S6069748A
- Authority
- JP
- Japan
- Prior art keywords
- information
- associative memory
- predicate
- memory device
- control system
- 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.)
- Pending
Links
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は記憶領域に格納されているプログラム情報を取
出し、取出されたプログラム情報に基づいて情報処理を
行う情報処理装置に関し、特に述語論理型言語の代表で
あるP rologのごとき非決定性処理に好適な情報
処理装置に関する。
出し、取出されたプログラム情報に基づいて情報処理を
行う情報処理装置に関し、特に述語論理型言語の代表で
あるP rologのごとき非決定性処理に好適な情報
処理装置に関する。
ストアトプログラム方式の情報処理装置は、第1図に示
すごとくプログラム情報は通常のランダムアクセスメモ
リ装置(RAM)13内のプログラム情報格納領域13
aに格納しており、プログラムカウンタ(PC’>12
の値によって、この値に対する番地に格納されているプ
ログラム情報を取出し、取出されたプログラム情報に基
づいて情報処理装置(CPU)11とRAM13のワー
ク領域13bを用いて情報処理を行う構成となっている
。ワーク領域13bは処理を進めていく上で必要な記憶
領域である。
すごとくプログラム情報は通常のランダムアクセスメモ
リ装置(RAM)13内のプログラム情報格納領域13
aに格納しており、プログラムカウンタ(PC’>12
の値によって、この値に対する番地に格納されているプ
ログラム情報を取出し、取出されたプログラム情報に基
づいて情報処理装置(CPU)11とRAM13のワー
ク領域13bを用いて情報処理を行う構成となっている
。ワーク領域13bは処理を進めていく上で必要な記憶
領域である。
一般的な汎用計算機の構成は第1図と同じであるが、こ
のような構成を持つ情報処理装置の場合、例えばF o
rtranのような逐次処理を前提とし決定性処理を基
本とする情報処理(次に何を実行するかがプログラムの
段階で決定されている)は、効率的に行われる。これは
、現在の汎用a1算機の鵬栄を見ても明らかである。し
かし、このような情報処理装置においては、プログラム
情報および情報処理の性格によっては、制御が複雑とな
り、処理速度の高速化が図れないという問題がある。こ
こでは、その−例として述語論理型言語の代表であるp
rologを取り上げ説明する。
のような構成を持つ情報処理装置の場合、例えばF o
rtranのような逐次処理を前提とし決定性処理を基
本とする情報処理(次に何を実行するかがプログラムの
段階で決定されている)は、効率的に行われる。これは
、現在の汎用a1算機の鵬栄を見ても明らかである。し
かし、このような情報処理装置においては、プログラム
情報および情報処理の性格によっては、制御が複雑とな
り、処理速度の高速化が図れないという問題がある。こ
こでは、その−例として述語論理型言語の代表であるp
rologを取り上げ説明する。
第2図はP rologのプログ、ラム(積木の例)と
事物関係のl界を示す図である。P rologは第2
図に示すように節で記述され、その節は述語と呼ばれる
構成要素よりなり立っている。述語は、述語名(引数1
.引数2.・・)(第2図では例えばo n (A、
B) ’)という表現形式で表される。
事物関係のl界を示す図である。P rologは第2
図に示すように節で記述され、その節は述語と呼ばれる
構成要素よりなり立っている。述語は、述語名(引数1
.引数2.・・)(第2図では例えばo n (A、
B) ’)という表現形式で表される。
P rologのプログラムは宣言節と規則節によりデ
ータベース(事物関係の世界)を創り上げる。このデー
タベースに対して間合せ節が与えられると、自動的にデ
ータベースの中の規則節により述語を置き換えて宣言節
に導くことにより答えを得る。
ータベース(事物関係の世界)を創り上げる。このデー
タベースに対して間合せ節が与えられると、自動的にデ
ータベースの中の規則節により述語を置き換えて宣言節
に導くことにより答えを得る。
P rologの実行は、まずユニフィケーションと呼
ばJしる述語同士の照合から開始される。ユニフィケー
ションでは、まず間合せ節が与えられると間合せ節の先
頭の述語名と同じ述語名をヘッド部に持つ節をプログラ
ム内から取出さなければ成らなイ(以下、ユニフィケー
ションにおける間合せ述語名の検索と書く)。それ以降
のP rologの処理は、ユニフィケーションにおけ
る間合せ述語名の検索の処理の確定後起動される。この
ため、Prologの処理装置の高速化を図る場合、ユ
ニフィケーションにおける間合せ述語名の検索は速度的
要因となる。しかし、従来のP rologの処理装置
は汎用計算機上にソフトウェアで実現されているため、
基本的には上で述べたように、プログラム情報を通常の
ランダムアクセスメモリ装置内に格納しておき、プログ
ラムカウンタ(pc)の値によって、該値に対応する番
地に格納されているプログラム情報を取出し、取出さ1
した該プログラム情報に基づいて情報処理を行う第1図
に示すごとき構成であるため、以下に示すような問題が
あった。
ばJしる述語同士の照合から開始される。ユニフィケー
ションでは、まず間合せ節が与えられると間合せ節の先
頭の述語名と同じ述語名をヘッド部に持つ節をプログラ
ム内から取出さなければ成らなイ(以下、ユニフィケー
ションにおける間合せ述語名の検索と書く)。それ以降
のP rologの処理は、ユニフィケーションにおけ
る間合せ述語名の検索の処理の確定後起動される。この
ため、Prologの処理装置の高速化を図る場合、ユ
ニフィケーションにおける間合せ述語名の検索は速度的
要因となる。しかし、従来のP rologの処理装置
は汎用計算機上にソフトウェアで実現されているため、
基本的には上で述べたように、プログラム情報を通常の
ランダムアクセスメモリ装置内に格納しておき、プログ
ラムカウンタ(pc)の値によって、該値に対応する番
地に格納されているプログラム情報を取出し、取出さ1
した該プログラム情報に基づいて情報処理を行う第1図
に示すごとき構成であるため、以下に示すような問題が
あった。
ユニフィケーションにおける間合せ述語名の検索の処理
を実現するためには、PCの値によって、該値に対応す
る番地に格納されているプログラム情報(P rolo
gプログラムのひとつの節に対応すると考えて良い)を
1つ取り出してはそのヘッド部の述語名が間合せ述語名
と一致するかどうかを判定し、一致すればそれを取出し
、一致しなりればPCの値をひとつ増し、次の番地のブ
Uグ゛ラム情報を取出し同様な処理を行うというシーケ
ンスを、一致するものが出てくるまで繰り返さなければ
ならないにの処理はただ必要な対象としたいプログラム
情報を取出す(第2図の例では、above (A、*
x)の間合せに刻してプログラムの(3)、あるいは(
4)を取出す)だけの処理であるが、その間、CPUと
RAM間では無駄な情報の授受を行U)、かつ一致判定
に終始しなければならず、制御は複311Lとなり、C
PUの負荷が大きく処理の高速化が図れない。また、検
索対象(間合せ述語名をヘッド部に持つ節)は検索空間
(プログラム全体:データベース)に対して非′帛に小
さい場合が普通であるが、このような状況はプログラム
が膨大になればなるほど顕著となり、ユニフィケーショ
ン番;おける間合せ述語名の検索の処理に多大な時間力
1浪費される。
を実現するためには、PCの値によって、該値に対応す
る番地に格納されているプログラム情報(P rolo
gプログラムのひとつの節に対応すると考えて良い)を
1つ取り出してはそのヘッド部の述語名が間合せ述語名
と一致するかどうかを判定し、一致すればそれを取出し
、一致しなりればPCの値をひとつ増し、次の番地のブ
Uグ゛ラム情報を取出し同様な処理を行うというシーケ
ンスを、一致するものが出てくるまで繰り返さなければ
ならないにの処理はただ必要な対象としたいプログラム
情報を取出す(第2図の例では、above (A、*
x)の間合せに刻してプログラムの(3)、あるいは(
4)を取出す)だけの処理であるが、その間、CPUと
RAM間では無駄な情報の授受を行U)、かつ一致判定
に終始しなければならず、制御は複311Lとなり、C
PUの負荷が大きく処理の高速化が図れない。また、検
索対象(間合せ述語名をヘッド部に持つ節)は検索空間
(プログラム全体:データベース)に対して非′帛に小
さい場合が普通であるが、このような状況はプログラム
が膨大になればなるほど顕著となり、ユニフィケーショ
ン番;おける間合せ述語名の検索の処理に多大な時間力
1浪費される。
第2図の例であれば、(1)、 (2)、 (3)、
(’I)の4個の節からなるデータベース(検索空間)
の中力蔦ら、ユニフィケーションにお番ノる問合せ述語
名:aboveをまずひとつ探しだすまでに、CPUと
RAM間では3回の情報の授受と一致判定を行わなけれ
ばならない。すなわち(1)を取出してはぞのヘッド部
が間合ぜ述語名と一致するかどうかを調べ、一致しない
から、(2)を取出してはそのヘッド部が間合せ述語名
と一致するかどうかを調べ、一致しないから、(3)を
取出してはそのヘッド部が間合せ述語名と一致するかど
うかを調へ、−1,&するからやっと、 P rolo
gの実行においてユニフィケーションにおける間合せ述
語名の検索以降の処理に実行を進めることができるわけ
である。したがって、プログラムが膨大となり、例えば
1000個の節からなるデータベースの中からただ1饅
の述語名を探し出すような場合であれば、最悪ケースと
してCPUとRAM間ではioo。
(’I)の4個の節からなるデータベース(検索空間)
の中力蔦ら、ユニフィケーションにお番ノる問合せ述語
名:aboveをまずひとつ探しだすまでに、CPUと
RAM間では3回の情報の授受と一致判定を行わなけれ
ばならない。すなわち(1)を取出してはぞのヘッド部
が間合ぜ述語名と一致するかどうかを調べ、一致しない
から、(2)を取出してはそのヘッド部が間合せ述語名
と一致するかどうかを調べ、一致しないから、(3)を
取出してはそのヘッド部が間合せ述語名と一致するかど
うかを調へ、−1,&するからやっと、 P rolo
gの実行においてユニフィケーションにおける間合せ述
語名の検索以降の処理に実行を進めることができるわけ
である。したがって、プログラムが膨大となり、例えば
1000個の節からなるデータベースの中からただ1饅
の述語名を探し出すような場合であれば、最悪ケースと
してCPUとRAM間ではioo。
回の情報の授受と一致判定を行わな(づればならず、ま
たそのうちの999回は無駄な処理となる。
たそのうちの999回は無駄な処理となる。
このように、従来のP rolog処理装置では、ユニ
フィケーションにおける間合せ述語名の検索の処理にお
いて、CPUは不必要な処理に専有され、処理装置全体
として処理の高速化が図JLない。
フィケーションにおける間合せ述語名の検索の処理にお
いて、CPUは不必要な処理に専有され、処理装置全体
として処理の高速化が図JLない。
以上、従来のPrologの処理装置を取り上げ、従来
のこの種の情報処理装置の欠点をあげてきたが、これは
、すなわちP rologのような次に1可を実行する
かが処理の実行段階で動的に決定される非決定性処理を
基本とする情報処理を第1図に示すごとき情報処理装置
で実行しようとしているところに無理があるわけである
。しかし、従来、Prologをはじめとするような非
決定性処理を基本とする情報処理を専用に効率良く実行
するような情報処理’J/4匝はなかった。
のこの種の情報処理装置の欠点をあげてきたが、これは
、すなわちP rologのような次に1可を実行する
かが処理の実行段階で動的に決定される非決定性処理を
基本とする情報処理を第1図に示すごとき情報処理装置
で実行しようとしているところに無理があるわけである
。しかし、従来、Prologをはじめとするような非
決定性処理を基本とする情報処理を専用に効率良く実行
するような情報処理’J/4匝はなかった。
本発明の目的は非決定性処理を基本とする情報処理に高
速に9jう情報処理装置を提供することにある。
速に9jう情報処理装置を提供することにある。
本発明は、プログラム情報を連想メモリ装置に格納し、
この連想メモリ装置から連想アクセスによりプログラム
情報を取出して情報処理を行うことを特徴とする。
この連想メモリ装置から連想アクセスによりプログラム
情報を取出して情報処理を行うことを特徴とする。
以下本発明の実施例を図面を参照して詳細に説明する。
第3図は本発明の第一の実施例を示す。即ち、第3図は
、記憶領域に格納されているプログラム情報を取出し、
該取出されたプログラム情報に基づいて情報処理を行う
情報処理装置において、プログラム情報を連想メモリ装
置に格納し、この連想メモリ装置から連想アクセスによ
り必要なブロクラム情報を取出し、取出されたプログラ
ム情(・μに基づいた情報処理を行う構成とした情報処
理装置である。図中、21は連想メモリ装置であり。
、記憶領域に格納されているプログラム情報を取出し、
該取出されたプログラム情報に基づいて情報処理を行う
情報処理装置において、プログラム情報を連想メモリ装
置に格納し、この連想メモリ装置から連想アクセスによ
り必要なブロクラム情報を取出し、取出されたプログラ
ム情(・μに基づいた情報処理を行う構成とした情報処
理装置である。図中、21は連想メモリ装置であり。
22は連想メモリ本体CA M (ConシcnL、
Adclressable Memory) 22であ
る。23はCAM22の動作を制御するための制御系で
あり、24は制御系23とCAM22との情報の授受を
行う通信線である。25は第1図と同様で中央処理装置
cPUである。また26はCPU25と連想メモリ装置
21との情報の授受を行う通信線である。■くΔM27
は通信線28を介してCP U 25と接続さ九、ワー
ク領域として使用される。プログラム情報を連想メモリ
装置21のCAM22に格納しておき、CPU25が実
行にともなう必要に応じて連想メモリ装置21から連想
アクセスにより必要なブロクラム情報を取出すには、C
PU25から必要なプログラム情報の一部を制御系23
を介してCAM22に与えると、CAM22の連想アク
セスによって、プログラム情報全体の中から必要な部分
のプログラム情報を;n択して取出し、制御系23を介
してCP U 25に送ることができる。
Adclressable Memory) 22であ
る。23はCAM22の動作を制御するための制御系で
あり、24は制御系23とCAM22との情報の授受を
行う通信線である。25は第1図と同様で中央処理装置
cPUである。また26はCPU25と連想メモリ装置
21との情報の授受を行う通信線である。■くΔM27
は通信線28を介してCP U 25と接続さ九、ワー
ク領域として使用される。プログラム情報を連想メモリ
装置21のCAM22に格納しておき、CPU25が実
行にともなう必要に応じて連想メモリ装置21から連想
アクセスにより必要なブロクラム情報を取出すには、C
PU25から必要なプログラム情報の一部を制御系23
を介してCAM22に与えると、CAM22の連想アク
セスによって、プログラム情報全体の中から必要な部分
のプログラム情報を;n択して取出し、制御系23を介
してCP U 25に送ることができる。
なお、本実施例では、連想メモリ装置21が制御系23
を有し、制御系23を介してCPU25と情報の授受を
行う構成としているが、こJLは制御系23がなく、C
P U 25とCAM22との間で直接情報の授受を行
う構成でもよい。
を有し、制御系23を介してCPU25と情報の授受を
行う構成としているが、こJLは制御系23がなく、C
P U 25とCAM22との間で直接情報の授受を行
う構成でもよい。
この連想メモリ装置の連想アクセスにより、プロゲラt
1カウンタP Cの値によって、この値に対応する番地
に格納されているプログラム情報を一つ一つ取出しては
、いま必要としているブロクラム情報かどうかを判定す
るというシーケンスが削除することができ、その分処理
装置どしてCPUの負荷が軽減されるとともに制御が簡
単化され、また連想メモリ装置自身の連想アクセスその
ものの高速性と相乗され、より一層処理の高速化が図れ
る。
1カウンタP Cの値によって、この値に対応する番地
に格納されているプログラム情報を一つ一つ取出しては
、いま必要としているブロクラム情報かどうかを判定す
るというシーケンスが削除することができ、その分処理
装置どしてCPUの負荷が軽減されるとともに制御が簡
単化され、また連想メモリ装置自身の連想アクセスその
ものの高速性と相乗され、より一層処理の高速化が図れ
る。
特に、連想メモリ装置21に、述語論理型言語(例えば
、 P rolog)に基づくプログラム3語によって
作、成されたプログラム情報を格納した@今。
、 P rolog)に基づくプログラム3語によって
作、成されたプログラム情報を格納した@今。
ユニフィケーションにおける間合せ述語名の検索が連想
メモリ装置21により自立的に実行さJしるため、CP
U25の負荷が軽減されるとともに制御が簡単化され、
また連想メモリ装置21自升の連想アクセスそのものの
高速性と相乗され、全体としてより一層処理の高速化が
図れる。このことは、全体のプログラムの規模の大小に
よらず成り立つことである。例えば、第2図の(1)、
(2)。
メモリ装置21により自立的に実行さJしるため、CP
U25の負荷が軽減されるとともに制御が簡単化され、
また連想メモリ装置21自升の連想アクセスそのものの
高速性と相乗され、全体としてより一層処理の高速化が
図れる。このことは、全体のプログラムの規模の大小に
よらず成り立つことである。例えば、第2図の(1)、
(2)。
(3)、 (4)の4個の節から成るプログラムを連想
メモリ装置21内に格納し、各節のヘッド部((1)な
らOn、(2)ならon、 (3)ならabove、
(4)ならabove)に対して間合せ述語above
を連想アクセスのインデックスとしてCAM22を連想
アクセスすることにより、1回のCAM22の動作で(
3)。
メモリ装置21内に格納し、各節のヘッド部((1)な
らOn、(2)ならon、 (3)ならabove、
(4)ならabove)に対して間合せ述語above
を連想アクセスのインデックスとしてCAM22を連想
アクセスすることにより、1回のCAM22の動作で(
3)。
(4)を選択することができる。 その間、CPU25
とCAM22をつむ連想メモリ装置2】との情報の授受
は必要でない。CP tJ 25は問合せ述語abov
eを連想メモリ装置21に与え、連想メモリ装置21の
結果((3)、 (4)のプロゲラA))を受け取るだ
けで、ユニフィケーションにおける間合せ述語名の検索
の処理以降のProioにの処理な起動することができ
る。したがって、一致判定は不用となる。
とCAM22をつむ連想メモリ装置2】との情報の授受
は必要でない。CP tJ 25は問合せ述語abov
eを連想メモリ装置21に与え、連想メモリ装置21の
結果((3)、 (4)のプロゲラA))を受け取るだ
けで、ユニフィケーションにおける間合せ述語名の検索
の処理以降のProioにの処理な起動することができ
る。したがって、一致判定は不用となる。
このように、述語論理型言語(例えばP rolog)
に基づベプログラム言語によっ°C作成されたプログラ
ム1n報を連想メモリ装置に格納しておくことにより、
ユニフィケーションにお4Jる問合せ述語名の検索が連
想メモリ装置により自立的に実行されるため、CPUの
負荷が軽減さJL、るとともに制御が簡単化さばし、ま
たCAM自身の連想アクセスそのものの高速性と相乗さ
れ、全体としてより一層処理の高速化が図れることは明
らかである。
に基づベプログラム言語によっ°C作成されたプログラ
ム1n報を連想メモリ装置に格納しておくことにより、
ユニフィケーションにお4Jる問合せ述語名の検索が連
想メモリ装置により自立的に実行されるため、CPUの
負荷が軽減さJL、るとともに制御が簡単化さばし、ま
たCAM自身の連想アクセスそのものの高速性と相乗さ
れ、全体としてより一層処理の高速化が図れることは明
らかである。
ここで、CPU25とRAM27のワーク領域との通信
線28を用いた情報の授受は、第1図の従来のこの種の
情報処理装置のCPUどRA Mのワーク領域との情報
の授受と同様であり、特に本発明において規定するもの
ではない。
線28を用いた情報の授受は、第1図の従来のこの種の
情報処理装置のCPUどRA Mのワーク領域との情報
の授受と同様であり、特に本発明において規定するもの
ではない。
第4図は本発明の他の実施例を示し、第3図の連想メモ
リ族@21の構成を連想メモリ装置31として変更した
ものである。図中、32は述語論理型言語の述語名に対
応する第1の情報をこの第1の情報間の接続状況を示す
情報とともに1a納する連想メモリであり、33は連想
メモリ本体CAMであり、34は第1の情報から述語論
理型言語の述語名に付随した引数に対応する第2の情報
への第1ポインタ情報である。35はCAM33の動作
を制御するための制御系であり、36は制御系35とC
AM33との情報の授受を行う通信線であり、37は第
1のポインタ情報の坤信線である。38は述語論理型言
語の述語名にイリ随した引数に対応する第2の情報を格
納する第1のランダムアクセスメモリ装置RAMである
。39は連想メモリ32とRAM38の動作を制御する
制御系であり、′40は制御系39と連想メモリ32と
の通信線、41は制御系39と連想メモリ32との第1
のポインタ情報34との通(a綿である。また、42は
制御系39とRAM38との通信線である。
リ族@21の構成を連想メモリ装置31として変更した
ものである。図中、32は述語論理型言語の述語名に対
応する第1の情報をこの第1の情報間の接続状況を示す
情報とともに1a納する連想メモリであり、33は連想
メモリ本体CAMであり、34は第1の情報から述語論
理型言語の述語名に付随した引数に対応する第2の情報
への第1ポインタ情報である。35はCAM33の動作
を制御するための制御系であり、36は制御系35とC
AM33との情報の授受を行う通信線であり、37は第
1のポインタ情報の坤信線である。38は述語論理型言
語の述語名にイリ随した引数に対応する第2の情報を格
納する第1のランダムアクセスメモリ装置RAMである
。39は連想メモリ32とRAM38の動作を制御する
制御系であり、′40は制御系39と連想メモリ32と
の通信線、41は制御系39と連想メモリ32との第1
のポインタ情報34との通(a綿である。また、42は
制御系39とRAM38との通信線である。
第4図のように構成すると、プログラム情報の取出しに
際して、制御系39から通信線40を介し−C連想メモ
リ32に間合ぜ述語名を与えることにより、検索の対象
となる述語名は連想メモリ32の連想アクセスレ;より
、CAM33内から通信線36を介して制御系35へ、
制御系35から通(g綿40により制御系39し;取り
出すことができる。それと同時に9通イ目線37から制
御系35を槍して41により、CAM33から取り出し
た述語名に付随した第1ポインタ情報34を制御系39
に取り出すことができ、その第1のポインタ情報に対応
した番地を通信線42を介してRAM38に与えること
により、検索の対象とならない引数はRAM38内から
の制御系39に取り出すことができる。これにより、プ
ログラム情報の取出しの処理速度を低下させることなく
゛、高価な連想メモリ装置の資源を節約することができ
、経済的である。
際して、制御系39から通信線40を介し−C連想メモ
リ32に間合ぜ述語名を与えることにより、検索の対象
となる述語名は連想メモリ32の連想アクセスレ;より
、CAM33内から通信線36を介して制御系35へ、
制御系35から通(g綿40により制御系39し;取り
出すことができる。それと同時に9通イ目線37から制
御系35を槍して41により、CAM33から取り出し
た述語名に付随した第1ポインタ情報34を制御系39
に取り出すことができ、その第1のポインタ情報に対応
した番地を通信線42を介してRAM38に与えること
により、検索の対象とならない引数はRAM38内から
の制御系39に取り出すことができる。これにより、プ
ログラム情報の取出しの処理速度を低下させることなく
゛、高価な連想メモリ装置の資源を節約することができ
、経済的である。
第5図は第4図の実施例に基づいて第2図に示したPr
ologのプログラムの格納した場合の概念図である。
ologのプログラムの格納した場合の概念図である。
第1の情報間の接続状況を示す情報として、その述語が
ヘッド部かボディ部かを示ずI−IBタグ、およびその
述語の後に続くボディ部の述語があるかないかを示すB
Cタグを用いている。
ヘッド部かボディ部かを示ずI−IBタグ、およびその
述語の後に続くボディ部の述語があるかないかを示すB
Cタグを用いている。
図中33aはHBタグ、33bは述語名、33cはBC
タグ、34は第1ポインタ情報を示し、RAM3Bには
引数が格納さJtている。ユニフィケーションにおける
間合せ述語名の検索は、HBタグのH(ヘッド)と間合
せ述語名を用いて連想メモリ32内を連想アクセスする
ことにより容易に実現できる。また、ボディ部の述語名
はBCCタフより連想メモリ32により、それらの引数
は第1ポインタ情報によりRAM3B内より取出すこと
ができる。なお、この格納例は一例にすぎず、HBタグ
、BCタグを用いず1つの節の述語名の情報をCAM3
3の1ワードに格納する方法や。
タグ、34は第1ポインタ情報を示し、RAM3Bには
引数が格納さJtている。ユニフィケーションにおける
間合せ述語名の検索は、HBタグのH(ヘッド)と間合
せ述語名を用いて連想メモリ32内を連想アクセスする
ことにより容易に実現できる。また、ボディ部の述語名
はBCCタフより連想メモリ32により、それらの引数
は第1ポインタ情報によりRAM3B内より取出すこと
ができる。なお、この格納例は一例にすぎず、HBタグ
、BCタグを用いず1つの節の述語名の情報をCAM3
3の1ワードに格納する方法や。
引数にも引数が次に続くかどうかのタグ(ACタグ)を
イ1与してRA Mの1ワードに引数を1個とACタグ
を格納する方法も容易に考えられる。
イ1与してRA Mの1ワードに引数を1個とACタグ
を格納する方法も容易に考えられる。
第6図は本発明のさらに他の実施例であり、第4図の連
想メモリ32の部分の構成を連想メモリ51と変更した
ものである。図中、52は述語論理型言語のヘッド部の
述語名に対応する第3の1青報を格納する連想メモリで
あり、53は連想メモリ本体CΔM53であり、54は
第3の情報力)ら述語論理型言語のボディ部の述語名に
対応する第4の情報への第2のポインタ情報である。5
51まCA M b 3の動作を制御するだめの制御系
であり、56は制御系55とCΔM53の情報の授受を
f7う通(a線であり、57は第2のポインタ情報54
の通(ij線である。58は述語論理型言語の7JCデ
イ61の述語名に対応する第4の情報を格納するランタ
ムアクセスメモリ装[1;!へM 58である。59は
連想メモリ52とRA M 58の動作を制御する制御
系であり、60は制御系59と連想メモ1)52との通
(B線、61は制御系59と連想メモリ52との第2の
ポインタ情報54の通信線である。
想メモリ32の部分の構成を連想メモリ51と変更した
ものである。図中、52は述語論理型言語のヘッド部の
述語名に対応する第3の1青報を格納する連想メモリで
あり、53は連想メモリ本体CΔM53であり、54は
第3の情報力)ら述語論理型言語のボディ部の述語名に
対応する第4の情報への第2のポインタ情報である。5
51まCA M b 3の動作を制御するだめの制御系
であり、56は制御系55とCΔM53の情報の授受を
f7う通(a線であり、57は第2のポインタ情報54
の通(ij線である。58は述語論理型言語の7JCデ
イ61の述語名に対応する第4の情報を格納するランタ
ムアクセスメモリ装[1;!へM 58である。59は
連想メモリ52とRA M 58の動作を制御する制御
系であり、60は制御系59と連想メモ1)52との通
(B線、61は制御系59と連想メモリ52との第2の
ポインタ情報54の通信線である。
また、62は制御系59とRAM5Bとの通信線である
。なお、34は第1のポインタ情報である。
。なお、34は第1のポインタ情報である。
第6図のように構成すると、プログラムt# flのう
ち述語名の取出しに際して、制911系59から通信線
60を介して連想メモリ52に間aせ述語名を与えるこ
とにより、検索の対象となるヘッド部の述語名は連想メ
モリ52の連想アクセスによりCAM53内から通信線
56を介して制御f+55に、制御系55から通(a線
60により制御系59に取り出すことができ、それと同
時に通(a梓57から制御系55を介して通信IfA6
1により、CハM 53から取り出したヘッド部の述語
名にf]l’4 した第2のポインタ情報54を制御系
59に取り出すことができ、その第2のポインタ情tu
54に対応した番地を通信線62を介し−C1lΔN
158にあたえることにより、検索の対象とならないボ
ディ部の述語名は■えA M 58内から取り出すこと
により、プログラム情報のうち述語名の取出しの処理速
度を低下させることなく、高価な連想メモリ装置の資源
を節約することができ、経済的である。
ち述語名の取出しに際して、制911系59から通信線
60を介して連想メモリ52に間aせ述語名を与えるこ
とにより、検索の対象となるヘッド部の述語名は連想メ
モリ52の連想アクセスによりCAM53内から通信線
56を介して制御f+55に、制御系55から通(a線
60により制御系59に取り出すことができ、それと同
時に通(a梓57から制御系55を介して通信IfA6
1により、CハM 53から取り出したヘッド部の述語
名にf]l’4 した第2のポインタ情報54を制御系
59に取り出すことができ、その第2のポインタ情tu
54に対応した番地を通信線62を介し−C1lΔN
158にあたえることにより、検索の対象とならないボ
ディ部の述語名は■えA M 58内から取り出すこと
により、プログラム情報のうち述語名の取出しの処理速
度を低下させることなく、高価な連想メモリ装置の資源
を節約することができ、経済的である。
第7図は第6図の実施例に基づいて第2図に示したP
rologのプログラムの述語名を格納した場合の概念
図である。図中53aはヘッド部述語名、54は第2の
ボ、インタ情報、58aはボディ部述語名、58bはぞ
の述語の後に続くボデ7r部の述語があるかないかを示
すBCタグである。また、34は第1のポインタ情報で
ある。ユニフィケーション1月Jる問合せ述nlj名の
検索は、間合せ述語名を用い−CCA M 53内を連
想アクセスすることにより容易に実現できる。また、ボ
ディ部の述語名は第2のポインタ1青報およびB Cタ
グによりRAM 58内より取り出すことができる。な
お、この1B拍例は一例にすぎず、BCタグを用いず、
ボデ1部の述語名の情報をRAM581ワードに格A1
1する方法なども容易に考えられる。
rologのプログラムの述語名を格納した場合の概念
図である。図中53aはヘッド部述語名、54は第2の
ボ、インタ情報、58aはボディ部述語名、58bはぞ
の述語の後に続くボデ7r部の述語があるかないかを示
すBCタグである。また、34は第1のポインタ情報で
ある。ユニフィケーション1月Jる問合せ述nlj名の
検索は、間合せ述語名を用い−CCA M 53内を連
想アクセスすることにより容易に実現できる。また、ボ
ディ部の述語名は第2のポインタ1青報およびB Cタ
グによりRAM 58内より取り出すことができる。な
お、この1B拍例は一例にすぎず、BCタグを用いず、
ボデ1部の述語名の情報をRAM581ワードに格A1
1する方法なども容易に考えられる。
ここでは第4図の実施例、第6図の実施例とも、連想メ
モリ装置が内部に連想メモリ本体とその連想メモリ本体
を制御するだめの制fO′II系を有しておリ、連想メ
モリ装置と上位制御系との情報の授受は内部の制御系を
介して行う構成としているが、これは内部の制御系がな
く、上位の制御系と連想メモリ本体との間で直接に情報
の授受を行う115成でもよい。
モリ装置が内部に連想メモリ本体とその連想メモリ本体
を制御するだめの制fO′II系を有しておリ、連想メ
モリ装置と上位制御系との情報の授受は内部の制御系を
介して行う構成としているが、これは内部の制御系がな
く、上位の制御系と連想メモリ本体との間で直接に情報
の授受を行う115成でもよい。
一方1本発明で中心的に用いている′4想メモリ装置で
あるが、近年、低価格で高速人容旦な連想メモリ装置が
構成できるようになってきCおり(例えば特願昭58
94525号)、情報処理の核どなる処理への適用が、
性能的にも、経1斉的にも可能となってきている。この
ような状況の中で本発明の意義は大さい。
あるが、近年、低価格で高速人容旦な連想メモリ装置が
構成できるようになってきCおり(例えば特願昭58
94525号)、情報処理の核どなる処理への適用が、
性能的にも、経1斉的にも可能となってきている。この
ような状況の中で本発明の意義は大さい。
以上、説明したように、本発明は記憶順j或に+8納さ
れているプログラム情報を取出し、該取出されたプログ
ラム情報に基づいて情報処理を行う情報処理装置におい
て、プログラム情報を連想メモリ装置から連想アクセス
により必要なプロゲラ11情報を取出さ4したプログラ
ム情報に基づいたIfJ報処理を行う新規な情報処理装
置を実現するので、以下のJ:うな利点が生じる。
れているプログラム情報を取出し、該取出されたプログ
ラム情報に基づいて情報処理を行う情報処理装置におい
て、プログラム情報を連想メモリ装置から連想アクセス
により必要なプロゲラ11情報を取出さ4したプログラ
ム情報に基づいたIfJ報処理を行う新規な情報処理装
置を実現するので、以下のJ:うな利点が生じる。
(1)情報の実行にともない必要に応じて、記憶領域に
+8納されているプログラム情報から必要なプログラム
情報を取出す処理が、連想メモリ装置により自立的に行
われるため、処理装置全体としてCPUの負荷が軽減さ
れるとともに制御が簡単化され、また連想メモリ装置自
身の連想アクセスそのものの高速性と和平され、王り一
層の処理の高速化が図れる。
+8納されているプログラム情報から必要なプログラム
情報を取出す処理が、連想メモリ装置により自立的に行
われるため、処理装置全体としてCPUの負荷が軽減さ
れるとともに制御が簡単化され、また連想メモリ装置自
身の連想アクセスそのものの高速性と和平され、王り一
層の処理の高速化が図れる。
(11) ユニフィケーションにおける間合せ述語名の
険1;が連想メモリ装置により自立的に実行されるため
、CI) IJは負荷が軽減されるとともに制御が簡単
fしされ、また連想メモリ装置白ηの連想アクセスその
ものの高速性と相乗され、より一層の処理の高速化が図
れる。このことは、全体のプログラムの規模の大小に1
、らず成り立つことである。
険1;が連想メモリ装置により自立的に実行されるため
、CI) IJは負荷が軽減されるとともに制御が簡単
fしされ、また連想メモリ装置白ηの連想アクセスその
ものの高速性と相乗され、より一層の処理の高速化が図
れる。このことは、全体のプログラムの規模の大小に1
、らず成り立つことである。
(iii ) l記連想メモリ装置にRA Mを含み、
プログラム情報のうち、直接検索の対象となるものと検
索の対象とはならないものが関連しているものとに分離
し、直接検索の対象となるものを連想メモリ内に、検索
の対象とはならないが関連しているものを連想メモリ内
の情報からのポインタ情報によりRA M内に1h拍す
ることにより、必要なプロゲラ11情報の取出しの処理
速度を低下させることなく、高価な連想メモリ装置の資
源を節約することができ経済的である。
プログラム情報のうち、直接検索の対象となるものと検
索の対象とはならないものが関連しているものとに分離
し、直接検索の対象となるものを連想メモリ内に、検索
の対象とはならないが関連しているものを連想メモリ内
の情報からのポインタ情報によりRA M内に1h拍す
ることにより、必要なプロゲラ11情報の取出しの処理
速度を低下させることなく、高価な連想メモリ装置の資
源を節約することができ経済的である。
なお、(ii)以降は述語論理型言語(たとえばpro
log)を対象とした場合の効果である。
log)を対象とした場合の効果である。
第1図は従来の一般的な情報処理袋Ulを示すブロック
図、第2図はP roLogのプログラムと事物関係の
世界の例を示す図、第3図、第4図および第6図はそれ
ぞれ本発明の一実施例を示すブロック図、第5図および
第7図はそ4しぞれ第4図、第6図の実施例に基づいて
第2図のPro]oBのプログラムを(8納した場合を
示す、[急回である。 21・・・連想メモリ装置、22・・連想メモリ本俸C
AM、25・・中央処理装置。 CAM33 RAM38
図、第2図はP roLogのプログラムと事物関係の
世界の例を示す図、第3図、第4図および第6図はそれ
ぞれ本発明の一実施例を示すブロック図、第5図および
第7図はそ4しぞれ第4図、第6図の実施例に基づいて
第2図のPro]oBのプログラムを(8納した場合を
示す、[急回である。 21・・・連想メモリ装置、22・・連想メモリ本俸C
AM、25・・中央処理装置。 CAM33 RAM38
Claims (3)
- (1)記憶領域に格納されているプログラム情報を取出
し、取出された該プログラム情報に基づいて情報処理を
行う情報処理装置において、上記プログラム情報を連想
メモリ装置に格納し、該連想メモリ装置から連想アクセ
スにより必要なプログラム情報を取出して情報処理を行
うことを特徴とする情報処理装置。 - (2)上記連想メモリ装置に上記プログラム情報として
、述語論理型言語に基づくプログラム言語に゛よって作
成されたプログラム情報を格納することを特徴とする特
許請求の範囲第1項記載の情?11処理装置。 - (3)上記連想メモリ装置は連想メモリとランダムアク
セスメモリ装置とを含み、述語論理型言語の述語名に対
応する第1の情報を該第1の情報間の接続状況を示す情
報と共に上記連想メモリに格納し、述語論理型言語の述
語名に付随した引数に対応する第2の情報を上記第、1
の情報に付与したポインタが示す位置の上記ランダムア
クセスメモリ装置に格納し、実行に伴なって、上記第1
の情報は連想アクセスにより上記連想メモリから、上記
第2の情報は上記第1の情報に伺与されているポインタ
により上記ランダムアクセスメモリ装置から取出し、上
記第1および第2の情報に基づいて情報処理を行うこと
を特徴とする特許請求の範囲第2項記載の情報処理装置
。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58177773A JPS6069748A (ja) | 1983-09-26 | 1983-09-26 | 情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58177773A JPS6069748A (ja) | 1983-09-26 | 1983-09-26 | 情報処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS6069748A true JPS6069748A (ja) | 1985-04-20 |
Family
ID=16036863
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58177773A Pending JPS6069748A (ja) | 1983-09-26 | 1983-09-26 | 情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6069748A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63156242A (ja) * | 1986-12-19 | 1988-06-29 | Nippon Telegr & Teleph Corp <Ntt> | 情報処理装置 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS57143641A (en) * | 1981-03-03 | 1982-09-04 | Nippon Telegr & Teleph Corp <Ntt> | Information processing device |
-
1983
- 1983-09-26 JP JP58177773A patent/JPS6069748A/ja active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS57143641A (en) * | 1981-03-03 | 1982-09-04 | Nippon Telegr & Teleph Corp <Ntt> | Information processing device |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63156242A (ja) * | 1986-12-19 | 1988-06-29 | Nippon Telegr & Teleph Corp <Ntt> | 情報処理装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5819282A (en) | Database generator | |
| US5995962A (en) | Sort system for merging database entries | |
| US6374238B1 (en) | Routine executing method in database system | |
| US5748952A (en) | System and method for avoiding complete index tree traversals in sequential and almost sequential index probes | |
| KR890004994B1 (ko) | 어드레스 변환 제어장치 | |
| US6353819B1 (en) | Method and system for using dynamically generated code to perform record management layer functions in a relational database manager | |
| US4780810A (en) | Data processor with associative memory storing vector elements for vector conversion | |
| US5513332A (en) | Database management coprocessor for on-the-fly providing data from disk media to all without first storing data in memory therebetween | |
| Savitt et al. | ASP: A new concept in language and machine organization | |
| JP2960533B2 (ja) | 記号列検索モジュール及びそれを備えたシングルチップマイクロコンピュータ | |
| US5519860A (en) | Central processor index sort followed by direct record sort and write by an intelligent control unit | |
| JPS6069748A (ja) | 情報処理装置 | |
| Hollaar | Specialized merge processor networks for combining sorted lists | |
| JPH07146880A (ja) | 文書検索装置及び方法 | |
| Salton et al. | Parallel computations in information retrieval | |
| JPH0527142B2 (ja) | ||
| Copeland et al. | A high level data sublanguage for a context-addressed segment-sequential memory | |
| Kannan et al. | A microprogrammed keyword transformation unit for a database computer | |
| Bloom | Structure of a direct high-level language processor | |
| JPS633351A (ja) | バツフア検索制御方式 | |
| JPS6118071A (ja) | 辞書検索方式 | |
| CN120670451A (zh) | 一种数据处理方法、装置、存储介质及电子设备 | |
| Salton et al. | Parallel Computations in Information Retrieval | |
| JPH07295814A (ja) | データ入力のアドレス管理方法 | |
| JPS6356723A (ja) | デ−タの連想的記憶、取出し方法 |