[go: up one dir, main page]

JP2006048378A - Memory controller and electronic device therewith - Google Patents

Memory controller and electronic device therewith Download PDF

Info

Publication number
JP2006048378A
JP2006048378A JP2004228591A JP2004228591A JP2006048378A JP 2006048378 A JP2006048378 A JP 2006048378A JP 2004228591 A JP2004228591 A JP 2004228591A JP 2004228591 A JP2004228591 A JP 2004228591A JP 2006048378 A JP2006048378 A JP 2006048378A
Authority
JP
Japan
Prior art keywords
data
memory
address
read
start address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004228591A
Other languages
Japanese (ja)
Inventor
Hideki Ishibashi
秀樹 石橋
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2004228591A priority Critical patent/JP2006048378A/en
Publication of JP2006048378A publication Critical patent/JP2006048378A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a memory controller 1 that, even if a read start address from a memory 2 is not a word address, can transfer data in a short period of time same as in the case of a word address. <P>SOLUTION: The memory controller 1 comprises a buffer 17 intervening between two memories 2, 3 for temporarily storing the data read from one memory 2; a DMA control circuit 13 that, from the read start address included in a data transfer command from the outside, derives the word address of a word including the data stored in the read start address of the one memory 2; a selection circuit 18a that stores the data read from the word address of the one memory 2 into the buffer 17; and another selection circuit 19a that from the buffer 17 reads the data stored beyond the read start address of the one memory 2 and writes the data into the other memory 3. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、2つのメモリ間に介在して、両メモリ間でデータの転送を行なうメモリ制御装置及びこれを具えた電子機器に関するものである。   The present invention relates to a memory control device that intervenes between two memories and transfers data between the two memories, and an electronic apparatus including the memory control device.

近年、CCD(固体撮像素子)等の撮像光学系によって撮影された画像をデジタルデータとしてメモリカード等の記録媒体に記録するデジタルカメラが普及している。
デジタルカメラにおいては、ユーザにより画像記録操作が行なわれると、撮像光学系から得られた画像信号がデジタル画像データに変換された後、周知の圧縮方式により圧縮され、これによって得られた圧縮画像データが一旦、SDRAMに格納された後、記録媒体に記録される。
又、ユーザにより画像再生操作が行なわれると、記録媒体に記録されている圧縮画像データが読み出されて一旦、SDRAMに格納された後、該データに対して画像伸長処理及びアナログ変換処理を含む周知の信号処理が施され、これによって得られた画像信号がLCD(液晶ディスプレイ)等の画像表示装置に供給される。この結果、記録媒体に記録されている画像が画像表示装置に表示されることになる。
In recent years, digital cameras that record images captured by an imaging optical system such as a CCD (solid-state imaging device) as digital data on a recording medium such as a memory card have become widespread.
In a digital camera, when an image recording operation is performed by a user, an image signal obtained from an imaging optical system is converted into digital image data, and then compressed by a well-known compression method. The compressed image data obtained thereby Is once stored in the SDRAM and then recorded on the recording medium.
In addition, when an image reproduction operation is performed by the user, the compressed image data recorded on the recording medium is read out and once stored in the SDRAM, and thereafter, the data includes image expansion processing and analog conversion processing. Known signal processing is performed, and an image signal obtained thereby is supplied to an image display device such as an LCD (liquid crystal display). As a result, the image recorded on the recording medium is displayed on the image display device.

図8は、従来のデジタルカメラの構成を表わしている。尚、図8においては、撮像光学系及び画像表示装置の図示は省略されている。
該デジタルカメラは、撮像動作などの種々の動作を制御するCPU(6)と、画像データを一時的に格納するためのSDRAM(2)と、画像データを記録するための記録媒体(3)と、SDRAM(2)と記録媒体(3)との間でデータの転送を行なうDMA(Direct Memory Access)コントローラ(5)とを具えている。図中の細線はデータバスを表わしており、各バスの近傍に記載された数字はバス幅を表わしている。SDRAM(2)は32ビットのバス幅を有する一方、記録媒体(3)は16ビットのバス幅を有している。
FIG. 8 shows the configuration of a conventional digital camera. In FIG. 8, the imaging optical system and the image display device are not shown.
The digital camera includes a CPU (6) for controlling various operations such as an imaging operation, an SDRAM (2) for temporarily storing image data, and a recording medium (3) for recording image data. A DMA (Direct Memory Access) controller (5) for transferring data between the SDRAM (2) and the recording medium (3). The thin lines in the figure represent data buses, and the numbers written in the vicinity of each bus represent the bus width. The SDRAM (2) has a 32-bit bus width, while the recording medium (3) has a 16-bit bus width.

DMAコントローラ(5)は、SDRAM(2)に対する書込み及び読出しを制御するSDRAM制御回路(51)と、記録媒体(3)に対する書込み及び読出しを制御する記録媒体制御回路(52)と、16バイトのデータ容量を有してSDRAM(2)及び記録媒体(3)から読み出したデータを一時的に格納するための2つのアクセス速度差吸収用メモリ(54a)(54b)と、これら2つのメモリ(54a)(54b)の内、1つのメモリを選択して該メモリに対するデータの書込みを行なう第1メモリ選択回路(55a)と、1つのメモリを選択して該メモリからデータの読出しを行なう第2メモリ選択回路(55b)とを具えている。
又、前記DMAコントローラ(5)は、アクセス速度差吸収用メモリ(54a)(54b)から読み出した32ビットのデータの内、上位16ビットのデータ或いは下位16ビットのデータの何れかのデータを選択して前記記録媒体制御回路(52)に供給する第1データ選択回路(56a)と、記録媒体(3)から順次読み出される16ビットのデータを上位データ或いは下位データとして32ビットのデータを作成しアクセス速度差吸収用メモリ(54a)(54b)に供給する第2データ選択回路(56b)とを具えている。
The DMA controller (5) includes an SDRAM control circuit (51) for controlling writing and reading with respect to the SDRAM (2), a recording medium control circuit (52) for controlling writing and reading with respect to the recording medium (3), Two access speed difference absorbing memories (54a) (54b) for temporarily storing data having a data capacity and read from the SDRAM (2) and the recording medium (3), and these two memories (54a ) (54b), a first memory selection circuit (55a) for selecting one memory and writing data to the memory, and a second memory for selecting one memory and reading data from the memory And a selection circuit (55b).
The DMA controller (5) selects either the upper 16-bit data or the lower 16-bit data from the 32-bit data read from the access speed difference absorbing memories (54a) (54b). The first data selection circuit (56a) to be supplied to the recording medium control circuit (52) and 16-bit data sequentially read out from the recording medium (3) are used to create 32-bit data. A second data selection circuit (56b) for supplying access speed difference absorption memory (54a) (54b) is provided.

上記のSDRAM制御回路(51)、記録媒体制御回路(52)、第1及び第2メモリ選択回路(55a)(55b)、第1及び第2データ選択回路(56a)(56b)には、制御バス(50)を介して、これらの回路の動作を制御するDMA制御回路(53)が接続されている。
DMA制御回路(53)には、前記CPU(6)が接続されており、DMA制御回路(53)は、CPU(6)からのデータ転送指令を受けて前記制御動作を実行する。
The SDRAM control circuit 51, the recording medium control circuit 52, the first and second memory selection circuits 55a and 55b, and the first and second data selection circuits 56a and 56b are controlled by A DMA control circuit (53) for controlling the operation of these circuits is connected via a bus (50).
The CPU (6) is connected to the DMA control circuit (53), and the DMA control circuit (53) receives the data transfer command from the CPU (6) and executes the control operation.

上記SDRAM(2)においては、1バイト毎にアドレス(以下、バイトアドレスという)が付与されており、バイトアドレスとして、例えば、1バイト目に“SA0”、2バイト目に“SA1”、3バイト目に“SA2”・・・が付与される。
又、前記CPU(6)は、1ワードを32ビット(=4バイト)としてデータ処理を行なうものであって、前記DMAコントローラ(5)は、SDRAM(2)に対してワード単位でアクセスすることが可能である。1ワードは4バイトであるので、各ワードの最初のアドレス(以下、ワードアドレスという)は、“SA0”、“SA4”、“SA8”・・・となる。
In the SDRAM (2), an address (hereinafter referred to as a byte address) is assigned for each byte. For example, “SA0” in the first byte, “SA1” in the second byte, and 3 bytes as the byte address. "SA2" ... is given to the eye.
The CPU (6) performs data processing with one word as 32 bits (= 4 bytes), and the DMA controller (5) accesses the SDRAM (2) in units of words. Is possible. Since one word is 4 bytes, the first address of each word (hereinafter referred to as a word address) is “SA0”, “SA4”, “SA8”,.

図9(a)は、SDRAM(2)に格納されているデータをワード単位で表わしているのに対し、同図(b)は、SDRAM(2)に格納されているデータをバイト単位で表わしており、同図(c)乃至(e)はそれぞれ、SDRAM(2)に格納されているデータを記録媒体(3)に転送する際に、アクセス速度差吸収用メモリ(54a)(54b)及び記録媒体(3)にデータが格納されるタイミングを表わしている。
図9(a)の如く、SDRAM(2)のワードアドレス“SA0”にデータ“D0”、ワードアドレス“SA4”にデータ“D1”、ワードアドレス“SA8”にデータ“D2”・・・が格納されている。又、同図(b)の如く、例えばワードアドレス“SA0”に格納されている前記データ“D0”は4つのデータ“D0a”〜“D0d”から構成されており、バイトアドレス“SA0”にデータ“D0a”、バイトアドレス“SA1”にデータ“D0b”、バイトアドレス“SA2”にデータ“D0c”、バイトアドレス“SA3”にデータ“D0d”が格納されている。
9A shows data stored in the SDRAM (2) in units of words, while FIG. 9B shows data stored in the SDRAM (2) in units of bytes. (C) to (e) of FIG. 5 show access speed difference absorbing memories (54a) (54b) and (4) when data stored in the SDRAM (2) is transferred to the recording medium (3). The timing at which data is stored in the recording medium (3) is shown.
As shown in FIG. 9A, data “D0” is stored in word address “SA0”, data “D1” is stored in word address “SA4”, data “D2” is stored in word address “SA8”, and the like. Has been. Further, as shown in FIG. 4B, for example, the data “D0” stored in the word address “SA0” is composed of four data “D0a” to “D0d”, and the data is stored in the byte address “SA0”. Data “D0b” is stored in “D0a”, byte address “SA1”, data “D0c” is stored in byte address “SA2”, and data “D0d” is stored in byte address “SA3”.

例えば、図8に示すCPU(6)からDMAコントローラ(5)のDMA制御回路(53)に対して、ワードアドレス“SA0”をSDRAM(2)からの読出し開始アドレスとして8ワード分のデータをSDRAM(2)から記録媒体(3)へ転送すべき旨のデータ転送指令が発せられた場合、DMA制御回路(53)は、該ワードアドレスを含むデータ処理指令をSDRAM制御回路(51)に出力する。SDRAM制御回路(51)は、該指令を受けて、SDRAM(2)の前記ワードアドレスからデータを32ビットずつ読み出して4ワード分のデータを1ブロックとして第1メモリ選択回路(55a)にバースト転送する動作を開始する。
第1メモリ選択回路(55a)は、図9(d)の如くSDRAM制御回路(51)からのデータを一方のアクセス速度差吸収用メモリ(54a)に格納する動作を開始し、その後、該メモリ(54a)に最初の32ビット分のデータ“D0a”〜“D0d”が格納されて該メモリ(54a)からのデータの読出しが可能となった時点で、第2メモリ選択回路(55b)は、該メモリ(54a)からデータを32ビットずつ読み出して第1データ選択回路(56a)に供給する動作を開始する。
For example, from the CPU (6) shown in FIG. 8 to the DMA control circuit (53) of the DMA controller (5), the word address “SA0” is used as the read start address from the SDRAM (2), and data for 8 words is SDRAM. When a data transfer command is issued to transfer data from (2) to the recording medium (3), the DMA control circuit (53) outputs a data processing command including the word address to the SDRAM control circuit (51). . Upon receiving the command, the SDRAM control circuit (51) reads data from the word address of the SDRAM (2) 32 bits at a time and bursts the data for 4 words as a block to the first memory selection circuit (55a). The operation to start is started.
The first memory selection circuit (55a) starts the operation of storing the data from the SDRAM control circuit (51) in one access speed difference absorption memory (54a) as shown in FIG. When the first 32-bit data “D0a” to “D0d” are stored in (54a) and data can be read from the memory (54a), the second memory selection circuit (55b) The operation of reading data from the memory (54a) 32 bits at a time and supplying it to the first data selection circuit (56a) is started.

