JP2001051958A - 多重プロセッサ多成分アーキテクチャのための統一メモリ管理システム - Google Patents

多重プロセッサ多成分アーキテクチャのための統一メモリ管理システム

Info

Publication number
JP2001051958A
JP2001051958A JP2000207122A JP2000207122A JP2001051958A JP 2001051958 A JP2001051958 A JP 2001051958A JP 2000207122 A JP2000207122 A JP 2000207122A JP 2000207122 A JP2000207122 A JP 2000207122A JP 2001051958 A JP2001051958 A JP 2001051958A
Authority
JP
Japan
Prior art keywords
memory
address
dsp
memory management
dma
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
JP2000207122A
Other languages
English (en)
Inventor
Gerard Chauvel
ショーヴェル ジェラルド
Serge Lasserre
ラッセール セルジュ
Inverno Dominique Benoit J D
ベノイト ジャクエス デ インベルノ ドミニク
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JP2001051958A publication Critical patent/JP2001051958A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 高性能のメモリ管理を行うことができる多重
プロセッサ多成分アーキテクチャのための統一メモリ管
理システムを提供する。 【解決手段】 多重プロセッサ・システム8は、DSP
10と、プロセッサ・ユニット(MPU)21と、コプ
ロセッサ30と、DMAチヤンネル31とを備えた、多
重プロセッシング・デバイスを有する。いくつかのデバ
イスは、外部共有メモリ20にマップされた大きな仮想
アドレス・スペースでもってデバイス10、21、3
0、31が動作することを可能にするMMU19、32
を有することができる。MMU19、32は、外部共有
メモリ20に関連する物理アドレスと仮想アドレスとの
間の変換を実行することができる。共有メモリ20への
アクセスは、統一メモリ管理システムを用いて制御され
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は全体的にいえば電子
回路に関する。さらに詳細に言えば、本発明はディジタ
ル信号プロセッサに関する。
【0002】
【発明が解決しようとする課題】プロセッサのスピード
が増大しているにもかかわらず、ビデオ会議、ディジタ
ル・カメラのように新たに現れたアプリケーション、お
よびウエブ・ブラウジング(web browsing)のようなさら
に効率的なデータ通信を支援する無線通信における新規
の規格は新しいサービスを開始するであろう。したがっ
て、デバイスに対するMIPSおよび並行性能に対する
要求は異常に増大している。これらのアプリケーション
は分離したデバイスで実行することができるかも知れな
いし、または次の世代の携帯型通信機の中で一緒に組み
合わせて実行することができるかも知れない。これらの
アプリケーションに対して、消費電力が小さいこととリ
アルタイムの動作に対して呼び出し時間が短いことが重
要である。
【0003】単一のCPUにDSP機能を集積化するこ
とによって解決する方法は、ソフトウエアの開発に対し
て最も興味がある方法であるけれども、消費電力と特性
とに関して交換条件として得失の点で最良の解決法であ
るとは思われない。その代わりに、コプロセッサまたは
ハードウエア・アクセラレータおよびDMAと共に、M
PU(micro-processor unit 、マイクロプロセッサ・ユ
ニット)や1個または複数個のDSP(digital signal
processor 、ディジタル信号プロセッサ)を備えた多成
分プロセッサを有する多重プロセッサ・アーキテクチャ
により大幅な利点が得られる。
【0004】DSPの1つの欠点は、それらのI/O性
能である。DSPはそれを頼りにデータおよびプログラ
ムの情報を記憶する内部メモリを有するのが、典型的な
場合である。半導体の製造が改良されてDSPの中に集
積できるメモリの量が増大してきているけれども、アプ
リケーションの複雑さは命令およびデータ・メモリに対
してさらに高い性能を要求する必要度が増大している。
【0005】将来、DSPにより実行されるアプリケー
ションはさらに複雑になり、そして単一のシステムの中
で多数個のDSPによって多重プロセッシングが行われ
るようになるであろう。DSPは多重でかつ同時発生の
アプリケーションを支援するように展開するであろう。
そのいくつかのアプリケーションでは特定のDSPプラ
ットホームに対して専用ではなくて、インターネットの
ように世界的なネットワークからロードされるであろ
う。これらのDSPプラットホームは、多数のアプリケ
ーションを計画するために、およびアプリケーションと
オペレーティング・システム・カーネルとの間の効率的
なメモリ・アクセスを共有および保護するようにメモリ
の管理を支援するために、RTOS(real time operati
ng system、リアルタイム・オペレーティング・システ
ム)から利益を得るであろう。
【0006】したがって、高性能のメモリ管理を行うこ
とができるDSPが要請されている。
【0007】
【課題を解決するための手段】本発明のプロセッシング
・システムは、共有メモリと、前記共有メモリへのアク
セスを制御するためのそれぞれのメモリ管理ユニットを
有する複数個のプロセッシング・デバイスを有する。世
界的な統一メモリ管理システムは、前記メモリ管理ユニ
ットによって前記共有メモリへのアクセスを制御する。
【0008】本発明により先行技術を越える大幅な利点
が得られ、独立なタスクとマイクロプロセッサに通常に
用いられるのと同じレベルのメモリ保護とが実行される
直線状メモリ・スペースを備えた、DSP、コプロセッ
サおよびDMAチヤンネルのようなプロセッシング・デ
バイスが得られる。仮想アドレスから物理アドレスへの
変換を制御して、マスタ・プロセッシング・ユニットで
動作する統一メモリ管理システムは、多重プロセッサ・
システムの中の1個または複数個のプロセッシング・デ
バイスの動作をさらに効率的に制御することができる。
【0009】
【発明の実施の形態】添付図面を参照しての下記説明に
より、本発明およびその利点をさらに完全に理解するこ
とができる。
【0010】本発明は図1〜図8を参照することにより
最もよく理解することができる。これらの図面において
同等のエレメントには同等の参照番号が付されている。
【0011】図1aは、DSP、コプロセッサおよびマ
イクロプロセッシング・ユニットを用いた改良されたア
ーキテクチャを有するコンピューティング・デバイスの
ブロック線図の全体図である。この実施例では、DSP
10はプロセッシング・コア12およびローカル・メモ
リ14に結合された複数個のバス13を有する。ローカ
ル・メモリ14は、命令メモリ16(RAM/ROM1
6aおよび/またはキャッシュ16b)と一緒にデータ
・メモリ(RAM15aおよび/またはデータ・キャッ
シュ15b)を有する。MMU(memory management uni
t 、メモリ管理ユニット)19を有する外部メモリ・イ
ンタフェース18がバス13に結合され、そして外部バ
スおよびメモリ制御装置22を通して外部物理メモリ2
0に結合される。
【0012】DSP10の外部の1個または複数個の他
のプロセッシング・ユニット(MPU)21はまた、外
部バスおよびメモリ制御装置22を通してメモリ20に
結合される。プロセッサ・ユニット21は他のタスクの
中で、デバイス8のソフトウアおよびハードウエアを管
理するオペレーティング・システム(OS)を実行す
る。このオペレーティング・システムはプロセッサ・ユ
ニット21により、下記で詳細に説明されるように、M
MU19のアスペクトを制御して物理アドレス変換およ
びメモリ保護を論理的に制御することができる統一メモ
リ管理システムを有する。プロセッシング・ユニット2
1は、コア23と、命令キャッシュ24と、データ・キ
ャッシュ25と、命令メモリ管理ユニット(MMU)2
6と、データ・メモリ管理ユニット(MMU)27とを
有する。
【0013】システム8の中にはまた、1個または複数
個のコプロセッサ30およびDMAチヤンネル31が存
在する。コプロセッサ30およびDMAチヤンネル31
のおのおのは、バスおよびメモリ制御装置22を通して
外部共有メモリ20とのインタフェースであるMMU3
2を有する。DPS10の場合のように、オペレーティ
ング・システムの統一メモリ管理システムは、それぞれ
のデバイスに関連するMMU32の物理アドレス変換お
よびメモリ保護の特徴を制御する。
【0014】動作の際には、DPSのプロセッサ・コア
12を任意に設計することができる。典型的な場合に
は、DPSのプロセッサ・コアは高速のマルチプライヤ
・アクミュレータ回路(multiplier accumulator circui
t)(通常は「MAC」と呼ばれる)の役割を果たす。ロ
ーカル・メモリ14は、DPSの動作に用いられるデー
タおよび命令を記憶する。例示された実施例では、高速
アクセスのためのその仮想アドレシングに基づく直接の
アドレス・デコーディングを用いて、プロセシング・コ
ア12がローカル・メモリ14を直接にアドレスするこ
とができる。ローカル・メモリ15a/16aまたはキ
ャッシュ15b/16bの中からまたは中にプログラム
およびデータの情報を効率的に検索および記憶するよう
に、バス構造体が設計される。けれども、異なるバス構
造体をまた用いることができる。またはそれとは異なっ
て、MMUを通してローカル・メモリ14をアドレスす
ることができるであろう。ただしこの場合には、ローカ
ル・メモリ・アクセスのスピードが減少するであろう。
【0015】外部メモリ・インタフェース18は、外部
メモリ20をアクセスするために仮想アドレシングを利
用する性能を有するDPS10のプロセッシング・コア
12を備えている。DPSコア12はMMU19を通し
て外部メモリにアクセスする。DPSは典型的には、命
令を検索するためにおよびオペランドを検索および記憶
するために、命令サイクル当たりに1個または複数個の
計算を実行する1個または複数個のアドレス発生ユニッ
ト(AGU、address generation unit)を有する。
【0016】仮想アドレシングを利用する性能は、DP
Sの機能度を大幅に増加する。特に、DPSはタスク保
護環境の中で独立なタスクを実行することができる。直
線状の(連続した)メモリ・スペースをそれぞれのタス
クに割り当てることができ、それでこのタスクのおのお
のがシステムの中で実行される唯一のタスクであるとい
う勘違いを与える。大部分のソフトウエアは第3のグル
ープによって書かれるだろうから、そしてこの第3のグ
ループは他のアプリケーションを知らないだろうから、
これは将来のシステムにおける重要な点である。MMU
18によりまた、DPS10のアドレシング範囲を24
ビットから32ビットに拡張する性能が得られる。
【0017】仮想アドレシングのユーザはまた、コプロ
セッサ30およびDMAチヤンネル31により利益を得
る。コプロセッサの場合、仮想メモリの中での実行はド
ライバを簡単にする。例えば、複数個の物理的DMAの
中で分離される必要のある散らばったページで形成され
るバッファを多数ページにわたるDMAと関連させるこ
とができる。これは、システムの活性度のすべてに対す
るOSにより実行される変換テーブル管理の中に隠され
る。したがって、下記で詳細に説明される変換テーブル
を制御することにより、コプロセッサ30またはDMA
チヤンネル31に対する複雑なソフトウエア・ドライバ
の必要がなくなる。
【0018】例示された実施例では、オペレーティング
・システムと共にプロセッシング・ユニット21によ
り、それぞれのプロセッサ、コプロセッサまたはDSP
に関して実行されている異なるプロセスに対し、メモリ
をダイナミックに管理および割り当てる統一メモリ管理
システムが得られ、それによりすべてのアプリケーショ
ン(すべてのプロセス)に対して直線状でかつ保護され
たメモリ・スペースが得られる。この統一メモリ管理ユ
ニットにより、外部共有メモリ20の中の対応する物理
アドレスの非直線状アスペクトにもかかわらず、すべて
のプロセスおよびすべてのプロセッサ(またはすべての
コプロセッサおよびDMA)に対して直線状メモリ・ス
ペースが得られる。この統一メモリ管理ユニットにより
また、効率的でかつよく知られた保護機構を得ることが
できる。
【0019】本発明のこの特性は、アプリケーションが
急速に変化しそして独立の会社および個人によりアプリ
ケーションが開発されている最近のコンピュータの現状
において特に重要である。これらの異なるプロセスの全
部は、同時に実行することができる他のプロセスについ
て未知である。同じ現象は、アプリケーションがインタ
ーネットまたはその他の世界的なネットワークからまた
くるであろう、通信デバイスのような埋込みシステム設
計の中で起こっている。
【0020】図1aにおいて、マスタ・プロセッシング
・ユニット21で動作するオペレーティング・システム
は、システム8全体のメモリ管理に対して責任を有して
いる。図1aに示されたアーキテクチャにより、ダイナ
ミック・システムの中で起こるメモリ・セグメンテーシ
ョンを簡単な方式で管理する機構が得られる。本発明に
より、他の実行されているアプリケーションについて悩
むことなく、独立したアプリケーションがそれらの割り
当てられたメモリを持続して調べることを可能にする。
【0021】図1bに示されているように仮想アドレシ
ングを用いて、システムの中のデバイスは連続したメモ
リ・スペースを調べることができ、この連続したメモリ
・スペースの中でそれらのアプリケーションを実行する
ことができる。けれども、外部メモリ21に対する実際
のマッピングを断片化することができ、それにより外部
メモリ20に対するさらに柔軟な割当てを得ることがで
きる。
【0022】(DSP10、プロセッシング・ユニット
21またはコプロセッサ30のような)プロセッサのお
のおのは、それ自身のオペレーティング・システムまた
はリアル・タイム・オペレーティング・システム(RT
OS)またはさらに基本的なスケジュール機能さえも実
行することができる。プロセッシング・ユニット21
は、統一メモリ管理ソフトウエア・モジュールを有する
マスタ・オペレーティング・システムを実行する。この
メモリ管理ソフトウエア・モジュールは、仮想アドレス
から物理アドレスへの変換を含む複数個のテーブルやメ
モリ保護情報を管理する。
【0023】図2は、DSP10に対する1つの実施例
を詳細に説明した図である。DSPコア12、ローカル
・データ・メモリ15、ローカル命令メモリ16および
外部メモリ・インタフェース18に加えて、DSPは周
辺インタフェース42、検査およびエミュレーション・
インタフェース44および外部プロセッシング・インタ
フェース45を有する。外部メモリ・インタフェース1
8は、コンテント・アドレッサブル・メモリ(CAM、
content addressable memory)50およびウオーキング
・テーブル・ロジック(WTL、walking table logic)
52を含み、変換ルックアサイド・バッファ(TLB、
translation lookaside buffer)48を備えたMMU1
9を有する。外部メモリ・インタフェース18はさら
に、バス制御装置54およびコンフィギュレーション・
レジスタ56を有する。
【0024】動作の際には、DSP10は5個のインタ
フェースを通して通信する。外部メモリ・インタフェー
スにより、DSPプログラムとデータ(および他のプロ
セッシング・ユニットと共に)との間に共有される外部
メモリ・スペースに対するバースト・アクセスまたは単
一アクセスのための32ビット(バイト)アドレス性能
が得られる。DSP周辺インタフェースにより、I/O
スペースの中のDSPに対して特有の周辺装置へのアク
セスが可能になる。補助信号インタフェースは、リセッ
ト信号、クロック信号およびインタフェース信号を再編
成する。検査およびエマルジョン・インタフェースによ
り、DSP10を検査するための検査信号およびJTA
G信号が可能になる。外部プロセッサ・インタフェース
45により、MMU19の動作を制御するために外部プ
ロセッシング・ユニット21がMMU19の中に記憶さ
れた情報にアクセスすることができる。外部メモリ・イ
ンタフェース18は、DSP10と外部メモリ20との
間のデータおよび命令の転送を制御する。外部メモリ・
インタフェース18は2つの機能、すなわち、(1)外
部メモリ管理、(2)外部アクセスおよびキャシュ充填
リクェストに対して(C、D、E、FおよびPでラベル
された)多重DSPバスの間の優先処理、を実行する。
【0025】図3は、DSPコア12からのそれぞれの
種類の命令に対して異なるバスの使用を示した図表であ
る。
【0026】図4は、仮想プログラムおよびデータ・ス
ペースを示した図である。図4に例示された実施例で
は、コア12はPバスを通してアクセスされた均一な1
6メガバイト仮想プログラム・スペースを調べる。コア
12は、Bバス、Cバス、Dバス、Eバス、Fバスを通
して16メガバイトの連続した仮想データ・スペースに
アクセスする。これらのバスのおのおのにより、それ自
身のワード・アドレス(23ビット)が得られる。付加
的な低次のビットは、16ビットのデータ・ワードの中
の1つのバイトの選定をイネーブルにする。高次のD/
Pビットは、このワードがプログラムまたはデータに関
連しているかどうかを指示する。ここで、データ・バス
およびプログラム・バスは外部メモリに対して多重化さ
れる。バス13のすべては16ビットの幅を有する。デ
ュアル・アクセス・データRAM(ローカル・データ・
メモリ15a)の16キロワードは、アドレス範囲の下
端にマップされる。プログラム・アドレス範囲の下端に
マップされたローカル・プログラム・メモリ16は、外
部メモリ20からの情報(プログラムおよびデータ)を
記憶するためのRAM/ROMまたはキャッシュである
ことができる。
【0027】例示された実施例では、プロセッシング・
コア12は高速アクセスのための16メガバイトの仮想
アドレス・スペースの中でローカル・メモリ14を(す
なわち、MMU19を用いないで)直接にアドレスする
ことができる。外部メモリ20は、外部メモリ・インタ
フェース18の中のMMU19を通してアクセスされ
る。
【0028】本明細書の全体にわたって、特定のDSP
を設置するための設計を変えることができるけれども、
種々のメモリ、バスおよび容量などに対する特定のアー
キテクチャ特性および詳細な寸法が提供される。例え
ば、コア12によって見られる仮想プログラム・スペー
スの寸法は1つの設計上の選択であり、この選択は特定
のDSPに対して要求に従って容易に変えることができ
る。
【0029】再び図2において、外部メモリ・インタフ
ェース18は32ビット・インタフェースであり、そし
てそれは6種類のアクセスを発生する。すなわち、
(1)単一の16ビット・データ読出し(ワード)、単
一の32ビット・データ読出し(長いワード)、(2)
データ・バースト読出しmx16ビット・データ、nx
32ビット(長いワード)、(3)DSPからのデータ
書込み(単一の16ビット、単一の32ビット)、
(4)データ・バースト書込み(mx16ビット・デー
タ、nx32ビット)、(5)命令キャッシュ・ライン
充填、および(6)単一の命令フェッチ、である。もし
DSPがデータ・キャッシュ15bを有するならば、デ
ータ・キャッシュ・ライン充填がまた支援される。
【0030】優先度方式はDSPソフトウエア互換性に
整合するために定められ、およびパイプライン、メモリ
・コヒーレンシおよびロックアップ・イッシュ(lockup
issue)を避けるために定められる。例示された実施例で
は、優先度リストは最高から最低に向けて、(1)Eリ
クェスト、(2)Fリクェスト、(3)Dリクェスト、
(4)Cリクェスト、(5)キャッシュ充填/命令フェ
ッチ・リクェストである。外部メモリへ/からのDSP
データの流れを改良するために、外部メモリ・インタフ
ェースを構成することにより、シーケンシャル・データ
のブロックをバーストで転送することができる。
【0031】図5は、MMU19を詳細に示した図であ
る。MMU19は、仮想アドレスを物理アドレスに変換
することを実行し、および外部メモリ・インタフェース
へのアクセスに対する許可検査を実行する。MMU19
により、DSP10とまた別のプロセッシング・ユニッ
トとの間の共有物理スペースを管理するために、オペレ
ーティング・システムにより要求される適応性と機密保
護とが得られる。
【0032】MMUは、TLB28およびウオーキング
・テーブル・ロジック52を有する。動作の際はMMU
19は、DSPコア12から仮想プログラム(命令)ア
ドレス(VPA、virtual program address)および仮想
データ・アドレス(VDA、virtual data address) を
受け取る。仮想アドレスはTLB28のCAM50によ
って解析される。もし仮想アドレスの上側ビットがCA
M50の中に記憶されるならば、TLB「ヒット (hi
t)」が起こる。ヒットが起こるCAM50の中のアドレ
スがTLB RAM60をアクセスするのに用いられ
る。TLB RAM60は、CAM50の中の対応する
エントリのおのおのに対する物理ベース・アドレス(上
側レベル・ビット)を記憶する。したがって、もし仮想
アドレスがCAM50の位置「20」に記憶されるなら
ば、RAM60の位置「20」から関連する物理アドレ
スを得ることができる。次に、外部メモリ20をアクセ
スするための完全な物理アドレスを発生するために、R
AM60からの物理ベース・アドレス・ビットがページ
・インデックス・ビット(DSPコア12からの仮想ア
ドレスの下側ビット)と結び付けられる。好ましい実施
例では、それぞれのCAMエントリに対する比較が、ペ
ージ寸法コード(00=1メガバイト・ページ、01=
64キロバイト・ページ、10=4キロバイト・ページ
および11=1キロバイト・ページ)に応じて、DSP
アドレスの5個の上側ビット、9個の上側ビット、13
個の上側ビットおよび15個の上側ビットで実行され
る。したがって、1メガバイト・ページは5個の上側ビ
ットとだけ整合することが必要であり、64キロバイト
・ページは上側9個のビットとだけ整合することが必要
である、などである。このことは、異なるページ寸法が
単一のCAMにより収容されることを可能にする。異な
る実装では、当然に、図5に示されたページ寸法以外の
ページ寸法を用いることができる。
【0033】CAM50およびRAM60は、仮想アド
レスに他の情報を記憶することができる。RAM60は
仮想アドレスに対する許可ビット(AP)を記憶する。
この許可ビットは、例えば、1つの位置が読出し専用で
あるかまたは保護されるべきかを指定することができ
る。これらのビットを用いて、外部メモリ20の一定の
領域へのアクセスを制御することができる。DSPが矛
盾したAPビットを有するアドレスにアクセスすること
を試みる時(例えば、もしDSPがメモリの読出し専用
セクションに書込むことを試みるならば)、外部メモリ
・インタフェース18は割り込みDSP MMU フォ
ルト(fault) ITを発生し(図1を見よ)、これはマ
スタ・プロセッシング・ユニット21で実行される統一
メモリ管理ソフトウエア・モジュールにより処理され
る。
【0034】もしDSPコア12からの仮想アドレスが
CAM50の中に発見されないならば、TLB「ミス(m
iss)」が起こる。この場合、ウオーキング・テーブル・
ロジック52を用いて、外部メモリの中に配置されたM
MUテーブルを通して仮想アドレスに関連する物理アド
レスが見出される。
【0035】図6は、TLBミスが起こった場合にウオ
ーキング・テーブル・ロジックにより物理アドレスの導
出する1つの例を示した図である。ウオーキング・テー
ブル・ロジックの方法は当業者には周知であり、そして
そのプロセスの基本的な説明が図6に示されている。ウ
オーキング・テーブル・ロジック52のTTBレジスタ
は、外部メモリ20の中に記憶された第1レベル記述子
テーブルの境界を指示するアドレスを保持する。プロセ
ッシング・コア12からの仮想アドレスは複数個のイン
デックス・フィールドを有し、その数および位置はこの
仮想アドレスに関連するページの種類に応じて変わるこ
とができる。第1レベル記述子テーブルの中の位置を識
別するために、変換テーブル・ベース(TTBレジス
タ)アドレスと仮想アドレスからのインデックス1とが
結び付けられる。この位置はウオーキング・テーブル・
ロジック52に、ベース・アドレスが仮想アドレスに関
連する物理メモリ位置を指示するかどうか、またはそれ
が低いレベルの記述子テーブルを指示するかどうか、を
ウオーキング・テーブル・ロジックに知らせるPビット
およびベース・アドレスを提供するであろう。図6の実
施例では、この位置はベース・アドレスに外部メモリ2
0の中の第2レベル記述子テーブルを提供する。
【0036】このベース・アドレスは、第2レベル記述
子テーブルの中の位置を指示するために、仮想アドレス
からのインデックス2と結び付けられる。この位置によ
り、また別のアドレスおよびまた別のPビットが得られ
る。この実施例ではPビットは、関連するベース・アド
レスが第3レベル記述子テーブルの中の位置を指示する
ことを示す。したがってこのベース・アドレスは、第3
レベル記述子テーブルの中の位置を指示するために、仮
想アドレスからのインデックス3と結び付けられる。こ
の位置により、ベース・アドレスおよび関連するPビッ
トが得られる。これは、ベース・アドレスが要求された
物理アドレスと関連していることを示す。この位置はま
た、物理アドレスに関連する許可ビットを有する。した
がって、ベース・アドレスは外部メモリをアクセスする
ために仮想アドレスからのページ・インデックスと結び
付けられる。
【0037】この実施例は要求された物理アドレスのベ
ース・アドレスを識別するために3個の記述子テーブル
を用いているが、任意の数のテーブルを用いることが可
能であることを断っておく。物理アドレスを決定するた
めに用いられるテーブルの数は、その物理アドレスに付
随するページ寸法に応じて変わるであろう。
【0038】物理アドレスおよび許可ビットを形成する
ために用いられるベース・アドレスは、ウオーキング・
テーブル・ロジック52のWTTレジスタの中に記憶さ
れる。WTTレジスタは仮想アドレスでCAM50をロ
ードするのに用いられ、および置換アドレス回路62に
より決定される位置の許可ビットおよび関連するベース
・アドレスでRAM60をロードするのに用いられる。
置換アドレス回路62はプログラムマブル・ランダム・
アドレスまたは巡回アドレスを発生する。TLBミスを
受け取ってTLBエントリがMPUによりプログラムさ
れる時、第2置換ポリシが重要である。この置換ポリシ
はその場合にはまたバイパスすることができ、そして完
全にMPUの制御の下にあることができる。
【0039】ウオーキング・テーブル・ロジック72を
用いる代わりに、DSP10のTLB48をプロセッシ
ング・ユニット21によって管理することができる。T
LBからのミス信号はプロセッシング・ユニット21に
送られるであろう。プロセッシング・ユニット21の割
込みハンドラは、正しい物理アドレスを見い出すために
外部メモリ20の中のテーブルをウオーキングすること
によりおよびDSPのTLB48を適切にロードするこ
とにより、割り込みの役割を果たす。この別の実施例に
よりTLBミスを処理するのに大きな適応性が得られる
が、DSP10とプロセッシング・ユニット21との間
に付加的な時間依存度を生ずる。
【0040】ロジカル・アドレスから物理アドレスへの
DSP変換を制御する性能は、多くの方法で利用するこ
とができる。1個または複数個のプロセッサ21により
実行されるマスタ・オペレーティング・システムによ
り、1個または複数個のDSPを用いるシステムを制御
することができる。このオペレーティング・システム
は、例えば、異なるタスクをシステムの中の異なるDS
Pに割り当てることができ、およびメモリ20の中の変
換テーブルを適切に構成することができる。特性を改良
するために、システムの中のそれぞれのDSPのTLB
は、ミスを最小限にするために、オペレーティング・シ
ステムにより事前プログラムすることができるであろ
う。
【0041】システム8の動作の期間中、多くのアプリ
ケーションを開始および終了することができる。新しい
プログラムが開始しそして他のプログラムが終了する
時、外部メモリの中のメモリ・スペースの割り当てが断
片化され、そしてメモリの未使用のブロックを残すこと
ができる。マスタ・プロセッシング・ユニット21はオ
ペレーティング・システムの制御の下で、アプリケーシ
ョンの開始または終了のような出来事に応じてまたは周
期的にのいずれかで、断片化の程度を決定するためにメ
モリの状態を再点検することができるであろう。もし現
在動作しているアプリケーションに対するメモリの割り
当てを変更する必要があるならば、オペレーティング・
システムはこのアプリケーションに割り込み、そしてメ
モリに再割り当てを行い、そして新しい割当てを反映す
るためにそれぞれのコプロセッサまたはDSPのTLB
を変更し、外部メモリの中のウオーキング・テーブルを
変更し、そしてアプリケーションを再び開始する。
【0042】DSPのMMUを利用する原理をまた拡張
することができ、そして図7に示されているように、D
MAチヤンネルまたはコプロセッサと共にMMUを用い
ることに応用することができる。メモリ断片化の結果を
解決するためにおよびロッキングを避けるために、予め
定義された物理メモリ・スペースが通常はDMAチヤン
ネルに対して保有される。DMAバッファに対して要求
される寸法は、初期化の期間中は必ずしも分からない。
図7は、DMAソフトウエア・ドライバを通して多重D
MAロジカル・チヤンネルにより共有されることができ
る、単一のハードウエアDMAチヤンネル・ハードウエ
ア・ブロック80を示した図である。DMAドライバ8
0は再入可能であり、そしてユーザによって開始された
アプリケーションは1つを要求する時に新しいロジカル
・チヤンネルを生じ、単一のDMA物理リソースをタイ
ム・スライスされた方式で共有するためにロジカル・チ
ヤンネルの全部がソフトウエア・ドライバの中で待ち行
列に入る。たとえAPIでもアプリケーションに対して
DMAドライバが利用可能であろうから、すべての可能
なロジカルDMAチヤンネルに対して前もって十分なス
ーペスを保有することは不可能である。仮想アドレスを
用いてDMAを定める際、ロジカル・アドレスの連続し
たブロックをそれが必要である時に外部メモリ21に対
してマップできるので、初期化においてDMAに対して
シーケンシャル・メモリ・スペースを保有する制約がな
くなる。その断片化にもかかわらず、利用可能なメモリ
のプールを用いてバッファを生ずることができる。
【0043】図7のDMAハードウエア・ブロック80
は、FIFO(first in,first out、先入れ先出し)メ
モリ82(または、小さなレジスタ・ファイルを用いる
ことができる)と、制御レジスタ84(例えば、宛先レ
ジスタ、ソース・レジスタ、バースト寸法レジスタ、ブ
ロック寸法レジスタおよび複雑なDMA転送のためのイ
ンデックス・レジスタを含む)と、仮想アドレスを発生
するためのアドレス・カリキュレータ86と、外部メモ
リ20に対して物理アドレスを発生するためにアドレス
・カリキュレータ86に結合されたTLB90およびW
TL92を有するMMU88と、を有する。MMU88
のアーキテクチャは、DSP10に対する図5に示され
たアーキテクチャと同様であることができる。
【0044】動作の際には、複数個のDMAリクェスト
が関連するDMAソフトウエア・ドライバの中で待ち行
列に入ることができるけれども、FIFOメモリ82お
よび制御レジスタ84は1つのDMAチヤンネルを表
す。アドレス・カリキュレータ86は、従来のDMA制
御装置と同様の方式で次のデータに対して制御レジスタ
84からアドレスを計算する。けれども、アドレス・カ
リキュレータ86によって計算されたアドレスは、正規
のDMA転送のために用いられる物理アドレスよりはむ
しろ、仮想アドレスである。MMU88による物理メモ
リ20の利用可能な任意の領域に、これらの仮想アドレ
スをマップすることができる。
【0045】もしMMUのTLBがすべてのDMAを支
援するのに不十分なエントリを有するならば、TLBミ
スが発生する。このミス信号をMPUに送ることができ
る、またはDSPのMMUに関連して説明したように、
WTL92によって処理することができる、のいずれか
である。ミス信号をMPU21に送ることは、十分なエ
ントリがない時、TLBの使用を最適化するためにDM
Aドライバに対してさらに多くの制御を与える。けれど
も、このオプションはDMAに関して呼出し時間を付加
するが、しかしDMAがプロセッサと並行に動作するた
めにこのことはあまり重要ではない。TLBエントリの
置換ポリシは、DMA制御装置の場合には巡回(FIF
O)置換でなければならない。もちろんこれは、DMA
制御装置によってロジカルDMAが時間的にスケジュー
ルされる方法に関する。
【0046】MMUハードウエア・ブロックは、WTL
および許可検査を除去することにより、そしてそれらを
単純なDMA MMU Fault It割り込み信号
(図1を見よ)で置き換えることにより、DMAブロッ
クの場合にさらに単純化することができる。この変換の
妥当性は、DMAプログラミングの期間中、関連するD
MAソフトウエアにより常に保証される。
【0047】図8は、リセットの後または新しいプロセ
スがDSP10で開始する前の動作を示した図である。
最初に、マスタ・プロセッシング・ユニット21は外部
メモリ20の中のDSP10を目標とするプロセスに関
連する変換テーブルを生じなければならない。このテー
ブルがいったん用意されると、マスタ・プロセッシング
・ユニット21はDSP10をリセット状態から解放す
ることができる、またはそれがメール・ボックス機構を
通してDSPで動作しているRTOSに信号することが
でき、それは新しいプロセスをスケジュールできること
をRTOSに指示する。第3段階は、DSP10のTL
B48がどのように管理されるかに応じて変わる。プロ
セッシング・ユニット21が割り込み機構を通してTL
Bローディングをまた管理している時の状況では、記述
子はプロセッシング・ユニット21によりロードされ
て、TLBの状態を更新する。TLBはそれ自身をラン
ダムにロードする時、記述子はWTL52を通して自動
的にロードされる。
【0048】システムの中のそれぞれのプロセッシング
・デバイスが仮想アドレスを物理アドレスに変換するこ
とができるMMUを有する場合の実施例について、本発
明を説明してきた。けれども、もしシステムの中の1個
または複数個のデバイスが仮想アドレス・物理アドレス
変換を有しなくても、統一メモリ管理システムは、アク
セス許可および他の技術を用いて、これらのデバイスに
よって共有メモリへのアクセスを制御することができる
であろう。
【0049】本発明により、先行技術を越える重要な利
点が得られる。論理・物理アドレス変換および/または
外部プロセッシング・ユニットを用いたアクセス許可の
制御でもって、オペレーティング・システムは多重プロ
セッシング・デバイスが共有メモリ・スペースを利用す
ることを可能にし、そして多重プロセッサ・システムの
中の1個または複数個のDSP、コプロセッサおよびプ
ロセッシング・ユニットをさらに効果的に制御すること
ができる。
【0050】例示された実施例について本発明が詳細に
説明されたけれども、これらの実施例を種々に変更した
実施例およびまた別の実施例が可能であることは当業者
には理解されるであろう。本発明は、本発明の範囲内に
入る変更実施例およびその他の実施例をすべて包含して
いる。
【0051】以上の説明に関して更に以下の項を開示す
る。 (1) 共有メモリと、前記共有メモリへのアクセスを
制御するためのそれぞれのメモリ管理ユニットを有する
複数個のプロセッシング・デバイスと、前記メモリ管理
ユニットによって前記共有メモリへのアクセスを制御す
るための世界的な統一メモリ管理システムと、を有する
多重プロセッサ・プロセッシング・システム。 (2) 第1項に記載されたプロセッシング・システム
において、1個または複数個の前記メモリ管理ユニット
が仮想アドレスを対応する物理アドレスに変換する前記
プロセッシング・システム。 (3) 第1項に記載されたプロセッシング・システム
において、1個または複数個の前記メモリ管理ユニット
がプロセッシング・コアから物理アドレスを受け取りお
よび前記統一メモリ管理システムが前記物理アドレスに
関するアクセス許可検査を実行する前記プロセッシング
・システム。 (4) 第1項〜第3項のいずれかに記載されたプロセ
ッシング・システムにおいて、仮想アドレスを対応する
物理アドレスに変換するために前記メモリ管理ユニット
によってアクセスすることができる変換テーブルを前記
共有メモリが有する前記プロセッシング・システム。 (5) 第4項に記載されたプロセッシング・システム
において、前記統一メモリ管理システムがそれぞれのメ
モリ管理ユニットによって前記変換テーブルへのアクセ
スを制御することができる前記プロセッシング・システ
ム。 (6) 第1項〜第3項のいずれかまたは第5項に記載
されたプロセッシング・システムにおいて、前記プロセ
ッシング・デバイスが1個または複数個のマイクロプロ
セッサを有する前記プロセッシング・システム。 (7) 第6項に記載されたプロセッシング・システム
において、1個または複数個の前記プロセッシング・デ
バイスが他の前記プロセッシング・デバイスのメモリ管
理ユニットを制御する前記プロセッシング・システム。 (8) 第1項〜第3項のいずれかまたは第5項または
第7項に記載されたプロセッシング・システムにおい
て、前記プロセッシング・デバイスが1個または複数個
のディジタル信号プロセッサを有する前記プロセッシン
グ・システム。 (9) 第1項〜第3項のいずれかまたは第5項または
第7項に記載されたプロセッシング・システムにおい
て、前記プロセッシング・デバイスが1個または複数個
のコプロセッサを有する前記プロセッシング・システ
ム。 (10) 第1項〜第3項のいずれかまたは第5項また
は第7項に記載されたプロセッシング・システムにおい
て、前記プロセッシング・デバイスが1個または複数個
のDMAチヤンネルを有する前記プロセッシング・シス
テム。
【0052】(11) 共有メモリを備える段階と、前
記共有メモリへのアクセスを制御するためのそれぞれの
メモリ管理ユニットを有する複数個のプロセッシング・
デバイスを備える段階と、統一メモリ管理システムを通
して前記メモリ管理ユニットによって前記共有メモリへ
のアクセスを制御する段階と、を有する多重プロセッシ
ング・システムを動作させる方法。 (12) 第11項に記載された方法において、複数個
のプロセッシング・デバイスを備える前記段階が仮想ア
ドレスを対応する物理アドレスに変換するメモリ管理ユ
ニットを有する1個または複数個のプロセッシング・デ
バイスを備える段階を有する前記方法。 (13) 第11項に記載された方法において、プロセ
ッシング・コアから物理アドレスを受け取りそして前記
統一メモリ管理システムが前記物理アドレスに関するア
クセス許可検査を実行するメモリ管理ユニットを有する
1個または複数個のプロセッシング・デバイスを備える
段階を複数個のプロセッシング・デバイスを備える前記
段階が有する前記方法。 (14) 第11項に記載された方法において、仮想ア
ドレスを対応する物理アドレスに変換するために前記メ
モリ管理ユニットによってアクセスすることができる変
換テーブルを前記共有メモリが有しおよび前記統一メモ
リ管理システムが前記変換テーブルへのアクセスを制御
する前記方法。 (15) 第11項〜第14項のいずれかに記載された
方法において、プロセッシング・デバイスを備える前記
段階が1個または複数個のマイクロプロセッサを備える
段階を有する前記方法。 (16) 第15項に記載された方法において、プロセ
ッシング・デバイスを備える前記段階が1個または複数
個のディジタル信号プロセッサを備える段階を有する前
記方法。 (17) 第15項に記載された方法において、プロセ
ッシング・デバイスを備える前記段階が1個または複数
個のコプロセッサを備える段階を有する前記方法。 (18) 第15項に記載された方法において、プロセ
ッシング・デバイスを備える前記段階が1個または複数
個のDMAチヤンネルを備える段階を有する前記方法。
【0053】(19) 多重プロセッサ・システム
(8)は、DSP(10)と、プロセッサ・ユニット
(MPU)(21)と、コプロセッサ(30)と、DM
Aチヤンネル(31)とを備えた、多重プロセッシング
・デバイスを有する。いくつかのデバイスは、外部共有
メモリ(20)にマップされた大きな仮想アドレス・ス
ペースでもってデバイス(10、21、30、31)が
動作することを可能にするMMU(19、32)を有す
ることができる。MMU(19、32)は、外部共有メ
モリ(20)に関連する物理アドレスと仮想アドレスと
の間の変換を実行することができる。共有メモリ(2
0)へのアクセスは、統一メモリ管理システムを用いて
制御される。
【図面の簡単な説明】
【図1a】外部主メモリに結合されたDSP、MPUお
よびコプロセッサのブロック線図。
【図1b】異なるデバイスと共有メモリとの間のメモリ
・マッピングの図。
【図2】図1aのDSPのブロック線図。
【図3】図2のDSPに対する異なるバス用法を示す図
表。
【図4】図2のDSPに対するプログラムおよびデータ
・スペースの図。
【図5】MMUのブロック線図。
【図6】MMUのセクションに対するウオーキング・テ
ーブル論理の動作を示した図。
【図7】DMAチヤンネル・ドライバを示した図。
【図8】DSPに対する初期化の流れを示した図。
【符号の説明】
10 DSP 20 外部共有メモリ 21 プロセッサ・ユニット(MPU) 30 コプロセッサ 31 DMAチヤンネル 19、32 MMU
フロントページの続き (72)発明者 セルジュ ラッセール フランス国 フレジュー、セント ジャン ドゥ カネス、 リュー デュ マルサ ウ 278 (72)発明者 ドミニク ベノイト ジャクエス デ イ ンベルノ フランス国 ビルヌーブ ルーベッタ、シ ュマン デ バッセス ジネスティエレス 47

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 共有メモリと、 前記共有メモリへのアクセスを制御するためのそれぞれ
    のメモリ管理ユニットを有する複数個のプロセッシング
    ・デバイスと、 前記メモリ管理ユニットによって前記共有メモリへのア
    クセスを制御するための世界的統一メモリ管理システム
    と、を有する多重プロセッサ・プロセッシング・システ
    ム。
  2. 【請求項2】 共有メモリを備える段階と、 前記共有メモリへのアクセスを制御するためのそれぞれ
    のメモリ管理ユニットを有する複数個のプロセッシング
    ・デバイスを備える段階と、 統一メモリ管理システムを通して前記メモリ管理ユニッ
    トによって前記共有メモリへのアクセスを制御する段階
    と、を有する多重プロセッシング・システムを動作させ
    る方法。
JP2000207122A 1999-07-08 2000-07-07 多重プロセッサ多成分アーキテクチャのための統一メモリ管理システム Pending JP2001051958A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP99401721.8 1999-07-08
EP19990401721 EP1067461B1 (en) 1999-07-08 1999-07-08 Unified memory management system for multi process heterogeneous architecture

Publications (1)

Publication Number Publication Date
JP2001051958A true JP2001051958A (ja) 2001-02-23

Family

ID=8242045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000207122A Pending JP2001051958A (ja) 1999-07-08 2000-07-07 多重プロセッサ多成分アーキテクチャのための統一メモリ管理システム

Country Status (2)

Country Link
EP (1) EP1067461B1 (ja)
JP (1) JP2001051958A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005513610A (ja) * 2001-12-14 2005-05-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 複数のプロセッサを有するデータ処理システムおよび複数のプロセッサを有するデータ処理システムにおける通信手段
JP2006216012A (ja) * 2005-02-04 2006-08-17 Arm Ltd メモリへのアクセスを制御するためのデータ処理装置および方法
JP2009032085A (ja) * 2007-07-27 2009-02-12 Panasonic Corp データ処理システム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19939763A1 (de) * 1999-08-21 2001-02-22 Philips Corp Intellectual Pty Multiprozessorsystem
FR2989800B1 (fr) 2012-04-18 2014-11-21 Schneider Electric Ind Sas Systeme de gestion d'applications securisees et non securisees sur un meme microcontroleur
FR2989801B1 (fr) 2012-04-18 2014-11-21 Schneider Electric Ind Sas Procede de gestion securisee d'un espace memoire pour microcontroleur
US10282100B2 (en) 2014-08-19 2019-05-07 Samsung Electronics Co., Ltd. Data management scheme in virtualized hyperscale environments
US10437479B2 (en) 2014-08-19 2019-10-08 Samsung Electronics Co., Ltd. Unified addressing and hierarchical heterogeneous storage and memory
DE102015113603B4 (de) * 2014-08-19 2024-04-04 Samsung Electronics Co., Ltd. Datenverwaltungsverfahren in virtualisierten Hyperscale-Umgebungen
CN111221465B (zh) * 2018-11-23 2023-11-17 中兴通讯股份有限公司 Dsp处理器、系统以及外部存储空间访问方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5067071A (en) 1985-02-27 1991-11-19 Encore Computer Corporation Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus
EP0374338B1 (en) * 1988-12-23 1995-02-22 International Business Machines Corporation Shared intelligent memory for the interconnection of distributed micro processors
US5043874A (en) * 1989-02-03 1991-08-27 Digital Equipment Corporation Memory configuration for use with means for interfacing a system control unit for a multi-processor system with the system main memory
US5771345A (en) * 1996-04-25 1998-06-23 Tektronix, Inc. Integrated digital processing device and method for examining the operation thereof

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005513610A (ja) * 2001-12-14 2005-05-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 複数のプロセッサを有するデータ処理システムおよび複数のプロセッサを有するデータ処理システムにおける通信手段
JP2006216012A (ja) * 2005-02-04 2006-08-17 Arm Ltd メモリへのアクセスを制御するためのデータ処理装置および方法
US7949835B2 (en) 2005-02-04 2011-05-24 Arm Limited Data processing apparatus and method for controlling access to memory
JP2009032085A (ja) * 2007-07-27 2009-02-12 Panasonic Corp データ処理システム

Also Published As

Publication number Publication date
EP1067461A1 (en) 2001-01-10
EP1067461B1 (en) 2013-04-24

Similar Documents

Publication Publication Date Title
US7509391B1 (en) Unified memory management system for multi processor heterogeneous architecture
US20210374069A1 (en) Method, system, and apparatus for page sizing extension
EP2090987B1 (en) Cache pooling for computing systems
US6742104B2 (en) Master/slave processing system with shared translation lookaside buffer
US6789156B1 (en) Content-based, transparent sharing of memory units
US5123094A (en) Interprocessor communications includes second CPU designating memory locations assigned to first CPU and writing their addresses into registers
EP1805629B1 (en) System and method for virtualization of processor resources
JP3264319B2 (ja) バスブリッジ
JPH0816479A (ja) メモリ・アドレス空間管理
JPH0887451A (ja) アドレス変換を管理する方法およびアドレス変換マネージャ
JP2001517829A (ja) 仮想記憶システムにおいてアプリケーションプログラムによってコードまたはデータをグループに分類して、物理メモリの割り振りの制御を行うアプリケーション・プログラミング・インターフェイス
JPH06231043A (ja) 仮想記憶システムにおけるデータ転送装置及びその方法
US10073644B2 (en) Electronic apparatus including memory modules that can operate in either memory mode or storage mode
US6742103B2 (en) Processing system with shared translation lookaside buffer
EP1139222A1 (en) Prefetch for TLB cache
EP1067461B1 (en) Unified memory management system for multi process heterogeneous architecture
US7389398B2 (en) Methods and apparatus for data transfer between partitions in a computer system
US20080065855A1 (en) DMAC Address Translation Miss Handling Mechanism
US20040117591A1 (en) Data processing system having no system memory
US20050055528A1 (en) Data processing system having a physically addressed cache of disk memory
US20040117590A1 (en) Aliasing support for a data processing system having no system memory
Pose Capability based, tightly coupled multiprocessor hardware to support a persistent global virtual memory
JP2823038B2 (ja) 論理ダイレクトメモリアクセス方式
EP1262875A1 (en) Master/slave processing system with shared translation lookaside buffer
Lange et al. Low-latency high-bandwidth hw/sw communication in a virtual memory environment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080219

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080519

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080522

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080619

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080722

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090803