JPH04284551A - 圧縮データを格納した読み出し専用メモリを備えた装置 - Google Patents

圧縮データを格納した読み出し専用メモリを備えた装置

Info

Publication number
JPH04284551A
JPH04284551A JP3049714A JP4971491A JPH04284551A JP H04284551 A JPH04284551 A JP H04284551A JP 3049714 A JP3049714 A JP 3049714A JP 4971491 A JP4971491 A JP 4971491A JP H04284551 A JPH04284551 A JP H04284551A
Authority
JP
Japan
Prior art keywords
data
address
rom
cpu
read
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.)
Withdrawn
Application number
JP3049714A
Other languages
English (en)
Inventor
Shinya Asakura
眞也 朝倉
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3049714A priority Critical patent/JPH04284551A/ja
Publication of JPH04284551A publication Critical patent/JPH04284551A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はオフィスオートメーショ
ン機器等として用いられる圧縮データを格納した読み出
し専用メモリ(ROM) を備えた装置に関する。
【0002】
【従来の技術】プリンタに代表されるオフィスオートメ
ーション機器は中央処理装置(CPU) によって制御
されている。近年これらの装置は多機能化が進んでいる
。装置が多機能化するということは、処理が複雑化する
ことで、装置を制御するためのROM の容量が増加し
ている。 また、最近の装置は、より小型化、低価格が要求されて
いる。
【0003】
【発明が解決しようとする課題】前述のような、必要と
するROM の容量の増加を抑えることが、装置の小型
化、低価格化のために解決すべき課題となっている。従
って、本発明の目的は、ROM 内に圧縮したデータを
格納することによって、装置内のROM の容量を低減
することにある。
【0004】
【課題を解決するための手段】本発明においては、図1
に示されるように、CPU 1と、該CPU 1に含ま
れる命令キャッシュとして動作するランダムアクセスメ
モリ(RAM) 2と、あらかじめ圧縮されたデータが
格納されたROM 4と、該データの圧縮前と圧縮後の
対応を示す対応テーブル5と、該ROM 4から読み出
されたデータを該対応テーブル5を用いて伸長するデー
タ伸長回路3とを具備し、該伸長されたデータを該命令
キャッシュに格納して該CPU 1が命令を実行するよ
うにした圧縮データを格納した読み出し専用メモリを備
えた装置が提供される。
【0005】
【作用】通常のプログラムROM の内容には冗長度と
呼ばれる情報の偏りが存在する。図1のROM 4には
、こうした冗長度を排して、データを圧縮した形でプロ
グラムを格納しておく。冗長度を排し、データを圧縮す
る手法はいろいろあるが、例えば代表的なものとして、
図4のように連続する「1」または「0」の個数を記述
する方法がある。
【0006】この時、ROM 4には各実行単位(後述
する)ごとにデータの圧縮を行い、圧縮前の各実行単位
のアドレスと、圧縮後の各実行単位のアドレスの変換テ
ーブル5(対応テーブルに相当)を作成する(図3参照
)。圧縮されたデータの伸長を行うデータ伸長回路3は
、CPU 1からの制御で、データ圧縮前のアドレスを
与えられると、アドレス変換テーブル5を参照して、こ
れをデータ圧縮後のアドレスに変換し、圧縮後のアドレ
スからデータを読み出し、データ圧縮と逆のプロセスを
用いてデータを伸長し、命令キャッシュであるRAM 
2に書き込む。
【0007】CPU 1は、RAM 2に書き込まれた
データによって処理を行う。RAM 2に格納されたデ
ータ内で他の実行単位に対する分岐が発生した場合、C
PU 1は、分岐先の実行単位のアドレスをデータ伸長
回路3にわたし、命令キャッシュであるRAM 2への
ヒットを要求する。RAM 2へのヒットを要求された
データ伸長回路3は、アドレス変換テーブル5を用いて
データ圧縮後のアドレスを発生させ、発生させたアドレ
スからデータ伸長を開始し、RAM 2に格納する。こ
のようにして、ROM 4内には、あらかじめ圧縮した
データを格納することができROM の容量を節減でき
る。
【0008】
【実施例】実施例の説明に先立って、関連技術について
説明する。一般にCPU は命令キャッシュと呼ばれる
アクセス速度が高速なRAM 領域を持つ。通常ROM
 のアクセス速度は、命令キャッシュ用のRAM より
