JP2002063070A - 演算装置及び演算方法 - Google Patents

演算装置及び演算方法

Info

Publication number
JP2002063070A
JP2002063070A JP2000248431A JP2000248431A JP2002063070A JP 2002063070 A JP2002063070 A JP 2002063070A JP 2000248431 A JP2000248431 A JP 2000248431A JP 2000248431 A JP2000248431 A JP 2000248431A JP 2002063070 A JP2002063070 A JP 2002063070A
Authority
JP
Japan
Prior art keywords
memory
instruction code
address signal
bits
signal
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.)
Granted
Application number
JP2000248431A
Other languages
English (en)
Other versions
JP4629198B2 (ja
Inventor
Akiyoshi Kondo
晃由 近藤
Masayuki Takeshige
昌之 竹重
Sumitaka Hibino
純孝 日比野
Isato Isobe
勇人 磯邊
Jiyunri Miyazaki
順吏 宮崎
Kunihiro Ohara
邦裕 大原
Kazuya Taniguchi
和也 谷口
Hiroshi Narutomi
裕志 成富
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 VLSI Ltd
Fujitsu Ltd
Original Assignee
Fujitsu VLSI Ltd
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 VLSI Ltd, Fujitsu Ltd filed Critical Fujitsu VLSI Ltd
Priority to JP2000248431A priority Critical patent/JP4629198B2/ja
Priority to US09/768,363 priority patent/US6502179B2/en
Publication of JP2002063070A publication Critical patent/JP2002063070A/ja
Application granted granted Critical
Publication of JP4629198B2 publication Critical patent/JP4629198B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3816Instruction alignment, e.g. cache line crossing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/04Addressing variable-length words or parts of words
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】命令コードをメモリ領域に効率よく格納可能と
するとともに、格納された命令コードの転送サイクルの
削減を図り得る演算装置を提供する。 【解決手段】1バイトの整数倍以外の命令長を備えた命
令コードをメモリから読み出して、演算動作を行う演算
装置を構成するものであり、メモリ1は、命令コードの
うち1バイトの整数倍の下位ビットを格納する下位ビッ
ト格納領域2と、下位ビット以外の上位ビットを空き領
域を設けることなく連続して格納する上位ビット格納領
域3とを備えている。命令コード生成部20は、入力さ
れるアドレス信号IAに基づいて、メモリ1から前記命
令コードの下位ビットと上位ビットとを同一サイクルで
読み出す。演算器4は、命令コード生成部20にアドレ
ス信号IAを出力するとともに、命令コード生成部20
から出力される命令コードに基づいて演算動作を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、メモリ領域に格
納されている命令コードを読み出して、該命令コードに
基づく演算動作を行う演算装置に関するものである。
【0002】メモリ領域に命令コードを格納し、あるい
はメモリ領域に格納されている命令コードを読み出し、
当該命令コードに対応する演算動作を行う演算装置で
は、近年、命令コードの命令長が1バイトの整数倍以外
となるものがある。このような演算装置において、メモ
リ領域への命令コードの効率的な格納及び命令コードの
転送時間の短縮を図ることが必要となっている。
【0003】
【従来の技術】従来、命令長が1バイトの整数倍以外と
なる命令コードに基づいて演算動作を行う演算装置で
は、次のような動作を行う。
【0004】命令コードをメモリ領域に格納する場合、
例えば16ビット長のメモリ領域に18ビットの命令長
の命令コードを格納する場合には、クロック信号に基づ
く第一の書き込みサイクルで、第一のアドレスにまず1
6ビット分の命令コードが格納される。次いで、第二の
書き込みサイクルで第二のアドレスに残り2ビット分の
命令コードが格納される。
【0005】つづいて、新たに18ビット長の命令コー
ドを格納する場合には、第三の書き込みサイクルで第三
のアドレスにまず16ビット分の命令コードが格納さ
れ、次いで第四の書き込みサイクルで第四のアドレスに
残り2ビット分の命令コードが格納される。
【0006】また、上記のように格納された命令コード
を読み出す場合には、第一の読み出しサイクルで前記第
一のアドレスから16ビット分の命令コードが読み出さ
れ、次いで第二の読み出しサイクルで第二のアドレスか
ら残り2ビット分の命令コードが読み出される。
【0007】そして、16ビットの命令コードと、2ビ
ットの命令コードが合成されて、18ビットの命令コー
ドが生成され、その命令コードに基づいて演算動作が行
われる。
【0008】
【発明が解決しようとする課題】ところが、上記のよう
な演算装置では、各命令コードの残り2ビット分の命令
コードが格納されるアドレスには、それぞれ14ビット
分の空き領域が残る。
【0009】従って、多数の命令コードをメモリ領域に
格納する場合、空き領域が増大して、データ格納効率が
低下し、この結果大きなメモリ容量が必要となるという
問題点がある。
【0010】また、18ビットの各命令コードの書き込
み動作及び読み出し動作を行うために、それぞれクロッ
ク信号の2サイクル分の転送サイクルを要するため、演
算速度を高速化することができないという問題点があ
る。
【0011】この発明の目的は、命令コードをメモリ領
域に効率よく格納可能とするとともに、格納された命令
コードの転送サイクルの削減を図り得る演算装置を提供
することにある。
【0012】
【課題を解決するための手段】図1は、本発明の原理説
明図である。すなわち、1バイトの整数倍以外の命令長
を備えた命令コードをメモリから読み出して、演算動作
を行う演算装置を構成するものであり、メモリ1は、前
記命令コードのうち1バイトの整数倍の下位ビットを格
納する下位ビット格納領域2と、前記下位ビット以外の
上位ビットを空き領域を設けることなく連続して格納す
る上位ビット格納領域3とを備えている。命令コード生
成部20は、入力されるアドレス信号IAに基づいて、
前記メモリ1から前記命令コードの下位ビットと上位ビ
ットとを同一サイクルで読み出す。演算器4は、前記命
令コード生成部20に前記アドレス信号IAを出力する
とともに、前記命令コード生成部20から出力される命
令コードに基づいて演算動作を行う。
【0013】
【発明の実施の形態】(第一の実施の形態)図2〜図4
は、この発明を具体化した演算装置の第一の実施の形態
を示す。図2に示すメモリ1は、シングルポートメモリ
で構成され、1つのアドレスに16ビット、すなわち2
バイト分のデータ幅を備えている。
【0014】前記メモリ1には、外部CPU等からnビ
ット(この実施の形態では17ビット)の命令長を備え
た多数の命令コードが格納されている。そのメモリ1の
内部構成を図3に従って説明すると、同メモリ1は下位
ビット格納領域2と、上位ビット格納領域3とに分割さ
れている。
【0015】前記下位ビット格納領域2の各アドレスに
は、前記各命令コードの下位mビット(この実施の形態
では16ビット)I0000L〜I0010L等がそれ
ぞれ格納されている。
【0016】前記上位ビット格納領域3の各アドレスに
は、前記各命令コードの上位n−mビット(この実施の
形態では1ビット)が、(n−m)bit0〜(n−
m)bit15として、16ビットずつ格納されてい
る。すなわち、前記上位ビット格納領域3の各アドレス
には、16個の命令コードの各上位1ビットが格納され
ている。
【0017】図2に示す演算器4は、前記メモリ1に格
納されている命令コードを読み出すために、16ビット
のアドレス信号IA15:0を出力する。前記アドレス
信号IA15:0のうち、上位12ビットの信号IA1
5:4は、上位アドレス保持回路5及び比較器6に入力
される。
【0018】前記上位アドレス保持回路5は、入力され
た信号IA15:4を保持して、前記比較器6に上位ア
ドレス信号UAとして出力する。なお、この上位アドレ
ス保持回路5は、この演算装置の起動時等にLレベルの
リセット信号RSTXが入力されると、保持信号が11
1h(hは16進コードを示す。以下同じ)にリセット
されるようになっている。
【0019】前記比較器6は、演算器4から入力された
信号IA15:4と、上位アドレス保持回路5から出力
される信号IA15:4とを比較し、一致する場合には
Hレベルの出力信号hitを出力し、不一致の場合に
は、Lレベルの出力信号hitを出力する。
【0020】前記比較器6の出力信号hitは、上位ア
ドレス保持回路5に入力され、上位アドレス保持回路5
はLレベルの出力信号hitが入力されると、入力され
ている、上位12ビットの信号IA15:4を保持す
る。
【0021】前記演算器4から出力されるアドレス信号
IA15:0は、第一のセレクタ7に入力される。ま
た、前記演算器4から出力されるアドレス信号IA1
5:0は、オフセット回路8に入力される。前記オフセ
ット回路8は、下位ビット格納領域2の各アドレスに対
応する上位ビット格納領域3内の各アドレスを生成する
ためのものである。
【0022】そして、図3に示すように、例えば演算器
4から出力されるアドレス信号IA15:0が0000
hであるとき、オフセット回路8は上位n−mビットの
命令コードが格納されているアドレス範囲を示すオフセ
ット値を000hに加算して、0000hに下位mビッ
トが格納されている命令コードの上位n−mビットが格
納されているアドレス信号を生成する。
【0023】同様に、アドレス信号IA15:0が00
10hであるとき、オフセット回路8は上位n−mビッ
トの命令コードが格納されているアドレス範囲を示すオ
フセット値を001hに加算して、0010hに下位m
ビットが格納されている命令コードの上位n−mビット
が格納されているアドレス信号を生成する。
【0024】前記第一のセレクタ7には、前記比較器6
の出力信号hitが入力される。そして、第一のセレク
タ7は、比較器6の出力信号hitがHレベルである
と、演算器4から入力されるアドレス信号IA15:0
を前記メモリ1にアドレス信号ADとして出力する。ま
た、比較器6の出力信号hitがLレベルであると、オ
フセット回路8から出力されるアドレス信号を前記メモ
リ1にアドレス信号ADとして出力する。
【0025】前記メモリ1は、前記第一のセレクタ7か
らアドレス信号IA15:0が入力されると、下位ビッ
ト格納領域2から当該アドレス信号に対応する命令コー
ドの下位ビットを読み出しデータROとして読み出し
て、前記演算器4に下位ビットデータID15:0とし
て出力する。
【0026】また、前記メモリ1は、前記第一のセレク
タ7からオフセット回路8で生成されたアドレス信号が
入力されると、当該アドレス信号に対応する命令コード
の16ビットの上位ビットデータ群を読み出しデータR
Oとして読み出して、バッファレジスタ9に出力する。
【0027】前記バッファレジスタ9には、前記比較器
6から出力信号hitが入力される。そして、出力信号
hitがHレベルとなると、バッファレジスタ9は前記
メモリ1から出力される命令コードの上位ビットデータ
群をラッチして、第二のセレクタ10に出力する。
【0028】前記第二のセレクタ10には、前記演算器
4から出力されるアドレス信号IA15:0のうち、下
位4ビットのアドレス信号IA3:0が入力される。そ
して、ラッチしている16ビットの上位ビットデータ群
の中から、アドレス信号IA3:0に基づいていずれか
の上位ビットデータを選択して、前記演算器4に上位ビ
ットデータID16として出力する。
【0029】前記比較器6の出力信号hitは前記演算
器4に待機信号WAITとして入力される。そして、待
機信号WAITがLレベルとなると、演算器4は待機状
態となって、同一のアドレス信号IA15:0を出力し
続けるようになっている。
【0030】次に、上記のように構成された演算装置の
動作を図4に従って説明する。前記演算器4、上位アド
レス保持回路5、メモリ1等は共通のクロック信号CL
Kに基づいて動作している例えばこの演算装置の起動時
に、Lレベルのリセット信号RSTXが入力されている
状態では、上位アドレス保持回路5には、111hのア
ドレスに初期化される。
【0031】次いで、リセット信号RSTXがHレベル
となってリセット動作が解除されると、演算器4からア
ドレス信号IA15:0として、まず0000hのアド
レス信号の出力が開始される。
【0032】すると、比較器6ではアドレス信号IA1
5:0の上位12ビットの信号IA15:4と、上位ア
ドレス保持回路5に格納されているアドレス信号111
hとを比較する。
【0033】この結果、比較結果は不一致となるため、
比較器6からLレベルの出力信号hitが出力される。
すると、待機信号WAITがLレベルとなって、演算器
4から出力されるアドレス信号IA15:0は0000
hに維持される。また、Lレベルの出力信号hitに基
づいて、第一のセレクタ7からメモリ1に出力されるア
ドレス信号ADは、オフセット回路8から出力されるア
ドレス信号、すなわちアドレス信号0000hに対応す
る上位ビット格納領域3内のアドレス信号(offse
t+000h)が入力される。
【0034】次いで、メモリ1からアドレス信号(of
fset+000h)に格納されている16ビットの上
位ビットデータ群が読み出され、Lレベルの出力信号h
itに基づいてその上位ビットデータ群がバッファレジ
スタ9に格納される。
【0035】そして、バッファレジスタ9に格納された
上位ビットデータ群の中からアドレス信号0000hの
下位3ビットの信号IA3:0に基づいて、第二のセレ
クタ10からn−m0ビットの信号が選択されて出力さ
れる。
【0036】この時、待機信号WAITはLレベルであ
るので、演算器4では第二のセレクタ10の出力信号を
上位ビットデータID16として認識することはなく、
メモリ1の読み出しデータROを下位ビットデータID
15:0として認識することもない。
【0037】次いで、比較器6の出力信号hitがLレ
ベルに維持されている状態で、クロック信号CLKが立
ちがると、上位アドレス保持回路5には演算器4から出
力されているアドレス信号0000hの上位12ビット
のアドレス信号000hが格納される。
【0038】すると、上位アドレス保持回路5の格納デ
ータと、演算器4から出力されているアドレス信号00
00hの上位12ビットのアドレス信号とが一致するた
め、比較器6の出力信号hitはHレベルとなる。
【0039】すると、第一のセレクタ7からメモリ1に
アドレス信号0000hが入力され、そのアドレス信号
に基づいてメモリ1から命令コードの下位ビットデータ
I0000Lが読み出され、その下位ビットデータI0
000Lが演算器4に16ビットの下位ビットデータI
D15:0として出力される。
【0040】また、比較器6の出力信号hitがHレベ
ルであるため、バッファレジスタ9の格納内容に変更は
ない。そして、演算器4から出力されているアドレス信
号0000hの下位4ビットIA3:0に基づいて、バ
ッファレジスタ9に格納されている上位ビットデータ群
の中から、下位ビットデータI0000Lに対応する上
位ビットデータn−mbit0が第二のセレクタ10に
より選択されて、演算器4に上位ビットデータID16
として出力される。
【0041】すると、演算器4では16ビットの下位ビ
ットデータID15:0と、1ビットの上位ビットデー
タID16とに基づいて、17ビットの命令コードが合
成される。
【0042】次いで、クロック信号CLKの立ち上がり
に基づいて、演算器4からアドレス信号IA15:0と
して、0001hが出力されると、上位12ビットのア
ドレス信号は一致するので、比較器6の出力信号hit
はHレベルに維持される。
【0043】すると、第一のセレクタ7からメモリ1に
アドレス信号0001hが入力され、そのアドレス信号
に基づいてメモリ1から命令コードの下位ビットデータ
I0001Lが読み出され、その下位ビットデータI0
001Lが演算器4に16ビットの下位ビットデータI
D15:0として出力される。
【0044】また、比較器6の出力信号hitがHレベ
ルであるため、バッファレジスタ9の格納内容に変更は
ない。そして、演算器4から出力されているアドレス信
号0001hの下位4ビットIA3:0に基づいて、バ
ッファレジスタ9に格納されている上位ビットデータの
中から、下位ビットデータI0001Lに対応する上位
ビットデータn−mbit1が第二のセレクタ10によ
り選択されて、演算器4に上位ビットデータID16と
して出力される。
【0045】すると、演算器4では16ビットの下位ビ
ットデータID15:0と、1ビットの上位ビットデー
タID16とに基づいて、17ビットの命令コードが合
成される。
【0046】そして、演算器4からアドレス信号000
fhが出力されるまで、このような動作が繰り返され
る。次いで、演算器4からアドレス信号IA15:0と
して、0010hが出力されると、上位アドレス保持回
路5に格納されている上位アドレス000hとは不一致
となるため、比較器6の出力信号hitはLレベルとな
る。
【0047】すると、第一のセレクタ7からメモリ1に
出力されるアドレス信号ADは、アドレス信号0010
hに対応する上位ビット格納領域3内のアドレス信号
(offset+001h)が入力される。
【0048】次いで、メモリ1からアドレス信号(of
fset+001h)に格納されている16ビットの上
位ビットデータ群が読み出され、Lレベルの出力信号h
itに基づいてその上位ビットデータ群がバッファレジ
スタ9に格納される。
【0049】そして、バッファレジスタ9に格納された
上位ビットデータ群の中からアドレス信号0010hの
下位3ビットの信号IA3:0に基づいて、第二のセレ
クタ10からn−mbit0の信号が選択されて出力さ
れる。
【0050】この時、待機信号WAITはLレベルであ
るので、演算器4では第二のセレクタ10の出力信号を
上位ビットデータID16として認識することはなく、
メモリ1の読み出しデータを下位ビットデータID1
5:0として認識することもない。
【0051】次いで、比較器6の出力信号hitがLレ
ベルに維持されている状態で、クロック信号CLKが立
ちがると、上位アドレス保持回路5には演算器4から出
力されているアドレス信号0010hの上位12ビット
のアドレス信号001hが格納される。
【0052】すると、上位アドレス保持回路5の格納デ
ータUAと、演算器4から出力されているアドレス信号
0010hの上位12ビットのアドレス信号とが一致す
るため、比較器6の出力信号hitは再びHレベルとな
る。
【0053】すると、第一のセレクタ7からメモリ1に
アドレス信号ADとして0010hが入力され、そのア
ドレス信号に基づいてメモリ1から命令コードの下位ビ
ットデータI0010Lが読み出され、その下位ビット
データI0010Lが演算器4に16ビットの下位ビッ
トデータID15:0として出力される。
【0054】また、比較器6の出力信号hitがHレベ
ルであるため、バッファレジスタ9の格納内容に変更は
ない。そして、演算器4から出力されているアドレス信
号0010hの下位4ビットIA3:0に基づいて、バ
ッファレジスタ9に格納されている上位ビットデータ群
の中から、下位ビットデータI0010Lに対応する上
位ビットデータn−mbit0が第二のセレクタ10に
より選択されて、演算器4に上位ビットデータID16
として出力される。
【0055】すると、演算器4では16ビットの下位ビ
ットデータID15:0と、1ビットの上位ビットデー
タID16とに基づいて、17ビットの命令コードが合
成される。
【0056】次いで、アドレス信号0011h〜001
fhが入力されると、上記と同様に下位ビット格納領域
2から読み出された16ビットの下位ビットデータID
15:0と、バッファレジスタ9から読み出された1ビ
ットの上位ビットデータID16に基づいて17ビット
の命令コードが合成される。
【0057】次いで、演算器4からアドレス信号IA1
5:0として、0020hが出力されると、上位アドレ
ス保持回路5に格納されている上位アドレス001hと
は不一致となるため、比較器6の出力信号hitはLレ
ベルとなる。
【0058】すると、バッファレジスタ9の格納データ
UAの書き換えが行われ、つづいて上記と同様な動作が
繰り返される。そして、演算器4は合成された命令コー
ドに基づいて、各命令コードに対応した所定の演算動作
を行う。
【0059】上記のように構成された演算装置では、次
に示す作用効果を得ることができる。 (1)1バイトの整数倍以外の命令長を備えた17ビッ
トの命令コードを、1バイトの整数倍である16ビット
の下位ビットと、1ビットの上位ビットとに分割し、下
位ビットを下位ビット格納領域2に格納し、上位ビット
を上位ビット格納領域3に連続して格納した。従って、
1バイトの整数倍以外の命令長を備えた命令コードを空
き領域を発生させることなくメモリに格納することがで
きるので、メモリの容量を削減することができる。
【0060】(2)クロック信号CLKの17サイクル
中の1サイクルを除いて、各サイクルにおいて17ビッ
トの命令コードを読み出すことができるので、メモリ1
から演算器4への命令コードの転送速度を高速化するこ
とができる。
【0061】(3)1バイトの整数倍以外の命令長を備
えた命令コードを、1バイトの整数倍のビット長を備え
たメモリに空き領域を発生させることなく格納すること
ができる。従って、メモリ1に汎用メモリを使用するこ
とができるので、演算装置のコストを低減することがで
きる。 (第二の実施の形態)図5は、この発明を具体化した第
二の実施の形態を示す。この実施の形態のメモリ11は
デュアルポートメモリで構成される。そして、前記第一
の実施の形態と同様に、1バイトの整数倍以外の命令長
を備えた命令コードのうち、1バイトの整数倍の下位ビ
ットが下位ビット格納領域12に格納され、残りの上位
ビットが上位ビット格納領域13に空き領域を発生させ
ることなく格納される。
【0062】演算器4から出力されるアドレス信号IA
は、制御回路14に入力される。前記制御回路14は、
そのアドレス信号IAを下位ビット格納領域12に出力
するとともに、前記第一の実施の形態のオフセット回路
8から出力されるアドレス信号と同様なアドレス信号を
上位ビット格納領域13に並行して出力する。
【0063】そして、下位ビット格納領域12から読み
出された下位ビットデータは演算器4に出力され、上位
ビット格納領域13から読み出された上位ビットデータ
は、セレクタ15に入力される。
【0064】前記セレクタ15は、前記制御回路14か
ら出力される下位アドレス信号に基づいて、前記第一の
実施の形態の第二のセレクタ10と同様な動作を行い、
下位ビット格納領域12から読み出された下位ビットデ
ータに対応する上位ビットデータを選択して演算器4に
出力する。
【0065】演算器4は、入力された下位ビットデータ
及び上位ビットデータに基づいて、命令コードを合成
し、その命令コードに基づいて演算動作を行う。上記の
ように構成された演算装置では、前記第一の実施の形態
で得られた(1)(3)と同様な作用効果を得ることが
できる。また、メモリ11にデュアルポートメモリを使
用したことにより、下位ビット格納領域12と、上位ビ
ット格納領域13とに並列にアクセスすることができる
ので、クロック信号のすべてのサイクルで、命令コード
の読み出し動作を行うことができる。従って、メモリか
ら演算器への命令コードの転送速度を更に高速化するこ
とができる。 (第三の実施の形態)図6は、第三の実施の形態を示
す。この実施の形態は、第二の実施の形態のデュアルポ
ートメモリで構成されたメモリ11に代えて、二つのシ
ングルポートメモリで構成される第一及び第二のメモリ
16,17を使用したものである。
【0066】そして、第一のメモリ16は下位ビット格
納領域として、命令コードの下位ビットが格納され、第
二のメモリ17は上位ビット格納領域として、命令コー
ドの上位ビットが格納される。その他の構成は前記第二
の実施の形態と同様である。
【0067】このような構成により、第二の実施の形態
と同様な作用効果を得ることができる。上記各実施の形
態は、次のように変更してもよい。・命令コードは、1
7ビット以外の任意のビット数でもよい。・上位ビット
データと、下位ビットデータは、1ビットと16ビット
以外のビット数で分割してもよい。・メモリは、16ビ
ット以外の8ビットあるいは24ビット等のデータ幅と
してもよい。
【0068】
【発明の効果】以上詳述したように、この発明は命令コ
ードをメモリ領域に効率よく格納可能とするとともに、
格納された命令コードの転送サイクルの削減を図り得る
演算装置を提供することができる。
【図面の簡単な説明】
【図1】 本発明の原理説明図である。
【図2】 第一の実施の形態を示すブロック図である。
【図3】 メモリの内部を示す説明図である。
【図4】 第一の実施の形態の動作を示すタイミング波
形図である。
【図5】 第二の実施の形態を示すブロック図である。
【図6】 第三の実施の形態を示すブロック図である。
【符号の説明】
1 メモリ 2 下位ビット格納領域 3 上位ビット格納領域 4 演算器 20 命令コード生成部 IA アドレス信号
───────────────────────────────────────────────────── フロントページの続き (72)発明者 竹重 昌之 愛知県春日井市高蔵寺町二丁目1844番2 富士通ヴィエルエスアイ株式会社内 (72)発明者 日比野 純孝 愛知県春日井市高蔵寺町二丁目1844番2 富士通ヴィエルエスアイ株式会社内 (72)発明者 磯邊 勇人 愛知県春日井市高蔵寺町二丁目1844番2 富士通ヴィエルエスアイ株式会社内 (72)発明者 宮崎 順吏 愛知県春日井市高蔵寺町二丁目1844番2 富士通ヴィエルエスアイ株式会社内 (72)発明者 大原 邦裕 愛知県春日井市高蔵寺町二丁目1844番2 富士通ヴィエルエスアイ株式会社内 (72)発明者 谷口 和也 愛知県春日井市高蔵寺町二丁目1844番2 富士通ヴィエルエスアイ株式会社内 (72)発明者 成富 裕志 愛知県春日井市高蔵寺町二丁目1844番2 富士通ヴィエルエスアイ株式会社内 Fターム(参考) 5B033 AA06 DB02 DB11 DB12 5B060 AA03 AA20 AC01 MM04

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 1バイトの整数倍以外の命令長を備えた
    命令コードをメモリから読み出して、演算動作を行う演
    算装置であって、 前記命令コードのうち1バイトの整数倍の下位ビットを
    格納する下位ビット格納領域と、前記下位ビット以外の
    上位ビットを空き領域を設けることなく連続して格納す
    る上位ビット格納領域とを備えたメモリと、 入力されるアドレス信号に基づいて、前記メモリから前
    記命令コードの下位ビットと上位ビットとを同一サイク
    ルで読み出す命令コード生成部と、 前記命令コード生成部に前記アドレス信号を出力すると
    ともに、前記命令コード生成部から出力される命令コー
    ドに基づいて演算動作を行う演算器とを備えたことを特
    徴とする演算装置。
  2. 【請求項2】 前記命令コード生成部は、 入力されるアドレス信号に基づいて、前記上位ビット格
    納領域から前記命令コードの上位ビットを読み出すため
    の上位アドレス信号と、前記下位ビット格納領域から前
    記命令コードの下位ビットを読み出すための下位アドレ
    ス信号とを生成して、前記メモリに出力するアドレス信
    号生成部とを備えたことを特徴とする請求項1記載の演
    算装置。
  3. 【請求項3】 前記命令コード生成部は、 前記上位アドレス信号に基づいて前記メモリから読み出
    した前記命令コードの上位ビットデータ群を格納するバ
    ッファレジスタと、 前記上位ビットデータ群の中から前記アドレス信号に対
    応する上位ビットデータを前記下位ビット格納領域から
    の下位ビットデータの読み出しサイクルと同一サイクル
    で読み出すセレクタとを備えたことを特徴とする請求項
    2記載の演算装置。
  4. 【請求項4】 前記命令コード生成部は、入力されるア
    ドレス信号の上位アドレスに基づいて、前記バッファレ
    ジスタに格納する上位ビットデータ群を書き換えること
    を特徴とする請求項3記載の演算装置。
  5. 【請求項5】 前記命令コード生成部は、 前記アドレス信号の上位アドレスと、上位アドレス保持
    回路に格納されている上位アドレスとを比較して一致信
    号または不一致信号を出力する比較器と、 前記比較信号の不一致信号に基づいて、前記アドレス信
    号の上位アドレスを保持する上位アドレス保持回路と、 前記不一致信号に基づいて、前記上位アドレス信号を前
    記メモリに出力するとともに、前記一致信号に基づい
    て、前記下位アドレス信号を前記メモリに出力するアド
    レス信号切替え回路と、 前記不一致信号に基づいて、前記メモリから出力される
    上位ビットデータ群を格納するバッファレジスタとを備
    えたことを特徴とする請求項4記載の演算装置。
  6. 【請求項6】 前記メモリは、前記上位アドレス信号と
    下位アドレス信号を並列に入力可能としたデュアルポー
    トメモリで構成したことを特徴とする請求項2記載の演
    算装置。
  7. 【請求項7】 前記メモリは、 前記下位ビット格納領域として使用する第一のシングル
    ポートメモリと、 前記上位ビット格納領域として使用する第二のシングル
    ポートメモリとから構成し、 前記第一のシングルポートメモリと、前記第二のシング
    ルポートメモリとに、前記上位アドレス信号と下位アド
    レス信号を並列に入力可能としたことを特徴とする請求
    項2記載の演算装置。
  8. 【請求項8】 1バイトの整数倍以外の命令長を備えた
    命令コードをメモリから読み出して、演算動作を行う演
    算装置であって、 前記メモリは、 前記命令コードのうち1バイトの整数倍の下位ビットを
    格納する下位ビット格納領域と、 前記下位ビット以外の上位ビットを空き領域を設けるこ
    となく連続して格納する上位ビット格納領域とを備えた
    ことを特徴とする演算装置。
  9. 【請求項9】 命令コードのうち1バイトの整数倍の下
    位ビットをメモリの下位ビット格納領域に格納し、前記
    下位ビット以外の上位ビットを、メモリの上位ビット格
    納領域に空き領域を設けることなく連続して格納し、入
    力されるアドレス信号に基づいて、前記メモリから前記
    命令コードの下位ビットと上位ビットとを同一サイクル
    で読み出して命令コードを生成し、該命令コードに基づ
    いて演算動作を行うことを特徴とする演算方法。
JP2000248431A 2000-08-18 2000-08-18 演算装置及び演算方法 Expired - Fee Related JP4629198B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000248431A JP4629198B2 (ja) 2000-08-18 2000-08-18 演算装置及び演算方法
US09/768,363 US6502179B2 (en) 2000-08-18 2001-01-25 Method and apparatus for compactly storing instruction codes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000248431A JP4629198B2 (ja) 2000-08-18 2000-08-18 演算装置及び演算方法

Publications (2)

Publication Number Publication Date
JP2002063070A true JP2002063070A (ja) 2002-02-28
JP4629198B2 JP4629198B2 (ja) 2011-02-09

Family

ID=18738340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000248431A Expired - Fee Related JP4629198B2 (ja) 2000-08-18 2000-08-18 演算装置及び演算方法

Country Status (2)

Country Link
US (1) US6502179B2 (ja)
JP (1) JP4629198B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009116115A1 (ja) * 2008-03-18 2009-09-24 富士通株式会社 メモリコントローラ及びそれを使用したメモリシステム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8345167B2 (en) * 2006-03-20 2013-01-01 Mediatek Inc. Methods of storing and accessing pictures

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5680885A (en) * 1979-12-03 1981-07-02 Hitachi Ltd Data output control system of memory used for reading
JPS5727476A (en) * 1980-07-23 1982-02-13 Fujitsu Ltd Storage device
JPS5798059A (en) * 1980-12-12 1982-06-18 Nec Corp Information processing device
JPS59187850A (ja) * 1983-04-11 1984-10-25 早川ゴム株式会社 積層ゴム板の成形方法
JPS59206968A (ja) * 1983-05-11 1984-11-22 Hitachi Ltd Eprom搭載型マイクロコンピユ−タ
JPS61250751A (ja) * 1985-04-30 1986-11-07 Matsushita Electric Ind Co Ltd 情報処理装置
JPH0440529A (ja) * 1990-06-06 1992-02-10 Matsushita Electric Ind Co Ltd リアルタイム処理装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1174370A (en) * 1980-05-19 1984-09-11 Hidekazu Matsumoto Data processing unit with pipelined operands
JPS59187850U (ja) * 1983-05-30 1984-12-13 株式会社日立製作所 記憶回路アドレス装置
US5870576A (en) * 1996-12-16 1999-02-09 Hewlett-Packard Company Method and apparatus for storing and expanding variable-length program instructions upon detection of a miss condition within an instruction cache containing pointers to compressed instructions for wide instruction word processor architectures
JP3766188B2 (ja) * 1997-08-22 2006-04-12 沖電気工業株式会社 論理フォーマット変換方法およびデータ保存媒体
EP0945784A1 (en) * 1998-03-27 1999-09-29 Motorola, Inc. Method for storing data structures in memory using address pointers, and apparatus

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5680885A (en) * 1979-12-03 1981-07-02 Hitachi Ltd Data output control system of memory used for reading
JPS5727476A (en) * 1980-07-23 1982-02-13 Fujitsu Ltd Storage device
JPS5798059A (en) * 1980-12-12 1982-06-18 Nec Corp Information processing device
JPS59187850A (ja) * 1983-04-11 1984-10-25 早川ゴム株式会社 積層ゴム板の成形方法
JPS59206968A (ja) * 1983-05-11 1984-11-22 Hitachi Ltd Eprom搭載型マイクロコンピユ−タ
JPS61250751A (ja) * 1985-04-30 1986-11-07 Matsushita Electric Ind Co Ltd 情報処理装置
JPH0440529A (ja) * 1990-06-06 1992-02-10 Matsushita Electric Ind Co Ltd リアルタイム処理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009116115A1 (ja) * 2008-03-18 2009-09-24 富士通株式会社 メモリコントローラ及びそれを使用したメモリシステム
JP5035412B2 (ja) * 2008-03-18 2012-09-26 富士通株式会社 メモリコントローラ及びそれを使用したメモリシステム
US8436865B2 (en) 2008-03-18 2013-05-07 Fujitsu Limited Memory controller and memory system using the same

Also Published As

Publication number Publication date
US20020023205A1 (en) 2002-02-21
US6502179B2 (en) 2002-12-31
JP4629198B2 (ja) 2011-02-09

Similar Documents

Publication Publication Date Title
US3675211A (en) Data compaction using modified variable-length coding
JP2538067B2 (ja) 条件書き込み手段を有するランダム・アクセス・メモリ回路
US7421563B2 (en) Hashing and serial decoding techniques
US4800535A (en) Interleaved memory addressing system and method using a parity signal
US6308249B1 (en) Storing data in a grey code system
US5014188A (en) Cache memory controllor associated with microprocessor
US5815460A (en) Memory circuit sequentially accessible by arbitrary address
JP2002063070A (ja) 演算装置及び演算方法
US7702860B2 (en) Memory access apparatus
JPH0795269B2 (ja) 命令コードのデコード装置
CN100375065C (zh) 产生预测地址值的电路和方法
JP3102754B2 (ja) 情報利用回路
CN114072776B (zh) 小面积高速缓冲存储器
KR20040007343A (ko) 캐시 메모리 및 그 제어 방법
JP3901340B2 (ja) データ一致検出装置
KR100257750B1 (ko) 메모리 겸용 캐시
KR200182184Y1 (ko) 메모리 겸용 캐시
JP2740359B2 (ja) 表示制御装置
JPH0212358A (ja) データ転送方式
KR960704270A (ko) 라이트 히트후 지연없는 저전력, 고성능, 온칩 캐쉬(low power, high performance, on-chip cache with no stall after a write hit)
EP1416373A2 (en) Method and apparatus to reduce access time in synchronous fifos with zero latency overhead
JPH07105171A (ja) データ処理装置
JP2757716B2 (ja) ハフマン符号復号回路
KR950003884B1 (ko) 퍼스컴 버스 인터페이스 회로
JPS59146493A (ja) 連想記憶装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20050830

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070808

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101012

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101109

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees