JP2002366425A - アドレス変換回路を有するデータ処理装置 - Google Patents

アドレス変換回路を有するデータ処理装置

Info

Publication number
JP2002366425A
JP2002366425A JP2001168943A JP2001168943A JP2002366425A JP 2002366425 A JP2002366425 A JP 2002366425A JP 2001168943 A JP2001168943 A JP 2001168943A JP 2001168943 A JP2001168943 A JP 2001168943A JP 2002366425 A JP2002366425 A JP 2002366425A
Authority
JP
Japan
Prior art keywords
address
circuit
conversion
circuits
data processing
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
JP2001168943A
Other languages
English (en)
Inventor
Makoto Saen
真 左圓
Takashi Suzuki
敬 鈴木
Takashi 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 JP2001168943A priority Critical patent/JP2002366425A/ja
Priority to US10/083,346 priority patent/US6766436B2/en
Publication of JP2002366425A publication Critical patent/JP2002366425A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • G06F12/0692Multiconfiguration, e.g. local and global addressing
    • 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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0284Multiple user address space allocation, e.g. using different base addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】既に開発されたソフトウェアを持つ回路を含ん
だデータ処理装置において、それらを利用しようとする
際に開発済みのソフトウェアに多くの変更が生じ、ま
た、ソフトウェアの変更を少なくしようとすると回路規
模の増加が大きくなってしまうことである。 【解決手段】アドレス変換には、複数の領域に共通の規
則性を持った変換が可能な領域と、そうでない領域があ
る。アドレス変換回路をマスタ回路とスレーブ回路との
間に配置させる。また、元アドレスの1部を並べ替える
ことを含む操作で変換アドレスを生成する変換方式によ
って前者領域に対するアドレス変換を行い、元アドレス
の1部をあらかじめ記憶させておいた変換アドレス用情
報で置きかえて変換アドレスを生成するアドレス変換方
式によって後者領域に対するアドレス変換を行う。デー
タ処理装置は、以上の変換方式の双方を有するアドレス
変換回路を備える。 【効果】既存回路用に開発されたソフトウェアを最小限
の変更で動作させることができる。また、回路規模の増
加を最小限に抑えたデータ処理装置を実現できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はアドレス変換回路を
有するデータ処理装置に関するものである。
【0002】
【従来の技術】本発明が対象とするデータ処理装置とは
CPUやディジタルシグナルプロセッサ(DSP)などの演算
回路とSDRAMなどの記憶回路を含むLSIチップ、あるいは
複数のLSIチップで構成したボードなどである。本願明
細書においては、自らが他の回路に対してアクセス要求
を出す回路(CPU、DSP、あるいは、MPEGデコーダやグラ
フィックス処理回路といった画像情報を処理する回路な
ど)をマスタ回路とし、逆に、他の回路からのアクセス
要求をうけて処理を行う回路(メモリなど)をスレーブ
回路とする。
【0003】
【発明が解決しようとする課題】近年のデータ処理装置
においては、マスタ回路とスレーブ回路に加えて、マス
タ回路とスレーブ回路の間にアドレス変換回路を搭載す
る必要性が高まっている。主な理由は以下の2点であ
る。
【0004】まず第一に、データ処理装置が複数のマス
タ回路を持つようになってきたことに伴う理由である。
LSIの集積度の向上に支えられたアプリケーションの高
機能化にともなって、LSI上に集積される機能が増加、
すなわちマスタ回路の数が増加している。また、マスタ
回路はスレーブ回路を有しているため、何らの対策も講
じなければ、マスタ回路が複数になるのに伴って、スレ
ーブ回路の数も増加することになる。しかし、複数のマ
スタ回路を有するデータ処理装置においてはマスタ回路
同士は互いにデータを共有し、また、重複するスレーブ
回路を削減できればデータ処理装置全体のコストを削減
できるため、複数のマスタ回路にはスレーブ回路を共有
させている。しかし、例えばCPU、グラフィックス処理
回路等のマスタ回路はそれぞれ固有のアドレスマップを
持っている。ここでアドレスマップとは、それぞれのデ
ータをどのアドレスでアクセスするかというアドレスの
割り当てのことであり、それぞれのマスタ回路は固有の
アドレスマップを有しており、通常それらのアドレスマ
ップはマスタ回路毎に互いに異なるものである。したが
って、複数のマスタ回路を有するデータ処理装置を実現
するためにはソフトウェアを変更する必要が生ずる。し
かし、ソフトウエアの変更には多大な労力とコストがか
かるため、多少のソフトウエア変更はやむを得ないとし
ても、その変更はなるべく最小限度で留めることがプロ
グラマの労力の面でもコストの面でも得策である。した
がって、既に開発されたソフトウェアをより少ないプロ
グラム変更で使用可能とするため、アドレス変換回路を
用いることが有効である。アドレス変換回路はマスタ回
路とスレーブ回路との間に接続することで、マスタ回路
からスレーブ回路への要求に含まれるアドレスを変換す
る。例えば、CPU及びグラフィックス処理回路をマスタ
回路として有するデータ処理装置においては、マスタ回
路であるCPU及びグラフィックス処理回路の出力部にそ
れぞれアドレス変換回路が付加されることとなる。
【0005】第二に、既存のCPUなどのマスタ回路でそ
れ自身のアドレス空間より広いアドレス空間を必要とす
る処理を既存のマスタ回路を用いたデータ処理装置で行
いたいという要求に伴う理由である。具体的に言えば、
一世代前のCPUで規模の大きな最新のプログラムを実行
しようとする場合などが該当する。
【0006】上述のとおり、アドレス変換回路は異なる
アドレスマップを持つ回路間を接続し、入力した元アド
レスから変換アドレスを生成する回路である。
【0007】ここで、アドレス変換回路の回路規模が増
大することを厭わないのであれば、変換後のアドレスも
上位ビットを記憶する記憶手段をアドレス変換回路に持
たせるアドレス変換方法で上記要求を満たすことができ
る。すなわち、マスタ回路のアクセス時に上記記憶手段
に記憶した値と、変換前のアドレスの下位ビットとをつ
なげて変換アドレスとするアドレス変換方法である。
【0008】前記アドレス変換方法によれば、元アドレ
ス空間上のある領域を変換アドレス空間上の任意の位置
に配置でき、また、変換アドレス情報を更新することで
狭いアドレス空間から広いアドレス空間へのアクセスも
可能となる。
【0009】しかし、上記アドレス変換方法では、マス
タ回路がアドレス空間の異なる部分へアクセスする際に
アドレス情報記憶を設定してからアクセスを行わなけれ
ばならないため、既存回路に対して作られたソフトウェ
アに多くの変更が生じることとなる。また、変換アドレ
ス情報記憶を更新するために処理速度が低下してしまう
という欠点もある。
【0010】したがって、本願発明の課題は、複数のマ
スタ回路を有するデータ処理装置であって、上記複数の
マスタ回路は既に開発されたソフトウェアを持つ回路を
有し、上記複数のマスタ回路に共有される一つ又は複数
のスレーブ回路に加えて、上記複数のマスタ回路と上記
スレーブ回路との間にアドレス変換回路を搭載するデー
タ処理装置において、開発済みのソフトウェアの変更を
より少なくすることである。また、アドレス変換回路の
回路規模の増加を抑えることである。本発明の上述の目
的・課題と新規な特徴は本明細書の記述及び添付図面か
ら明らかになるであろう。
【0011】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば以下
の通りである。すなわち、他の回路に対してアクセス要
求を出す複数のマスタ回路と、マスタ回路からのアクセ
ス要求を受けて処理を行う1個以上のスレーブ回路と、
マスタ回路とスレーブ回路との間に配置され、マスタ回
路から出力される元アドレスをアドレス変換し、変換ア
ドレスとしてスレーブ回路に出力するアドレス変換回路
とを具備するデータ処理装置であって、上記アドレス変
換回路の個数は1個以上、上記マスタ回路の個数以下と
するデータ処理装置である。
【0012】上記代表的な発明においては、複数のマス
タ回路にスレーブ回路を共有させるデータ処理装置の場
合、マスタ回路毎にアドレスマップが異なっていたとし
ても、マスタ回路とスレーブ回路との間にアドレス変換
回路を有することにより、マスタ回路からスレーブ回路
への要求に含まれるアドレスをアドレス変換回路で変換
することができる。したがって、既に開発されたソフト
ウェアをより少ないプログラム変更で使用可能となる。
これはプログラマの労力の面でもソフトウェアの開発コ
ストの面でも非常に有利となる。
【0013】また、本願において開示される発明のうち
他の代表的なものの概要を簡単に説明すれば以下の通り
である。
【0014】上記本願において代表的なデータ処理装置
であって、変換アドレス記憶部をさらに有し、上記アド
レス変換回路は元アドレスに対して独立にアドレス変換
を行う複数のアドレス変換サブ回路と、上記アドレス変
換方式選択情報によってアドレス変換回路に含まれる複
数のアドレス変換サブ回路の変換結果から変換アドレス
を選択し出力する回路とを有し、上記アドレス変換回路
のうちの少なくとも1個は、上記マスタ回路からの元ア
ドレスに加え、アドレス変換方式選択情報と、上記変換
アドレス記憶部からの上記変換アドレス情報とを入力と
し、上記変換アドレスを上記スレーブ回路に出力する回
路であり、上記アドレス変換回路に含まれるアドレス変
換サブ回路のうちの少なくとも1個は、元アドレスの一
部を変換アドレス記憶部にあらかじめ記憶させておいた
変換アドレス情報で置きかえる方法で変換アドレスを生
成するアドレス変換方式を実現し、上記アドレス変換回
路に含まれるアドレス変換サブ回路のうちの少なくとも
1個は、元アドレスの1部を並べ替える操作を含む方法
で変換アドレスを生成するアドレス変換方式を実現する
データ処理装置である。上記データ処理装置において
は、元アドレスの一部をあらかじめ記憶させておいた値
で置きかえて変換アドレスを生成するアドレス変換方式
を実現する回路と、元アドレスの一部を並べ替える操作
を含む方法で変換アドレスを生成するアドレス変換方式
を実現する回路の双方を有するアドレス変換回路を組み
込んだデータ処理装置を構成することで、マスタ回路で
それ自身のアドレス空間より広いアドレス空間を必要と
する処理を既存のマスタ回路を用いたデータ処理装置で
行うことができ、2種類のアドレス変換方式を持つアド
レス変換回路を用いることで、変換後のアドレスも上位
ビットを記憶する記憶手段をアドレス変換回路に持たせ
るアドレス変換を行う必要がないので、処理速度の低下
を招くことなく、また、アドレス変換回路の回路規模の
増加をもおさえることができる。
【0015】
【発明の実施の形態】本発明実施例を図面に基づいて説
明する。図3は本発明の1つの実施形態である。
【0016】このデータ処理装置は、CPU300と、バス回
路308と、ソフトウェアのデバグ時に外部からの指定に
応じて要求を出すデバグ用回路304と、CPUを介さずデー
タの転送を行うためのダイレクト・メモリ・アクセス制
御回路(DMA回路)306と、外部メモリ制御回路302と、
フラッシュメモリ用制御回路303と、PCIバス制御回路30
5と、割り込み制御回路などその他周辺回路307を含むマ
イクロプロセッサチップ320と、SDRAMチップ321と、ROM
チップ322と、グラフィックス処理用回路チップ323を基
板上で接続したものである。マイクロプロセッサチップ
320内のCPU300とバス回路308の間に、アドレス変換回路
101を含むバスブリッジ回路600がある。本バスブリッジ
回路600は、バスAのプロトコルにしたがったインタフェ
ースを持つCPU300と、別のバスBのプロトコルに従うイ
ンタフェースを持つバス回路308間のプロトコル変換を
行う。バスブリッジ回路600から見た場合、CPU300がマ
スタ回路にあたり、バス回路308を介して接続された残
りの回路がスレーブ回路にあたる。マスタ回路であるCP
U300は29ビットアドレス106と、その他、命令の種類や
書きこみデータなどの情報620をバスブリッジ回路600を
介してスレーブ回路301に送信する。マイクロプロセッ
サチップ中のCPU300以外の回路は32ビットアドレスを持
つため、マスタ回路であるCPU300とスレーブ回路301の
間にアドレス変換回路101が必要となっている。
【0017】図4に沿ってバスブリッジ回路600の詳細
を記述する。バスブリッジ回路600中の要求受信回路602
は、CPU300が出力したアドレス106と、その他、命令の
種類や書きこみデータなどの情報620を受け取り、それ
ら入力に含まれるアドレスとアクセス先情報に応じて、
スレーブ回路301、または内蔵記憶回路602へのアクセス
要求を発生させる。要求受信回路601からのアクセス要
求が回路301へのものであった時、スレーブ回路301は求
められた処理を行った後、バスブリッジ回路600中の応
答送信回路601を介して回路300に求められた情報623を
返す。要求受信回路601からのアクセス要求が内蔵記憶
回路へのアクセスであった時、内蔵記憶回路603は求め
られた処理を行った後、応答送信回路601を介して回路3
00に求められた情報623を返す。
【0018】次に図5に示す要求受信回路602中のアド
レス変換回路101について述べる。これは、CPU300が出
力する元アドレス106の1部をあらかじめ記憶させておい
た変換アドレス情報A403で置きかえて変換アドレス107
を生成するアドレス変換方式Aを実現するアドレス変換
サブ回路A102と、元アドレス106の1部を並べ替えること
を含む操作で変換アドレス107を生成するアドレス変換
方式Bを実現するアドレス変換サブ回路B103と、元アド
レス106を変更せず不足分の上位ビットを固定値で埋め
たその他の方式によるアドレス変換サブ回路C104と、こ
れら3つの方式を切り替えるアドレス変換方式選択回路
105からなる。このアドレス変換回路101の詳細を図5に
示す。
【0019】本実施の形態のアドレス変換サブ回路A102
によるアドレス変換方式Aはあらかじめ変換アドレス記
憶部A401に設定した値で元アドレス106の上位ビットを
置きかえるものである(図6)。アドレス変換サブ回路
A102は元アドレス106と、変換アドレス記憶部A401から
の変換アドレス情報A403を入力とする。元アドレス106
の28ビットから26ビット(以降[28:26]と記述)に
応じて、8個の変換アドレス情報A403から1つを選択し、
それを変換アドレス107の上位ビット[31:26]とする。変
換アドレス107の[25:0]は元アドレスの[25:0]で与え
る。これによって、元アドレス空間上の64Mバイト空間
を、変換アドレス空間上の任意の領域に割り付けること
ができ(図7)、ソフトウェアの互換性を保つために役立
つ。また変換アドレス情報A403を書き換え可能にしてお
けば、この値を書きかえながらアクセスすることで元ア
ドレス空間からより広い変換アドレス空間をアクセスで
きる。
【0020】同じく図5において、回路103によるアド
レス変換方式Bは、元アドレス106の[28:0]と、変換アド
レス記憶部B400からの変換アドレス情報B402を入力と
し、変換アドレス107を出力する。アドレス変換サブ回
路B103は入力値によらず変換アドレス107の上位ビット
[31:24]として元アドレス中位ビット[23:16]を与え、変
換アドレス107の中位ビット[23:16]として8ビットの変
換アドレス情報B402を与え、変換アドレス107の下位ビ
ット[15:0]として元アドレス106の[15:0]を与える。こ
のようにアドレス変換サブ回路B103は元アドレスの中位
ビットを変換アドレスの上位ビットとして用いるという
並び替えを行い、その不足分を変換アドレス情報402
(M)で埋めることで変換アドレス107を生成する。これ
により、4Gバイトの変換アドレス空間を16Mバイト毎の2
56ブロックに分けたすべてのブロックの先頭からMバイ
ト目から64kバイトがアクセス可能になる。元アドレス
の中位ビット[23:16]がブロックの先頭アドレスを指
し、変換アドレス情報402(M)がそこからのオフセット
をあらわし、元アドレス下位ビット[15:0]がオフセット
からの距離である(図8)。アドレス変換方式B103による
変換によってある狭い領域から、広い領域に規則性をも
って広がる多数部分を簡単で規模も小さい回路でアクセ
スできる。個々のすべての領域が64kバイト以下の大き
さであれば、アクセスの度に変換アドレス情報B402を書
きかえる必要がないためソフトウェアの変更を小さくで
きる。
【0021】同じく図5のアドレス変換サブ回路C104
は、元アドレス106の上位を0で埋めただけのアドレス変
換を行う回路であり、変換アドレス107の[31:29]を0で
与え、変換アドレス107の[28:0]を元アドレスの[28:0]
で与える。本実施例では内蔵記憶回路アクセス用に使用
しているが、回路300用に設計された回路を直接接続す
る際にも必要である。
【0022】同じく図5のアドレス変換方式選択回路10
5は、元アドレス106の上位ビット[28:20]と、信号620に
含まれるアクセス先を表す信号から変換方式を決定す
る。つまり、アドレス変換方式選択情報404として、元
アドレスとアクセス先を表す信号が与えられる。アクセ
ス先としては外部メモリへのアクセスと制御レジスタへ
の2つを指しうる。外部メモリへのアクセス時には常に
アドレス変換方式Aによる変換アドレスを選択出力す
る。制御レジスタへのアクセス時には、アドレスの上位
ビット[28:24]が0x1C以下の場合、アドレス変換サブ回
路C104による変換アドレスを選択し、元アドレスの[28:
24]が0x1Fの時アドレス変換サブ回路B103による変換ア
ドレスを選択し、それ以外の時アドレス変換サブ回路A1
02による変換を選択する。
【0023】規則性を持った共通の変換が可能な複数の
領域に対してはアドレス変換方式Bが有効である。特に
それらの領域が小さい場合に効果が大きい。この時、従
来例のようにアクセスのたびにアドレス変換のための記
憶情報を更新するという処理が必要ないためソフトウェ
アの変更量が少なくて済む。さらに、ハードウェアコス
トも小さく回路規模の点でもメリットがある。一方、残
りの領域についてはアドレス変換方式Aを用いる。この
ように2つの変換方式を使い分ける本アドレス変換回路1
01は、課題であった既存の回路用に開発されたソフトウ
ェアが少ない変更量で動作し、且つ、小規模な回路で行
えるアドレス変換回路を含むデータ処理装置を実現に対
して有効である。
【0024】またバスブリッジ回路600は割り込み信号6
29を発生させるための割り込み信号生成回路604を持
つ。割り込み信号629は割り込み要因数分のビット数を
備える。本回路は内蔵記憶回路603中の割り込み要求606
からの信号628と、内蔵記憶回路603中の割り込みマスク
604からの信号627を入力とする。割り込み要求606に
は、バスA側での回路が出力した割り込み情報630と、バ
スB側での回路が出力した割り込み情報631が記憶され
る。もし、その割り込みに関してマスクビットがアサー
トされてなければ割り込み信号の対応するビットをアサ
ートする。この信号によってバスブリッジ600を介してC
PUの反対側でおこったエラーにも対処できる。
【0025】図1は上記実施形態のデータ処理装置を一
般化した図である。図中の実線はアドレスの流れを、破
線はアドレス以外の情報の流れを示している。本発明の
対象となるデータ処理装置は1つ以上のマスタ回路300(C
PU、DSP、グラフィックス処理用回路、バス制御回路な
ど)と、1つ以上のスレーブ回路301(メモリなど)と、1つ
以上のアドレス変換回路101を搭載している。データ処
理装置は本発明に含まれるアドレス変換回路101を持つ
ことで異なるアドレスマップをもつ回路を少ない工数で
組み込める。また、このアドレス変換回路による回路規
模の増加、実行時間の増加も比較的小さくできる。 (アドレス変換方式Aを実現する回路102のその他の実施
の形態)上記実施例においては元アドレスの上位ビット
によって変換アドレス記憶部11からの8個のアドレス変
換部分値から1つを選択し、それで変換アドレスの上位
ビットを置き換えているが、その他の実施の形態も考え
られる。以下図2に沿って示す。
【0026】まず、変換アドレス記憶部A401からの変換
アドレス情報A403で置き換える部分はアドレスのどの部
分でもよい、また、不連続な複数の部分であってもよ
い。
【0027】また、変換アドレス記憶部A401に記憶して
おく変換アドレス情報A403は複数個、1個でもよい。さ
らにこの値の選択はアドレスの1部以外の情報によって
選択してもよい。例えば、アドレス変換部分値を2個に
しておき、それらの選択をCPUのモードで行うなどがこ
れにあたる。その他の選択のための情報としては、変換
方式選択回路と同様にアクセス先、命令の種類をあらわ
す情報、専用の記憶装置を用意しその値によって選択す
るなどでもよい。
【0028】変換アドレス情報A403を与える変換アドレ
ス記憶部Bの実現方法は更新可能にするか不可能似する
のかで大きくわけられる。
【0029】変換アドレス情報B403を更新不可能な固定
値として与える場合、固定値を与える方法としては電源
線、グランドに直接接続する方法がある。この場合、製
造時に値が決まってしまうので汎用性はないが、回路規
模を小さくできるという利点がある。同様にこの変換ア
ドレス情報A403をROMで与えてもよい。
【0030】変換アドレス情報B402を更新可能にする場
合、変換アドレス情報をレジスタで記憶する方法と不揮
発性のメモリで記憶する方法がある。前者は、必要な値
をリセット時の値としておき、それ以外の値が必要にな
ったときにこの値を設定しなおしてからアクセスを行
う。ハードウェア製作後も値を変更でき汎用性が高い。
後者では前者と異なり一度設定した後は維持され、再設
定の必要がないという利点をもつ。元アドレス106に対
して変換アドレス107のアドレス空間が広くその差分を
このアドレス変換部分値であたえる時、アドレス変換部
分値を書き換え可能にしておくとアドレス変換部分値を
書きかえることで狭いアドレス空間から広いアドレス空
間の任意の部分をアクセスできる利点もある。 (アドレス変換方式Bを実現する回路103のその他の実施
の形態)上記実施例では図7で表されるアドレス変換の
為に、アドレス変換サブ回路B103を用いている。アドレ
ス変換方式Bのみを考えれば、ここでは図11に表される
膨張操作を行っていることになる。この時、アドレス変
換方法としては元アドレス106の一部を、変換アドレス1
07の更に上位ビットとして用いている。狭い限られたア
ドレス空間から、規則性をもって広く分布した空間にア
クセスできるようにしている。この変換によって分布し
た個々の領域が小さい時、変換アドレス情報402をアク
セスの度に更新する必要がないため、ソフトウェアの変
更量が少なく工数を削減できる。また回路規模も小さ
い。
【0031】アドレス変換方式Bに関するその他の実施
の形態として、図11に表される変換がある。アドレス
変換方式Bのみを考えれば、アドレス空間上に広く分布
していたアクセス領域を、アドレス空間の1部分に変換
する収縮操作を行っていることになる。この変換は、元
アドレス106の一部を、変換アドレス107の更に下位ビッ
トとして用いることで実現できる。これによって、上記
と同様に、変換アドレス情報402をアクセスの度に更新
する必要がないため、ソフトウェアを少ない変更量で利
用でき、実行速度も落ちない。また回路規模も小さい。
ここで定義するアドレス変換方式Bは、典型的な例とし
て挙げた図9乃至図12の他にもアドレス幅の異なる時
や、その他の元アドレス107の並べ替えを含むアドレス
変換のすべてを含む。
【0032】変換アドレス情報B402を与える変換アドレ
ス記憶部Bの実現方法は更新可能にするか不可能似する
のかで大きくわけられる。
【0033】変換アドレス情報B402を更新不可能な固定
値として与える場合、変換アドレス情報信号を、電源
線、グランドに直接接続し固定しておいても、ROMで与
えてもよい。これらの方法では汎用性はないがハードウ
ェアコストの増加を押さえられる。
【0034】変換アドレス情報B402を更新可能にする場
合、変換アドレス情報をレジスタで記憶する方法と不揮
発性のメモリで記憶する方法がある。前者は、必要な値
をリセット時の値としておき、それ以外の値が必要にな
ったときにこの値を設定しなおしてからアクセスを行
う。ハードウェア製作後も値を変更でき汎用性が高い。
後者では前者と異なり一度設定した後は維持され、再設
定の必要がないという利点をもつ。(変換方式選択回路
105のその他の実施の形態)上記実施例では、元アドレ
ス106の上位ビットとマスタ回路300が出力するアクセス
先によってアドレス変換方式の選択をおこなっている。
以下図2に沿って示す。
【0035】その他の選択方法としてこのデータ処理装
置がCPUなどの複数の動作モードを持つ回路を含む場合
は、その動作モードによって変換方式を選択してもよ
い。例えばそのCPUがOSなど特殊なソフトウェアのみが
使用する特権モードと、通常のアプリケーションが使用
する通常モードを持っていた時、特権モードではアドレ
ス変換方式Bを実現する回路103の出力を選択し、通常モ
ードではアドレス変換方式Aを実現する回路102の出力
を選択するというものである。
【0036】また、別にレジスタなどの記憶装置を用意
して、その変換方式選択フラグ値によって変換方式を選
択してもよい。例えば、数ビットの記憶装置を用意し
て、その変換方式選択フラグ値が0の時はアドレス変換
サブ回路A102の出力する変換アドレスを選択し、その値
が1の時はアドレス変換サブ回路B103の出力する変換ア
ドレスを選択し、その値が2の時はアドレス変換サブ回
路C104の出力する変換アドレスを選択し、その値が3の
時は元アドレス106の1部や、それに附随する命令の種類
によってアドレス変換方式を選択するというものであ
る。もちろん、この変換方式選択フラグ記憶装置はレジ
スタに限定されない。
【0037】また、このアドレス線に附随する情報とし
て命令の種類をあらわす情報を持っているとき、それに
よって変換方式を選択してもよい。
【0038】また、元アドレス106の1部、アクセス先、
動作モード、アドレスに附随する命令の種類を表す情
報、あらかじめ記憶装置に記憶させておいた変換方式選
択フラグ値の複合条件によってもよい。
【0039】アドレス変換方式選択回路105を利用すれ
ば、単純なアドレス変換以上の効果をアドレス変換回路
に持たせることも可能になる。例えば、連続したアドレ
スに連続して複数のデータを転送するバースト転送と、
それ以外の転送で使用メモリを変えるなどの機能であ
る。 (アドレス変換回路101のその他の実施の形態)本発明に
含まれるアドレス変換回路101は、上記のアドレス変換
方式Aを実現する回路102と、アドレス変換方式Bを実現
する回路103の双方を少なくとも1つずつ持つものであ
る。例えば、アドレス変換サブ回路B103を複数用意し、
それぞれ異なる変換アドレス情報Bを与えておけば、変
換アドレス情報Bの更新なしに、変換アドレス107空間の
単位ブロック中の異なった部分にアクセスできる(図1
3)。図13は図10が表す、変換時の変換方式Bの例
を表している。このように、変換アドレス空間の単位ブ
ロックの先頭と中間にそれぞれアクセスすべき領域が配
置される場合に有効である。
【0040】また、少なくとも1つ以上のアドレス変換
サブ回路A102とアドレス変換サブ回路B103のに加えて、
それ以外の変換方式を実現するアドレス変換サブ回路C1
04を含んでいてもよい。もしくは、何の変換も行わずそ
のままのアドレスを出力する回路を含んでいてもよい。
これはアドレス変換回路101を介して、マスタ回路300に
本来接続されていた回路を直接つなぐなどする際に有効
である。
【0041】また、元アドレス106と変換アドレス107に
関して、それらのアドレス線幅はどちらが広くてもよ
い。また、等しくてもよい。 (アドレス変換回路101を含むデータ処理装置のその他の
実施の形態)本アドレス変換回路101と、元アドレス106
をアドレス変換回路101に入力するマスタ回路300と変換
アドレスの出力先であるスレーブ回路301は必ずしも同
一チップ上にある必要性はなく別チップとして存在し、
基板700上でこれらを接続する構成も本発明の範囲内で
ある。図14はアドレス変換回路101と、マスタ回路300
と、スレーブ回路301を同一チップ上に形成した第1の
例である。また、図15はアドレス変換回路101と、マ
スタ回路300と、スレーブ回路301をそれぞれ別のチップ
上に形成しそれらを基板700上で接続しデータ処理装置
を構成した第2の例である。また、図16はアドレス変
換回路101とマスタ回路300を同一チップ上に形成し、ス
レーブ回路301を別のチップ上に形成しそれらを基板700
上で接続しデータ処理装置を構成した第3の例である。
また、図17はアドレス変換回路101とスレーブ回路301
を同一チップ上に形成し、要求発信回路300を別のチッ
プ上に形成しそれらを基板700上で接続しデータ処理装
置を構成した第4の例である。
【0042】なお、図14乃至図17のようにプリント
基板上でデータ処理装置を構成する第1乃至第4の例に
加え、図18乃至図21で示すMCM(Multi Chip Module)
のように複数のチップを1つにパッケージングする構成
である第5乃至第8の例も含んでいる。すなわち、図1
8はアドレス変換回路101と、マスタ回路300と、スレー
ブ回路301を同一チップ上に形成し、図示されていない
が他のチップコンデンサ等の電子部品をMCM基板上に搭
載したデータ処理マルチチップモジュールの第5の例で
ある。また、図19はアドレス変換回路101と、マスタ
回路300と、スレーブ回路301をそれぞれ別のチップ上に
形成しそれらをMCM基板700上で接続しデータ処理マルチ
チップモジュールを構成した第6の例である。また、図
20はアドレス変換回路101とマスタ回路300を同一チッ
プ上に形成し、スレーブ回路301を別のチップ上に形成
しそれらをMCM基板700上で接続しデータ処理マルチチッ
プモジュールを構成した第7の例である。また、図21
はアドレス変換回路101とスレーブ回路301を同一チップ
上に形成し、要求発信回路300を別のチップ上に形成し
それらをMCM基板700上で接続しデータ処理マルチチップ
モジュールを構成した第8の例である。上記第5乃至第
8の例は、プリント基板を用いて構成される場合に比べ
て、マスタ回路、アドレス変換回路及びスレーブ回路等
のメイン回路以外のチップコンデンサ、単体抵抗素子等
の電子部品をもMCM基板上に搭載しワンパッケージ化す
ることで、実装面積を削減することができ、実装時のハ
ンドリングが容易になる等のメリットがある。また、上
記メイン回路等をワンチップ化する場合に比べると、既
存の設計資産を用いて単体のチップを製造し、それらを
組み合わせることができるので、チップの開発コストが
低く、また、ワンチップのものより歩留まりが高くなる
ため、コスト低減のメリットがある。
【0043】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。例えば、
アドレス変換回路101にマスタ回路300は複数個接続され
ていてもよい。またアドレス変換回路101にはスレーブ
回路301も複数個接続されていてもよい。また、データ
処理装置内に本発明にかかわるアドレス変換回路101が
複数個含まれてもよい
【0044】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
【0045】すなわち、データ処理装置において、既存
回路用に開発されたソフトウェアを最小限のプログラム
変更で動作させるができ、プログラマの労力、ソフトウ
ェアの開発コストを削減できるデータ処理装置を実現で
きる。また、回路規模の増加も最小限に抑えることがで
きるデータ処理装置を実現できる。
【図面の簡単な説明】
【図1】本発明の一実施例のデータ処理装置図(変換ア
ドレス記憶部、アドレス変換方式選択情報は省略)であ
る。
【図2】アドレス変換回路模式図である。
【図3】本発明の一実施例のデータ処理装置図である。
【図4】バスブリッジ回路詳細図である。
【図5】アドレス変換回路詳細図である。
【図6】本発明の一実施例のアドレス変換サブ回路Aの
図である。
【図7】本発明の一実施例のアドレス変換マップ全体図
である。
【図8】変換アドレス拡大図である。
【図9】アドレス変換マップ代表例1である。
【図10】アドレス変換マップ代表例1のアドレス変換
方式B模式図である。
【図11】アドレス変換マップ代表例2である。
【図12】アドレス変換マップ代表例2のアドレス変換
方式B模式図である。
【図13】アドレス変換マップ代表例1の変換時の変換
方式Bの例である。
【図14】第1のデータ処理装置構成例の図である。
【図15】第2のデータ処理装置構成例の図である。
【図16】第3のデータ処理装置構成例の図である。
【図17】第4のデータ処理装置構成例の図である。
【図18】第5のデータ処理装置構成例の図である。
【図19】第6のデータ処理装置構成例の図である。
【図20】第7のデータ処理装置構成例の図である。
【図21】第8のデータ処理装置構成例の図である。
【符号の説明】
101 アドレス変換回路 102 アドレス変換サブ回路A 103 アドレス変換サブ回路B 104 アドレス変換サブ回路C 105 アドレス変換方式選択回路 106 元アドレス 107 変換アドレス 300 マスタ回路 301 スレーブ回路 302 外部メモリ制御回路 303 フラッシュメモリ、ROM制御回路 304 デバグ用回路 305 PCIバス制御回路 306 DMAC(ダイレクトメモリアクセス制御回路) 307 その他周辺回路 321 SDRAM 322 ROM 323 グラフィックス処理用回路 400 変換アドレス記憶部B 401 変換アドレス記憶部A 402 変換アドレス情報B 403 変換アドレス情報A アドレス変換方式選択情報 変換アドレス記憶部 600 バスブリッジ回路 601 応答送信回路 602 要求受信回路 603 内蔵記憶回路 604 割り込み信号生成回路 605 割り込み要求記憶部 606 割り込みマスク記憶部 620 マスタ回路からのアドレス以外の情報 621 スレーブ回路へのアドレス以外の情報 622 スレーブ回路からの応答 623 マスタ回路への応答 624 内蔵記憶回路へのアドレス以外の情報 627 割り込みマスク 628 割り込み要求 629 割り込み信号 割り込み要求設定信号 700 基板。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 岡田 崇 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 Fターム(参考) 5B060 AB26 AC00 MM16 5B061 FF04 FF05 FF24 GG01

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】他の回路に対してアクセス要求を出す複数
    のマスタ回路と、マスタ回路からのアクセス要求を受け
    て処理を行う1個以上のスレーブ回路と、マスタ回路と
    スレーブ回路との間に有し、マスタ回路から出力される
    元アドレスをアドレス変換し、変換アドレスとしてスレ
    ーブ回路に出力するアドレス変換回路とを具備するデー
    タ処理装置であって、上記アドレス変換回路の個数は1
    個以上、上記マスタ回路の個数以下であることを特徴と
    するデータ処理装置。
  2. 【請求項2】請求項1に記載のデータ処理装置であっ
    て、変換アドレス記憶部をさらに有し、上記アドレス変
    換回路は元アドレスに対して独立にアドレス変換を行う
    複数のアドレス変換サブ回路と、上記アドレス変換方式
    選択情報によってアドレス変換回路に含まれる複数のア
    ドレス変換サブ回路の変換結果から変換アドレスを選択
    し出力する回路とを有し、上記アドレス変換回路のうち
    の少なくとも1個は、上記マスタ回路からの元アドレス
    に加え、アドレス変換方式選択情報と、上記変換アドレ
    ス記憶部からの上記変換アドレス情報とを入力とし、上
    記変換アドレスを上記スレーブ回路に出力する回路であ
    り、上記アドレス変換回路に含まれるアドレス変換サブ
    回路のうちの少なくとも1個は、元アドレスの一部を変
    換アドレス記憶部にあらかじめ記憶させておいた変換ア
    ドレス情報で置きかえる方法で変換アドレスを生成する
    アドレス変換方式を実現し、上記アドレス変換回路に含
    まれるアドレス変換サブ回路のうちの少なくとも1個
    は、元アドレスの1部を並べ替える操作を含む方法で変
    換アドレスを生成するアドレス変換方式を実現すること
    を特徴とするデータ処理装置。
  3. 【請求項3】請求項1又は請求項2に記載のデータ処理
    装置であって、複数のマスタ回路が共通のスレーブ回路
    にアクセスすることが可能であり、上記複数のマスタ回
    路のうちの少なくとも1個のマスタ回路と上記スレーブ
    回路との間に上記アドレス変換回路が配置されることを
    特徴とするデータ処理装置。
  4. 【請求項4】請求項1乃至請求項3のいずれか一項に記
    載のデータ処理装置であって、上記複数のアドレス変換
    回路のうちの少なくとも1個は元アドレス線幅より広い
    アドレス線幅の変換アドレスを出力することを特徴とす
    るデータ処理装置。
  5. 【請求項5】請求項2至請求項4のいずれか一項に記載
    のデータ処理装置であって、上記アドレス変換方式選択
    情報は、元アドレスの一部、アクセス先、命令の種類、
    または、動作モードのうち、一つ又は複数を有すること
    を特徴とするデータ処理装置。