も遅いため、命令キャッシュに蓄えられた命令コードが
あれば、CPU は、この命令キャッシュ領域のみをア
クセスして動作する。 キャッシュ領域の大きさが十分であれば、分岐命令があ
る程度発生しても、ROM のデータを新たにキャッシ
ュ用のRAM にヒットする必要はない。
【0009】プリンタ等の装置では、定常状態ではほと
んど同じ部分のプログラムが走行する。すなわち、用紙
ジャム、カバーオープン等の例外処理が、ROM の中
のかなりの部分を占めている。このため命令キャッシュ
領域を大きく取った場合、通常の処理下では、ROM 
の内容を命令キャッシュにヒットする回数は少なくてす
む。一般にプログラムの走行は図2の左側に示すように
、ある一定の実行単位ごとに区切られる。そして条件判
定文等で大きな分岐が生じた場合、他の実行単位へ移行
する。
【0010】本発明の一実施例としてのプリンタ装置の
ブロック図が図5に示される。このプリンタ装置は、C
PU 1、CPU 1に含まれる命令キャッシュとして
のRAM2、データ伸長回路3、ROM 4、アドレス
変換テーブル5、作業用RAM 領域6、ホストインタ
フェース7、機構制御部8、およびリセット回路10を
具備する。
【0011】装置の電源が投入されると、プリンタ制御
部内(破線内)では、リセット回路10からのリセット
信号を受けたCPU 1が、ROM 4からIPL 9
と呼ばれるブートプログラムを命令キャッシュRAM 
2にヒットするように、データ伸長回路3に指令を出す
。ROM 4に格納されているデータは、あらかじめデ
ータ伸長回路3が扱えるアルゴリズムでデータ圧縮され
ている。この時、データの圧縮は各実行単位ごとに実行
され、圧縮後の実行単位には、実行単位の境界を示す終
端パラメータが付加される。
【0012】また各実行単位の圧縮前のアドレスと圧縮
後のアドレスの対応を示すアドレス変換テーブル5が作
成される(図3参照)。通常このアドレス変換テーブル
はROM の形にして、ROM 4におけるIPL 9
のあとプログラム領域の先頭に格納される(図10参照
)。CPU 1からIPL 9を命令キャッシュRAM
 2にヒットする要求を受けたデータ伸長回路3は、I
