JPH11163736A - プロセッサ - Google Patents

プロセッサ

Info

Publication number
JPH11163736A
JPH11163736A JP32980297A JP32980297A JPH11163736A JP H11163736 A JPH11163736 A JP H11163736A JP 32980297 A JP32980297 A JP 32980297A JP 32980297 A JP32980297 A JP 32980297A JP H11163736 A JPH11163736 A JP H11163736A
Authority
JP
Japan
Prior art keywords
code
register
variable
data
length
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
Application number
JP32980297A
Other languages
English (en)
Inventor
Hiromi Watanabe
浩已 渡辺
Yutaka Okada
豊 岡田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP32980297A priority Critical patent/JPH11163736A/ja
Publication of JPH11163736A publication Critical patent/JPH11163736A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】プロセッサのクロック周波数を上昇させること
なく、可変長符号の復号を高速に行うことを可能とす
る。 【解決手段】共通のデータバス線で結合され入力符号列
を取り込み復号の済んだだけシフトするシフト回路3
と、シフト回路3のシフト量を求める演算回路4と、汎
用レジスタ6とが共通のデータバス線で結合され、かつ
シフト回路3から読み出された可変長符号を復号値及び
可変長符号の符号語長を出力する可変長符号テーブル1
3に入力する専用線105と、符号語長を演算回路4に
入力する専用線路106を設けて構成される。 【効果】可変長符号を復号し、その結果をレジスタ等に
記憶する動作と、その符号分だけ符号列をシフトして、
次の符号を出力するための符号のシフト数演算とを同時
に実行することができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プロセッサ、更に
詳しく言えば、可変長符号化された符号列を、命令(ソ
フトウェア)で復号する機能を持つプロセッサに関す
る。
【0002】
【従来の技術】情報をより効率よく蓄積あるいは伝送す
るために、データを圧縮する手法が種々検討されてい
る。そのデータを圧縮する技術の一つに、データの出現
頻度に応じて符号語を決めることにより情報を圧縮する
方法がある。出現頻度の低いデータには、符号長が比較
的長い符号語を使用し、頻繁に発生するデータには符号
語長の短い符号語を割り当てる。この技術を、可変長符
号化と呼び広く利用されている。マルチメディア時代を
迎えた近年では、自然画を対象とした静止画像の符号化
や動画像の符号化においても、この可変長符号化の技術
が利用されている。詳細については、ISO(国際標準
化機構)のJPEGあるいはMPEGの勧告書に記載さ
れている。
【0003】可変長符号化された符号列は、復号して元
のデータとして利用される。リアルタイム性を必要とし
ない、ハードディスク等に蓄積された文書ファイルや静
止画像については、復号処理をその処理時間にとらわれ
ることなく実行できる。即ち、プロセッサ等のソフトウ
ェアでの復号も問題なく行うことが可能である。しか
し、動画像のようにリアルタイム性の高いデータの場合
には、自ずとその処理時間に制限を受け、より高速な復
号処理が必要とされる。そのため、性能の高いプロセッ
サを利用したり、それでも、そのリアルタイム性が補償
できない場合には、専用の回路で実行したりされてい
る。しかし、JPEGあるいはMPEG等の画像復号処
理を行う場合、可変長符号の復号処理の他に制御情報の
処理など種々の信号処理を必要とし、可変長符号の復号
のための専用回路を別に設けることは、装置構成の小型
化、経済性から望ましくなく、プロセッサを利用するこ
とが望ましい。
【0004】
【発明が解決しようとする課題】可変長符号語の復号を
行う場合には、符号列から復号すべき符号語を切り出す
操作と、その符号語を復号する操作と、次の符号語を読
み出すために、符号列をシフトさせる操作とを必要とす
る。これらの操作を従来のプロセッサで行うためには、
図10に示すように、可変長符号語の復号処理を行う部
分は、入力符号列を取り込み復号処理がすんだビット数
だけシフトするシフト回路3と、シフト回路3のシフト
量を求める演算回路4と、汎用レジスタ6と、シフト回
路3から読み出された可変長符号を復号し、復号語及び
可変長符号の符号語長を出力する可変長符号テーブルメ
モリ14とが共通のデータバス線100、101、10
4に並列に接続されて構成され、復号処理は、例えば丸
付き番号の順に時系列に行われなければならない。すな
わち異なる処理を平行に行うことができない。更に詳し
く言えば、入力符号列から復号すべき符号語を汎用レジ
スタ6から切り出し、シフト回路3に入力するす操作
、シフト回路3から、読み出された符号を汎用レジス
タ6に書き込み、その符号を可変長符号テーブルメモ
リ14に入力し、メモリ14で復号された復号データ
及び符号長データを汎用レジスタ6に書き込み、レジ
スタ6の符号長データを読みだし、演算器4で次ぎに
シフト回路3から読み出すためのシフト回路3のシフト
数を決定し、それを汎用レジスタ6にかきこむ操作と
を、シリアルに行う必要がある。このため、例えば、符
号列から符号語を切り出す操作に2命令(、)、そ
の符号語を復号するのに3命令()、次の符号列をシ
フトさせる操作に5命令(、)かかるとすると、一
つの符号語を復号するのに、10命令を必要とすること
になる。1命令を1クロックサイクルと考えると10ク
ロックサイクルが必要となる。これは、入力符号列が要
求する復号速度の10倍もの周波数のクロックで、プロ
セッサを動作させる必要があり、消費電力が上昇した
り、設計が困難になったり、実質的に対応することが困
難になったりする。
【0005】従って、本発明の目的は、プロセッサのク
ロック周波数を上昇させることなく、従来のプロセッサ
回路を有効に利用し、高速な復号速度が要求される信号
処理ができるプロセッサを実現することである。
【0006】
【課題を解決するための手段】上記の目的を達成するた
め、本発明のプロセッサは、従来のプロセッサにおい
て、時系列的に行われていた上記の処理を平行
して行えるように構成した。即ち、共通のデータバス線
で結合され入力符号列を取り込み復号の済んだだけシフ
トするシフト回路と、上記シフト回路のシフト量を求め
る演算回路4と、汎用レジスタとが共通のデータバス線
で結合され、かつ上記シフト回路から読み出された可変
長符号を復号値及び可変長符号の符号語長を出力する可
変長符号記憶部(例えば、ROMやRAMで構成される
ルックアップテーブル)に入力する専用線と、符号語長
を上記演算回路に入力する専用線路を設けて構成され
る。すなわちシフト回路の出力を可変長符号記憶部に伝
送する線と、可変長符号記憶部から出力を演算器に伝送
する専用線をプロセッサのデータバス線と独立に設け
た。更に詳しく言えば、データをシフトして出力するシ
フト回路と、そのシフト回路のシフト量を指定するシフ
ト数レジスタと、可変長の符号を記憶する可変長符号記
憶部を有し、上記シフト数レジスタの出力が、直接シフ
ト回路のデータのシフト量を決定すると同時に、データ
を演算する演算器の一つの入力に供給され、上記シフト
回路からの出力は、各レジスタにデータを記憶するため
の書き込みバスに接続されると共に、書き込みバスとは
独立な符号出力バスを介して、上記可変長符号記憶部に
接続され、可変長符号記憶部は、符号出力バスのデータ
に応じて、その符号を解読し、一つは、復号値として、
復号バスに出力し、また、一つは、その符号長として、
符号長専用の線に出力するように構成され、上記復号バ
スは、書き込みバスに接続され、復号結果は、レジスタ
やメモリ等に記憶することが可能な構成とし、また、符
号長専用の線は、演算器のシフト数レジスタからの出力
に接続された入力と異なる一つの入力に供給され、演算
器は、シフト数レジスタから供給されるデータと、符号
長専用の線を介して供給される符号長とを加算演算し、
その演算結果を、シフト数レジスタに接続された独立な
線を介して、シフト数レジスタに記憶できる構成とし、
可変長符号を復号し、その結果をレジスタ等に記憶する
動作と、その符号分だけ符号列をシフトして、次の符号
を出力するための符号のシフト数演算とを同時に実行す
ることが可能な構成とする。
【0007】また、好ましい実施の形態として、可変長
符号記憶部をRAMで構成したルックアップテーブルを利
用することにより、そのRAMに適当なデータをロードし
て記憶することにより、複数の可変長符号化に対応す
る。
【0008】
【発明の実施の形態】<実施の形態1>図1は。本発明
によるプロセッサの一実施形態の構成を示すブロック図
である。特に図10の従来のプロセッサとの違いを明ら
かにするため、図10と同機能部には同じ番号を使用し
ている。図示のように可変長符号語の復号処理を行う部
分は、入力符号列を取り込み復号の済んだだけシフトす
るシフト回路3と、シフト回路3のシフト量を求める演
算回路4と、汎用レジスタ6と、シフト回路3のシフト
数を記憶するシフト数レジスタ2とが共通のデータバス
線100、101、104で並列に接続され、かつシフ
ト回路3から読み出された可変長符号を復号値及び可変
長符号の符号語長に変換した出力する可変長符号テーブ
ルメモリ(即ちルックアップテーブル)13に入力する
専用線105と、上記符号語長を上記演算回路4に入力
する専用線路106で構成される。
【0009】上記構成のプロセッサによる一連の可変長
符号の1つ可変長符号の復号処理は以下のように行われ
る。入力符号列から復号すべき符号語をデータバス10
1を介して汎用レジスタ6から切り出し、シフト回路3
に入力するす操作、シフト数レジスタ2からデータバ
ス102を介して加えられえたシフト数だけシフト回路
3をシフトし、シフト回路3から読み出された符号をア
ドレスとして専用線105を介して可変長符号テーブル
メモリ13に加える操作、可変長符号テーブルメモリ
14で復号された符号長データを専用線106を介して
演算器4に入力する操作、可変長符号テーブルメモリ
14で復号された符号をデータバス104を介して汎用
レジスタ6に書き込む操作、シフト数レジスタ2から
のシフト数とを演算器4に入力し、専用線106を介し
て演算器4に符号長と加算する操作、演算器4の出力
を次ぎにシフト回路3から読み出すためのシフト回路3
のシフト数を決定し、それをシフト数レジスタ2に書き
込む操作とを行う。
【0010】本実施形態に示すように、可変長符号テー
ブルメモリ14の入出力がレジスタを介することなく、
専用線105及び106でそれぞれシフト回路3及び演
算回路4に結合されているため、図右下に処理の流れと
期間の関係を示すように、操作が同時に、一つ
のサイクルの中で行われる。特に復号処理と次ぎの可変
長符号の処理をするためのシフト数を決める演算処理が
同時に行われる利点をもつ。
【0011】図2は、図1の部分を含むプロセッサ全体
の構成を示すブロック図である。
【0012】同図において、図1と同じ部分には、同じ
番号を付す。同図において、プロセッサは、シフト数を
記憶するシフト数レジスタ2、そのシフト数に応じて、
入力符号語データをシフトして出力するシフト回路3、
データを演算する演算器4、演算器結果により変化する
フラグを記憶するステータスレジスタ5、復号すべき可
変長符号を含むデータ列を記憶する汎用レジスタ6、可
変長符号の復号を行う可変長符号記憶部13の信号処理
部と、命令のアドレスを示すプログラムカウンタ7、メ
モリのアドレスを記憶するメモリアドレスレジスタ8、
メモリからの読み出しデータを記憶するメモリデータレ
ジスタ9、メモリへの書き込みデータを記憶するメモリ
データレジスタ10、命令コードを記憶するインストラ
クションレジスタ11、命令を解読するインストラクシ
ョンデコーダ12、データや命令等を記憶するメモリ1
4から構成されるプログラム制御部とから構成される。
【0013】データバス100は、汎用レジスタ6ある
いはプログラムカウンタ7からデータを読み出し、シフ
ト回路3、演算器4あるいはメモリアドレスレジスタ8
にデータを供給する。データバス101は、汎用レジス
タ6あるいはプログラムカウンタ7から汎用レジスタ6
あるいはプログラムカウンタ7からのデータを読み出
し、シフト回路3、演算器4、メモリデータレジスタ1
0に、汎用レジスタ6あるいはプログラムカウンタ7か
らのデータを供給する。
【0014】データバス102は、シフト数レジスタ2
のデータを読み出し、シフト回路3と演算器4に供給す
る。専用線103は、演算器4からの出力の一部をシフ
ト数レジスタ2に供給する。データバス104は、シフ
ト回路3、演算器4、ステータスレジスタ5、メモリデ
ータレジスタ9、可変長符号記憶部13からの出力デー
タを、シフト数レジスタ2、汎用レジスタ6、プログラ
ムカウンタ8、インストラクションレジスタ11に供給
する。
【0015】第1の専用線105は、シフト回路3から
の出力を、可変長符号記憶部13に供給する。第2の専
用線106は、可変長符号記憶部13の出力のうち符号
長を演算器4に供給する。バス107は、メモリ14の
アドレスバスであり、バス108は、メモリ14のデー
タバスに接続される。インストラクションデコーダ12
は、第1制御バス109を介して、読み出しあるいは書
き込みレジスタを制御し、第2制御バス110で、シフ
ト回路3、演算器4、可変長符号記憶部13の動作を制
御する。
【0016】図3は、図2のブロック15の特徴部の詳
細な構成を示す図である。本実施の形態では、可変長符
号記憶部13がリードオンリーメモリ(ROM)回路で
構成されている。シフト回路3は、バレルシフタ31と
出力制御バッファ32から構成される。演算器4は、入
力データバス選択器41、42、算術演算器43、出力
制御バッファ44から構成される。ステータスレジスタ
5は、算術演算器43のオーバーフローを検出した時に
発生するFフラグを含んでいる。汎用レジスタ6は、入
力符号列の記憶用の第1レジスタ61及び第2レジスタ
62、復号値の記憶用レジスタとして第3レジスタ63
を含んでいる。
【0017】以下上記ブロック15の可変長符号の復号
動作を説明する。汎用レジスタ6内のレジスタ61及び
レジスタ62に、符号列の最初の部分がロードされ順番
に記憶される。レジスタ61に記憶されている復号され
る符号列の最初の部分は、データバス101を介してシ
フト回路3内のバレルシフタの一方の入力に入力され
る。レジスタ62に記憶されたレジスタ61に記憶され
た符号列に続く符号列は、データバス100を介して、
シフト回路3内のバレルシフタの他方の入力に入力され
る。バレルシフタ31は、シフト数レジスタ2に記憶さ
れているシフト数に応じて、バレルシフタ31に供給さ
れたデータをシフトして出力する。最初の段階では、シ
フト数レジスタ2には、0を記憶しておくため、バス1
02からは、0が出力され、バレルシフタ31からは、
シフトが行われることなく、符号列の最初の部分から専
用線105に出力される。専用線105の出力は、可変
長符号記憶ROM13のアドレスとして入力される。そ
のアドレスに対応する部分には、可変長符号の復号値デ
ータ1と、可変長符号の符号長データ2が記憶されてお
り、アドレスが入力されると、そのアドレスに対応し
て、データ1のポートから復号値がデータバス104に
出力され、第3レジスタ63に記憶される。符号長は、
データ2のポートから出力され、専用線106を介して
演算器4に入力される。演算器4は、専用線106から
の符号長データと、バス102からのシフト数レジスタ
2に記憶されているデータとを算術演算器43で加算
し、その結果をバス103を介してシフト数レジスタ2
に記憶する。以上が、可変長符号語を解読する一連の操
作である。
【0018】さらに具体的な数値例で、前記プロセッサ
の動作を説明する。図4に、可変長符号語とその復号値
の表を示す。この例では、5つの可変長符号語(0)、
(10)、(110)、(1110)及び(1111)
が存在し、復号表に示すように、それぞれ復号値0、
1、2、3、及び4をもつものとする。図5は、図4に
示した可変長符号語をROM13のデータとして記憶し
た例である。アドレス0(0000)から15(111
1)に対して、データ1には、復号値が記憶され、デー
タ2には、その符号長が記憶されている。本例では、図
3の各データバス及び専用線105、106のビット幅
を4ビットとする。
【0019】図6は、図2のプロセッサによる可変長符
号語の復号処理のフローチャートを示す。まず初期設定
として、シフト数レジスタ2を0に設定する(s1)。
次に、第1レジスタ61に符号列の最初の4ビットがメ
モリあるいは、外部のI/O等からロードし記憶する(s
2)。続いて、第2レジスタ62に、符号列の続きの4
ビットを同様にロードし記憶する(s3)。次に、第
1、第2レジスタ61,62のデータをそれぞれバス1
01及びバス100を介してバレルシフタ31に入力
し、バス102を介して入力されるシフト数レジスタ2
の値に応じて、入力されたデータをシフトして出力する
(s4)。出力されたデータ(4ビット)は専用線10
5を介して可変長符号記憶ROM13にアドレスとして
入力される。入力されたアドレスに応じて、可変長符号
記憶ROM13は、図5で示したようにデータ1として
その復号値を出力し、同時にデータ2として符号長を出
力する(s5)。データ1として出力された復号値は、
バス104を介して、汎用レジスタ6内の第3レジスタ
63に記憶される(s6)。また、同時にデータ2とし
て出力された符号長は、専用線106を介して演算器4
に入力され、バス102を介して演算器4に入力される
シフト数レジスタ2の値と加算される(s7)。加算結
果が4以上の場合には、ステータスレジスタ5内のフラ
グFが“1”となり、4未満の場合には、フラグFは
“0”の値となる(s8)。加算結果は、下位2ビット
が、バス103を介してシフト数レジスタ2に転送され
記憶される(s9)。
【0020】第3レジスタ63に記憶された復号値は、
第3レジスタ63から適当なメモリ等に転送される(s
10)。フラグFが“1”を示している場合には、第2
レジスタ62に記憶さているデータを第1レジスタ61
に転送し(s11)、第2レジスタ62は、続きの符号
列の4ビットをメモリあるいは、I/O(図示せず)から
ロードする(s12)。フラグFが“0”の場合は、こ
の操作は行わない。以上が、一連の復号過程である。連
続して可変長符号の復号を行う場合は、再び、バレルシ
フタ31に、第1及び第2レジスタの値をロードし、前
述した動作を繰り返す。
【0021】図7は、復号される可変長符号列の一例を
示す。図8は、図7に示す符号列を復号した時の、上記
各汎用レジスタの状態と、各バスを介する信号を時間推
移で示した図である。まず、最初の復号動作では、シフ
ト数レジスタ2には、0が入力されている。第1レジス
タ61には、符号列の最初の4ビット(0110)が、
第2レジスタ62には、その続きの4ビット(111
1)が記憶されている。この第1、第2レジスタの値
は、バス100及びバス101を介してバレルシフタ3
1に入力される。バレルシフタ31は、バス102を介
して出力されるシフト数レジスタ2の値だけシフトして
出力する。現在は、バス102から0の値が出力されて
いるため、専用線105には、符号(0110)の4ビ
ットが出力される。専用線105は、可変長記憶ROM
13にアドレスとして入力される。図5に示した表に示
したように、アドレス(0110)が入力されると、デ
ータ1として復号値0(0000)がバス104に出力
され、データ2として符号長1(0001)が専用線1
06に出力される。演算器4は、バス106の値とバス
102の値を加算し、その結果が4以上の場合には、ス
テータスレジスタ5内のフラグFを“1”にセットす
る。現在の場合は、演算器4からの出力は1であるた
め、フラグFは“0”である。また、同時にバス103
に演算結果の下2ビットである(01)を出力し、シフ
ト数レジスタ2に(0001)として記憶する。バス1
04に出力された復号値(0000)は、第3レジスタ
63に記憶される。続いて、2番目を復号すると、シフ
ト数レジスタ2には、(0001)が記憶されている。
第1レジスタ61に記憶された(0110)と第2レジ
スタ62に記憶された(1111)をバレルシフタ31
にロードして、バス102を介して出力されるシフト数
レジスタ2の値1(0001)に応じて、バス105に
は、(1101)が出力される。この値をアドレスとす
る可変長符号記憶ROM13からは、バス104に復号
値として値2(0010)が、バス106には、符号長
として値3(0011)が出力される。演算器4は、バ
ス102からの値1と、バス106からの値3を加算す
る。この結果4となるため、ステータスフラグ内のフラ
グFが“1”にセットされる。また、バス103から
は、演算出力の下2ビット(00)が出力されシフト数
レジスタ2に(0000)として記憶される。復号値2
は、第3レジスタ63に記憶される。3番目を復号する
場合には、フラグFが“1”にセットされたため、第1
レジスタ61及び第2レジスタ62の値は、第2レジス
タ62の値が第1レジスタ61に転送され、第2レジス
タ62には新しく符号列の続き(1011)が記憶され
ている。以下の同様に動作して、復号値4を得る。図8
には、第5番目までの復号を示したが、後の動作は同様
のため詳細な説明は行わない。
【0022】<実施の形態2>実施の形態1では、可変
長符号記憶部として、ROMを用いた例に示した。しか
し、可変長符号列は、その符号化の方式によって異な
る。このため、例えばRAMのような書き換え可能な回
路に可変長符号記憶部をして、可変長符号の復号動作を
実行する前に、そのデータをRAMにロードする構成と
する。データをロードした後の動作は、実施形態1と同
様のため省略する。
【0023】<実施の形態2>図9は、本発明によるプ
ロセッサの第3の形態を示すブロック図である。本実施
形態は可変長符号記憶部を可変長符号記憶部131及び
132の2つの部分(2つに可変長符号語空間)で構成
したものである。同図において、バレルシフタ31から
の専用線105を、第1の可変長符号記憶部131と第
2の可変長符号記憶部132に、同時に入力する。入力
されたアドレスに対して、第1、第2の可変長符号記憶
部ともデータ1及びデータ2を有するが、この時、制御
バス110の信号により、その時点で復号するべき可変
長符号語空間を指定することにより、第1あるいは第2
の可変長符号記憶部からの出力を制御するように動作さ
せる。図の例では、可変長符号記憶部は、2つである
が、さらに多数の可変長符号記憶部を持つ構成としても
よい。
【0024】第1、第2の実施の形態では、可変長符号
記憶部は、一つの回路のROM、RAMを用いて構成し
ているが、例えば画像の符号化に利用されるMPEG等の符
号列では、一つの符号列に複数の可変長符号語空間が混
在することがり、本実施形態は、このような場合の復号
処理に好適である。
【0025】
【発明の効果】上記実施の形態では、プロセッサ構成図
は、基本的にはプロセッサのアーキテクチャである。即
ち、従来のプロセッサが行う全ての信号処理は、当然可
能なアーキテクチャである。従来のプロセッサが可能な
信号処理に影響を与えることなく、かつ、その構成が持
つ、レジスタや演算器等の回路を共通に利用して、可変
長符号の復号動作を、可変長符号記憶部をバレルシフタ
の出力に直接接続し、その結果をレジスタに記憶すると
同時に、プロセッサの算術演算器を利用して符号長の加
算を行い、次の符号の頭だしを行うことによって、プロ
セッサのクロック周波数を上昇させることなく、従来の
プロセッサ回路を有効に利用し、最小な回路追加で、可
変長符号の復号を高速に行うことが可能となる。
【図面の簡単な説明】
【図1】本発明によるプロセッサの要部の原理的構成を
示すブロック図。
【図2】本発明によるプロセッサの一実施形態の構成を
示すブロック図。
【図3】図2の要部15の構成を示すブロック図。
【図4】復号表を示した図。
【図5】可変長符号記憶ROM13のデータ図。
【図6】本発明によるプロセッサの一実施形態における
可変長符号の復号処理過程を示したフローチャート。
【図7】符号語列の一例を示した図。
【図8】復号過程の状態遷移を示した図。
【図9】本発明によるプロセッサの他の実施形態の構成
を示すブロック図。
【図10】従来のプロセッサの構成を示すブロック図。
【符号の説明】
1…プロセッサ、2…シフト数レジスタ、3…シフト回
路、4…演算回路、5…ステータスレジスタ、6…汎用
レジスタ、13…15…プロセッサの特徴部分。10
0、101、102、104、…データバス、103、
105、106…専用線。

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】少なくとも第1及び第2のデータを加算す
    る機能を持つ演算器と、上記演算器の演算結果に応じて
    変化するフラグを記憶するステータスレジスタと、少な
    くとも可変長符号語を含む符号列を記憶するレジスタを
    含む複数の汎用レジスタと、上記演算器の演算結果及び
    上記フラグによって決定されるシフト数を記憶し、読み
    でされたシフト数の一部を上記第1のデータとして上記
    演算器に加えるシフト数レジスタと、上記符号列を一定
    数単位で取り込み上記シフト数だけシフトするシフト回
    路と、上記シフト回路から第1の専用線を介して取り出
    された可変長符号語を入力とし、その可変長符号語の復
    号値及び可変長符号語の符号長を出力する可変長符号記
    憶部と、上記符号長を上記第2のデータとして上記演算
    器に加える第2の専用線と、上記演算器、ステータスレ
    ジスタ、複数の汎用レジスタ、シフト数レジスタ及びシ
    フト回路のデータの送受を行うデータバス及び少なくと
    も各レジスタからのデータの読み出し及び書き込み並び
    演算器及び可変長符号記憶部の一連の動作を、命令コー
    ドを解読してプログラム処理する制御部とを持つことを
    特徴とするプロッセサ。
  2. 【請求項2】上記制御部がプログラム処理する実行する
    命令のアドレスを出力するプログラムカウンタと、メモ
    リのアドレスを一時記憶するメモリアドレスレジスタ
    と、上記メモリへのデータを入出力するため一時データ
    を記憶するためのメモリデータレジスタと、命令を一時
    記憶するインストラクションレジスタと、上記命令を解
    読し、制御信号を生成するインストラクションデコーダ
    とを持つ請求項1記載のプロッセサ。
  3. 【請求項3】上記可変長符号記憶部が上記第1の専用線
    を介して取り出された可変長符号語をアドレスとし、同
    一アドレスのデータとして、上記復号値及び上記符号長
    をもつ可変長符号テーブルである請求項2記載のプロッ
    セサ。
  4. 【請求項4】上記可変長符号テーブルがRAMで構成さ
    れた請求項2記載のプロッセサ。
  5. 【請求項5】上記可変長符号テーブルが複数個並列に設
    けられた請求項3又は4記載のプロッセサ。
  6. 【請求項6】上記シフト回路が上記可変長符号語入力と
    し、上記シフト回路からのシフト数によってシフトする
    バレルシフタと、上記バレルシフタの出力を上記第1の
    専用線に直接出力しする手段と、上記バレルシフタの出
    力を出力制御バッファを介して上記データバスに出力す
    る手段とをもつ請求項3、4又は5記載のプロッセサ。
  7. 【請求項7】上記演算回路が上記第2の専用線からの符
    号長と上記シフト数レジスタからのシフト数を選択し加
    算する算術演算器と、上記算術演算器の出力を上記シフ
    ト数レジスタに直接入力する手段と、上記算術演算器の
    出力を出力制御バッファを介して上記データバスに出力
    する手段とをもつ請求項3ないし6のいずれか一つに記
    載のプロッセサ。
