JPS62204340A - デ−タ処理装置 - Google Patents

デ−タ処理装置

Info

Publication number
JPS62204340A
JPS62204340A JP61046315A JP4631586A JPS62204340A JP S62204340 A JPS62204340 A JP S62204340A JP 61046315 A JP61046315 A JP 61046315A JP 4631586 A JP4631586 A JP 4631586A JP S62204340 A JPS62204340 A JP S62204340A
Authority
JP
Japan
Prior art keywords
data
instruction
register
ram
internal storage
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
Application number
JP61046315A
Other languages
English (en)
Inventor
Yoshinari Nakasaki
中崎 良成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Agency of Industrial Science and Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Agency of Industrial Science and Technology filed Critical Agency of Industrial Science and Technology
Priority to JP61046315A priority Critical patent/JPS62204340A/ja
Publication of JPS62204340A publication Critical patent/JPS62204340A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Devices For Executing Special Programs (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、属性を表示するタグ領域と値そのものを表示
する領域で構成されるタグ付データを処理対象にするプ
ログラムを効率よく実行できるデータ処理装置に関し、
特にタグ形式で表現されるデータの参照・解釈を高性能
に実行するデータ処理装置に関する。
(従来の技術) タグ付データを導入することによって処理効率が向上す
る一例どしてプロログ言語の処理がある。本発明の技術
環境を記述するためにプロログ言語を処理することを例
にとる。
プロログにおいては表現すべき事象を述語名とその引数
の結合から成る「述語」によって表現し、更に述語間の
関係を記述する。例えば[太部は数字を好む]という事
象は下記のように記述できる。
好む(太部−文字)←数字(本文字) 本例で「好む]と「数字」を述語名、「太部]「*文字
]を引数と称し、杆βはその引数が変数であることを表
わす。即ち、上例は「太部」は[数字]という述語名で
表記された述語の引数として書かれている事物を「好む
」ことを表現している。従って「数字(6)」という文
が他に書かれていれば、三段論法の推論によって、「太
部は6を好む」という結論が得られる。
プロログプログラムの実行は述語間の一致を比較する処
理が基本になっている。例えば、前記の「・・・←数字
(本文字)。]と「数字(6)。」とを比較して両述語
間の一致を調べる処理が基本である。ここで前者を呼び
出し側、後者を呼ばれ側とする。
この比較処理においては述語の対応する引数間の比較処
理が処理効率の点において重要であり、高速な比較処理
が求められる。前例では呼び出し側の「*文字」と呼ば
れ側の「6」の−数比較処理に対応する。この比較処理
方式の一つとしてはり、ELD、ウォーレン著「アン・
アブストラクト・プロローグ・インストラクション・セ
ット]テクニカルノート309、アーティフィシャル・
インテリジェンス・センター、ニスアールアイ・インタ
ーナショナル、 1983 (D。
SRI International、 1983)に
記されているレジスタを用いた引数の一致比較処理方式
がある。この方式では[本文字]に関する情報を一度内
部レジスタに格納しておき、後にこの内部レジスタと「
6」との比較処理を行うものである。この引数比較処理
では変数「本文字」に「6」が結合(bind)される
。ここでプロログプログラムの書き方次第で「本文字」
の代わりにrlJ 、 r2J 、・・・r6Jなどの
数あるいはアトム、リストなどの他のデータタイプが記
述されていてもよい。このような変数、数、アトム、リ
ストなどのデータタイプを識別するためにタグ領域をデ
ータに付加する。このタグ情報を調べることによって必
要な処理を効率よく進めることができる。例えば上例で
タグ情報によって変数であることが検出されると「6」
との結合処理を進める。また、[*文字Jの代わりに数
があると[6]と同一の数を示すタグであることを検出
して、さらに一致処理を進めその数の値の比較を行い、
一致しているか否かを検査する。[1]、「2」とは不
一値であることを検出し、r6Jとは一致していること
を検出する。また、「*文字」の代わりにアトム、リス
トなどの他のデータタイプが「6」と−数比較処理を行
うときには、それぞれのタグが異ることにより不一致で
あることを検出する。以上の引数に関する一致比較処理
の例を第2図に示す。
(発明が解決しようとする問題点) 前記の例では述語内の引数の筒数が1であったがプロロ
グプログラムでは10@、100箇、1000箇などか
なり多くの筒数まで許される。例えば[数字(1,2゜
3.4・・・、n月のようにn箇の引数を記述すること
ができる。このとき、前記文献の方式では、前記述語が
呼び出し側であるときには、n箇の内部レジスタにそれ
ぞれ1,2,3,4・・・、nの数を格納して次の呼ば
れ側の引数に関する処理に移る必要がある。ここで、1
000程度の大きなn箇の引数の筒数を許すために装置
を実現する場1合には、内部レジスタをアドレス可能な
ランダムアクセスメモリ(RAM)を用いる。しかし、
RAMの読み出しは装置のサイクルタイムの多くの時間
をめ、この処理が装置性能のネックとなっている。
本発明の目的はこのような従来の問題点を除去せしめて
、引数の筒数が少数の場合には、内部記憶部としてのR
AMではなくレジスタに格納し、参照時間を短くするこ
とによって、多くの場合に引数の筒数が少数であるプロ
ログなどのタグ付データを利用する処理装置の処理性能
を高速にすることができる装置を提供するものである。
さらにRAMに格納されたタグ付データの参照において
も、RAMへのアドレスが十分長い時間以前に決定して
おり、指定されたアドレスのタグ付きデータが既にRA
Mの出力となっているときには、RAMへのアドレス指
定からRAMの出力になるまでの遅延時間を処理時間に
含めない。これにより、RAM中のタグ付きデータの参
照を高速にすることができる装置を提供するものである
(問題点を解決するための手段) 前述の問題点を解決するために本発明が提供するデータ
処理装置はデータ及び命令列を格納する記憶部と、前記
記憶部から読み出した命令を格納する命令レジスタと、
前記命令レジスタに格納された命令を解釈する命令デコ
ーダと、処理対象データを格納する1つ以上のデータレ
ジスタと、前記データレジスタよりも参照時間が遅く多
数の語で構成される内部記憶部と、前記命令レジスタに
格納された命令のオペランドシラブルを解読して前記デ
ータレジスタと前記内部記憶部のいずれかの出力を選択
する選択器と、前記内部記憶部へのアドレス情報を持つ
前記命令レジスタが格納された直後に前記内部記憶部へ
の参照が行われる場合には前記内部記憶部から読み出さ
れるデータを利用できるまでに必要な遅延時間を確保す
る遅延手段と、前記選択器から出力されるタグ付データ
を掻体するタグ付データ操作部と、前記命令で規定され
る処理を制御する制御部を備えることを特徴とする。
(作用) 本発明は上述の手段により、従来技術の問題点を解決し
た。
まず、引数の筒数が多い場合に備え、多くのデータを格
納可能なRAMを備える。引数の筒数が序い場合の頻度
は非常に少ないが、このような場合にも装置として動作
するためである。さらに引数の数が少ない述語が多く占
め、この述語の処理を高速にするために参照時間の短い
レジスタを備える。これによりタグ付きデータのタグ解
析を高速化すると共に多くの引数をもつプログラムの処
理を可能にする。
さらに前記RAM中のタグ付きデータへの参照は2つの
場合に分けて行う。1つはRAMへのアドレスが入力さ
れてから十分な時間を経てRAM中のデータに対する参
照要求があった場合である。この場合には既にRAMか
らデータが出力しており、前記のレジスタと同程度の参
照高速化を図ることができる。他の1つはRAMへの参
照要求がある直前にアドレスが決まる場合であり、RA
Mのデータへの参照にはRAMへのアドレス人力、RA
M内でのデータ読み出しなどの時間が必要となる。この
ためデータを参照する時期を前者の場合に比べ遅らせる
必要がある。
(実施例) 以上本発明の一実施例を図面を用いて詳細に説明する。
第1図は本発明の装置の一実施例を示すブロック図であ
る。図中10はタグ付きデータおよび命令列を格納する
記憶部、11は記憶部10から読み出した命令を格納す
る命令レジスタ、18は命令レジスタ11がセットされ
たときにセットされ、次のマシンサイクルにはリセット
されるレジスタセットフラグ、12,13,14.15
は記憶部10から読み出した引数に関するタグ付きデー
タを格納すると共に高速な参照を実現するデータレジス
タA、B、C,D、16は記憶部10から読み出した引
数に関するタグ付きデータを格納するためのアドレス可
能なランダムアクセスメモリで構成することにより多く
のタグ付きデータを格納可能にする内部記憶部である。
この内部記憶部16は命令レジスタ11に格納された命
令のオペランドシラブルであって内部レジスタを指示す
るフィールドをアドレス情報として入力することによっ
て一語のタグ付きデータを出力する。また、データレジ
スタA12.B13.C14,D15に比べ読み出し時
間が遅い。17は前記のフィールド情報を解析′し、デ
ータレジスタA12.B13.C14,D15および内
部記憶部16の出力の−うを選択する選択器、21はマ
イクロプログラムによる制御でデータ処理装置での処理
の流れを制御する制御部、19は命令レジスタ11に格
納されている前記フィールドを解析し、内部記憶部16
への参照要求であり、かつレジスタセットフラグ18が
セットされていたときには内部記憶部16からのデータ
参照時期を遅らせる信号を制御部21に送り、データレ
ジスタAI2.B13.C14゜D15への参照あるい
は、レジスタセットフラグ18がセットされていない状
態で内部記憶部16への参照である場合には高速に参照
できることを制御部21に指示する遅延指示器、20は
選択器17から出力されるタグ部の情報を解析し、制御
部21に処理の流れを指示するタグ分岐指示器、22は
命令レジスタ11に格納された命令のコードを解析し、
その結果を制御部21に送る命令デコーダ、23は選択
器から出力されるタグ付きデータにおけるデータの値と
命令レジスタ11の中に格納された命令の中で即値とし
て命令中に表現されたデータの値との比較を行う比較器
であり、比較結果を制御部21に送る。タグ分岐指示器
20および比較器23はタグ付データ操作部30の一例
として示す。また、レジスタセットフラグ18および遅
延指示器19は遅延手段31の一例として示す。
次に本発明の一実施例の動作をタグ付きデータの操作命
令の一つを例としてとりあげて説明する。タグ付きデー
タの操作命令の一つとして内部レジスタのi番目のタグ
付きデータ(Ai)と命令内で表現される整数の即値(
N)との−数比較処理を行う「整数比較命令」の例を示
す。この命令の形式を第3図に示す。この命令は命令コ
ードフィールドとi番目の内部レジスタ(Ai)を示す
内部レジスタフィールドと、整数の即値(N)を示す整
数即値フィールドから成る。内部レジスタフィールドは
16ビツトで構成されているので(216+ 1)番目
までの内部レジスタを指定することができる。
この整数比較命令の動作は第2図の呼び出し側の引数の
タグによる分岐以下の動作に対応する。これを第1図の
実施例を用いて説明する。この命令は記憶部10から読
み出され、命令レジスタ11に格納される。このときレ
ジスタセットフラグ18をTにセットする。命令レジス
タ11の命令コードフィールドを命令デコーダ22で検
出し、制御部21において整数比較命令の処理を開始す
る。はじめに、命令レジスタ11の内部レジスタフィー
ルドで示されるAiレジスタを参照する。
命令レジスタ11の内部レジスタフィールドを選択器1
7に入力することにより、Aiが0から3番目の内部レ
ジスタを示す値であることが検出される場合には、これ
に対応してデータレジスタA12.B13゜C14,D
15の一つを選択器17で選択し、出力する。また、A
iが4以上の数を示すときには選択器17では内部記憶
部16の出力を選択する。内部記憶部16の読み出しは
内部レジスタフィールドの値をアドレスとして入力する
ことにより行い、−語のタグ付r−夕が読み出される。
遅延指示器19においては、命令レジスタ11の内部レ
ジスタフィールドでのAiが0から3の数を示すときに
は遅延が不要である信号を制御部21に送る。データレ
ジスタA12.B13.C14,D15の一つを選択器
17の出力としてタグ分岐指示器20に送り、タグ分岐
指示器20では分岐方向を検出して制御部21に送り、
制御部21では検出された分岐に従ってマイクロプログ
ラムの分岐を行う。この処理は第2図の呼び出し側の引
数のタグによる分岐処理に示される。ここでAiが「2
」であればデータレジスタC14が選択器17の出力と
して選択される。さらにデータレジスタC14の内容と
してタグ部で示されるデータタイプが整数であり、値が
「6」であれば、タグ分岐指示器では第2図において呼
び出し側の引数のタグが数字の方向にマイクロプログラ
ムを分岐するための情報を制御部21に送る。データレ
ジスタC14に格納されているデータの内容の例を第4
図に示す。
次に、内部レジスタフィールドのAiが4以上の数であ
る場合を示す。このときには、選択器17の出力として
内部記憶部16の出力を選択する。遅延指示器19では
内部記憶部16から読み出すことを検出する。
このとき、命令レジスタ11がセットされた直後でレジ
スタセットフラグ18がTのときには、選択517の出
力を利用する時期が1マシンサイクル遅れるように、制
御部21へ信号を送る。即ち、処理内容としてはAiが
0から3までの数の場合と同様、りグ分岐指示器20を
利用して第2図の呼び出し側の引数のタグによる分岐を
行う。ただし処理時間としてはデータレジスタA12な
どからの参照に比べ選択器17の出力をタグ分岐指示器
20で解析する時期が1マシンサイクル遅れる。  。
レジスタセットフラグ18は前記のように命令レジスタ
11がセットされた直後の1マシンサイクルはfilで
あるが次のサイクルには0′になる。この°0′になっ
た時期以降に、内部記憶部16がらタグ付きデータを読
み出す場合には、選択器17の出力を利用する時期を遅
らせる必要はなく、データレジスタAI2への参照と同
様に制御される。この場合には遅延指示器19から遅延
指示信号を制御部21には送らない。前記のタグ分岐処
理における遅延、非遅延のタイミングチャートを第5図
に示す。
呼び出し側の引数のタグによる分岐処理を終了した後、
呼ばれ側の引数のタイプを検査する。この整数比較命令
の場合には命令コードによって、既に呼ばれ側の引数の
タイプが数字であることを制御部21で検出している。
この結果、データタイプにおいて、呼び出し側の引数と
呼ばれ側の引数とは一致する。次に引数の値を含めた一
致を検査する。即ち呼び出し側の引数として選択器17
から出力されるAi番目のデータの値を比較器23の一
つの入力とし、呼ばれ側の引数として命令レジスタ11
にある整数即値フィールドで示される値を比較器23の
他の入力とする。ここで、選択器17の出力が数字「6
」である第4図の形式であるときに、整数即値フィール
ドの値が数字「6」であれば、比較器23では一致を検
出し、制御部21にこの一致信号を送る。また整数即値
の値が数字「6」以外であれば不一致を比較器23で検
出し、制御部21に送る。
制御部21では一致、不一致の結果により以後の処理の
進め方を決定する。
(発明の効果) 本発明によればデータ処理装置中にタグ付きデータを格
納する内部レジスタとして、ハードウェア量としては大
量に必要であるが、高速に参照可能な少数のデータレジ
スタと比較的少ないハードウェアで多くのタグ付きデー
タを格納でき参照速度が遅い内部記憶で実現する。この
結果、少数の引数で記述しているものがほとんどである
プロログ言語の述語あるいは関数型言語の関数のタグ付
データの操作をデータレジスタを用いて処理することに
より高速にする。さらに、多数の引数でプログラムが記
述されている場合には内部記憶部を利用することによっ
てタグ付きデータの操作を可能にする。さらに内部記憶
部内でのデータを参照する場合に、参照時間を考慮して
データ参照のために遅延を必要とする場合と不要である
場合とを検出する手段を備えることにより、不要である
場合にはデータレジスタからの参照と同様、高速にタグ
付きデータを参照できるようにする。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図、第2図は
タグ付きデータを操作する処理手順の一例を示す処理フ
ロー図、第3図はタグ操作関係の命令の一例として示す
整数比較の命令形式を示す図、第4図は内部レジスタに
格納されるタグ付データの例を示す図、第5図はタグ分
岐処理の遅延、非遅延のタイミングチャートである。 図において、10は記憶部、11は命令レジスタ、12
.13,14.15はそれぞれデータレジスタA、B、
C,D。 16はアドレス可能な内部記憶部、17はデータレジス
タおよび内部記憶部の出力の一つを選択する選択器、1
8は命令レジスタ同一のタイミングでセットされるレジ
スタセットフラグ、19は選択器の出力として内部記憶
部が選択されるときに出力するまでの時間がデータレジ
スタを選択する場合に比べ遅いことを指示する遅延指示
器、20は選択器の出力中のタグ部を解析して処理の流
れを変え方向を指示するためのタグ分岐指示器、21は
タグ付きデータの操作および本データ処理装置の処理を
制御する制御部、22は命令レジスタ中の命令を解釈す
る命令デコーダ、°30はタグ分岐指示器および比較器
を一例として示したタグ付データ操作部、31はレジス
タセットフラグおよび遅延指示器による構成を一例とし
て示した遅延手段である。 亭  1  図 亭   Z   図

Claims (1)

    【特許請求の範囲】
  1. データの属性を示すタグ領域と値領域とで各データが表
    現されるデータ処理装置において、前記データ及び命令
    列を格納する記憶部と、前記記憶部から読み出した命令
    を格納する命令レジスタと、前記命令レジスタに格納さ
    れた命令を解釈する命令デコーダと、処理対象データを
    格納する1つ以上のデータレジスタと、前記データレジ
    スタよりも参照時間が遅く多数の語で構成される内部記
    憶部と、前記命令レジスタに格納された命令のオペラン
    ドシラブルを解読して前記データレジスタと前記内部記
    憶部のいずれかの出力を選択する選択器と、前記内部記
    憶部へのアドレス情報を持つ前記命令レジスタが格納さ
    れた直後に前記内部記憶部への参照が行われる場合には
    前記内部記憶部から読み出されるデータを利用できるま
    でに必要な遅延時間を確保する遅延手段と、前記選択器
    から出力されるタグ付データを操作するタグ付データ操
    作部と、前記命令で規定される処理を制御する制御部を
    備え、前記遅延手段によって前記制御部で前記データレ
    ジスタおよび前記内部記憶の出力を前記タグ付データ操
    作部で処理対象にする時期を決定することによってタグ
    付データの操作を可能にしたことを特徴とするデータ処
    理装置。
JP61046315A 1986-03-05 1986-03-05 デ−タ処理装置 Pending JPS62204340A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61046315A JPS62204340A (ja) 1986-03-05 1986-03-05 デ−タ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61046315A JPS62204340A (ja) 1986-03-05 1986-03-05 デ−タ処理装置

Publications (1)

Publication Number Publication Date
JPS62204340A true JPS62204340A (ja) 1987-09-09

Family

ID=12743730

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61046315A Pending JPS62204340A (ja) 1986-03-05 1986-03-05 デ−タ処理装置

Country Status (1)

Country Link
JP (1) JPS62204340A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5672910A (en) * 1995-11-30 1997-09-30 Mitsubishi Denki Kabushiki Kaisha Semiconductor device and semiconductor module

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5329424A (en) * 1976-08-30 1978-03-18 Shinobu Nagashima Continuous discharge high voltage distributor
JPS5528115A (en) * 1978-08-15 1980-02-28 Fujitsu Ltd Control system for data processor using different memory areas in access time
JPS5663656A (en) * 1979-10-25 1981-05-30 Nec Corp Information processing unit
JPS60107137A (ja) * 1983-11-15 1985-06-12 Nec Corp タグ付デ−タ処理装置
JPS60136832A (ja) * 1983-12-26 1985-07-20 Hitachi Ltd タグ付きデ−タを扱う論理型デ−タ処理装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5329424A (en) * 1976-08-30 1978-03-18 Shinobu Nagashima Continuous discharge high voltage distributor
JPS5528115A (en) * 1978-08-15 1980-02-28 Fujitsu Ltd Control system for data processor using different memory areas in access time
JPS5663656A (en) * 1979-10-25 1981-05-30 Nec Corp Information processing unit
JPS60107137A (ja) * 1983-11-15 1985-06-12 Nec Corp タグ付デ−タ処理装置
JPS60136832A (ja) * 1983-12-26 1985-07-20 Hitachi Ltd タグ付きデ−タを扱う論理型デ−タ処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5672910A (en) * 1995-11-30 1997-09-30 Mitsubishi Denki Kabushiki Kaisha Semiconductor device and semiconductor module

Similar Documents

Publication Publication Date Title
US5125092A (en) Method and apparatus for providing multiple condition code fields to to allow pipelined instructions contention free access to separate condition codes
NO303419B1 (no) FremgangsmÕter og systemer for Õ bevare kildeinstruksjonens atomitet i oversatt programkode
JPH02227731A (ja) データ処理システム
JP3130446B2 (ja) プログラム変換装置及びプロセッサ
JPS62204340A (ja) デ−タ処理装置
JPS63228225A (ja) ディジタルコンピュータシステム
JPS62204339A (ja) デ−タ処理装置
JPS62204341A (ja) デ−タ処理装置
JP3335735B2 (ja) 演算処理装置
JPH06230963A (ja) メモリアクセス制御装置
JPH0228723A (ja) ループ命令実行方式
Hai et al. Multi-threaded on-the-fly model generation of malware with hash compaction
JPH09288595A (ja) 演算処理装置
JPS62175831A (ja) タグ付きパイプライン制御方式
JPS6116334A (ja) デ−タ処理装置
US7627859B2 (en) Method for configuring non-script language library files to be run as scripts
JPH0279122A (ja) 浮動小数点演算機構
JPS63217433A (ja) プログラム実行制御方式
JPH02257218A (ja) 電子計算機
JPH01286038A (ja) プロローグプログラムの処理方法
JPH08185412A (ja) 文書処理方法及びその装置
JPS61145643A (ja) 可変語長命令処理方式
JPH0573335A (ja) プログラムの自動インライン展開方式
JPH03144733A (ja) マイクロプログラム制御装置
JPS62295139A (ja) 論理型言語処理装置