Nothing Special   »   [go: up one dir, main page]

JP3496942B2 - Memory access method - Google Patents

Memory access method

Info

Publication number
JP3496942B2
JP3496942B2 JP00835291A JP835291A JP3496942B2 JP 3496942 B2 JP3496942 B2 JP 3496942B2 JP 00835291 A JP00835291 A JP 00835291A JP 835291 A JP835291 A JP 835291A JP 3496942 B2 JP3496942 B2 JP 3496942B2
Authority
JP
Japan
Prior art keywords
memory
address
mpu
register
access
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.)
Expired - Fee Related
Application number
JP00835291A
Other languages
Japanese (ja)
Other versions
JPH05265926A (en
Inventor
豊 駒込
修 木村
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP00835291A priority Critical patent/JP3496942B2/en
Publication of JPH05265926A publication Critical patent/JPH05265926A/en
Application granted granted Critical
Publication of JP3496942B2 publication Critical patent/JP3496942B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】本発明は、MPUがメモリ制御回
路を介してバッファメモリへアクセスするときのメモリ
アクセス方法に関する。最近の電子制御回路において、
MPUから同一のデータ・バス上にはないメモリ(例え
ばデータバッファ等)に対してMPUの周辺回路(例え
ばメモリ制御回路等)を介してアクセスする場合があ
る。本発明は、メモリ制御回路に簡単な回路を加えるこ
とにより、MPUが備えているバイト、ワード、または
ロングワード単位のいかなるアクセス命令においても、
オートインクリメント動作を実行し、MPUがメモリの
単一、又は連続する領域に対してアクセス処理を実行す
ることを可能とするメモリアクセス方法に関する。 【0002】 【従来の技術】図4はデータ処理システムにおける磁気
ディスク装置の制御回路構成図である。図中、11は上
位側のMPUであり下位MPU18の制御及び管理や上
位ホスト機器とのデータ転送の制御を行うものである。
12はROMであり2つのMPU(11,18)のプロ
グラムを格納しているメモリである。13はRAMであ
りROM12のプログラムを動作させる時に用いられる
データを格納するためのワークRAMである。 【0003】14はバッファコントローラでありデータ
バッファ16の制御を行う回路である。15は上位イン
ターファースであり上位ホストとのデータ転送を行うも
のである。16はデータ・バッファであり上位ホスト機
から送られたデータや磁気ディスク17から読みだした
データを格納する。17は磁気ディスク装置である。1
8は下位MPUであり磁気ディスク装置17の制御及び
管理を行う。19は通信制御回路であり上位MPU11
と下位MPU18間の通信を行うための制御回路であ
る。20はRAMであり下位MPU18のプログラムを
格納し、ワークRAMとしての機能を持つ。 【0004】この磁気ディスク装置制御回路では、上位
インターフェース15と磁気ディスク17とのデータ転
送の効率化を図るためにデータバッファ(RAM)16
を設けているが、図示のようにこのデータバッファ16
とMPU11とは別個のデータバス(a) と(b) に接続さ
れており、通常、MPU11から直接データバッファ1
6にアクセスすることはできない。しかし、エラー訂正
処理を実行する時や、磁気ディスク装置17からこの装
置に関するシステム情報を読み取るなどの特殊な状況の
もとでは、MPU11からデータバッファ16にアクセ
スが生じ、バッファコントローラ14を介してその処理
を実行することが要求される。 【0005】また、2つのMPU11及び18が共存し
ているが、装置起動時等に下位MPU18のワークRA
M20に対して、上位MPU11がROM12から下位
MPU18のプログラムをロードすることがある。この
場合にもMPU11とワークRAM20はデータバス
(a) とデータバス(c) に別れており、同一のデータバス
上に存在してはおらず、MPU11は通信制御回路19
を通してアクセス処理を行うことが要求される。このた
めバッファコントローラ14や通信制御回路19には、
MPUと同一のバス上に存在しないメモリ(バッファメ
モリ)に対しアクセスする時に、MPUの指定するアド
レスの領域に対し適切にアクセスがなされるように制御
するバッファメモリの制御手段(メモリ制御回路)を設
ける必要がある。 【0006】図5は従来のアドレス指定方式の一例説明
図である。本図はMPU1がバッファメモリ3に対して
メモリ制御回路2を介してアクセスする方法を説明して
いる。メモリ制御回路2内にMPU1から直接アクセス
可能で、かつメモリ制御回路2内のアドレス・レジスタ
21で指定されたアドレスのメモリ領域に対応する1バ
イトのレジスタ(メモリ・アクセス・レジスタ)22を
仮想領域として設定し、メモリ・アドレスの指定後、M
PU1がメモリ・アクセス・レジスタ22に対しアクセ
スすることによって実際にはそのレジスタに対応する指
定されたアドレスのメモリ領域(1バイト)において処
理が行われる。この方法で連続したメモリ領域にアクセ
スする場合は、アドレスの指定とメモリ・アクセス・レ
ジスタ22へのアクセス処理を1バイトずつ繰り返し行
わなければならない。即ち、ロング・ワードの場合、ア
ドレス指定は、アドレスP→P+1→P+2→P+3と
なり、このためメモリ・アドレス・レジスタ22には4
回のアクセスとなり、バッファ・メモリ3のアドレスに
対応した1バイト領域a→b→c→dの順で処理され
る。 【0007】図6は従来のアドレス指定方式の他の例説
明図である。本図は上述の従来の方式に対処するための
説明図である。図に示すように、メモリ制御回路2内に
モード設定レジスタ23を設置し、メモリ・アクセス・
レジスタ22にアクセスすると同時に、アドレス・レジ
スタ21の示す値を1つ増加させるモード(オートイン
クリメント許可モード)を追加することにより連続した
メモリ領域に対するアクセスを容易にすることが出来
る。 【0008】 【発明が解決しようとする課題】図6の構成において
は、このモード設定機能によってアドレス指定の手間が
省けたとは言え、MPU1からは2バイト(ワード)な
いし4バイト(ロングワード)のアクセスが可能である
にも係わらず、やはり1バイトずつのアクセスを繰り返
す必要があった。即ち、ロングワードの場合、オートイ
ンクリメント許可モードにおいて、先頭アドレスPを指
定し、メモリ・アクセス・レジスタ22に4回アクセス
し、アドレスの領域にてa→b→c→dの順で処理され
た後、P+1→P+2→P+3の順でオートインクリメ
ントする。 【0009】従って、MPUが複数の連続するメモリ領
域に対してアクセスする必要が生じても、結果的にメモ
リに対しては1バイトずつしかアクセス出来ないので、
前述のように先頭アドレスから1バイトずつ繰り返しア
クセス処理を実行することになり、そのため時間を要す
るという問題を生じていた。 【0010】本発明の目的は、メモリ制御回路内のメモ
リ・アクセス・レジスタの構成を変えることにより、M
PUが備えているバイト、ワード、またはロングワード
単位のいかなるアクセス命令においても、オートインク
リメント動作を実行し、MPUがメモリの単一、又は連
続する領域に対してアクセス処理を実行することを可能
とするメモリアクセス方法を提供することにある。 【0011】 【課題を解決するための手段】図1は本発明の原理説明
図である。図中、1はMPUであり回路の管理及び制御
を行う。また、バイト、ワード、またはロングワード単
位のデータ処理を行うことができる。2はメモリ制御回
路でありMPU1からバッファメモリ3へのアクセスは
このメモリ制御回路2を介して実行される。3はバッフ
ァメモリである。21はアドレス・レジスタであり、M
PU1によってアクセスされるメモリ領域のアドレスが
指定された時にその値が格納される。22は複数バイト
(例えば、4バイト)のメモリ・アクセス・レジスタ
(A〜D)である。このレジスタ領域はMPU1がバッ
ファメモリ3にアクセスするときにMPU1が実際にア
クセスする仮想領域であり、メモリ・アクセス・レジス
タの1バイト(BYTE)に対し1バイト分のメモリ領域が対
応する。 【0012】メモリ・アクセス・レジスタ22ではMP
U1のアクセスの単位に応じて最初にアクセスされたレ
ジスタから単一で又は連続して1バイトずつ処理が行わ
れる。23はモード設定レジスタであり、このレジスタ
でアドレス・レジスタ21がオートインクリメント機能
を許可するか否かを指定する。アドレス・レジスタ21
にバッファメモリ3のアドレスが格納された後、MPU
1がメモリ・アクセス・レジスタ22のいずれか( 通常
は先頭バイト) にアクセスすると、実際にはバッファ・
メモリ3内のメモリ・アクセス・レジスタ21で指定さ
れたアドレスの領域に対しその処理が実行されることに
なる。また、モード設定レジスタ23でオートインクリ
メントモードに設定した場合、MPU1がメモリ・アク
セス・レジスタ22の1バイトに対してアクセスするご
とにアドレス・レジスタ21の値は1だけカウント・ア
ップする。 【0013】 【作用】本発明では、MPU1がバッファメモリ3に対
してアクセスする場合、メモリ制御回路2のモード設定
レジスタ23をオートインクリメント許可モードに設定
し、バッファメモリ3の先頭アドレスPを指定した後に
いずれか(通常は先頭バイト)のメモリ・アクセス・レ
ジスタ22のAに対してアクセスすると、そのメモリ・
アクセス・レジスタ22に対応して指定されたアドレス
のメモリ領域の処理が1バイトずつ実行されると同時
に、アドレス・レジスタ21の値が1つカウント(P+
1)されるようにし、MPUからのアクセス単位に応じ
てアドレス・カウンタ21が続けて1バイト処理される
ならば、1ずつ増加したアドレスの指示に従って連続し
た次のメモリの領域の処理を1バイトずつ実行するよう
にしている。 【0014】即ち、メモリ・アクセス・レジスタはA→
B→C→Dの順で、バイト(BYTE)1→2→3→4の順に
処理し、バッファ・メモリではアドレスP→P+1→P
+2→P+3の順で領域a→b→c→dの順で処理され
る。従って、MPU1がバッファメモリ3内のメモリの
連続するバイトに対してアクセスを発行した場合でも、
バイト数だけ繰り返しアドレス指定やアクセス命令を出
さなくても、一度のアクセス命令で指定されたアドレス
からアクセス単位に対応した複数バイトの処理を実行す
ることが可能となる。 【0015】 【実施例】図2は本発明のメモリ制御回路の一実施例構
成図である。前述のように、MPU1はメモリ制御回路
2を介してバッファメモリ3に対してアクセスすること
が出来る。また、MPU1はバイト、ワード、ロングワ
ード単位でデータ制御を実行できる。メモリ制御回路2
において、2aはアドレス・デコーダでありMPU1か
らのレジスタ・アドレスの指示に従って、MPU1の動
作の対象となるレジスタのセレクトを行う。アドレス・
デコーダ2aから出力されるセレクト信号(SELECT)の
うち、SELECT 1─4 はMPU1によるアクセスの対象と
なるメモリ領域に対応するよう架空に設定されたレジス
タ(図1のメモリ・アクセス・レジスタ22)の各1バ
イト(計4バイト)にそれぞれ対応している。 【0016】MPU1のアクセス命令でメモリ・アクセ
ス・レジスタを示すアドレスが指定されると、アドレス
・デコーダ2aはSELECT 1の出力を1にし、連続する複
数バイトの処理の時にはアドレスの指定が更新されるご
とにSELECT 1→2→3→4と順に出力を1にする。SE
LECT5はアドレス・レジスタ2bに、SELECT6はモード
設定レジスタ2cにそれぞれ対応している。2bはアド
レス・レジスタであり、バッファ・メモリ3内のMPU
1のアクセス対象アドレスを格納する。アドレス・レジ
スタ2bにおいて*LOAD 入力が0の時、アドレス・レジ
スタ2bはMPU1がデータバスに送ったアドレス値を
格納する。 【0017】アドレス・レジスタ2bのCOUNT UP入力が
1になった時の立ち上がりエッジにおいて、アドレス・
レジスタ2bのカウント値は1だけ増加する。2cはモ
ード設定レジスタであり、アドレス・レジスタ2bがオ
ートインクリメント許可モードであるか否かを設定する
ものである。アドレス・レジスタ2bにおいて、*LOAD
入力が0の時、MPU1からの設定値がセットされる。
インクリメント・モード出力(INCREMENT MODE)が1の
時がオートインクリメント許可モードである。2dはO
R回路でありRAMセレクト出力(RAM SELECT)が1
(即ち、*RAM SELECT 出力が0)ならばバッファ・メモ
リ3はセレクト状態となる。2eはNAND回路でオー
トインクリメント許可モードで信号RAM SELECTが0なら
ば出力が1となる。 【0018】図3は本発明の一実施例信号タイミングチ
ャートである。MPU1がメモリ制御回路2を介してメ
モリ・バッファ3に対してアクセスするとき、次のよう
に動作する。図示のタイミングチャートは、図4の構成
でMPU1がロングワード単位でライト・アクセスした
時のタイムチャートである。ワード、ロングワード単位
でアクセスすることがある場合には、モード設定レジス
タ2aの設定をオートインクリメント許可モードにして
おく。MPU1はアドレス・レジスタ2bにアクセスす
るメモリ領域の先頭アドレスをロードし、ロングワード
単位で仮想的に設定されたメモリ・アクセス・レジスタ
に対してアクセスを開始する。 【0019】MPU1はメモリ・アクセス・レジスタの
アドレスをMPUアドレスバスへ、バッファ・メモリ3
へ書き込むデータをMPUデータバスへ送出する。この
時、MPU1とメモリ制御回路2の間では1バイトずつ
の処理が連続して(ロングワード単位のアクセスの場合
はバイト処理を4回)行われる。アドレス・デコーダ2
aはメモリ・アクセス・レジスタの先頭アドレスを受け
取ったとき、SELECT1の出力を1にする。 【0020】SELECT1が1になることによってSELECT1
-4がOR回路2dを経て得られる信号RAM SELECTは1(*
RAM SELECTは0) となり、バッファ・メモリ3がMPU
1のアクセス対象としてセレクトされた状態となる。M
PU1はメモリ・アクセス・レジスタに対して書込みス
トローブ信号(*WT STROBE0)を出力し、この信号はメ
モリ制御回路2を介して直接バッファ・メモリ3に書込
みイネーブル信号(*WT ENABLE)として入力され、*WT
ENABLEが0の間にMPU1から送られた最初の1バイト
分のデータがバッファ・メモリ3の先頭アドレス領域に
ライトされる。ライト処理終了後、信号*WT STROBE(*W
T ENABLE)が1となり、MPU1はこの信号の変化を見
てメモリ・アクセス・レジスタのアドレス指定を次のバ
イト領域に更新する。そのアドレスの変更によってアド
レス・レコーダ2bのSELECT1は0になり、次にSELECT
2が1になるまでRAM SELECTが0となる。このRAM SELE
CTの立ち下がりでNAND回路2eの出力(即ち、アド
レス・レジスタ2bのCOUNT UP入力)が1となり、アド
レス・レジスタ2bのアドレス値(バッファ・メモリの
アドレス)は先頭アドレスの次のアドレスにセットされ
る。 【0021】このようにして更新されたアドレスの領域
に対し、メモリ・アクセス・レジスタへのMPU1の2
バイト目の処理によって続く1バイトのライト処理が実
行され、残りのバッファ・メモリ3に対するライト処理
も同様の手順で1バイトずつ処理される。上述の実施例
はロングワード単位でのライト・アクセスについてのも
のであるが、他のアクセス命令(リード等)において
も、またワード単位のアクセス命令であっても同様の効
果が得られることは明らかである。また、本実施例にお
いては、MPUとメモリ制御回路の間であり、またメモ
リ制御回路とバッファ・メモリ間のデータバスはバイト
バスであったが、ワードバスであっても本実施例より容
易に類推することが出来、本発明の主旨から外れるもの
ではない。 【0022】 【発明の効果】以上説明したように、本発明によればM
PUからメモリ制御回路を介してバッファ・メモリをア
クセスするときは、バイト単位のアクセスだけでなく、
ワード、ロングワード単位のアクセスによってもMPU
の指定したアドレスからの連続バイト領域を処理するこ
とが出来るので、MPUのアクセス処理能力を充分に効
率良く機能させることが可能となり、装置全体の処理性
能の向上に寄与するところが大である。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory access method when an MPU accesses a buffer memory via a memory control circuit. In recent electronic control circuits,
In some cases, the MPU accesses a memory (for example, a data buffer or the like) that is not on the same data bus via a peripheral circuit (for example, a memory control circuit or the like) of the MPU. The present invention adds a simple circuit to the memory control circuit so that any access instruction in units of bytes, words, or longwords provided in the MPU can be implemented.
The present invention relates to a memory access method that performs an auto-increment operation and enables an MPU to execute access processing to a single or continuous area of a memory. 2. Description of the Related Art FIG. 4 is a block diagram of a control circuit of a magnetic disk drive in a data processing system. In the figure, an upper MPU 11 controls and manages the lower MPU 18 and controls data transfer with the upper host device.
Reference numeral 12 denotes a ROM which stores programs of two MPUs (11, 18). Reference numeral 13 denotes a RAM, which is a work RAM for storing data used when the program of the ROM 12 is operated. [0005] Reference numeral 14 denotes a buffer controller, which is a circuit for controlling the data buffer 16. Reference numeral 15 denotes an upper interface for performing data transfer with an upper host. A data buffer 16 stores data sent from the host computer and data read from the magnetic disk 17. 17 is a magnetic disk drive. 1
A lower MPU 8 controls and manages the magnetic disk device 17. Reference numeral 19 denotes a communication control circuit, which is an upper MPU 11
And a control circuit for performing communication between the lower MPU 18. Reference numeral 20 denotes a RAM which stores a program of the lower MPU 18 and has a function as a work RAM. In this magnetic disk device control circuit, a data buffer (RAM) 16 is provided to improve the efficiency of data transfer between the upper interface 15 and the magnetic disk 17.
Is provided, but as shown in FIG.
And the MPU 11 are connected to separate data buses (a) and (b).
6 cannot be accessed. However, when executing an error correction process or under special circumstances such as reading system information on the device from the magnetic disk device 17, the MPU 11 accesses the data buffer 16 and the data buffer 16 is accessed via the buffer controller 14. It is required to perform processing. Although two MPUs 11 and 18 coexist, the work RA of the lower
For M20, the upper MPU 11 may load the program of the lower MPU 18 from the ROM 12. Also in this case, the MPU 11 and the work RAM 20 are connected to the data bus.
(a) and a data bus (c), which are not on the same data bus.
It is required to perform access processing through. Therefore, the buffer controller 14 and the communication control circuit 19 include:
When accessing a memory (buffer memory) that does not exist on the same bus as the MPU, a buffer memory control means (memory control circuit) that controls so that an area of an address specified by the MPU is appropriately accessed. Must be provided. FIG. 5 is a diagram illustrating an example of a conventional addressing system. This figure illustrates a method in which the MPU 1 accesses the buffer memory 3 via the memory control circuit 2. A 1-byte register (memory access register) 22 that can be directly accessed from the MPU 1 in the memory control circuit 2 and corresponds to the memory area of the address specified by the address register 21 in the memory control circuit 2 as a virtual area After setting and specifying the memory address,
When the PU1 accesses the memory access register 22, the processing is actually performed in the memory area (1 byte) of the designated address corresponding to the register. When accessing a continuous memory area by this method, the address specification and the access processing to the memory access register 22 must be repeated one byte at a time. That is, in the case of a long word, the address is specified as address P → P + 1 → P + 2 → P + 3.
The access is performed once, and the processing is performed in the order of 1 byte area a → b → c → d corresponding to the address of the buffer memory 3. FIG. 6 is a diagram for explaining another example of the conventional addressing system. This figure is an explanatory diagram for coping with the above-mentioned conventional method. As shown in the figure, a mode setting register 23 is provided in the memory control circuit 2 and a memory access mode is set.
Access to the continuous memory area can be facilitated by adding a mode in which the value indicated by the address register 21 is incremented by one (auto increment permission mode) at the same time when the register 22 is accessed. In the configuration shown in FIG. 6, although the mode setting function eliminates the need for address specification, the MPU 1 can output 2 bytes (words) to 4 bytes (long words). Even though the access is possible, it is necessary to repeat the access for each byte. That is, in the case of a long word, in the auto-increment permission mode, the head address P is specified, the memory access register 22 is accessed four times, and the processing is performed in the order of a → b → c → d in the address area. Thereafter, auto increment is performed in the order of P + 1 → P + 2 → P + 3. Therefore, even if the MPU needs to access a plurality of continuous memory areas, the memory can be accessed only one byte at a time.
As described above, the access processing is repeatedly performed one byte at a time from the start address, and thus a problem arises that it takes time. [0010] An object of the present invention is to change the configuration of a memory access register in a memory control circuit so that M
An auto-increment operation is performed for any access instruction in units of bytes, words, or longwords provided in the PU, enabling the MPU to execute access processing to a single or continuous area of the memory. To provide a memory access method that performs FIG. 1 is a diagram illustrating the principle of the present invention. In the figure, reference numeral 1 denotes an MPU that manages and controls a circuit. Further, data processing can be performed in byte, word, or longword units. Reference numeral 2 denotes a memory control circuit, and access from the MPU 1 to the buffer memory 3 is executed through the memory control circuit 2. 3 is a buffer memory. 21 is an address register;
When the address of the memory area accessed by PU1 is specified, the value is stored. Reference numeral 22 denotes a plurality of bytes (for example, 4 bytes) of memory access registers (A to D). This register area is a virtual area actually accessed by the MPU 1 when the MPU 1 accesses the buffer memory 3, and one byte (BYTE) of the memory access register corresponds to a one-byte memory area. In the memory access register 22, MP
According to the unit of access of U1, processing is performed singly or successively one byte at a time from the first accessed register. A mode setting register 23 designates whether or not the address register 21 permits the auto-increment function. Address register 21
After the address of the buffer memory 3 is stored in the MPU,
When 1 accesses any of the memory access registers 22 (usually the first byte),
The processing is executed for the area of the address specified by the memory access register 21 in the memory 3. When the auto increment mode is set by the mode setting register 23, the value of the address register 21 is incremented by 1 each time the MPU 1 accesses one byte of the memory access register 22. According to the present invention, when the MPU 1 accesses the buffer memory 3, the mode setting register 23 of the memory control circuit 2 is set to the auto-increment permission mode, and the start address P of the buffer memory 3 is designated. Later, when any one of the (usually the first byte) A of the memory access register 22 is accessed, that memory
The processing of the memory area at the address designated corresponding to the access register 22 is executed one byte at a time, and at the same time, the value of the address register 21 is counted by one (P +
1), if the address counter 21 is continuously processed by one byte in accordance with the access unit from the MPU, the next successive memory area is processed by one byte in accordance with the instruction of the address incremented by one. To be executed one by one. That is, the memory access register is A →
In the order of B → C → D, processing is performed in the order of bytes (BYTE) 1 → 2 → 3 → 4, and in the buffer memory, addresses P → P + 1 → P
Processing is performed in the order of + 2 → P + 3 in the order of areas a → b → c → d. Therefore, even when the MPU 1 issues an access to consecutive bytes of the memory in the buffer memory 3,
It is possible to execute a plurality of bytes of processing corresponding to an access unit from an address specified by one access instruction without repeatedly specifying an address or issuing an access instruction by the number of bytes. FIG. 2 is a block diagram showing an embodiment of a memory control circuit according to the present invention. As described above, the MPU 1 can access the buffer memory 3 via the memory control circuit 2. The MPU 1 can execute data control in byte, word, and longword units. Memory control circuit 2
2a, an address decoder 2a selects a register to be operated by the MPU 1 in accordance with a register address instruction from the MPU 1. address·
Among the select signals (SELECT) output from the decoder 2a, SELECT 1─4 is a register (memory access register 22 in FIG. 1) set imaginarily to correspond to the memory area to be accessed by the MPU 1. Each byte corresponds to one byte (a total of four bytes). When an address indicating a memory access register is designated by an access instruction of the MPU 1, the address decoder 2a sets the output of SELECT 1 to 1, and the designation of the address is updated when processing a plurality of consecutive bytes. Each time, the output is set to 1 in the order of SELECT 1 → 2 → 3 → 4. SE
LECT5 corresponds to the address register 2b, and SELECT6 corresponds to the mode setting register 2c. 2b is an address register, and the MPU in the buffer memory 3
1 is stored. When the * LOAD input is 0 in the address register 2b, the address register 2b stores the address value sent by the MPU 1 to the data bus. At the rising edge when the COUNT UP input of the address register 2b becomes 1, the address
The count value of the register 2b increases by one. Reference numeral 2c denotes a mode setting register for setting whether or not the address register 2b is in the auto increment permission mode. * LOAD in address register 2b
When the input is 0, the set value from MPU1 is set.
When the increment mode output (INCREMENT MODE) is 1, the automatic increment permission mode is set. 2d is O
R circuit and RAM select output (RAM SELECT) is 1
If (ie, * RAM SELECT output is 0), the buffer memory 3 is in the selected state. Numeral 2e denotes a NAND circuit, in which the output becomes 1 if the signal RAM SELECT is 0 in the auto increment permission mode. FIG. 3 is a signal timing chart of one embodiment of the present invention. When the MPU 1 accesses the memory buffer 3 via the memory control circuit 2, it operates as follows. The illustrated timing chart is a timing chart when the MPU 1 performs write access in units of long words in the configuration of FIG. When the access may be made in word or long word units, the setting of the mode setting register 2a is set to the auto increment permission mode. The MPU 1 loads the head address of the memory area to be accessed to the address register 2b, and starts accessing a memory access register virtually set in longword units. The MPU 1 transfers the address of the memory access register to the MPU address bus and the buffer memory 3
Data to be written to the MPU data bus. At this time, between the MPU 1 and the memory control circuit 2, the processing for each byte is continuously performed (in the case of access in units of long words, the byte processing is performed four times). Address decoder 2
When a receives the head address of the memory access register, it sets the output of SELECT1 to 1. When SELECT1 becomes 1, SELECT1 becomes
-4 is obtained through the OR circuit 2d. The signal RAM SELECT is 1 (*
RAM SELECT is 0) and buffer memory 3 is MPU
1 is selected as the access target. M
PU1 outputs a write strobe signal (* WT STROBE0) to the memory access register, and this signal is directly input to the buffer memory 3 via the memory control circuit 2 as a write enable signal (* WT ENABLE). * WT
The first 1-byte data sent from the MPU 1 while ENABLE is 0 is written to the head address area of the buffer memory 3. After the write processing, the signal * WT STROBE (* W
TENABLE) becomes 1, and the MPU 1 updates the address designation of the memory access register to the next byte area by seeing the change of this signal. By changing the address, SELECT1 of the address recorder 2b becomes 0, and then SELECT
RAM SELECT becomes 0 until 2 becomes 1. This RAM SELE
At the fall of CT, the output of the NAND circuit 2e (that is, the COUNT UP input of the address register 2b) becomes 1, and the address value of the address register 2b (the address of the buffer memory) is set to the address next to the head address. You. For the area of the address updated in this way, the MPU 1
The succeeding 1-byte write process is executed by the process of the byte, and the write process for the remaining buffer memory 3 is also processed for each byte in the same procedure. Although the above embodiment is directed to write access in units of long words, it is apparent that similar effects can be obtained in other access instructions (read etc.) and even in access instructions in word units. It is. In the present embodiment, the data bus between the MPU and the memory control circuit and the data bus between the memory control circuit and the buffer / memory are byte buses. It can be analogized and does not depart from the gist of the present invention. As described above, according to the present invention, M
When accessing the buffer memory from the PU via the memory control circuit, not only access in byte units, but also
MPU by word or longword access
Since it is possible to process the continuous byte area from the address designated by the MPU, it is possible to make the access processing capability of the MPU function sufficiently efficiently, which greatly contributes to the improvement of the processing performance of the entire apparatus.

【図面の簡単な説明】 【図1】本発明の原理構成図である。 【図2】本発明の一実施例構成図である。 【図3】本発明の一実施例信号タイミングチャートであ
る。 【図4】磁気ディスク装置の制御回路構成図である。 【図5】従来のアドレス指定方式の一例説明図である。 【図6】従来のアドレス指定方式の他の例説明図であ
る。 【符号の説明】 1…MPU 2…メモリ制御回路 3…バッファ・メモリ 21…アドレス・レジスタ 22…メモリ・アクセス・レジスタ 23…モード設定レジスタ 2a…アドレス・デコーダ 2b…アドレス・レジスタ 2c…モード設定レジスタ 2d…OR回路 11,18…MPU 12…ROM 13…RAM 14…バッファ・コントローラ 15…上位インタフェース 16…データバッファ 17…磁気ディスク装置 19…通信制御回路 20…RAM
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a principle configuration diagram of the present invention. FIG. 2 is a configuration diagram of an embodiment of the present invention. FIG. 3 is a signal timing chart of one embodiment of the present invention. FIG. 4 is a configuration diagram of a control circuit of the magnetic disk drive. FIG. 5 is a diagram illustrating an example of a conventional addressing method. FIG. 6 is an explanatory diagram of another example of the conventional addressing method. [Description of Signs] 1 MPU 2 Memory control circuit 3 Buffer memory 21 Address register 22 Memory access register 23 Mode setting register 2a Address decoder 2b Address register 2c Mode setting register 2d OR circuits 11, 18 MPU 12 ROM 13 RAM 14 Buffer controller 15 Upper interface 16 Data buffer 17 Magnetic disk device 19 Communication control circuit 20 RAM

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平1−310463(JP,A) 特開 昭61−217842(JP,A) 特開 昭60−261095(JP,A) 特開 平1−144139(JP,A) 特開 昭61−262861(JP,A) 特開 平2−162449(JP,A) 特開 昭61−265653(JP,A)   ────────────────────────────────────────────────── ─── Continuation of front page       (56) References JP-A-1-310463 (JP, A)                 JP-A-61-217842 (JP, A)                 JP-A-60-261095 (JP, A)                 JP-A-1-144139 (JP, A)                 JP-A-61-262861 (JP, A)                 JP-A-2-162449 (JP, A)                 JP-A-61-265653 (JP, A)

Claims (1)

(57)【特許請求の範囲】 【請求項1】 MPU(1)とバッファ・メモリ(3)
の間にメモリ制御回路(2)を配置し、該MPU(1)
が該メモリ制御回路(2)を介して該バッファ・メモリ
(3)にアクセスし、1バイトずつ処理するメモリアク
セス方法において、 該メモリ制御回路内(2)に、 該MPU(1)がアクセスする該バッファメモリ(3)
のアドレスに対応するアドレス格納されるアドレス・
レジスタ(21)と、 該MPU(1)が該バッファメモリ(3)にアクセスす
る時に命令を発行する対象となる仮想領域であって、該
仮想領域の各1バイトが該アドレス・レジスタ(21)
で指定された該バッファメモリ(3)内の1バイト分の
領域に対応するように構成された複数のメモリ・アクセ
ス・レジスタ(22)と、 該アドレス・レジスタ(21)のオートインクリメント
許可モードの可否を指定するモード設定レジスタ(2
3)を備え、 該モード設定レジスタ(23)がオートインクリメント
許可モードに設定されているときに、該MPU(1)が
該メモリ・アクセス・レジスタ(22)の何れかにアク
セスし、該アドレス・レジスタ(21)で指定されたア
ドレスのメモリ領域内での処理が実行されると該アドレ
ス・レジスタ(21)の値が1つ増加するようにし、 該複数のメモリ・アクセス・レジスタ(22)に対して
該MPU(1)が連続して処理するようにアクセス命令
を発行したときには、該メモリ・アクセス・レジスタ
(22)と対応するメモリ領域の1バイトずつの処理ご
とにアドレスが1つずつ増加して、1度のアクセス命令
で続けて次の1バイト分のメモリ領域の処理を実行でき
るようにすることにより、該バッファメモリ(3)内の
指定されたアドレスから開始して連続する複数バイトへ
のアクセスを行う、ことを特徴とするメモリアクセス方
(57) [Claims] [Claim 1] MPU (1) and buffer memory (3)
The memory control circuit (2) is arranged between the MPU (1)
Accesses the buffer memory (3) via the memory control circuit (2) and processes the data one byte at a time.
In the access method, the buffer memory (3) accessed by the MPU (1) in the memory control circuit (2)
Address address corresponding to the address is stored,
A register (21), a virtual area to which an instruction is issued when the MPU (1) accesses the buffer memory (3), wherein each byte of the virtual area is the address register (21);
And a plurality of memory access registers (22) configured to correspond to an area of one byte in the buffer memory (3) specified by Mode setting register (2
When the mode setting register (23) is set to the auto-increment permission mode, the MPU (1) accesses one of the memory access registers (22), and When the processing in the memory area at the address specified by the register (21) is executed, the value of the address register (21) is increased by one, and the plurality of memory access registers (22) On the other hand, when the MPU (1) issues an access instruction so as to process continuously, the address increases by one for each one-byte processing of the memory area corresponding to the memory access register (22). to, by successively with 1 degree access command to be executed to process the next 1-byte memory area designated of the buffer memory (3) in It was started from the address for accessing the plurality consecutive bytes, a memory access method, characterized in that
Law .
JP00835291A 1991-01-28 1991-01-28 Memory access method Expired - Fee Related JP3496942B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00835291A JP3496942B2 (en) 1991-01-28 1991-01-28 Memory access method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00835291A JP3496942B2 (en) 1991-01-28 1991-01-28 Memory access method

Publications (2)

Publication Number Publication Date
JPH05265926A JPH05265926A (en) 1993-10-15
JP3496942B2 true JP3496942B2 (en) 2004-02-16

Family

ID=11690835

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00835291A Expired - Fee Related JP3496942B2 (en) 1991-01-28 1991-01-28 Memory access method

Country Status (1)

Country Link
JP (1) JP3496942B2 (en)

Also Published As

Publication number Publication date
JPH05265926A (en) 1993-10-15

Similar Documents

Publication Publication Date Title
US5826093A (en) Dual function disk drive integrated circuit for master mode and slave mode operations
US5347638A (en) Method and apparatus for reloading microinstruction code to a SCSI sequencer
JPH0343646B2 (en)
JPH04363746A (en) Microcomputer system having dma function
US5748555A (en) Memory address preview control circuit
JP3496942B2 (en) Memory access method
JP2981711B2 (en) Disk storage device
EP0684559B1 (en) Processing unit detecting a byte aligment mechanism in the storage controller.
JP2568017B2 (en) Microprocessor and data processing system using the same
EP0321775B1 (en) Secure data processing system using commodity devices
JP3222647B2 (en) Automatic memory bank switching system
JP3270149B2 (en) Data transfer device
JP3480961B2 (en) Memory access method
JP2599184B2 (en) DMAC read transfer controller
EP0718771B1 (en) DMA logic unit architecture
JPH0736806A (en) Dma system
JP3375657B2 (en) Instruction code issuing method
JPS59189433A (en) Data erasing system by direct memory access
JPH02136921A (en) Register access system
JPH01204118A (en) Information processor
JPH05151076A (en) Memory address extension control system
JPH0279149A (en) System for transferring data of recorder
JPH039445A (en) Storage element control circuit
JPH11176165A (en) Sequential-access semiconductor memory device
HU207592B (en) Method and circuit arrangement for increasing number of the boolean algebraic variables processed in a cpu

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20011002

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081128

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081128

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091128

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees