JPH04308953A - 仮想アドレス計算機装置 - Google Patents

仮想アドレス計算機装置

Info

Publication number
JPH04308953A
JPH04308953A JP3100309A JP10030991A JPH04308953A JP H04308953 A JPH04308953 A JP H04308953A JP 3100309 A JP3100309 A JP 3100309A JP 10030991 A JP10030991 A JP 10030991A JP H04308953 A JPH04308953 A JP H04308953A
Authority
JP
Japan
Prior art keywords
address
dma
virtual address
virtual
physical
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
JP3100309A
Other languages
English (en)
Inventor
Shinji Shigemura
慎二 重村
Masami Masuki
正己 益城
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.)
Kyocera Corp
Original Assignee
Kyocera Corp
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 Kyocera Corp filed Critical Kyocera Corp
Priority to JP3100309A priority Critical patent/JPH04308953A/ja
Publication of JPH04308953A publication Critical patent/JPH04308953A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は仮想記憶方式を用いた計
算機装置、さらに詳しくいえば、当該装置におけるDM
A(ダイレクト・メモリ・アクセス)転送を実行するD
MAコントローラに関する。
【0002】
【従来の技術】仮想記憶方式を用いた計算機装置におい
てDMA転送を実行する場合、従来はつぎのような方式
があった。 (1)DMAコントローラにアドレス情報を設定する際
、予めソフトウェアにより仮想アドレスを物理アドレス
に変換し、その値を設定するもの。 (2)また、他の方式としてDMAコントローラにはソ
フトウェアで仮想アドレスを物理アドレスに変換しない
でそのまま仮想アドレスをDMA転送先(元)アドレス
として設定する。そしてDMAは仮想アドレスを物理ア
ドレスに変換しながら転送を実行し、その際、仮想アド
レスから物理アドレスへの変換は中央処理装置が使用し
ているMMU(メモリマネッジメントユニット)を共有
するもの。
【0003】
【発明が解決しようとする課題】しかしながら、前者は
仮想アドレスから物理アドレスへの変換をソフトウェア
で行っているのでソフトウェアへの負担が大きく装置全
体の能力低下を招くという欠点があった。仮想アドレス
方式は例えばページ単位で仮想アドレスと物理アドレス
との対応を採るものは1回の最大のDMA転送量は最小
ページ単位以下に設定されている。そのためソフトウェ
アによりアドレス変換された物理アドレスがページの境
界を越える場合にはソフトウェアは新たにアドレスを設
定しなければならず、かかる場合にはソフトウェアの負
担は益々増加することになる。一方、後者は前者の問題
は解決できるがMMUを共有しているためDMA転送時
は中央処理装置は他の動作ができなくなる。また、MM
U内のTLB(トランスルックアヘッドバッファ)も書
替わり、キャッシュ機能においてはキャッシュ情報が乱
される。さらに複数のDMAコントロールがMMUを使
用することになるので、競合を回避するための調停回路
が必要となる。
【0004】また、前後者はともにDMA転送において
、すべての時間システムバスを占有する方式である。 そのため、例えば高速バスを構築した場合でもDMA転
送先(元)が速度の遅い装置のときは高速バスの占有さ
れる時間は速度の遅い装置に左右されるので、高速バス
の機能を充分引き出すことができないという欠点があっ
た。本発明の目的は上記各欠点を解決するもので、ソフ
トウェアの負担を軽減化するとともにダイレクトメモリ
アクセス転送時、並行して中央処理装置のキャッシュメ
モリ機能実施を可能とし、さらにメインバスの占有時間
の短縮化およびDMAコントローラの効率的使用を実現
した仮想アドレス計算機装置を提供することにある。
【0005】
【課題を解決するための手段】前記目的を達成するため
に本発明による仮想アドレス計算機装置は少なくとも中
央処理装置と、キャッシュメモリと、仮想アドレスを物
理アドレスに変換するメモリ管理装置を有する仮想アド
レス計算機装置において、メインバスに、仮想アドレス
を物理アドレスに変換する第2のメモリ管理部を設けた
DMAコントローラを1以上接続し、かつ、前記1以上
のDMAコントローラを、メインバスとのバッファを行
うバッファ手段を介してローカルバスに接続することに
より、前記1以上のDMAコントローラはそれぞれ個別
に設けた第2のメモリ管理部を使用してDMA制御を行
い、前記DMA制御中、前記中央処理装置は前記メモリ
管理装置を用いてキャッシュ機能を実現できることを特
徴とするように構成されている。また、DMAによるデ
ータ転送を行う際に用いる、仮想アドレスを物理アドレ
スに変換するメモリ管理部は、仮想ページバッファおよ
び物理ページバッファを有する物理アドレス生成手段と
、仮想アドレスが前記仮想ページバッファの内容の境界
を越えているか否かを検出する検出手段と、前記検出手
段出力に基づき前記物理アドレス生成手段の物理ページ
バッファの内容と仮想アドレスの一部を加えて物理アド
レスを生成させるアドレス変換手段を備えたことを特徴
とするように構成されている。
【0006】
【実施例】以下、図面等を参照して本発明をさらに詳し
く説明する。図1は本発明による仮想アドレス計算機装
置の実施例を示す回路ブロック図である。高速のメイン
バス9には中央処理装置用MMU3を介して中央処理装
置1およびキャッシュメモリ2が接続されている。また
、メモリ14ならびに複数のDMAコントローラ4,1
1および12が接続されている。DMAコントローラ4
,11および12はそれぞれ同じ回路で構成されている
ので、DMAコントローラ4を代表して説明する。
【0007】DMAコントローラ4は仮想アドレスを物
理アドレスに変換するメモリ管理部5,変換された物理
アドレスに連続してアクセスして転送制御を行う仮想ア
ドレスDMAコントロール部6およびメインバス9とロ
ーカルバス10との間で転送されるデータの速度を調整
するためのメイン・ローカルバスバッファ7から構成さ
れている。ローカルバス10にはDMA転送先(元)装
置8が接続されている。中央処理装置1は図示しない記
録媒体から読み出された仮想アドレスを中央処理装置用
MMU3に送り、仮想アドレスを物理アドレスに変換す
る。キャッシュメモリ2にアクセスすべき実行プログラ
ムが存在し、ヒットするとその実行プログラムが読み出
され、実行される。また、アクセスすべき実行プログラ
ムがキャッシュメモリ2に存在しない場合にはメモリ1
4より対応の実行プログラムを読み出してくることにな
る。
【0008】中央処理装置1はDMA転送を行う場合は
、仮想アドレスをDMAコントローラ4に送出し、後の
処理をDMAコントローラ4に渡す。DMAコントロー
ラ4のメモリ管理部5は送られてきた仮想アドレスを物
理アドレスに変換し、仮想アドレスDMAコントロール
部6でメインバス9上のデータをメイン・ローカルバス
バッファ7に格納する。メイン・ローカルバスバッファ
7に格納されたデータはローカルバス10に読み出され
、DMA転送先(元)装置8に転送される。このDMA
転送時、中央処理装置1はDMAコントローラ4に処理
を渡しており、DMA転送のアドレス変換はDMAコン
トローラ4内のメモリ管理部5が行っているので、中央
処理装置用MMU3は解放されている。したがって、こ
の期間中、中央処理装置1はMMU3を用いてキャッシ
ャ機能を実行することができる。また、DMA転送先(
元)装置8よりメモリ14にDMA転送でデータを格納
する場合も同様に中央処理装置用MMU3は解放されて
いる。
【0009】上記DMA転送において、大量のデータを
高速で転送するメインバス9はDMA転送先(元)装置
8の応答によりその速度が制限される。しかし、DMA
転送先(元)装置8をDMAコントローラ4配下のロー
カルバス10に接続し、この中間にメイン・ローカルバ
スバッファ7を設け、DMA転送をメインバス9とメイ
ン・ローカルバスバッファ7のみの間で行っているので
、メインバス9の占有時間は大幅に削減される。
【0010】図2はメモリ管理部の実施例を示す回路ブ
ロック図である。仮想アドレスレジスタ19に仮想アド
レスが設定されることによりDMA転送が実行される。 フラグ15は仮想ページバッファ(TLB,トランスフ
ァルックアサイドバッファ)20および物理ページバッ
ファ21の内容が有効か無効かを示すものである。フラ
グ15が有効を示している場合、ソフトウェアにより仮
想アドレスレジスタ19に仮想アドレスが設定されると
、一致不一致検出回路16は仮想アドレスの上位ビット
と仮想ページバッファ20の内容とを比較する。その結
果、アドレス変換部17は一致を検出すると、仮想ペー
ジバッファ20の内容に対応する物理ページバッファ2
1の物理ページを読み出させる。この物理ページと仮想
アドレスレジスタ19に格納された仮想アドレスの下位
ビットとが加算されて物理アドレスレジスタ22に物理
アドレスが生成される。
【0011】一方、一致不一致検出回路16より不一致
信号が出力されると、アドレス変換部17は仮想アドレ
スレジスタ19の内容を仮想ページバッファ20に移し
、移した内容を元にアドレス変換テーブル18を参照す
る。そして、該当する値をアドレス変換テーブル18か
ら読出し、物理ページバッファ21に格納する。物理ペ
ージバッファ21に格納された値と仮想アドレスレジス
タ19の下部ビットとは物理アドレスレジスタ22で加
えられて物理アドレスが生成される。なお、上記フラグ
15は有効を示している場合でも外部から意図的に無効
とすることができる。また、初期状態では無効になって
いる。この無効を示している場合は一致不一致検出回路
16で不一致を検出したときと同様な動作を行う。
【0012】
【発明の効果】以上、説明したように本発明による仮想
アドレス計算機装置によれば、仮想アドレスを物理アド
レスに変換する機能をソフトウェア(オペレーティング
システム)ではなくDMAコントローラに備えたメモリ
管理部によって行うのでソフトウェアの負担を軽減化で
きるとともにページ境界を越えてDMA転送が行われる
場合でもソフトウェアの介在なしに実行し続けることが
でき、仮想記憶最小ページ以上の大量一括転送を可能と
し、より一層のソフトウェアの軽減化およびDMA転送
の効率化を図ることができる。また、中央処理装置用M
MUがDMA転送時に解放されるので、中央処理装置は
DMA転送時、キャッシュメモリ機能を実施することが
可能となる。中央処理装置とDMAコントローラとはM
MUを共有しないので、TLB,キャッシュTLBの乱
れを回避できるとともに調停回路等が不要になる。さら
に低速DMA転送先(元)の高速バス占有時間の短縮化
が実現できる。
【図面の簡単な説明】
【図1】本発明による仮想アドレス計算機装置の実施例
を示す回路ブロック図である。
【図2】メモリ管理部の実施例を示す回路ブロック図で
ある。
【符号の説明】
1…中央処理装置 2…キャッシュメモリ 3…中央処理装置用MMU(メモリ管理ユニット)4…
DMA(ダイレクトメモリアクセス)コントローラ5…
DMAコントローラ用MMU(メモリ管理部)6…仮想
アドレスDMAコントロール部7…メイン・ローカルバ
スバッファ 8…DMA転送先(元)装置 9…メインバス 10…ローカルバス 14…メモリ 15…有効フラグ 16…一致不一致検出回路 17…アドレス変換部 18…アドレス変換テーブル 19…仮想アドレスレジスタ 20…仮想ページバッファ 21…物理ページバッファ 22…物理アドレスレジスタ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  少なくとも中央処理装置と、キャッシ
    ュメモリと、仮想アドレスを物理アドレスに変換するメ
    モリ管理装置を有する仮想アドレス計算機装置において
    、メインバスに、仮想アドレスを物理アドレスに変換す
    る第2のメモリ管理部を設けたDMAコントローラを1
    以上接続し、かつ、前記1以上のDMAコントローラを
    、メインバスとのバッファを行うバッファ手段を介して
    ローカルバスに接続することにより、前記1以上のDM
    Aコントローラはそれぞれ個別に設けた第2のメモリ管
    理部を使用してDMA制御を行い、前記DMA制御中、
    前記中央処理装置は前記メモリ管理装置を用いてキャッ
    シュ機能を実現できることを特徴とする仮想アドレス計
    算機装置。
  2. 【請求項2】  DMAによるデータ転送を行う際に用
    いる、仮想アドレスを物理アドレスに変換するメモリ管
    理部は、仮想ページバッファおよび物理ページバッファ
    を有する物理アドレス生成手段と、仮想アドレスが前記
    仮想ページバッファの内容の境界を越えているか否かを
    検出する検出手段と、前記検出手段出力に基づき前記物
    理アドレス生成手段の物理ページバッファの内容と仮想
    アドレスの一部を加えて物理アドレスを生成させるアド
    レス変換手段を備えたことを特徴とする仮想アドレス計
    算機装置。
JP3100309A 1991-04-05 1991-04-05 仮想アドレス計算機装置 Pending JPH04308953A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3100309A JPH04308953A (ja) 1991-04-05 1991-04-05 仮想アドレス計算機装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3100309A JPH04308953A (ja) 1991-04-05 1991-04-05 仮想アドレス計算機装置

Publications (1)

Publication Number Publication Date
JPH04308953A true JPH04308953A (ja) 1992-10-30

Family

ID=14270576

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3100309A Pending JPH04308953A (ja) 1991-04-05 1991-04-05 仮想アドレス計算機装置

Country Status (1)

Country Link
JP (1) JPH04308953A (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08263426A (ja) * 1995-03-27 1996-10-11 Nec Corp 論理ダイレクトメモリアクセス方式
JP2007272885A (ja) * 2006-03-28 2007-10-18 Internatl Business Mach Corp <Ibm> 代替ページのプールを使用してdma書込みページ障害をコンピュータにより管理するための方法、装置、及びコンピュータ・プログラム
JP2008102929A (ja) * 2006-10-17 2008-05-01 Internatl Business Mach Corp <Ibm> データ処理システム内でネットワーク入出力(i/o)アダプタと通信するためにネットワーク・デバイス・ドライバによって使用されるバッファ・データ構造にアクセスするためのアドレス変換を管理するための方法、コンピュータ・プログラム、および装置(キュー・データ構造およびキャッシュされたアドレス変換を使用してネットワーク・アダプタと通信するための装置および方法)
JP2008102928A (ja) * 2006-10-17 2008-05-01 Internatl Business Mach Corp <Ibm> データ処理システム内でデバイス・ドライバと入出力装置との間で通信するためのアドレス変換を確立するための方法、コンピュータ・プログラム、および装置(キュー・データ構造および事前変換済みアドレスを使用して入出力装置と通信するための装置および方法)
JP2008102930A (ja) * 2006-10-17 2008-05-01 Internatl Business Mach Corp <Ibm> データ処理システム内でシステム・イメージとローカルに接続された外部記憶装置との間の動作を実行するための方法、コンピュータ・プログラム、および装置(キャッシュされたアドレス変換を使用して入出力アダプタと通信するための装置および方法)
JP2008123389A (ja) * 2006-11-15 2008-05-29 Renesas Technology Corp 半導体集積回路装置
JP2009037610A (ja) * 2007-07-31 2009-02-19 Intel Corp 入出力(i/o)仮想化動作のプロセッサへのオフロード
JP2009080827A (ja) * 1995-10-06 2009-04-16 Patriot Scientific Corp マイクロプロセッサシステム
JP2013500525A (ja) * 2009-07-24 2013-01-07 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド I/oのための多重レベルアドレストランスレーションを含むi/oメモリ管理ユニット及び計算負荷軽減
JP2013500524A (ja) * 2009-07-24 2013-01-07 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド 周辺相互接続におけるi/o及び計算負荷軽減デバイスのための2レベルのアドレストランスレーションを用いるiommu
JP2016151860A (ja) * 2015-02-17 2016-08-22 富士ゼロックス株式会社 転送装置及びプログラム
JP2018526696A (ja) * 2015-07-27 2018-09-13 グーグル エルエルシー スイッチへのアドレスキャッシュ

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08263426A (ja) * 1995-03-27 1996-10-11 Nec Corp 論理ダイレクトメモリアクセス方式
JP2009080827A (ja) * 1995-10-06 2009-04-16 Patriot Scientific Corp マイクロプロセッサシステム
JP2007272885A (ja) * 2006-03-28 2007-10-18 Internatl Business Mach Corp <Ibm> 代替ページのプールを使用してdma書込みページ障害をコンピュータにより管理するための方法、装置、及びコンピュータ・プログラム
US8769168B2 (en) 2006-10-17 2014-07-01 International Business Machines Corporation Method for communicating with a network adapter using a queue data structure and cached address translations
JP2008102929A (ja) * 2006-10-17 2008-05-01 Internatl Business Mach Corp <Ibm> データ処理システム内でネットワーク入出力(i/o)アダプタと通信するためにネットワーク・デバイス・ドライバによって使用されるバッファ・データ構造にアクセスするためのアドレス変換を管理するための方法、コンピュータ・プログラム、および装置(キュー・データ構造およびキャッシュされたアドレス変換を使用してネットワーク・アダプタと通信するための装置および方法)
JP2008102928A (ja) * 2006-10-17 2008-05-01 Internatl Business Mach Corp <Ibm> データ処理システム内でデバイス・ドライバと入出力装置との間で通信するためのアドレス変換を確立するための方法、コンピュータ・プログラム、および装置(キュー・データ構造および事前変換済みアドレスを使用して入出力装置と通信するための装置および方法)
JP2008102930A (ja) * 2006-10-17 2008-05-01 Internatl Business Mach Corp <Ibm> データ処理システム内でシステム・イメージとローカルに接続された外部記憶装置との間の動作を実行するための方法、コンピュータ・プログラム、および装置(キャッシュされたアドレス変換を使用して入出力アダプタと通信するための装置および方法)
JP2008123389A (ja) * 2006-11-15 2008-05-29 Renesas Technology Corp 半導体集積回路装置
JP2009037610A (ja) * 2007-07-31 2009-02-19 Intel Corp 入出力(i/o)仮想化動作のプロセッサへのオフロード
US8250254B2 (en) 2007-07-31 2012-08-21 Intel Corporation Offloading input/output (I/O) virtualization operations to a processor
JP2013500525A (ja) * 2009-07-24 2013-01-07 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド I/oのための多重レベルアドレストランスレーションを含むi/oメモリ管理ユニット及び計算負荷軽減
JP2013500524A (ja) * 2009-07-24 2013-01-07 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド 周辺相互接続におけるi/o及び計算負荷軽減デバイスのための2レベルのアドレストランスレーションを用いるiommu
JP2016151860A (ja) * 2015-02-17 2016-08-22 富士ゼロックス株式会社 転送装置及びプログラム
JP2018526696A (ja) * 2015-07-27 2018-09-13 グーグル エルエルシー スイッチへのアドレスキャッシュ

Similar Documents

Publication Publication Date Title
JP4562919B2 (ja) ダイナミック・ディスプレイ・メモリを実装するための方法および装置
US4386402A (en) Computer with dual vat buffers for accessing a common memory shared by a cache and a processor interrupt stack
JPS61141055A (ja) 情報処理装置のアドレス変換方式
JPH0137773B2 (ja)
US5749093A (en) Enhanced information processing system using cache memory indication during DMA accessing
JPH04308953A (ja) 仮想アドレス計算機装置
US5440708A (en) Microprocessor and storage management system having said microprocessor
KR920010446A (ko) 고속 페이지 모드 선택을 위한 방법 및 장치
JP3447588B2 (ja) メモリ管理装置、方法及びプログラムを記憶した記憶媒体
JP2503702B2 (ja) アドレス変換装置
JPS59173828A (ja) デ−タ処理システム
JPH0581133A (ja) 情報処理装置
JP2010244165A (ja) 半導体集積回路、及び半導体集積回路の制御方法
JPS63245743A (ja) メモリアクセス方式
JPH01226056A (ja) アドレス変換回路
JPS63142416A (ja) 入出力制御方式
JPH04205535A (ja) コピーオンライト方式
JPH02101552A (ja) アドレス変換バッファ処理方式
JPH04358242A (ja) アドレス変換装置およびアドレス変換方法
JPH03218546A (ja) アドレス変換機構
JPH0612363A (ja) メモリ制御装置およびマルチプロセッサシステム
JPS62172451A (ja) デ−タ処理装置
JPS608971A (ja) 中央処理装置
JPH05274214A (ja) 情報記憶装置
JPH04352047A (ja) アドレス変換制御方法および装置