JP2001168943A 2001-06-05 2001-06-05 アドレス変換回路を有するデータ処理装置 Pending JP2002366425A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001168943A JP2002366425A (ja) 2001-06-05 2001-06-05 アドレス変換回路を有するデータ処理装置
US10/083,346 US6766436B2 (en) 2001-06-05 2002-02-27 Data processor having an address translation circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001168943A JP2002366425A (ja) 2001-06-05 2001-06-05 アドレス変換回路を有するデータ処理装置

Publications (1)

Publication Number Publication Date
JP2002366425A true JP2002366425A (ja) 2002-12-20

Family

ID=19011078

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001168943A Pending JP2002366425A (ja) 2001-06-05 2001-06-05 アドレス変換回路を有するデータ処理装置

Country Status (2)

Country Link
US (1) US6766436B2 (ja)
JP (1) JP2002366425A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009105731A (ja) * 2007-10-24 2009-05-14 Seiko Epson Corp データ通信システム及び通信制御装置
JP2012208827A (ja) * 2011-03-30 2012-10-25 Nec Corp マイクロプロセッサ、メモリアクセス方法
JP2014071530A (ja) * 2012-09-27 2014-04-21 Kyocera Document Solutions Inc メモリー管理装置
JP2015022765A (ja) * 2013-07-17 2015-02-02 インフィネオン テクノロジーズ アーゲーInfineon Technologies Ag アドレスビット並べ替えを用いたメモリアクセス
JP2021513139A (ja) * 2018-01-31 2021-05-20 エイアールエム リミテッド データ処理装置におけるアドレス変換

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6766433B2 (en) * 2001-09-21 2004-07-20 Freescale Semiconductor, Inc. System having user programmable addressing modes and method therefor
KR100604835B1 (ko) * 2004-02-24 2006-07-26 삼성전자주식회사 프로토콜 변환중재회로, 이를 구비하는 시스템과 신호변환중재방법
TWI341491B (en) * 2007-03-07 2011-05-01 Via Tech Inc Memory access system and memory access method thereof
US8682639B2 (en) * 2010-09-21 2014-03-25 Texas Instruments Incorporated Dedicated memory window for emulation address

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4212057A (en) * 1976-04-22 1980-07-08 General Electric Company Shared memory multi-microprocessor computer system
US5086295A (en) * 1988-01-12 1992-02-04 Boettcher Eric R Apparatus for increasing color and spatial resolutions of a raster graphics system
JPH0397051A (ja) 1989-09-11 1991-04-23 Nec Data Terminal Ltd アドレス空間拡張装置
JPH03113548A (ja) 1989-09-27 1991-05-14 Yokogawa Electric Corp 拡張メモリ制御装置
JPH04237348A (ja) 1991-01-22 1992-08-25 Fuji Electric Co Ltd メモリアクセス装置
US6289430B1 (en) * 1999-02-18 2001-09-11 International Business Machines Corporation Method and apparatus for target addressing and translation in a non-uniform memory environment with user defined target tags

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009105731A (ja) * 2007-10-24 2009-05-14 Seiko Epson Corp データ通信システム及び通信制御装置
JP2012208827A (ja) * 2011-03-30 2012-10-25 Nec Corp マイクロプロセッサ、メモリアクセス方法
US9081673B2 (en) 2011-03-30 2015-07-14 Nec Corporation Microprocessor and memory access method
JP2014071530A (ja) * 2012-09-27 2014-04-21 Kyocera Document Solutions Inc メモリー管理装置
JP2015022765A (ja) * 2013-07-17 2015-02-02 インフィネオン テクノロジーズ アーゲーInfineon Technologies Ag アドレスビット並べ替えを用いたメモリアクセス
US9323654B2 (en) 2013-07-17 2016-04-26 Infineon Technologies Ag Memory access using address bit permutation
JP2021513139A (ja) * 2018-01-31 2021-05-20 エイアールエム リミテッド データ処理装置におけるアドレス変換
US11687464B2 (en) 2018-01-31 2023-06-27 Arm Limited Address translation in a data processing apparatus
JP7369699B2 (ja) 2018-01-31 2023-10-26 アーム・リミテッド データ処理装置におけるアドレス変換