上述の如く前記一方のアクセス速度差吸収用メモリ(54a)から最初の4ワード分のデータ“D0a”〜“D3d”を読み出して第1データ選択回路(56)に供給する処理が行なわれている間に、前記第1メモリ選択回路(55a)は、同図(c)の如く、次の4ワード分のデータ“D4a”〜“D7d”を他方のアクセス速度差吸収用メモリ(54b)に格納する動作を開始し、その後、最初の4ワード分のデータの最後のデータ“D3d”が第1データ選択回路(56a)に供給されると、前記第2メモリ選択回路(55b)は、前記他方のアクセス速度差吸収用メモリ(54a)からデータを32ビットずつ読み出して第1データ選択回路(56a)に供給する動作を開始する。
第1データ選択回路(56a)は、上述の如く第2メモリ選択回路(55b)から供給される32ビットのデータの内、下位16ビットのデータ及び上位16ビットのデータを交互に記録媒体制御回路(52)に供給する動作を実行し、記録媒体制御回路(52)は、供給されるデータを同図(e)の如く記録媒体(3)に書き込む。
この様にして、SDRAM(2)から前記ワードアドレス“SA0”以降に格納されている8ワード分のデータ“D0a”〜“D7d”が記録媒体(3)に転送されて記録されることになる。
As described above, the first four words of data “D0a” to “D3d” are read from the one access speed difference absorbing memory (54a) and supplied to the first data selection circuit (56). In the meantime, the first memory selection circuit (55a) stores the data "D4a" to "D7d" for the next four words in the other access speed difference absorbing memory (54b) as shown in FIG. When the last data “D3d” of the data for the first four words is supplied to the first data selection circuit (56a), the second memory selection circuit (55b) The operation of reading the data from the access speed difference absorbing memory (54a) 32 bits at a time and supplying it to the first data selection circuit (56a) is started.
As described above, the first data selection circuit (56a) is a recording medium control circuit that alternately converts the lower 16-bit data and the upper 16-bit data among the 32-bit data supplied from the second memory selection circuit (55b). The operation for supplying to (52) is executed, and the recording medium control circuit (52) writes the supplied data to the recording medium (3) as shown in FIG.
In this way, data “D0a” to “D7d” for 8 words stored after the word address “SA0” is transferred from the SDRAM (2) to the recording medium (3) and recorded. .

上記DMAコントローラ(5)においては、上述の如く、SDRAM(2)から読み出したデータを一旦、アクセス速度差吸収用メモリ(54a)(54b)に格納した後に記録媒体(3)に書き込むことによって、SDRAM(2)に対するアクセス速度と記録媒体(3)に対するアクセス速度との差を緩和することが出来る。又、図9(c)乃至(e)に示す如く、一方のアクセス速度差吸収用メモリ(54a)からデータを読み出して記録媒体(3)に書き込む処理と、SDRAM(2)からデータを読み出して他方のアクセス速度差吸収用メモリ(54b)に書き込む処理とを並列的に実行することによって、記録媒体(3)に対する書込みを連続的に行なうことが出来、全体のデータ転送時間を短縮することが出来る。   In the DMA controller (5), as described above, the data read from the SDRAM (2) is temporarily stored in the access speed difference absorbing memory (54a) (54b) and then written to the recording medium (3). The difference between the access speed for the SDRAM (2) and the access speed for the recording medium (3) can be reduced. Also, as shown in FIGS. 9C to 9E, a process of reading data from one access speed difference absorbing memory (54a) and writing it to the recording medium (3), and reading data from the SDRAM (2). By executing the process of writing to the other access speed difference absorbing memory (54b) in parallel, writing to the recording medium (3) can be performed continuously, and the overall data transfer time can be shortened. I can do it.

図10(a)は、記録媒体(3)に記録されているデータをバイト単位で表わしており、同図(b)乃至(e)はそれぞれ、記録媒体(3)に記録されているデータをSDRAM(2)に転送する際に、アクセス速度差吸収用メモリ(54a)(54b)にデータが格納されるタイミング、SDRAM(2)にワード単位でデータが格納されるタイミング、及びSDRAM(2)にバイト単位でデータが格納されるタイミングを表わしている。
例えば、図8に示すCPU(6)からDMAコントローラ(5)のDMA制御回路(53)に対して、ワードアドレス“SA0”をSDRAM(2)への書込み開始アドレスとして8ワード分のデータを記録媒体(3)からSDRAM(2)へ転送すべき旨のデータ転送指令が発せられた場合には、DMA制御回路(53)は、記録媒体制御回路(52)にデータ処理指令を出力する。記録媒体制御回路(52)は、該指令を受けて、図10(a)の如く記録媒体(3)に記録されているデータを16ビットずつ読み出して第2データ選択回路(56b)に転送する動作を開始する。第2データ選択回路(56b)は、供給される16ビットのデータを交互に下位データ或いは上位データとして32ビットのデータを作成し、第1メモリ選択回路(55a)に供給する。
FIG. 10A shows data recorded in the recording medium (3) in units of bytes, and FIGS. 10B to 10E show data recorded in the recording medium (3). When data is transferred to the SDRAM (2), the timing at which data is stored in the access speed difference absorbing memories (54a) (54b), the timing at which data is stored in the SDRAM (2) in units of words, and the SDRAM (2) Represents the timing at which data is stored in byte units.
For example, data for 8 words is recorded from the CPU (6) shown in FIG. 8 to the DMA control circuit (53) of the DMA controller (5) using the word address “SA0” as the write start address to the SDRAM (2). When a data transfer command for transferring data from the medium (3) to the SDRAM (2) is issued, the DMA control circuit (53) outputs a data processing command to the recording medium control circuit (52). In response to the command, the recording medium control circuit (52) reads the data recorded on the recording medium (3) 16 bits at a time as shown in FIG. 10 (a) and transfers it to the second data selection circuit (56b). Start operation. The second data selection circuit (56b) creates 32-bit data by alternately using the supplied 16-bit data as lower data or upper data, and supplies it to the first memory selection circuit (55a).

第1メモリ選択回路(55a)は、図10(c)の如く、第2データ選択回路(56b)からのデータを一方のアクセス速度差吸収用メモリ(54a)に格納する動作を開始し、その後、該メモリ(54a)に4ワード分のデータ“D0a”〜“D3d”が格納されて該メモリ(54a)が満杯となった時点で、第2メモリ選択回路(55b)は、該メモリ(54a)から該データを読み出してSDRAM制御回路(51)に供給する動作を開始する。   The first memory selection circuit (55a) starts the operation of storing the data from the second data selection circuit (56b) in one access speed difference absorption memory (54a) as shown in FIG. When the data “D0a” to “D3d” for four words are stored in the memory (54a) and the memory (54a) becomes full, the second memory selection circuit (55b) ) Is started to read out the data from (1) and supply it to the SDRAM control circuit (51).

又、上述の如く一方のアクセス速度差吸収用メモリ(54a)に最初の4ワード分のデータ“D0a”〜“D3d”が格納されて該メモリ(54a)が満杯となった時点で、前記第1メモリ選択回路(55a)は、同図(b)の如く、次の4ワード分のデータ“D4a”〜“D7d”を32ビットずつ他方のアクセス速度差吸収用メモリ(54b)に格納する動作を開始する。その後、該アクセス速度差吸収用メモリ(54b)に前記データ“D4a”〜“D7d”が格納されて該メモリ(54b)が満杯となった時点で、前記第2メモリ選択回路(55b)は、該メモリ(54b)から該データを読み出してSDRAM制御回路(51)に供給する動作を開始する。
SDRAM制御回路(51)は、同図(d)及び(e)の如く、第2メモリ選択回路(55b)から供給されるデータを32ビットずつSDRAM(2)に格納する。
この様にして、記録媒体(3)に記録されている8ワード分のデータがSDRAM(2)に転送されて前記ワードアドレス“SA0”以降に格納されることになる。
Further, as described above, when the first four words of data “D0a” to “D3d” are stored in one access speed difference absorbing memory (54a) and the memory (54a) becomes full, The one memory selection circuit (55a) stores the data "D4a" to "D7d" for the next four words in the other access speed difference absorbing memory (54b) by 32 bits as shown in FIG. To start. Thereafter, when the data “D4a” to “D7d” are stored in the memory for absorbing the access speed difference (54b) and the memory (54b) becomes full, the second memory selection circuit (55b) The operation of reading the data from the memory (54b) and supplying it to the SDRAM control circuit (51) is started.
The SDRAM control circuit (51) stores the data supplied from the second memory selection circuit (55b) in the SDRAM (2) 32 bits at a time, as shown in FIGS.
In this way, data for 8 words recorded on the recording medium (3) is transferred to the SDRAM (2) and stored after the word address "SA0".

上記DMAコントローラ(5)においては、上述の如く、記録媒体(3)から読み出したデータを一旦、アクセス速度差吸収用メモリ(54a)(54b)に格納した後にSDRAM(2)に書き込むことによって、SDRAM(2)に対するアクセス速度と記録媒体(3)に対するアクセス速度との差を緩和することが出来る。又、図10(b)乃至(e)に示す如く、一方のアクセス速度差吸収用メモリ(54a)からデータを読み出してSDRAM(2)に格納する処理と、記録媒体(3)からデータを読み出して他方のアクセス速度差吸収用メモリ(54b)に格納する処理とを並列的に実行することによって、4ワード分のデータをSDRAM(2)に格納する処理が終了してから次の4ワード分のデータをSDRAM(2)に格納する処理が開始されるまでの時間を短縮することが出来、全体のデータ転送時間を短縮することが出来る。   In the DMA controller (5), as described above, the data read from the recording medium (3) is temporarily stored in the access speed difference absorbing memory (54a) (54b) and then written in the SDRAM (2). The difference between the access speed for the SDRAM (2) and the access speed for the recording medium (3) can be reduced. Further, as shown in FIGS. 10B to 10E, the data is read from one access speed difference absorbing memory (54a) and stored in the SDRAM (2), and the data is read from the recording medium (3). By executing in parallel the process of storing in the other access speed difference absorbing memory (54b), the process of storing the data for 4 words in the SDRAM (2) is completed and the next 4 words are stored. The time until the process of storing the data in the SDRAM (2) is started can be shortened, and the entire data transfer time can be shortened.

尚、本願出願人は、SDRAMを含む3つのメモリを具え、それらのメモリ間で高速な転送処理を行なうことが可能なデータ処理装置を提案している(特許文献1及び2参照)。
又、本願出願人は、CPUからのアクセス要求に応じてメモリに対するアクセスを行なう種々のメモリ制御回路を提案している(特許文献3及び4参照)。
更に、SDRAMチップを使用して待ち時間を減少させることが可能な高性能高帯域幅RAMバス・アーキテクチャが提案されている(特許文献5参照)。
特開2001−243171号公報 特開2004−030602号公報 特開2000−187635号公報 特開平11−259358号公報 特開平10−340224号公報
The applicant of the present application has proposed a data processing apparatus that includes three memories including an SDRAM and can perform high-speed transfer processing between these memories (see Patent Documents 1 and 2).
The applicant of the present application has proposed various memory control circuits for accessing the memory in response to an access request from the CPU (see Patent Documents 3 and 4).
Furthermore, a high performance high bandwidth RAM bus architecture has been proposed that can reduce latency using SDRAM chips (see Patent Document 5).
JP 2001-243171 A JP 2004-030602 A JP 2000-187635 A JP 11-259358 A Japanese Patent Laid-Open No. 10-340224

しかしながら、上記従来のデジタルカメラにおいては、SDRAM(2)からの読出し開始アドレスがワードアドレス“SA0”、“SA4”、“SA8”・・・である場合には、上述の如くDMAコントローラ(5)によってデータ転送処理を行なうことが出来るが、SDRAM(2)の読出し開始アドレスがワードアドレスでない場合、例えばバイトアドレス“SA2”である場合には、DMAコントローラ(5)のみによってデータ転送処理を行なうことが出来ず、後述の如くCPU(6)及びDMAコントローラ(5)によってデータ転送処理が行なわれる。   However, in the conventional digital camera, when the read start address from the SDRAM (2) is the word address “SA0”, “SA4”, “SA8”,..., The DMA controller (5) as described above. However, when the read start address of the SDRAM (2) is not a word address, for example, the byte address “SA2”, the data transfer process is performed only by the DMA controller (5). The data transfer process is performed by the CPU (6) and the DMA controller (5) as described later.

例えば、SDRAM(2)からの読出し開始アドレスをバイトアドレス“SA2”として3ワード分のデータ“D0c”〜“D2d”を記録媒体(3)に転送する場合には、CPU(6)は、先ず図11(a)の如く、プログラム格納メモリからSDRAM(2)のワードアドレス“SA0”に格納されているワードデータ“D0”を読み出すプログラム(以下、データ読出しプログラムという)をフェッチして実行する。これによって、同図(b)の如くSDRAM(2)のワードアドレス“SA0”に格納されているデータ“D0”、即ち同図(c)に示す32ビット分のデータ“D0a”〜“D0d”がCPU(6)のレジスタに読み込まれる。続いて、CPU(6)は、前記プログラム格納メモリから、前記レジスタに読み込まれたデータを下位に16ビットだけシフトさせた後に下位16ビットのデータを記録媒体(3)に書き込むプログラム(以下、データシフト・書込みプログラムという)をフェッチして実行する。これによって、SDRAM(2)のバイトアドレス
“SA2”及び“SA3”にそれぞれ格納されているデータ“D0c”及び“D0d”が同図(d)の如く記録媒体(3)に記録される。その後、CPU(6)は、プログラム格納メモリから、DMAコントローラ(5)を起動するプログラム(以下、DMA起動プログラムという)をフェッチして実行する。これによって、CPU(6)からDMAコントローラ(5)に対し、ワードアドレス“SA4”を読出し開始アドレスとして2ワード分のデータをSDRAM(2)から記録媒体(3)へ転送すべき旨のデータ転送指令が発せられて、SDRAM(2)のワードアドレス“SA4”以降に格納されている2ワード分のデータ“D1a”〜“D2d”が同図(d)の如く記録媒体(3)に記録される。この様にして、SDRAM(2)のバイトアドレス“SA2”以降に格納されているデータ“D0c”〜“D2d”が記録媒体(3)に転送されて記録されることになる。
For example, when transferring the data “D0c” to “D2d” for three words to the recording medium (3) using the read start address from the SDRAM (2) as the byte address “SA2”, the CPU (6) As shown in FIG. 11A, a program for reading the word data “D0” stored in the word address “SA0” of the SDRAM (2) from the program storage memory (hereinafter referred to as a data reading program) is fetched and executed. As a result, the data “D0” stored in the word address “SA0” of the SDRAM (2) as shown in FIG. 8B, that is, the data “D0a” to “D0d” for 32 bits shown in FIG. Is read into the register of the CPU (6). Subsequently, the CPU (6) shifts the data read into the register from the program storage memory by 16 bits to the lower and then writes the lower 16 bits to the recording medium (3) (hereinafter referred to as data). Fetch and execute a shift / write program). As a result, the data “D0c” and “D0d” respectively stored in the byte addresses “SA2” and “SA3” of the SDRAM (2) are recorded on the recording medium (3) as shown in FIG. Thereafter, the CPU (6) fetches and executes a program for starting the DMA controller (5) (hereinafter referred to as a DMA start program) from the program storage memory. As a result, data transfer to the DMA controller (5) from the CPU (6) indicating that two words of data should be transferred from the SDRAM (2) to the recording medium (3) using the word address “SA4” as the read start address. When a command is issued, data “D1a” to “D2d” for two words stored after the word address “SA4” of the SDRAM (2) are recorded on the recording medium (3) as shown in FIG. The In this way, the data “D0c” to “D2d” stored after the byte address “SA2” of the SDRAM (2) is transferred to the recording medium (3) and recorded.

従来のデジタルカメラにおいては、上述の如く、SDRAM(2)からの読出し開始アドレスがワードアドレスでない場合には、CPU(6)は、DMA起動プログラムをフェッチする処理のみならず、データ読出しプログラムをフェッチする処理、及びデータシフト・書込みプログラムをフェッチする処理を行なわねばならず、読出し開始アドレスがワードアドレスである場合に比べて全体のデータ転送時間が長くなる問題があった。
本発明の目的は、メモリからの読出し開始アドレスがワードアドレスでない場合であっても、読出し開始アドレスがワードアドレスである場合と同程度の短い時間でデータ転送を行なうことが可能なメモリ制御装置及びこれを具えた電子機器を提供することである。
In the conventional digital camera, as described above, when the read start address from the SDRAM (2) is not a word address, the CPU (6) fetches not only the DMA start program but also the data read program. And the process of fetching the data shift / write program must be performed, and there is a problem that the entire data transfer time becomes longer than when the read start address is a word address.
An object of the present invention is to provide a memory control device capable of transferring data in a time as short as when the read start address is a word address even when the read start address from the memory is not a word address. It is to provide an electronic device having this.

本発明に係るメモリ制御装置は、2つのメモリ間に介在して、外部からデータ転送指令を受けて両メモリ間でデータの転送を行なうものであって、複数バイトのデータからなる1ワード毎に付与されているワードアドレスを用いて一方のメモリにアクセスすることが可能である。そして、該メモリ制御装置は、
前記一方のメモリから読み出されたデータを一時的に格納するためのデータ編成用バッファ手段と、
外部から前記一方のメモリからの読出し開始アドレスを含むデータ転送指令を受けたとき、該読出し開始アドレスから、該一方のメモリの該読出し開始アドレスに格納されているデータを含むワードのワードアドレスを導出するアドレス導出手段と、
前記一方のメモリの前記ワードアドレスからデータの読出しを開始し、読み出したデータを前記データ編成用バッファ手段に格納する第1データ処理手段と、
前記データ編成用バッファ手段から、前記一方のメモリの前記読出し開始アドレス以降に格納されているデータを読み出して他方のメモリに書き込む第2データ処理手段
とを具えている。
The memory control device according to the present invention interposes between two memories, receives a data transfer command from the outside, and transfers data between the two memories. For each word consisting of a plurality of bytes of data One memory can be accessed using the assigned word address. The memory control device
Data organization buffer means for temporarily storing data read from said one memory;
When a data transfer command including a read start address from the one memory is received from the outside, a word address of a word including data stored in the read start address of the one memory is derived from the read start address. Address deriving means to perform,
First data processing means for starting reading data from the word address of the one memory and storing the read data in the data organization buffer means;
Second data processing means for reading data stored after the read start address of the one memory from the data organization buffer means and writing it to the other memory.

上記メモリ制御装置には、該メモリ制御装置に対して一方のメモリからの読出し開始アドレスを含むデータ転送指令を発する情報処理装置が接続される。
上記本発明に係るメモリ制御装置においては、情報処理装置からのデータ転送指令に含まれる読出し開始アドレスから、前記一方のメモリの該読出し開始アドレスに格納されているデータを含むワードのワードアドレスが導出された後、一方のメモリの該導出されたワードアドレスからデータの読出しが開始され、読み出されたデータはデータ編成用バッファ手段に格納される。そして、該データ編成用バッファ手段から、前記一方のメモリの前記読出し開始アドレス以降に格納されているデータが読み出されて他方のメモリに書き込まれる。この様にして、一方のメモリの前記読出し開始アドレス以降に格納されているデータが他方のメモリに転送されて記録されることになる。
上記本発明に係るメモリ制御装置によれば、情報処理装置からのデータ転送指令に含まれる読出し開始アドレスがワードアドレスでない場合であっても、上述の如く一方のメモリの該読出し開始アドレス以降に格納されているデータを他方のメモリに記録することが出来るので、情報処理装置は該メモリ制御装置を起動するプログラムをフェッチして実行すればよく、データ読出しプログラムをフェッチする処理及びデータシフト・書込みプログラムをフェッチする処理は不要である。従って、読出し開始アドレスがワードアドレスである場合と同程度の短い時間でデータの転送を行なうことが出来る。
The memory control device is connected to an information processing device that issues a data transfer command including a read start address from one memory to the memory control device.
In the memory control device according to the present invention, the word address of the word including the data stored in the read start address of the one memory is derived from the read start address included in the data transfer command from the information processing device. After that, data reading is started from the derived word address of one memory, and the read data is stored in the data organization buffer means. Then, data stored after the read start address of the one memory is read from the data organization buffer means and written to the other memory. In this way, data stored after the read start address of one memory is transferred to the other memory and recorded.
According to the memory control device of the present invention, even if the read start address included in the data transfer command from the information processing device is not a word address, it is stored after the read start address of one memory as described above. Since the stored data can be recorded in the other memory, the information processing apparatus only needs to fetch and execute the program for starting the memory control apparatus, and the process for fetching the data read program and the data shift / write program The process of fetching is unnecessary. Therefore, data can be transferred in a time as short as when the read start address is a word address.

具体的には、前記アドレス導出手段は、データ転送指令に含まれる読出し開始アドレスがワードアドレスでない場合にワードアドレス導出動作を行ない、前記第1データ処理手段は、前記読出し開始アドレスがワードアドレスでない場合に、導出されたワードアドレスからデータの読出しを開始する一方、前記読出し開始アドレスがワードアドレスである場合には、該読出し開始アドレスからデータの読出しを開始する。   Specifically, the address deriving unit performs a word address deriving operation when the read start address included in the data transfer command is not a word address, and the first data processing unit performs the operation when the read start address is not a word address. On the other hand, data reading is started from the derived word address, and when the read start address is a word address, data reading is started from the read start address.

又、具体的には、外部から前記一方のメモリへの書込み開始アドレスを含むデータ転送指令を受けて前記他方のメモリから該一方のメモリへデータの転送を行なうものであって、
前記他方のメモリからデータを読み出して前記データ編成用バッファ手段に格納する第3データ処理手段と、
前記データ編成用バッファ手段から、前記データ転送指令に含まれる書込み開始アドレスに応じたバイト数のデータを読み出して、前記一方のメモリの該書込み開始アドレス以降に書き込む第4データ処理手段
とを具えている。
Specifically, in response to a data transfer command including a write start address to the one memory from the outside, data is transferred from the other memory to the one memory.
Third data processing means for reading data from the other memory and storing it in the data organization buffer means;
Fourth data processing means for reading out data of the number of bytes corresponding to the write start address included in the data transfer command from the data organization buffer means and writing the data after the write start address of the one memory. Yes.

上記具体的構成においては、情報処理装置からのデータ転送指令に含まれる書込み開始アドレスがワードアドレスでない場合であっても、他方のメモリに書き込まれているデータを一方のメモリの該書込み開始アドレス以降に記録することが出来るので、情報処理装置は該メモリ制御装置を起動するプログラムをフェッチして実行すればよく、書込み開始アドレスがワードアドレスである場合と同程度の短い時間でデータの転送を行なうことが出来る。   In the specific configuration described above, even if the write start address included in the data transfer command from the information processing device is not a word address, the data written in the other memory is stored after the write start address in one memory. Therefore, the information processing device only needs to fetch and execute a program for starting the memory control device, and transfers data in a time as short as when the write start address is a word address. I can do it.

更に具体的には、前記データ編成用バッファ手段から読み出したデータを一時的に格納するための2つのアクセス速度差吸収用メモリ手段を具え、前記第2データ処理手段は、前記データ編成用バッファ手段から読み出したデータを2つのアクセス速度差吸収用メモリ手段に交互に書き込むと共に、該2つのアクセス速度差吸収用メモリ手段から交互にデータを読み出して前記他方のメモリに書き込むものであって、一方のアクセス速度差吸収用メモリ手段からデータを読み出して前記他方のメモリに書き込む動作と、前記データ編成用バッファ手段からデータを読み出して他方のアクセス速度差吸収用メモリ手段に書き込む動作とを同時に実行する。   More specifically, it comprises two access speed difference absorbing memory means for temporarily storing data read from the data organization buffer means, and the second data processing means comprises the data organization buffer means. Are alternately written to the two access speed difference absorbing memory means, and are alternately read from the two access speed difference absorbing memory means and written to the other memory. The operation of reading data from the access speed difference absorbing memory means and writing it to the other memory and the operation of reading data from the data organization buffer means and writing to the other access speed difference absorbing memory means are executed simultaneously.

上記具体的構成においては、一方のメモリから読み出されたデータを一旦、データ編成用バッファ手段及びアクセス速度差吸収用メモリ手段に書き込んだ後に他方のメモリに書き込むことによって、2つのメモリ間のアクセス速度差を緩和することが出来る。又、一方のアクセス速度差吸収用メモリ手段からデータを読み出して他方のメモリに書き込む動作と、前記データ編成用バッファ手段からデータを読み出して他方のアクセス速度差吸収用メモリ手段に書き込む動作とを同時に実行することによって、他方のメモリに対する書込みを連続的に行なうことが出来、全体のデータ転送時間を短縮することが出来る。   In the above specific configuration, the data read from one memory is temporarily written in the data organization buffer means and the access speed difference absorbing memory means and then written in the other memory, thereby accessing between the two memories. The speed difference can be reduced. The operation of reading data from one access speed difference absorbing memory means and writing it to the other memory and the operation of reading data from the data organization buffer means and writing to the other access speed difference absorbing memory means simultaneously. By executing, writing to the other memory can be performed continuously, and the entire data transfer time can be shortened.

更に又、具体的には、前記第3データ処理手段は、前記他方のメモリから読み出したデータを前記2つのアクセス速度差吸収用メモリ手段に交互に書き込むと共に、該2つのアクセス速度差吸収用メモリ手段から交互にデータを読み出して前記データ編成用バッファ手段に格納するものであって、一方のアクセス速度差吸収用メモリ手段からデータを読み出して前記データ編成用バッファ手段に格納する動作と、前記他方のメモリからデータを読み出して他方のアクセス速度差吸収用メモリ手段に書き込む動作とを同時に実行する。   More specifically, the third data processing means alternately writes the data read from the other memory into the two access speed difference absorbing memory means, and the two access speed difference absorbing memories. Alternately reading data from the means and storing it in the data organization buffer means, wherein the data is read from one access speed difference absorbing memory means and stored in the data organization buffer means, and the other The operation of reading the data from the other memory and writing it into the other access speed difference absorbing memory means is executed simultaneously.

上記具体的構成においては、他方のメモリから読み出されたデータを一旦、アクセス速度差吸収用メモリ手段及びデータ編成用バッファ手段に書き込んだ後に一方のメモリに書き込むことによって、2つのメモリ間のアクセス速度差を緩和することが出来る。又、一方のアクセス速度差吸収用メモリ手段からデータを読み出して前記データ編成用バッファ手段に格納する動作と、前記他方のメモリから読み出したデータを他方のアクセス速度差吸収用メモリ手段に書き込む動作とを同時に実行することによって、データ編成用バッファ手段に対する格納処理を連続的に行なうことが出来、全体のデータ転送時間を短縮することが出来る。   In the above specific configuration, the data read from the other memory is temporarily written in one memory after being written in the access speed difference absorbing memory means and the data organization buffer means, thereby accessing between the two memories. The speed difference can be reduced. An operation of reading data from one access speed difference absorbing memory means and storing it in the data organization buffer means; and an operation of writing data read from the other memory into the other access speed difference absorbing memory means; Are simultaneously executed, the storage process for the data organization buffer means can be continuously performed, and the entire data transfer time can be shortened.

本発明に係るメモリ制御装置及びこれを具えた電子機器によれば、メモリからの読出し開始アドレスがワードアドレスでない場合であっても、読出し開始アドレスがワードアドレスである場合と同程度の短い時間でデータ転送を行なうことが出来る。   According to the memory control device and the electronic apparatus including the memory control device according to the present invention, even when the read start address from the memory is not a word address, the time is as short as when the read start address is a word address. Data transfer can be performed.

以下、本発明を図1に示すデジタルカメラに実施した形態につき、図面に沿って具体的に説明する。尚、図1においては、撮像光学系及び画像表示装置の図示は省略されている。
本発明に係るデジタルカメラは、図示の如く、撮像動作などの種々の動作を制御するCPU(4)と、画像データを一時的に格納するためのSDRAM(2)と、画像データを記録するための記録媒体(3)と、SDRAM(2)と記録媒体(3)との間でデータの転送を行なうDMAコントローラ(1)とを具えている。図中の細線はデータバスを表わしており、各バスの近傍に記載された数字はバス幅を表わしている。SDRAM(2)は32ビットのバス幅を有する一方、記録媒体(3)は16ビットのバス幅を有している。
Hereinafter, the embodiment in which the present invention is applied to the digital camera shown in FIG. 1 will be described in detail with reference to the drawings. In FIG. 1, the imaging optical system and the image display apparatus are not shown.
As shown in the figure, a digital camera according to the present invention includes a CPU (4) for controlling various operations such as an imaging operation, an SDRAM (2) for temporarily storing image data, and an image data recording unit. Recording medium (3), and a DMA controller (1) for transferring data between the SDRAM (2) and the recording medium (3). The thin lines in the figure represent data buses, and the numbers written in the vicinity of each bus represent the bus width. The SDRAM (2) has a 32-bit bus width, while the recording medium (3) has a 16-bit bus width.

DMAコントローラ(1)は、SDRAM(2)に対する書込み及び読出しを制御するSDRAM制御回路(11)と、記録媒体(3)に対する書込み及び読出しを制御する記録媒体制御回路(12)と、16バイトのデータ容量を有してSDRAM(2)及び記録媒体(3)から読み出したデータを一時的に格納するための2つのアクセス速度差吸収用メモリ(14a)(14b)と、これら2つのメモリ(14a)(14b)の内、データ書込みの対象とする何れか1つのメモリを選択して該メモリに対するデータの書込みを行なう第1メモリ選択回路(15a)と、データ読出しの対象とする何れか1つのメモリを選択して該メモリからデータの読出しを行なう第2メモリ選択回路(15b)とを具えている。
又、前記DMAコントローラ(1)は、アクセス速度差吸収用メモリ(14a)(14b)から読み出した32ビットのデータの内、上位16ビットのデータ或いは下位16ビットのデータの何れかのデータを選択して前記記録媒体制御回路(12)に供給する第1データ選択回路(16a)と、記録媒体(3)から順次読み出される16ビットのデータを上位データ或いは下位データとして32ビットのデータを作成しアクセス速度差吸収用メモリ(14a)(14b)に供給する第2データ選択回路(16b)とを具えている。
The DMA controller (1) includes an SDRAM control circuit (11) for controlling writing and reading to the SDRAM (2), a recording medium control circuit (12) for controlling writing and reading to the recording medium (3), and a 16-byte memory. Two access speed difference absorbing memories (14a) and (14b) for temporarily storing data read from the SDRAM (2) and the recording medium (3) having a data capacity, and these two memories (14a ) (14b), the first memory selection circuit (15a) for selecting any one of the memories to be data written and writing the data to the memory, and any one of the objects to be read. A second memory selection circuit (15b) for selecting a memory and reading data from the memory is provided.
The DMA controller (1) selects either the upper 16-bit data or the lower 16-bit data from the 32-bit data read from the access speed difference absorbing memory (14a) (14b). The first data selection circuit (16a) to be supplied to the recording medium control circuit (12) and 16-bit data sequentially read out from the recording medium (3) are used to create 32-bit data. And a second data selection circuit (16b) for supplying access speed difference absorption memories (14a) and (14b).

更に、上記DMAコントローラ(1)は、特徴的構成において、64ビットのバス幅を有してSDRAM(2)及び記録媒体(3)から読み出したデータを一時的に格納するためのデータ編成用バッファ(17)と、該バッファ(17)からデータを書き込むべき領域を選択して該領域に対するデータの書込みを行なう第1バッファ書込み領域選択回路(18a)及び第2バッファ書込み領域選択回路(18b)と、該バッファ(17)からデータを読み出すべき領域を選択して該領域からデータの読出しを行なう第1バッファ読出し領域選択回路(19a)及び第2バッファ読出し領域選択回路(19b)とを具えている。   Further, the DMA controller (1) has a data organization buffer having a 64-bit bus width for temporarily storing data read from the SDRAM (2) and the recording medium (3) in a characteristic configuration. (17), a first buffer write area selection circuit (18a) and a second buffer write area selection circuit (18b) for selecting an area in which data is to be written from the buffer (17) and writing data to the area; A first buffer read area selection circuit (19a) and a second buffer read area selection circuit (19b) for selecting an area from which data is to be read from the buffer (17) and reading data from the area. .

上記のSDRAM制御回路(11)、記録媒体制御回路(12)、第1及び第2メモリ選択回路(15a)(15b)、第1及び第2データ選択回路(16a)(16b)、第1及び第2バッファ書込み領域選択回路(18a)(18b)、第1及び第2バッファ読出し領域選択回路(19a)(19b)には、制御バス(10)を介して、これらの回路の動作を制御するDMA制御回路(13)が接続され、該制御回路(13)には上記CPU(4)が接続されている。   The SDRAM control circuit (11), the recording medium control circuit (12), the first and second memory selection circuits (15a) (15b), the first and second data selection circuits (16a) (16b), the first and second The second buffer write area selection circuits (18a) and (18b) and the first and second buffer read area selection circuits (19a) and (19b) control the operation of these circuits via the control bus (10). A DMA control circuit (13) is connected, and the CPU (4) is connected to the control circuit (13).

上記CPU(4)は、DMAコントローラ(1)にSDRAM(2)から記録媒体(3)へのデータ転送を実行させんとする際には、SDRAM(2)からの読出し開始アドレスがワードアドレスであるか否かに拘わらず、DMAコントローラ(1)を起動するためのプログラムをプログラム格納メモリ(図示省略)からフェッチして実行する。これによって、CPU(4)からDMAコントローラ(1)のDMA制御回路(13)に対し、SDRAM(2)からの読出し開始アドレス、転送容量及び転送方向を含むデータ転送指令が発せられることになる。
一方、DMAコントローラ(1)に記録媒体(3)からSDRAM(2)へのデータ転送を実行させんとする際には、SDRAM(2)への書込み開始アドレスがワードアドレスであるか否かに拘わらず、DMAコントローラ(1)を起動するためのプログラムをプログラム格納メモリからフェッチして実行する。これによって、CPU(4)からDMAコントローラ(1)のDMA制御回路(13)に対し、SDRAM(2)への書込み開始アドレス、転送容量及び転送方向を含むデータ転送指令が発せられることになる。
前記DMA制御回路(13)は、CPU(4)からの上記データ転送指令を受けたとき、該指令に含まれる読出し開始アドレス或いは書込み開始アドレスがワードアドレスであるか否かを判断し、その判断結果に応じて制御動作を実行する。
When the CPU (4) tries to execute data transfer from the SDRAM (2) to the recording medium (3) to the DMA controller (1), the read start address from the SDRAM (2) is a word address. Regardless of whether or not there is, a program for starting the DMA controller (1) is fetched from a program storage memory (not shown) and executed. As a result, a data transfer command including a read start address, transfer capacity, and transfer direction from the SDRAM (2) is issued from the CPU (4) to the DMA control circuit (13) of the DMA controller (1).
On the other hand, when the DMA controller (1) is to execute data transfer from the recording medium (3) to the SDRAM (2), whether or not the write start address to the SDRAM (2) is a word address. Regardless, the program for starting the DMA controller (1) is fetched from the program storage memory and executed. As a result, a data transfer command including a write start address, transfer capacity, and transfer direction to the SDRAM (2) is issued from the CPU (4) to the DMA control circuit (13) of the DMA controller (1).
When receiving the data transfer command from the CPU (4), the DMA control circuit (13) determines whether or not the read start address or the write start address included in the command is a word address. The control operation is executed according to the result.

図2は、SDRAM(2)に格納されているデータを記録媒体(3)に転送する際のデータ転送経路を表わしている。又、図4(a)は、SDRAM(2)に格納されているデータをワード単位で表わしているのに対し、同図(b)は、SDRAM(2)に格納されているデータをバイト単位で表わしており、同図(c)乃至(f)はそれぞれ、SDRAM(2)からの読出し開始アドレスがワードアドレスである場合に、データ編成用バッファ(17)、アクセス速度差吸収用メモリ(14a)(14b)及び記録媒体(3)のそれぞれにデータが格納されるタイミングを表わしている。
図4(a)の如く、SDRAM(2)のワードアドレス“SA0”にデータ“D0”、ワードアドレス“SA4”にデータ“D1”、ワードアドレス“SA8”にデータ“D2”・・・が格納されている。又、同図(b)の如く、例えばワードアドレス“SA0”に格納されている前記データ“D0”は4つのデータ“D0a”〜“D0d”から構成されており、バイトアドレス“SA0”にデータ“D0a”、バイトアドレス“SA1”にデータ“D0b”、バイトアドレス“SA2”にデータ“D0c”、バイトアドレス“SA3”にデータ“D0d”が格納されている。
FIG. 2 shows a data transfer path for transferring data stored in the SDRAM (2) to the recording medium (3). 4A shows the data stored in the SDRAM (2) in units of words, whereas FIG. 4B shows the data stored in the SDRAM (2) in units of bytes. (C) to (f) in FIG. 6 respectively show a data organization buffer (17) and an access speed difference absorbing memory (14a) when the read start address from the SDRAM (2) is a word address. ) (14b) and the recording medium (3) represent the timing at which data is stored.
As shown in FIG. 4A, the data “D0” is stored in the word address “SA0”, the data “D1” is stored in the word address “SA4”, the data “D2” is stored in the word address “SA8”. Has been. Further, as shown in FIG. 4B, for example, the data “D0” stored in the word address “SA0” is composed of four data “D0a” to “D0d”, and the data is stored in the byte address “SA0”. Data “D0b” is stored in “D0a”, byte address “SA1”, data “D0c” is stored in byte address “SA2”, and data “D0d” is stored in byte address “SA3”.

例えば、図2に示すCPU(4)からDMA制御回路(13)に対して、ワードアドレス“SA0”を読出し開始アドレスとして8ワード分のデータをSDRAM(2)から記録媒体(3)へ転送すべき旨のデータ転送指令が発せられた場合、DMA制御回路(13)は、該ワードアドレスを含むデータ処理指令をSDRAM制御回路(11)に出力する。SDRAM制御回路(11)は、該指令を受けて、SDRAM(2)の前記ワードアドレスからデータを32ビットずつ読み出して4ワード分のデータを1ブロックとして第1バッファ書込み領域選択回路(18a)にバースト転送する動作を開始する。   For example, the CPU (4) shown in FIG. 2 transfers data for 8 words from the SDRAM (2) to the recording medium (3) using the word address “SA0” as a read start address to the DMA control circuit (13). When a data transfer command indicating power is issued, the DMA control circuit (13) outputs a data processing command including the word address to the SDRAM control circuit (11). In response to the command, the SDRAM control circuit (11) reads data from the word address of the SDRAM (2) 32 bits at a time and sets the data for 4 words as one block to the first buffer write area selection circuit (18a). Starts burst transfer operation.

第1バッファ書込み領域選択回路(18a)は、図4(c)の如く、データ編成用バッファ(17)から下位側の32ビット幅を有する下位側書込み領域BD[31:0]及び上位側の32ビット幅を有する上位側書込み領域BD[63:32]を交互に選択して、選択した領域にSDRAM制御回路(11)から供給される32ビットのデータを書き込む動作を開始し、その後、前記バッファ(17)に最初の64ビット分のデータ“D0a”〜“D1d”が書き込まれた時点で、第1バッファ読出し領域選択回路(19a)は、前記バッファ(17)の下位側書込み領域及び上位側書込み領域から交互に32ビットのデータを読み出して第1メモリ選択回路(15a)に供給する動作を開始する。第1メモリ選択回路(15a)は、図4(e)の如く、供給された32ビットのデータを一方のアクセス速度差吸収用メモリ(14a)に格納する動作を開始し、その後、該メモリ(14a)に最初の32ビット分のデータ“D0a”〜“D0d”が格納されて該メモリ(14a)からのデータの読出しが可能となった時点で、第2メモリ選択回路(15b)は、該メモリ(14a)からデータを32ビットずつ読み出して第1データ選択回路(16a)に供給する動作を開始する。   As shown in FIG. 4 (c), the first buffer write area selection circuit (18a) has a lower side write area BD [31: 0] having a lower 32-bit width from the data organization buffer (17) and the upper side The upper side write area BD [63:32] having a 32-bit width is alternately selected, and the operation of writing 32-bit data supplied from the SDRAM control circuit (11) to the selected area is started. At the time when the first 64-bit data “D0a” to “D1d” are written to the buffer (17), the first buffer read area selection circuit (19a) sets the lower side write area and the upper side of the buffer (17). The operation of alternately reading 32-bit data from the side write area and supplying it to the first memory selection circuit (15a) is started. As shown in FIG. 4 (e), the first memory selection circuit (15a) starts the operation of storing the supplied 32-bit data in one access speed difference absorbing memory (14a), and then the memory ( When the first 32-bit data “D0a” to “D0d” are stored in 14a) and the data can be read from the memory (14a), the second memory selection circuit (15b) An operation of reading data from the memory (14a) 32 bits at a time and supplying it to the first data selection circuit (16a) is started.

上述の如く前記一方のアクセス速度差吸収用メモリ(14a)から最初の4ワード分のデータ“D0a”〜“D3d”を読み出して第1データ選択回路(16a)に供給する処理が行なわれている間に、第1メモリ選択回路(15a)は、同図(d)の如く、次の4ワード分のデータ“D4a”〜“D7d”を他方のアクセス速度差吸収用メモリ(14b)に格納する動作を開始し、その後、最初の4ワード分のデータの最後のデータ“D3d”が第1データ選択回路(16a)に供給されると、前記第2メモリ選択回路(15b)は、前記他方のアクセス速度差吸収用メモリ(14a)からデータを32ビットずつ読み出して第1データ選択回路(16a)に供給する動作を開始する。
第1データ選択回路(16a)は、上述の如く第2メモリ選択回路(15b)から供給される32ビットのデータの内、下位16ビットのデータ及び上位16ビットのデータを交互に記録媒体制御回路(12)に供給する動作を実行し、記録媒体制御回路(12)は、供給されるデータを図4(f)の如く記録媒体(3)に書き込む。
この様にして、SDRAM(2)から前記ワードアドレス“SA0”以降に格納されている8ワード分のデータ“D0a”〜“D7d”が記録媒体(3)に転送されて記録されることになる。
As described above, the first four words of data “D0a” to “D3d” are read from the one access speed difference absorbing memory (14a) and supplied to the first data selection circuit (16a). In the meantime, the first memory selection circuit (15a) stores the next four words of data “D4a” to “D7d” in the other access speed difference absorbing memory (14b) as shown in FIG. After the operation starts, when the last data “D3d” of the data of the first four words is supplied to the first data selection circuit (16a), the second memory selection circuit (15b) An operation of reading data from the access speed difference absorbing memory (14a) 32 bits at a time and supplying it to the first data selection circuit (16a) is started.
As described above, the first data selection circuit (16a) is a recording medium control circuit that alternately converts the lower 16-bit data and the upper 16-bit data among the 32-bit data supplied from the second memory selection circuit (15b). The operation of supplying to (12) is executed, and the recording medium control circuit (12) writes the supplied data to the recording medium (3) as shown in FIG. 4 (f).
In this way, data “D0a” to “D7d” for 8 words stored after the word address “SA0” is transferred from the SDRAM (2) to the recording medium (3) and recorded. .

図5(c)乃至(f)はそれぞれ、SDRAM(2)からの読出し開始アドレスがワードアドレスでない場合に、データ編成用バッファ(17)、アクセス速度差吸収用メモリ(14a)(14b)及び記録媒体(3)のそれぞれにデータが格納されるタイミングを表わしている。尚、同図(a)及び(b)はそれぞれ、図4(a)及び(b)と同一であって、図5(a)は、SDRAM(2)に格納されているデータをワード単位で表わしており、同図(b)は、SDRAM(2)に格納されているデータをバイト単位で表わしている。
例えば、図2に示すCPU(4)からDMA制御回路(13)に対して、ワードアドレスでないバイトアドレス“SA1”を読出し開始アドレスとして8ワード分のデータをSDRAM(2)から記録媒体(3)へ転送すべき旨のデータ転送指令が発せられた場合、DMA制御回路(13)は、前記バイトアドレス“SA1”から、該アドレスに格納されているデータ“D0b”を含むワードデータ“D0”のワードアドレス“SA0”を導出し、該ワードアドレスを含むデータ処理指令をSDRAM制御回路(11)に出力する。SDRAM制御回路(11)は、該指令を受けて、SDRAM(2)の前記ワードアドレス“SA0”からデータを32ビットずつ読み出して4ワード分のデータを1ブロックとして第1バッファ書込み領域選択回路(18a)にバースト転送する動作を開始する。
5 (c) to 5 (f) respectively show the data organization buffer (17), the access speed difference absorbing memories (14a) (14b), and the recording when the read start address from the SDRAM (2) is not a word address. The timing at which data is stored in each medium (3) is shown. FIGS. 5A and 5B are the same as FIGS. 4A and 4B, respectively. FIG. 5A shows the data stored in the SDRAM 2 in word units. FIG. 4B shows the data stored in the SDRAM (2) in units of bytes.
For example, from the CPU (4) shown in FIG. 2 to the DMA control circuit (13), 8-byte data is read from the SDRAM (2) to the recording medium (3) using the byte address “SA1” which is not a word address as the read start address. When a data transfer instruction is issued to transfer to the DMA controller circuit 13, the DMA control circuit 13 starts from the byte address “SA1” to the word data “D0” including the data “D0b” stored at the address. The word address “SA0” is derived, and a data processing command including the word address is output to the SDRAM control circuit (11). In response to the command, the SDRAM control circuit (11) reads data from the word address “SA0” of the SDRAM (2) 32 bits at a time and sets the data for 4 words as one block to the first buffer write area selection circuit ( The operation of burst transfer is started at 18a).

第1バッファ書込み領域選択回路(18a)は、図5(c)の如く、データ編成用バッファ(17)から下位側書込み領域BD[31:0]及び上位側書込み領域BD[63:32]を交互に選択して、選択した領域にSDRAM制御回路(11)から供給される32ビットのデータを書き込む動作を開始し、その後、該バッファ(17)に最初の64ビット分のデータ“D0a”〜“D1d”が書き込まれた時点で、第1バッファ読出し領域選択回路(19a)は、該バッファ(17)からデータを32ビットずつ読み出して第1メモリ選択回路(15a)に供給する動作を開始する。このとき、データ編成用バッファ(17)の書込み領域は、SDRAM(2)の前記読出し開始アドレス“SA1”に格納されていたデータ“D0b”が格納されている位置から上位側に32ビット幅を有する第1書込み領域BD[39:8]と、残りの32ビット幅を有する第2書込み領域BD[7:0]BD[63:40]とに分割され、これらの第1書込み領域及び第2書込み領域から交互にデータが読み出されて第1メモリ選択回路(15a)に供給される。これによって、第1メモリ選択回路(15a)には、前記読出し開始アドレス“SA1”に格納されていたデータ“D0b”以降のデータが供給されることになる。   As shown in FIG. 5C, the first buffer write area selection circuit (18a) selects the lower write area BD [31: 0] and the upper write area BD [63:32] from the data organization buffer (17). By alternately selecting, the operation of writing the 32-bit data supplied from the SDRAM control circuit (11) to the selected area is started, and then the first 64-bit data “D0a” to the buffer (17) are started. When "D1d" is written, the first buffer read area selection circuit (19a) starts an operation of reading data from the buffer (17) 32 bits at a time and supplying it to the first memory selection circuit (15a). . At this time, the write area of the data organization buffer (17) has a 32-bit width from the position where the data “D0b” stored in the read start address “SA1” of the SDRAM (2) is stored to the upper side. The first write area BD [39: 8] having the remaining 32-bit width and the second write area BD [7: 0] BD [63:40] having the remaining 32-bit width are divided into the first and second write areas BD [39: 8]. Data is alternately read from the write area and supplied to the first memory selection circuit (15a). As a result, the data after the data “D0b” stored in the read start address “SA1” is supplied to the first memory selection circuit 15a.

第1メモリ選択回路(15a)は、図5(e)の如く、供給された32ビットのデータを一方のアクセス速度差吸収用メモリ(14a)に格納する動作を開始し、その後、該メモリ(14a)に最初の32ビット分のデータ“D0b”〜“D1a”が格納されて該メモリ(14a)からのデータの読出しが可能となった時点で、第2メモリ選択回路(15b)は、該メモリ(14a)からデータを32ビットずつ読み出して第1データ選択回路(16a)に供給する動作を開始する。   As shown in FIG. 5E, the first memory selection circuit (15a) starts the operation of storing the supplied 32-bit data in one access speed difference absorbing memory (14a), and then the memory ( When the first 32-bit data “D0b” to “D1a” are stored in 14a) and the data can be read from the memory (14a), the second memory selection circuit (15b) An operation of reading data from the memory (14a) 32 bits at a time and supplying it to the first data selection circuit (16a) is started.

上述の如く前記一方のアクセス速度差吸収用メモリ(14a)から最初の4ワード分のデータ“D0b”〜“D4a”を読み出して第1データ選択回路(16a)に供給する処理が行なわれている間に、第1メモリ選択回路(15a)は、同図(d)の如く、次の4ワード分のデータ“D4b”〜“D8a”を他方のアクセス速度差吸収用メモリ(14b)に格納する動作を開始し、その後、最初の4ワード分のデータの最後のデータ“D4a”が第1データ選択回路(16a)に供給されると、前記第2メモリ選択回路(15b)は、前記他方のアクセス速度差吸収用メモリ(14a)からデータを32ビットずつ読み出して第1データ選択回路(16a)に供給する動作を開始する。
第1データ選択回路(16a)は、上述の如く第2メモリ選択回路(15b)から供給される32ビットのデータの内、下位16ビットのデータ及び上位16ビットのデータを交互に記録媒体制御回路(12)に供給する動作を実行し、記録媒体制御回路(12)は、供給されたデータを図5(f)の如く記録媒体(3)に書き込む。
この様にして、SDRAM(2)から前記バイトアドレス“SA1”以降に格納されている8ワード分のデータ“D0b”〜“D8a”が記録媒体(3)に転送されて記録されることになる。
As described above, the first four words of data “D0b” to “D4a” are read from the one access speed difference absorbing memory (14a) and supplied to the first data selection circuit (16a). In the meantime, the first memory selection circuit (15a) stores the next four words of data “D4b” to “D8a” in the other access speed difference absorbing memory (14b) as shown in FIG. After the operation starts, when the last data “D4a” of the data for the first four words is supplied to the first data selection circuit (16a), the second memory selection circuit (15b) An operation of reading data from the access speed difference absorbing memory (14a) 32 bits at a time and supplying it to the first data selection circuit (16a) is started.
As described above, the first data selection circuit (16a) is a recording medium control circuit that alternately converts the lower 16-bit data and the upper 16-bit data among the 32-bit data supplied from the second memory selection circuit (15b). The operation supplied to (12) is executed, and the recording medium control circuit (12) writes the supplied data to the recording medium (3) as shown in FIG. 5 (f).
In this way, data “D0b” to “D8a” for 8 words stored after the byte address “SA1” is transferred from the SDRAM (2) to the recording medium (3) and recorded. .

SDRAM(2)から記録媒体(3)へのデータ転送時には、上述の如く、SDRAM(2)から読み出したデータを一旦、データ編成用バッファ(17)及びアクセス速度差吸収用メモリ(14a)(14b)に格納した後に記録媒体(3)に書き込むことによって、SDRAM(2)に対するアクセス速度と記録媒体(3)に対するアクセス速度との差を緩和することが出来る。又、図4(d)乃至(f)に示す如く、一方のアクセス速度差吸収用メモリ(14a)からデータを読み出して記録媒体(3)に書き込む処理と、データ編成用バッファ(17)からデータを読み出して他方のアクセス速度差吸収用メモリ(14b)に書き込む処理とを並列的に実行することによって、記録媒体(3)に対する書込みを連続的に行なうことが出来る。   At the time of data transfer from the SDRAM (2) to the recording medium (3), as described above, the data read from the SDRAM (2) is temporarily stored in the data organization buffer (17) and the access speed difference absorbing memory (14a) (14b). ) And then writing to the recording medium (3), the difference between the access speed to the SDRAM (2) and the access speed to the recording medium (3) can be reduced. Also, as shown in FIGS. 4 (d) to (f), a process of reading data from one access speed difference absorbing memory (14a) and writing it to the recording medium (3) and a data organization buffer (17) , And writing to the other access speed difference absorbing memory (14b) in parallel, the writing to the recording medium (3) can be performed continuously.

図3は、記録媒体(3)に記録されているデータをSDRAM(2)に転送する際のデータ転送経路を表わしている。又、図6(a)は、記録媒体(3)に格納されているデータをバイト単位で表わしており、同図(b)乃至(f)はそれぞれ、SDRAM(2)への書込み開始アドレスがワードアドレスである場合に、アクセス速度差吸収用メモリ(14a)(14b)にデータが格納されるタイミング、データ編成用バッファ(17)にデータが格納されるタイミング、SDRAM(2)にワード単位でデータが格納されるタイミング、及びSDRAM(2)にバイト単位でデータが格納されるタイミングを表わしている。   FIG. 3 shows a data transfer path for transferring data recorded on the recording medium (3) to the SDRAM (2). FIG. 6 (a) shows data stored in the recording medium (3) in units of bytes. FIGS. 6 (b) to (f) show the write start addresses for the SDRAM (2). When it is a word address, the timing at which data is stored in the access speed difference absorbing memory (14a) (14b), the timing at which data is stored in the data organization buffer (17), and the SDRAM (2) in word units The timing at which data is stored and the timing at which data is stored in the SDRAM (2) in byte units are shown.

例えば、図3に示すCPU(4)からDMA制御回路(13)に対して、ワードアドレス“SA0”をSDRAM(2)への書込み開始アドレスとして8ワード分のデータを記録媒体(3)からSDRAM(2)へ転送すべき旨のデータ転送指令が発せられた場合には、DMA制御回路(13)は、記録媒体制御回路(12)にデータ処理指令を出力する。記録媒体制御回路(12)は、該指令を受けて、図6(a)の如く記録媒体(3)に記録されているデータを16ビットずつ読み出して第2データ選択回路(16b)に転送する動作を開始する。第2データ選択回路(16b)は、供給される16ビットのデータを交互に下位データ或いは上位データとして32ビットのデータを作成し、第1メモリ選択回路(15a)に供給する。   For example, from the CPU (4) shown in FIG. 3 to the DMA control circuit (13), the word address “SA0” is used as a write start address to the SDRAM (2), and data for 8 words is transferred from the recording medium (3) to the SDRAM. When a data transfer command for transferring to (2) is issued, the DMA control circuit (13) outputs a data processing command to the recording medium control circuit (12). Upon receiving the command, the recording medium control circuit (12) reads out the data recorded on the recording medium (3) as shown in FIG. 6 (a) 16 bits at a time and transfers it to the second data selection circuit (16b). Start operation. The second data selection circuit (16b) creates 32-bit data by alternately using the supplied 16-bit data as lower data or higher data, and supplies it to the first memory selection circuit (15a).

第1メモリ選択回路(15a)は、同図(c)の如く、第2データ選択回路(16b)からのデータを一方のアクセス速度差吸収用メモリ(14a)に格納する動作を開始し、その後、該メモリ(14a)に4ワード分のデータ“D0a”〜“D3d”が格納されて該メモリ(14a)が満杯となった時点で、第2メモリ選択回路(15b)は、該メモリ(14a)から該データを読み出して第2バッファ書込み領域選択回路(18b)に供給する動作を開始する。   The first memory selection circuit (15a) starts the operation of storing the data from the second data selection circuit (16b) in one access speed difference absorption memory (14a) as shown in FIG. When the data “D0a” to “D3d” for four words are stored in the memory (14a) and the memory (14a) becomes full, the second memory selection circuit (15b) ) To read the data and supply it to the second buffer write area selection circuit (18b).

又、上述の如く一方のアクセス速度差吸収用メモリ(14a)に最初の4ワード分のデータ“D0a”〜“D3d”が格納されて該メモリ(14a)が満杯となった時点で、第1メモリ選択回路(15a)は、同図(b)の如く、次の4ワード分のデータ“D4a”〜“D7d”を32ビットずつ他方のアクセス速度差吸収用メモリ(14b)に格納する動作を開始する。その後、最初の4ワード分のデータ“D0a”〜“D3d”が前記一方のアクセス速度差吸収用メモリ(54a)から読み出されて第2バッファ書込み領域選択回路(18b)に供給された時点で、前記第2メモリ選択回路(15b)は、前記他方のアクセス速度差吸収用メモリ(14b)からデータを32ビットずつ読み出して第2バッファ書込み領域選択回路(18b)に供給する動作を開始する。   As described above, when the first four words of data “D0a” to “D3d” are stored in one access speed difference absorbing memory (14a) and the memory (14a) becomes full, the first The memory selection circuit (15a) operates to store the next four words of data "D4a" to "D7d" in the other access speed difference absorbing memory (14b) by 32 bits as shown in FIG. Start. Thereafter, when the data “D0a” to “D3d” for the first four words are read from the one access speed difference absorbing memory (54a) and supplied to the second buffer write area selection circuit (18b). The second memory selection circuit (15b) starts the operation of reading data from the other access speed difference absorbing memory (14b) by 32 bits and supplying the data to the second buffer write area selection circuit (18b).

第2バッファ書込み領域選択回路(18b)は、図6(c)の如く、データ編成用バッファ(17)から下位側書込み領域BD[31:0]及び上位側書込み領域BD[63:32]を交互に選択して、選択した領域に第2メモリ選択回路(15b)から供給される32ビットのデータを書き込む動作を実行し、前記バッファ(17)に最初の64ビット分のデータ“D0a”〜“D1d”が書き込まれた時点で、第2バッファ読出し領域選択回路(19b)は、前記バッファ(17)の下位側書込み領域及び上位側書込み領域から交互に32ビットのデータを読み出してSDRAM制御回路(11)に供給する動作を開始する。SDRAM制御回路(11)は、同図(e)及び(f)の如く、供給されたデータを32ビットずつSDRAM(2)に格納する。
この様にして、記録媒体(3)に記録されている8ワード分のデータがSDRAM(2)に転送されて前記ワードアドレス“SA0”から格納されることになる。
As shown in FIG. 6C, the second buffer write area selection circuit (18b) assigns the lower side write area BD [31: 0] and the upper side write area BD [63:32] from the data organization buffer (17). By alternately selecting and executing the operation of writing the 32-bit data supplied from the second memory selection circuit (15b) to the selected area, the first 64-bit data “D0a” ˜ At the time when “D1d” is written, the second buffer read area selection circuit (19b) alternately reads 32-bit data from the lower write area and the upper write area of the buffer (17) to read out the SDRAM control circuit. The operation to supply to (11) is started. The SDRAM control circuit (11) stores the supplied data in the SDRAM (2) 32 bits at a time, as shown in FIGS.
In this way, data for 8 words recorded in the recording medium (3) is transferred to the SDRAM (2) and stored from the word address “SA0”.

図7(b)乃至(f)はそれぞれ、SDRAM(2)への書込み開始アドレスがワードアドレスでない場合に、データ編成用バッファ(17)にデータが格納されるタイミング、アクセス速度差吸収用メモリ(14a)(14b)にデータが格納されるタイミング、SDRAM(2)にワード単位でデータが格納されるタイミング、及びSDRAM(2)にバイト単位でデータが格納されるタイミングを表わしている。尚、同図(a)は、図6(a)と同一であって、記録媒体(3)に記録されているデータをバイト単位で表わしている。   FIGS. 7B to 7F respectively show the timing at which data is stored in the data organization buffer 17 when the write start address to the SDRAM 2 is not a word address, and an access speed difference absorbing memory ( 14a) and 14b show the timing at which data is stored, the timing at which data is stored in SDRAM (2) in units of words, and the timing at which data is stored in units of bytes in SDRAM (2). FIG. 6A is the same as FIG. 6A and shows data recorded on the recording medium (3) in units of bytes.

例えば、図3に示すCPU(4)からDMA制御回路(13)に対して、ワードアドレスでないバイトアドレス“SA1”をSDRAM(2)への書込み開始アドレスとして8ワード分のデータを記録媒体(3)からSDRAM(2)へ転送すべき旨のデータ転送指令が発せられた場合には、DMA制御回路(13)は、記録媒体制御回路(12)にデータ処理指令を出力する。記録媒体制御回路(12)は、該指令を受けて、図7(a)の如く記録媒体(3)に記録されているデータを16ビットずつ読み出して第2データ選択回路(16b)に転送する動作を開始する。第2データ選択回路(16b)は、供給される16ビットのデータを交互に下位データ或いは上位データとして32ビットのデータを作成し、第1メモリ選択回路(15a)に供給する。   For example, from the CPU (4) shown in FIG. 3 to the DMA control circuit (13), data of 8 words is stored on the recording medium (3) using the byte address “SA1” which is not a word address as the write start address to the SDRAM (2). ) Is issued to the SDRAM (2), the DMA control circuit (13) outputs a data processing command to the recording medium control circuit (12). In response to the command, the recording medium control circuit (12) reads the data recorded on the recording medium (3) as shown in FIG. 7 (a) 16 bits at a time and transfers it to the second data selection circuit (16b). Start operation. The second data selection circuit (16b) creates 32-bit data by alternately using the supplied 16-bit data as lower data or higher data, and supplies it to the first memory selection circuit (15a).

第1メモリ選択回路(15a)は、図7(c)の如く第2データ選択回路(16b)からのデータを一方のアクセス速度差吸収用メモリ(14a)に格納する動作を開始し、その後、該メモリ(14a)に4ワード分のデータ“D0a”〜“D3d”が格納されて該メモリ(14a)が満杯となった時点で、第2メモリ選択回路(15b)は、該メモリ(14a)から該データを読み出して第2バッファ書込み領域選択回路(18b)に供給する動作を開始する。   The first memory selection circuit (15a) starts the operation of storing the data from the second data selection circuit (16b) in one access speed difference absorption memory (14a) as shown in FIG. When the data “D0a” to “D3d” for four words are stored in the memory (14a) and the memory (14a) becomes full, the second memory selection circuit (15b) The operation of reading the data from the second buffer write area selection circuit (18b) is started.

又、上述の如く一方のアクセス速度差吸収用メモリ(14a)に最初の4ワード分のデータ“D0a”〜“D3d”が格納されて該メモリ(14a)が満杯となった時点で、第1メモリ選択回路(15a)は、同図(b)の如く、次の4ワード分のデータ“D4a”〜“D7d”を32ビットずつ他方のアクセス速度差吸収用メモリ(14b)に格納する動作を開始する。その後、最初の4ワード分のデータ“D0a”〜“D3d”が前記一方のアクセス速度差吸収用メモリ(54a)から読み出されて第2バッファ書込み領域選択回路(18b)に供給された時点で、前記第2メモリ選択回路(15b)は、前記他方のアクセス速度差吸収用メモリ(14b)からデータを32ビットずつ読み出して第2バッファ書込み領域選択回路(18b)に供給する動作を開始する。   As described above, when the first four words of data “D0a” to “D3d” are stored in one access speed difference absorbing memory (14a) and the memory (14a) becomes full, the first The memory selection circuit (15a) operates to store the next four words of data "D4a" to "D7d" in the other access speed difference absorbing memory (14b) by 32 bits as shown in FIG. Start. Thereafter, when the data “D0a” to “D3d” for the first four words are read from the one access speed difference absorbing memory (54a) and supplied to the second buffer write area selection circuit (18b). The second memory selection circuit (15b) starts the operation of reading data from the other access speed difference absorbing memory (14b) by 32 bits and supplying the data to the second buffer write area selection circuit (18b).

第2バッファ書込み領域選択回路(18b)は、同図(d)の如く、データ編成用バッファ(17)から下位側書込み領域BD[31:0]及び上位側書込み領域BD[63:32]を交互に選択して、選択した領域に第2メモリ選択回路(15b)から供給される32ビットのデータを書き込む動作を実行し、前記バッファ(17)に最初の64ビット分のデータ“D0a”〜“D1d”が書き込まれた時点で、第2バッファ読出し領域選択回路(19b)は、前記バッファ(17)からデータを32ビットずつ読み出してSDRAM制御回路(11)に供給する動作を開始する。このとき、データ編成用バッファ(17)の書込み領域は、SDRAM(2)への書込み開始アドレス“SA1”に応じて32ビット幅の第1書込み領域BD[23:0]BD[63:56]と第2書込み領域BD[55:24]とに分割され、これらの第1書込み領域及び第2書込み領域から交互にデータが読み出されてSDRAM制御回路(11)に供給される。これによって、SDRAM制御回路(11)には、第1番目のデータブロックとして、24ビットのデータ“D0a”〜“D0c”が供給され、その後、データ“D0d”以降のデータが32ビットずつ供給されることになる。SDRAM制御回路(11)は、同図(e)及び(f)の如く、供給されたデータをSDRAM(2)に格納する。
この様にして、記録媒体(3)に記録されている8ワード分のデータがSDRAM(2)に転送されて前記バイトアドレス“SA1”から格納されることになる。
The second buffer write area selection circuit (18b), as shown in (d) of FIG. 5, selects the lower side write area BD [31: 0] and the upper side write area BD [63:32] from the data organization buffer (17). By alternately selecting and executing the operation of writing the 32-bit data supplied from the second memory selection circuit (15b) to the selected area, the first 64-bit data “D0a” ˜ When "D1d" is written, the second buffer read area selection circuit (19b) starts an operation of reading data from the buffer (17) 32 bits at a time and supplying it to the SDRAM control circuit (11). At this time, the write area of the data organization buffer (17) is the first write area BD [23: 0] BD [63:56] having a 32-bit width in accordance with the write start address “SA1” to the SDRAM (2). And the second write area BD [55:24], and data are alternately read from the first write area and the second write area and supplied to the SDRAM control circuit (11). As a result, the 24-bit data “D0a” to “D0c” are supplied to the SDRAM control circuit (11) as the first data block, and then the data after the data “D0d” is supplied 32 bits at a time. Will be. The SDRAM control circuit (11) stores the supplied data in the SDRAM (2) as shown in FIGS.
In this way, data for 8 words recorded on the recording medium (3) is transferred to the SDRAM (2) and stored from the byte address “SA1”.

上述の如く、記録媒体(3)からSDRAM(2)へのデータ転送時には、記録媒体(3)から読み出したデータを一旦、アクセス速度差吸収用メモリ(14a)(14b)及びデータ編成用バッファ(17)に格納した後にSDRAM(2)に書き込むことによって、SDRAM(2)に対するアクセス速度と記録媒体(3)に対するアクセス速度との差を緩和することが出来る。又、図6(b)乃至(d)に示す如く、一方のアクセス速度差吸収用メモリ(14a)からデータを読み出してデータ編成用バッファ(17)に格納する処理と、記録媒体(3)からデータを読み出して他方のアクセス速度差吸収用メモリ(14b)に書き込む処理とを並列的に実行することによって、データ編成用バッファ(17)に対する格納処理を連続的に行なうことが出来る。   As described above, when data is transferred from the recording medium (3) to the SDRAM (2), the data read from the recording medium (3) is temporarily stored in the access speed difference absorbing memories (14a) (14b) and the data organization buffer ( By writing to the SDRAM (2) after storing in 17), the difference between the access speed to the SDRAM (2) and the access speed to the recording medium (3) can be reduced. Further, as shown in FIGS. 6B to 6D, a process of reading data from one access speed difference absorbing memory (14a) and storing it in the data organization buffer (17), and a recording medium (3) By executing the process of reading data and writing to the other access speed difference absorbing memory (14b) in parallel, the storage process to the data organization buffer (17) can be performed continuously.

上記本発明に係るデジタルカメラにおいては、DMAコントローラ(1)は、CPU(4)からのデータ転送指令に含まれる読出し開始アドレスがワードアドレスでない場合であっても、SDRAM(2)の該読出し開始アドレス以降に書き込まれているデータを記録媒体(3)に転送して記録することが出来るので、CPU(4)は、上述の如くDMA起動プログラムをフェッチして実行すればよく、データ読出しプログラムをフェッチする処理及びデータシフト・書込みプログラムをフェッチする処理は不要である。従って、読出し開始アドレスがワードアドレスである場合と同程度の短い時間でSDRAM(2)から記録媒体(3)へのデータ転送を行なうことが出来る。
又、DMAコントローラ(1)は、CPU(4)からのデータ転送指令に含まれる書込み開始アドレスがワードアドレスでない場合であっても、記録媒体(3)に記録されているデータをSDRAM(2)の該書込み開始アドレス以降に格納することが出来るので、CPU(4)はDMA起動プログラムをフェッチして実行すればよく、書込み開始アドレスがワードアドレスである場合と同程度の短い時間で記録媒体(3)からSDRAM(2)へのデータ転送を行なうことが出来る。
In the digital camera according to the present invention, the DMA controller (1) starts the reading of the SDRAM (2) even when the reading start address included in the data transfer command from the CPU (4) is not a word address. Since data written after the address can be transferred and recorded on the recording medium (3), the CPU (4) may fetch and execute the DMA start program as described above, and the data read program can be executed. The process of fetching and the process of fetching the data shift / write program are unnecessary. Therefore, data transfer from the SDRAM (2) to the recording medium (3) can be performed in a time as short as when the read start address is a word address.
Further, the DMA controller (1) transfers the data recorded on the recording medium (3) to the SDRAM (2) even when the write start address included in the data transfer command from the CPU (4) is not a word address. Therefore, the CPU (4) only needs to fetch and execute the DMA start program, and the recording medium (in the same time as the case where the write start address is a word address) can be stored. Data transfer from 3) to SDRAM (2) can be performed.

尚、本発明の各部構成は上記実施の形態に限らず、特許請求の範囲に記載の技術的範囲内で種々の変形が可能である。
例えば、SDRAMに限らず、その他の種々のメモリを採用することが可能である。
又、本発明は、デジタルカメラに限らず、その他の種々の電子機器に実施することが可能である。
In addition, each part structure of this invention is not restricted to the said embodiment, A various deformation | transformation is possible within the technical scope as described in a claim.
For example, it is possible to employ not only SDRAM but also various other memories.
The present invention is not limited to a digital camera and can be implemented in various other electronic devices.

本発明を実施したデジタルカメラの構成を表わすブロック図である。It is a block diagram showing the structure of the digital camera which implemented this invention. SDRAMに格納されているデータを記録媒体に転送する際のデータ転送経路を表わすブロック図である。It is a block diagram showing the data transfer path | route at the time of transferring the data stored in SDRAM to a recording medium. 記録媒体に記録されているデータをSDRAMに転送する際のデータ転送経路を表わすブロック図である。It is a block diagram showing the data transfer path | route at the time of transferring the data currently recorded on the recording medium to SDRAM. SDRAMからの読出し開始アドレスがワードアドレスである場合のデータ読出し及び書込みのタイミングを表わす図である。It is a figure showing the timing of data reading and writing when the read start address from the SDRAM is a word address. SDRAMからの読出し開始アドレスがワードアドレスでない場合のデータ読出し及び書込みのタイミングを表わす図である。It is a figure showing the timing of data reading and writing when the read start address from the SDRAM is not a word address. SDRAMへの書込み開始アドレスがワードアドレスである場合のデータ読出し及び書込みのタイミングを表わす図である。It is a figure showing the timing of data reading and writing when the write start address to SDRAM is a word address. SDRAMへの書込み開始アドレスがワードアドレスでない場合のデータ読出し及び書込みのタイミングを表わす図である。It is a figure showing the timing of data reading and writing when the write start address to SDRAM is not a word address. 従来のデジタルカメラの構成を表わすブロック図である。It is a block diagram showing the structure of the conventional digital camera. SDRAMに格納されているデータを記録媒体に転送する際のデータ読出し及び書込みのタイミングを表わす図である。It is a figure showing the timing of the data reading and writing at the time of transferring the data stored in SDRAM to a recording medium. 記録媒体に記録されているデータをSDRAMに転送する際のデータ読出し及び書込みのタイミングを表わす図である。It is a figure showing the timing of the data reading and writing at the time of transferring the data currently recorded on the recording medium to SDRAM. CPUが各種プログラムを起動するタイミングと、SDRAM及びメモリに格納されているデータを表わす図である。It is a figure showing the timing which CPU starts various programs, and the data stored in SDRAM and memory.

符号の説明Explanation of symbols

(1) DMAコントローラ
(11) SDRAM制御回路
(12) 記録媒体制御回路
(13) DMA制御回路
(17) データ編成用バッファ
(18a) 第1バッファ書込み領域選択回路
(18b) 第2バッファ書込み領域選択回路
(19a) 第1バッファ読出し領域選択回路
(19b) 第2バッファ読出し領域選択回路
(2) SDRAM
(3) 記録媒体
(4) CPU
(1) DMA controller
(11) SDRAM control circuit
(12) Recording medium control circuit
(13) DMA control circuit
(17) Data organization buffer
(18a) First buffer write area selection circuit
(18b) Second buffer write area selection circuit
(19a) First buffer read area selection circuit
(19b) Second buffer read area selection circuit
(2) SDRAM
(3) Recording medium
(4) CPU

Claims (6)

2つのメモリ間に介在して、外部からデータ転送指令を受けて両メモリ間でデータの転送を行なうものであって、複数バイトのデータからなる1ワード毎に付与されているワードアドレスを用いて一方のメモリにアクセスすることが可能なメモリ制御装置において、
前記一方のメモリから読み出されたデータを一時的に格納するためのデータ編成用バッファ手段と、
外部から前記一方のメモリからの読出し開始アドレスを含むデータ転送指令を受けたとき、該読出し開始アドレスから、該一方のメモリの該読出し開始アドレスに格納されているデータを含むワードのワードアドレスを導出するアドレス導出手段と、
前記一方のメモリの前記ワードアドレスからデータの読出しを開始し、読み出したデータを前記データ編成用バッファ手段に格納する第1データ処理手段と、
前記データ編成用バッファ手段から、前記一方のメモリの前記読出し開始アドレス以降に格納されているデータを読み出して他方のメモリに書き込む第2データ処理手段
とを具えていることを特徴とするメモリ制御装置。
Intervening between two memories and receiving data transfer commands from the outside to transfer data between both memories, using a word address assigned to each word consisting of a plurality of bytes of data In a memory control device capable of accessing one memory,
Data organization buffer means for temporarily storing data read from said one memory;
When a data transfer command including a read start address from the one memory is received from the outside, a word address of a word including data stored in the read start address of the one memory is derived from the read start address. Address deriving means to perform,
First data processing means for starting reading data from the word address of the one memory and storing the read data in the data organization buffer means;
A memory control device comprising: second data processing means for reading data stored after the read start address of the one memory from the data organization buffer means and writing the data to the other memory .
前記アドレス導出手段は、データ転送指令に含まれる読出し開始アドレスがワードアドレスでない場合にワードアドレス導出動作を行ない、前記第1データ処理手段は、前記読出し開始アドレスがワードアドレスでない場合に、導出されたワードアドレスからデータの読出しを開始する一方、前記読出し開始アドレスがワードアドレスである場合には、該読出し開始アドレスからデータの読出しを開始する請求項1に記載のメモリ制御装置。   The address deriving means performs a word address deriving operation when the read start address included in the data transfer command is not a word address, and the first data processing means is derived when the read start address is not a word address. The memory control device according to claim 1, wherein reading of data starts from a word address while reading of data starts from the reading start address when the reading start address is a word address. 外部から前記一方のメモリへの書込み開始アドレスを含むデータ転送指令を受けて前記他方のメモリから該一方のメモリへデータの転送を行なうものであって、
前記他方のメモリからデータを読み出して前記データ編成用バッファ手段に格納する第3データ処理手段と、
前記データ編成用バッファ手段から、前記データ転送指令に含まれる書込み開始アドレスに応じたバイト数のデータを読み出して、前記一方のメモリの該書込み開始アドレス以降に書き込む第4データ処理手段
とを具えている請求項1又は請求項2に記載のメモリ制御装置。
Receiving a data transfer command including a write start address to the one memory from the outside, and transferring data from the other memory to the one memory,
Third data processing means for reading data from the other memory and storing it in the data organization buffer means;
Fourth data processing means for reading out data of the number of bytes corresponding to the write start address included in the data transfer command from the data organization buffer means and writing the data after the write start address of the one memory. The memory control device according to claim 1 or 2.
前記データ編成用バッファ手段から読み出したデータを一時的に格納するための2つのアクセス速度差吸収用メモリ手段を具え、前記第2データ処理手段は、前記データ編成用バッファ手段から読み出したデータを2つのアクセス速度差吸収用メモリ手段に交互に書き込むと共に、該2つのアクセス速度差吸収用メモリ手段から交互にデータを読み出して前記他方のメモリに書き込むものであって、一方のアクセス速度差吸収用メモリ手段からデータを読み出して前記他方のメモリに書き込む動作と、前記データ編成用バッファ手段からデータを読み出して他方のアクセス速度差吸収用メモリ手段に書き込む動作とを同時に実行する請求項1乃至請求項3の何れかに記載のメモリ制御装置。   Two access speed difference absorbing memory means for temporarily storing the data read from the data organization buffer means are provided, and the second data processing means stores the data read from the data organization buffer means as 2 Alternately writing to one access speed difference absorbing memory means, and alternately reading data from the two access speed difference absorbing memory means and writing to the other memory, one access speed difference absorbing memory 4. An operation of reading data from the means and writing it to the other memory and an operation of reading data from the data organization buffer means and writing to the other access speed difference absorbing memory means are simultaneously executed. The memory control device according to any one of the above. 前記第3データ処理手段は、前記他方のメモリから読み出したデータを前記2つのアクセス速度差吸収用メモリ手段に交互に書き込むと共に、該2つのアクセス速度差吸収用メモリ手段から交互にデータを読み出して前記データ編成用バッファ手段に格納するものであって、一方のアクセス速度差吸収用メモリ手段からデータを読み出して前記データ編成用バッファ手段に格納する動作と、前記他方のメモリからデータを読み出して他方のアクセス速度差吸収用メモリ手段に書き込む動作とを同時に実行する請求項4に記載のメモリ制御装置。   The third data processing means alternately writes the data read from the other memory to the two access speed difference absorbing memory means, and alternately reads the data from the two access speed difference absorbing memory means. Storing data in the data organization buffer means, reading data from one access speed difference absorbing memory means and storing it in the data organization buffer means, and reading data from the other memory and the other 5. The memory control device according to claim 4, wherein the write operation to the access speed difference absorbing memory means is simultaneously executed. 2つのメモリと、該2つのメモリ間に介在し外部からデータ転送指令を受けて両メモリ間でデータの転送を行なうメモリ制御装置と、該メモリ制御装置に対してデータ転送指令を発する情報処理装置とを具えた電子機器において、該情報処理装置は、
一方のメモリからの読出し開始アドレスを含むデータ転送指令を前記メモリ制御装置に出力する手段
を具え、前記メモリ制御装置は、複数バイトのデータからなる1ワード毎に付与されているワードアドレスを用いて前記一方のメモリにアクセスすることが可能であって、
前記一方のメモリから読み出されたデータを一時的に格納するためのデータ編成用バッファ手段と、
前記情報処理装置からデータ転送指令を受けたとき、該指令に含まれる読出し開始アドレスから、前記一方のメモリの該読出し開始アドレスに格納されているデータを含むワードのワードアドレスを導出するアドレス導出手段と、
前記一方のメモリの前記ワードアドレスからデータの読出しを開始し、読み出したデータを前記データ編成用バッファ手段に格納する第1データ処理手段と、
前記データ編成用バッファ手段から、前記一方のメモリの前記読出し開始アドレス以降に格納されているデータを読み出して他方のメモリに書き込む第2データ処理手段
とを具えていることを特徴とする電子機器。
Two memories, a memory control device that is interposed between the two memories and receives a data transfer command from the outside and transfers data between the two memories, and an information processing device that issues a data transfer command to the memory control device In the electronic apparatus comprising:
Means for outputting a data transfer command including a read start address from one memory to the memory control device, wherein the memory control device uses a word address assigned to each word consisting of a plurality of bytes of data. It is possible to access said one memory,
Data organization buffer means for temporarily storing data read from said one memory;
Address deriving means for deriving a word address of a word including data stored in the read start address of the one memory from a read start address included in the command when receiving a data transfer command from the information processing apparatus When,
First data processing means for starting reading data from the word address of the one memory and storing the read data in the data organization buffer means;
Electronic equipment comprising: second data processing means for reading data stored after the read start address of the one memory from the data organization buffer means and writing it to the other memory.
JP2004228591A 2004-08-04 2004-08-04 Memory controller and electronic device therewith Pending JP2006048378A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004228591A JP2006048378A (en) 2004-08-04 2004-08-04 Memory controller and electronic device therewith

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004228591A JP2006048378A (en) 2004-08-04 2004-08-04 Memory controller and electronic device therewith

Publications (1)

Publication Number Publication Date
JP2006048378A true JP2006048378A (en) 2006-02-16

Family

ID=36026854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004228591A Pending JP2006048378A (en) 2004-08-04 2004-08-04 Memory controller and electronic device therewith

Country Status (1)

Country Link
JP (1) JP2006048378A (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241243A (en) * 1996-02-13 1996-09-17 Hitachi Ltd Image processing processor
JPH09311815A (en) * 1995-12-13 1997-12-02 Samsung Electron Co Ltd Buffer memory controller
JP2000242544A (en) * 1999-02-25 2000-09-08 Fuji Xerox Co Ltd Memory controller and direct memory access controller
JP2000251470A (en) * 1999-03-01 2000-09-14 Hitachi Ltd Semiconductor integrated circuit
JP2000357150A (en) * 1999-06-16 2000-12-26 Sony Computer Entertainment Inc Device, system, and method for data transfer

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09311815A (en) * 1995-12-13 1997-12-02 Samsung Electron Co Ltd Buffer memory controller
JPH08241243A (en) * 1996-02-13 1996-09-17 Hitachi Ltd Image processing processor
JP2000242544A (en) * 1999-02-25 2000-09-08 Fuji Xerox Co Ltd Memory controller and direct memory access controller
JP2000251470A (en) * 1999-03-01 2000-09-14 Hitachi Ltd Semiconductor integrated circuit
JP2000357150A (en) * 1999-06-16 2000-12-26 Sony Computer Entertainment Inc Device, system, and method for data transfer

Similar Documents

Publication Publication Date Title
JPS58139241A (en) Picture memory access system
JP5194703B2 (en) Data processing apparatus and shared memory access method
WO2003007303A2 (en) Memory device having different burst order addressing for read and write operations
JP2010146084A (en) Data processor including cache memory control section
JP2005267148A (en) Memory controller
JP4748641B2 (en) Information processing system
JP5191193B2 (en) Image display drive device
US20100030978A1 (en) Memory controller, memory control method, and image processing device
US7581072B2 (en) Method and device for data buffering
JP2006048378A (en) Memory controller and electronic device therewith
US20050174857A1 (en) Nonvolatile memory controlling method and nonvolatile memory controlling apparatus
JP4071930B2 (en) Synchronous DRAM
JP2006109224A (en) Imaging device
JP2007164355A (en) Nonvolatile memory device, data reading method thereof, and data writing method thereof
JP2007172254A (en) Memory control circuit
JP5475859B2 (en) Image display drive device
JP4930825B2 (en) Imaging device and data transfer device
JP4888860B2 (en) Memory device
JP2006146817A (en) Memory control system and memory control device
JP3204297B2 (en) DMA transfer control device
JP2002091823A (en) Memory controller to be used for image display device
JP2016154031A (en) Solid state drive (ssd) device
JP2002157163A (en) Image processing apparatus and image processing method
US20090089541A1 (en) Multiprocessing device and information processing device
US20050140799A1 (en) Memory access control unit and network camera apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20070719

Free format text: JAPANESE INTERMEDIATE CODE: A621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100323

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100520

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110208

RD03 Notification of appointment of power of attorney

Effective date: 20110328

Free format text: JAPANESE INTERMEDIATE CODE: A7423