JP2003044354A - Memory controller - Google Patents

Memory controller

Info

Publication number
JP2003044354A
JP2003044354A JP2001226485A JP2001226485A JP2003044354A JP 2003044354 A JP2003044354 A JP 2003044354A JP 2001226485 A JP2001226485 A JP 2001226485A JP 2001226485 A JP2001226485 A JP 2001226485A JP 2003044354 A JP2003044354 A JP 2003044354A
Authority
JP
Japan
Prior art keywords
data
memory
address
write
write data
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
JP2001226485A
Other languages
Japanese (ja)
Inventor
Daisuke Kondo
大輔 近藤
Yasushi Ueda
泰志 上田
Toru Aoki
青木  透
Makoto Okazaki
誠 岡▲崎▼
Nobuaki Noguchi
展明 野口
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2001226485A priority Critical patent/JP2003044354A/en
Publication of JP2003044354A publication Critical patent/JP2003044354A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a memory controller capable of transferring data at high speed by minimizing access frequencies to a memory. SOLUTION: A register with the same size as data bus width of the memory is provided, required pieces of data are successively selected from the register after storing the data (with the size of the data bus width of the memory) read from the memory in a single access in the register and outputted to a processor such as a CPU that issues a read request. Thus, only the absolute minimum accesses to the memory are required and the data is transferred at high speed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、メモリに高速にア
クセスすることのできるメモリ制御装置に関するもので
ある。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory control device capable of accessing a memory at high speed.

【0002】[0002]

【従来の技術】従来のメモリ制御装置においては、CP
U等の処理装置が出力するアドレスをそのままメモリに
接続して、メモリアクセスを行っていた。しかし、この
方法では、複数データをリードする場合に、CPUが出
力したアドレス信号のメモリまでの到達時間、メモリへ
のアクセス時間、データのCPUまでの到達時間等が、
各データをリードする毎に加算されるため、アクセス速
度の低下を招くという問題がある。この問題に対し、高
速なメモリアクセスを単一のメモリバスで実現したメモ
リ制御装置(特開平9−34827に開示)がある。
2. Description of the Related Art In a conventional memory control device, CP
The address output from the processing device such as U is directly connected to the memory for memory access. However, in this method, when reading a plurality of data, the arrival time of the address signal output by the CPU to the memory, the access time to the memory, the arrival time of the data to the CPU, etc.
Since it is added every time each data is read, there is a problem that the access speed is lowered. To solve this problem, there is a memory control device (disclosed in Japanese Patent Laid-Open No. 9-34827) that realizes high-speed memory access with a single memory bus.

【0003】従来例として、このメモリ制御装置の簡単
な説明を行う。図13は、従来例のメモリ制御装置の構
成を示すブロック図である。図13において、131は
メモリ制御装置、132はメモリ、133はメモリにア
クセスするCPUである。メモリ制御装置131は、ア
ドレスカウンタ部134、データ保持部135を有す
る。アドレスカウンタ部134は、CPU133から受
け取ったアドレスでメモリ132に対してアクセスを行
い、CPU133のデータバス幅単位でアドレスの更新
を行う。データ保持部135は、CPU133のデータ
バス幅単位でメモリ132から読み出したデータを一時
的に保持する。
As a conventional example, this memory control device will be briefly described. FIG. 13 is a block diagram showing the configuration of a conventional memory control device. In FIG. 13, 131 is a memory control device, 132 is a memory, and 133 is a CPU that accesses the memory. The memory control device 131 has an address counter unit 134 and a data holding unit 135. The address counter unit 134 accesses the memory 132 with the address received from the CPU 133, and updates the address in units of the data bus width of the CPU 133. The data holding unit 135 temporarily holds the data read from the memory 132 in units of the data bus width of the CPU 133.

【0004】CPU133がデータをリードする際に、
先ず、読み出しを開始するデータのメモリ132上のア
ドレスをアドレスカウンタ部134にロードする。アド
レスカウンタ部134は、このアドレスでメモリ132
にアクセスし、リードしたデータ(CPU133のデー
タバス幅分)をデータ保持部135に格納する。CPU
133が、データ保持部135からデータを読み出す間
に、アドレスカウンタ部134は、保持しているアドレ
スを次のアドレス(CPU133のバス幅分先のアドレ
ス)に更新し、メモリ132にアクセスし、リードした
データをデータ保持部135に格納する。従って、同じ
メモリ132から連続したアドレスに対するデータを読
み出す処理において、CPU133がデータを読み込ん
でいる間に、次のアドレスのデータを読み込ませること
で、CPU133は、メモリアクセスに要する待ち時間
なしに、連続してデータを読み込むことができる。
When the CPU 133 reads data,
First, the address on the memory 132 of the data to start reading is loaded into the address counter unit 134. The address counter unit 134 uses this address to store in the memory 132.
To store the read data (for the data bus width of the CPU 133) in the data holding unit 135. CPU
While the 133 reads the data from the data holding unit 135, the address counter unit 134 updates the held address to the next address (address of the CPU 133 bus width ahead), accesses the memory 132, and reads. The stored data is stored in the data holding unit 135. Therefore, in the process of reading data for consecutive addresses from the same memory 132, by causing the data of the next address to be read while the CPU 133 is reading the data, the CPU 133 can continuously perform without waiting time required for memory access. Then you can read the data.

【0005】ここで、アドレスとは、メモリの番地を特
定する任意の情報である。絶対番地の情報、相対番地の
情報、任意の番地を起点として番地をインクリメント又
はデクリメントするクロックを含む。
Here, the address is arbitrary information for specifying the address of the memory. The information includes absolute address information, relative address information, and a clock that increments or decrements the address starting from an arbitrary address.

【0006】また、データのライトの際も、同様にし
て、メモリアクセスに要する待ち時間なしに、連続して
データを書き込むことができる。
Similarly, when writing data, data can be continuously written without waiting time required for memory access.

【0007】[0007]

【発明が解決しようとする課題】しかしながら、従来の
技術において、例えば、CPU133のデータバス幅を
Mビット、メモリ132のデータバス幅をNビットと
し、M<Nの場合には、1回のメモリアクセスでNビッ
トのデータが読み込めるにもかかわらず、Mビット分の
データしか読み込めないので、メモリアクセス回数はN
/M回となる。具体的に数値で示すと、M=8ビット、
N=64ビットの場合に、64ビットのデータを読み込
む場合は、64/8=8回のメモリアクセスが必要とな
る。このように、データ保持部135を用いてデータの
先読みを行うことで、データ読み出し時間を短縮できて
も、メモリへのアクセス回数が多いため消費電力は高い
という問題がある。
However, in the conventional technique, for example, the data bus width of the CPU 133 is M bits and the data bus width of the memory 132 is N bits. When M <N, one memory is used. Even though N-bit data can be read by access, only M-bit data can be read, so the number of memory accesses is N
/ M times. Specifically, M = 8 bits,
When N = 64 bits, when reading 64-bit data, 64/8 = 8 memory accesses are required. As described above, by prefetching the data by using the data holding unit 135, although the data read time can be shortened, there is a problem that the power consumption is high because the number of accesses to the memory is large.

【0008】本発明は、上記従来の問題点を解決するも
のであり、高速なデータ転送及びメモリへのアクセス回
数を最少にした高能率なデータ転送が可能となるメモリ
制御装置を提供することを目的とする。
The present invention solves the above-mentioned conventional problems, and provides a memory control device capable of high-speed data transfer and highly efficient data transfer with a minimum number of memory accesses. To aim.

【0009】[0009]

【課題を解決するための手段】上記課題を解決するため
に、本発明のメモリ制御装置は、下記の構成を有する。
請求項1に記載の発明は、メモリに対するリードアクセ
ス要求とアドレスとを入力する入力部と、mビット(m
は任意の正整数)のデータバスを有し、データを出力す
るデータインタフェース部と、前記アドレスに基づいて
メモリアドレスとリードデータ選択アドレスとを生成
し、格納するアドレス処理部と、前記メモリのアドレス
入力部に前記メモリアドレスを出力するメモリアドレス
出力部と、前記メモリのデータインタフェース部と接続
されたnビット(nはm<nを満たす任意の正整数)の
データバスを有し、前記メモリアドレスで指定された前
記メモリから読み出したデータを入力するメモリデータ
インタフェース部と、前記メモリデータインタフェース
部が入力したnビットのデータを、mビット単位に分割
して格納するリードデータ格納レジスタと、前記リード
データ格納レジスタに格納されているデータから前記リ
ードデータ選択アドレスによって選択したmビットのデ
ータを、前記データインタフェース部に伝送するリード
データセレクタと、を有し、前記アドレスに基づいて生
成された前記メモリアドレスと、前記アドレス処理部に
既に格納されている前記メモリアドレスとが同一である
場合に、前記メモリに対してリードアクセスを行わない
で、前記リードデータセレクタは、前記リードデータ格
納レジスタに既に格納されているデータから、前記アド
レスに基づいて生成された前記リードデータ選択アドレ
スによって選択したmビットのデータを、前記データイ
ンタフェース部に伝送する、ことを特徴とするメモリ制
御装置である。
In order to solve the above problems, the memory control device of the present invention has the following configuration.
According to a first aspect of the present invention, an input unit for inputting a read access request to a memory and an address, and m bits (m
Has an arbitrary positive integer) data bus, outputs a data interface section, an address processing section that generates and stores a memory address and a read data selection address based on the address, and an address of the memory. A memory address output unit that outputs the memory address to an input unit, and an n-bit (n is any positive integer satisfying m <n) data bus connected to the data interface unit of the memory, and the memory address A memory data interface unit for inputting the data read from the memory specified by 1., a read data storage register for dividing the n-bit data input by the memory data interface unit into m-bit units, and storing the read data. The read data selection add from the data stored in the data storage register A read data selector for transmitting m-bit data selected by a memory to the data interface unit, the memory address generated based on the address, and the memory unit already stored in the address processing unit. When the memory address is the same, the read data selector is generated based on the address from the data already stored in the read data storage register without performing read access to the memory. The memory control device is characterized in that m-bit data selected by the read data selection address is transmitted to the data interface unit.

【0010】請求項2に記載の発明は、前記入力部は前
記メモリに対するライトアクセス要求を更に入力し、前
記メモリデータインタフェース部は、前記メモリアドレ
スで指定された前記メモリにライトデータを書き込み、
前記ライトアクセス要求に係る前記アドレスに基づいて
生成された前記メモリアドレスと、前記リードデータ格
納レジスタに既に格納されているデータに係る前記メモ
リアドレスとが同一である場合に、前記リードデータ格
納レジスタに前記ライトデータが書き込まれる、ことを
特徴とする請求項1に記載のメモリ制御装置である。
According to a second aspect of the present invention, the input unit further inputs a write access request for the memory, and the memory data interface unit writes write data to the memory designated by the memory address.
When the memory address generated based on the address related to the write access request and the memory address related to the data already stored in the read data storage register are the same, the read data storage register The memory control device according to claim 1, wherein the write data is written.

【0011】請求項3に記載の発明は、前記リードデー
タ格納レジスタの前記リードデータ選択アドレスに前記
ライトデータが書き込まれた場合、前記リードデータセ
レクタは、前記リードデータ格納レジスタに格納されて
いるデータから前記リードデータ選択アドレスによって
選択したmビットのデータを前記データインタフェース
部に伝送し、前記データインタフェース部は前記mビッ
トのデータを出力する、ことを特徴とする請求項2に記
載のメモリ制御装置である。
According to a third aspect of the present invention, when the write data is written to the read data selection address of the read data storage register, the read data selector is configured to store the data stored in the read data storage register. 3. The memory control device according to claim 2, wherein the m-bit data selected by the read data selection address is transmitted to the data interface unit, and the data interface unit outputs the m-bit data. Is.

【0012】請求項4に記載の発明は、メモリに対する
ライトアクセス要求とアドレスとを入力する入力部と、
mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、前記アドレ
スに基づいてメモリアドレスとライトデータ選択アドレ
スとを生成し、格納するアドレス処理部と、前記メモリ
のアドレス入力部に前記メモリアドレスを出力するメモ
リアドレス出力部と、nビット(nはm<nを満たす任
意の正整数)のレジスタを有するライトデータ格納レジ
スタと、前記ライトデータ格納レジスタの、前記ライト
データ選択アドレスで指定されるmビットのレジスタ
に、前記データインタフェース部が入力したmビットの
データを格納するライトデータセレクタと、前記メモリ
のデータインタフェース部と接続されたnビットのデー
タバスを有し、前記ライトデータ格納レジスタからnビ
ットのデータを入力し、前記メモリアドレスで指定され
た前記メモリにnビットのデータを1回で書き込むメモ
リデータインタフェース部と、を有し、前記アドレスに
基づいて生成された前記メモリアドレスが現在の値から
新たな値に変化した場合、前記メモリデータインタフェ
ース部は、前記ライトデータ格納レジスタからデータを
入力し、変化する前の値の前記メモリアドレスで指定さ
れる前記メモリにデータを書き込み、その後に前記ライ
トデータセレクタは、前記データインタフェース部が入
力したmビットのデータを前記ライトデータ格納レジス
タの前記ライトデータ選択アドレスで指定される前記レ
ジスタに格納する、ことを特徴とするメモリ制御装置で
ある。
According to a fourth aspect of the invention, an input section for inputting a write access request and an address for the memory,
a data interface unit having an m-bit (m is an arbitrary positive integer) data bus for inputting data; an address processing unit for generating and storing a memory address and a write data selection address based on the address; A memory address output unit that outputs the memory address to an address input unit of the memory; a write data storage register having an n-bit (n is an arbitrary positive integer satisfying m <n) register; and a write data storage register A write data selector for storing m-bit data input by the data interface unit in an m-bit register designated by the write data selection address, and an n-bit data bus connected to the data interface unit of the memory And input n-bit data from the write data storage register , A memory data interface unit that writes n-bit data to the memory specified by the memory address at one time, and the memory address generated based on the address is changed from a current value to a new value. When there is a change, the memory data interface unit inputs data from the write data storage register, writes data to the memory specified by the memory address of the value before the change, and then the write data selector, The memory control device is characterized in that the m-bit data input by the data interface unit is stored in the register designated by the write data selection address of the write data storage register.

【0013】請求項5に記載の発明は、メモリに対する
ライトアクセス要求とアドレスとを入力する入力部と、
mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、前記アドレ
スに基づいてメモリアドレスとライトデータ選択アドレ
スとを生成し、格納するアドレス処理部と、前記メモリ
のアドレス入力部に前記メモリアドレスを出力するメモ
リアドレス出力部と、nビット(nはm<nを満たす任
意の正整数)のレジスタを有するライトデータ格納レジ
スタと、前記ライトデータ格納レジスタの、前記ライト
データ選択アドレスで指定されるmビットのレジスタ
に、前記データインタフェース部が入力したmビットの
データを格納するライトデータセレクタと、前記メモリ
のデータインタフェース部と接続されたnビットのデー
タバスを有し、前記ライトデータ格納レジスタからnビ
ットのデータを入力し、前記メモリアドレスで指定され
た前記メモリにnビットのデータを1回で書き込むメモ
リデータインタフェース部と、を有し、前記ライトデー
タ選択アドレスが前記ライトデータ格納レジスタの最終
アドレスであった場合、前記ライトデータセレクタは、
前記データインターフェース部が入力したmビットのデ
ータを、前記ライトデータ格納レジスタの最終アドレス
のレジスタに格納した後、前記メモリデータインターフ
ェース部は、前記ライトデータ格納レジスタからデータ
を入力し、前記メモリアドレスで指定される前記メモリ
にデータを書き込む、ことを特徴とするメモリ制御装置
である。
According to a fifth aspect of the present invention, an input section for inputting a write access request and an address for the memory,
a data interface unit having an m-bit (m is an arbitrary positive integer) data bus for inputting data; an address processing unit for generating and storing a memory address and a write data selection address based on the address; A memory address output unit that outputs the memory address to an address input unit of the memory; a write data storage register having an n-bit (n is an arbitrary positive integer satisfying m <n) register; and a write data storage register A write data selector for storing m-bit data input by the data interface unit in an m-bit register designated by the write data selection address, and an n-bit data bus connected to the data interface unit of the memory And input n-bit data from the write data storage register A memory data interface unit for writing n-bit data to the memory specified by the memory address at one time, and the write data selection address is a final address of the write data storage register, The write data selector is
After storing the m-bit data input by the data interface unit in the register at the final address of the write data storage register, the memory data interface unit inputs the data from the write data storage register and uses the memory address. A memory control device is characterized in that data is written in the specified memory.

【0014】請求項6に記載の発明は、メモリに対する
ライトアクセス要求とアドレスとを入力する入力部と、
mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、前記アドレ
スに基づいてメモリアドレスとライトデータ選択アドレ
スとを生成し、格納するアドレス処理部と、前記メモリ
のアドレス入力部に前記メモリアドレスを出力するメモ
リアドレス出力部と、nビット(nはm<nを満たす任
意の正整数)のレジスタを有するライトデータ格納レジ
スタと、前記ライトデータ格納レジスタの、前記ライト
データ選択アドレスで指定されるmビットのレジスタ
に、前記データインタフェース部が入力したmビットの
データを格納するライトデータセレクタと、前記メモリ
のデータインタフェース部と接続されたnビットのデー
タバスを有し、前記ライトデータ格納レジスタからnビ
ットのデータを入力し、前記メモリアドレスで指定され
た前記メモリにnビットのデータを1回で書き込むメモ
リデータインタフェース部と、を有し、前記ライトデー
タセレクタは、前記データインタフェース部が入力した
mビットのデータを前記ライトデータ格納レジスタに格
納する毎にカウントするカウンタを有し、前記カウンタ
が、予め決められたメモリ書き込みデータ数に到達した
場合は、前記メモリデータインターフェース部は、前記
ライトデータ格納レジスタからデータを入力し、前記メ
モリアドレスで指定される前記メモリにデータを書き込
む、ことを特徴とするメモリ制御装置である。
According to a sixth aspect of the present invention, there is provided an input section for inputting a write access request and an address for the memory,
a data interface unit having an m-bit (m is an arbitrary positive integer) data bus for inputting data; an address processing unit for generating and storing a memory address and a write data selection address based on the address; A memory address output unit that outputs the memory address to an address input unit of the memory; a write data storage register having an n-bit (n is an arbitrary positive integer satisfying m <n) register; and a write data storage register A write data selector for storing m-bit data input by the data interface unit in an m-bit register designated by the write data selection address, and an n-bit data bus connected to the data interface unit of the memory And input n-bit data from the write data storage register A memory data interface unit for writing n-bit data to the memory specified by the memory address at one time, and the write data selector writes the m-bit data input by the data interface unit to the write unit. The memory data interface unit has a counter that counts each time the data is stored in the data storage register. When the counter reaches a predetermined number of memory write data, the memory data interface unit inputs data from the write data storage register. A memory control device is characterized in that data is written in the memory specified by the memory address.

【0015】請求項7に記載の発明は、前記メモリ書き
込みデータ数は、外部から設定可能であることを特徴と
する請求項6に記載のメモリ制御装置である。
The invention according to claim 7 is the memory control device according to claim 6, wherein the number of data to be written in the memory can be set from the outside.

【0016】請求項8に記載の発明は、メモリに対する
ライトアクセス要求とアドレスとを入力する入力部と、
mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、前記アドレ
スに基づいてメモリアドレスとライトデータ選択アドレ
スとを生成し、格納するアドレス処理部と、前記メモリ
のアドレス入力部に前記メモリアドレスを出力するメモ
リアドレス出力部と、nビット(nはm<nを満たす任
意の正整数)のレジスタを有するライトデータ格納レジ
スタと、前記ライトデータ格納レジスタの、前記ライト
データ選択アドレスで指定されるmビットのレジスタ
に、前記データインタフェース部が入力したmビットの
データを格納するライトデータセレクタと、前記メモリ
のデータインタフェース部と接続されたnビットのデー
タバスを有し、前記ライトデータ格納レジスタからnビ
ットのデータを入力し、前記メモリアドレスで指定され
た前記メモリにnビットのデータを1回で書き込むメモ
リデータインタフェース部と、を有し、前記ライトデー
タセレクタは、前記データインタフェース部がmビット
のデータを入力した後に起動するタイマを有し、前記タ
イマが一定時間を計測するまでに、前記データインタフ
ェース部が新たなmビットのデータを入力しない場合
は、前記メモリデータインターフェース部は、前記ライ
トデータ格納レジスタからデータを入力し、前記メモリ
アドレスで指定される前記メモリにデータを書き込む、
ことを特徴とするメモリ制御装置である。
According to an eighth aspect of the present invention, there is provided an input section for inputting a write access request and an address for the memory,
a data interface unit having an m-bit (m is an arbitrary positive integer) data bus for inputting data; an address processing unit for generating and storing a memory address and a write data selection address based on the address; A memory address output unit that outputs the memory address to an address input unit of the memory; a write data storage register having an n-bit (n is an arbitrary positive integer satisfying m <n) register; and a write data storage register A write data selector for storing m-bit data input by the data interface unit in an m-bit register designated by the write data selection address, and an n-bit data bus connected to the data interface unit of the memory And input n-bit data from the write data storage register A memory data interface unit for writing n-bit data to the memory specified by the memory address at one time, and the write data selector is activated after the data interface unit inputs m-bit data. If the data interface unit does not input new m-bit data before the timer measures a certain time, the memory data interface unit inputs data from the write data storage register. Write data to the memory specified by the memory address,
It is a memory control device characterized by the above.

【0017】請求項9に記載の発明は、前記一定時間
は、外部から設定可能であることを特徴とする請求項8
に記載のメモリ制御装置である。
The invention according to claim 9 is characterized in that the fixed time can be set from the outside.
The memory control device described in 1.

【0018】請求項10に記載の発明は、メモリに対す
るライトアクセス要求とアクセス源の情報とアドレスと
を入力する入力部と、mビット(mは任意の正整数)の
データバスを有し、データを入力するデータインタフェ
ース部と、前記アドレスに基づいてメモリアドレスとラ
イトデータ選択アドレスとを生成し、格納するアドレス
処理部と、前記メモリのアドレス入力部に前記メモリア
ドレスを出力するメモリアドレス出力部と、nビット
(nはm<nを満たす任意の正整数)のレジスタを有す
るライトデータ格納レジスタと、前記ライトデータ格納
レジスタの、前記ライトデータ選択アドレスで指定され
るmビットのレジスタに、前記データインタフェース部
が入力したmビットのデータを格納するライトデータセ
レクタと、前記メモリのデータインタフェース部と接続
されたnビットのデータバスを有し、前記ライトデータ
格納レジスタからnビットのデータを入力し、前記メモ
リアドレスで指定された前記メモリにnビットのデータ
を1回で書き込むメモリデータインタフェース部と、を
有し、アクセス源からの前記ライトアクセス要求によ
り、前記データインタフェース部が入力したmビットの
データを前記ライトデータ格納レジスタの前記ライトデ
ータ選択アドレスで指定される前記レジスタに格納して
いる時に、別のアクセス源からのアクセス要求が発生し
た場合は、前記メモリデータインターフェース部は、前
記ライトデータ格納レジスタからデータを入力し、前記
メモリアドレスで指定される前記メモリにデータを書き
込む、ことを特徴とするメモリ制御装置である。「アク
セス要求」は、リードアクセス要求又はライトアクセス
要求のどちらでも良い。
According to a tenth aspect of the present invention, there is provided an input unit for inputting a write access request for the memory, information of an access source and an address, and an m-bit (m is an arbitrary positive integer) data bus, A data interface section for inputting the address, an address processing section for generating and storing a memory address and a write data selection address based on the address, and a memory address output section for outputting the memory address to the address input section of the memory. , N-bit (n is an arbitrary positive integer satisfying m <n) register, and the write-data storage register, the m-bit register specified by the write-data selection address A write data selector for storing m-bit data input by the interface unit, and the memo Has a n-bit data bus connected to the data interface unit, inputs n-bit data from the write data storage register, and writes the n-bit data to the memory specified by the memory address at one time. A memory data interface unit, and the m-bit data input by the data interface unit to the register specified by the write data selection address of the write data storage register in response to the write access request from the access source. If an access request from another access source occurs during storage, the memory data interface unit inputs data from the write data storage register and stores the data in the memory specified by the memory address. Writing, a memory control device characterized by A. The “access request” may be either a read access request or a write access request.

【0019】請求項11に記載の発明は、前記ライトデ
ータセレクタは、前記ライトアクセス要求によって、前
記ライトデータ格納レジスタに、前記ライトデータ選択
アドレスに基づきデータが格納されたかどうかを、前記
ライトデータ格納レジスタの前記mビットのレジスタ単
位で記憶する書き込み記憶レジスタを有し、前記メモリ
データインタフェース部が、前記ライトデータ格納レジ
スタからデータを入力し、前記メモリアドレスで指定さ
れる前記メモリにデータを書き込む際に、前記書き込み
記憶レジスタに基づいて、データが格納された前記ライ
トデータ選択アドレスについてのみ、前記ライトデータ
格納レジスタのデータを前記メモリに書き込む、ことを
特徴とする請求項4〜請求項6、請求項8又は請求項1
0の何れかの請求項に記載のメモリ制御装置である。
According to an eleventh aspect of the present invention, the write data selector determines whether or not data is stored in the write data storage register based on the write data selection address in response to the write access request. When the memory data interface unit has a write storage register for storing the m-bit register unit of the register, the memory data interface unit inputs data from the write data storage register and writes data to the memory specified by the memory address. 7. The data of the write data storage register is written in the memory only for the write data selection address in which the data is stored, based on the write storage register. Item 8 or Claim 1
The memory control device according to claim 1.

【0020】請求項12に記載の発明は、前記メモリへ
のアクセス権を付与する判断を、予め決められているア
クセス源の優先順位により行う制御部を更に有し、前記
優先順位は、外部から設定可能であることを特徴とする
請求項10に記載のメモリ制御装置である。
According to a twelfth aspect of the present invention, there is further provided a control unit for making a decision to grant the access right to the memory according to a priority order of a predetermined access source, and the priority order is from outside. The memory control device according to claim 10, wherein the memory control device is settable.

【0021】本発明は、メモリに対する高速なデータ転
送ができ、更にメモリへのアクセス回数を最少にした消
費電力の低いメモリ制御装置を実現できるという作用を
有する。
The present invention has an effect that a high-speed data transfer to a memory can be realized, and further, a memory control device with a low power consumption can be realized in which the number of accesses to the memory is minimized.

【0022】[0022]

【発明の実施の形態】以下に本発明の実施をするための
最良の形態を具体的に示した実施例について、図面とと
もに記載する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments specifically showing the best mode for carrying out the present invention will be described below with reference to the drawings.

【0023】《実施例1》図1、図2を用いて、実施例
1のメモリ制御装置について説明する。図1は、本発明
の実施例1におけるメモリ制御装置の構成を示すブロッ
ク図である。図1において、1はメモリ制御装置、2は
メモリ、3は第1の処理装置である。メモリ制御装置1
において、4は入力部、5はアドレス処理部、6はメモ
リアドレス出力部、9はメモリデータインタフェース
部、10はリードデータ格納レジスタ、11はリードデ
ータセレクタ、12はデータインタフェース部である。
メモリ2において、7はアドレス入力部、8はデータイ
ンタフェース部である。
<< Embodiment 1 >> A memory control apparatus according to Embodiment 1 will be described with reference to FIGS. First Embodiment FIG. 1 is a block diagram showing the configuration of a memory control device according to a first embodiment of the present invention. In FIG. 1, 1 is a memory control device, 2 is a memory, and 3 is a first processing device. Memory controller 1
In the figure, 4 is an input unit, 5 is an address processing unit, 6 is a memory address output unit, 9 is a memory data interface unit, 10 is a read data storage register, 11 is a read data selector, and 12 is a data interface unit.
In the memory 2, 7 is an address input unit and 8 is a data interface unit.

【0024】第1の処理装置3は、メモリ2にアクセス
するCPU等の制御処理装置である。入力部4は、第1
の処理装置3からのリードアクセス要求及びリードアク
セスするアドレスを入力し、アドレス処理部5にアドレ
スを出力する。アドレス処理部5は、入力部4からのア
ドレスを基にメモリアドレスとリードデータ選択アドレ
スを生成し、メモリアドレスをメモリアドレス出力部6
に出力し、リードデータ選択アドレスをリードデータセ
レクタ11に出力する。メモリアドレス出力部6は、ア
ドレス処理部5からのメモリアドレスをアドレス入力部
7に出力する。メモリ2は、アドレス入力部7が入力し
たメモリアドレスからデータをリードし又はデータをラ
イトする。データインタフェース部8は、メモリ制御装
置1との間でデータ転送を行う。
The first processing device 3 is a control processing device such as a CPU that accesses the memory 2. The input unit 4 is the first
The read access request from the processing device 3 and the address to be read-accessed are input, and the address is output to the address processing unit 5. The address processing unit 5 generates a memory address and a read data selection address based on the address from the input unit 4, and outputs the memory address to the memory address output unit 6
The read data selection address is output to the read data selector 11. The memory address output unit 6 outputs the memory address from the address processing unit 5 to the address input unit 7. The memory 2 reads data from or writes data to the memory address input by the address input unit 7. The data interface unit 8 transfers data with the memory control device 1.

【0025】メモリデータインタフェース部9は、メモ
リ2のデータインタフェース部8からのリードデータを
データバス(バス幅は、例えば、64ビット)を介して
入力する。リードデータ格納レジスタ10は、メモリ2
から読み出した64ビットのデータを、8ビットのデー
タ単位に分割して格納できるレジスタである。また、リ
ードデータ格納レジスタ10のサイズは、メモリデータ
インタフェース部9とデータインタフェース8を接続す
るデータバスのバス幅(64ビット)と同一である。リ
ードデータセレクタ11は、リードデータ格納レジスタ
10からリードデータ選択アドレスによって選択した8
ビットのデータをデータインタフェース部12に出力す
る。データインタフェース部12は、リードデータセレ
クタ11からのデータをデータバス(バス幅は、例え
ば、8ビット)を介して第1の処理装置3へ出力する。
The memory data interface unit 9 inputs the read data from the data interface unit 8 of the memory 2 via the data bus (bus width is, for example, 64 bits). The read data storage register 10 is the memory 2
It is a register that can store the 64-bit data read from the device by dividing it into 8-bit data units. The size of the read data storage register 10 is the same as the bus width (64 bits) of the data bus connecting the memory data interface unit 9 and the data interface 8. The read data selector 11 selects 8 from the read data storage register 10 according to the read data selection address.
The bit data is output to the data interface unit 12. The data interface unit 12 outputs the data from the read data selector 11 to the first processing device 3 via the data bus (bus width is, for example, 8 bits).

【0026】図2は、メモリ2に記憶されたデータを先
頭アドレスから配列で示したものである。データ配列名
をDTとし、配列要素は、先頭アドレスから1バイト単
位に分割して下位側から順番にDT0、DT1、・・・
(以下同様)とする。また、それぞれに対応するメモリ
2上のアドレスは2進数表示で示し、例えば、DT0の
アドレスは、”000_000”となる。ここで、上位
3ビットは、メモリアドレスを示し、メモリ2のデータ
バスの幅(64ビット)毎に桁上がりする。つまり、D
T8のアドレスは、”001_000”、DT16のア
ドレスは、”010_000”となる。下位3ビット
は、リードデータ選択アドレスを示し、1バイト単位で
桁上がりする。つまり、DT9のアドレスは、”001
_001”、DT10のアドレスは、”001_01
0”となる。
FIG. 2 shows the data stored in the memory 2 in an array from the head address. The data array name is DT, and the array elements are divided into 1-byte units from the start address, and the order is DT0, DT1 ,.
(Same below). Further, the corresponding addresses on the memory 2 are shown in binary notation, and for example, the address of DT0 is "000_000". Here, the upper 3 bits indicate a memory address, and carry is carried for each width (64 bits) of the data bus of the memory 2. That is, D
The address of T8 is "001_000", and the address of DT16 is "010_000". The lower 3 bits indicate a read data selection address, and carry is carried in units of 1 byte. In other words, the address of DT9 is "001
_001 ”, the address of DT10 is“ 001_01 ”
It becomes 0 ".

【0027】第1の処理装置3が、メモリ2のDT8か
らDT23までの連続した16バイトのデータを読み出
す場合について説明する。先ず、第1の処理装置3は、
リードアクセス要求とともにそのアドレスとして”00
1_000”を入力部4に出力する。入力部4はアドレ
ス”001_000”をアドレス処理部5に出力する。
この時、メモリアドレスは、上位3ビットが相当するの
で、”001”となる。ここで、前回、アドレス処理部
5が処理したメモリアドレスは”001”でないとす
る。すると、アドレス処理部5は、メモリアドレスとし
て”001”をメモリアドレス出力部6を介してメモリ
2に出力する。メモリ2は、そのアドレスに対応する8
バイトのデータ(DT8〜DT15)をデータインタフ
ェース部8からメモリインタフェース部9に出力する。
メモリデータインタフェース部9が入力したリードデー
タは、DT8から順に、リードデータ格納レジスタ10
の0番レジスタ〜7番レジスタに格納される。
A case where the first processing device 3 reads continuous 16-byte data from DT8 to DT23 of the memory 2 will be described. First, the first processing device 3
"00" as the address together with the read access request
1_000 ”is output to the input unit 4. The input unit 4 outputs the address“ 001_000 ”to the address processing unit 5.
At this time, since the upper 3 bits correspond to the memory address, the memory address is “001”. Here, it is assumed that the memory address processed by the address processing unit 5 last time is not "001". Then, the address processing unit 5 outputs “001” as the memory address to the memory 2 via the memory address output unit 6. Memory 2 has 8 addresses corresponding to the address.
The byte data (DT8 to DT15) is output from the data interface unit 8 to the memory interface unit 9.
The read data input by the memory data interface unit 9 are read data storage register 10 in order from DT8.
Nos. 0 to 7 are stored.

【0028】次に、アドレス処理部5は、”001_0
00”の下位3ビット”000”をリードデータ選択ア
ドレスとしてリードデータセレクタ11に出力する。リ
ードデータセレクタ11は、リードデータ格納レジスタ
10の”000”に相当するレジスタ(0番)に格納さ
れているデータ(DT8)を取得し、データインタフェ
ース部12を介して第1の処理装置3に出力する。次
に、アドレス処理部5は、リードデータ選択アドレスと
して、”000”をインクリメントした”001”をリ
ードセレクタ11に出力する。リードデータセレクタ1
1は、リードデータ格納レジスタ10の”001”に相
当するレジスタ(1番)に格納されているデータ(DT
9)を取得し、第1の処理装置3に出力する。この後、
順次同様にして、リードデータ格納レジスタ10の7番
レジスタに格納されているデータ(DT15)まで、第
1の処理装置3に出力する。
Next, the address processing unit 5 determines "001_0".
The lower 3 bits "000" of 00 "is output to the read data selector 11 as a read data selection address. The read data selector 11 is stored in the register (number 0) corresponding to" 000 "of the read data storage register 10. The data (DT8) stored therein is acquired and output to the first processing device 3 via the data interface unit 12. Next, the address processing unit 5 increments "000" by "001" as the read data selection address. To the read selector 11. Read data selector 1
1 is the data (DT) stored in the register (No. 1) corresponding to “001” of the read data storage register 10.
9) is acquired and output to the first processing device 3. After this,
In the same manner, the data (DT15) stored in the 7th register of the read data storage register 10 is output to the first processing device 3.

【0029】リードデータ選択アドレスが”111”と
なった場合は、インクリメントすると”000”にな
り、メモリアドレスもインクリメント(桁上がり)さ
れ、010となる。よって、アドレス処理部5は、メモ
リアドレスとして”010”をメモリアドレス出力部6
を介してメモリ2に出力する。メモリ2は、そのアドレ
スに対応する8バイトのデータ(DT16〜DT23)
をデータインタフェース部8からメモリインタフェース
部9に出力する。メモリデータインタフェース部9が入
力したリードデータは、DT16から順に、リードデー
タ格納レジスタ10の0番レジスタ〜7番レジスタに格
納される。次に、アドレス処理部5は、”010_00
0”の下位3ビット”000”をリードデータ選択アド
レスとしてリードデータセレクタ11に出力する。リー
ドデータセレクタ11は、リードデータ格納レジスタ1
0の”000”に相当するレジスタ(0番)に格納され
ているデータ(DT16)を取得し、データインタフェ
ース部12を介して第1の処理装置3に出力する。同様
の手順で、リードデータ格納レジスタ10の7番レジス
タに格納されているデータ(DT23)まで、第1の処
理装置3に出力する。
When the read data selection address is "111", it is incremented to "000", and the memory address is also incremented (carried) to 010. Therefore, the address processing unit 5 sets “010” as the memory address to the memory address output unit 6
To the memory 2 via. The memory 2 stores 8-byte data (DT16 to DT23) corresponding to the address.
Is output from the data interface unit 8 to the memory interface unit 9. The read data input by the memory data interface unit 9 is stored in the 0th to 7th registers of the read data storage register 10 in order from the DT 16. Next, the address processing unit 5 determines "010_00".
The lower 3 bits "000" of 0 "is output to the read data selector 11 as a read data selection address. The read data selector 11 reads the read data storage register 1
The data (DT16) stored in the register (0) corresponding to "000" of 0 is acquired and output to the first processing device 3 via the data interface unit 12. By the same procedure, the data (DT23) stored in the 7th register of the read data storage register 10 is output to the first processing device 3.

【0030】次に、第1の処理装置3が、再度、DT2
1を読み込む場合について説明する。先ず、第1の処理
装置3は、リードアクセス要求とともにそのアドレスと
して”010_101”を入力部4を介してアドレス処
理部5に出力する。この時、メモリアドレスは、”01
0”となる。これは、前回にアドレス処理部5が処理し
たメモリアドレスと同一であるので、リード要求したD
T21は、リードデータ格納レジスタ10に格納されて
いることになる。よって、アドレス処理部5は、メモリ
アドレスをメモリアドレス出力部6に出力せずに、”0
10_101”の下位3ビット”101”をリードデー
タ選択アドレスとしてリードデータセレクタ11に出力
する。リードデータセレクタ11は、リードデータ格納
レジスタ10の”101”に相当するレジスタ(5番)
に格納されているデータ(DT21)を取得し、データ
インタフェース部12を介して第1の処理装置3に出力
する。
Next, the first processing unit 3 again sets DT2
The case of reading 1 will be described. First, the first processing device 3 outputs “010_101” as the address together with the read access request to the address processing unit 5 via the input unit 4. At this time, the memory address is "01
It becomes 0 ". Since this is the same as the memory address processed by the address processing unit 5 last time, the read request D
T21 is stored in the read data storage register 10. Therefore, the address processing unit 5 does not output the memory address to the memory address output unit 6 and outputs “0”.
The lower 3 bits "101" of 10_101 "is output to the read data selector 11 as a read data selection address. The read data selector 11 is a register (No. 5) corresponding to" 101 "of the read data storage register 10.
The data (DT21) stored in is acquired and output to the first processing device 3 via the data interface unit 12.

【0031】以上のように、実施例1のメモリ制御装置
においては、メモリ2からデータをリードする際に、1
回のメモリアクセスで、メモリ2のデータバスの幅分
(8バイト)のデータを読み込み、リードデータ格納レ
ジスタ10に格納する。従って、例えば、16バイトの
データをリードする際に、メモリ2へのアクセスが2回
で済むことになる。よって、メモリ2へのアクセス回数
が少ない高能率なメモリアクセスが可能である。
As described above, in the memory control device of the first embodiment, when reading data from the memory 2,
Data of the width of the data bus of the memory 2 (8 bytes) is read by one memory access and stored in the read data storage register 10. Therefore, for example, when reading 16 bytes of data, the memory 2 need only be accessed twice. Therefore, highly efficient memory access is possible with a small number of accesses to the memory 2.

【0032】また、アドレス処理部5が、リード選択ア
ドレスを自動的に更新(インクリメント)し、そのアド
レスを基に、リードデータセレクタ11が、リードデー
タ格納レジスタ10の該当するレジスタからデータを順
次取得して、第1の処理装置3に対して出力するので、
連続したデータの高速読み出しが行える。
Further, the address processing unit 5 automatically updates (increments) the read selection address, and based on the address, the read data selector 11 sequentially acquires data from the corresponding register of the read data storage register 10. Then, since the data is output to the first processing device 3,
High-speed reading of continuous data is possible.

【0033】更に、前回処理したメモリアドレスと同一
のメモリアドレスに対するリード要求があった場合は、
メモリ2にアクセスしないで、リードデータ格納レジス
タ10からデータを読み出すので、データの高速読み出
しが行える。
Further, if there is a read request for the same memory address as the previously processed memory address,
Since the data is read from the read data storage register 10 without accessing the memory 2, the data can be read at high speed.

【0034】《実施例2》図3を用いて、実施例2のメ
モリ制御装置について説明する。図3は、本発明の実施
例2におけるメモリ制御装置の構成を示すブロック図で
ある。実施例2のメモリ制御装置の構成は、第2の処理
装置31が追加されている点で実施例1のメモリ制御装
置(図1)と異なる。他の点では両者は同一である。同
一のものについては同一符号を付し、説明を省略する。
第2の処理装置31は、第1の処理装置3と同様にメモ
リ2にアクセスする。第2の処理装置31は、ライトア
クセス要求とそのアドレスの入力部4への出力、メモリ
2へのデータ書き込み、リードデータ格納レジスタ10
へのデータ書き込み、を行う。
<< Second Embodiment >> A memory control device according to a second embodiment will be described with reference to FIG. FIG. 3 is a block diagram showing the configuration of the memory control device according to the second embodiment of the present invention. The configuration of the memory control device of the second embodiment differs from the memory control device of the first embodiment (FIG. 1) in that a second processing device 31 is added. Otherwise they are the same. The same parts are designated by the same reference numerals and the description thereof will be omitted.
The second processing device 31 accesses the memory 2 similarly to the first processing device 3. The second processing device 31 outputs a write access request and its address to the input unit 4, writes data to the memory 2, and reads the data storage register 10.
Write data to.

【0035】先ず、第1の処理装置3が、DT0〜DT
7までのデータのリードアクセス要求を出し、実施例1
に記載の手順で、メモリ2からデータを読み出したとす
る。その後に、第2の処理装置31が、DT6を更新す
るために、ライトアクセス要求とともにアドレス”00
0_110”を入力部4へ出力する。入力部4は、アド
レス”000_110”をアドレス処理部5に出力す
る。この時、メモリアドレスは”000”となり、これ
は、先に第1の処理装置3が、リードアクセスした際の
メモリアドレスと同一である。よって、第2の処理装置
31は、メモリ2のアドレス”000_110”に新し
いデータ(DT6)を書き込むと同時に、リードデータ
格納レジスタ10のDT6を格納する6番のレジスタも
新しいデータ(DT6)に更新する。
First, the first processing unit 3 is
A read access request for data up to 7 is issued and the first embodiment is executed.
It is assumed that the data is read from the memory 2 by the procedure described in 1. After that, the second processing device 31 updates the DT6 in order to update the DT6 with the address "00".
0_110 "is output to the input unit 4. The input unit 4 outputs the address" 000_110 "to the address processing unit 5. At this time, the memory address becomes" 000 ", which is the first processing unit 3 first. However, the second processing device 31 writes new data (DT6) to the address “000 — 110” of the memory 2 and at the same time sets DT6 of the read data storage register 10 to the same. The 6th register to be stored is also updated with new data (DT6).

【0036】リードデータ格納レジスタ10のレジスタ
の内容が更新されたので、メモリ制御装置1は、第1の
処理装置3に、再度、リードデータ格納レジスタ10の
6番レジスタに格納されているデータ(DT6)の読み
出しを行わせる。
Since the contents of the read data storage register 10 have been updated, the memory control device 1 causes the first processing device 3 to again store the data stored in the 6th register of the read data storage register 10 ( Read out DT6).

【0037】以上のように、実施例2のメモリ制御装置
においては、メモリ2へのライトアクセスの際に、その
メモリアドレスをチェックし、これが、前回リードアク
セスした時のメモリアドレスと同一の場合は、メモリ2
への書き込みとともに、リードデータ格納レジスタ10
の該当するレジスタにも同一のデータの書き込みを行
う。これにより、リードデータ格納レジスタ10に格納
されているデータは常時最新に保たれる。
As described above, in the memory control device of the second embodiment, the memory address is checked at the time of write access to the memory 2, and if this is the same as the memory address at the time of the previous read access, , Memory 2
Write data to the read data storage register 10
The same data is written to the corresponding register of. As a result, the data stored in the read data storage register 10 is always kept the latest.

【0038】また、第1の処理装置3が、メモリ2に対
するリードアクセス後に、第2の処理装置31が、リー
ドデータ格納レジスタ10のレジスタ値を更新した場合
は、第1の処理装置3は、リードデータ格納レジスタ1
0の更新されたレジスタのデータを再度読み込む事で、
最新のデータを読み込め、データの整合性を保つ事がで
きる。
When the second processing device 31 updates the register value of the read data storage register 10 after the first processing device 3 makes a read access to the memory 2, the first processing device 3 Read data storage register 1
By reloading the updated register data of 0,
The latest data can be read and the integrity of the data can be maintained.

【0039】尚、本実施例では、第2の処理装置31の
メモリ2へのライトアクセス処理を簡易な構成で記述し
たが、実際の運用時は、後述する実施例での構成を採用
する。
In this embodiment, the write access processing to the memory 2 of the second processing device 31 is described with a simple structure, but during actual operation, the structure of the embodiment described later is adopted.

【0040】《実施例3》図4〜図6を用いて、実施例
3のメモリ制御装置について説明する。図4は、本発明
の実施例3におけるメモリ制御装置の構成を示すブロッ
ク図である。図4で、41はメモリ制御装置、2はメモ
リ、3は第1の処理装置である。メモリ制御装置41に
おいて、4は入力部、5はアドレス処理部、6はメモリ
アドレス出力部、12はデータインタフェース部、42
はライトデータセレクタ、43はライトデータ格納レジ
スタ、44は書き込み記憶レジスタ、9はメモリデータ
インタフェース部である。メモリ2において、7はアド
レス入力部、8はデータインタフェース部である。
<< Third Embodiment >> A memory control device according to a third embodiment will be described with reference to FIGS. FIG. 4 is a block diagram showing the configuration of the memory control device according to the third embodiment of the present invention. In FIG. 4, 41 is a memory control device, 2 is a memory, and 3 is a first processing device. In the memory control device 41, 4 is an input unit, 5 is an address processing unit, 6 is a memory address output unit, 12 is a data interface unit, 42
Is a write data selector, 43 is a write data storage register, 44 is a write storage register, and 9 is a memory data interface unit. In the memory 2, 7 is an address input unit and 8 is a data interface unit.