Also Published As

Publication number Publication date
US20020184467A1 (en) 2002-12-05
US6766436B2 (en) 2004-07-20

Similar Documents

Publication Publication Date Title
US7155556B2 (en) Devices and methods for converting remote device formats to host device formats for access to host associated resources
US20050091432A1 (en) Flexible matrix fabric design framework for multiple requestors and targets in system-on-chip designs
US6272582B1 (en) PCI-PCI bridge allowing controlling of a plurality of PCI agents including a VGA device
US7581054B2 (en) Data processing system
JP3619532B2 (ja) 半導体集積回路装置
JP2002366425A (ja) アドレス変換回路を有するデータ処理装置
US6438683B1 (en) Technique using FIFO memory for booting a programmable microprocessor from a host computer
JP5856434B2 (ja) バス接続回路、半導体装置及びバス接続回路の動作方法
JP3616402B2 (ja) 拡張可能なレジスタを提供するデータ処理システムおよびその方法
JP4267282B2 (ja) ユーザによりプログラム可能なアドレス指定モードを有するシステム及びその方法
US6954869B2 (en) Methods and apparatus for clock domain conversion in digital processing systems
US7310717B2 (en) Data transfer control unit with selectable transfer unit size
JP2004227049A (ja) データ転送装置、半導体集積回路及びマイクロコンピュータ
US5159674A (en) Method for supplying microcommands to multiple independent functional units having a next microcommand available during execution of a current microcommand
US7356649B2 (en) Semiconductor data processor
JP2723970B2 (ja) データ転送制御装置
JP2004199187A (ja) Cpu内蔵lsi
JP5441216B2 (ja) 半導体装置及びデータ処理システム
JPH04288643A (ja) マルチプロセッサシステムのメモリマッピング方式
KR20050110006A (ko) 데이터 프로세싱 시스템의 메모리 관리
JP4227789B2 (ja) 集積回路装置およびデータ処理システム
JP2001256104A (ja) 情報処理装置
KR20010051159A (ko) 데이터 처리장치 및 데이터 처리시스템
US20040064662A1 (en) Methods and apparatus for bus control in digital signal processors
JPH053015B2 (ja)