JP2002116951A - アドレス生成回路 - Google Patents

アドレス生成回路

Info

Publication number
JP2002116951A
JP2002116951A JP2000310415A JP2000310415A JP2002116951A JP 2002116951 A JP2002116951 A JP 2002116951A JP 2000310415 A JP2000310415 A JP 2000310415A JP 2000310415 A JP2000310415 A JP 2000310415A JP 2002116951 A JP2002116951 A JP 2002116951A
Authority
JP
Japan
Prior art keywords
address
pointer
address pointer
cycle
value
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
JP2000310415A
Other languages
English (en)
Inventor
Kiyoshi Matsui
清 松井
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2000310415A priority Critical patent/JP2002116951A/ja
Publication of JP2002116951A publication Critical patent/JP2002116951A/ja
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Memory System (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【課題】 アドレス演算前と演算後の両方のアドレスで
データメモリをアクセスすることで効率的なデータメモ
リアクセスを実現し、高速な処理が可能な消費電力の少
ないアドレス生成回路を実現する。 【解決手段】 データメモリのアドレスを格納するアド
レスポインタ4と、アドレスポインタのアドレスを更新
するアドレス演算器11と、アドレスポインタの出力を
格納する代用アドレスポインタ5と、アドレスポインタ
と代用アドレスポインタの読出しアドレスの書込み及び
アドレス演算器の動作を制御する制御回路12を備え、
アドレス更新後のアドレスでアクセスする場合はアドレ
スポインタの値を出力し、更新前のアドレスでアクセス
する場合はアドレスポインタの値を代用アドレスポイン
タに格納した上で代用アドレスポインタの値を出力す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、アドレスポインタ
とアドレス演算器を備えたアドレス生成回路に関するも
のである。
【0002】
【従来の技術】近年、LSI技術の進展に伴い高性能な
ディジタル信号プロセッサが実現可能となり、複雑なデ
ータ処理を実行できるようになっている。特に、携帯電
話や画像等の応用分野では大量のデータ処理を行うた
め、データメモリを効率よくアクセスする必要から、高
速かつ複雑なアドレス生成が必要で、消費電力の低減も
必要とされている。
【0003】アドレス生成回路の一例として、データメ
モリのアドレスを格納するアドレスポインタと、前記ア
ドレスポインタのアドレスをアドレス加算値との演算に
より更新するアドレス演算器を有し、アドレスポインタ
をアドレス演算器によりアドレスを更新し、アドレスポ
インタに格納する。データメモリのアクセスはアドレス
ポインタに格納されたアドレスで行うというものであっ
た。
【0004】
【発明が解決しようとする課題】データメモリをアクセ
スする場合、命令をデコードし、アドレス演算後のアド
レスでアクセスする場合と命令をデコードしアドレス演
算前のアドレスでアクセスし次のアクセスに備えてアド
レス演算をする場合がある。
【0005】命令をデコードし、次のサイクルでアドレ
ス演算を行い演算後のアドレスでアクセスを行う回路構
成の場合は、命令をデコードし、さらにアドレスを演算
した後にアドレスを出力するため、アドレスを出力する
まで2サイクルかかり、高速な動作が不可能となる。
【0006】また、1つのサイクルで命令をデコード
し、さらにアドレス演算を行い、次のサイクルで演算後
のアドレスでアクセスを行う回路構成の場合は、演算前
のアドレスでアクセスを行うことは不可能であり、また
命令のデコードとアドレス演算を同じサイクルで行うた
め命令デコード処理の遅延のためアドレス加算値が常に
変化し、またアドレス演算を必要としない命令の場合で
もアドレス演算器が動作するため、消費電力が大きくな
るという課題があった。
【0007】本発明の目的は、アドレスポインタとアド
レス演算器とを備えたアドレス生成回路の高速動作と消
費電力を低減させることにある。
【0008】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、アドレスポインタの出力を格納する代用
アドレスポインタを設け、アドレスポインタ及び代用ア
ドレスポインタの読み出し、書き込み及びアドレス演算
器を制御するための制御回路により、1サイクルで命令
デコードとアドレス演算を行う場合、アドレス演算後の
アドレスでアクセスする時はアドレス演算後に次のサイ
クルでアドレスポインタからアドレスを出力する。
【0009】アドレス演算前のアドレスでアクセスする
時は、アドレス演算すると同時にアドレスポインタの値
を代用アドレスポインタに格納し、次のサイクルで代用
アドレスポインタからアドレスを出力する。
【0010】また、1サイクルで命令デコードを行い、
次の1サイクルでアドレス演算を行う場合、アドレス演
算前のアドレスでアクセスする時は、1サイクルで命令
デコードし、次のサイクルでアドレス演算すると同時に
アドレスポインタからアドレスを出力する。
【0011】また、アドレス演算後のアドレスでアクセ
スする時は、1サイクルで命令デコードし、次のサイク
ルでアドレス演算し、次のサイクルでアドレスポインタ
からアドレスを出力する。
【0012】以上のように制御することで、アドレス演
算前及び演算後のアドレスでのアドレッシングを高速ア
ドレッシングと消費電力の少ないアドレッシングで行う
ことを可能とする。
【0013】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を参照しながら説明する。図1は、本発明の一
実施の形態に係るアドレス生成回路の構成例を示してい
る。図1の回路は、与えられた命令INSTを順次実行
することによりアドレス生成を進めていくアドレス生成
回路であって、フリップフロップで構成したアドレスを
格納するためのアドレスポインタ4と、第2入力セレク
タ3を通してアドレスポインタ4の出力を格納する代用
アドレスポインタ5、前記2個のアドレスポインタから
1つを選択しアドレス出力バス7に出力する出力セレク
タ6を有し、アドレス出力バス7はメモリアクセスのた
めデータメモリに接続されている。
【0014】アドレス演算器11は加減算等のアドレス
演算器で、アドレスポインタ4の値と制御回路12から
出力され、アドレス演算器入力セレクタ10を通ったア
ドレス加算値を演算する。演算結果は第1入力セレクタ
2で選択し、元のアドレスポインタ4に格納する。
【0015】また、第2入力セレクタ3で選択し、代用
アドレスポインタ5に格納することもできる。アドレス
生成回路外からアドレスポインタ4を設定するには、第
1入力セレクタ2はプロセッサバス1を選択すること
で、アドレスポインタ4に格納する。
【0016】制御回路12は与えられた命令INSTを
デコード回路13でデコードし、アドレッシング動作モ
ードフラグ14の値により、アドレス生成回路の制御信
号を出力する。制御信号には第1入力セレクタ2と第2
入力セレクタ3と出力セレクタ6とアドレス演算器入力
セレクタ10の選択信号と2種類のアドレス加算値を出
力する。
【0017】アドレス加算値8は1サイクルで命令デコ
ードとアドレス演算を行う場合のアドレス加算値で、ア
ドレス加算値9は1サイクルで命令デコードを行い次の
1サイクルでアドレス演算を行う場合のアドレス加算値
である。また、制御回路12は、与えられた命令INS
Tにより、アドレッシング動作モードフラグ14の値を
設定することができる。
【0018】図2、図3、図4は図1のアドレス生成回
路のタイミングチャートで、図2は1サイクルで命令デ
コードとアドレス演算を行う場合のタイミングチャー
ト、図3は1サイクルで命令をデコードし、次のサイク
ルでアドレス演算を行い演算前のアドレスでアクセスを
行う場合のタイミングチャート、図4は1サイクルで命
令をデコードし、次のサイクルでアドレス演算を行い、
演算後のアドレスでアクセスを行う場合のタイミングチ
ャートである。
【0019】図2は1サイクルで命令デコードとアドレ
ス演算を行う場合のタイミングチャートで、データメモ
リをアクセスする3サイクルを示している。サイクルT
1でデコードとアドレス演算を行い、サイクルT2でア
ドレスを出力しデータメモリ部でアドレスデコードを行
い、サイクルT3でメモリにアクセスする。
【0020】このタイミングチャートに従って図1のア
ドレス生成回路の動作を説明すると、演算後のアドレス
でアクセスを行う場合は、1サイクル目のT1で制御回
路12により命令デコードを行い、アドレス加算値8を
出力し、アドレス演算器入力セレクタ10で選択し、ア
ドレス演算器11に入力し、アドレスポインタ4との演
算を行う。
【0021】演算結果はサイクルT2のクロックの立ち
上がりでアドレスポインタ4に格納され、出力セレクタ
6でアドレスポインタ4を選択することで、アドレス出
力バス7に演算後のアドレスを出力し、データメモリで
アドレスデコードを行い、サイクルT3でメモリにアク
セスする。
【0022】演算前のアドレスでアクセスを行う場合
は、サイクルT1でアドレスポインタ4の値を第2入力
セレクタ3で選択し、サイクルT2のクロックの立ち上
がりで代用アドレスポインタ5に格納する。サイクルT
2では、出力セレクタ6で代用アドレスポインタ5を選
択し、アドレス出力バス7に演算前のアドレスを出力す
る。
【0023】以上のようにアドレスポインタ4の値を格
納する代用アドレスポインタ5を設けることで、1サイ
クルで命令デコードとアドレス演算を行う場合に演算前
と演算後の両方のアドレスでデータメモリをアクセスす
ることが可能となる。
【0024】ただ、この動作では、サイクルT1の間デ
コードの遅延によりアドレス加算値8の値が確定するま
で不要な値を出力するため、アドレス演算器11が無駄
な動きをし、消費電力が大きくなる。
【0025】図3は1サイクルで命令デコードを行い、
次の1サイクルでアドレス演算を行い、演算前のアドレ
スでアクセスを行う場合のタイミングチャートで、デー
タメモリをアクセスする3サイクルを示している。
【0026】サイクルT1でデコードを行い、サイクル
T2でアドレス演算を行うと共にアドレスを出力し、デ
ータメモリ部でアドレスデコードを行い、サイクルT3
でメモリにアクセスする。
【0027】このタイミングチャートに従って図1のア
ドレス生成回路の動作を説明すると、1サイクル目のT
1では制御回路12で命令デコードを行い、次のサイク
ルT2では出力セレクタ6でアドレスポインタ4を選択
することでアドレス出力バス7に演算前のアドレスポイ
ンタ4のアドレスを出力する。
【0028】また、アドレス演算器11の動作はサイク
ルT1でデコードし、サイクルT2のクロックの立ち上
がりでアドレス加算値9を出力し、アドレス演算器入力
セレクタ10で選択し、アドレス演算器11に入力し、
アドレスポインタ4との演算を行う。演算結果はサイク
ルT3のクロックの立ち上がりでアドレスポインタ4に
格納される。
【0029】図4は1サイクルで命令デコードを行い、
次の1サイクルでアドレス演算を行い、演算後のアドレ
スでアクセスを行う場合のタイミングチャートで、デー
タメモリをアクセスする4サイクルを示している。
【0030】サイクルT1でデコードを行い、サイクル
T2でアドレス演算を行い、サイクルT3でアドレスを
出力し、データメモリ部でアドレスデコードを行い、サ
イクルT4でメモリにアクセスする。
【0031】このタイミングチャートに従って、図1の
アドレス生成回路の動作を説明すると、1サイクル目の
T1では制御回路12で命令デコードを行い、サイクル
T2のクロックの立ち上がりでアドレス加算値9を出力
し、アドレス演算器入力セレクタ10で選択し、アドレ
ス演算器11に入力し、アドレスポインタ4との演算を
行う。
【0032】演算結果はサイクルT3のクロックの立ち
上がりでアドレスポインタ4に格納される。次のサイク
ルT3では、出力セレクタ6でアドレスポインタ4を選
択することでアドレス出力バス7に演算後のアドレスポ
インタ4のアドレスを出力する。
【0033】以上のように1サイクルで命令デコードを
行い、次の1サイクルでアドレス演算を行う場合は演算
後のアドレスでのアクセス時、データメモリアクセスに
1サイクル多くかかり4サイクル必要になるが、アドレ
ス加算値9はデコード後にサイクルT2のクロックの立
ち上がりで確定した値を出力するため、アドレス演算器
11の無駄な動作を無くし、さらにアドレス更新を行わ
ない時に、アドレス加算値9を最後にアドレス演算した
値に保持してアドレス演算器11の無駄な動作を無くす
ことで消費電力の少ないアドレス生成を行うことが可能
となる。
【0034】また、アドレス演算後のアドレスでアクセ
スする場合、アドレス演算器11の出力をアドレスポイ
ンタ4に格納せず、代用アドレスポインタ5に格納し、
代用アドレスポインタ5のアドレスをアドレス出力バス
7に出力することで、アドレスを更新せずにアドレスポ
インタ4に格納した基準となるアドレスからの相対的な
アクセスを行うことが可能となる。
【0035】
【発明の効果】以上のように、本発明によれば、アドレ
ス演算前と演算後の両方のアドレスでデータメモリをア
クセスすることが可能となり、効率的なデータメモリア
クセスを実現すると同時に、1サイクルで命令デコード
とアドレス演算を行う高速なアドレス生成と2サイクル
で命令デコードとアドレス演算を行う消費電力の少ない
アドレス生成を行うことができるため、高速な処理が可
能な消費電力の少ないアドレス生成回路を実現すること
ができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態に係るアドレス生成回路
の構成例を示すブロック図
【図2】アドレス生成回路の1サイクルで命令デコード
とアドレス演算を行う場合の動作例を示すタイミングチ
ャート
【図3】アドレス生成回路の1サイクルで命令をデコー
ドし、次のサイクルでアドレス演算を行い演算前のアド
レスでアクセスを行う場合の動作例を示すタイミングチ
ャート
【図4】アドレス生成回路の1サイクルで命令をデコー
ドし、次のサイクルでアドレス演算を行い演算後のアド
レスでアクセスを行う場合の動作例を示すタイミングチ
ャート
【符号の説明】
1 プロセッサバス 2 第1入力セレクタ 3 第2入力セレクタ 4 アドレスポインタ 5 代用アドレスポインタ 6 出力セレクタ 7 アドレス出力バス 8 アドレス加算値(サイクルT1演算時) 9 アドレス加算値(サイクルT2演算時) 10 アドレス演算器入力セレクタ 11 アドレス演算器 12 制御回路 13 デコード回路 14 アドレッシング動作モードフラグ INST 命令

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】データメモリのアドレスを格納するための
    アドレスポインタと、前記アドレスポインタのアドレス
    を更新するためのアドレス演算器と、前記アドレスポイ
    ンタの出力を格納する代用アドレスポインタと、前記ア
    ドレスポインタ及び前記代用アドレスポインタの読み出
    しとアドレスの書き込み及びアドレス演算器の動作を制
    御するための制御回路を備えることを特徴とするアドレ
    ス生成回路。
  2. 【請求項2】前記制御回路はメモリにアクセスする場
    合、アドレスを更新した後のアドレスでアクセスする場
    合は前記アドレスポインタの値を出力し、更新する前の
    アドレスでアクセスする場合は前記アドレスポインタの
    値を前記代用アドレスポインタに格納した上で前記代用
    アドレスポインタの値を出力することで、更新する前の
    アドレスでも更新した後のアドレスでもアクセスするこ
    とを可能とすることを特徴とする請求項1記載のアドレ
    ス生成回路。
  3. 【請求項3】前記代用アドレスポインタの前にアドレス
    演算器の演算結果と前記アドレスポインタの出力を選択
    するセレクト回路を備え、前記制御回路は、アドレス更
    新時に前記アドレスポインタには格納せず、前記代用ア
    ドレスポインタのみに格納し、前記代用アドレスポイン
    タのアドレスでアクセスすることで、アドレスを更新せ
    ずに前記アドレスポインタに格納した基準となるアドレ
    スからの相対的なアクセスを可能とすることを特徴とす
    る請求項2記載のアドレス生成回路。
  4. 【請求項4】前記制御回路は、アドレス演算器の動作す
    るパイプラインのステージを切り替えることで高速なア
    ドレス生成と低速なアドレス生成を行うことを特徴とす
    る請求項2記載のアドレス生成回路。
  5. 【請求項5】前記制御回路は、低速なアドレス生成を行
    う場合には、アドレス更新を行わない時に、アドレス演
    算器の入力であるアドレス加算値を最後にアドレス演算
    した値に保持することを特徴とする請求項4記載のアド
    レス生成回路。
JP2000310415A 2000-10-11 2000-10-11 アドレス生成回路 Pending JP2002116951A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000310415A JP2002116951A (ja) 2000-10-11 2000-10-11 アドレス生成回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000310415A JP2002116951A (ja) 2000-10-11 2000-10-11 アドレス生成回路

Publications (1)

Publication Number Publication Date
JP2002116951A true JP2002116951A (ja) 2002-04-19

Family

ID=18790383

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000310415A Pending JP2002116951A (ja) 2000-10-11 2000-10-11 アドレス生成回路

Country Status (1)

Country Link
JP (1) JP2002116951A (ja)

Similar Documents

Publication Publication Date Title
JP2001092662A (ja) プロセッサコア及びこれを用いたプロセッサ
US5909588A (en) Processor architecture with divisional signal in instruction decode for parallel storing of variable bit-width results in separate memory locations
US7702860B2 (en) Memory access apparatus
JP3570287B2 (ja) マイクロコンピュータ
JP2002116951A (ja) アドレス生成回路
JPH1020959A (ja) 低消費電力マイクロプロセッサ
JP2001043084A (ja) プロセッサ装置
JP2001109657A (ja) アドレス生成回路
JP2001100991A (ja) ディジタル信号処理装置
JP2001142696A (ja) マイクロプロセッサにおける命令供給装置および命令供給方法
JP3531208B2 (ja) ディジタル信号処理装置
JP5263498B2 (ja) 信号処理プロセッサ及び半導体装置
JP3255429B2 (ja) メモリ・インタフェース回路
JP2003122628A (ja) デジタル信号処理装置、プログラム変換装置、及びデジタル信号処理装置を有する通信システム
JP2001092658A (ja) データ処理回路及びデータ処理装置
JPH1139282A (ja) データ処理装置
JP2869414B1 (ja) データ処理装置
JP2601055B2 (ja) マイクロプログラム・シーケンサ
JP2008003867A (ja) マイクロコンピュータ
JPH05250156A (ja) Riscプロセッサ
JP2007514244A (ja) 命令プリデコーダ付きダイレクトメモリアクセスユニット
JPH08161222A (ja) プロセッサ及びそのプログラム作成方法
JPH04333153A (ja) データ処理装置
JP2004206214A (ja) マイクロプロセッサ
JP2000267849A (ja) パイプライン・プロセッサ

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040629

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041026