JPH0363094B2 - - Google Patents

Info

Publication number
JPH0363094B2
JPH0363094B2 JP3031982A JP3031982A JPH0363094B2 JP H0363094 B2 JPH0363094 B2 JP H0363094B2 JP 3031982 A JP3031982 A JP 3031982A JP 3031982 A JP3031982 A JP 3031982A JP H0363094 B2 JPH0363094 B2 JP H0363094B2
Authority
JP
Japan
Prior art keywords
list
cell
section
marking
memory
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.)
Expired
Application number
JP3031982A
Other languages
English (en)
Other versions
JPS58146946A (ja
Inventor
Masahiro Yamamoto
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.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP3031982A priority Critical patent/JPS58146946A/ja
Publication of JPS58146946A publication Critical patent/JPS58146946A/ja
Publication of JPH0363094B2 publication Critical patent/JPH0363094B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】 本発明はリスト構造データを記憶する記憶セル
に関するものである。
信号処理や人工知能に関するプログラム作成の
ための言語としてLispに代表されるリスト処理言
語が広く用いられている。
Lispなどのリスト処理言語では、タグ部、、デ
ータ部、ポインタ部から成るリストセルを基本に
してプログラムやリスト構造データを記憶装置内
で表現している。
第1図は記憶装置内の1語をタグ部、データ
部、ポインタ部として使用し、100から102番地の
3語を用いてリストデータ(ABC)を表現した
例である。そして、データ部は実際のデータA.
B.Cが蓄積されている場所を指しており、ポイン
タ部は次のリストを指しており、102番地のポイ
ンタ部の“NIL”はリストデータの最後であるこ
とを示している。またタグ部は各種の目的に使用
され、本発明ではそのリストセルが有効(例え
ば、“1”によつて示される)か無効かを区別す
るのに用いられる。
このようなリストセルを用いてリスト処理が進
む途中でリストセルが必要になると、使用可能セ
ルリストから取られて使われて行く。また、一時
的にワーキング用として使用されたリストセルは
処理が完了すると記憶装置の中に放置されること
になる。
このために、使用可能セルリストが全て使いは
たされると、記憶装置内の使用されていないリス
トセルを回収し、使用可能リストセルとして登録
することが必要となる。この動作をガーベツジコ
レクシヨン(GC:くず集め)と呼ばれる。
このGC動作は一般に、次の2つのステツプで
行われる。
(1) 記憶装置内の全リストセルのタグ部を無効状
態(“0”)に初期化する。
(2) 計算機内の制御用レジスタや演算処理用のス
タツク中のポインタデータ、など、リスト処理
に関連する全てのレジスタを基に、これらのレ
ジスタから連結されたリストセルを探索し、タ
グ部を有効状態(“1”)にする。
上記2つのステツプの後、リストセルの要求
が発生すると次の処理が行われ、与えられる。
(3) 記憶装置内のリストセルのタグ部を探索し、
無効状態にあるリストセルを見つけ、そのリス
トセルを与える。この時、無効状態のリストセ
ルは通常複数個存在すると考えられるが、例え
ば、下位番地のものから順に与えることが行わ
れる。
このような上記3つのステツプは、記憶機構し
か持たない記憶装置を用いた従来の計算機におい
ては、計算機内の中央処理装置の制御により、1
語ずつ記憶装置から取り出し、逐次処理を行うこ
とによつて達成されていた。このために、中央処
理装置と記憶装置間のデータ転送が頻繁に発生
し、リスト処理性能の低下の最大原因であつた。
本発明の目的は、リスト処理で必要とされる機
能を内蔵したリストメモリを提供することであ
り、その第1の目的は、初期化処理をメモリ単位
で並列に行うことが可能なリストメモリを提供す
ることである。
本発明の第2の目的は、有効セルにマーク付け
を行う機能を内蔵するリストメモリを提供するこ
とである。
本発明の第3の目的は、マーク付けされたリス
トセルの中から使用可能セルを供給する機能を内
蔵するリストメモリを提供することである。
本発明の第4の目的は使用可能リストセルの中
から次に要求された時に供給するリストセルを前
もつて準備しておく機能を内蔵したリストメモリ
を提供することである。
即ち、本発明によれば、第1にタグ部、データ
部、ポインタ部を備えたリストセルが複数個から
成り、順次アドレスづけされた番地によつて読み
書き可能なメモリセルと、該メモリセルの全リス
トセルのタグ部を初期化する第1の処理と、該メ
モリセルの中のリストセルアドレスとマーク付け
要求が外部装置から与えられると、該リストセル
アドレスに対応するリストセルのタグ部を使用状
態にセツトすることによつてマーク付けを行うと
ともに、ポインタ部を取り出し、該ポインタ部が
リストデータの最後を示す時にはマーク付け終了
信号を出力し、該ポインタ部が該メモリセル内の
リストセルの時には該当するリストセルについて
のマーク付けを続け、該ポインタ部が該メモリセ
ル外のリストセルの時には該ポインタ部とマーク
付け継続信号を出力する第2の処理と、リストセ
ル要求信号が外部装置より与えられると、該メモ
リセルのリストセルの中で、タグ部が使用状態に
セツトされておらず、且つ、最小または最大番地
のリストセルのアドレスを出力し、該リストセル
のタグ部を使用状態にセツトする第3の処理とを
制御する制御部を同一チツプ上に具備し、リスト
セルのマーク付けとリストセルの供給を行う機能
を内蔵したリストメモリが得られる。
更に第2として、タグ部、データ部、ポインタ
部を備えたリストセルが複数個から成り、順次ア
ドレスづけされた番地によつて読み書き可能なメ
モリセルと、該メモリセルの全リストセルのタグ
部を初期化する第1の処理と、該メモリセルの中
のリストセルアドレスとマーク付け要求が外部装
置から与えられると、該リストセルアドレスに対
応するリストセルのタグ部を使用状態にセツトす
ることによつてマーク付けを行うとともに、ポイ
ンタ部を取り出し、該ポインタ部がリストデータ
の最後を示す時にはマーク付け終了信号を出力
し、該ポインタ部が該メモリセル内のリストセル
の時には該当するリストセルについてのマーク付
けを続け、該ポインタ部が該メモリセル外のリス
トセルの時には該ポインタ部とマーク付け継続信
号を出力する第2の処理とを制御する第1の制御
部と、該メモリセルのリストセルの中で、タグ部
が使用状態にセツトされておらず、且つ、最小ま
たは最大番地のリストセルアドレスを外部装置か
らのリストセル要求に先行して準備しておく処理
を制御する第2の制御部とを同一チツプ上に具備
し、リストセルのマーク付けと、リストセルの先
取りを行うことによつてリストセルの供給を迅速
に行う機能を内蔵したリストメモリが得られる。
次に、実施例を用いて詳細に説明する。
第2図は本発明を用いたリストメモリの一実施
例を示すブロツク図を示し、メモリセル1、第1
の制御部2および第2の制御部3から成つてい
る。
メモリセル1は1語33ビツトで1024語から成
り、上位1ビツトは制御部11、次の16ビツトは
データ部12、次の16ビツトはポインタ部13と
して使用される。このメモリセルは市販のICメ
モリと同様に実現されるもので、10ビツトのアド
レス信号線101に従つて、リードライト信号線
102−1,102−2の指示に基づく書き込み
と読み出しの動作が行われる。この時、書き込ま
れるデータは信号線103を介して入力され、ま
た、読み出されたデータは信号線104を介して
取り出される。
第1の制御部2は、17ビツトのセルアドレスレ
ジスタ21、メモリセルアドレスレジスタ22、
16ビツト長の比較器23、および、制御回路24
から構成される。セルアドレスレジスタ21およ
びメモリアドレスレジスタはともに市販のフリツ
プフロツプICで構成され、セルアドレスレジス
タ21はリストセルのタグ部とポインタ部を蓄積
し、メモリアドレスレジスタ22はこのメモリセ
ルのアドレスを蓄積する。
比較器23は、2進データの比較を行うもの
で、市販のゲート回路を用いて構成される。そし
て、セルアドレスレジスタ21のポインタ部の上
位6ビツトとメモリアドレスレジスタ22との比
較、および、セルアドレスレジスタ21のポイン
タ部とリストデータの最終を示す定数値“NIL”
との比較のために用いられる。
制御回路24は以下に述べる制御を行うもの
で、市販のフリツプフロツプICとゲート回路IC
とを組み合わせることにより構成される。
第2の制御部3は17ビツトのセルアドレスレジ
スタ31と制御回路32から構成される。セルア
ドレスレジスタ31は市販のフリツプフロツプ
ICで構成され、リスセルの制御部と次に供給す
るリストセルのアドレスを蓄積する。
制御回路32は以下に述べる制御を行うもの
で、市販のフリツプフロツプICとゲート回路IC
とを組み合わせることにより構成される。
次に、第1の制御部2の動作と制御回路24が
行う制御の内容について述べる。
第1の制御部2は以下の3つの動作を行う。
(1) 外部装置より、初期化信号201が与えられ
ると、セルアドレスレジスタ21のセルアドレ
スを0から1023番地まで変えながら、制御信号
線301の制御により、全リストセルのタグ部
を無効状態(“0”)にする。
(2) 外部装置より、マーク付け要求信号202が
セルアドレス203とともに与えられると、以
下の動作を行う。
セルアドレス203の値をセルアドレスレジ
スタ21にセツトし、次に、このアドレスを信
号線101を介してメモリセル1に送ることに
より該該当するリストセルにアクセスする。そ
して、信号線302により、そのリストセルの
タグ部を“1”にセツトすることによりマーク
付けを行うとともに、ポインタ部を信号線20
4を介してセルアドレスレジスタ21にセツト
する。
次に、セルアドレスレジスタ21の上位6ビ
ツトとメモリアドレスレジスタ22およびセル
アドレスレジスタ21と定数値“NIL”とを比
較器23を用いて比較する。セルアドレスレジ
スタ21が定数値“NIL”に等しくなく、且
つ、、メモリアドレスレジスタ22に等しい場
合には、セルアドレスレジスタ21のセルアド
レスを用いて、上記のマーク付け動作を続け
る。また、セルアドレスレジスタ21が定数値
“NIL”に等しくなく、且つ、メモリアドレス
レジスタ22にも等しくない場合には、セルア
ドレスレジスタ21のポインタ部を信号線20
6を介して、マーク付け継続信号205ととも
に外部装置へ出力する。外部装置では、この情
報を用いて、他のメモリセルに対してマーク付
け動作を続けることになる。更に、メモリアド
レスレジスタ22が定数値“NIL”に等しい時
には、マーク付け終了信号207を出力する。
(3) 外部装置より、リストセル要求信号208が
送られると、以下の動作を行う。セルアドレス
レジスタ21の下位10ビツトを0から1023まで
変化させることにより、リストセルのタグ部を
信号線204を介してセルアドレスレジスタ2
1のタグ部に読み出す。1語読み出すごとに、
信号線209により、タグ部が“0”か否かを
判定し、最初に“0”になつているリストセル
を見つける。タグ部が“0”のリストセルを見
つけると、メモリセル内のそのリストセルのタ
グ部を“1”にセツトすると共に、メモリアド
レスを信号線210を介して、セルアドレスレ
ジスタ21の上位6ビツトにセツトする。その
後、セルアドレスレジスタ21のセルアドレス
を信号線206を介して外部装置に出力する。
又、この時、タグ部が“0”のリストセルがな
い場合には、そのこと示す信号を信号線211
を介して外部装置に出力する。
以上の動作を制御回路24のもとで行うことに
より、初期化、マーク付け、リストセル要求、に
対する処理が達成される。
尚、メモリアドレスレジスタ22は図示されな
い信号線を介して外部装置からメモリセルアドレ
スがセツトされるか、内部の固定回路によりセツ
トされることが可能である。
次に、第2の制御部3の動作と制御回路32が
行う制御の内容について述べる。
第2の制御部3は前記第1の制御部2において
行つたリストセル要求に対する処理を高速に行う
ことを目的に備えられたもので、リストセル要求
が来る前に、次に供給するリストセルを準備して
おくものである。
リスト処理開始に先だつて、外部装置より、先
取り要求信号401が送られる。この信号に基づ
いて、制御回路32は、第1の制御部2のメモリ
アドレスレジスタ22のメモリアドレスを信号線
403を介してセルアドレスレジスタ31のポイ
ンタ部の上位6ビツト部にセツトする。
次に、セルアドレスレジスタ31のポインタ部
の下位10ビツトを0から1023に変化させ、その値
を信号線404を介してメモリセル1に与え、セ
ルアドレスレジスタ31が示すリストセルのタグ
部を信号線405を介してセルアドレスレジスタ
31のタグ部に逐次取り出す。次に、セルアドレ
スレジスタ31のタグ部を信号線406を介して
入力し、制御回路32は現在のリストセルが無効
(“0”)か否かをしらべ、無効セルが見つかるま
でこの動作を続ける。この動作の結果、セルアド
レスレジスタ31は次に使用して良いリストセル
のアドレスを保持することになる。
次に、リスト処理の途中において、リストセル
要求信号402が外部装置から与えられると、セ
ルアドレスレジスタ31のポインタ部のデータを
信号線407を介して送り返す。更に、セルアド
レスレジスタ31のポインタ部を増加させ、タグ
部が無効状態を示すリストセルを見つける前記と
同様な処理を行うことにより、次に使用できるリ
ストセルを先取りしておく。また、この動作にお
いて、無効状態のリストセルが全然ないときに
は、そのことを示す制御信号408を出力する。
以上、本発明を用いた1実施例について述べ
た。
従つて、本リストメモリのリストセルのビツト
長、語長は単に一例であり、どのような構成であ
つてもよい。
【図面の簡単な説明】
第1図はリストデータの構造を示すブロツク
図、第2図は本発明のリストメモリの一実施例を
示すブロツク図である。 図において、参照数字1はメモリセル、2は第
1の制御部、3は第2の制御部をそれぞれ示す。

Claims (1)

  1. 【特許請求の範囲】 1 タグ部、データ部、ポインタ部を備えたリス
    トセルが複数個から成り、順次アドレスづけされ
    た番地によつて読み書き可能なメモリセルと、該
    メモリセルの全リストセルのタグ部を初期化する
    第1の処理と、該メモリセルの中のリストセルア
    ドレスとマーク付け要求が外部装置から与えられ
    ると、該リストセルアドレスに対応するリストセ
    ルのタグ部を使用状態にセツトすることによつて
    マーク付けを行うとともに、ポインタ部を取り出
    し、該ポインタ部がリストデータの最後を示す時
    にはマーク付け終了信号を出力し、該ポインタ部
    が該メモリセル内のリストセルの時には該当する
    リストセルについてのマーク付けを続け、該ポイ
    ンタ部が該メモリセル外のリストセルの時には該
    ポインタ部とマーク付け継続信号を出力する第2
    の処理と、リストセル要求信号が外部装置より与
    えられると、該メモリセルのリストセルの中で、
    タグ部が使用状態にセツトされておらず、且つ、
    最小または最大番地のリストセルのアドレスを出
    力し、該リストセルのタグ部を使用状態にセツト
    する第3の処理とを制御する制御部とを同一チツ
    プ上に具備し、リストセルのマーク付けとリスト
    セルの供給を行う機能を内蔵したことを特徴とす
    るリストメモリ。 2 タグ部、データ部、ポインタ部を備えたリス
    トセルが複数個から成り、順次アドレスづけされ
    た番地によつて読み書き可能なメモリセルと、該
    メモリセルの全リストセルのタグ部を初期化する
    第1の処理と、該メモリセルの中のリストセルア
    ドレスとマーク付け要求が外部装置から与えられ
    ると、該リストセルアドレスに対応するリストセ
    ルのタグ部を使用状態にセツトすることによつて
    マーク付けを行うとともに、ポインタ部を取り出
    し、該ポインタ部がリストデータの最後を示す時
    にはマーク付け終了信号を出力し、該ポインタ部
    が該メモリセル内のリストセルの時には該当する
    リストセルについてのマーク付けを続け、該ポイ
    ンタ部が該メモリセル外のリストセルの時には該
    ポインタ部とマーク付け継続信号を出力する第2
    の処理とを制御する第1の制御部と、該メモリセ
    ルのリストセルの中で、タグ部が使用状態にセツ
    トされておらず、且つ、最小または最大番地のリ
    ストセルアドレスを外部装置からのリストセル要
    求に先行して準備しておく処理を制御する第2の
    制御部とを同一チツプ上に具備し、リストセルの
    マーク付けと、リストセルの先取りを行うことに
    よつてリストセルの供給を迅速に行う機能を内蔵
    したことを特徴とするリストメモリ。
JP3031982A 1982-02-26 1982-02-26 リストメモリ Granted JPS58146946A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3031982A JPS58146946A (ja) 1982-02-26 1982-02-26 リストメモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3031982A JPS58146946A (ja) 1982-02-26 1982-02-26 リストメモリ

Publications (2)

Publication Number Publication Date
JPS58146946A JPS58146946A (ja) 1983-09-01
JPH0363094B2 true JPH0363094B2 (ja) 1991-09-30

Family

ID=12300472

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3031982A Granted JPS58146946A (ja) 1982-02-26 1982-02-26 リストメモリ

Country Status (1)

Country Link
JP (1) JPS58146946A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60201455A (ja) * 1984-03-26 1985-10-11 Mitsubishi Electric Corp リスト記憶装置
US4775932A (en) * 1984-07-31 1988-10-04 Texas Instruments Incorporated Computer memory system with parallel garbage collection independent from an associated user processor
JP2560361Y2 (ja) * 1990-12-19 1998-01-21 株式会社イナックス 自動水栓における超音波センサ設置構造

Also Published As

Publication number Publication date
JPS58146946A (ja) 1983-09-01

Similar Documents

Publication Publication Date Title
KR950007448B1 (ko) 집적회로 메모리 시스템
KR880000299B1 (ko) 캐쉬장치
US4937738A (en) Data processing system which selectively bypasses a cache memory in fetching information based upon bit information of an instruction
JPH11161547A (ja) データ処理装置用記憶装置、および記憶場所にアクセスする方法
US4513369A (en) Information processing system
US4975872A (en) Dual port memory device with tag bit marking
US6684267B2 (en) Direct memory access controller, and direct memory access control method
US4491911A (en) Data processing system with improved address translation facility
EP0674269B1 (en) Translation mechanism for input/output addresses
JPH0363094B2 (ja)
JPH0362243A (ja) 情報処理システムにおいてメモリアクセスを速くする装置
JPS5848099B2 (ja) 文字パタ−ン発生装置
JP2580263B2 (ja) バッファ記憶装置
JP3132566B2 (ja) 命令先行制御装置
JP2728434B2 (ja) アドレス変換装置
US6219757B1 (en) Cache flush operation for a stack-based microprocessor
JPS5972545A (ja) マイクロプログラム制御システム
JPH01255933A (ja) 掃出し制御方式
JPH04266140A (ja) アドレス変換バッファ装置
JPS59218692A (ja) ロジカルバツフア記憶制御方式
JPS6180331A (ja) 可変長デ−タ処理装置
JPS63208144A (ja) キヤツシユ・メモリ制御装置
JPH01106138A (ja) 連想記憶装置
JPH0511331B2 (ja)
JPH0535599A (ja) 情報処理装置