【0041】第1の処理装置3は、メモリ2にアクセス
するCPU等の制御処理装置である。入力部4は、第1
の処理装置3からのライトアクセス要求信号及びライト
アクセスするアドレスを入力し、アドレス処理部5にア
ドレスを出力する。アドレス処理部5は、入力部4から
のアドレスを基にメモリアドレスとライトデータ選択ア
ドレスを生成し、メモリアドレスをメモリアドレス出力
部6に出力し、ライトデータ選択アドレスをライトデー
タセレクタ42に出力する。メモリアドレス出力部6
は、アドレス処理部5からのメモリアドレスをアドレス
入力部7に出力する。データインタフェース部12は、
第1の処理装置3が出力したライトデータ(例えば、8
ビット単位)を入力し、ライトデータセレクタ42に出
力する。
The first processing device 3 is a control processing device such as a CPU that accesses the memory 2. The input unit 4 is the first
The write access request signal and the address for write access from the processing device 3 are input, and the address is output to the address processing unit 5. The address processing unit 5 generates a memory address and a write data selection address based on the address from the input unit 4, outputs the memory address to the memory address output unit 6, and outputs the write data selection address to the write data selector 42. . Memory address output unit 6
Outputs the memory address from the address processing unit 5 to the address input unit 7. The data interface unit 12 is
Write data output by the first processing device 3 (for example, 8
(Bit unit) is input and output to the write data selector 42.

【0042】ライトデータセレクタ42は、データイン
タフェース部12が出力したデータを、ライトデータ選
択アドレスによって選択したライトデータ格納レジスタ
43の該当するレジスタに格納する。ライトデータ格納
レジスタ43は、メモリ2に対して出力するデータを8
ビットのデータ単位に分割して格納できるレジスタであ
る。また、ライトデータ格納レジスタ43のサイズは、
メモリデータインタフェース部9とデータインタフェー
ス8を接続するデータバスのバス幅(例えば、64ビッ
ト)と同一である。メモリデータインタフェース部9
は、ライトデータをデータバスを介してメモリ2へ出力
する。アドレス入力部7は、メモリアドレス出力部6か
らのメモリアドレスを入力する。メモリ2は、このアド
レスからデータをリードし又はこのアドレスからデータ
をライトする。データインタフェース部8は、メモリ制
御装置41との間でデータ転送を行う。書き込み記憶レ
ジスタ44は、ライトデータ格納レジスタ43の0番〜
7番のどのレジスタにデータが格納されたかを記憶す
る。
The write data selector 42 stores the data output from the data interface section 12 in the corresponding register of the write data storage register 43 selected by the write data selection address. The write data storage register 43 stores the data to be output to the memory 2 in 8
It is a register that can be divided and stored in bit data units. The size of the write data storage register 43 is
It is the same as the bus width (for example, 64 bits) of the data bus connecting the memory data interface unit 9 and the data interface 8. Memory data interface unit 9
Outputs the write data to the memory 2 via the data bus. The address input unit 7 inputs the memory address from the memory address output unit 6. The memory 2 reads data from this address or writes data from this address. The data interface unit 8 transfers data with the memory control device 41. The write storage register 44 includes the write data storage register 43, numbers 0 to
It stores in which register No. 7 the data is stored.

【0043】第1の処理装置3が、メモリ2に対してD
T8〜DT14及びDT16の8バイトのデータを書き
込む動作について説明する。先ず、第1の処理装置3
は、ライトアクセス要求とともにDT8のデータを書き
込むアドレス”001_000”を入力部4に出力し、
ライトデータ(DT8)をデータインタフェース部12
を介してライトデータセレクタ42に出力する。入力部
4は、アドレス”001_000”をアドレス処理部5
に出力する。アドレス処理部5は、”001_000”
の下位3ビット”000”をライトデータ選択アドレス
としてライトデータセレクタ42に出力する。ライトデ
ータ選択アドレス”000”は、ライトデータ格納レジ
スタ43の0番のレジスタが相当し、ライトデータセレ
クタ42は、このレジスタにDT8を格納する。
The first processing unit 3 sends D to the memory 2.
The operation of writing 8-byte data of T8 to DT14 and DT16 will be described. First, the first processing device 3
Outputs to the input unit 4 the address "001_000" for writing the data of DT8 together with the write access request,
The write data (DT8) is transferred to the data interface unit 12
To the write data selector 42 via. The input unit 4 sends the address “001 — 000” to the address processing unit 5
Output to. The address processing unit 5 is "001_000".
The lower 3 bits “000” of the above are output to the write data selector 42 as the write data selection address. The write data selection address “000” corresponds to the 0th register of the write data storage register 43, and the write data selector 42 stores DT8 in this register.

【0044】次に、第1の処理装置3は、DT9をデー
タインタフェース部12を介してライトデータセレクタ
42に出力する。アドレス処理部5は、前回のライトデ
ータ選択アドレス”000”をインクリメントした”0
01”を新しいライトデータ選択アドレスとしてライト
データセレクタ42に出力する。ライトデータセレクタ
42は、”001”に相当するライトデータ格納レジス
タ43の1番のレジスタにDT9を格納する。以下、同
様の手順で、DT10〜DT14のデータをライトデー
タ格納レジスタ43の2番〜6番のレジスタに格納す
る。
Next, the first processing unit 3 outputs the DT 9 to the write data selector 42 via the data interface section 12. The address processing unit 5 increments the previous write data selection address “000” by “0”.
01 "is output as a new write data selection address to the write data selector 42. The write data selector 42 stores DT9 in the first register of the write data storage register 43 corresponding to" 001 ". Then, the data of DT10 to DT14 are stored in the second to sixth registers of the write data storage register 43.

【0045】次に、第1の処理装置3は、アドレス”0
10_000”を入力部4に出力し、DT16をデータ
インタフェース部12を介してライトデータセレクタ4
2に出力する。入力部4は、アドレス”010_00
0”をアドレス処理部5に出力する。この時、メモリア
ドレスは”010”となり、これは前回処理したメモリ
アドレス”001”と異なる。よって、アドレス処理部
5は、変化前のメモリアドレス”001”をメモリアド
レス出力部6を介してメモリ2へ出力する。そして、ラ
イトデータ格納レジスタ43のレジスタに格納したライ
トデータ(DT8〜DT14)をメモリデータインタフ
ェース部9を介してメモリ2の先に出力したメモリアド
レスの領域に書き込む。その後で、DT16を前述と同
様の手順によりライトデータ格納レジスタ43の0番の
レジスタに格納する。
Next, the first processor 3 receives the address "0".
10_000 "is output to the input unit 4, and the DT 16 is output to the write data selector 4 via the data interface unit 12.
Output to 2. The input unit 4 receives the address “010_00
0 "is output to the address processing unit 5. At this time, the memory address becomes" 010 ", which is different from the previously processed memory address" 001 ". Therefore, the address processing unit 5 causes the memory address" 001 "before the change. Is output to the memory 2 via the memory address output unit 6. Then, the write data (DT8 to DT14) stored in the register of the write data storage register 43 is output to the destination of the memory 2 via the memory data interface unit 9. Then, the DT 16 is stored in the 0th register of the write data storage register 43 by the same procedure as described above.

【0046】また、ライトデータ格納レジスタ43のレ
ジスタに格納したライトデータをメモリ2へ書き込む際
に、書き込み記憶レジスタ44を用いる事により、第1
の処理装置3が出力し、ライトデータ格納レジスタ43
にライトデータ選択アドレスに基づき格納したライトデ
ータのみ、メモリ2に書き込むことができる。図5は、
このような状況下での、書き込み記憶レジスタ44の内
部状態とライトデータ格納レジスタ43の内部状態を示
したものである。図5で、ライトデータ格納レジスタ4
3の0番〜6番のレジスタのDT8〜DT14は、本ラ
イトアクセスにより格納されたデータを示す。書き込み
記憶レジスタ44の0番〜6番のレジスタに対応する領
域には、書き込み済みを示すフラグ”1”が設定されて
いる。7番のレジスタには書き込まれていないので”
0”となっている。書き込み記憶レジスタ44の内容
は、ライトデータ格納レジスタ43の内容をメモリ2に
出力した際に、リセットされる。
Further, when the write data stored in the register of the write data storage register 43 is written in the memory 2, by using the write storage register 44,
Of the write data storage register 43
Only the write data stored based on the write data selection address can be written in the memory 2. Figure 5
Under these circumstances, the internal states of the write storage register 44 and the write data storage register 43 are shown. In FIG. 5, the write data storage register 4
DT8 to DT14 of the 0th to 6th registers of 3 indicate the data stored by this write access. In the area corresponding to the 0th to 6th registers of the write storage register 44, a flag "1" indicating that writing has been completed is set. Since it is not written in the 7th register, "
The contents of the write storage register 44 are reset when the contents of the write data storage register 43 are output to the memory 2.

【0047】図6は、ライトアクセス要求時のアドレス
のメモリアドレスが変化した場合に、ライトデータ格納
レジスタ43に格納されたデータがメモリ2に書き込ま
れるまでの動作アルゴリズムを示すフローチャートであ
る。
FIG. 6 is a flowchart showing an operation algorithm until the data stored in the write data storage register 43 is written in the memory 2 when the memory address at the time of the write access request changes.

【0048】ステップS61では、ライトアクセス要求
中であるかどうかの判断を行う。ライトアクセス要求中
の場合は、ステップS62に移行し、ライトアクセス要
求中でない場合は、本処理を終了する。ステップS62
では、メモリアドレスが変化したかどうかを判定する。
メモリアドレスが変化した場合は、ステップS63に移
行し、変化していない場合は、ステップS65に移行す
る。ステップS63では、アドレス処理部5が、メモリ
アドレス出力部6を介してメモリ2に変化前のメモリア
ドレスを出力する。ステップS64では、ライトデータ
格納レジスタ43に格納されたライトデータをメモリデ
ータインタフェース部9を介してメモリ2に出力する。
ステップS65では、ライトデータセレクタ42に保持
されているデータを、ライトデータ選択アドレスに基づ
いて、ライトデータ格納レジスタ43の該当するレジス
タに格納し、ステップS61に戻る。
In step S61, it is determined whether or not a write access request is being made. If a write access request is being made, the process proceeds to step S62, and if a write access request is not being made, this processing ends. Step S62
Then, it is determined whether the memory address has changed.
If the memory address has changed, the process proceeds to step S63, and if it has not changed, the process proceeds to step S65. In step S63, the address processing unit 5 outputs the memory address before change to the memory 2 via the memory address output unit 6. In step S64, the write data stored in the write data storage register 43 is output to the memory 2 via the memory data interface unit 9.
In step S65, the data held in the write data selector 42 is stored in the corresponding register of the write data storage register 43 based on the write data selection address, and the process returns to step S61.

【0049】以上のように、実施例3のメモリ制御装置
においては、第1の処理装置3が出力したライトデータ
をメモリ2に直接転送しないで、ライトデータ格納レジ
スタ43のレジスタに格納し、アドレス処理部5が生成
するメモリアドレスの変化によって、ライトデータ格納
レジスタ43のレジスタに格納したデータをメモリ2へ
書き込むので、データの高速書き込みができ、メモリ2
へのライトアクセスを最少にすることが可能である。
As described above, in the memory control device of the third embodiment, the write data output from the first processing device 3 is not directly transferred to the memory 2 but is stored in the register of the write data storage register 43 and the address is stored. Since the data stored in the register of the write data storage register 43 is written to the memory 2 according to the change of the memory address generated by the processing unit 5, the data can be written at high speed.
It is possible to minimize write access to.

【0050】また、書き込み記憶レジスタ44を用いる
ことで、第1の処理装置3が、ライトアクセス要求した
データのみ、メモリ2に書き込むことができる。よっ
て、不要なデータが誤って上書きされることがない。
Further, by using the write storage register 44, the first processing device 3 can write only the data for which the write access is requested into the memory 2. Therefore, unnecessary data is not accidentally overwritten.

【0051】《実施例4》実施例4のメモリ制御装置に
ついて説明する。実施例4のメモリ制御装置の構成は、
実施例3のメモリ制御装置(図4)と同一である。
<< Fourth Embodiment >> A memory control device according to a fourth embodiment will be described. The configuration of the memory control device according to the fourth embodiment is as follows.
This is the same as the memory control device (FIG. 4) of the third embodiment.

【0052】第1の処理装置3が、メモリ2に対してD
T9〜DT16の8バイトのデータを書き込む動作につ
いて説明する。先ず、第1の処理装置3は、ライトアク
セス要求とともにDT9のデータを書き込むアドレス”
001_001”を入力部4に出力し、ライトデータ
(DT9)をデータインタフェース部12を介してライ
トデータセレクタ42に出力する。入力部4は、アドレ
ス”001_001”をアドレス処理部5に出力する。
アドレス処理部5は、”001_001”の下位3ビッ
ト”001”をライトデータ選択アドレスとしてライト
データセレクタ42に出力する。ライトデータ選択アド
レス”001”は、ライトデータ格納レジスタ43の1
番のレジスタに相当し、ライトデータセレクタ42は、
このレジスタにDT9を格納する。以下、同様の手順
で、DT10〜DT15のデータをライトデータ格納レ
ジスタ43の2番〜7番のレジスタに格納する。
The first processing unit 3 makes D
An operation of writing 8-byte data of T9 to DT16 will be described. First, the first processing device 3 writes the address for writing the data of the DT 9 together with the write access request.
001_001 ”is output to the input unit 4, and write data (DT9) is output to the write data selector 42 via the data interface unit 12. The input unit 4 outputs the address“ 001_001 ”to the address processing unit 5.
The address processing unit 5 outputs the lower 3 bits “001” of “001 — 001” to the write data selector 42 as a write data selection address. The write data selection address “001” is 1 in the write data storage register 43.
Number register, and the write data selector 42 is
DT9 is stored in this register. Thereafter, the data of DT10 to DT15 are stored in the second to seventh registers of the write data storage register 43 in the same procedure.

【0053】DT15をライトデータ格納レジスタ43
の7番のレジスタに格納すると、7番のレジスタは最終
レジスタであるので、アドレス処理部5は、メモリアド
レス”001”をメモリアドレス出力部6を介してメモ
リ2へ出力する。そして、ライトデータ格納レジスタ4
3のレジスタに格納したライトデータ(DT9〜DT1
5)をメモリデータインタフェース部9を介してメモリ
2の先に出力したメモリアドレスの領域に書き込む。そ
の後で、DT16を前述と同様の手順によりライトデー
タ格納レジスタ43の0番のレジスタに格納する。
Write data storage register 43 to DT15
When it is stored in the No. 7 register, the No. 7 register is the final register, and therefore the address processing unit 5 outputs the memory address “001” to the memory 2 via the memory address output unit 6. Then, the write data storage register 4
Write data stored in the register 3 (DT9 to DT1
5) is written to the area of the memory address output to the end of the memory 2 via the memory data interface unit 9. After that, the DT 16 is stored in the 0th register of the write data storage register 43 by the same procedure as described above.

【0054】また、実施例3と同様に、ライトデータ格
納レジスタ43のレジスタに格納したライトデータをメ
モリ2へ書き込む際に、書き込み記憶レジスタ44を用
いる事により、第1の処理装置3が出力し、ライトデー
タ格納レジスタ43にライトデータ選択アドレスに基づ
き格納したライトデータのみを、メモリ2に書き込むこ
とができる。
As in the third embodiment, when the write data stored in the register of the write data storage register 43 is written in the memory 2, the write storage register 44 is used to output the data from the first processing unit 3. Only the write data stored in the write data storage register 43 based on the write data selection address can be written in the memory 2.

【0055】図7は、ライトデータ格納レジスタ43の
最終(7番)レジスタにライトデータが格納された場合
に、ライトデータ格納レジスタ43に格納されたデータ
がメモリ2に書き込まれるまでの動作アルゴリズムを示
すフローチャートである。
FIG. 7 shows an operation algorithm until the data stored in the write data storage register 43 is written in the memory 2 when the write data is stored in the last (7th) register of the write data storage register 43. It is a flowchart shown.

【0056】ステップS71では、ライトアクセス要求
中であるかどうかの判断を行う。ライトアクセス要求中
の場合は、ステップS72に移行し、ライトアクセス要
求中でない場合は、本処理を終了する。ステップS72
では、ライトデータセレクタ42に保持されているデー
タを、ライトデータ選択アドレスに基づいて、ライトデ
ータ格納レジスタ43の該当するレジスタに格納する。
ステップS73では、データを格納したライトデータ格
納レジスタ43のレジスタが最終レジスタかどうかを判
定する。最終レジスタの場合はステップS74に移行
し、そうでない場合は、ステップS71に移行する。ス
テップS74では、アドレス処理部5が、メモリアドレ
ス出力部6を介してメモリ2にメモリアドレスを出力す
る。ステップS75では、ライトデータ格納レジスタ4
3に格納されたライトデータをメモリデータインタフェ
ース部9を介してメモリ2に出力し、ステップS71に
戻る。
In step S71, it is determined whether or not a write access request is being made. If a write access request is being made, the process proceeds to step S72, and if a write access request is not being made, this processing ends. Step S72
Then, the data held in the write data selector 42 is stored in the corresponding register of the write data storage register 43 based on the write data selection address.
In step S73, it is determined whether the register of the write data storage register 43 storing the data is the final register. If it is the final register, the process proceeds to step S74, and if not, the process proceeds to step S71. In step S74, the address processing unit 5 outputs the memory address to the memory 2 via the memory address output unit 6. In step S75, the write data storage register 4
The write data stored in 3 is output to the memory 2 via the memory data interface unit 9, and the process returns to step S71.

【0057】以上のように、実施例4のメモリ制御装置
においては、第1の処理装置3が出力したライトデータ
をメモリ2に直接転送しないで、ライトデータ格納レジ
スタ43のレジスタに格納し、ライトデータ格納レジス
タ43の最終レジスタにデータを格納することによっ
て、ライトデータ格納レジスタ43のレジスタに格納し
たデータをメモリ2へ書き込むので、データの高速書き
込みができ、メモリ2へのライトアクセスを最少にする
ことが可能である。
As described above, in the memory control device according to the fourth embodiment, the write data output from the first processing device 3 is not directly transferred to the memory 2 but is stored in the register of the write data storage register 43 to be written. By storing the data in the final register of the data storage register 43, the data stored in the register of the write data storage register 43 is written in the memory 2, so that the data can be written at high speed and the write access to the memory 2 is minimized. It is possible.

【0058】《実施例5》図8、図9を用いて、実施例
5のメモリ制御装置について説明する。図8は、本発明
の実施例5におけるメモリ制御装置の構成を示すブロッ
ク図である。なお、実施例1〜実施例4と同一のものに
ついては、同一符号を付し、説明を省略する。図8にお
いて、81はメモリ制御装置、82はライトデータセレ
クタ、83はカウンタ、84は外部設定部である。ライ
トデータセレクタ82は、実施例4で記載した機能に加
え、カウンタ83を有する。カウンタ83は、ライトデ
ータセレクタ82からライトデータ格納レジスタ43の
レジスタにライトデータを格納する毎に、インクリメン
トするカウンタである。外部設定部84は、カウンタ8
3の値と比較を行う”メモリ書き込みデータ数”の設定
を外部から行える入力装置である。メモリ書き込みデー
タ数の単位はバイトとする。
<Fifth Embodiment> A memory control device according to a fifth embodiment will be described with reference to FIGS. FIG. 8 is a block diagram showing the configuration of the memory control device according to the fifth embodiment of the present invention. The same components as those in Embodiments 1 to 4 are designated by the same reference numerals and the description thereof will be omitted. In FIG. 8, 81 is a memory control device, 82 is a write data selector, 83 is a counter, and 84 is an external setting unit. The write data selector 82 has a counter 83 in addition to the functions described in the fourth embodiment. The counter 83 is a counter that increments each time write data is stored in the register of the write data storage register 43 from the write data selector 82. The external setting unit 84 uses the counter 8
This is an input device that can externally set the "memory write data count" for comparison with the value of 3. The unit of data written to memory is bytes.

【0059】メモリ2の連続する領域に3バイトのデー
タ(DT17〜DT19)を書き込む動作を例にして説
明する。先に、外部設定部84を用いて、メモリ書き込
みデータ数を3(バイト)に設定しておく。先ず、第1
の処理装置3は、ライトアクセス要求とともにDT17
のデータを書き込むアドレス”010_001”を入力
部4に出力し、ライトデータ(DT17)をデータイン
タフェース部12を介してライトデータセレクタ82に
出力する。入力部4は、アドレス”010_001”を
アドレス処理部5に出力する。アドレス処理部5は、”
010_001”の下位3ビット”001”をライトデ
ータ選択アドレスとしてライトデータセレクタ82に出
力する。ライトデータ選択アドレス”001”は、ライ
トデータ格納レジスタ43の1番のレジスタが相当する
ので、ライトデータセレクタ82は、このレジスタにD
T17を格納する。
An operation of writing 3 bytes of data (DT17 to DT19) in a continuous area of the memory 2 will be described as an example. First, the external setting unit 84 is used to set the number of memory write data to 3 (bytes). First, the first
Processing device 3 of DT17 with the write access request.
The address "010_001" for writing the data is output to the input unit 4, and the write data (DT17) is output to the write data selector 82 via the data interface unit 12. The input unit 4 outputs the address “010 — 001” to the address processing unit 5. The address processing unit 5
The lower 3 bits “001” of 010 — 001 ”are output as the write data selection address to the write data selector 82. Since the write data selection address“ 001 ”corresponds to the first register of the write data storage register 43, the write data selector 82 is D in this register
Store T17.

【0060】この時、カウンタ83に1を設定する。以
下、同様の手順で、DT18、DT19のデータをライ
トデータ格納レジスタ43の2番、3番のレジスタに格
納し、格納する毎にカウンタ83をインクリメントす
る。すると、カウンタ83の値が3となり、メモリ書き
込みデータ数と一致するので、アドレス処理部5は、メ
モリアドレス”010”をメモリアドレス出力部6を介
してメモリ2へ出力する。そして、ライトデータ格納レ
ジスタ43のレジスタに格納したライトデータ(DT1
7〜DT19)をメモリデータインタフェース部9を介
してメモリ2の先に出力したメモリアドレスの領域に書
き込む。カウンタ83は、この時点で、0クリアされ
る。
At this time, 1 is set in the counter 83. Hereinafter, in the same procedure, the data of DT18 and DT19 are stored in the second and third registers of the write data storage register 43, and the counter 83 is incremented each time the data is stored. Then, the value of the counter 83 becomes 3, which coincides with the number of memory write data. Therefore, the address processing unit 5 outputs the memory address “010” to the memory 2 via the memory address output unit 6. Then, the write data (DT1 stored in the register of the write data storage register 43
7 to DT19) is written in the area of the memory address output earlier in the memory 2 via the memory data interface unit 9. The counter 83 is cleared to 0 at this point.

【0061】ここで、実施例3と同様に、ライトデータ
格納レジスタ43のレジスタに格納したライトデータを
メモリ2へ書き込む際に、書き込み記憶レジスタ44を
用いる事により、第1の処理装置3が出力し、ライトデ
ータ格納レジスタ43にライトデータ選択アドレスに基
づき格納したライトデータのみを、メモリ2に書き込む
ことができる。
Here, similarly to the third embodiment, when the write data stored in the register of the write data storage register 43 is written to the memory 2, the write storage register 44 is used to output the data from the first processing unit 3. Then, only the write data stored in the write data storage register 43 based on the write data selection address can be written in the memory 2.

【0062】図9は、カウンタ83の値が、メモリ書き
込みデータ数以上になった場合に、ライトデータ格納レ
ジスタ43に格納されたデータがメモリ2に書き込まれ
るまでの動作アルゴリズムを示すフローチャートであ
る。
FIG. 9 is a flow chart showing an operation algorithm until the data stored in the write data storage register 43 is written in the memory 2 when the value of the counter 83 becomes equal to or larger than the number of memory write data.

【0063】ステップS91では、ライトアクセス要求
中であるかどうかの判断を行う。ライトアクセス要求中
の場合は、ステップS92に移行し、ライトアクセス要
求中でない場合は、本処理を終了する。ステップS92
では、ライトデータセレクタ82に保持されているデー
タを、ライトデータ選択アドレスに基づいて、ライトデ
ータ格納レジスタ43の該当するレジスタに格納する。
ステップS93では、カウンタ83をインクリメントす
る。ステップS94では、カウンタ83の値とメモリ書
き込みデータ数とを比較し、カウンタ83の値が、メモ
リ書き込みデータ数以上となった場合は、ステップS9
5に移行し、メモリ書き込みデータ数より小さい場合
は、ステップS91に移行する。ステップS95では、
アドレス処理部5が、メモリアドレス出力部6を介して
メモリ2にメモリアドレスを出力する。ステップS96
では、ライトデータ格納レジスタ43に格納されたライ
トデータをメモリデータインタフェース部9を介してメ
モリ2に出力する。ステップS97では、カウンタ83
を0クリアし、ステップS91に戻る。
In step S91, it is determined whether or not a write access request is being made. If a write access request is being made, the process moves to step S92, and if a write access request is not being made, this processing ends. Step S92
Then, the data held in the write data selector 82 is stored in the corresponding register of the write data storage register 43 based on the write data selection address.
In step S93, the counter 83 is incremented. In step S94, the value of the counter 83 is compared with the number of memory write data. If the value of the counter 83 is equal to or more than the number of memory write data, step S9
If it is smaller than the number of memory write data, the process proceeds to step S91. In step S95,
The address processing unit 5 outputs the memory address to the memory 2 via the memory address output unit 6. Step S96
Then, the write data stored in the write data storage register 43 is output to the memory 2 via the memory data interface unit 9. In step S97, the counter 83
Is cleared to 0 and the process returns to step S91.

【0064】以上のように、実施例5のメモリ制御装置
においては、ライトデータ格納レジスタ43のレジスタ
に格納したデータ数をカウントし、その数が、予め決め
られた”メモリ書き込みデータ数”に達した場合に、ラ
イトデータ格納レジスタ43のレジスタに格納したデー
タをメモリ2に書き込むので、最終レジスタまで書き込
まなくても、メモリ2に書き込むことができる。また、
この”メモリ書き込みデータ数”は外部から設定できる
ので、ライトデータ格納レジスタ43のサイズ範囲(1
〜8バイト)で任意に調整できる。
As described above, in the memory control device of the fifth embodiment, the number of data stored in the register of the write data storage register 43 is counted, and the number reaches the predetermined "memory write data number". In this case, since the data stored in the register of the write data storage register 43 is written in the memory 2, the data can be written in the memory 2 without writing to the final register. Also,
Since this "memory write data count" can be set externally, the size range of the write data storage register 43 (1
~ 8 bytes) can be adjusted arbitrarily.

【0065】《実施例6》図10、図11を用いて、実
施例6のメモリ制御装置について説明する。図10は、
本発明の実施例6におけるメモリ制御装置の構成を示す
ブロック図である。なお、実施例1〜実施例5と同一の
ものについては、同一符号を付し、説明を省略する。図
8において、101はメモリ制御装置、102はライト
データセレクタ、103はタイマ、104は外部設定部
である。ライトデータセレクタ102は、実施例4で記
載した機能に加え、タイマ103を有する。タイマ10
3は、ライトデータ格納レジスタ43のレジスタにライ
トデータを格納すると起動し、次に格納されるまでの時
間を計測する。外部設定部104は、タイマ103の計
測値と比較を行う”メモリ書き込み間隔”の設定を外部
から行える入力装置である。メモリ書き込み間隔の単位
はミリ秒とする。
<< Sixth Embodiment >> A memory control device according to a sixth embodiment will be described with reference to FIGS. Figure 10
It is a block diagram which shows the structure of the memory control apparatus in Example 6 of this invention. The same components as those in Embodiments 1 to 5 are designated by the same reference numerals and the description thereof will be omitted. In FIG. 8, 101 is a memory control device, 102 is a write data selector, 103 is a timer, and 104 is an external setting unit. The write data selector 102 has a timer 103 in addition to the functions described in the fourth embodiment. Timer 10
3 starts when the write data is stored in the write data storage register 43, and measures the time until the next storage. The external setting unit 104 is an input device that can externally set a “memory writing interval” for comparison with the measured value of the timer 103. The unit of memory write interval is millisecond.

【0066】メモリ2の連続する領域に3バイトのデー
タ(DT17〜DT19)を書き込む動作を例にして説
明する。先に、外部設定部104を用いて、メモリ書き
込間隔を100(ミリ秒)に設定しておく。先ず、第1
の処理装置3は、ライトアクセス要求とともにDT17
のデータを書き込むアドレス”010_001”を入力
部4に出力し、ライトデータ(DT17)をデータイン
タフェース部12を介してライトデータセレクタ102
に出力する。入力部4は、アドレス”010_001”
をアドレス処理部5に出力する。アドレス処理部5
は、”010_001”の下位3ビット”001”をラ
イトデータ選択アドレスとしてライトデータセレクタ1
02に出力する。ライトデータ選択アドレス”001”
は、ライトデータ格納レジスタ43の1番のレジスタが
相当するので、ライトデータセレクタ102は、このレ
ジスタにDT17を格納する。
An operation of writing 3 bytes of data (DT17 to DT19) in a continuous area of the memory 2 will be described as an example. First, the memory writing interval is set to 100 (milliseconds) using the external setting unit 104. First, the first
Processing device 3 of DT17 with the write access request.
The address "010_001" to write the data of is written to the input unit 4, and the write data (DT17) is written to the write data selector 102 via the data interface unit 12.
Output to. The input unit 4 has the address “010_001”
Is output to the address processing unit 5. Address processing unit 5
Is the write data selector 1 using the lower 3 bits "010" of "010_001" as the write data selection address.
Output to 02. Write data selection address "001"
Corresponds to the first register of the write data storage register 43, so the write data selector 102 stores DT17 in this register.

【0067】この時、タイマ103を起動させる。この
後、100ミリ秒以上経過しても、ライトデータセレク
タ102にDT18が入力されず、ライトデータ格納レ
ジスタ43のレジスタにデータが格納されない場合は、
アドレス処理部5は、メモリアドレス”010”をメモ
リアドレス出力部6を介してメモリ2へ出力する。そし
て、ライトデータ格納レジスタ43のレジスタに格納し
たライトデータ(DT17)をメモリデータインタフェ
ース部9を介してメモリ2の先に出力したメモリアドレ
スの領域に書き込む。
At this time, the timer 103 is activated. After this, even if 100 milliseconds or more elapses, if the DT 18 is not input to the write data selector 102 and the data is not stored in the register of the write data storage register 43,
The address processing unit 5 outputs the memory address “010” to the memory 2 via the memory address output unit 6. Then, the write data (DT17) stored in the register of the write data storage register 43 is written to the area of the memory address output ahead of the memory 2 via the memory data interface unit 9.

【0068】ここで、実施例3と同様に、ライトデータ
格納レジスタ43のレジスタに格納したライトデータを
メモリ2へ書き込む際に、書き込み記憶レジスタ44を
用いる事により、第1の処理装置3が出力し、ライトデ
ータ格納レジスタ43にライトデータ選択アドレスに基
づき格納したライトデータのみを、メモリ2に書き込む
ことができる。
Here, similarly to the third embodiment, when the write data stored in the register of the write data storage register 43 is written to the memory 2, the write storage register 44 is used to output the data from the first processing unit 3. Then, only the write data stored in the write data storage register 43 based on the write data selection address can be written in the memory 2.

【0069】図11は、タイマ103の計測時間が、メ
モリ書き込み時間間隔以上になった場合に、ライトデー
タ格納レジスタ43に格納されたデータがメモリ2に書
き込まれるまでの動作アルゴリズムを示すフローチャー
トである。
FIG. 11 is a flow chart showing an operation algorithm until the data stored in the write data storage register 43 is written in the memory 2 when the time measured by the timer 103 exceeds the memory write time interval. .

【0070】ステップS101では、ライトアクセス要
求中であるかどうかの判断を行う。ライトアクセス要求
中の場合は、ステップS102に移行し、ライトアクセ
ス要求中でない場合は、本処理を終了する。ステップS
102では、タイマ103の計測時間とメモリ書き込み
間隔とを比較し、タイマ103の計測時間が、メモリ書
き込み間隔以上の場合は、ステップS103に移行し、
メモリ書き込み間隔より短い場合は、ステップS106
に移行する。ステップS103では、タイマ103を終
了する。ステップS104では、アドレス処理部5が、
メモリアドレス出力部6を介してメモリ2にメモリアド
レスを出力する。ステップS105では、ライトデータ
格納レジスタ43に格納されたライトデータをメモリデ
ータインタフェース部9を介してメモリ2に出力し、ス
テップS101に戻る。ステップS106では、ライト
データセレクタ102に、ライトデータ格納レジスタ4
3に格納すべきデータがあるかどうかの判定を行う。デ
ータがある場合は、ステップS103に移行し、データ
が無い場合は、ステップS101に移行する。ステップ
S107では、ライトデータセレクタ102に保持され
ているデータを、ライトデータ選択アドレスに基づい
て、ライトデータ格納レジスタ43の該当するレジスタ
に格納する。ステップS108では、タイマ103を起
動し、ステップS101に戻る。
In step S101, it is determined whether or not a write access request is being made. If a write access request is being made, the process proceeds to step S102, and if a write access request is not being made, this processing ends. Step S
In 102, the measurement time of the timer 103 is compared with the memory writing interval.
If it is shorter than the memory writing interval, step S106.
Move to. In step S103, the timer 103 ends. In step S104, the address processing unit 5
The memory address is output to the memory 2 via the memory address output unit 6. In step S105, the write data stored in the write data storage register 43 is output to the memory 2 via the memory data interface unit 9, and the process returns to step S101. In step S106, the write data selector 102 is set to the write data storage register 4
It is determined whether or not there is data to be stored in 3. If there is data, the process proceeds to step S103, and if there is no data, the process proceeds to step S101. In step S107, the data held in the write data selector 102 is stored in the corresponding register of the write data storage register 43 based on the write data selection address. In step S108, the timer 103 is activated, and the process returns to step S101.

【0071】以上のように、実施例6のメモリ制御装置
においては、タイマ103でライトデータ格納レジスタ
43のレジスタにライトデータを格納する時間間隔を管
理することによって、第1の処理装置3がメモリ2にア
クセスしている最中に、何らかの原因でメモリ2に対す
る書き込み動作が中断された場合でも、メモリ2のデー
タが長時間更新されないという事態を防ぐことができ
る。
As described above, in the memory control device of the sixth embodiment, the timer 103 manages the time interval in which the write data is stored in the register of the write data storage register 43, so that the first processing device 3 executes the memory operation. Even when the write operation to the memory 2 is interrupted for some reason while accessing the memory 2, it is possible to prevent the data in the memory 2 from being updated for a long time.

【0072】《実施例7》図12を用いて、実施例7の
メモリ制御装置について説明する。図12は、本発明の
実施例7におけるメモリ制御装置の構成を示すブロック
図である。なお、実施例1〜実施例6と同一のものにつ
いては、同一符号を付し、説明を省略する。図12にお
いて、121はメモリ制御装置、122は第2の処理装
置、123は制御部、124は外部設定部である。
<< Embodiment 7 >> A memory control apparatus according to Embodiment 7 will be described with reference to FIG. FIG. 12 is a block diagram showing the configuration of the memory control device according to the seventh embodiment of the present invention. The same components as those in Embodiments 1 to 6 are designated by the same reference numerals and the description thereof will be omitted. In FIG. 12, 121 is a memory control device, 122 is a second processing device, 123 is a control unit, and 124 is an external setting unit.

【0073】第2の処理装置122は、第1の処理装置
3と同様にメモリ2にアクセスする。第2の処理装置1
22は、ライトアクセス要求又はリードアクセス要求と
そのアドレスの入力部4への出力、データインタフェー
ス部12へのライトデータの出力又はデータインタフェ
ース部12からのリードデータの入力を行う。制御部1
23は、複数の処理装置によるメモリアクセスの競合が
発生した場合に、そのアクセス源の優先順位によってア
クセス権付与の判断を行う。外部設定部124は、各ア
クセス源の処理装置毎に、メモリ2へのアクセスの”優
先順位”の設定を外部から行える入力装置である。設定
値は正の整数とし、より小さい値を与えられた処理装置
の優先順位が高いものとする。また、入力部4は、アク
セス要求及びアドレスの他に、アクセス源の情報も入力
する。
The second processing device 122 accesses the memory 2 similarly to the first processing device 3. Second processing device 1
Reference numeral 22 outputs a write access request or read access request and its address to the input unit 4, outputs write data to the data interface unit 12, or inputs read data from the data interface unit 12. Control unit 1
When a memory access conflict occurs between a plurality of processing devices, 23 determines access right grant based on the priority of the access source. The external setting unit 124 is an input device that can externally set the “priority order” of access to the memory 2 for each processing device of each access source. The set value is a positive integer, and the processing device given a smaller value has a higher priority. In addition to the access request and address, the input unit 4 also inputs access source information.

【0074】第1の処理装置3が、メモリ2の連続する
領域に8バイトのデータ(DT24〜DT31)を書き
込む動作を例にして説明する。先に、外部設定部124
を用いて、第1の処理装置3に”2”を、第2の処理装
置122に”1”を、優先順位として設定しておく。
(優先順位は、第2の処理装置122 > 第1の処理
装置3) 先ず、第1の処理装置3は、ライトアクセス要求、アク
セス源情報及び、DT24のデータを書き込むアドレ
ス”011_000”を入力部4に出力し、ライトデー
タ(DT24)をデータインタフェース部12を介して
ライトデータセレクタ42に出力する。入力部4は、ア
ドレス”011_000”をアドレス処理部5に出力す
る。アドレス処理部5は、”011_000”の下位3
ビット”000”をライトデータ選択アドレスとしてラ
イトデータセレクタ42に出力する。ライトデータ選択
アドレス”000”は、ライトデータ格納レジスタ43
の0番のレジスタが相当するので、ライトデータセレク
タ42は、このレジスタにDT24を格納する。以下、
同様の手順で、DT25〜DT27のデータをライトデ
ータ格納レジスタ43の1番〜3番のレジスタに格納す
る。
An operation in which the first processing device 3 writes 8-byte data (DT24 to DT31) in a continuous area of the memory 2 will be described as an example. First, the external setting unit 124
"2" is set to the first processing device 3 and "1" is set to the second processing device 122 as the priority order by using.
(The priority is the second processing device 122> the first processing device 3) First, the first processing device 3 inputs the write access request, the access source information, and the address "011_000" into which the data of the DT 24 is written. 4, and the write data (DT24) is output to the write data selector 42 via the data interface unit 12. The input unit 4 outputs the address “011 — 000” to the address processing unit 5. The address processing unit 5 determines the lower 3 of “011_000”.
The bit “000” is output to the write data selector 42 as the write data selection address. The write data selection address “000” is the write data storage register 43.
Since the 0th register corresponds to, the write data selector 42 stores the DT 24 in this register. Less than,
By the same procedure, the data of DT25 to DT27 are stored in the first to third registers of the write data storage register 43.

【0075】この時点で、第2の処理装置122が、入
力部4にアクセス要求、アドレス及びアクセス源情報を
出力する。入力部4は、制御部123にアクセス源情報
を出力する。制御部123は、先に設定した優先順位か
ら、第2の処理装置122の方がアクセス優先度が高い
と判断する。すると、第2の処理装置122にアクセス
権を与える前に、アドレス処理部5は、メモリアドレ
ス”011”をメモリアドレス出力部6を介してメモリ
2へ出力する。そして、ライトデータ格納レジスタ43
のレジスタに格納したライトデータ(DT24〜DT2
7)をメモリデータインタフェース部9を介してメモリ
2の先に出力したメモリアドレスの領域に書き込む。メ
モリ2への書き込み後、制御部123は、第2の処理装
置122にメモリ2へのアクセス権を与える。
At this point, the second processing unit 122 outputs the access request, address and access source information to the input unit 4. The input unit 4 outputs the access source information to the control unit 123. The control unit 123 determines that the second processing device 122 has a higher access priority from the priorities set earlier. Then, the address processing unit 5 outputs the memory address “011” to the memory 2 via the memory address output unit 6 before giving the access right to the second processing device 122. Then, the write data storage register 43
Data stored in the register of (DT24 to DT2
7) is written in the area of the memory address output to the end of the memory 2 via the memory data interface unit 9. After writing to the memory 2, the control unit 123 gives the second processing device 122 an access right to the memory 2.

【0076】ここで、実施例3と同様に、ライトデータ
格納レジスタ43のレジスタに格納したライトデータを
メモリ2へ書き込む際に、書き込み記憶レジスタ44を
用いる事により、第1の処理装置3が出力し、ライトデ
ータ格納レジスタ43にライトデータ選択アドレスに基
づき格納したライトデータのみ、メモリ2に書き込むこ
とができる。
Here, as in the third embodiment, when the write data stored in the register of the write data storage register 43 is written to the memory 2, the write storage register 44 is used to output the data from the first processing unit 3. However, only the write data stored in the write data storage register 43 based on the write data selection address can be written in the memory 2.

【0077】以上のように、実施例7のメモリ制御装置
においては、第1の処理装置3が、メモリ2にアクセス
している最中に、第2の処理装置122が、アクセス要
求をしてきた場合は、制御部123によりライトデータ
格納レジスタ43のレジスタに格納したライトデータを
メモリ2へ書き込み、その後で、第2の処理装置122
にアクセス権を与えることで、複数の処理装置によるメ
モリ2へのアクセスが競合した場合でも効率的に制御す
ることができ、メモリ2は最新のデータを格納できる。
As described above, in the memory control device according to the seventh embodiment, the second processing device 122 makes an access request while the first processing device 3 is accessing the memory 2. In this case, the control unit 123 writes the write data stored in the register of the write data storage register 43 to the memory 2 and then the second processing unit 122.
By giving the access right to, even if the access to the memory 2 by a plurality of processing devices competes with each other, the control can be efficiently performed, and the memory 2 can store the latest data.

【0078】[0078]

【発明の効果】以上のように、本発明のメモリ制御装置
によれば、メモリのデータバスの幅と同一サイズのデー
タリード用レジスタを設け、メモリからデータをリード
する際に、1回のメモリアクセスでメモリのデータバス
の幅分のデータを読み込み、そのデータをデータリード
用レジスタに格納する。このデータリード用レジスタか
ら順次データを選択してリード要求源の処理装置に出力
することで、メモリへのアクセス回数が少ない高能率な
メモリリードアクセスが可能である。
As described above, according to the memory control device of the present invention, the data read register having the same size as the width of the data bus of the memory is provided, and when the data is read from the memory, the memory is read once. Data of the width of the data bus of the memory is read by access, and the data is stored in the data read register. By sequentially selecting the data from the data read register and outputting the data to the processor of the read request source, highly efficient memory read access with a small number of accesses to the memory is possible.

【0079】また、本発明のメモリ制御装置によれば、
メモリのデータバスの幅と同一サイズのデータライト用
レジスタを設け、CPU等の処理装置が出力したライト
データをいったん、このデータライト用レジスタに格納
する。その後で、一定の条件によりデータライト用レジ
スタからメモリに一回のアクセスで書き込む。よって、
メモリへのアクセス回数が少ない高能率なメモリライト
アクセスが可能である。
According to the memory control device of the present invention,
A data write register having the same size as the width of the data bus of the memory is provided, and write data output by a processing device such as a CPU is temporarily stored in the data write register. After that, the data write register is written to the memory with one access under certain conditions. Therefore,
Highly efficient memory write access is possible with a small number of accesses to the memory.

【0080】更に、本発明のメモリ制御装置によれば、
メモリへのアクセス制御を行う制御部により、メモリへ
のアクセス要求が競合した場合でも、効率的なメモリア
クセスを行うことができ、メモリの内容を最新に保つこ
とができる。
Further, according to the memory control device of the present invention,
The control unit that controls access to the memory enables efficient memory access even when there are conflicting access requests to the memory, and keeps the memory contents up to date.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明の実施例1に係るメモリ制御装置の構
成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a memory control device according to a first embodiment of the present invention.

【図2】 メモリ2に格納されているデータのメモリマ
ップである。
FIG. 2 is a memory map of data stored in a memory 2.

【図3】 本発明の実施例2に係るメモリ制御装置の構
成を示すブロック図である。
FIG. 3 is a block diagram showing a configuration of a memory control device according to a second embodiment of the present invention.

【図4】 本発明の実施例3に係るメモリ制御装置の構
成を示すブロック図である。
FIG. 4 is a block diagram showing a configuration of a memory control device according to a third embodiment of the present invention.

【図5】 本発明の実施例3において、書き込み記憶レ
ジスタ44の内部状態とライトデータ格納レジスタ43
の内部状態を示した図である。
FIG. 5 shows the internal state of the write storage register 44 and the write data storage register 43 in the third embodiment of the present invention.
It is a figure showing the internal state of.

【図6】 本発明の実施例3において、ライトデータ格
納レジスタ43に格納されたデータがメモリ2に書き込
まれるまでの動作アルゴリズムを示すフローチャートで
ある。
FIG. 6 is a flowchart showing an operation algorithm until the data stored in the write data storage register 43 is written in the memory 2 in Embodiment 3 of the present invention.

【図7】 本発明の実施例4において、ライトデータ格
納レジスタ43に格納されたデータがメモリ2に書き込
まれるまでの動作アルゴリズムを示すフローチャートで
ある。
FIG. 7 is a flowchart showing an operation algorithm until the data stored in the write data storage register 43 is written in the memory 2 in Embodiment 4 of the present invention.

【図8】 本発明の実施例5に係るメモリ制御装置の構
成を示すブロック図である。
FIG. 8 is a block diagram showing a configuration of a memory control device according to a fifth embodiment of the present invention.

【図9】 本発明の実施例5において、ライトデータ格
納レジスタ43に格納されたデータがメモリ2に書き込
まれるまでの動作アルゴリズムを示すフローチャートで
ある。
FIG. 9 is a flowchart showing an operation algorithm until the data stored in the write data storage register 43 is written in the memory 2 in the fifth embodiment of the present invention.

【図10】 本発明の実施例6に係るメモリ制御装置の
構成を示すブロック図である。
FIG. 10 is a block diagram showing a configuration of a memory control device according to a sixth embodiment of the present invention.

【図11】 本発明の実施例6において、ライトデータ
格納レジスタ43に格納されたデータがメモリ2に書き
込まれるまでの動作アルゴリズムを示すフローチャート
である。
FIG. 11 is a flowchart showing an operation algorithm until the data stored in the write data storage register 43 is written in the memory 2 in Embodiment 6 of the present invention.

【図12】 本発明の実施例7に係るメモリ制御装置の
構成を示すブロック図である。
FIG. 12 is a block diagram showing a configuration of a memory control device according to a seventh embodiment of the present invention.

【図13】 従来の技術によるメモリ制御装置の構成を
示すブロック図である。
FIG. 13 is a block diagram showing a configuration of a memory control device according to a conventional technique.

【符号の説明】[Explanation of symbols]

1、41、81、101、121 メモリ制御装置 2、132 メモリ 3 第1の処理装置 4 入力部 5 アドレス処理部 6 メモリアドレス出力部 7 アドレス入力部 8、12 データインタフェース部 9 メモリデータインタフェース部 10 リードデータ格納レジスタ 11 リードデータセレクタ 31、122 第2の処理装置 42、82、102 ライトデータセレクタ 43 ライトデータ格納レジスタ 44 書き込み記憶レジスタ 83 カウンタ 84、104、124 外部設定部 103 タイマ 123 制御部 133 CPU 134 アドレスカウンタ部 135 データ保持部 1, 41, 81, 101, 121 memory control device 2,132 memory 3 First processing equipment 4 Input section 5 Address processing unit 6 Memory address output section 7 Address input section 8, 12 Data interface section 9 Memory data interface section 10 Read data storage register 11 Read data selector 31,122 Second processing device 42, 82, 102 write data selector 43 Write data storage register 44 write storage register 83 counter 84, 104, 124 External setting section 103 timer 123 control unit 133 CPU 134 Address counter section 135 data storage

───────────────────────────────────────────────────── フロントページの続き (72)発明者 青木 透 香川県高松市古新町8番地の1 松下寿電 子工業株式会社内 (72)発明者 岡▲崎▼ 誠 香川県高松市古新町8番地の1 松下寿電 子工業株式会社内 (72)発明者 野口 展明 香川県高松市古新町8番地の1 松下寿電 子工業株式会社内 Fターム(参考) 5B060 CB01 DA02 MB08    ─────────────────────────────────────────────────── ─── Continued front page    (72) Inventor Toru Aoki             1 Juden Matsushita, 1-8 Koshinmachi, Takamatsu City, Kagawa Prefecture             Child Industry Co., Ltd. (72) Inventor Okazaki Makoto             1 Juden Matsushita, 1-8 Koshinmachi, Takamatsu City, Kagawa Prefecture             Child Industry Co., Ltd. (72) Inventor Nobuaki Noguchi             1 Juden Matsushita, 1-8 Koshinmachi, Takamatsu City, Kagawa Prefecture             Child Industry Co., Ltd. F-term (reference) 5B060 CB01 DA02 MB08

Claims (12)

【特許請求の範囲】[Claims] 【請求項1】 メモリに対するリードアクセス要求とア
ドレスとを入力する入力部と、 mビット(mは任意の正整数)のデータバスを有し、デ
ータを出力するデータインタフェース部と、 前記アドレスに基づいてメモリアドレスとリードデータ
選択アドレスとを生成し、格納するアドレス処理部と、 前記メモリのアドレス入力部に前記メモリアドレスを出
力するメモリアドレス出力部と、 前記メモリのデータインタフェース部と接続されたnビ
ット(nはm<nを満たす任意の正整数)のデータバス
を有し、前記メモリアドレスで指定された前記メモリか
ら読み出したデータを入力するメモリデータインタフェ
ース部と、 前記メモリデータインタフェース部が入力したnビット
のデータを、mビット単位に分割して格納するリードデ
ータ格納レジスタと、 前記リードデータ格納レジスタに格納されているデータ
から前記リードデータ選択アドレスによって選択したm
ビットのデータを、前記データインタフェース部に伝送
するリードデータセレクタと、 を有し、 前記アドレスに基づいて生成された前記メモリアドレス
と、前記アドレス処理部に既に格納されている前記メモ
リアドレスとが同一である場合に、前記メモリに対して
リードアクセスを行わないで、前記リードデータセレク
タは、前記リードデータ格納レジスタに既に格納されて
いるデータから、前記アドレスに基づいて生成された前
記リードデータ選択アドレスによって選択したmビット
のデータを、前記データインタフェース部に伝送する、 ことを特徴とするメモリ制御装置。
1. An input unit for inputting a read access request to a memory and an address, a data interface unit having an m-bit (m is an arbitrary positive integer) data bus for outputting data, and based on the address. An address processing unit that generates and stores a memory address and a read data selection address, a memory address output unit that outputs the memory address to an address input unit of the memory, and an n connected to the data interface unit of the memory. A memory data interface unit that has a data bus of bits (n is an arbitrary positive integer satisfying m <n) and that inputs data read from the memory specified by the memory address; Read data class that stores n-bit data by dividing it into m-bit units Register and were selected from data stored in the read data storage register by the read data selection address m
A read data selector for transmitting bit data to the data interface unit, wherein the memory address generated based on the address is the same as the memory address already stored in the address processing unit. In this case, the read data selector does not perform read access to the memory, and the read data selector generates the read data selection address based on the address from the data already stored in the read data storage register. The memory control device, wherein m-bit data selected by is transmitted to the data interface unit.
【請求項2】 前記入力部は前記メモリに対するライト
アクセス要求を更に入力し、 前記メモリデータインタフェース部は、前記メモリアド
レスで指定された前記メモリにライトデータを書き込
み、 前記ライトアクセス要求に係る前記アドレスに基づいて
生成された前記メモリアドレスと、前記リードデータ格
納レジスタに既に格納されているデータに係る前記メモ
リアドレスとが同一である場合に、前記リードデータ格
納レジスタに前記ライトデータが書き込まれる、 ことを特徴とする請求項1に記載のメモリ制御装置。
2. The input unit further inputs a write access request to the memory, the memory data interface unit writes write data to the memory specified by the memory address, and the address related to the write access request. The write data is written to the read data storage register when the memory address generated based on the same is the same as the memory address related to the data already stored in the read data storage register. The memory control device according to claim 1, wherein:
【請求項3】 前記リードデータ格納レジスタの前記リ
ードデータ選択アドレスに前記ライトデータが書き込ま
れた場合、前記リードデータセレクタは、前記リードデ
ータ格納レジスタに格納されているデータから前記リー
ドデータ選択アドレスによって選択したmビットのデー
タを前記データインタフェース部に伝送し、前記データ
インタフェース部は前記mビットのデータを出力する、 ことを特徴とする請求項2に記載のメモリ制御装置。
3. When the write data is written to the read data selection address of the read data storage register, the read data selector selects the read data selection address from the data stored in the read data storage register. The memory control device according to claim 2, wherein the selected m-bit data is transmitted to the data interface unit, and the data interface unit outputs the m-bit data.
【請求項4】 メモリに対するライトアクセス要求とア
ドレスとを入力する入力部と、 mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、 前記アドレスに基づいてメモリアドレスとライトデータ
選択アドレスとを生成し、格納するアドレス処理部と、 前記メモリのアドレス入力部に前記メモリアドレスを出
力するメモリアドレス出力部と、 nビット(nはm<nを満たす任意の正整数)のレジス
タを有するライトデータ格納レジスタと、 前記ライトデータ格納レジスタの、前記ライトデータ選
択アドレスで指定されるmビットのレジスタに、前記デ
ータインタフェース部が入力したmビットのデータを格
納するライトデータセレクタと、 前記メモリのデータインタフェース部と接続されたnビ
ットのデータバスを有し、前記ライトデータ格納レジス
タからnビットのデータを入力し、前記メモリアドレス
で指定された前記メモリにnビットのデータを1回で書
き込むメモリデータインタフェース部と、 を有し、 前記アドレスに基づいて生成された前記メモリアドレス
が現在の値から新たな値に変化した場合、前記メモリデ
ータインタフェース部は、前記ライトデータ格納レジス
タからデータを入力し、変化する前の値の前記メモリア
ドレスで指定される前記メモリにデータを書き込み、そ
の後に前記ライトデータセレクタは、前記データインタ
フェース部が入力したmビットのデータを前記ライトデ
ータ格納レジスタの前記ライトデータ選択アドレスで指
定される前記レジスタに格納する、 ことを特徴とするメモリ制御装置。
4. An input unit for inputting a write access request to a memory and an address, a data interface unit for inputting data having an m-bit (m is an arbitrary positive integer) data bus, and an address unit based on the address. An address processing unit that generates and stores a memory address and a write data selection address, a memory address output unit that outputs the memory address to an address input unit of the memory, and n bits (n satisfies m <n A write data storage register having a positive integer) register and an m-bit register designated by the write data selection address of the write data storage register to store the m-bit data input by the data interface unit. N connected to the write data selector and the data interface unit of the memory A memory data interface unit that has a bit data bus, inputs n-bit data from the write data storage register, and writes the n-bit data to the memory specified by the memory address at one time. When the memory address generated based on the address changes from a current value to a new value, the memory data interface unit inputs data from the write data storage register and stores the value before the change. Data is written in the memory specified by a memory address, and then the write data selector registers the m-bit data input by the data interface unit by the register specified by the write data selection address of the write data storage register. A memory control device, characterized in that
【請求項5】 メモリに対するライトアクセス要求とア
ドレスとを入力する入力部と、 mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、 前記アドレスに基づいてメモリアドレスとライトデータ
選択アドレスとを生成し、格納するアドレス処理部と、 前記メモリのアドレス入力部に前記メモリアドレスを出
力するメモリアドレス出力部と、 nビット(nはm<nを満たす任意の正整数)のレジス
タを有するライトデータ格納レジスタと、 前記ライトデータ格納レジスタの、前記ライトデータ選
択アドレスで指定されるmビットのレジスタに、前記デ
ータインタフェース部が入力したmビットのデータを格
納するライトデータセレクタと、 前記メモリのデータインタフェース部と接続されたnビ
ットのデータバスを有し、前記ライトデータ格納レジス
タからnビットのデータを入力し、前記メモリアドレス
で指定された前記メモリにnビットのデータを1回で書
き込むメモリデータインタフェース部と、 を有し、 前記ライトデータ選択アドレスが前記ライトデータ格納
レジスタの最終アドレスであった場合、前記ライトデー
タセレクタは、前記データインターフェース部が入力し
たmビットのデータを、前記ライトデータ格納レジスタ
の最終アドレスのレジスタに格納した後、前記メモリデ
ータインターフェース部は、前記ライトデータ格納レジ
スタからデータを入力し、前記メモリアドレスで指定さ
れる前記メモリにデータを書き込む、 ことを特徴とするメモリ制御装置。
5. An input unit for inputting a write access request to a memory and an address, a data interface unit for inputting data having an m-bit (m is an arbitrary positive integer) data bus, and an address unit based on the address. An address processing unit that generates and stores a memory address and a write data selection address, a memory address output unit that outputs the memory address to an address input unit of the memory, and n bits (n satisfies m <n A write data storage register having a positive integer) register and an m-bit register designated by the write data selection address of the write data storage register to store the m-bit data input by the data interface unit. N connected to the write data selector and the data interface unit of the memory A memory data interface unit that has a bit data bus, inputs n-bit data from the write data storage register, and writes the n-bit data to the memory specified by the memory address at one time. If the write data selection address is the final address of the write data storage register, the write data selector transfers the m-bit data input by the data interface unit to the final address register of the write data storage register. After storing, the memory data interface unit inputs data from the write data storage register and writes the data in the memory specified by the memory address.
【請求項6】 メモリに対するライトアクセス要求とア
ドレスとを入力する入力部と、 mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、 前記アドレスに基づいてメモリアドレスとライトデータ
選択アドレスとを生成し、格納するアドレス処理部と、 前記メモリのアドレス入力部に前記メモリアドレスを出
力するメモリアドレス出力部と、 nビット(nはm<nを満たす任意の正整数)のレジス
タを有するライトデータ格納レジスタと、 前記ライトデータ格納レジスタの、前記ライトデータ選
択アドレスで指定されるmビットのレジスタに、前記デ
ータインタフェース部が入力したmビットのデータを格
納するライトデータセレクタと、 前記メモリのデータインタフェース部と接続されたnビ
ットのデータバスを有し、前記ライトデータ格納レジス
タからnビットのデータを入力し、前記メモリアドレス
で指定された前記メモリにnビットのデータを1回で書
き込むメモリデータインタフェース部と、 を有し、 前記ライトデータセレクタは、前記データインタフェー
ス部が入力したmビットのデータを前記ライトデータ格
納レジスタに格納する毎にカウントするカウンタを有
し、前記カウンタが、予め決められたメモリ書き込みデ
ータ数に到達した場合は、前記メモリデータインターフ
ェース部は、前記ライトデータ格納レジスタからデータ
を入力し、前記メモリアドレスで指定される前記メモリ
にデータを書き込む、 ことを特徴とするメモリ制御装置。
6. An input unit for inputting a write access request to a memory and an address, a data interface unit for inputting data having an m-bit (m is an arbitrary positive integer) data bus, and an address unit based on the address. An address processing unit that generates and stores a memory address and a write data selection address, a memory address output unit that outputs the memory address to an address input unit of the memory, and n bits (n satisfies m <n A write data storage register having a positive integer) register and an m-bit register designated by the write data selection address of the write data storage register to store the m-bit data input by the data interface unit. N connected to the write data selector and the data interface unit of the memory A memory data interface unit that has a bit data bus, inputs n-bit data from the write data storage register, and writes the n-bit data to the memory specified by the memory address at one time. The write data selector has a counter that counts each time the m-bit data input by the data interface unit is stored in the write data storage register, and the counter reaches a predetermined number of memory write data. In this case, the memory data interface unit inputs data from the write data storage register and writes the data in the memory specified by the memory address.
【請求項7】 前記メモリ書き込みデータ数は、外部か
ら設定可能であることを特徴とする請求項6に記載のメ
モリ制御装置。
7. The memory control device according to claim 6, wherein the number of data to be written in the memory can be set from the outside.
【請求項8】 メモリに対するライトアクセス要求とア
ドレスとを入力する入力部と、 mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、 前記アドレスに基づいてメモリアドレスとライトデータ
選択アドレスとを生成し、格納するアドレス処理部と、 前記メモリのアドレス入力部に前記メモリアドレスを出
力するメモリアドレス出力部と、 nビット(nはm<nを満たす任意の正整数)のレジス
タを有するライトデータ格納レジスタと、 前記ライトデータ格納レジスタの、前記ライトデータ選
択アドレスで指定されるmビットのレジスタに、前記デ
ータインタフェース部が入力したmビットのデータを格
納するライトデータセレクタと、 前記メモリのデータインタフェース部と接続されたnビ
ットのデータバスを有し、前記ライトデータ格納レジス
タからnビットのデータを入力し、前記メモリアドレス
で指定された前記メモリにnビットのデータを1回で書
き込むメモリデータインタフェース部と、 を有し、 前記ライトデータセレクタは、前記データインタフェー
ス部がmビットのデータを入力した後に起動するタイマ
を有し、前記タイマが一定時間を計測するまでに、前記
データインタフェース部が新たなmビットのデータを入
力しない場合は、前記メモリデータインターフェース部
は、前記ライトデータ格納レジスタからデータを入力
し、前記メモリアドレスで指定される前記メモリにデー
タを書き込む、 ことを特徴とするメモリ制御装置。
8. An input unit for inputting a write access request to a memory and an address, a data interface unit for inputting data having an m-bit (m is an arbitrary positive integer) data bus, and an address unit based on the address. An address processing unit that generates and stores a memory address and a write data selection address, a memory address output unit that outputs the memory address to an address input unit of the memory, and n bits (n satisfies m <n A write data storage register having a positive integer) register and an m-bit register designated by the write data selection address of the write data storage register to store the m-bit data input by the data interface unit. N connected to the write data selector and the data interface unit of the memory A memory data interface unit that has a bit data bus, inputs n-bit data from the write data storage register, and writes the n-bit data to the memory specified by the memory address at one time. The write data selector has a timer that is activated after the data interface unit inputs m-bit data, and the data interface unit outputs new m-bit data by the time the timer measures a certain time. When not inputting, the memory data interface unit inputs data from the write data storage register and writes the data in the memory specified by the memory address.
【請求項9】 前記一定時間は、外部から設定可能であ
ることを特徴とする請求項8に記載のメモリ制御装置。
9. The memory control device according to claim 8, wherein the fixed time can be set from outside.
【請求項10】 メモリに対するライトアクセス要求と
アクセス源の情報とアドレスとを入力する入力部と、 mビット(mは任意の正整数)のデータバスを有し、デ
ータを入力するデータインタフェース部と、 前記アドレスに基づいてメモリアドレスとライトデータ
選択アドレスとを生成し、格納するアドレス処理部と、 前記メモリのアドレス入力部に前記メモリアドレスを出
力するメモリアドレス出力部と、 nビット(nはm<nを満たす任意の正整数)のレジス
タを有するライトデータ格納レジスタと、 前記ライトデータ格納レジスタの、前記ライトデータ選
択アドレスで指定されるmビットのレジスタに、前記デ
ータインタフェース部が入力したmビットのデータを格
納するライトデータセレクタと、 前記メモリのデータインタフェース部と接続されたnビ
ットのデータバスを有し、前記ライトデータ格納レジス
タからnビットのデータを入力し、前記メモリアドレス
で指定された前記メモリにnビットのデータを1回で書
き込むメモリデータインタフェース部と、 を有し、 アクセス源からの前記ライトアクセス要求により、前記
データインタフェース部が入力したmビットのデータを
前記ライトデータ格納レジスタの前記ライトデータ選択
アドレスで指定される前記レジスタに格納している時
に、別のアクセス源からのアクセス要求が発生した場合
は、前記メモリデータインターフェース部は、前記ライ
トデータ格納レジスタからデータを入力し、前記メモリ
アドレスで指定される前記メモリにデータを書き込む、 ことを特徴とするメモリ制御装置。
10. An input unit for inputting a write access request to a memory, information of an access source, and an address, and a data interface unit having an m-bit (m is an arbitrary positive integer) data bus for inputting data. An address processing unit that generates and stores a memory address and a write data selection address based on the address, a memory address output unit that outputs the memory address to an address input unit of the memory, and n bits (n is m A write data storage register having a register of <any positive integer satisfying n, and an m-bit register input by the data interface unit to an m-bit register designated by the write data selection address of the write data storage register. Write data selector for storing the data of the memory and the data interface of the memory. A memory having an n-bit data bus connected to the source section, inputting n-bit data from the write data storage register, and writing the n-bit data to the memory specified by the memory address at one time A data interface unit, and stores m-bit data input by the data interface unit in the register specified by the write data selection address of the write data storage register in response to the write access request from an access source. If an access request from another access source occurs during the operation, the memory data interface unit inputs data from the write data storage register and writes the data to the memory specified by the memory address. A memory control device characterized by the above.
【請求項11】 前記ライトデータセレクタは、前記ラ
イトアクセス要求によって、前記ライトデータ格納レジ
スタに、前記ライトデータ選択アドレスに基づきデータ
が格納されたかどうかを、前記ライトデータ格納レジス
タの前記mビットのレジスタ単位で記憶する書き込み記
憶レジスタを有し、前記メモリデータインタフェース部
が、前記ライトデータ格納レジスタからデータを入力
し、前記メモリアドレスで指定される前記メモリにデー
タを書き込む際に、前記書き込み記憶レジスタに基づい
て、データが格納された前記ライトデータ選択アドレス
についてのみ、前記ライトデータ格納レジスタのデータ
を前記メモリに書き込む、ことを特徴とする請求項4〜
請求項6、請求項8又は請求項10の何れかの請求項に
記載のメモリ制御装置。
11. The write data selector determines whether or not data is stored in the write data storage register based on the write data selection address in response to the write access request, in the m-bit register of the write data storage register. A write storage register for storing in units, the memory data interface unit inputs the data from the write data storage register and writes the data in the memory specified by the memory address, 5. Based on the above, the data of the write data storage register is written in the memory only for the write data selection address in which the data is stored.
The memory control device according to claim 6, 8, or 10.
【請求項12】 前記メモリへのアクセス権を付与する
判断を、予め決められているアクセス源の優先順位によ
り行う制御部を更に有し、前記優先順位は、外部から設
定可能であることを特徴とする請求項10に記載のメモ
リ制御装置。
12. The system further comprises a control unit that determines whether to grant the access right to the memory according to a predetermined priority order of access sources, and the priority order can be set from the outside. The memory control device according to claim 10.
JP2001226485A 2001-07-26 2001-07-26 Memory controller Pending JP2003044354A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001226485A JP2003044354A (en) 2001-07-26 2001-07-26 Memory controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001226485A JP2003044354A (en) 2001-07-26 2001-07-26 Memory controller

Publications (1)

Publication Number Publication Date
JP2003044354A true JP2003044354A (en) 2003-02-14

Family

ID=19059292

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001226485A Pending JP2003044354A (en) 2001-07-26 2001-07-26 Memory controller

Country Status (1)

Country Link
JP (1) JP2003044354A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005182832A (en) * 2003-12-22 2005-07-07 Micronas Gmbh Method and apparatus for controlling memory access
JP2008529181A (en) * 2005-02-03 2008-07-31 インターナショナル・ビジネス・マシーンズ・コーポレーション System and method for accessing memory using a combination of line access and word access
JP2009525555A (en) * 2006-02-01 2009-07-09 クゥアルコム・インコーポレイテッド Reduce power consumption by disabling refresh of unused portions of DRAM during periods of device inactivity
JP2011090697A (en) * 2010-12-06 2011-05-06 Renesas Electronics Corp Semiconductor device
WO2014068789A1 (en) * 2012-11-05 2014-05-08 三菱電機株式会社 Memory control device
US11126560B2 (en) 2019-12-03 2021-09-21 Syntronix Corporation System-on-chip module for avoiding redundant memory access

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546465A (en) * 1991-08-16 1993-02-26 Fujitsu Ltd Data access system for computer
JPH08212126A (en) * 1995-01-31 1996-08-20 Nkk Corp Dram controller
JPH0962571A (en) * 1995-08-23 1997-03-07 Oki Electric Ind Co Ltd Memory buffer device
JPH09282221A (en) * 1996-04-19 1997-10-31 Hitachi Ltd Main memory controller
JPH1040165A (en) * 1996-07-22 1998-02-13 Oki Data:Kk Data read method and read buffer
JP2000181780A (en) * 1998-12-16 2000-06-30 Hitachi Ltd Store bufer device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546465A (en) * 1991-08-16 1993-02-26 Fujitsu Ltd Data access system for computer
JPH08212126A (en) * 1995-01-31 1996-08-20 Nkk Corp Dram controller
JPH0962571A (en) * 1995-08-23 1997-03-07 Oki Electric Ind Co Ltd Memory buffer device
JPH09282221A (en) * 1996-04-19 1997-10-31 Hitachi Ltd Main memory controller
JPH1040165A (en) * 1996-07-22 1998-02-13 Oki Data:Kk Data read method and read buffer
JP2000181780A (en) * 1998-12-16 2000-06-30 Hitachi Ltd Store bufer device

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005182832A (en) * 2003-12-22 2005-07-07 Micronas Gmbh Method and apparatus for controlling memory access
US7747832B2 (en) 2003-12-22 2010-06-29 Micronas Gmbh Method for controlling a memory access
JP4647304B2 (en) * 2003-12-22 2011-03-09 マイクロナス ゲーエムベーハー Method and apparatus for controlling memory access
JP2008529181A (en) * 2005-02-03 2008-07-31 インターナショナル・ビジネス・マシーンズ・コーポレーション System and method for accessing memory using a combination of line access and word access
JP4931828B2 (en) * 2005-02-03 2012-05-16 インターナショナル・ビジネス・マシーンズ・コーポレーション System and method for accessing memory using a combination of line access and word access
JP2009525555A (en) * 2006-02-01 2009-07-09 クゥアルコム・インコーポレイテッド Reduce power consumption by disabling refresh of unused portions of DRAM during periods of device inactivity
JP2011090697A (en) * 2010-12-06 2011-05-06 Renesas Electronics Corp Semiconductor device
WO2014068789A1 (en) * 2012-11-05 2014-05-08 三菱電機株式会社 Memory control device
JP5797342B2 (en) * 2012-11-05 2015-10-21 三菱電機株式会社 Memory control device
US9715427B2 (en) 2012-11-05 2017-07-25 Mitsubishi Electric Corporation Memory control apparatus
US11126560B2 (en) 2019-12-03 2021-09-21 Syntronix Corporation System-on-chip module for avoiding redundant memory access

Similar Documents

Publication Publication Date Title
US6233641B1 (en) Apparatus and method of PCI routing in a bridge configuration
US6782465B1 (en) Linked list DMA descriptor architecture
KR101005114B1 (en) Dram supporting different burst-length accesses without changing the burst length setting in the mode register
US20070162642A1 (en) A dma controller with multiple intra-channel software request support
JP2004171209A (en) Shared memory data transfer device
US7082499B2 (en) External memory control device regularly reading ahead data from external memory for storage in cache memory, and data driven type information processing apparatus including the same
US7165126B2 (en) Direct memory access device
JP2006338538A (en) Stream processor
JP5287301B2 (en) Descriptor transfer device, I / O controller, and descriptor transfer method
JP2007102646A (en) Context switching device
JP2002342262A (en) Direct memory access controller and direct memory access control method
JPH0934786A (en) Instruction supplying device
JP2003044354A (en) Memory controller
JP2006268753A (en) Dma circuit and computer system
JP4193746B2 (en) Matrix bus connection system
JPH06318178A (en) Cache tag controller for cache tag memory and control method therefor
JPH06103225A (en) Chain type dma system and dma controller therefor
JP2022129524A (en) Memory controller and memory access method
JP2004240616A (en) Memory controller and memory access control method
JPH10222460A (en) Data transfer controller
JP3077807B2 (en) Microcomputer system
JP2005526335A (en) Data transfer unit that supports multiple coherency granules
KR100523966B1 (en) Method for determining valid bytes for multiple-byte burst memories
JP2007011884A (en) Data transfer unit
JPH10240678A (en) Extension input/output bus

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050526

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20061129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080723

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110621

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111108