PL が格納されているアドレスからROM 4のデー
タを読み込み、アルゴリズムに従ってデータを伸長し、
命令キャッシュに格納する。
【0013】CPU 1はデータの伸長格納要求を出す
際に、指定するアドレスを作業用RAM 内にキャッシ
ュ開始アドレスとして格納する。データ伸長回路3は指
定されたアドレスからデータの伸長を開始し、実行単位
の境界を示す終端パラメータまでデコードしたら、デー
タ伸長格納処理を終了する。格納処理が終了した場合、
データ伸長回路3は、CPU 1に対して命令キャッシ
ュRAM 2に格納したデータ量を通知する。通知を受
けたCPU 1は、作業用RAM 領域6内に格納して
あるキャッシュ開始アドレスと格納データ量とを加算し
、キャッシュ終了アドレスを算出し、作業用RAM 領
域6に格納する図6にはこの態様が示される。なお図6
における斜線部分は各実行単位に相当するキャッシュデ
ータを示す。
【0014】その後は、図7の処理過程に従って処理が
実行される。すなわち、命令キャッシュから命令をデコ
ードし、分岐命令の場合にはそのアドレスがキャッシュ
開始アドレスとキャッシュ終了アドレスの間にあるか判
定し、プログラムカンウタをインクリメントする場合は
そのアドレスがキャッシュ終了アドレスよりも後か否か
を判定し、キャッシュ開始アドレスと終了アドレスの間
に含まれない時は、分岐アドレスまたはプログラムカウ
ンタ値に従って、他の実行単位をキャッシュにヒットす
る。
【0015】プリンタ装置の場合、装置の異常等の例外
処理がなければ、処理のプログラムは同じ部分が走る。 例外処理等でCPU 1に対して、割り込みがかかった
時のみ分岐命令で他の処理単位を伸長格納する構造とな
るため、命令キャッシュの大きさを十分にとれば、通常
の印字等では、命令キャッシュ内だけをアクセスするた
め、伸長格納処理によって装置の実行速度が低下するこ
とはない。
【0016】本実施例では、命令キャッシュにデータを
伸長格納するために、専用の回路を設けているが、この
部分をCPU 1が直接実行してもよい。一般にデータ
を圧縮する手法は数種類あり、圧縮の効率は圧縮データ
に依存するため、各実行単位ごとに最適の圧縮方法を用
いて圧縮を実行し、アドレス変換テーブルに、どの圧縮
方法を使用したかの情報を持たせ、その情報に基づいて
データの伸長処理を行うようにすれば、ROM 内のデ
ータの圧縮効率はさらに向上する。
【0017】データ伸長回路3の詳細について説明する
。この回路のブロック図は図8および図9に分割して示
される。この2つの図は図におけるa,b,c,d,e
,f点においてそれぞれ接続されて1つの図を構成する
【0018】図8および図9において、CPU からデ
ータバス22を通じてセットされた各実行単位の先頭ア
ドレス(圧縮前のアドレス)は、アドレスラッチ21に
格納される。この時のライト信号24と、アドレスラッ
チ21に対応するポートアドレスを示すアドレスデコー
ダ25、すなわちアドレスバスをデコードし、アドレス
ラッチ21に対応するアドレス信号がCPU によって
出力された場合、デコード信号を書き込み信号検出回路
26に対して出力するアドレスデコーダ25の出力を検
知した書き込み信号検出回路26がデータ伸長回路全体
の起動トリガとなる。
【0019】リセット動作が実行された場合は、リセッ
ト回路10からの信号に応じて、アドレスラッチ21は
0番地に初期化され、書き込み信号検出回路26にはデ
ータ伸長回路の起動トリガ開始要求が出力される。アド
レスラッチ21にデータが書き込まれるか、リセット回
路10からの要求が発生するかによってデータ伸長回路
の起動要求が発生した場合、書き込み信号検出回路26
はまずCPU ウエイト回路27を動作させ、CPU 
に対して命令コードのデコードの停止を要求する。
【0020】次にカウンタ30をアドレス変換テーブル
が格納されている場所の先頭アドレスに初期化する。次
にリードパルス発生回路34を動作させ、カウンタにセ
ットしたアドレスからデータを2ワード連続して読み出
し、アドレス変換レジスタ31に格納する。図10はア
ドレス変換テーブルの構造を示したものであり、ここに
は、各ブロックの圧縮前のアドレスと圧縮後のアドレス
が交互に格納されている。
【0021】リードパルス発生回路34によって、アド
レス変換レジスタ31に読み込まれたデータは、アドレ
ス変換テーブルの構造により、各ブロックの圧縮前のア
ドレス32と圧縮後のアドレス33が対になるように格
納される。
【0022】格納が終了すると比較回路29が動作し、
アドレスラッチ21に格納されているアドレスと、アド
レス変換レジスタ31に読み込まれたデータのうち圧縮
前のアドレス32とを比較する。これら2つの値が一致
しない場合、比較回路29はカウンタ30の値を進めて
、再度読み込み処理を実行させる。以下2つの値が一致
するまでこの処理を繰り返す。
【0023】2つの値が一致したことを検出した場合、
比較回路29は圧縮後のアドレス33をカウンタ2に転
送し、リードパルス発生回路(2) 16を動作させ命
令コードの読み出し制御を開始する。読み出し終了後、
比較回路29はデータ伸長制御部39を起動する。起動
されたデータ伸長制御部39は書き込み用アドレスカウ
ンタ40をCPU 用キャッシュメモリの先頭番地を示
すように初期化する。
【0024】比較回路29によって読み出されたデータ
は読み出しデータ37に格納される。これはシフトレジ
スタになっていて、データ伸長制御部39からの制御で
1ビットずつデータをシフトさせながらデータ伸長制御
部39に転送する。データ伸長制御部39はカウンタ部
を持ち、読み出しデータのシフトが終了した場合、カウ
ンタ(2) 35を進め、リードパルス発生回路(2)
 36を動作させ、次のデータを読み出しデータ37と
して読み込む。
【0025】データ伸長制御部39は、シフト動作によ
って1ビットずつ受け取ったデータに対して、あらかじ
め設定されているアルゴリズムに基づき伸長動作を実行
し、書き込み用レジスタ38に書き込む。書き込み用レ
ジスタ38もシフトレジスタであって、データ伸長制御
部39から1ビットずつ送られてくるデータをシフト動
作を実行しながら格納していく。
【0026】データ伸長制御部39は書き込み用レジス
タ38に転送したビット数もカウントしており、書き込
み用レジスタ38が一杯になった場合、書き込み信号発
生回路42を動作させ、書き込み用レジスタ38の内容
をCPU 用キャッシュメモリ2に書き込む。このあと
書き込み用アドレスカウンタ40を進める。
【0027】以下データ伸長制御部39はこの処理を終
端パラメータをデコードするまで実行する。終端パラメ
ータをデコードした場合、データ伸長制御部39はCP
U ウェイト回路27を動作させ、CPU に命令コー
ドの読み込みを許可する。
【0028】この実施例では、ROM 4側のデータバ
スも、CPU のデータバス22も16ビット幅を想定
しているが、本発明の効果として、CPU のデータバ
ス22は16ビット幅のままでROM 4側のデータバ
スを8ビットにすることも可能である。すなわち、デー
タ伸長制御部39で1ビットずつシフトするからである
。図8および図9における破線内の回路が図1および図
5におけるデータ伸長回路3に相当する。
【0029】本実施例におけるデータの圧縮効率につい
て説明する。データの圧縮率は、もとのパターンに依存
するが、発生頻度の高いパターンをあらかじめ31種類
(長さ12ビットのもの15種類、16ビットのもの1
6種類)登録しておき、これを呼び出す方法を用いた場
合、元のソースコードが約74%の容量に圧縮された。 圧縮効率はアルゴリズムの改善によってさらに向上する
ものと予想される。
【0030】
【発明の効果】本発明によれば、ROM 内に圧縮した
データを格納することによって、装置内のROM の容
量を低減することができ、製造原価および実装面積の上
で利点がある。またデータを読み込むためのROM の
アクセス回数が圧縮していない場合より少なくてすむ。 さらに伸長回路の動作速度が十分高速であれば、通常の
キャッシュヒットよりもデータの読み込みが高速に実行
できる。
【図面の簡単な説明】
【図1】本発明を説明するブロック図である。
【図2】プログラムにおける実行単位を説明する図であ
る。
【図3】アドレス変換テーブルを説明する図である。
【図4】データの圧縮を説明する図である。
【図5】本発明の一実施例としてのプリンタ装置のブロ
ック図である。
【図6】図5の装置におけるCPU を介しての作業用
RAM と命令キャッシュとの関係を説明する図である
【図7】図5の装置のプログラム処理の過程を示す流れ
図である。
【図8】図5の装置のデータ伸長回路の詳細を示す部分
ブロック図である。
【図9】図5の装置のデータ伸長回路の詳細を示す部分
ブロック図である。
【図10】図5の装置のアドレス変換テーブルの構造を
示す図である。
【符号の説明】
1…CPU 2…命令キャッシュRAM 3…データ伸長回路 4…ROM 5…アドレス変換テーブル 6…作業用RAM 7…ホストインタフェース 8…機構制御部 10…リセット回路

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  中央処理装置(1) と、該中央処理
    装置(1) に含まれる命令キャッシュとして動作する
    ランダムアクセスメモリ(2) と、あらかじめ圧縮さ
    れたデータが格納された読み出し専用メモリ(4) と
    、該データの圧縮前と圧縮後の対応を示す対応テーブル
    (5) と、該読み出し専用メモリ(4) から読み出
    されたデータを該対応テーブル(5) を用いて伸長す
    るデータ伸長回路(3) とを具備し、該伸長されたデ
    ータを該命令キャッシュに格納して該中央処理装置(1
    ) が命令を実行するようにした圧縮データを格納した
    読み出し専用メモリを備えた装置。
JP3049714A 1991-03-14 1991-03-14 圧縮データを格納した読み出し専用メモリを備えた装置 Withdrawn JPH04284551A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3049714A JPH04284551A (ja) 1991-03-14 1991-03-14 圧縮データを格納した読み出し専用メモリを備えた装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3049714A JPH04284551A (ja) 1991-03-14 1991-03-14 圧縮データを格納した読み出し専用メモリを備えた装置

Publications (1)

Publication Number Publication Date
JPH04284551A true JPH04284551A (ja) 1992-10-09

Family

ID=12838859

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3049714A Withdrawn JPH04284551A (ja) 1991-03-14 1991-03-14 圧縮データを格納した読み出し専用メモリを備えた装置

Country Status (1)

Country Link
JP (1) JPH04284551A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994010685A1 (en) * 1992-10-30 1994-05-11 Sega Enterprises, Ltd. Information processing apparatus
US5652857A (en) * 1995-03-09 1997-07-29 Fujitsu Limited Disk control apparatus for recording and reproducing compression data to physical device of direct access type
KR970076250A (ko) * 1996-05-23 1997-12-12 데이비드 지. 퍼셀 명령어 압축 해제 방법과 장치 및 명령어 압축 해제기
WO2006107095A1 (ja) * 2005-03-31 2006-10-12 Nec Corporation 計算機システム、メモリ管理方法、およびそのプログラム
JP2012098893A (ja) * 2010-11-01 2012-05-24 Fujitsu Semiconductor Ltd 圧縮命令処理装置及び圧縮命令生成装置

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994010685A1 (en) * 1992-10-30 1994-05-11 Sega Enterprises, Ltd. Information processing apparatus
EP0667619A1 (en) * 1992-10-30 1995-08-16 Sega Enterprises, Ltd. Information processing apparatus
EP0667619A4 (en) * 1992-10-30 1995-10-04 Sega Enterprises Kk INFORMATION PROCESSING APPARATUS.
US5686914A (en) * 1992-10-30 1997-11-11 Sega Enterprises, Ltd. Information processing system
US5652857A (en) * 1995-03-09 1997-07-29 Fujitsu Limited Disk control apparatus for recording and reproducing compression data to physical device of direct access type
KR970076250A (ko) * 1996-05-23 1997-12-12 데이비드 지. 퍼셀 명령어 압축 해제 방법과 장치 및 명령어 압축 해제기
WO2006107095A1 (ja) * 2005-03-31 2006-10-12 Nec Corporation 計算機システム、メモリ管理方法、およびそのプログラム
US8930659B2 (en) 2005-03-31 2015-01-06 Nec Corporation Computer system, memory management method and program thereof
US9678862B2 (en) 2005-03-31 2017-06-13 Nec Corporation Computer system, memory management method and program thereof
JP2012098893A (ja) * 2010-11-01 2012-05-24 Fujitsu Semiconductor Ltd 圧縮命令処理装置及び圧縮命令生成装置

Similar Documents

Publication Publication Date Title
JPH04284551A (ja) 圧縮データを格納した読み出し専用メモリを備えた装置
JP2000066948A (ja) 圧縮データ入出力機能付メモリlsi
JP2006072989A (ja) 電子機器
JP3772569B2 (ja) 画像処理装置および画像処理方法
KR100463205B1 (ko) 시퀀셜 버퍼를 내장하여 디에스피의 데이터 억세스 성능을향상시키는 컴퓨터 시스템 및 그 컴퓨터 시스템의 데이터억세스 방법
JPH0573413A (ja) キヤツシユメモリ・データ制御装置
JP4748807B2 (ja) 復号回路
JP3051014B2 (ja) データ記憶装置及びデータシステム
US5214764A (en) Data processing apparatus for operating on variable-length data delimited by delimiter codes
JP3326838B2 (ja) 画像処理装置
JP2000163264A (ja) Cpu用のプログラム記憶装置
JPH06303439A (ja) イメージデータ処理装置
JPS6218074B2 (ja)
JP3146197B2 (ja) データ転送装置及び記憶装置
JPS5953579B2 (ja) 文字圧縮装置
JP2524673B2 (ja) 直接メモリアクセス装置
JP3847995B2 (ja) データ処理装置およびデータ処理装置のデータ処理方法
JP2000207245A (ja) インサ―キットエミュレ―タ
JP2943900B2 (ja) データ・ファイルのデータ圧縮処理装置,データ伸長処理装置,データ圧縮処理方法およびデータ伸長処理方法
JPS6357821B2 (ja)
JP2501393B2 (ja) 直接メモリアクセス装置
JPS6331808B2 (ja)
JP3091382B2 (ja) キーボード入力読み取り方法
JP3175167B2 (ja) 入出力処理装置
JP2000011540A (ja) 圧縮機構付磁気テープ制御装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980514