JP32980297A 1997-12-01 1997-12-01 プロセッサ Pending JPH11163736A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32980297A JPH11163736A (ja) 1997-12-01 1997-12-01 プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32980297A JPH11163736A (ja) 1997-12-01 1997-12-01 プロセッサ

Publications (1)

Publication Number Publication Date
JPH11163736A true JPH11163736A (ja) 1999-06-18

Family

ID=18225420

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32980297A Pending JPH11163736A (ja) 1997-12-01 1997-12-01 プロセッサ

Country Status (1)

Country Link
JP (1) JPH11163736A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014030180A1 (ja) * 2012-08-20 2014-02-27 富士通株式会社 格納プログラム、格納方法、格納装置、伸張プログラム、伸張方法及び伸張装置
JP2016171589A (ja) * 2016-05-23 2016-09-23 富士通株式会社 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法及び復号化装置
JP2017195628A (ja) * 2017-06-26 2017-10-26 富士通株式会社 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法及び復号化装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014030180A1 (ja) * 2012-08-20 2014-02-27 富士通株式会社 格納プログラム、格納方法、格納装置、伸張プログラム、伸張方法及び伸張装置
CN104584439A (zh) * 2012-08-20 2015-04-29 富士通株式会社 存储程序、存储方法、存储装置、解压缩程序、解压缩方法和解压缩装置
US20150160876A1 (en) * 2012-08-20 2015-06-11 Fujitsu Limited Character data storing method and character data stornig device
JPWO2014030180A1 (ja) * 2012-08-20 2016-07-28 富士通株式会社 符号化情報生成プログラム、符号化情報生成方法、符号化情報生成装置、復号化情報生成プログラム、復号化情報生成方法及び復号化情報生成装置
CN104584439B (zh) * 2012-08-20 2019-05-21 富士通株式会社 存储程序、存储方法、存储装置、解压缩程序、解压缩方法和解压缩装置
JP2016171589A (ja) * 2016-05-23 2016-09-23 富士通株式会社 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法及び復号化装置
JP2017195628A (ja) * 2017-06-26 2017-10-26 富士通株式会社 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法及び復号化装置

