JPH05298179A - Memory control system - Google Patents
Memory control systemInfo
- Publication number
- JPH05298179A JPH05298179A JP4126696A JP12669692A JPH05298179A JP H05298179 A JPH05298179 A JP H05298179A JP 4126696 A JP4126696 A JP 4126696A JP 12669692 A JP12669692 A JP 12669692A JP H05298179 A JPH05298179 A JP H05298179A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bus
- write
- byte
- address
- 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
Links
Abstract
Description
【0001】[0001]
【産業上の利用分野】この発明は、複数のバスマスタと
これら複数のバスマスタに対して共有の共有メモリとを
備えたメモリ制御システムに係わり、特に、バスマスタ
が共有メモリにバス幅と同じデータ幅でアクセスする際
に、バイト単位の書き込み(バイトライト)を行えるメ
モリ制御システムに関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory control system having a plurality of bus masters and a shared memory shared by the plurality of bus masters. The present invention relates to a memory control system that can perform byte-wise writing (byte writing) when accessing.
【0002】[0002]
【従来の技術】図5は、複数のバスマスタと共有メモリ
とを備えた従来のメモリ制御システムを示す構成図であ
り、図5において、(1)〜(3)はそれぞれバスマスタ、
(4)はこれらバスマスタに接続され、所定のバイト幅を
有するバス、(5)はこのバスに接続され、上記バスマス
タ(1)〜(3)に共有のECC(誤り訂正機能)付きのメモ
リからなる共有メモリで、バス幅と同一であるデータ符
号幅の単位でアクセスされる。2. Description of the Related Art FIG. 5 is a block diagram showing a conventional memory control system having a plurality of bus masters and a shared memory. In FIG. 5, (1) to (3) are bus masters,
(4) is connected to these bus masters and has a predetermined byte width. (5) is connected to this bus and is shared by the above bus masters (1) to (3) with a memory having an ECC (error correction function). The shared memory is accessed in the unit of the data code width that is the same as the bus width.
【0003】次に、このように構成されたメモリ制御シ
ステムにおいて、バスマスタ(1)がテストアンドセット
という命令によって、1バイト単位のデータの書き込み
(バイトライト)を共有メモリ(5)に行う際の動作につ
いて説明する。なお、バイト単位のデータとは、1バイ
ト以上でバス幅のバイト以下のデータを示す。まず、バ
スマスタ(1)は、他のバスマスタ(2)(3)からデータがア
クセスされる可能性があるので、これらバスマスタ(2)
(3)に対して排他制御(バスロック)を行う。Next, in the memory control system configured as described above, when the bus master (1) writes data (byte write) in 1-byte units to the shared memory (5) by a test and set command. The operation will be described. The data in byte units means data of 1 byte or more and less than the byte of the bus width. First, since the bus master (1) may access data from other bus masters (2) (3), these bus masters (2)
Exclusive control (bus lock) is performed for (3).
【0004】その後、バスマスタ(1)は、書き込むため
のアドレスに基づいてバス幅と同じデータ幅で共有メモ
リ(5)をリード(データの読み出し)する。次いで、バ
スマスタ(1)は、ライト(書き込み)すべきアドレスの
バイト単位のデータを、共有メモリ(5)から読み出した
バス幅と同じデータ幅のデータに対してモディファイ
(変更)し、このモディファイされたデータを書き込む
ためのアドレスに基づいてバス幅と同じ幅で共有メモリ
へのライト(書き込み)を実行する。書き込み終了後、
バスマスタ(1)は他のバスマスタ(2)(3)に対するバスロ
ックを解除し、バスマスタ(1)がバイト単位のデータの
共有メモリ(5)への書き込み(バイトライト)を終了す
る。After that, the bus master (1) reads (reads data) the shared memory (5) with the same data width as the bus width based on the address for writing. Next, the bus master (1) modifies (changes) the byte-unit data of the address to be written (written) to the data having the same data width as the bus width read from the shared memory (5), and this modification is performed. Write to the shared memory with the same width as the bus width based on the address for writing the data. After writing,
The bus master (1) releases the bus lock with respect to the other bus masters (2) and (3), and the bus master (1) finishes writing the byte unit data to the shared memory (5) (byte write).
【0005】要するに、上記従来のメモリ制御システム
は、各バスマスタがバイト単位のデータの書き込み(バ
イトライト)を共有メモリに行う際、他のバスマスタを
バスロックした上で、共有メモリをリードするというト
ランザクションと共有メモリへライトするというトラン
ザクションの2つのトランザクションを実行しているも
のである。In short, in the above-mentioned conventional memory control system, when each bus master writes data in byte units (byte write) to the shared memory, other bus masters are bus-locked and then the shared memory is read. And the transaction of writing to the shared memory.
【0006】[0006]
【発明が解決しようとする課題】このように、従来のメ
モリ制御システムにあっては、バスマスタがバイト単位
のデータの書き込みを共有メモリに行う場合、他のバス
マスタをバスロックし、2つのトランザクションを不可
分に行わなければならず、処理が複雑になっていた。As described above, in the conventional memory control system, when a bus master writes data in bytes in the shared memory, another bus master is bus-locked and two transactions are executed. It had to be done inseparably, and the process became complicated.
【0007】この発明は、上記した点に鑑みてなされた
ものであり、1つのトランザクションによって、バスマ
スタがバイト単位の書き込みを共有メモリに行えるメモ
リ制御システムを得ることを目的とするものである。The present invention has been made in view of the above points, and an object of the present invention is to obtain a memory control system in which a bus master can write a byte unit into a shared memory by one transaction.
【0008】[0008]
【課題を解決するための手段】この発明に係わるメモリ
制御システムは、複数のバスマスタと、これら複数のバ
スマスタに接続された所定のバイト幅を有するバスと、
このバスに接続され、バスマスタからアクセスされ、バ
ス幅と同じ幅でデータの読み書きを行う複数のバスマス
タに対して共有の共有メモリとを備え、バスマスタを、
正規アクセスアドレスから仮想アドレスへのアドレス変
換を行うアドレス変換手段と、変更を行うバイトを示す
データを付加するデータ変換手段とを有したものとした
ものである。A memory control system according to the present invention includes a plurality of bus masters and a bus connected to the plurality of bus masters and having a predetermined byte width.
It has a shared memory that is connected to this bus, is accessed by the bus master, and is shared by multiple bus masters that read and write data with the same width as the bus width.
It has an address conversion means for converting an address from a regular access address to a virtual address, and a data conversion means for adding data indicating a byte to be changed.
【0009】[0009]
【作用】この発明においては、バスマスタのアドレス変
換手段が、正規アクセスアドレスから仮想アドレスへの
アドレス変換によってバイト単位の書き込みであること
を知らしめ、バスマスタのデータ変換手段が変更を行う
データを知らしめる。According to the present invention, the address conversion means of the bus master informs that writing is performed in byte units by the address conversion from the regular access address to the virtual address, and the data conversion means of the bus master informs the data to be changed. ..
【0010】[0010]
【実施例】以下に、この発明の一実施例を図1ないし図
4に基づいて説明する。図1は構成図を示すものであ
り、図1において、(11)〜(13)はそれぞれ図2に詳細を
示すCPUマスタであるバスマスタ、(14)はこれらバス
マスタに接続され、所定のバイト幅を有するデータバス
とアドレスバスと制御バスとを有するバスで、バス幅が
2のn乗バイト(n≧1)、この実施例においてはバス
幅が4バイトとして説明する。(15)はこのバスに接続さ
れ、上記バスマスタ(1)〜(3)に共有のECC付きのメモ
リからなる詳細を図3に示す共有メモリで、バス幅と同
一であるデータ符号幅の単位、この実施例では4バイト
でアクセスされる。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to FIGS. FIG. 1 shows a configuration diagram. In FIG. 1, (11) to (13) are bus masters which are CPU masters whose details are shown in FIG. 2, and (14) is connected to these bus masters and has a predetermined byte width. A bus having a data bus, an address bus, and a control bus having a bus width of 2 to the nth power byte (n ≧ 1), and a bus width of 4 bytes in this embodiment. (15) is a shared memory shown in FIG. 3 which is connected to this bus and includes a memory with ECC shared by the bus masters (1) to (3). The unit of the data code width is the same as the bus width. In this embodiment, it is accessed by 4 bytes.
【0011】図2はバスマスタ(11)〜(13)を示す構成図
であり、図2において、(16)はバイト単位の書き込み
(バイトライト)を行うために、正規アクセスアドレス
から仮想アドレスへのアドレス変換、例えば正規アクセ
スアドレスAに仮想ベースアドレスbを加えることによ
って仮想アドレス(A+b)への変換を行うアドレス変
換手段で、バス(14)のアドレスバス(14b)に接続され、
このアドレスバス(14b)に仮想アドレス(A+b)を送
出するためのものである。FIG. 2 is a configuration diagram showing the bus masters (11) to (13). In FIG. 2, (16) is a byte-unit write (byte write), so that the normal access address is changed to the virtual address. An address conversion unit for performing address conversion, for example, conversion into a virtual address (A + b) by adding a virtual base address b to the regular access address A, is connected to the address bus (14b) of the bus (14),
The virtual address (A + b) is sent to this address bus (14b).
【0012】(17)は変更を行うバイトを示すデータを付
加するデータ変換手段で、バス(14)のデータバス(14a)
に接続され、例えば、最初のデータ部に変更を行うバイ
トを示すデータ、つまりバス幅のデータのうちのバイト
単位の書き込み(バイトライト)を行うデータのバイト
を示すライトマークWMを付加し、以降のデータ部にバ
イト単位の書き込みを行うデータを含んだ書き込みデー
タDを送出するバースト転送に変換するためのものであ
り、データバス(14a)にライトマークWM及び書き込み
データDを送出するためのものである。(18)はこれらア
ドレス変換手段(16)及びデータ変換部(17)を制御すると
ともに、バス(14)の制御バス(14c)に接続され、制御バ
ス(14c)に共有メモリ(15)に対する制御信号を送出する
プロセッサ部である。(17) is a data conversion means for adding data indicating a byte to be changed, which is a data bus (14a) of the bus (14).
Connected to, for example, a data mark indicating a byte to be changed in the first data section, that is, a write mark WM indicating a byte of data to be written (byte write) in byte units of the data of the bus width is added. For converting the write data D including the data to be written in byte units to the burst data transfer, and for transmitting the write mark WM and the write data D to the data bus (14a). Is. (18) controls the address conversion means (16) and the data conversion unit (17), is connected to the control bus (14c) of the bus (14), and controls the shared memory (15) on the control bus (14c). It is a processor unit that sends out signals.
【0013】図3は共有メモリ(15)の構成図であり、図
3において、(19)はバス(14)のアドレスバス(14b)に接
続されたアドレス信号線(20)を介してバスマスタ(11)〜
(13)のアドレス変換部(16)からの仮想アドレスが入力さ
れるとともに、バス(14)の制御バス(14c)に接続された
制御信号線(21)を介してバスマスタ(11)〜(13)のプロセ
ッサ部(18)からの制御信号が入力され、アドレスとタイ
ミングの制御を行うデコーダ部で、入力された制御信号
によって活性化され、メモリ制御線(22)に入力された仮
想アドレスに基づいたアドレス信号(正規アクセスアド
レス信号)を送出し、ライトマークイネーブル線(23)に
ライトマークイネーブル信号を送出し、バイトライトデ
ータ制御線(24)にバイトライトデータ信号を送出する。FIG. 3 is a block diagram of the shared memory (15). In FIG. 3, (19) is a bus master (20) via an address signal line (20) connected to the address bus (14b) of the bus (14). 11) ~
The virtual address is input from the address conversion unit (16) of (13), and the bus masters (11) to (13) are supplied via the control signal line (21) connected to the control bus (14c) of the bus (14). ), The control signal from the processor unit (18) is input, and the decoder unit that controls the address and timing is activated by the input control signal and is based on the virtual address input to the memory control line (22). Address signal (normal access address signal), a write mark enable signal is sent to the write mark enable line (23), and a byte write data signal is sent to the byte write data control line (24).
【0014】(25)はデータを記憶するRAMより構成さ
れるデータアレイ部で、メモリ制御線(22)を介して入力
されるデコーダ部(19)からのアドレス信号によって読み
出すべき及び書き込まれるべき記憶部(メモリセル)の
アドレスが特定され、特定されたアドレスの記憶部から
読み出されたバス幅と同じである4バイトのデータを3
2本からなるデータ線(26)を介して伝達するとともに、
データ線(26)を介して入力されるバス幅と同じである4
バイトのデータが特定されたアドレスの記憶部に書き込
まれるものである。(27)はバス(14)のデータバス(14a)
に接続されるとともにライトマークイネーブル線(23)に
接続され、このライトマークイネーブル線(23)を介して
入力されたライトマークイネーブル信号によってデータ
バス(14a)を介して入力されるバスマスタ(11)〜(13)の
データ変換部から送出されたライトマークWMを保持
し、この保持したライトマークWMをライトマークデー
タ線(28)を介して伝達するライトマークレジスタ部であ
る。Reference numeral (25) is a data array section composed of a RAM for storing data, which is to be read and written by an address signal from the decoder section (19) inputted through the memory control line (22). The address of a copy (memory cell) is specified, and 3 bytes of 4-byte data having the same bus width as the bus width read from the storage unit of the specified address are stored.
It is transmitted via the two data lines (26),
Same as bus width input via data line (26) 4
The byte data is written in the storage unit at the specified address. (27) is the data bus (14a) of the bus (14)
Bus master (11) which is connected to the write mark enable line (23) and is input via the data bus (14a) by the write mark enable signal input via the write mark enable line (23). The write mark register unit holds the write mark WM sent from the data conversion units (13) to (13) and transmits the held write mark WM through the write mark data line (28).
【0015】(29)はデータ線(26)を介して入力されたデ
ータアレイ部(25)から読み出された4バイトの読み出し
データを保持し、バイトライトデータ制御線(24)を介し
て入力されたデコーダ部(19)からのバイトライトデータ
信号に従ってライトマークデータ線(28)を介してライト
マークレジスタ部に保持されたライトマークWMを読み
出して保持し、このライトマークWMに従って、データ
アレイ部(25)からの読み出しデータとバス(14)のデータ
バス(14a)及び32本のデータ線を介して入力されたバ
スマスタ(11)〜(13)のデータ変換部(17)からのバイト単
位の書き込むためのデータを含んだ書き込みデータを組
み合わせてバス幅のデータを作成するデータ制御部で、
この実施例においては、データアレイ部(25)から読み出
された4バイトのバス幅の読み出しデータのうちのライ
トマークの示す1バイト単位のデータを、バス(14)のデ
ータバス(14a)及びデータ線(30)を介して入力されたバ
スマスタ(11)〜(13)のデータ変換部(17)からのデータの
データサイクルの2番目の4バイトデータのうちのライ
トマークの示す1バイト単位のデータでモディファイ
(変更)し、このモディファイした4バイトのデータを
データ線(26)を介してデータアレイ部(25)に転送するも
のである。Reference numeral (29) holds the read data of 4 bytes read from the data array section (25) inputted through the data line (26) and inputted through the byte write data control line (24). According to the byte write data signal from the decoder unit (19), the write mark WM held in the write mark register unit is read and held via the write mark data line (28), and the data array unit is read according to the write mark WM. The read data from (25) and the byte data from the data conversion unit (17) of the bus masters (11) to (13) input via the data bus (14a) of the bus (14) and 32 data lines In the data control unit that creates the data of the bus width by combining the write data including the data for writing,
In this embodiment, the 1-byte unit data indicated by the write mark in the read data having a bus width of 4 bytes read from the data array section (25) is transferred to the data bus (14a) of the bus (14) and The 1-byte unit indicated by the write mark of the second 4-byte data of the data cycle of the data from the data conversion unit (17) of the bus masters (11) to (13) input via the data line (30) The data is modified (changed), and the modified 4-byte data is transferred to the data array section (25) through the data line (26).
【0016】(31)はECCによる誤り訂正を行うための
誤り訂正部で、データ線(30)に接続され、データアレイ
部(25)から読み出された読み出しデータをデータ制御部
(29)に保持する際に、データアレイ部(25)との間に接続
されたチェックビット信号線(32)におけるチェックビッ
ト信号に従って必要であれば誤り訂正を行うものであ
る。Reference numeral (31) is an error correction unit for performing error correction by the ECC, which is connected to the data line (30) and reads the read data read from the data array unit (25) into the data control unit.
When the data is held in (29), error correction is performed if necessary according to the check bit signal in the check bit signal line (32) connected to the data array section (25).
【0017】なお、デコーダ部(19)、ライトマークレジ
スタ部(27)及びデータ制御部(29)が、バスマスタ(11)〜
(13)のアドレス変換部(16)からの仮想アドレス(A+
b)とデータ変換部(17)からの付加データ(ライトマー
クWM)とに基づいて、バイト単位の書き込み(バイト
ライト)を1回のバスサイクルで実現する手段を構成し
ているものであり、さらに、具体的に言えば、バスマス
タ(11)〜(13)のアドレス変換部(16)からの仮想アドレス
(A+b)に基づき、バス幅と同じデータ幅で正規アク
セスアドレスAによるデータアレイ部(25)からのデータ
の読み出しを行いこの読み出したデータを保持する保持
手段と、読み出しデータを保持手段に保持後、バスマス
タ(11)〜(13)のデータ変換部(17)からのデータ(付加デ
ータ)に基づきどのバイトを変更するかを記憶、保持す
る手段と、バスマスタ(11)〜(13)のデータ変換部(17)か
らのデータ(書き込みデータ)と保持手段に保持してい
る読み出しデータを組み合わせてバス幅のデータを作成
して、この作成したデータをデータアレイ部(25)に書き
込む手段とを構成しているものである。The decoder unit (19), the write mark register unit (27) and the data control unit (29) are connected to the bus master (11)-
Virtual address (A +) from the address conversion unit (16) of (13)
b) and the additional data (write mark WM) from the data conversion unit (17) constitute a means for realizing writing (byte write) in byte units in one bus cycle, More specifically, based on the virtual address (A + b) from the address conversion unit (16) of the bus masters (11) to (13), the data array unit (25 ) From the data conversion unit (17) of the bus master (11) to (13) after holding the read data in the holding unit that holds the read data and the read data. A means for storing and holding which byte is changed based on the above, a combination of the data (write data) from the data conversion unit (17) of the bus masters (11) to (13) and the read data held in the holding means hand Generating data-width, those constituting the means for writing the created data the data array (25).
【0018】次に、このように構成されたメモリ制御シ
ステムにおいて、バスマスタ(11)が1バイト単位のデー
タの書き込み(バイトライト)を共有メモリ(15)に行う
際の動作について説明する。この実施例においては、図
4にタイミングチャートとして示しているように、バス
幅が4バイトであり16バイトデータライトを行なって
いるものの、バイトライトを行う場合について説明す
る。なお、この図4において、図示上部に16バイトの
データ書き込みのタイミングを示し、図示下部にバイト
単位のデータの書き込み(バイトライト)のタイミング
を示しており、tは16バイトライトサイクル、aはア
ドレスサイクル、dはデータサイクル、Aは正規アドレ
ス、D1〜D4はデータ、A+bはアドレスサイクルaに
て処理された正規アクセスアドレスAに仮想ベースアド
レスbを加えた仮想アドレス、WMはアドレスサイクル
a後のデータサイクルdの初めの4バイトデータからな
るライトマーク、DはこのライトマークWMに引き続い
たバイト単位の書き込むべきデータを含んだ4バイトデ
ータからなる書き込みデータである。Next, in the memory control system configured as described above, the operation when the bus master (11) writes 1-byte data (byte write) to the shared memory (15) will be described. In this embodiment, as shown in the timing chart of FIG. 4, although the bus width is 4 bytes and 16-byte data write is performed, a case where byte write is performed will be described. In FIG. 4, 16 bytes of data writing timing is shown in the upper part of the drawing, and byte-wise data writing (byte writing) timing is shown in the lower part of the drawing, t is a 16-byte write cycle, and a is an address. Cycle, d is a data cycle, A is a normal address, D 1 to D 4 are data, A + b is a virtual address obtained by adding a virtual base address b to the normal access address A processed in the address cycle a, and WM is an address cycle a. A write mark composed of 4-byte data at the beginning of the subsequent data cycle d, and D is write data composed of 4-byte data including data to be written in byte units following the write mark WM.
【0019】今、バスマスタ(11)がバイト単位のデータ
の書き込み(バイトライト)を行おうとすると、バスマ
スタ(11)は、プロセッサ部(18)から制御信号をバス(14)
の制御バス(14c)に送出し、プロセッサ部(18)の制御の
もとに、アドレス変換部(16)にてバイトライトを行うた
めに正規アドレスAに仮想ベースアドレスbを加えた仮
想アドレス(A+b)を生成し、この仮想アドレス(A
+b)を16バイトのライトトランザクションのアドレ
スサイクルaにバス(14)のアドレスバス(14b)に送出
し、データ変換部(17)にてバイトライトを行うためにバ
イト単位の書き込むべきデータを含んだ書き込みデータ
DにライトマークWMを付加し、ライトマークWMをデ
ータサイクルの初めに、書き込みデータDをデータサイ
クルのライトマークWMの次にバス(14)のデータバス(1
4a)に送出する。Now, when the bus master (11) attempts to write data (byte write) in byte units, the bus master (11) sends a control signal from the processor section (18) to the bus (14).
To the control bus (14c) of the processor, and under the control of the processor unit (18), a virtual address obtained by adding the virtual base address b to the normal address A for byte writing in the address conversion unit (16) ( A + b) is generated and this virtual address (A
+ B) is sent to the address bus (14b) of the bus (14) in the address cycle a of a 16-byte write transaction, and the data conversion unit (17) includes data to be written in byte units for byte writing. A write mark WM is added to the write data D, the write mark WM is set at the beginning of the data cycle, the write data D is set next to the write mark WM of the data cycle, and then the data bus (1) of the bus (14).
4a).
【0020】共有メモリ(15)のテコーダ部(19)は、バス
(14)の制御バス(14c)を介して入力された制御信号によ
り活性化され、アドレスサイクルaにバス(14)のアドレ
スバス(14b)を介してバスマスタ(11)のアドレス変換部
(16)からの仮想アドレス(A+b)を入力する。この仮
想アドレス(A+b)を入力したデコーダ部(19)は、仮
想ベースアドレスbをアクセスすることによってバイト
単位のデータの書き込み(バイトライト)であると判断
し、アドレスサイクルa後、つまりデータサイクルdの
バス幅の初めの4バイトデータが来るときに合わせてラ
イトマークイネーブル線(23)を介してライトマークイネ
ーブル信号をライトマークレジスタ部(27)に送出し、ラ
イトマークレジスタ部(27)をデータサイクルdの初めの
4バイトデータ送出期間活性化する。The coder unit (19) of the shared memory (15) is a bus
The address conversion unit of the bus master (11) is activated by the control signal input through the control bus (14c) of (14) and is activated in the address cycle a through the address bus (14b) of the bus (14).
Input the virtual address (A + b) from (16). The decoder unit (19), to which the virtual address (A + b) is input, determines that the data is written in bytes (byte write) by accessing the virtual base address b, and after the address cycle a, that is, the data cycle d. The write mark enable signal is sent to the write mark register section (27) via the write mark enable line (23) when the first 4 bytes of the bus width of the data comes, and the write mark register section (27) receives the data. It is activated during the first 4-byte data transmission period of cycle d.
【0021】すると、ライトマークレジスタ部(27)は、
バス(14)のデータバス(14a)を介してバスマスタ(11)の
データ変換部(17)から送出されてきたライトマークWM
が入力され、このライトマークWMを保持することにな
る。このライトマークWMがライトマークレジスタ部(2
7)に書き込まれる期間に、デコーダ部(19)は、バス(14)
のアドレスバス(14b)を介して入力されたバスマスタ(1
1)のアドレス変換部(16)からの仮想アドレス(A+b)
におけるバスマスタ(11)がアクセスする変換前の正規ア
クセスアドレスAを、メモリ制御線(22)を介してデータ
アレイ部(25)に送出する。Then, the write mark register section (27)
Light mark WM sent from the data conversion unit (17) of the bus master (11) via the data bus (14a) of the bus (14)
Is input and the light mark WM is held. This light mark WM is the light mark register section (2
During the period written in (7), the decoder section (19) is connected to the bus (14).
Bus master (1
Virtual address (A + b) from the address converter (16) in 1)
The normal access address A before conversion, which is accessed by the bus master (11), is sent to the data array section (25) via the memory control line (22).
【0022】正規アクセスアドレスAを受けたデータア
レイ部(25)において、この正規アクセスアドレスAによ
って選択されたバス幅の4バイトのデータがデータ線(2
6)に読み出され、この4バイトの読み出しデータがデー
タ制御部(29)のバッファに保持される。この時、データ
アレイ部(25)からの読み出しデータは、必要であれば、
誤り訂正部(31)によって誤り訂正が行われてから、デー
タ制御部(29)のバッファに保持されることになる。In the data array section (25) which receives the regular access address A, 4-byte data having the bus width selected by the regular access address A is transferred to the data line (2
The read data of 6 bytes is held in the buffer of the data control unit (29). At this time, if the read data from the data array section (25) is necessary,
After the error is corrected by the error correction unit (31), it is held in the buffer of the data control unit (29).
【0023】データサイクルdにおける2番目のバス幅
の4バイトデータ送出期間、つまり、ライトマークWM
の次に送られてくるバイト単位の書き込むべきデータを
含んだ書き込みデータDの送出する期間に入るときに、
デコーダ部(19)は、バイトライトデータ制御線(24)を介
してバイトライトデータ信号をデータ制御部(29)に送出
する。The 4-byte data transmission period of the second bus width in the data cycle d, that is, the write mark WM
When entering the period for sending the write data D including the data to be written in byte units sent next to,
The decoder section (19) sends a byte write data signal to the data control section (29) via the byte write data control line (24).
【0024】バイトライトデータ信号を受けたデータ制
御部(29)は、バス(14)のデータバス(14a)を介してバス
マスタ(11)のデータ変換部(17)からのバイト単位の書き
込むべきデータを含んだ4バイトの書き込みデータDを
入力するとともに、ライトマークレジスタ部(27)に保持
されたライトマークWMを読み出し、先にバッファ部に
保持したデータアレイ部(25)からの正規アドレスAに基
づいた4バイトのバス幅の読み出しデータのうちのライ
トマークWMの示す1バイト単位のデータを、バス(14)
のデータバス(14a)を介して入力されたバスマスタ(11)
のデータ変換部(17)からの4バイトの書き込みデータD
のうちのライトマークWMの示す1バイト単位のデー
タ、つまりバイト単位の書き込むべきデータでモディフ
ァイ(変更)し、4バイトの変更データを生成する。The data control unit (29) receiving the byte write data signal, the data to be written in byte units from the data conversion unit (17) of the bus master (11) via the data bus (14a) of the bus (14). While inputting 4-byte write data D including the read mark WM stored in the write mark register unit (27), the regular address A from the data array unit (25) previously stored in the buffer unit is read. Of the read data having a bus width of 4 bytes based on the data, the 1 byte unit data indicated by the write mark WM is transferred to the bus
Bus master (11) input via the data bus (14a) of
Write data D of 4 bytes from the data conversion unit (17)
One byte unit data indicated by the write mark WM among them, that is, data to be written in byte units is modified (changed) to generate four bytes of changed data.
【0025】このモディファイされた4バイトの変更デ
ータは、データ線(26)を介してデータアレイ部(25)に送
られ、データアレイ部(25)における正規アクセスアドレ
スAによるアドレスの位置にこの4バイトの変更データ
が書き込まれる。このようにして、バスマスタ(11)が1
バイト単位のデータの書き込み(バイトライト)を共有
メモリ(15)に行うライトトランザクションが終了する。
なお、バスマスタ(12)(13)からの共有メモリ(15)への1
バイト単位のデータの書き込み(バイトライト)も同様
に行われるものである。The modified 4-byte modified data is sent to the data array section (25) through the data line (26), and the 4-byte data is stored in the data array section (25) at the address position of the normal access address A. Bytes of modified data are written. In this way, the bus master (11)
The write transaction for writing data in bytes (byte write) to the shared memory (15) ends.
In addition, 1 from the bus master (12) (13) to the shared memory (15)
The writing of data in byte units (byte writing) is also performed in the same manner.
【0026】上記のように構成されたメモリ制御システ
ムにあっては、バスマスタ(11)〜(13)のアドレス変換部
(16)によって正規アクセスアドレスAを仮想アドレス
(A+b)に変換して、バイト単位のデータの書き込み
(バイトライト)であることを示し、バスマスタ(11)〜
(13)のデータ変換部(17)によって付加されたライトマー
クWMが書き込みデータDにおける書き込むべきバイト
単位のデータを示しているため、これら仮想アドレス
(A+b)、ライトマークWM及び書き込みデータDを
受けた共有メモリ(15)は、書き込むべきバイト単位のデ
ータを含んだバス幅のバイトからなる変更データに変更
して書き込むことになり、1回のトランザクションによ
ってバイトライトが行え、しかも、他のバスマスタに対
してバスロックする必要もないものである。In the memory control system configured as described above, the address conversion units of the bus masters (11)-(13)
By (16), the regular access address A is converted into a virtual address (A + b) to indicate that the data is written in byte units (byte write), and the bus master (11) to
Since the write mark WM added by the data conversion unit (17) of (13) indicates the byte unit data to be written in the write data D, the virtual address (A + b), the write mark WM and the write data D are received. The shared memory (15) is changed into the change data consisting of bytes of the bus width including the data in byte units to be written, and the data is written by one transaction, and it can be written to other bus masters. On the other hand, there is no need to lock the bus.
【0027】[0027]
【発明の効果】この発明は、以上に述べたように、複数
のバスマスタと、これら複数のバスマスタに接続された
所定のバイト幅を有するバスと、このバスに接続され、
バスマスタからアクセスされ、バス幅と同じ幅でデータ
の読み書きを行う複数のバスマスタに対して共有の共有
メモリとを備え、バスマスタを、正規アクセスアドレス
から仮想アドレスへのアドレス変換を行うアドレス変換
手段と、変更を行うバイトを示すデータを付加するデー
タ変換手段とを有したものとしたので、1つのトランザ
クションによって、バスマスタがバイト単位の書き込み
を共有メモリに行えるという効果を有するものである。As described above, according to the present invention, a plurality of bus masters, a bus having a predetermined byte width connected to the plurality of bus masters, and a bus connected to this bus,
An address conversion unit that includes a shared memory shared by a plurality of bus masters that is accessed from the bus master and that reads and writes data with the same width as the bus width, and that converts the bus master from a regular access address to a virtual address. Since the data conversion means for adding the data indicating the byte to be changed is included, the bus master can write data in byte units to the shared memory by one transaction.
【図1】この発明の一実施例を示す構成図。FIG. 1 is a configuration diagram showing an embodiment of the present invention.
【図2】この発明の一実施例におけるバスマスタ(11)〜
(13)を示す構成図。FIG. 2 shows a bus master (11) in one embodiment of the present invention.
The block diagram which shows (13).
【図3】この発明の一実施例における共有メモリ(15)を
示す構成図。FIG. 3 is a configuration diagram showing a shared memory (15) in one embodiment of the present invention.
【図4】この発明の一実施例におけるバイトライトトラ
ンザクションを示すためのタイミングチャート。FIG. 4 is a timing chart showing a byte write transaction according to an embodiment of the present invention.
【図5】従来のメモリ制御システムを示す構成図。FIG. 5 is a configuration diagram showing a conventional memory control system.
11 バスマスタ 12 バスマスタ 13 バスマスタ 14 バス 15 共有メモリ 16 アドレス変換部 17 データ変換部 11 bus master 12 bus master 13 bus master 14 bus 15 shared memory 16 address converter 17 data converter
Claims (1)
マスタに接続された所定のバイト幅を有するバスと、こ
のバスに接続され、上記バスマスタからアクセスされ、
バス幅と同じ幅でデータの読み書きを行う上記複数のバ
スマスタに対して共有の共有メモリとを備え、上記バス
マスタは、正規アクセスアドレスから仮想アドレスへの
アドレス変換を行うアドレス変換手段と、変更を行うバ
イトを示すデータを付加するデータ変換手段とを有して
いることを特徴とするメモリ制御システム。1. A plurality of bus masters, a bus having a predetermined byte width connected to the plurality of bus masters, connected to the bus, and accessed by the bus master,
A shared memory that is shared by the plurality of bus masters that read and write data with the same width as the bus width is provided, and the bus master performs address conversion means that performs address conversion from a regular access address to a virtual address, and performs a change. A memory control system comprising: data conversion means for adding data indicating a byte.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4126696A JPH05298179A (en) | 1992-04-21 | 1992-04-21 | Memory control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4126696A JPH05298179A (en) | 1992-04-21 | 1992-04-21 | Memory control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05298179A true JPH05298179A (en) | 1993-11-12 |
Family
ID=14941590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4126696A Pending JPH05298179A (en) | 1992-04-21 | 1992-04-21 | Memory control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05298179A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7299323B2 (en) | 2004-03-08 | 2007-11-20 | Samsung Electronics Co., Ltd. | Memory controller having a read-modify-write function |
-
1992
- 1992-04-21 JP JP4126696A patent/JPH05298179A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7299323B2 (en) | 2004-03-08 | 2007-11-20 | Samsung Electronics Co., Ltd. | Memory controller having a read-modify-write function |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5274795A (en) | Peripheral I/O bus and programmable bus interface for computer data acquisition | |
JPH02206857A (en) | Method and apparatus for performing read-change-write operations | |
US5687393A (en) | System for controlling responses to requests over a data bus between a plurality of master controllers and a slave storage controller by inserting control characters | |
JPH05298179A (en) | Memory control system | |
JP3304395B2 (en) | Data transfer device and data transfer method | |
JPS6349809B2 (en) | ||
JPS6010948A (en) | Data transmission equpment | |
JP2568443B2 (en) | Data sizing circuit | |
JP2905041B2 (en) | Message transceiver | |
KR100243185B1 (en) | Data communication system between processors using shared memory | |
JPS5936773B2 (en) | Local burst transfer control method | |
JP2586134B2 (en) | CPU external bus access method | |
JP2574821B2 (en) | Direct memory access controller | |
JPH09185882A (en) | First-in first-out memory device with different size of input output data and its method | |
JP2699482B2 (en) | Data transfer control device | |
JP2581144B2 (en) | Bus control device | |
JPH06266612A (en) | Dma controller | |
JP2588514Y2 (en) | Communication control device | |
JPH04348442A (en) | Address converter | |
JPH04337851A (en) | Memory access system | |
JPS5999522A (en) | Input and output control system | |
JP2552025B2 (en) | Data transfer method | |
JPS6261976B2 (en) | ||
JPS6349808B2 (en) | ||
JPS589274A (en) | Write data buffer control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040114 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040130 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 4 Free format text: PAYMENT UNTIL: 20080206 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 5 Free format text: PAYMENT UNTIL: 20090206 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 6 Free format text: PAYMENT UNTIL: 20100206 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100206 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110206 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120206 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120206 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140206 Year of fee payment: 10 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |