JPH0652092A - Dma転送方式 - Google Patents

Dma転送方式

Info

Publication number
JPH0652092A
JPH0652092A JP20169092A JP20169092A JPH0652092A JP H0652092 A JPH0652092 A JP H0652092A JP 20169092 A JP20169092 A JP 20169092A JP 20169092 A JP20169092 A JP 20169092A JP H0652092 A JPH0652092 A JP H0652092A
Authority
JP
Japan
Prior art keywords
dma
address
bank
transfer
memory
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.)
Withdrawn
Application number
JP20169092A
Other languages
English (en)
Inventor
Toyonori Ishida
豊範 石田
Yoshitoku Hirai
良徳 平井
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.)
NEC Platforms Ltd
NEC Corp
Original Assignee
NEC Corp
NEC AccessTechnica 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 NEC Corp, NEC AccessTechnica Ltd filed Critical NEC Corp
Priority to JP20169092A priority Critical patent/JPH0652092A/ja
Publication of JPH0652092A publication Critical patent/JPH0652092A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】同一アドレス上に多重マッピングされたバンク
メモリの、異なったバンクにまたがるような任意の領域
に対して、DMA転送を可能とする。 【構成】バンクメモリ11のアドレス構成を連続アドレ
スとし、このバンクメモリに供給するアドレスは、CP
Uアクセス時は、バンクレジスタ4に設定されたバンク
番号を、アドレス変換部5で連続アドレスに変換したも
のを供給し、DMA時は、その連続アドレスを別に設け
たDMAアドレス発生部6で発生させ、供給する。DM
A転送開始アドレスは、予めDMAアドレス発生部6に
CPU1から設定し、DMAサイクル毎にインクリメン
トまたは、デクリメントさせることで、バンクメモリの
任意のアドレスに対してもバンク番号に関係なくDMA
転送が可能となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はDMA転送方式に関し、
特に同一アドレス上に多重マッピングされたバンクメモ
リのDMA転送方式に関する。
【0002】
【従来の技術】従来、この種のDMA転送方式は、同一
アドレス上に多重マッピングされたバンクメモリにおけ
る、DMA転送は、予めプログラムにより目的の転送領
域が位置するバンク番号を指定して、バンクメモリを目
的のバンク番号に固定してからDMA転送を行ってい
る。また、転送領域のバンク番号を変更する場合は、同
じくプログラムにより目的のバンク番号を指定してから
DMA転送を行っている。このように、バンク番号の変
更は、常にCPU(MPUでも良い)が介在して行って
いる。
【0003】
【発明が解決しようとする課題】上述した従来のDMA
転送方式では、同一アドレス上に多重マッピングされた
バンクメモリのDMA転送できる領域は、CPUで指定
したバンク番号の領域しか転送できない。このため、D
MAの転送領域を同一バンクではない任意の領域例え
ば、異なるバンク間または、異なるバンクにまたがる領
域に取ろうとした場合、DMA転送ができないという問
題がある。
【0004】
【課題を解決するための手段】本発明のDMA転送方式
は、同一アドレス上に多重マッピングされたバンクメモ
リと、このバンクメモリの複数のバンクの1つを選択す
るためのバンク番号設定部と、このバンク番号設定部に
設定されたバンク番号に対応するバンクメモリアドレス
を変換し発生するアドレス変換部と、DMA(ダイレク
トメモリアクセス)の転送制御を行うDMAコントロー
ラと、予めDMAの開始アドレスを設定しDMA転送ア
ドレスを発生するDMAアドレス発生部と、前記バンク
メモリへのDMA転送を検出するDMA検出手段と、前
記DMA検出手段の出力信号により前記バンクメモリへ
供給するアドレスを前記アドレス変換部側から前記DM
Aアドレス発生部側へ切り換えるアドレス選択部と、前
記バンクメモリに対するアクセス信号を発生するアクセ
ス信号発生部とを備えている。
【0005】
【実施例】次に、本発明の一実施例について図面を参照
して説明する。
【0006】図1は、本発明のDMA転送方式の一実施
例を示すブロック図である。CPU1と、DMAコント
ローラ2と、I/Oデバイス3と、バンクレジスタ4
と、アドレス変換部5と、DMAアドレス発生部6と、
ステータスデコーダ7と、アドレス選択部8と、ドレス
デコーダ9と、アクセス信号発生部10と、バンクメモ
リ11より構成される。
【0007】I/Oデバイス3はDMAによるデータ転
送機能を持つI/Oデバイスである。バンクレジスタ4
は、通常CPUがアクセスするバンクメモリ番号を設定
するものであり、この設定はCPU1により行う。アド
レス変換部5は、バンクレジスタ4に設定されたバンク
番号をバンクメモリのアドレスに合うように連続アドレ
スに変換する。
【0008】DMAアドレス発生部6は、DMA転送に
おけるバンクメモリの転送元と転送先の開始アドレスを
予め設定し、DMAのリード、ライトサイクル毎にその
アドレス値をインクリメントまたはデクリメントさせる
アドレスカウンターである。そして、この値をDMAの
バンクメモリアドレスとしてバンクメモリ11に供給す
る。この開始アドレスと、アドレスのインクリメント、
デクリメントの設定は、CPU1により行う。ステータ
スデコーダ7は、CPU1からのアクセスや、DMAの
メモリ−メモリ転送、I/Oデバイス3とメモリとの転
送、そしてDMAのリード、ライト等を検出し、それを
DMAアドレス発生部6と、アドレス選択部8と、アク
セス信号発生部10へ知らせるものである。
【0009】アドレス選択部8は、ステータスデコーダ
7からくる信号をもとにバンクメモリ11へ供給するア
ドレスを選択するものである。アドレス変換部5と、D
MAアドレス発生部6の転送元或は、転送先のうち一つ
を選択する。アドレスデコーダ9は、CPU1もしく
は、DMAコントローラ2からのアクセスが、バンクメ
モリに対するものであることを検出し、それをアクセス
信号発生部10に入力する。アクセス信号発生部10
は、バンクメモリに対するアクセスが発生した時に、ス
テータスデコーダ7と、制御バスからの入力信号から、
バンクメモリへのアクセス信号を発生する。
【0010】バンクメモリ11は、CPUから見た場合
は、同一アドレス上に多重マッピングされたバンク構成
のメモリとして、DMAの場合は、連続したアドレス構
成のメモリとしてアクセス可能なメモリである。図2
は、図1のアドレス変換部の変換方法を示すアドレスマ
ップ図である。例えば、1メガバイトのメモリアドレス
空間を持つCPUに対して、メモリが3メガバイトある
システムでは、CPU側からメモリを見た場合、図2の
左に示すように、アドレスの000000(H) 〜FFFFF(H)の1
メガバイトの空間に3枚のバンクメモリがあるように見
える。しかし、実際のメモリのアドレスは、図2の右に
示すように000000(H) 〜2FFFFF(H) の連続したアドレス
である。よって、CPUからのアクセスは、指定された
バンク番号をその連続したアドレスに変換して行う。
【0011】図3は、図1におけるバンクメモリ領域で
のDMAのメモリ−メモリ転送開始動作を示すフローチ
ャートである。まず、ステップ31でDMAを実行する
転送元と転送先の開始アドレスを、予めCPU1よりD
MAアドレス発生部6に設定する。このDMAアドレス
発生部6に設定するアドレスは、図2の右に示す連続ア
ドレスであり、任意の値が設定可能である。
【0012】そして、ステップ32でDMAコントロー
ラ2に対して、データレングスや転送開始アドレス等を
設定する。この時DMAコントローラ2に設定する転送
元と転送先の開始アドレスは意味を持たない。それは、
DMA転送アドレスとして、前述のDMAアドレス発生
部6に設定したアドレスを使用するからである。しか
し、システムによってはこのDMAコントローラ2から
発生するアドレスが、バンクメモリ以外のメモリ等に影
響することも考えられるため、ここで設定する値は、バ
ンクメモリ領域の任意のアドレスに固定しておく。そし
て、ステップ33でDMA転送を起動する。
【0013】次に、このDMA転送方式の動作について
述べる。通常CPUがバンクメモリをアクセスする場合
は、バンクメモリ11の目的とするバンク番号をプログ
ラムによりバンクレジスタ4に設定してからアクセスを
行う。バンクレジスタ4に設定されたバンク番号データ
は、アドレス変換部5に入力される。入力されたデータ
は、実際のバンクメモリアドレスに変換されアドレス選
択部8へ入力される。そして、ステータスデコーダ7
で、実行中のアクセスサイクルが、DMA以外のアクセ
スであることを検出すると、このアドレス選択部8は、
アドレス変換部5が示すアドレスを選択し、バンクメモ
リにそのアドレスを入力する。
【0014】アクセス信号発生部10は、アドレスデコ
ーダ9で、バンクメモリ11に対するアクセスであるこ
とを検出したところで、入力されるバス制御信号から、
バンクメモリに、リードまたはライトのアクセス信号を
発生してCPUからのアクセスが完了する。次に、バン
クメモリのDMA転送のメモリ−メモリ転送を行う場合
の説明をする。図3のフローチャートに沿ってDMAを
起動する。CPU1からDMAの起動要求がDMAコン
トローラ2へ出されると、DMAコントローラ2からC
PU1へバスの引渡し要求が出される。CPU1からD
MAコントローラ2へバスの引渡し了解信号が返される
と、バスの占有権がDMAコントローラ2に移る。そし
て、ここからDMA転送が開始される。
【0015】DMA転送が開始されるとステータスデコ
ーダ7は、CPU1からDMAコントローラ2へ出され
るバスの引渡し了解信号が“ON”となっていること
で、実行中のサイクルがDMA転送サイクルであること
を検出し、そして、DMAコントローラ2からI/Oデ
バイス3へ出されるDMA許可信号が“OFF”となっ
ていることで、DMAのメモリ−メモリ転送であること
を検出する。さらに、制御バス入力からリード転送かラ
イト転送かを検出する。
【0016】ステータスデコーダ7で、メモリに対する
DMA転送が検出されたら、アドレス選択部8は、バン
クメモリ11に供給するアドレスを、アドレス変換部5
側からDMAアドレス発生部6側へ切り換え、更にその
サイクルがDMAリードかDMAライトかによって、D
MAバンクアドレス発生部6の転送元アドレスか転送先
アドレスかを切り換える。DMAのリードサイクルで
は、DMAアドレス発生部6に転送元として設定された
アドレスを、ライトサイクルでは転送先として設定され
たアドレスを、アドレス選択部8で選択しバンクメモリ
11に供給する。アドレスデコーダ9で、実行中のDM
Aサイクルが、バンクメモリ11に対するものであるこ
とを検出し、その信号がアクセス信号発生部10に入力
されると、アクセス信号発生部10は、制御バスからの
入力信号やステータスデコーダ7の入力から、バンクメ
モリ11に、リードまたは、ライトのアクセス信号を発
生し、バンクメモリのDMA転送が行われる。
【0017】DMA転送が終了すると、DMAコントロ
ーラ2からCPU1へ出されていたバスの引渡し要求が
取り下げられる。すると、CPU1からDMAコントロ
ーラ2に出されていたバスの引渡し了解信号か解除され
て、再びバスの占有権がCPU1に戻る。DMA転送が
終了したところで、アドレス選択部8は、アドレス変換
部5が示すアドレスを選択し、バンクメモリ11に供給
する。
【0018】このように、バンクメモリ番号を、通常は
バンクレジスタ4で指定したバンク番号をアドレス変換
部5で変換したアドレスを有効とし、DMA転送サイク
ルでのみDMAアドレス発生部6で生成されるアドレス
を有効にすることによって、DMAの起動を行っている
プログラムがバンクメモリ内にあり、且つそのバンク番
号が、DMA転送を行っているバンク以外のバンクメモ
リであっても、バンクレジスタ4で指定された元のプロ
グラムエリアに戻ることが出来る。
【0019】I/Oデバイス3とバンクメモリ11のD
MA転送を行なう場合は、前述のメモリ−メモリ転送の
時と同様に、まず最初にDMAを実行するバンクメモリ
領域の開始アドレスを、予めCPU1よりDMAアドレ
ス発生部6に設定する。そして、DMAコントローラ2
に対してデータレングスや、転送開始アドレスを設定す
る。この場合もDMAコントローラ2に設定する転送開
始アドレスは、他に影響しないように、バンクメモリ領
域の任意のアドレスに固定しておく。そして、I/Oデ
バイス3からDMA要求が出されることでDMAの起動
がされる。
【0020】I/Oデバイス3からDMAコントローラ
2へDMA要求が出されると、DMAコントローラ2
は、それを受けてCPU1へバスの引渡し要求を出す。
CPU1からDMAコントローラ2へバスの引渡し了解
信号が返されると、DMAコントローラ2は、I/Oデ
バイス3へDMA許可信号を返して、ここからDMA転
送が開始される。DMA転送が開始されるとステータス
デコーダ7は、CPU1からのバスの引渡し了解信号が
“ON”となっていて、また、DMAコントローラ2か
らI/Oデバイス3へのDMA許可信号が“ON”とな
っていることで、DMAのI/O−メモリ転送であるこ
とを検出する。さらに、制御バス入力からリード転送か
ライト転送かを検出する。
【0021】アドレス選択部8では、実行中のDMAサ
イクルがI/Oリード−メモリライト転送であればDM
Aアドレス発生部6の転送先アドレスを選択し、メモリ
リード−I/Oライト転送であればDMAアドレス発生
部6の転送元アドレスを選択し、バンクメモリ11へ供
給する。
【0022】アドレスデコーダ9で、実行中のサイクル
が、バンクメモリ11に対するものであることを検出
し、その信号がアクセス信号発生部10に入力される
と、アクセス信号発生部10は、制御バスからの入力信
号やステータスデコーダ7の入力から、バンクメモリ1
1に、リードまたは、ライトのアクセス信号を発生す
る。I/Oへのアクセスは、DMAコントローラ2から
出される制御バス信号のI/Oリードや、I/Oライト
信号により行なわれる。
【0023】全てのデータ転送が終了するか、DMAコ
ントローラ2がI/Oデバイス3に対してDMA許可信
号を解除する等して、DMA転送が終了すると、DMA
コントローラ2から出されていたバスの引渡し要求が取
り下げられる。以降は前述のメモリ−メモリ転送の時と
同じである。
【0024】
【発明の効果】以上説明したように本発明は、複数のバ
ンクメモリを連続アドレスとし、DMA時には、任意の
アドレスを別のアドレス発生部で生成、発生させること
により、バンクメモリのDMA転送領域が異なるバンク
間または、異なるバンクにまたがる領域でも、DMA転
送ができる効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例を示すブロック図である。
【図2】図1におけるアドレス変換部の変換方法を示す
アドレスマップ図である。
【図3】図1におけるバンクメモリ領域でのDMAのメ
モリ−メモリ転送開始動作を示すフローチャートであ
る。
【符号の説明】
1 CPU 2 DMAコントローラ 3 I/Oデバイス 4 バンクレジスタ 5 アドレス変換部 6 DMAアドレス発生部 7 ステータスデコーダ 8 アドレス選択部 9 アドレスデコーダ 10 アクセス信号発生部 11 バンクメモリ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 同一アドレス上に多重マッピングされた
    バンクメモリと、このバンクメモリの複数のバンクの1
    つを選択するためのバンク番号設定部と、このバンク番
    号設定部に設定されたバンク番号に対応するバンクメモ
    リアドレスを変換し発生するアドレス変換部と、DMA
    (ダイレクトメモリアクセス)の転送制御を行うDMA
    コントローラと、予めDMAの開始アドレスを設定しD
    MA転送アドレスを発生するDMAアドレス発生部と、
    前記バンクメモリへのDMA転送を検出するDMA検出
    手段と、前記DMA検出手段の出力信号により前記バン
    クメモリへ供給するアドレスを前記アドレス変換部側か
    ら前記DMAアドレス発生部側へ切り換えるアドレス選
    択部と、前記バンクメモリに対するアクセス信号を発生
    するアクセス信号発生部とを備えることを特徴とするD
    MA転送方式。
JP20169092A 1992-07-29 1992-07-29 Dma転送方式 Withdrawn JPH0652092A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20169092A JPH0652092A (ja) 1992-07-29 1992-07-29 Dma転送方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20169092A JPH0652092A (ja) 1992-07-29 1992-07-29 Dma転送方式

Publications (1)

Publication Number Publication Date
JPH0652092A true JPH0652092A (ja) 1994-02-25

Family

ID=16445293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20169092A Withdrawn JPH0652092A (ja) 1992-07-29 1992-07-29 Dma転送方式

Country Status (1)

Country Link
JP (1) JPH0652092A (ja)

Similar Documents

Publication Publication Date Title
JP2001522492A (ja) メモリアクセス保護装置
US5325513A (en) Apparatus for selectively accessing different memory types by storing memory correlation information in preprocessing mode and using the information in processing mode
EP0602807A2 (en) Cache memory systems
US5890220A (en) Address conversion apparatus accessible to both I/O devices and processor and having a reduced number of index buffers
US5339402A (en) System for connecting an IC memory card to a central processing unit of a computer
JP2001043180A (ja) マイクロプロセッサおよびそのための記憶装置
US20060206685A1 (en) Lookahead control method
JPH0652092A (ja) Dma転送方式
JP2009536392A (ja) プログラマブルデータ処理回路
JPH05313999A (ja) メモリ制御装置
JPH0246970B2 (ja) Memorikakuchohoshiki
JPH11184761A (ja) リードモディファイライト制御システム
JPH07114496A (ja) 共有メモリ制御回路
JP3131918B2 (ja) メモリ装置
JPS5856885B2 (ja) アドレス制御方式
JP2508049B2 (ja) I/oアドレス変換方式
JP2692180B2 (ja) マイクロコンピュータ
JP2591785B2 (ja) コンピュータ装置
JPH0436852A (ja) Dma制御装置
JP2000276399A (ja) アドレス制御方式
JPH05233435A (ja) メモリ制御装置
JPS61150050A (ja) メモリマツピング方式
JPH08115292A (ja) インタフェースボード及び命令処理装置
JPH06314231A (ja) 共用メモリアクセス制御方法
JPH11184798A (ja) データ通信装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19991005