JPS62204341A - デ−タ処理装置 - Google Patents
デ−タ処理装置Info
- Publication number
- JPS62204341A JPS62204341A JP61046316A JP4631686A JPS62204341A JP S62204341 A JPS62204341 A JP S62204341A JP 61046316 A JP61046316 A JP 61046316A JP 4631686 A JP4631686 A JP 4631686A JP S62204341 A JPS62204341 A JP S62204341A
- Authority
- JP
- Japan
- Prior art keywords
- data
- register
- instruction
- storage unit
- internal
- 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)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、属性を表示するタグ領域と値そのものを表示
する領域で構成されるタグ付データを処理対象にするプ
ログラムを効率よく実行できるデータ処理装置に関し、
特にタグ形式で表現されるデータの参照・解釈を高性能
に実行するデータ処理装置に関する。
する領域で構成されるタグ付データを処理対象にするプ
ログラムを効率よく実行できるデータ処理装置に関し、
特にタグ形式で表現されるデータの参照・解釈を高性能
に実行するデータ処理装置に関する。
(従来の技術)
タグ付データを導入することによって処理効率が向上す
る一例としてプロログ言語の処理がある。本発明の技術
環境を記述するためにプロログ言語を処理することを例
にとる。
る一例としてプロログ言語の処理がある。本発明の技術
環境を記述するためにプロログ言語を処理することを例
にとる。
プロログにおいては表現すべき事象を述語名とその引数
の結合から成る「述語]によって表現し、更に述語間の
関係を記述する。例えば「太部は数字を好む]という事
象は下記のように記述できる。
の結合から成る「述語]によって表現し、更に述語間の
関係を記述する。例えば「太部は数字を好む]という事
象は下記のように記述できる。
好む(太部2本文字)←数字(本文字)本例で「好む」
と「数字Jを述語名、「太部」「本文字」を引数と称し
、牢印はその引数が変数であることを表わす。即ち、上
例は「太部」は1数字」という述語名で表記された述語
の引数として書かれている事物を「好む」ことを表現し
ている。従って「数字(6月という文が他に書かれてい
れば、三段論法の推論によって、「太部は6を好む」と
いう結論が得られる。
と「数字Jを述語名、「太部」「本文字」を引数と称し
、牢印はその引数が変数であることを表わす。即ち、上
例は「太部」は1数字」という述語名で表記された述語
の引数として書かれている事物を「好む」ことを表現し
ている。従って「数字(6月という文が他に書かれてい
れば、三段論法の推論によって、「太部は6を好む」と
いう結論が得られる。
プロログプログラムの実行は述語間の一致を比較する処
理が基本になっている。例えば、前記の「・・・←数字
(本文字)。」と「数字(6)。]とを比較して両述語
間の一致を調べる処理が基本である。ここで前者を呼び
出し側、後者を呼ばれ側とする。
理が基本になっている。例えば、前記の「・・・←数字
(本文字)。」と「数字(6)。]とを比較して両述語
間の一致を調べる処理が基本である。ここで前者を呼び
出し側、後者を呼ばれ側とする。
この比較処理においては述語の対応する引数間の比較処
理が処理効率の点において重要であり、高速な比較処理
が求められる。前例では呼び出し側の[本文字1と呼ば
れ側のr6Jの一致比較処理に対応する。この比較処理
方式の一つとしてはり、H。
理が処理効率の点において重要であり、高速な比較処理
が求められる。前例では呼び出し側の[本文字1と呼ば
れ側のr6Jの一致比較処理に対応する。この比較処理
方式の一つとしてはり、H。
D、ウオーレン著[アン・アブストラクト・プロローグ
・インストラクション・セット」テクニカルノート30
9、アーティフィシャル・インテリジェンス・センター
、ニスアールアイ・インターナショナル、 1983
(D。
・インストラクション・セット」テクニカルノート30
9、アーティフィシャル・インテリジェンス・センター
、ニスアールアイ・インターナショナル、 1983
(D。
SRI International、 1983)に
記されているレジスタを用いた引数の一致比較処理方式
がある。この方式では[本文字]に関する情報を一度内
部レジスタに格納しておき、後にこの内部レジスタと[
6]との比較処理を行うものである。この引数比較処理
では変数「本文字」に「6」が結合(bind)される
。ここでプロログプログラムの書き方次第で「本文字」
の代わりにrlJ 、 r2J 、・・・「6」などの
数あるいはアトム、リストなどの他のデータタイプが記
述されていてもよい。このような変数、数、アトム、リ
ストなどのデータタイプを識別するためにタグ領域をデ
ータに付加する。このタグ情報を調べることによって必
要な処理を効率よく進めることができる。例えば上例で
タグ情報によって変数であることが検出されると[6]
との結合処理を進める。また、「本文字」の代わりに数
があると「61と同一の数を示すタグであることを検出
して、さらに一致処理を進めその数の値の比較を行い、
一致しているか否かを検査する。rlJ、「2」とは不
一値であることを検出し、r6Jとは一致していること
を検出する。また、「本文字」の代わりにアトム、リス
トなどの他のデータタイプが「6」と−数比較処理を行
うときには、それぞれのタグが異ることにより不一致で
あることを検出する。以上の引数に関する一致比較処理
の例を第2図に示す。
記されているレジスタを用いた引数の一致比較処理方式
がある。この方式では[本文字]に関する情報を一度内
部レジスタに格納しておき、後にこの内部レジスタと[
6]との比較処理を行うものである。この引数比較処理
では変数「本文字」に「6」が結合(bind)される
。ここでプロログプログラムの書き方次第で「本文字」
の代わりにrlJ 、 r2J 、・・・「6」などの
数あるいはアトム、リストなどの他のデータタイプが記
述されていてもよい。このような変数、数、アトム、リ
ストなどのデータタイプを識別するためにタグ領域をデ
ータに付加する。このタグ情報を調べることによって必
要な処理を効率よく進めることができる。例えば上例で
タグ情報によって変数であることが検出されると[6]
との結合処理を進める。また、「本文字」の代わりに数
があると「61と同一の数を示すタグであることを検出
して、さらに一致処理を進めその数の値の比較を行い、
一致しているか否かを検査する。rlJ、「2」とは不
一値であることを検出し、r6Jとは一致していること
を検出する。また、「本文字」の代わりにアトム、リス
トなどの他のデータタイプが「6」と−数比較処理を行
うときには、それぞれのタグが異ることにより不一致で
あることを検出する。以上の引数に関する一致比較処理
の例を第2図に示す。
(発明が解決しようとする問題点)
前記の例では述語内の引数の筒数が1であったがフロロ
クフロクラムテハ10fM1100rM、1ooo簿ナ
トかなり多くの筒数まで許される。例えば[数字(1,
2゜3.4.・・、n月のようにJffの引数を記述す
ることができる。このとき、前記文献の方式では、前記
述語が呼び出し側であるときには、n箇の内部レジスタ
にそれぞれ1,2,3.4・・・、nの数を格納して次
の呼ばれ側の引数に関する処理に移る必要がある。ここ
で、1000程度の大きなn箇の引数の筒数を許す装置
を実現する場合には、内部レジスタをアドレス可能なラ
ンダムアクセスメモリ(RAM)で実現できる。
クフロクラムテハ10fM1100rM、1ooo簿ナ
トかなり多くの筒数まで許される。例えば[数字(1,
2゜3.4.・・、n月のようにJffの引数を記述す
ることができる。このとき、前記文献の方式では、前記
述語が呼び出し側であるときには、n箇の内部レジスタ
にそれぞれ1,2,3.4・・・、nの数を格納して次
の呼ばれ側の引数に関する処理に移る必要がある。ここ
で、1000程度の大きなn箇の引数の筒数を許す装置
を実現する場合には、内部レジスタをアドレス可能なラ
ンダムアクセスメモリ(RAM)で実現できる。
さらに多くの引数の筒数を処理可能にするためには、プ
ロセッサ内により多(のRAMを実装することが考えら
れるが、この場合には、プロセッサに占めるRAMのハ
ードウェア量が多くなり、コストが高くなる。
ロセッサ内により多(のRAMを実装することが考えら
れるが、この場合には、プロセッサに占めるRAMのハ
ードウェア量が多くなり、コストが高くなる。
本発明の目的はこのような従来の問題点を除去せしめて
、引数の筒数が少数の場合には、RAMではなくレジス
タに格納し、参照時間を短くすることによって、多くの
場合に引数の筒数が少数であるプロログなどのタグ付デ
ータを利用する処理装置の処理性能を高速にすることが
できる装置を提供するものである。
、引数の筒数が少数の場合には、RAMではなくレジス
タに格納し、参照時間を短くすることによって、多くの
場合に引数の筒数が少数であるプロログなどのタグ付デ
ータを利用する処理装置の処理性能を高速にすることが
できる装置を提供するものである。
さらにRAMに格納できる語数以上の引数が指定された
場合にはタグ付きデータを主記憶に格納できる装置を提
供するものである。
場合にはタグ付きデータを主記憶に格納できる装置を提
供するものである。
(問題点を解決するための手段)
前述の問題点を解決するために本発明が提供するデータ
処理装置はデータ及び命令列を格納する記憶部と、前記
記憶部から読み出した命令を格納する命令レジスタと、
前記命令レジスタに格納された命令を解釈する命令デコ
ーダと、処理対象データを格納する1つ以上めデータレ
ジスタと、前記データレジスタよりも参照時間が遅く多
数の語で構成される内部記憶部と、前記命令レジスタに
格納された命令のオペランドシラブルを解読して前記デ
ータレジスタと前記内部記憶部と前記記憶部とから読み
出されるデータのいずれかの出力を選択する選択器と、
前記命令を処理するときにオペランドシラブルで指示さ
れたデータが前記内部記憶部あるいは前記記憶部に格納
されていることを検出してデータを参照するまでに必要
な遅延時間を制御する遅延制御手段と、前記命令によっ
てデータを前記記憶部から読み出して前記選択器への入
力にするメモリ制御手段と、前記選択器から出力される
タグ付データを操作するタグ付データ操作部と、前記命
令で規定される処理を制御する制御部を備えることを特
徴とする。
処理装置はデータ及び命令列を格納する記憶部と、前記
記憶部から読み出した命令を格納する命令レジスタと、
前記命令レジスタに格納された命令を解釈する命令デコ
ーダと、処理対象データを格納する1つ以上めデータレ
ジスタと、前記データレジスタよりも参照時間が遅く多
数の語で構成される内部記憶部と、前記命令レジスタに
格納された命令のオペランドシラブルを解読して前記デ
ータレジスタと前記内部記憶部と前記記憶部とから読み
出されるデータのいずれかの出力を選択する選択器と、
前記命令を処理するときにオペランドシラブルで指示さ
れたデータが前記内部記憶部あるいは前記記憶部に格納
されていることを検出してデータを参照するまでに必要
な遅延時間を制御する遅延制御手段と、前記命令によっ
てデータを前記記憶部から読み出して前記選択器への入
力にするメモリ制御手段と、前記選択器から出力される
タグ付データを操作するタグ付データ操作部と、前記命
令で規定される処理を制御する制御部を備えることを特
徴とする。
(作用)
本発明は上述の手段により、従来技術の問題点を解決し
た。
た。
関数あるいは述語などが持つ引数の笥故に関するプログ
ラム特性として、引数の筒数が少ないものの出現頻度は
高く引数の筒数が多いものは順次出現頻度が低下する。
ラム特性として、引数の筒数が少ないものの出現頻度は
高く引数の筒数が多いものは順次出現頻度が低下する。
この特性を利用して、引数の筒数が少ない場合にはプロ
セッサの引数用の内部レジスタを用psて高速処理可能
にし、引数の箇RAMの容量以上になると、高速RAM
よりも参照に要する時間は長くなるが、大量の引数を格
納することができる主記憶に格納する。このようにプロ
グラム特性を利用して、引数の内部表現形式であるタグ
付きデータの記憶場所を3つの階層にすることにより、
タグ付きデータの実効的なタグ解析時間を内部レジスタ
から読み出した場合の解析時間に近い程度に高速化し、
かつ主記憶を利用することにより多(のタグ付きデータ
を格納できるようにする。
セッサの引数用の内部レジスタを用psて高速処理可能
にし、引数の箇RAMの容量以上になると、高速RAM
よりも参照に要する時間は長くなるが、大量の引数を格
納することができる主記憶に格納する。このようにプロ
グラム特性を利用して、引数の内部表現形式であるタグ
付きデータの記憶場所を3つの階層にすることにより、
タグ付きデータの実効的なタグ解析時間を内部レジスタ
から読み出した場合の解析時間に近い程度に高速化し、
かつ主記憶を利用することにより多(のタグ付きデータ
を格納できるようにする。
(実施例)
以上本発明の一実施例を図面を用いて詳細に説明する。
第1図は本発明の装置の一実施例を示すブロック図であ
る。図中10はタグ付きデータおよび命令列を格納する
記憶部、8は記憶部10を参照するためにアドレスを保
持するアドレスレジスタ、9は記憶部10から読み出し
たデータを格納して作業用のレジスタとして利用するデ
ータレジスタM、11は記憶部10から読み出した命令
を格納する命令レジスタ、12.13,14,15は記
憶部10から読み出した引数に関するタグ付きデータを
格納すると共に高速な参照を実現するデータレジスタA
、B、C,D、 16はアドレス可′能な高速ランダム
アクセスメモリで構成することにより、多くのタグ付き
データを格納可能にする内部記憶部であり、1024語
の容量を持つ。、この内部記憶部16は命令レジスタ1
1に格納された命令のオペランドシラブルであって内部
レジスタを指示するフィールドをアドレス情報として入
力することによって一語のタグ付きデータを出力する。
る。図中10はタグ付きデータおよび命令列を格納する
記憶部、8は記憶部10を参照するためにアドレスを保
持するアドレスレジスタ、9は記憶部10から読み出し
たデータを格納して作業用のレジスタとして利用するデ
ータレジスタM、11は記憶部10から読み出した命令
を格納する命令レジスタ、12.13,14,15は記
憶部10から読み出した引数に関するタグ付きデータを
格納すると共に高速な参照を実現するデータレジスタA
、B、C,D、 16はアドレス可′能な高速ランダム
アクセスメモリで構成することにより、多くのタグ付き
データを格納可能にする内部記憶部であり、1024語
の容量を持つ。、この内部記憶部16は命令レジスタ1
1に格納された命令のオペランドシラブルであって内部
レジスタを指示するフィールドをアドレス情報として入
力することによって一語のタグ付きデータを出力する。
また、データレジスタA12.B13.C14,D15
に比べ読み出し時間が遅い。17は前記のフィールド情
報を解析し、データレジスタA12.B13.C14,
D15および内部記憶部16の出力の一つを選択する選
択器、21はマイクロプログラムによる制御でデータ処
理装置での処理の流れを制御する制御部、19は命令レ
ジスタ11に格納されている前記フィールドを解析し、
内部記憶部16あるいは記憶部10からのデータ参照で
ある場合には参照時期を遅らせる信号を制御部21に送
り、データレジスタA12.B13.C14,D15へ
の参照である場合には高速に参照できることを制御部2
1に指示する遅延指示器、20は選択器17から出力さ
れるタグ部の情報を解析し、制御部21に処理の流れを
指示するタグ分岐指示器、22は命令レジスタ11に格
納された命令のコードを解析し、その結果を制御部21
に送る命令デコーダ、23は選択器17から出力される
タグ付きデータにおけるデータの値と命令レジスタ11
の中に格納された命令の中で即値として命令中に表現さ
れたデータの値との比較を行う比較器であり、遅延指示
器19は遅延制御手段を構成する一例として示す。タグ
分岐指示器20および比較結果を制御部21に送る。比
較器23はタグ付データ操作部30の一例として、アド
レスレジスタおよびデータレジスタ9はメモリ制御手段
31を構成する一例として示す。
に比べ読み出し時間が遅い。17は前記のフィールド情
報を解析し、データレジスタA12.B13.C14,
D15および内部記憶部16の出力の一つを選択する選
択器、21はマイクロプログラムによる制御でデータ処
理装置での処理の流れを制御する制御部、19は命令レ
ジスタ11に格納されている前記フィールドを解析し、
内部記憶部16あるいは記憶部10からのデータ参照で
ある場合には参照時期を遅らせる信号を制御部21に送
り、データレジスタA12.B13.C14,D15へ
の参照である場合には高速に参照できることを制御部2
1に指示する遅延指示器、20は選択器17から出力さ
れるタグ部の情報を解析し、制御部21に処理の流れを
指示するタグ分岐指示器、22は命令レジスタ11に格
納された命令のコードを解析し、その結果を制御部21
に送る命令デコーダ、23は選択器17から出力される
タグ付きデータにおけるデータの値と命令レジスタ11
の中に格納された命令の中で即値として命令中に表現さ
れたデータの値との比較を行う比較器であり、遅延指示
器19は遅延制御手段を構成する一例として示す。タグ
分岐指示器20および比較結果を制御部21に送る。比
較器23はタグ付データ操作部30の一例として、アド
レスレジスタおよびデータレジスタ9はメモリ制御手段
31を構成する一例として示す。
次に本発明の一実施例の動作をタグ付きデータの操作命
令の一つを例としてとり゛あげて説明する。タグ付きデ
ータの提作命令の一つとして内部レジスタのi番目のタ
グ付きデータ(Ai)と命令内で表現される整数の即値
(N)との−数比較処理を行う[整数比較命令」の例を
示す。この命令の形式を第3図に示す。この命令は命令
コードフィールドとi番目の内部レジスタ(Aりを示す
内部レジスタフィールドと、整数の即値(N)を示す整
数即値フィールドから成る。内部レジスタフィールドは
16ビツトで構成されているので(2161)番目まで
の内部レジスタを指定することができる。
令の一つを例としてとり゛あげて説明する。タグ付きデ
ータの提作命令の一つとして内部レジスタのi番目のタ
グ付きデータ(Ai)と命令内で表現される整数の即値
(N)との−数比較処理を行う[整数比較命令」の例を
示す。この命令の形式を第3図に示す。この命令は命令
コードフィールドとi番目の内部レジスタ(Aりを示す
内部レジスタフィールドと、整数の即値(N)を示す整
数即値フィールドから成る。内部レジスタフィールドは
16ビツトで構成されているので(2161)番目まで
の内部レジスタを指定することができる。
この整数比較命令の動作は第2図呼び出し側の引数のタ
グによる分岐以下の動作に対応する。これ□を第1図の
実施例を用いて説明する。この命令は記憶部10から読
み出され、命令レジスタ11に格納される。命令レジス
タ11の命令コードフィールドを命令デコーダ22で検
出し、制御部21において整数比較命令の処理を開始す
る。はじめに、命令レジスタ11の内部レジスタフィー
ルドで示されるAiレジスタを参照する。
グによる分岐以下の動作に対応する。これ□を第1図の
実施例を用いて説明する。この命令は記憶部10から読
み出され、命令レジスタ11に格納される。命令レジス
タ11の命令コードフィールドを命令デコーダ22で検
出し、制御部21において整数比較命令の処理を開始す
る。はじめに、命令レジスタ11の内部レジスタフィー
ルドで示されるAiレジスタを参照する。
命令レジスタ11の内部レジスタフィールドを選択器1
7に入力することにより、AiがOから3番目の内部レ
ジスタを示す値であることが検出される場合には、これ
に対応してデータレジスタA12.B13゜C14,D
15の一つを選択器17で選択し、出力する。また、A
iが4以上1023以下の数を示すときには選択器17
では内部記憶部16の出力を選択する。さらにAiが1
024以上の数を示すときにはデータレジスタM9の出
力を選択する。内部記憶部16の読み出しは内部レジス
タフィールドの値をアドレスとして入力することにより
行い、−語のタグ付データが読み出される。
7に入力することにより、AiがOから3番目の内部レ
ジスタを示す値であることが検出される場合には、これ
に対応してデータレジスタA12.B13゜C14,D
15の一つを選択器17で選択し、出力する。また、A
iが4以上1023以下の数を示すときには選択器17
では内部記憶部16の出力を選択する。さらにAiが1
024以上の数を示すときにはデータレジスタM9の出
力を選択する。内部記憶部16の読み出しは内部レジス
タフィールドの値をアドレスとして入力することにより
行い、−語のタグ付データが読み出される。
器17の出力としてタグ分岐指示器20に送り、タグ分
岐指示器20では分岐方向を検出して制御部21に送り
、制御部21では検出された分岐に従ってマイクロプロ
グラムの分岐を行う。この処理は第2図の呼び出し側の
引数のタグによる分岐処理に示される。ここでAiが[
2]であればデータレジスタC14が選択器17の出力
として選択される。さらにデータレジスタC14の内容
としてタグ部で示されるデータタイプが整数であり、値
が「6」であれば、タグ分岐指示器では第2図において
呼び出し側の引数のタグが数字の方向にマイクロプログ
ラムを分岐するための情報を制御部21に送る。データ
レジスタC14に格納されているデータの内容の例を第
4図に示す。
岐指示器20では分岐方向を検出して制御部21に送り
、制御部21では検出された分岐に従ってマイクロプロ
グラムの分岐を行う。この処理は第2図の呼び出し側の
引数のタグによる分岐処理に示される。ここでAiが[
2]であればデータレジスタC14が選択器17の出力
として選択される。さらにデータレジスタC14の内容
としてタグ部で示されるデータタイプが整数であり、値
が「6」であれば、タグ分岐指示器では第2図において
呼び出し側の引数のタグが数字の方向にマイクロプログ
ラムを分岐するための情報を制御部21に送る。データ
レジスタC14に格納されているデータの内容の例を第
4図に示す。
次に、内部レジスタフィールドのAiが4以上1023
以下の数である場合を示す。このときには、選択!17
の出力として内部記憶部16の出力を選択する。遅延指
示器19では遅延を指示する信号を出力する。第1図の
制御部21の一部の機能として存在している遅延を制御
するためのハードウェアを第5図に示す。50はマイク
ロプログラム列を格納するマイクロメモリ、51はマイ
クロメモリ50から読み、出したマイクロプログラムを
格納するマイクロブ、f:1グラムレジスタ、52はマ
イクロプログラム実行却に割込みが発生したときに、マ
イクロプロゲラ法レジスタ51の内容を退避するリター
ンレジスタである。割込みに関する処理を終了した後、
再び割込み発生時のマイクロプログラムを実行するため
にリターンレジスタ52の内容をマイクロプログラムレ
ジスタ51に戻す。53はマイクロプログラムの分岐を
制御するマイクロ分岐制御部であり、割込み時、リター
ン時のマイクロプログラムのアドレスを制御する。この
他、遅延指示器19からの信号により命令の内部レジス
タフィールドの値が4以上であり、遅延終了フラグ54
がO”のときに内部記憶部16あるいは記憶部10の中
のタグ付きデータを参照するためにマイクロ分岐制御部
53では割込み処理用のマイクロプログラムへ分岐する
処理を行う。このときに遅延終了フラグ54を1′にセ
ットする。
以下の数である場合を示す。このときには、選択!17
の出力として内部記憶部16の出力を選択する。遅延指
示器19では遅延を指示する信号を出力する。第1図の
制御部21の一部の機能として存在している遅延を制御
するためのハードウェアを第5図に示す。50はマイク
ロプログラム列を格納するマイクロメモリ、51はマイ
クロメモリ50から読み、出したマイクロプログラムを
格納するマイクロブ、f:1グラムレジスタ、52はマ
イクロプログラム実行却に割込みが発生したときに、マ
イクロプロゲラ法レジスタ51の内容を退避するリター
ンレジスタである。割込みに関する処理を終了した後、
再び割込み発生時のマイクロプログラムを実行するため
にリターンレジスタ52の内容をマイクロプログラムレ
ジスタ51に戻す。53はマイクロプログラムの分岐を
制御するマイクロ分岐制御部であり、割込み時、リター
ン時のマイクロプログラムのアドレスを制御する。この
他、遅延指示器19からの信号により命令の内部レジス
タフィールドの値が4以上であり、遅延終了フラグ54
がO”のときに内部記憶部16あるいは記憶部10の中
のタグ付きデータを参照するためにマイクロ分岐制御部
53では割込み処理用のマイクロプログラムへ分岐する
処理を行う。このときに遅延終了フラグ54を1′にセ
ットする。
内部レジスタフィールドの値が4以上、1023以下で
かつ遅延終了フラグ54が0″のときには内部記憶部1
6に格納されているタグ付きデータを参照する。この内
部記1;ヲ部16のデータを参照するためには1マシン
サイクルの遅延があれば十分であるので、1マシンサイ
クルの割込み処理を実行し、元のマイクロプログラムの
処理を開始する。このた5め11J込み処理としては、
リターンレジスタ52の内容をマイクロプログラムレジ
スタ51に戻す。
かつ遅延終了フラグ54が0″のときには内部記憶部1
6に格納されているタグ付きデータを参照する。この内
部記1;ヲ部16のデータを参照するためには1マシン
サイクルの遅延があれば十分であるので、1マシンサイ
クルの割込み処理を実行し、元のマイクロプログラムの
処理を開始する。このた5め11J込み処理としては、
リターンレジスタ52の内容をマイクロプログラムレジ
スタ51に戻す。
内部レジスタフィールドの値が1024以上のときには
記憶部10に格納されているタグ付きデータを参照する
。この記憶部10のデータを参照するためのアドレスは
引数ペースレジスタ56に格納されている記憶部10の
ベースアドレスに内部レジスタフィールドで示される値
を加算器57で加算することにより、対象データのアド
レスを求めアドレスレジスタ8へ格納する。このアドレ
スにより記憶部10から読み出したタグ付きデータをデ
ータレジスタM9に格納する。この割込み処理の最後で
、リターンレジスタ52の内容をマイクロプログラムレ
ジスタ51に戻し、遅延終了フラグ54をTにして元の
マイクロプログラムの処理を開始する。これらの割込み
処理に関係した処理の流れを第6図に示す。
記憶部10に格納されているタグ付きデータを参照する
。この記憶部10のデータを参照するためのアドレスは
引数ペースレジスタ56に格納されている記憶部10の
ベースアドレスに内部レジスタフィールドで示される値
を加算器57で加算することにより、対象データのアド
レスを求めアドレスレジスタ8へ格納する。このアドレ
スにより記憶部10から読み出したタグ付きデータをデ
ータレジスタM9に格納する。この割込み処理の最後で
、リターンレジスタ52の内容をマイクロプログラムレ
ジスタ51に戻し、遅延終了フラグ54をTにして元の
マイクロプログラムの処理を開始する。これらの割込み
処理に関係した処理の流れを第6図に示す。
これらの割込み処理の後タグ分岐処理を行う。
このときには、分岐処理対象のタグ付きデータは、命令
レジスタ11に格納された命令の内部レジスタフィール
ドの値に従って、選択器17で選択される。つまり、内
部レジスタフィールドの値がθ〜3のときには、データ
レジスタA12.B13.C14゜D15のデータがそ
れぞれ選択され、内部レジスタフィールドの値が4以上
1023以下のときには内部記憶部16の出力が選択さ
れ、内部レジスタフィールドの値が1024以上のとき
には記憶部10がら読み出したデータが格納されている
データレジスタM9のデータが選択される。
レジスタ11に格納された命令の内部レジスタフィール
ドの値に従って、選択器17で選択される。つまり、内
部レジスタフィールドの値がθ〜3のときには、データ
レジスタA12.B13.C14゜D15のデータがそ
れぞれ選択され、内部レジスタフィールドの値が4以上
1023以下のときには内部記憶部16の出力が選択さ
れ、内部レジスタフィールドの値が1024以上のとき
には記憶部10がら読み出したデータが格納されている
データレジスタM9のデータが選択される。
呼び出し側の引数のタグによる分岐処理を終了した後、
呼ばれ側の引数のタイプを検査する。この整数比較命令
の場合には命令コードによって、既に呼ばれ側の引数の
タイプが数字であることを制御部21で検出している。
呼ばれ側の引数のタイプを検査する。この整数比較命令
の場合には命令コードによって、既に呼ばれ側の引数の
タイプが数字であることを制御部21で検出している。
この結果、データタイプにおいて、呼び出し側の引数と
呼ばれ側の引数とは一致する。次に引数の値を含めた一
致を検査する。即ち呼び出し側の引数として選択器17
から出力されるAi番目のデータの値を比較器23の一
つの入力とし、呼ばれ側の引数として命令レジスタ11
にある整数即位フィールドで示される値を比較器23の
他の入力とする。ここで、選択器17の出力が数字「6
]である第4図の形式であるときに、整数即値フィール
ドの値が数字「6」であれば、比較器23では一致を検
出し、制御部21にこの一致信号を送る。また整数即値
の値が数字r6J以外であれ′■の進め方を決定する。
呼ばれ側の引数とは一致する。次に引数の値を含めた一
致を検査する。即ち呼び出し側の引数として選択器17
から出力されるAi番目のデータの値を比較器23の一
つの入力とし、呼ばれ側の引数として命令レジスタ11
にある整数即位フィールドで示される値を比較器23の
他の入力とする。ここで、選択器17の出力が数字「6
]である第4図の形式であるときに、整数即値フィール
ドの値が数字「6」であれば、比較器23では一致を検
出し、制御部21にこの一致信号を送る。また整数即値
の値が数字r6J以外であれ′■の進め方を決定する。
(発明の効果)
本発明によればデータ処理装置中にタグ付きデータを格
納する内部レジスタとして、ハードウェア量としては大
量に必要であるが、高速に参照可能な少数のデータレジ
スタと比較的少ないハードウェアで比較的多くのタグ付
きデータを格納でき参照速度がデータレジスタより遅い
内部記憶と最も多くのデータを格納でき、参照速度が最
も遅い主記憶(本実施例の記憶部10に対応する)で実
現する。この結果、少数の引数で記述しているものがほ
とんどであるプロログ言語の述語あるいは関数型言語の
関数のタグ付データの操作をデータレジスタを用いて処
理することにより高速にする。さらに、プログラムが記
述されている引数の筒数が増加した場合には内部記憶部
を利用することによってタグ付きデータの操作を比較的
高速に実現する。さらに引数の筒数が増加した場合には
、主記憶を利用することによって大量の引数に対する処
理を可能にする。すなわち、プログラムの特性を考慮し
て、実効的には高速なタグ付デーと 第1図は本発明の
一実施例を示すブロック図、第2図はタグ付きデータを
提作する処理手順の一例を示y処理フロー図、第3図は
タグ操作関係の命令の一例として示す整数比較の命令形
式を示す図、第4図は内部レジスタに格納されるタグ付
データの例を示す図、第5図は遅延制御ハードウェアの
ブロック図、第6図はタグ付きデータが格納されている
記憶部に応じて必要な割込み処理フローを示す図である
。
納する内部レジスタとして、ハードウェア量としては大
量に必要であるが、高速に参照可能な少数のデータレジ
スタと比較的少ないハードウェアで比較的多くのタグ付
きデータを格納でき参照速度がデータレジスタより遅い
内部記憶と最も多くのデータを格納でき、参照速度が最
も遅い主記憶(本実施例の記憶部10に対応する)で実
現する。この結果、少数の引数で記述しているものがほ
とんどであるプロログ言語の述語あるいは関数型言語の
関数のタグ付データの操作をデータレジスタを用いて処
理することにより高速にする。さらに、プログラムが記
述されている引数の筒数が増加した場合には内部記憶部
を利用することによってタグ付きデータの操作を比較的
高速に実現する。さらに引数の筒数が増加した場合には
、主記憶を利用することによって大量の引数に対する処
理を可能にする。すなわち、プログラムの特性を考慮し
て、実効的には高速なタグ付デーと 第1図は本発明の
一実施例を示すブロック図、第2図はタグ付きデータを
提作する処理手順の一例を示y処理フロー図、第3図は
タグ操作関係の命令の一例として示す整数比較の命令形
式を示す図、第4図は内部レジスタに格納されるタグ付
データの例を示す図、第5図は遅延制御ハードウェアの
ブロック図、第6図はタグ付きデータが格納されている
記憶部に応じて必要な割込み処理フローを示す図である
。
図において、10は記憶部、11は命令レジスタ、12
.13,14.15はそれぞれデータレジスタA、B、
C,D、16はアドレス可能な内部記憶部、17はデー
タレジスタおよび内部記憶部の出力の一つを選択する選
択器、19は選択器の出力として内部記憶部が選択され
るときに出力するまでの時間がデータレジスタを選択す
る場合に比べ遅いことを指示する遅延指示器、20は選
択器の出力中のタグ部を解析して処理の流れを変え方向
を指示するためのタグ分岐指示器、21はタグ付きデー
タの操作および本データ処理装置の処理を制御する制御
部、22は命令レジスタ中の命令を解釈する命令デコー
ダ、30はタグ分岐指示器および比較器を一例として示
したタグ付データ操作部、31はアドレスレジスタおよ
びデータレジスタMによる構成を一例として示したメモ
リ制御手段である。
.13,14.15はそれぞれデータレジスタA、B、
C,D、16はアドレス可能な内部記憶部、17はデー
タレジスタおよび内部記憶部の出力の一つを選択する選
択器、19は選択器の出力として内部記憶部が選択され
るときに出力するまでの時間がデータレジスタを選択す
る場合に比べ遅いことを指示する遅延指示器、20は選
択器の出力中のタグ部を解析して処理の流れを変え方向
を指示するためのタグ分岐指示器、21はタグ付きデー
タの操作および本データ処理装置の処理を制御する制御
部、22は命令レジスタ中の命令を解釈する命令デコー
ダ、30はタグ分岐指示器および比較器を一例として示
したタグ付データ操作部、31はアドレスレジスタおよ
びデータレジスタMによる構成を一例として示したメモ
リ制御手段である。
Claims (1)
- データの属性を示すタグ領域と値領域とで各データが表
現されるデータ処理装置において、前記データ及び命令
列を格納する記憶部と、前記記憶部から読み出した命令
を格納する命令レジスタと、前記命令レジスタに格納さ
れた命令を解釈する命令デコーダと、処理対象データを
格納する1つ以上のデータレジスタと、前記データレジ
スタよりも参照時間が遅く多数の語で構成される内部記
憶部と、前記命令レジスタに格納された命令のオペラン
ドシラブルを解読して前記データレジスタと前記内部記
憶部と前記記憶部とから読み出されるデータのいずれか
の出力を選択する選択器と、前記命令を処理するときに
オペランドシラブルで指示されたデータが前記内部記憶
部あるいは前記記憶部に格納されていることを検出して
データを参照するまでに必要な遅延時間を制御する遅延
制御手段と、前記命令によってデータを前記記憶部から
読み出して前記選択器への入力にするメモリ制御手段と
、前記選択器から出力されるタグ付データを操作するタ
グ付データ操作部と、前記命令で規定される処理を制御
する制御部を備え、前記遅延制御手段と前記メモリデー
タレジスタによって前記制御部で前記データレジスタお
よび前記内部記憶および前記記憶部の出力を前記タグ付
データ操作部で処理対象にする時期を決定することによ
ってタグ付データの操作を可能にしたことを特徴とする
データ処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61046316A JPS62204341A (ja) | 1986-03-05 | 1986-03-05 | デ−タ処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61046316A JPS62204341A (ja) | 1986-03-05 | 1986-03-05 | デ−タ処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS62204341A true JPS62204341A (ja) | 1987-09-09 |
Family
ID=12743759
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61046316A Pending JPS62204341A (ja) | 1986-03-05 | 1986-03-05 | デ−タ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS62204341A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6748755B2 (en) | 2000-03-09 | 2004-06-15 | Fujitsu Limited | Refrigeration system utilizing incomplete evaporation of refrigerant in evaporator |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| 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 | タグ付きデ−タを扱う論理型デ−タ処理装置 |
-
1986
- 1986-03-05 JP JP61046316A patent/JPS62204341A/ja active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| 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 (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6748755B2 (en) | 2000-03-09 | 2004-06-15 | Fujitsu Limited | Refrigeration system utilizing incomplete evaporation of refrigerant in evaporator |
| US7007506B2 (en) | 2000-03-09 | 2006-03-07 | Fujitsu Limited | Refrigeration system utilizing incomplete evaporation of refrigerant in evaporator |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR950006616B1 (ko) | 변환된 프로그램 코드에서 소스 명령 분자를 보전하기 위한 시스템 및 방법 | |
| KR960042340A (ko) | 프로그램변환장치 및 프로세서 | |
| Anantharaman et al. | A hardware accelerator for speech recognition algorithms | |
| JP7245817B2 (ja) | データ処理装置における連続値の照合 | |
| Liu et al. | Techniques of program execution with a writable control memory | |
| US5109523A (en) | Method for determining whether data signals of a first set are related to data signal of a second set | |
| JP2000284964A (ja) | Vliwプロセッサにおける効率的なサブ命令エミュレーション | |
| JPS62204340A (ja) | デ−タ処理装置 | |
| JPH0527142B2 (ja) | ||
| US20060253271A1 (en) | Method for facilitating transformation of multi-threaded process-oriented object code to event-based object code | |
| JPS62204339A (ja) | デ−タ処理装置 | |
| JPS61245239A (ja) | 論理回路方式 | |
| Ramamoorthy et al. | A higher level language for micro-programming | |
| JPH06230963A (ja) | メモリアクセス制御装置 | |
| JPH04268928A (ja) | エミュレーション装置及び半導体装置 | |
| JPH0581075A (ja) | ソフトウエア開発装置 | |
| Hai et al. | Multi-threaded on-the-fly model generation of malware with hash compaction | |
| US7627859B2 (en) | Method for configuring non-script language library files to be run as scripts | |
| JPH02257218A (ja) | 電子計算機 | |
| JPS62295139A (ja) | 論理型言語処理装置 | |
| JPH0658632B2 (ja) | デ−タ処理装置 | |
| Iliffe | DIGITAL SYSTEMS LABORATORY I | |
| JPH04308935A (ja) | コード生成装置 | |
| JPS59173876A (ja) | ベクトル・デ−タ処理装置 | |
| JPH0619714B2 (ja) | プロローグ処理方法 |