Similar Documents

Publication Publication Date Title
US7917733B2 (en) Instruction code compression using instruction codes with reuse flags
US20050198471A1 (en) Micro-controller for reading out compressed instruction code and program memory for compressing instruction code and storing therein
US6564237B2 (en) Arithmetic unit and data processing unit
US5669012A (en) Data processor and control circuit for inserting/extracting data to/from an optional byte position of a register
US4744043A (en) Data processor execution unit which receives data with reduced instruction overhead
US5504923A (en) Parallel processing with improved instruction misalignment detection
US20050256996A1 (en) Register read circuit using the remainders of modulo of a register number by the number of register sub-banks
US7567189B2 (en) Variable length code decoding apparatus and variable length code decoding method
JPH11163736A (ja) プロセッサ
US7308553B2 (en) Processor device capable of cross-boundary alignment of plural register data and the method thereof
EP0936537B1 (en) Cyclic redundancy check in a computer system
KR920002573B1 (ko) 데이타 처리기
US5875323A (en) Processor using implicit register addressing
JP3247052B2 (ja) 画像データ変換処理方法及び装置
JPH06149563A (ja) データ処理装置
US20060236021A1 (en) Method for addressing a symbol in a memory and device for processing symbols
US20060015704A1 (en) Operation apparatus and instruction code executing method
JP3792633B2 (ja) マイクロコントローラ、及びマイクロコントローラ装置
JPH11261424A (ja) ハフマン復号化装置
JP3647078B2 (ja) プロセッサ
JP3087488B2 (ja) データ復元回路
JPH07129398A (ja) マイクロプロセッサ
JPH03198143A (ja) バス・インターフェイス装置およびリード・モディファイ・ライト制御方式
JPH03179520A (ja) データデコーダ
JP2003233495A (ja) マイクロプロセッサ