JPH02224039A - 記憶装置 - Google Patents
記憶装置Info
- Publication number
- JPH02224039A JPH02224039A JP1283593A JP28359389A JPH02224039A JP H02224039 A JPH02224039 A JP H02224039A JP 1283593 A JP1283593 A JP 1283593A JP 28359389 A JP28359389 A JP 28359389A JP H02224039 A JPH02224039 A JP H02224039A
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- input
- port
- list element
- 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)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明は記憶装置に関し 特に記憶装置に対するアクセ
スと同装置 ガーベジコレクシジンのためのマーキング
を行なう回路を内蔵した記憶装置に関すん 従来の技術 ]ンピュータの利用が数値計算分野ばかりでなく、人工
知献 自然言諧処理などの応用分野に広がっていくにっ
札 それを処理するためのプログラムの実行時において
、動的に記憶領域の構造が変化するデータ構造が必要に
なってくム それには動的記憶管理を必要とずム その
動的記憶管理を行なう場合、不必要になった領域を回収
して再利用するガーベジコレクションという方法が使わ
れている。ガーベジコレクションで不要領域の回収を行
なう@台の−・っの方法と(2,“−使用されている領
域にマーク付けをしでいき、このマークが付けられてい
ない領域 ずなわぢ不要領域を回収するというものであ
6o JJ上のことは、、 Knuth、D。
スと同装置 ガーベジコレクシジンのためのマーキング
を行なう回路を内蔵した記憶装置に関すん 従来の技術 ]ンピュータの利用が数値計算分野ばかりでなく、人工
知献 自然言諧処理などの応用分野に広がっていくにっ
札 それを処理するためのプログラムの実行時において
、動的に記憶領域の構造が変化するデータ構造が必要に
なってくム それには動的記憶管理を必要とずム その
動的記憶管理を行なう場合、不必要になった領域を回収
して再利用するガーベジコレクションという方法が使わ
れている。ガーベジコレクションで不要領域の回収を行
なう@台の−・っの方法と(2,“−使用されている領
域にマーク付けをしでいき、このマークが付けられてい
ない領域 ずなわぢ不要領域を回収するというものであ
6o JJ上のことは、、 Knuth、D。
E、1trコンビユークプログラミング技術JVo1.
1「基本アルゴリズムJ、 Addigon−Wesl
ey、 1973に記載されている。
1「基本アルゴリズムJ、 Addigon−Wesl
ey、 1973に記載されている。
発明が解決しようとする課題
近年、半導体技術の著しい発達により記憶装置の記憶容
量が増大(7ていも これに伴b〜 上述した従来の方
法ではガーベジコレクションに長時間かかって(7ま)
とい・)欠点がある。本発明の目的(上 ガーベジコレ
クシ1ンに必要なマーク付けを行なう回路を記憶装置内
部にもっことによ、って、記憶装置のデ・−タへのアク
セスと同時にマーク付けを行なうことにより、ガーベジ
コレクション処理の高速化が図れる記憶装置を提供する
ことにあ課題を解決するための手段 本発明は、 アドレス入力手段と、前記アドレス入力手
段に入力されたアドレスをデコードする第1のデコード
手段と、デー・夕を格納する2ボ・−トの格納手段と、
前記格納手段の各ワー=ド毎に付けられたタグ欄と、前
記格納手段の第1のポートからのデ・−夕の読み出1.
を行なうための・ト段と、前記格納手段の第2のボー・
トからのデータの書き込み及び読み出1.を行なうデー
タ入出力手段と、前記第1のポートから読み出されたデ
ー・−・夕または外部から前記デ・−々入出力手段1.
ご入力されたデータを選択するセ1ノクト丁段と、前記
セ1.ノクト手段からのデータをアドレスとしてデコー
ドする第2のデコード手段と、前記格納手段の第1の
ポ・−トからデ・−夕の読み出しを行い、第2のボ・−
トからデータの書き込み及び読ろ出しを行ない、外部ク
ロワクに同期して前記デー・タ入出力手段から外部入力
されたアドレスより遂次セレクトされたタグ欄に印付(
うを行な、うための制?、fll舎行へ、う3;制御手
段とを備えた記憶装置Cある。
量が増大(7ていも これに伴b〜 上述した従来の方
法ではガーベジコレクションに長時間かかって(7ま)
とい・)欠点がある。本発明の目的(上 ガーベジコレ
クシ1ンに必要なマーク付けを行なう回路を記憶装置内
部にもっことによ、って、記憶装置のデ・−タへのアク
セスと同時にマーク付けを行なうことにより、ガーベジ
コレクション処理の高速化が図れる記憶装置を提供する
ことにあ課題を解決するための手段 本発明は、 アドレス入力手段と、前記アドレス入力手
段に入力されたアドレスをデコードする第1のデコード
手段と、デー・夕を格納する2ボ・−トの格納手段と、
前記格納手段の各ワー=ド毎に付けられたタグ欄と、前
記格納手段の第1のポートからのデ・−夕の読み出1.
を行なうための・ト段と、前記格納手段の第2のボー・
トからのデータの書き込み及び読み出1.を行なうデー
タ入出力手段と、前記第1のポートから読み出されたデ
ー・−・夕または外部から前記デ・−々入出力手段1.
ご入力されたデータを選択するセ1ノクト丁段と、前記
セ1.ノクト手段からのデータをアドレスとしてデコー
ドする第2のデコード手段と、前記格納手段の第1の
ポ・−トからデ・−夕の読み出しを行い、第2のボ・−
トからデータの書き込み及び読ろ出しを行ない、外部ク
ロワクに同期して前記デー・タ入出力手段から外部入力
されたアドレスより遂次セレクトされたタグ欄に印付(
うを行な、うための制?、fll舎行へ、う3;制御手
段とを備えた記憶装置Cある。
作用
本発明は、前記i−た構成;により、データ入出力手段
からある特定の値を設定し7、この値を゛アドレスとし
てデータの読み出しを行なうと同時にセレクトされたワ
ー ドのタグ欄の設定(印付υ)を行1、X、前記セ1
ノクトされたワー・ドブ・−夕の値をアドレスとし、て
次のワードをセlノクト・ずへ そ1.で前記11−同
様にワ・−・ドのタグ欄の設定(印イ・」け)を行うと
いう動作を繰り返していき、印付けを行なっていく。こ
の印付けは外部クロックに同期し″C1記憶装置の外部
△・データを読み出すことなく行えも 従って、ガーベ
ジコレクシ1ンに於げる印イ」けが高速に行え ガーベ
ジコレクションの処理の高速化が図れる1、また デー
タ格納手段とt、 ””(: 2ボーI・、メモリを持
ったぬ 前記の印付IJと並行(2て、nfJ記ダーク
格納手段へのデー−夕の格納および読み出[、が可能で
あム 実施例 第1図は本発明であるガーベジコレクシニ1)に於ける
印付は回路内蔵記憶装置の一実施例を示すブロック図で
あム 第1図に示す記憶装置の主要部(太 アドレス入
力手段であるアドレス入力バッフ17と、アドレス入力
バッファ7に入力されたアドレスをテコ−・ドする第1
のアドレスデコーダ6と、書き込みと読み出しが同時に
行なえる二つのボ・−トを有限 各ワード毎にその領域
が使用中であるか否かを表すだめのタグ欄4をもった2
ポートメモリ5と、 2ポートメモリ5の第1のポート
22からのデータの読み出しを行なうデータラッチ1と
、 2ポートメモリ5の第2のポート23からのデータ
の書き込み及び読み出しを行なうデータラッチ9と人出
力バッファ10からなるデータ入出力手段と、第1のポ
ート22から読み出されたデータまたは外部から前記デ
ータ入出力手段に入力されたデータを選択するセレクト
手段である入力バッファ2と、入力バッファ2からのデ
ータをアドレスとしてデコードする第2のアドレスデコ
ーダ3と、 2ポートメモリ5の第1のポート22から
データの読み出しを行1.X、第2のポート23からデ
ータの書き込み及び読み出しを行な八 外部クロックに
同期して前記データ入出力手段から外部入力されたアド
レスより遂次セレクトされたタグ欄4に印付けを行なう
ための制御を行なう制御部8から構成されていも 通常
の処理であるデータの書き込みと読み出しを行なう場合
、外部からアドレス入力バッファ7をとおして制御部8
から出されるアドレス入力制御信号14によりアドレス
AO〜Anを久方ヒ さらにこのアドレスAO−Anが
アドレスデコーダ6でデコードさべ 2ポートメモリ5
の一ワードを特定すム この特定されたーワードデータ
を読み出す場合ζ上 書き込み/読み出し制御信号R/
Wによって読み出しを指定し 制御部8から出される第
1データ入出力ラツチ信号15によりデータラッチ9に
保持され 制御部8から出されるデータ人出力制御信号
16によって入出力バッファ10をとおして外部にデー
タDO〜Dnが読み出されも 前記特定されたーワード
に外部からデータDO〜Dnを書き込む場合、書き込み
/読み出し7制御部号R/Wによって書き込みを指定し
人出力バッファ10から前記書き込みデータDo”D
nを制御部8から出されるデータ入出力制御信号16に
よって入力し 制御部8から出される第1データ入出力
ラツチ信号15によってデータラッチ9に保持さ札2ポ
ートメモリ5の前記特定されたーワードに書き込まれa
またガーベジコレクションのマーキングを行なう場合
(入出力バッファ10から最初のリスト要素のアドレス
をDO−Dnとし“C入力し、、印付は開始信号5FL
Gを外部から与えることにより制御部8から出される第
1データ入出力ラツチ信号15によって前記最初のリス
ト要素のアドレスDO〜Dnがデータラッチ9に格納さ
れ 制御部8からのセレクト手段12によって入力バッ
ファ2からアドレスデコーダ3に移され ここで2ポー
トメモリ5中の一ワードが特定される。ここで、外部か
ら入力されたクロック信号CLKに同期して、特定され
);ワードのタグ欄4に制御部8からの印付1ブ信号1
9によって1が設定され、特定されたワー・ドブ−・夕
が制御部8からの第2データ入出力ラツチ信号13によ
って第1のポート22をとおりデータラッチlに格納さ
れる。更鳳 デルタラッチlに格納されたデータと予め
設定された印−りけ終了デ・−り(NIL)18とがコ
ンパレータ17によって比較され その結果一致してい
れば一致検出信号11が制御部8に送られ 印付けの完
了を知らせる印付は終了信号EFLGを外部に出力し印
付けを完了すム 一致していなければ クロック信号C
LKに同期してデ・−タラッチ1に格納されているデー
タが大力バッファ2に送ら札 セレクト信]】2によっ
てアドレスデコーダ3でデコードされて2ポートメモリ
5の一ワードを特定し 印付は信号19によってタグ欄
4に1が設定されも 第1図に示した2ポートメモリ5
にリストデータが格納されている様子を第2図に示to
第2図に於゛C1各リスl−要素1〜7はそのリス
ト要素が現在使用中であるかを示すタグ欄4と、他のリ
スト要素のアドレスが格納される左アドレス欄36と、
文字列データ31の格納されているアトlメスが格納さ
れイ)右アドレス欄37から構成される。各リスト要素
の左アドレス欄36.右アドレス欄37をそれぞれ−ワ
ードずつ連続したアドレスに割当ても リスト要素1の
左アドレス欄36にはリスト要素2のアトlメスが格納
されており、ポインタ30aによりそのこ、惠〜を示し
ている。同様にポインタ30bによりリスト要素2はリ
スト要素3につながっており、リス[・要素3は書換え
前のポインタ32によりリスト要、1につながり、さら
にリスト要素4はボイー/夕30pによりリスト要素5
につながっていム リスト要素5の左アドレス欄36に
l上 NILが格納され 次のリスト要素につながって
いないことを示していも また各リスト要素の右アドレ
ス欄37はポインタ29により文字列データ31にそれ
ぞれつながっていも プログラムの実行時に第2図に示
したリスト構造が変化し リスト要素3の左アドレス欄
36が変更され 書換え前のポインタ32から書換え後
のポインタ33に変更した場合について考えム ごの場
合−書換え後のポインタ33により、リスト要素3はリ
スト要素6につながっている。また ポインタ30dに
よりリスト要素6はリスト要素7につながっていム リ
スト要素1から順に左アドレス欄36を辿ってくと次に
リスト要素2、リスト要素3、リスト要素6、リスト要
素7の順に辿ることができ、最後のリスト要素7の左ア
ドレス欄36にはNILが格納されており、これ以上先
のリスト要素に辿ることはできなし〜 従って、リスト
要素4、リスト要素5は不要リスト要素ということにな
も 以上のように構成された第1図に示すガーベジコレ
クションに於ける印つけ回路内蔵記憶装置を用いて第2
図に示したようなポインタの書換え操作によって不要な
リスト要素4,5を回収するために印付けを行なう処理
手順を示も また 第3図にその時の印付けを行なう動
作を示すタイミング図を示す。印付けを開始するにあた
り、まず人出カバッファ10から印付けが行なわれる最
初のリスト要素lのアドレスDO−Dnを入力し、印付
は開始信号5FLGを与えも この5FLG信号により
制御部8から出される第1のデ・−タ入出力うッヂ信号
15によってリスト要素1のアドレスDO〜Dnがデー
タラッチ9に格納さ株 第3図に示すように制御部8か
らのセレクト信号12がハイであるたべ 第1のバス2
0から入力バッファ2をとおりアドレスデコーダ3に移
され ここで2ポートメモリ5中のリスト要素1の左ア
ドレス欄36が特定される。ここで、外部から入力され
たクロックCL Kに同期して、 リスト要素1の左ア
ドレス欄36のタグ欄4に制御部8からの印付は信号1
9によって1が設定さヘ リスト要素1の左アドレス欄
36の値が制御部8からの第2データ入出力ラツチ信号
13によって第1のポート22をとおってデータラッチ
1に格納されも ここに格納された値はリスト要素2の
左アドレス欄36のアドレスであり、これと印付は終了
データ(NIL)18とがコンパレータ17で比較され
るが一致してなく、また第3図に示すようにセレクト信
号12がローであるため、第2のバス21のデー久 即
ち次のリスト要素2のアドレスが選択さ第1、入力バッ
ファ2をとおしてアドレスデコーダ3でデコードされ次
のリスト要素2の左アドレス欄36が特定される。ここ
”べ 外部から入力されたクロック信号CLKに同期し
て、リスト要素2の左アドレス欄36のタグ欄4に制御
部8からの印付は信号19によって1が設定さ株」スト
要素2の左アドレス欄36の値が制御部8からの第2デ
ータ入出力ラツヂ信号13によってデータラッチ1に格
納される。ここに格納された値はリスト要素3の左アド
レス欄36のアドレスであり、これと印付は終了データ
(NIL)1Bとがコンパレータ17で比較されるが一
致しないので更に同様の処理がなさ株 最後にリスト要
素7の左アドレス欄36の値がデータラッチ1に格納さ
れ コンパレータ17によって印付は終了データ(NI
L)18と比較した結果一致するので、一致検出信号1
1が制御部8に送ら株 印付けは完了し印付は終了信号
EFLGが外部に出力されも 第4図に印付けが完了し
た後の様子を示す。また不要領域の回収は、 以トの印
付けが完了したあとで、タグ欄4を調べて1が設定され
ていないリスト要素4,5を回収することにより行なわ
れへ 回収作業が全て終了し、た時点ですべてのワード
のタグ欄4を0に設定ずも データの格納のために2ポ
ートメモリ5を用いているたべ 上記で説明した印付け
の一連の動作とは全く独立にアドレスバッファ7からア
ドレスΔ0〜Anを入力して第2のポート23をとおし
て人出力バッフ710からデータの書き込み及び読み出
しが可能であも 以」二説明したよう鳳 本実施例(上
データの格納手段として2ポートメモリ5を持板 こ
の2ポートメモリ5にはメモリ領域が使用中であるかど
うかを表すタグ欄4があり、外部からクロック信号を入
力することによって、遂次データを読み出しでマーク付
けを行うことにより、従来のように記憶装置から遂次デ
ータを読み出し その値からマーク付けを行うことなく
、高速にマーク付けが行え ガーベジコレクションの高
速化が図れる効果がある。また ガーベジコレクション
に於ける印付は力丈 通常の記憶装置に対する書き込み
及び読み出し動作と並行して行なえ ガーベジコレクシ
ョンのために通常の処理を中断させる必要がなくなる。
からある特定の値を設定し7、この値を゛アドレスとし
てデータの読み出しを行なうと同時にセレクトされたワ
ー ドのタグ欄の設定(印付υ)を行1、X、前記セ1
ノクトされたワー・ドブ・−夕の値をアドレスとし、て
次のワードをセlノクト・ずへ そ1.で前記11−同
様にワ・−・ドのタグ欄の設定(印イ・」け)を行うと
いう動作を繰り返していき、印付けを行なっていく。こ
の印付けは外部クロックに同期し″C1記憶装置の外部
△・データを読み出すことなく行えも 従って、ガーベ
ジコレクシ1ンに於げる印イ」けが高速に行え ガーベ
ジコレクションの処理の高速化が図れる1、また デー
タ格納手段とt、 ””(: 2ボーI・、メモリを持
ったぬ 前記の印付IJと並行(2て、nfJ記ダーク
格納手段へのデー−夕の格納および読み出[、が可能で
あム 実施例 第1図は本発明であるガーベジコレクシニ1)に於ける
印付は回路内蔵記憶装置の一実施例を示すブロック図で
あム 第1図に示す記憶装置の主要部(太 アドレス入
力手段であるアドレス入力バッフ17と、アドレス入力
バッファ7に入力されたアドレスをテコ−・ドする第1
のアドレスデコーダ6と、書き込みと読み出しが同時に
行なえる二つのボ・−トを有限 各ワード毎にその領域
が使用中であるか否かを表すだめのタグ欄4をもった2
ポートメモリ5と、 2ポートメモリ5の第1のポート
22からのデータの読み出しを行なうデータラッチ1と
、 2ポートメモリ5の第2のポート23からのデータ
の書き込み及び読み出しを行なうデータラッチ9と人出
力バッファ10からなるデータ入出力手段と、第1のポ
ート22から読み出されたデータまたは外部から前記デ
ータ入出力手段に入力されたデータを選択するセレクト
手段である入力バッファ2と、入力バッファ2からのデ
ータをアドレスとしてデコードする第2のアドレスデコ
ーダ3と、 2ポートメモリ5の第1のポート22から
データの読み出しを行1.X、第2のポート23からデ
ータの書き込み及び読み出しを行な八 外部クロックに
同期して前記データ入出力手段から外部入力されたアド
レスより遂次セレクトされたタグ欄4に印付けを行なう
ための制御を行なう制御部8から構成されていも 通常
の処理であるデータの書き込みと読み出しを行なう場合
、外部からアドレス入力バッファ7をとおして制御部8
から出されるアドレス入力制御信号14によりアドレス
AO〜Anを久方ヒ さらにこのアドレスAO−Anが
アドレスデコーダ6でデコードさべ 2ポートメモリ5
の一ワードを特定すム この特定されたーワードデータ
を読み出す場合ζ上 書き込み/読み出し制御信号R/
Wによって読み出しを指定し 制御部8から出される第
1データ入出力ラツチ信号15によりデータラッチ9に
保持され 制御部8から出されるデータ人出力制御信号
16によって入出力バッファ10をとおして外部にデー
タDO〜Dnが読み出されも 前記特定されたーワード
に外部からデータDO〜Dnを書き込む場合、書き込み
/読み出し7制御部号R/Wによって書き込みを指定し
人出力バッファ10から前記書き込みデータDo”D
nを制御部8から出されるデータ入出力制御信号16に
よって入力し 制御部8から出される第1データ入出力
ラツチ信号15によってデータラッチ9に保持さ札2ポ
ートメモリ5の前記特定されたーワードに書き込まれa
またガーベジコレクションのマーキングを行なう場合
(入出力バッファ10から最初のリスト要素のアドレス
をDO−Dnとし“C入力し、、印付は開始信号5FL
Gを外部から与えることにより制御部8から出される第
1データ入出力ラツチ信号15によって前記最初のリス
ト要素のアドレスDO〜Dnがデータラッチ9に格納さ
れ 制御部8からのセレクト手段12によって入力バッ
ファ2からアドレスデコーダ3に移され ここで2ポー
トメモリ5中の一ワードが特定される。ここで、外部か
ら入力されたクロック信号CLKに同期して、特定され
);ワードのタグ欄4に制御部8からの印付1ブ信号1
9によって1が設定され、特定されたワー・ドブ−・夕
が制御部8からの第2データ入出力ラツチ信号13によ
って第1のポート22をとおりデータラッチlに格納さ
れる。更鳳 デルタラッチlに格納されたデータと予め
設定された印−りけ終了デ・−り(NIL)18とがコ
ンパレータ17によって比較され その結果一致してい
れば一致検出信号11が制御部8に送られ 印付けの完
了を知らせる印付は終了信号EFLGを外部に出力し印
付けを完了すム 一致していなければ クロック信号C
LKに同期してデ・−タラッチ1に格納されているデー
タが大力バッファ2に送ら札 セレクト信]】2によっ
てアドレスデコーダ3でデコードされて2ポートメモリ
5の一ワードを特定し 印付は信号19によってタグ欄
4に1が設定されも 第1図に示した2ポートメモリ5
にリストデータが格納されている様子を第2図に示to
第2図に於゛C1各リスl−要素1〜7はそのリス
ト要素が現在使用中であるかを示すタグ欄4と、他のリ
スト要素のアドレスが格納される左アドレス欄36と、
文字列データ31の格納されているアトlメスが格納さ
れイ)右アドレス欄37から構成される。各リスト要素
の左アドレス欄36.右アドレス欄37をそれぞれ−ワ
ードずつ連続したアドレスに割当ても リスト要素1の
左アドレス欄36にはリスト要素2のアトlメスが格納
されており、ポインタ30aによりそのこ、惠〜を示し
ている。同様にポインタ30bによりリスト要素2はリ
スト要素3につながっており、リス[・要素3は書換え
前のポインタ32によりリスト要、1につながり、さら
にリスト要素4はボイー/夕30pによりリスト要素5
につながっていム リスト要素5の左アドレス欄36に
l上 NILが格納され 次のリスト要素につながって
いないことを示していも また各リスト要素の右アドレ
ス欄37はポインタ29により文字列データ31にそれ
ぞれつながっていも プログラムの実行時に第2図に示
したリスト構造が変化し リスト要素3の左アドレス欄
36が変更され 書換え前のポインタ32から書換え後
のポインタ33に変更した場合について考えム ごの場
合−書換え後のポインタ33により、リスト要素3はリ
スト要素6につながっている。また ポインタ30dに
よりリスト要素6はリスト要素7につながっていム リ
スト要素1から順に左アドレス欄36を辿ってくと次に
リスト要素2、リスト要素3、リスト要素6、リスト要
素7の順に辿ることができ、最後のリスト要素7の左ア
ドレス欄36にはNILが格納されており、これ以上先
のリスト要素に辿ることはできなし〜 従って、リスト
要素4、リスト要素5は不要リスト要素ということにな
も 以上のように構成された第1図に示すガーベジコレ
クションに於ける印つけ回路内蔵記憶装置を用いて第2
図に示したようなポインタの書換え操作によって不要な
リスト要素4,5を回収するために印付けを行なう処理
手順を示も また 第3図にその時の印付けを行なう動
作を示すタイミング図を示す。印付けを開始するにあた
り、まず人出カバッファ10から印付けが行なわれる最
初のリスト要素lのアドレスDO−Dnを入力し、印付
は開始信号5FLGを与えも この5FLG信号により
制御部8から出される第1のデ・−タ入出力うッヂ信号
15によってリスト要素1のアドレスDO〜Dnがデー
タラッチ9に格納さ株 第3図に示すように制御部8か
らのセレクト信号12がハイであるたべ 第1のバス2
0から入力バッファ2をとおりアドレスデコーダ3に移
され ここで2ポートメモリ5中のリスト要素1の左ア
ドレス欄36が特定される。ここで、外部から入力され
たクロックCL Kに同期して、 リスト要素1の左ア
ドレス欄36のタグ欄4に制御部8からの印付は信号1
9によって1が設定さヘ リスト要素1の左アドレス欄
36の値が制御部8からの第2データ入出力ラツチ信号
13によって第1のポート22をとおってデータラッチ
1に格納されも ここに格納された値はリスト要素2の
左アドレス欄36のアドレスであり、これと印付は終了
データ(NIL)18とがコンパレータ17で比較され
るが一致してなく、また第3図に示すようにセレクト信
号12がローであるため、第2のバス21のデー久 即
ち次のリスト要素2のアドレスが選択さ第1、入力バッ
ファ2をとおしてアドレスデコーダ3でデコードされ次
のリスト要素2の左アドレス欄36が特定される。ここ
”べ 外部から入力されたクロック信号CLKに同期し
て、リスト要素2の左アドレス欄36のタグ欄4に制御
部8からの印付は信号19によって1が設定さ株」スト
要素2の左アドレス欄36の値が制御部8からの第2デ
ータ入出力ラツヂ信号13によってデータラッチ1に格
納される。ここに格納された値はリスト要素3の左アド
レス欄36のアドレスであり、これと印付は終了データ
(NIL)1Bとがコンパレータ17で比較されるが一
致しないので更に同様の処理がなさ株 最後にリスト要
素7の左アドレス欄36の値がデータラッチ1に格納さ
れ コンパレータ17によって印付は終了データ(NI
L)18と比較した結果一致するので、一致検出信号1
1が制御部8に送ら株 印付けは完了し印付は終了信号
EFLGが外部に出力されも 第4図に印付けが完了し
た後の様子を示す。また不要領域の回収は、 以トの印
付けが完了したあとで、タグ欄4を調べて1が設定され
ていないリスト要素4,5を回収することにより行なわ
れへ 回収作業が全て終了し、た時点ですべてのワード
のタグ欄4を0に設定ずも データの格納のために2ポ
ートメモリ5を用いているたべ 上記で説明した印付け
の一連の動作とは全く独立にアドレスバッファ7からア
ドレスΔ0〜Anを入力して第2のポート23をとおし
て人出力バッフ710からデータの書き込み及び読み出
しが可能であも 以」二説明したよう鳳 本実施例(上
データの格納手段として2ポートメモリ5を持板 こ
の2ポートメモリ5にはメモリ領域が使用中であるかど
うかを表すタグ欄4があり、外部からクロック信号を入
力することによって、遂次データを読み出しでマーク付
けを行うことにより、従来のように記憶装置から遂次デ
ータを読み出し その値からマーク付けを行うことなく
、高速にマーク付けが行え ガーベジコレクションの高
速化が図れる効果がある。また ガーベジコレクション
に於ける印付は力丈 通常の記憶装置に対する書き込み
及び読み出し動作と並行して行なえ ガーベジコレクシ
ョンのために通常の処理を中断させる必要がなくなる。
発明の効果
以上の説明から明らかなよう&へ 本発明によれは ガ
ーベジコレクションに於ける印付けが高速に行え ガー
ベジコレクションの処理の高速化が図れも また デー
タ格納手段として2ポートメモリを持ったべ 前記の印
付けと並行し′C、データ格納手段へのデータの格納お
よび読み出しが可能であへ
ーベジコレクションに於ける印付けが高速に行え ガー
ベジコレクションの処理の高速化が図れも また デー
タ格納手段として2ポートメモリを持ったべ 前記の印
付けと並行し′C、データ格納手段へのデータの格納お
よび読み出しが可能であへ
第1図は本発明の一実施例を示す記憶装置のブロックは
第2図は第1図に示しまた記憶装置内にリストデータ
が格納され印付けが行なわれる前の状態を示す皿 第3
図は印付けが行なわれる様子を示すタイミングチャート
に 第4図は印付けが完了した後の状態を示す図である
。 1.9・・・・データラッチ、 2・・・・入力バッフ
ァ、3・・・・第2のアドレスデコーダ、 4・・・・
タグ凰5・・・・2ポートメモ1九 〇・・・・第1の
アドレスデコーダ′S 7・・・・アドレス入力バッフ
ァ、 8・・・・制御餓10・・・・人出力バッファ、
11・・・・一致検出倍電12・・・・セレクト信号1
3・・・・第2データ入出力ラツチ信号、14・・・・
アドレス入力制御信号15・・・・第1データ入出力ラ
ツチ信殊16・・・・データ入出力制御信号 17・・
・・コンバレー久 18・・・・印付は終了デー久 1
9・・・・印付は信号、20・・・・第1のバ、’L
21・・・・第2のバ、L 22・・・・第1のポ
ート、23・・・・第2のポート、29・・・・文字列
データを指ずポイン久 30a・・・・リスト要素2を
指すポイン久30b・・・・リスト要素3を指ずポイン
久 30c・・・・リスト要素5を指すポイン久 30
d・・・・リスト要素7を指ずポイン久 31・・・・
文字列デー久 32・・・・書換え前のポイン久 33
・・・・書換え後のポイン久36・・・・左アドレス+
諏37・・・・右アドレス! CLK・・・・クロッ
ク倍電 R/W・・・・書き込み/読み出し制御信号、
SFI、G・・・・印付は開始信uEFLG・・・・印
付は終了信号。 代理人の氏名 、弁理士 粟野重孝 はか1名菓 XI
!f ty ・− 12・〜 15 ・− 1b ・− 19−・− π・= 2I −・− n゛ 23’゛− −賃 枚 lfI 信 号 セ し ウ ト 惜 号 マク4−9ス)Hカラッチ消号 w41ナータλ出カうツチ信号 テータス出力籾rIn鵡号 #1 fftt[を 事lのバス 量2のパス 第1のポート 壕2のポート 36−−− か ア ド し ス 書瞬ル゛−
右アドしス慴 第 図
第2図は第1図に示しまた記憶装置内にリストデータ
が格納され印付けが行なわれる前の状態を示す皿 第3
図は印付けが行なわれる様子を示すタイミングチャート
に 第4図は印付けが完了した後の状態を示す図である
。 1.9・・・・データラッチ、 2・・・・入力バッフ
ァ、3・・・・第2のアドレスデコーダ、 4・・・・
タグ凰5・・・・2ポートメモ1九 〇・・・・第1の
アドレスデコーダ′S 7・・・・アドレス入力バッフ
ァ、 8・・・・制御餓10・・・・人出力バッファ、
11・・・・一致検出倍電12・・・・セレクト信号1
3・・・・第2データ入出力ラツチ信号、14・・・・
アドレス入力制御信号15・・・・第1データ入出力ラ
ツチ信殊16・・・・データ入出力制御信号 17・・
・・コンバレー久 18・・・・印付は終了デー久 1
9・・・・印付は信号、20・・・・第1のバ、’L
21・・・・第2のバ、L 22・・・・第1のポ
ート、23・・・・第2のポート、29・・・・文字列
データを指ずポイン久 30a・・・・リスト要素2を
指すポイン久30b・・・・リスト要素3を指ずポイン
久 30c・・・・リスト要素5を指すポイン久 30
d・・・・リスト要素7を指ずポイン久 31・・・・
文字列デー久 32・・・・書換え前のポイン久 33
・・・・書換え後のポイン久36・・・・左アドレス+
諏37・・・・右アドレス! CLK・・・・クロッ
ク倍電 R/W・・・・書き込み/読み出し制御信号、
SFI、G・・・・印付は開始信uEFLG・・・・印
付は終了信号。 代理人の氏名 、弁理士 粟野重孝 はか1名菓 XI
!f ty ・− 12・〜 15 ・− 1b ・− 19−・− π・= 2I −・− n゛ 23’゛− −賃 枚 lfI 信 号 セ し ウ ト 惜 号 マク4−9ス)Hカラッチ消号 w41ナータλ出カうツチ信号 テータス出力籾rIn鵡号 #1 fftt[を 事lのバス 量2のパス 第1のポート 壕2のポート 36−−− か ア ド し ス 書瞬ル゛−
右アドしス慴 第 図
Claims (5)
- (1)アドレス入力手段と、前記アドレス入力手段に入
力されたアドレスをデコードする第1のデコード手段と
、データを格納する2ポートの格納手段と、前記格納手
段の各ワード毎に付けられたタグ欄と、前記格納手段の
第1のポートからのデータの読み出しを行なうための手
段と、前記格納手段の第2のポートからのデータの書き
込み及び読み出しを行なうデータ入力手段と、前記第1
のポートから読み出されたデータまたは外部から前記デ
ータ入出力手段に入力されたデータを選択するセレクト
手段と、前記セレクト手段からのデータをアドレスとし
てデコードする第2のデコード手段と、前記格納手段の
第1のポートからデータの読み出しを行い、第2のポー
トからデータの書き込み及び読み出しを行ない、外部ク
ロックに同期して前記データ入出力手段から外部入力さ
れたアドレスより逐次セレクトされたタグ欄に印付けを
行なうための制御を行なう制御手段とを備えた記憶装置
。 - (2)データ入出力手段から外部入力されたアドレスは
、印付けを行なう最初のリスト要素のアドレスとするこ
とを特徴とする特許請求の範囲第1項記載の記憶装置。 - (3)セレクト手段は、最初にデータ入出力手段から外
部入力されたアドレスを選択し、その後第1のポートか
ら読み出されたデータを選択することを特徴とする特許
請求の範囲第1項記載の記憶装置。 - (4)印付けの終了は、第1のポートから読み出された
データと印付け終了データとを比較することにより行な
うことを特徴とする特許請求の範囲第1項記載の記憶装
置。 - (5)第2のポートからのデータの書き込み及び読み出
しと並行して、タグ欄に印付けを行なうことを特徴とす
る特許請求の範囲第1項記載の記憶装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1283593A JPH02224039A (ja) | 1988-11-17 | 1989-10-31 | 記憶装置 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP29117688 | 1988-11-17 | ||
| JP63-291176 | 1988-11-17 | ||
| JP1283593A JPH02224039A (ja) | 1988-11-17 | 1989-10-31 | 記憶装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH02224039A true JPH02224039A (ja) | 1990-09-06 |
Family
ID=26555104
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1283593A Pending JPH02224039A (ja) | 1988-11-17 | 1989-10-31 | 記憶装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH02224039A (ja) |
-
1989
- 1989-10-31 JP JP1283593A patent/JPH02224039A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS635839B2 (ja) | ||
| DE3902425A1 (de) | Inhaltsgesteuerte speichervorrichtung (cam) und betriebsverfahren | |
| US4975872A (en) | Dual port memory device with tag bit marking | |
| JPS5847741B2 (ja) | パタ−ン発生器 | |
| JPH09167495A (ja) | データ記憶ユニット及び該ユニットを用いたデータ記憶装置 | |
| RU2002118114A (ru) | Компьютерное устройство, использующее необновляемую динамическую память с произвольным доступом | |
| JPS63288384A (ja) | メモリ−カ−ド | |
| JPH0540698A (ja) | 主記憶ページ管理方式 | |
| JPS619766A (ja) | デ−タ転送装置 | |
| JPH11259359A (ja) | ワンタイムromアクセス方法 | |
| JP2702943B2 (ja) | 半導体記憶装置 | |
| JPS6362083A (ja) | 射影デ−タ生成方式 | |
| JPS6214919B2 (ja) | ||
| JP2512945B2 (ja) | 画像メモリ装置 | |
| JPS63129438A (ja) | メモリ制御装置 | |
| JPS58146946A (ja) | リストメモリ | |
| JP3074897B2 (ja) | メモリ回路 | |
| JPS6051748B2 (ja) | メモリ書き込み方式 | |
| JPS63237143A (ja) | プログラマブルコントロ−ラ | |
| JPS63301338A (ja) | 制御メモリ付記憶装置 | |
| JPS61246848A (ja) | 動作履歴記憶回路 | |
| JPS61109149A (ja) | デ−タ処理装置 | |
| KR19980073525A (ko) | 플래시 메모리 반도체 장치의 데이터 독출 및 기입 방법 | |
| JPH01106138A (ja) | 連想記憶装置 | |
| JPH0561761A (ja) | 主記憶制御方式 |