JPH05314120A - キャッシュメモリ - Google Patents
キャッシュメモリInfo
- Publication number
- JPH05314120A JPH05314120A JP4144812A JP14481292A JPH05314120A JP H05314120 A JPH05314120 A JP H05314120A JP 4144812 A JP4144812 A JP 4144812A JP 14481292 A JP14481292 A JP 14481292A JP H05314120 A JPH05314120 A JP H05314120A
- Authority
- JP
- Japan
- Prior art keywords
- font
- font data
- cache memory
- hit
- stored
- 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
- Document Processing Apparatus (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】
【目的】 LRUアルゴリズムでフォントを削除する際
に、複数個のフォントを格納しているフォントデータブ
ロックが、不当に優遇されないようにすること。 【構成】 格納したいとしている最大サイズのフォント
を基にキャッシュメモリを分割したフォントデータブロ
ックを、更に幾つかのフォントデータサブブロックに分
割する。そして、フォントをキャッシュメモリに格納す
るに当たっては、フォントのサイズを考慮して、所要数
のフォントデータサブブロックを使用して格納する。そ
して、LRUアルゴリズムにおけるキャッシュメモリ内
残留優先度決定方法として、ヒットしたフォントが格納
されているフォントデータブロックのヒット前のキャッ
シュメモリ内残留優先度をP,該ヒットしたフォントが
格納されているフォントデータブロックに格納されてい
る全フォント数をNとした時、ヒット後のキャッシュメ
モリ内残留優先度を P(1−1/N) (但し、少数点以下切捨て) とする方法を採用する。
に、複数個のフォントを格納しているフォントデータブ
ロックが、不当に優遇されないようにすること。 【構成】 格納したいとしている最大サイズのフォント
を基にキャッシュメモリを分割したフォントデータブロ
ックを、更に幾つかのフォントデータサブブロックに分
割する。そして、フォントをキャッシュメモリに格納す
るに当たっては、フォントのサイズを考慮して、所要数
のフォントデータサブブロックを使用して格納する。そ
して、LRUアルゴリズムにおけるキャッシュメモリ内
残留優先度決定方法として、ヒットしたフォントが格納
されているフォントデータブロックのヒット前のキャッ
シュメモリ内残留優先度をP,該ヒットしたフォントが
格納されているフォントデータブロックに格納されてい
る全フォント数をNとした時、ヒット後のキャッシュメ
モリ内残留優先度を P(1−1/N) (但し、少数点以下切捨て) とする方法を採用する。
Description
【0001】
【産業上の利用分野】本発明は、文字フォント等のビッ
トマップデータを一時的に格納しておくキャッシュメモ
リに関するものである。
トマップデータを一時的に格納しておくキャッシュメモ
リに関するものである。
【0002】
【従来の技術】ホストコンピュータから文字信号を受
け、その文字をビットマップデータの形でページバッフ
ァに展開し、それを表示装置に表示したり、印字装置で
プリントアウトする装置がある。そのような装置におい
ては、使用頻度の高いフォントのビットマップデータ
を、一時的に格納しておくキャッシュメモリを具えたも
のがある。
け、その文字をビットマップデータの形でページバッフ
ァに展開し、それを表示装置に表示したり、印字装置で
プリントアウトする装置がある。そのような装置におい
ては、使用頻度の高いフォントのビットマップデータ
を、一時的に格納しておくキャッシュメモリを具えたも
のがある。
【0003】図5は、前記のような装置の一例としての
プリンタの構成を示す図である。図5において、10は
プリンタ制御部、11はアウトラインフォントデータ格
納部、12は解釈部、13はキャッシュメモリ制御部、
14はキャッシュメモリ、15は中間バッファ、16は
描画部、17はページバッファ、18はコントロールパ
ネル、19は画像記録部である。画像記録部19は、こ
の場合プリンタである。
プリンタの構成を示す図である。図5において、10は
プリンタ制御部、11はアウトラインフォントデータ格
納部、12は解釈部、13はキャッシュメモリ制御部、
14はキャッシュメモリ、15は中間バッファ、16は
描画部、17はページバッファ、18はコントロールパ
ネル、19は画像記録部である。画像記録部19は、こ
の場合プリンタである。
【0004】印字しようとする文字の信号が、ホストコ
ンピュータ等から解釈部12へ送られて来る。文字の信
号とは、例えばどういう文字かを表す文字コードとか、
文字の大きさ(文字の高さ,幅)等に関する信号であ
る。解釈部12は、その信号を解釈して、まず、その文
字がキャッシュメモリ14に有るか探し、有ればそこか
ら取り出して、ページバッファ17に送る。
ンピュータ等から解釈部12へ送られて来る。文字の信
号とは、例えばどういう文字かを表す文字コードとか、
文字の大きさ(文字の高さ,幅)等に関する信号であ
る。解釈部12は、その信号を解釈して、まず、その文
字がキャッシュメモリ14に有るか探し、有ればそこか
ら取り出して、ページバッファ17に送る。
【0005】もし無ければ、アウトラインフォントデー
タ格納部11から、その文字のアウトラインフォントデ
ータを取り出し、描画部16でビットマップデータのフ
ォントに描画し、それをページバッファ17に送る。同
時に、キャッシュメモリ14にも送って格納し、次に使
用する時のために備える。
タ格納部11から、その文字のアウトラインフォントデ
ータを取り出し、描画部16でビットマップデータのフ
ォントに描画し、それをページバッファ17に送る。同
時に、キャッシュメモリ14にも送って格納し、次に使
用する時のために備える。
【0006】ページバッファ17に1ページ分の文字が
展開されれば、そのページ分のデータが画像記録部19
へ送られ、印刷される。なお、中間バッファ15は、解
釈部12からの信号を、タイミング調整等のために一時
的に格納するためのものである。また、コントロールパ
ネル18は、操作者が種々の指令をするためのものであ
る。
展開されれば、そのページ分のデータが画像記録部19
へ送られ、印刷される。なお、中間バッファ15は、解
釈部12からの信号を、タイミング調整等のために一時
的に格納するためのものである。また、コントロールパ
ネル18は、操作者が種々の指令をするためのものであ
る。
【0007】ところで、キャッシュメモリ14は、フォ
ントのビットマップデータを格納するわけであるが、1
つのフォントを格納するための区画(これを、「フォン
トデータブロック」という)の大きさは、予め定めてお
く。フォントデータブロックの大きさは、キャッシュメ
モリ14にキャッシュしようと思っている最大サイズの
文字を、コントロールパネル18から指定しておくこと
によって定められる。
ントのビットマップデータを格納するわけであるが、1
つのフォントを格納するための区画(これを、「フォン
トデータブロック」という)の大きさは、予め定めてお
く。フォントデータブロックの大きさは、キャッシュメ
モリ14にキャッシュしようと思っている最大サイズの
文字を、コントロールパネル18から指定しておくこと
によって定められる。
【0008】例えば、最大12ポイントまでの文字をキ
ャッシュしたいというのであれば、コントロールパネル
18より、「12ポイント」と入力する。文字ポイント
数が指定されれば、フォントデータブロック1の大き
さ、つまりデータ量は、次のようにして決定される。 フォントデータブロック1のデータ量=(D+7)÷8
×D 但し、Dはドット数であり、指定されたポイント数Mと
表示時(または印刷時)の解像度Kとより D=(M・K/72) で求められる。
ャッシュしたいというのであれば、コントロールパネル
18より、「12ポイント」と入力する。文字ポイント
数が指定されれば、フォントデータブロック1の大き
さ、つまりデータ量は、次のようにして決定される。 フォントデータブロック1のデータ量=(D+7)÷8
×D 但し、Dはドット数であり、指定されたポイント数Mと
表示時(または印刷時)の解像度Kとより D=(M・K/72) で求められる。
【0009】図3は、従来のフォントデータ格納方式を
説明する図である。1はフォントデータブロック、1−
1はデータ格納方向を示す線、1−2は所要メモリ容量
を示す線である(1−1,1−2の線は、従来の問題点
を説明するためのものであるので、ここでは格別注意す
る必要はない)。
説明する図である。1はフォントデータブロック、1−
1はデータ格納方向を示す線、1−2は所要メモリ容量
を示す線である(1−1,1−2の線は、従来の問題点
を説明するためのものであるので、ここでは格別注意す
る必要はない)。
【0010】図3(イ)は、Aという文字(フォント)
のビットマップデータを表している。このAは、フォン
トデータブロック1全体をフルに使ったサイズの文字で
ある。図3(ロ),(ハ)のK,Hは、その半分程度の
サイズの文字である。従来は、文字のサイズにかかわら
ず、1つの文字は、1つのフォントデータブロック1に
格納されていた。
のビットマップデータを表している。このAは、フォン
トデータブロック1全体をフルに使ったサイズの文字で
ある。図3(ロ),(ハ)のK,Hは、その半分程度の
サイズの文字である。従来は、文字のサイズにかかわら
ず、1つの文字は、1つのフォントデータブロック1に
格納されていた。
【0011】
(問題点)しかしながら、前記した従来のキャッシュメ
モリへのフォントデータ格納方式では、格納するフォン
トのサイズにかかわらず、1つのフォントに対しては1
つのフォントデータブロックを使って格納するので、メ
モリを無駄に消費するという問題点があった。
モリへのフォントデータ格納方式では、格納するフォン
トのサイズにかかわらず、1つのフォントに対しては1
つのフォントデータブロックを使って格納するので、メ
モリを無駄に消費するという問題点があった。
【0012】(問題点の説明)図3において、フォント
データブロック1にフォントデータを格納する場合、デ
ータ格納方向を示す線1−1の方向に、1ドットづつの
データが順次格納される。その結果、AとかKとかH等
のフォントが格納されることになる。
データブロック1にフォントデータを格納する場合、デ
ータ格納方向を示す線1−1の方向に、1ドットづつの
データが順次格納される。その結果、AとかKとかH等
のフォントが格納されることになる。
【0013】図3(イ)の場合は、Aという文字のサイ
ズが大きく、フォントデータブロック1をフルに使わな
ければ格納できない。しかし、図3(ロ)や(ハ)のよ
うに、フォントデータブロック1のサイズに比べて小さ
なサイズのフォント(K,H)を格納する場合、フォン
トデータブロック1をフルに使わなくとも、格納でき
る。即ち、KなりHなりの全容を構成するドットが格納
された後の位置を表す線1−2までのメモリで、Kなり
Hなりのフォントデータは、格納できてしまう。つま
り、線1−2は、このサイズのKなりHなりを格納する
際の、所要メモリ容量を表す線ということになる。
ズが大きく、フォントデータブロック1をフルに使わな
ければ格納できない。しかし、図3(ロ)や(ハ)のよ
うに、フォントデータブロック1のサイズに比べて小さ
なサイズのフォント(K,H)を格納する場合、フォン
トデータブロック1をフルに使わなくとも、格納でき
る。即ち、KなりHなりの全容を構成するドットが格納
された後の位置を表す線1−2までのメモリで、Kなり
Hなりのフォントデータは、格納できてしまう。つま
り、線1−2は、このサイズのKなりHなりを格納する
際の、所要メモリ容量を表す線ということになる。
【0014】従って、所要メモリ容量を示す線1−2よ
り下方にある部分のメモリは、実質的には使われずじま
いになっており、結局、この部分は無駄に消費されてい
ることになる。本発明は、以上のような問題点を解決す
ることを課題とするものである。
り下方にある部分のメモリは、実質的には使われずじま
いになっており、結局、この部分は無駄に消費されてい
ることになる。本発明は、以上のような問題点を解決す
ることを課題とするものである。
【0015】
【課題を解決するための手段】前記課題を解決するた
め、本発明のキャッシュメモリでは、指定された最大文
字サイズにより定まるデータサイズのフォントデータブ
ロックを更に複数個に分割したフォントデータサブブロ
ックを、フォントを格納する単位として具え、ヒットし
たフォントが格納されているフォントデータブロックの
ヒット前のキャッシュメモリ内残留優先度をP,該ヒッ
トしたフォントが格納されているフォントデータブロッ
クに格納されている全フォント数をNとした時、ヒット
後のキャッシュメモリ内残留優先度を P(1−1/N) (但し、少数点以下切捨て) とすることとした。
め、本発明のキャッシュメモリでは、指定された最大文
字サイズにより定まるデータサイズのフォントデータブ
ロックを更に複数個に分割したフォントデータサブブロ
ックを、フォントを格納する単位として具え、ヒットし
たフォントが格納されているフォントデータブロックの
ヒット前のキャッシュメモリ内残留優先度をP,該ヒッ
トしたフォントが格納されているフォントデータブロッ
クに格納されている全フォント数をNとした時、ヒット
後のキャッシュメモリ内残留優先度を P(1−1/N) (但し、少数点以下切捨て) とすることとした。
【0016】
【作 用】格納したいとしている最大サイズのフォン
トを基にキャッシュメモリを分割したフォントデータブ
ロックを、更に幾つかのフォントデータサブブロックに
分割する。そして、フォントをキャッシュメモリに格納
するに当たっては、そのフォントのサイズを考慮して、
フォントデータサブブロックを所要数使用して格納す
る。更に、ヒットされた時のキャッシュメモリ内残留優
先度を、 P(1−1/N) (但し、小数点以下切捨て) とすることにより、LRUアルゴリズム(LRU:Leas
t Recently Used 1番昔に使ったものから削除するとい
う方式)により残留させるか否かが決められているキャ
ッシュメモリにおいて、複数個のフォントがキャッシュ
されているフォントデータブロックが、不当に優遇され
ることのないようにする。
トを基にキャッシュメモリを分割したフォントデータブ
ロックを、更に幾つかのフォントデータサブブロックに
分割する。そして、フォントをキャッシュメモリに格納
するに当たっては、そのフォントのサイズを考慮して、
フォントデータサブブロックを所要数使用して格納す
る。更に、ヒットされた時のキャッシュメモリ内残留優
先度を、 P(1−1/N) (但し、小数点以下切捨て) とすることにより、LRUアルゴリズム(LRU:Leas
t Recently Used 1番昔に使ったものから削除するとい
う方式)により残留させるか否かが決められているキャ
ッシュメモリにおいて、複数個のフォントがキャッシュ
されているフォントデータブロックが、不当に優遇され
ることのないようにする。
【0017】
【実施例】以下、本発明の実施例を図面に基づいて詳細
に説明する。図2は、本発明のキャッシュメモリでのフ
ォントデータ格納方式を説明する図である。符号は、図
3のものに対応し、2はフォントデータサブブロックで
ある。
に説明する。図2は、本発明のキャッシュメモリでのフ
ォントデータ格納方式を説明する図である。符号は、図
3のものに対応し、2はフォントデータサブブロックで
ある。
【0018】本発明では、キャッシュメモリにキャッシ
ュしようとしている最大サイズの文字ポイント数より定
めたフォントデータブロック1を、更に幾つかに分割し
て、フォントデータサブブロック2とする。そして、フ
ォントを格納するに際しては、フォントデータサブブロ
ック2を単位として格納する。
ュしようとしている最大サイズの文字ポイント数より定
めたフォントデータブロック1を、更に幾つかに分割し
て、フォントデータサブブロック2とする。そして、フ
ォントを格納するに際しては、フォントデータサブブロ
ック2を単位として格納する。
【0019】即ち、1つのフォントデータサブブロック
2で格納し得るサイズのフォントの場合は、1つのフォ
ントデータサブブロック2を使用して格納する。フォン
トのサイズが大きく、1つのフォントデータサブブロッ
ク2では格納し得ない場合には、必要な数のフォントデ
ータサブブロック2を使用して格納する。
2で格納し得るサイズのフォントの場合は、1つのフォ
ントデータサブブロック2を使用して格納する。フォン
トのサイズが大きく、1つのフォントデータサブブロッ
ク2では格納し得ない場合には、必要な数のフォントデ
ータサブブロック2を使用して格納する。
【0020】図2では、フォントデータブロック1を2
分割したものを、フォントデータサブブロック2とした
例を示している。もっと細かく分割することも可能であ
る(例えば、4分割,8分割等)。図2(イ)のAは、
サイズが大きくて1つのフォントデータサブブロック2
では格納できないので、連続する2つのフォントデータ
サブブロック2を使用して格納されている。
分割したものを、フォントデータサブブロック2とした
例を示している。もっと細かく分割することも可能であ
る(例えば、4分割,8分割等)。図2(イ)のAは、
サイズが大きくて1つのフォントデータサブブロック2
では格納できないので、連続する2つのフォントデータ
サブブロック2を使用して格納されている。
【0021】図2(ロ)では、K,Hのサイズが小さ
く、それぞれ1つのフォントデータサブブロック2で格
納し得るサイズなので、1つのフォントデータサブブロ
ック2に格納されている。従って、図2と同じA,K,
Hのフォントを格納する場合、本発明では、フォントデ
ータブロックが2つで済み、従来3つ必要としていたの
に比べて、1個節約できる。即ち、無駄に消費されるメ
モリが少なくなる。
く、それぞれ1つのフォントデータサブブロック2で格
納し得るサイズなので、1つのフォントデータサブブロ
ック2に格納されている。従って、図2と同じA,K,
Hのフォントを格納する場合、本発明では、フォントデ
ータブロックが2つで済み、従来3つ必要としていたの
に比べて、1個節約できる。即ち、無駄に消費されるメ
モリが少なくなる。
【0022】フォントをキャッシュメモリに格納する手
順を簡単に説明すると、次の通りである。まず、ホスト
コンピュータから、図5の解釈部12に送られて来る文
字の信号より、その文字サイズがどのようなサイズ(高
さ,幅)なのかを求める。これにより、この文字を格納
するのには、メモリ容量にして何バイト必要なのか(デ
ータ量)が分かる。
順を簡単に説明すると、次の通りである。まず、ホスト
コンピュータから、図5の解釈部12に送られて来る文
字の信号より、その文字サイズがどのようなサイズ(高
さ,幅)なのかを求める。これにより、この文字を格納
するのには、メモリ容量にして何バイト必要なのか(デ
ータ量)が分かる。
【0023】次に、そのデータ量をまかなうには、フォ
ントデータサブブロック2を幾つ使用すれば格納できる
かを算出する。図2の例は、フォントデータサブブロッ
ク2は、フォントデータブロック1を2分割したもので
あるから、この例における算出結果は、1個か、それと
も2個である。
ントデータサブブロック2を幾つ使用すれば格納できる
かを算出する。図2の例は、フォントデータサブブロッ
ク2は、フォントデータブロック1を2分割したもので
あるから、この例における算出結果は、1個か、それと
も2個である。
【0024】図2(ロ)のように、1つのフォントデー
タサブブロック2で収容できる文字を格納する場合は、
どの空きフォントデータサブブロック2を使用しても差
支えない。しかし、図2(イ)のように、2個のフォン
トデータサブブロック2を用いなければ収容できない文
字を格納する場合は、連続した空きフォントデータサブ
ブロック2が必要である。つまり、格納に適する条件
(ここでは「連続している」という条件)で、所要数の
空きフォントデータサブブロック2があるかどうかを探
す必要がある。
タサブブロック2で収容できる文字を格納する場合は、
どの空きフォントデータサブブロック2を使用しても差
支えない。しかし、図2(イ)のように、2個のフォン
トデータサブブロック2を用いなければ収容できない文
字を格納する場合は、連続した空きフォントデータサブ
ブロック2が必要である。つまり、格納に適する条件
(ここでは「連続している」という条件)で、所要数の
空きフォントデータサブブロック2があるかどうかを探
す必要がある。
【0025】空きブロックが無かった場合には、どれか
のブロックの内容を削除して、そこへ格納せざるを得な
い。そのために、まず削除するブロックを、一定のやり
方に則って探す。このようなことは、キャッシュメモリ
を管理する上での処理の1つである「あふれ処理」と言
われるものに属する処理である。
のブロックの内容を削除して、そこへ格納せざるを得な
い。そのために、まず削除するブロックを、一定のやり
方に則って探す。このようなことは、キャッシュメモリ
を管理する上での処理の1つである「あふれ処理」と言
われるものに属する処理である。
【0026】内容を削除するブロックの決め方には、種
々のものがある。その内の1つに、参照された(前回ヒ
ットした)のが最も古いものから順に削除するというや
り方(LRUアルゴリズム)がある。削除されてできた
空きブロックに、今回の新たなフォントが格納される。
々のものがある。その内の1つに、参照された(前回ヒ
ットした)のが最も古いものから順に削除するというや
り方(LRUアルゴリズム)がある。削除されてできた
空きブロックに、今回の新たなフォントが格納される。
【0027】ところで、フォントデータブロックを複数
個のフォントデータサブブロックに分割して、1つのフ
ォントを格納したり、複数個のフォントを格納したりす
ると、従来のLRUアルゴリズムでは、複数個のフォン
トを格納しているフォントデータブロックが、不当に優
遇されるという不都合が生じることが判明した。
個のフォントデータサブブロックに分割して、1つのフ
ォントを格納したり、複数個のフォントを格納したりす
ると、従来のLRUアルゴリズムでは、複数個のフォン
トを格納しているフォントデータブロックが、不当に優
遇されるという不都合が生じることが判明した。
【0028】図4は、LRUアルゴリズムでの従来の優
先度決定方法を説明する図である。符号は図2のものに
対応している。「優先度」は、キャッシュメモリ内残留
優先度(あふれ処理の時、キャッシュメモリから削除さ
れないという点での優先度)を表し、数値が小さいほど
優先度が高い(0が最高)。また、「フォント」は、1
つのフォントデータブロックに格納されている、単一ま
たは複数個のフォントを表している。
先度決定方法を説明する図である。符号は図2のものに
対応している。「優先度」は、キャッシュメモリ内残留
優先度(あふれ処理の時、キャッシュメモリから削除さ
れないという点での優先度)を表し、数値が小さいほど
優先度が高い(0が最高)。また、「フォント」は、1
つのフォントデータブロックに格納されている、単一ま
たは複数個のフォントを表している。
【0029】今、仮にKとHとが格納されているフォン
トデータブロックのKがヒットしたとする。図4(イ)
は、それがヒットする前の、各フォントデータブロック
の優先度を表している。従来の優先度決定方法は、ヒッ
トしたフォントデータブロックを最高の優先度にすると
いう方法であった。従って、ヒット後の優先度を表して
いる図4(ロ)では、KとHが格納されているフォント
データブロックは、最高の優先度「0」に位置づけられ
ている。それに伴い、他のフォントデータブロックの優
先度は、1つづつ繰り下げられる(優先度の数値として
は、+1される)。
トデータブロックのKがヒットしたとする。図4(イ)
は、それがヒットする前の、各フォントデータブロック
の優先度を表している。従来の優先度決定方法は、ヒッ
トしたフォントデータブロックを最高の優先度にすると
いう方法であった。従って、ヒット後の優先度を表して
いる図4(ロ)では、KとHが格納されているフォント
データブロックは、最高の優先度「0」に位置づけられ
ている。それに伴い、他のフォントデータブロックの優
先度は、1つづつ繰り下げられる(優先度の数値として
は、+1される)。
【0030】すると、K,Hの2個のフォントを格納し
ているフォントデータブロックがヒットされる確率は、
1個のフォントしか格納していない他のフォントデータ
ブロックに比べて、2倍となる。フォントデータブロッ
クをN分割してフォントデータサブブロックとすると、
N個のフォントを格納するものが出て来るが、これは、
ヒット確率がN倍となる。
ているフォントデータブロックがヒットされる確率は、
1個のフォントしか格納していない他のフォントデータ
ブロックに比べて、2倍となる。フォントデータブロッ
クをN分割してフォントデータサブブロックとすると、
N個のフォントを格納するものが出て来るが、これは、
ヒット確率がN倍となる。
【0031】これでは、複数個のフォントを格納してい
るフォントデータブロックは、常に高い優先度を維持す
ることになり、不当に優遇されることになる。不当に優
遇される結果、比較的よく使用するフォントであるにも
かかわらず、1つのフォントデータブロックをフルに使
って格納されているため、徐々に優先度が低くなり、キ
ャッシュメモリから削除されてしまうものが出て来る。
るフォントデータブロックは、常に高い優先度を維持す
ることになり、不当に優遇されることになる。不当に優
遇される結果、比較的よく使用するフォントであるにも
かかわらず、1つのフォントデータブロックをフルに使
って格納されているため、徐々に優先度が低くなり、キ
ャッシュメモリから削除されてしまうものが出て来る。
【0032】従って、優先度の決定方法を改良して、複
数個のフォントを格納しているフォントデータブロック
が、不当に優遇されることのないようにする必要があ
る。そこで、本発明では、次のような、新たな優先度決
定方法を提案する。
数個のフォントを格納しているフォントデータブロック
が、不当に優遇されることのないようにする必要があ
る。そこで、本発明では、次のような、新たな優先度決
定方法を提案する。
【0033】即ち、N個のフォントを格納しているフォ
ントデータブロックがヒットした時、そのヒットが優先
度引き上げに貢献する度合いは、単一のフォントが格納
されているものがヒットした場合に比べて、1/Nの値
打ちにしか評価してやらないという方法である。なお、
フォントデータブロック内の1つのフォントデータサブ
ブロックのみに格納され、残りのフォントデータサブブ
ロックは空となっている場合には、言うまでもないこと
ではあるが、N=1として扱う。
ントデータブロックがヒットした時、そのヒットが優先
度引き上げに貢献する度合いは、単一のフォントが格納
されているものがヒットした場合に比べて、1/Nの値
打ちにしか評価してやらないという方法である。なお、
フォントデータブロック内の1つのフォントデータサブ
ブロックのみに格納され、残りのフォントデータサブブ
ロックは空となっている場合には、言うまでもないこと
ではあるが、N=1として扱う。
【0034】従来の優先度決定方法では、ヒット前の優
先度をPとした場合、ヒットにより優先度0に引き上げ
られていた。即ち、ヒット後の優先度を算出する際に
は、P−P=0という演算が行われていた。ヒットによ
り、ヒット前の優先度Pだけ引上げ(−P)ていたので
ある。
先度をPとした場合、ヒットにより優先度0に引き上げ
られていた。即ち、ヒット後の優先度を算出する際に
は、P−P=0という演算が行われていた。ヒットによ
り、ヒット前の優先度Pだけ引上げ(−P)ていたので
ある。
【0035】新しい優先度決定方法では、N個のフォン
トを格納しているフォントデータブロックがヒットした
時には、優先度引上げに貢献する度合いを1/Nしか認
めないから、P×(1/N)だけしか引き上げない。従
って、新しい優先度は、この分だけ数値を小さくして、
P−P×(1/N)となる。書き換えると P(1−1/N) …… と表せる。なお、優先度は整数で表すから、小数点以下
は切り捨てることにする。
トを格納しているフォントデータブロックがヒットした
時には、優先度引上げに貢献する度合いを1/Nしか認
めないから、P×(1/N)だけしか引き上げない。従
って、新しい優先度は、この分だけ数値を小さくして、
P−P×(1/N)となる。書き換えると P(1−1/N) …… と表せる。なお、優先度は整数で表すから、小数点以下
は切り捨てることにする。
【0036】図1は、LRUアルゴリズムでの新たな優
先度決定方法を説明する図である。符号等は、図4のも
のに対応している。図1(イ)はヒット前の各フォント
の優先度を示している。今、フォントKがヒットしたと
する。Kが格納されているフォントデータブロックの優
先度は3である(P=3)。ヒット後の優先度は、前記
式に、N=2,P=3を代入して、3(1−1/2)
=1.5を得るから、小数点以下切り捨てて、1が求め
られる。それゆえ、図1(ロ)に示すように、ヒット後
は優先度1として位置づけられる。従来なら最高の優先
度にされていたが(図4(ロ))、新しい方法では、そ
こまでは優遇しない。
先度決定方法を説明する図である。符号等は、図4のも
のに対応している。図1(イ)はヒット前の各フォント
の優先度を示している。今、フォントKがヒットしたと
する。Kが格納されているフォントデータブロックの優
先度は3である(P=3)。ヒット後の優先度は、前記
式に、N=2,P=3を代入して、3(1−1/2)
=1.5を得るから、小数点以下切り捨てて、1が求め
られる。それゆえ、図1(ロ)に示すように、ヒット後
は優先度1として位置づけられる。従来なら最高の優先
度にされていたが(図4(ロ))、新しい方法では、そ
こまでは優遇しない。
【0037】
【発明の効果】以上述べた如く、本発明のキャッシュメ
モリによれば、格納したいとしている最大サイズのフォ
ントを基にキャッシュメモリを分割したフォントデータ
ブロックを、更に幾つかのフォントデータサブブロック
に分割し、それを単位としてフォントを格納するので、
メモリが無駄に消費されることがなくなる。
モリによれば、格納したいとしている最大サイズのフォ
ントを基にキャッシュメモリを分割したフォントデータ
ブロックを、更に幾つかのフォントデータサブブロック
に分割し、それを単位としてフォントを格納するので、
メモリが無駄に消費されることがなくなる。
【0038】また、LRUアルゴリズムにおけるキャッ
シュメモリ内残留優先度決定方法として、新しい方法を
提案したので、複数個のフォントを格納しているフォン
トデータブロックが、優先度の面で不当に優遇されるこ
とがなくなる。
シュメモリ内残留優先度決定方法として、新しい方法を
提案したので、複数個のフォントを格納しているフォン
トデータブロックが、優先度の面で不当に優遇されるこ
とがなくなる。
【図1】 LRUアルゴリズムでの新たな優先度決定方
法を説明する図
法を説明する図
【図2】 改良したフォントデータ格納方式を説明する
図
図
【図3】 従来のフォントデータ格納方式を説明する図
【図4】 LRUアルゴリズムでの従来の優先度決定方
法を説明する図
法を説明する図
【図5】 キャッシュメモリを具えたプリンタの構成を
示す図
示す図
1…フォントデータブロック、2…フォントデータサブ
ブロック、1−1…データ格納方向を示す線、1−2…
所要メモリ容量を示す線、10…プリンタ制御部、11
…アウトラインフォントデータ格納部、12…解釈部、
13…キャッシュメモリ制御部、14…キャッシュメモ
リ、15…中間バッファ、16…描画部、17…ページ
バッファ、18…コントロールパネル、19…画像記録
部
ブロック、1−1…データ格納方向を示す線、1−2…
所要メモリ容量を示す線、10…プリンタ制御部、11
…アウトラインフォントデータ格納部、12…解釈部、
13…キャッシュメモリ制御部、14…キャッシュメモ
リ、15…中間バッファ、16…描画部、17…ページ
バッファ、18…コントロールパネル、19…画像記録
部
Claims (1)
- 【請求項1】 指定された最大文字サイズにより定まる
データサイズのフォントデータブロックを更に複数個に
分割したフォントデータサブブロックを、フォントを格
納する単位として具え、ヒットしたフォントが格納され
ているフォントデータブロックのヒット前のキャッシュ
メモリ内残留優先度をP,該ヒットしたフォントが格納
されているフォントデータブロックに格納されている全
フォント数をNとした時、ヒット後のキャッシュメモリ
内残留優先度を P(1−1/N) (但し、少数点以下切捨て) とすることを特徴とするキャッシュメモリ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4144812A JPH05314120A (ja) | 1992-05-11 | 1992-05-11 | キャッシュメモリ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4144812A JPH05314120A (ja) | 1992-05-11 | 1992-05-11 | キャッシュメモリ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05314120A true JPH05314120A (ja) | 1993-11-26 |
Family
ID=15371037
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4144812A Pending JPH05314120A (ja) | 1992-05-11 | 1992-05-11 | キャッシュメモリ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH05314120A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014123357A (ja) * | 2012-12-13 | 2014-07-03 | Arm Ltd | 保持優先度に基づくキャッシュ置換ポリシー |
-
1992
- 1992-05-11 JP JP4144812A patent/JPH05314120A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014123357A (ja) * | 2012-12-13 | 2014-07-03 | Arm Ltd | 保持優先度に基づくキャッシュ置換ポリシー |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2925587B2 (ja) | ラスタ化方法 | |
| CA1162318A (en) | Character set expansion | |
| US5852710A (en) | Apparatus and method for storing image data into memory | |
| EP0400891B1 (en) | Apparatus for converting vector data of characters into dot data, having means for reducing frequency of required data conversion | |
| JPH0263763A (ja) | 出力方法及びその装置 | |
| JP2993276B2 (ja) | プリンタ | |
| US6016155A (en) | Character processing apparatus, character processing method, and memory | |
| EP0458569B1 (en) | Method and apparatus for generating character patterns in an output memory | |
| JPH05314120A (ja) | キャッシュメモリ | |
| JPH05313640A (ja) | キャッシュメモリへのフォントデータ格納方式 | |
| JPH0522933B2 (ja) | ||
| JPH06274145A (ja) | 文字処理装置 | |
| JP2878298B2 (ja) | 画像出力装置 | |
| JP2907826B2 (ja) | 文字フォント管理装置 | |
| CN1155696A (zh) | 用主高速缓存器和打印机高速缓存器提高文本打印性能 | |
| JP2003309728A (ja) | 画像データをメモリに蓄積する装置及び方法 | |
| JP2995313B2 (ja) | 文書データ出力装置 | |
| JP2614306B2 (ja) | 文字処理装置および方法 | |
| JPH06236173A (ja) | 文字処理装置 | |
| JPH0615317Y2 (ja) | 文書処理装置 | |
| JP2000211198A (ja) | イメ―ジデ―タの管理方法 | |
| JPH0573024A (ja) | フオントパターンのキヤツシユ方式 | |
| JPS63228194A (ja) | 文字フオントの保持方法 | |
| JPH0594168A (ja) | フオント生成装置 | |
| JPH05303368A (ja) | フォントキャッシュメモリ |