WO2009081551A1 - メモリ装置及びその制御方法 - Google Patents

メモリ装置及びその制御方法 Download PDF

Info

Publication number
WO2009081551A1
WO2009081551A1 PCT/JP2008/003832 JP2008003832W WO2009081551A1 WO 2009081551 A1 WO2009081551 A1 WO 2009081551A1 JP 2008003832 W JP2008003832 W JP 2008003832W WO 2009081551 A1 WO2009081551 A1 WO 2009081551A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
slot
address
bus
read
Prior art date
Application number
PCT/JP2008/003832
Other languages
English (en)
French (fr)
Inventor
Takashi Yamada
Daisuke Imoto
Original Assignee
Panasonic Corporation
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 Panasonic Corporation filed Critical Panasonic Corporation
Priority to CN2008801221216A priority Critical patent/CN101903868B/zh
Priority to JP2009527380A priority patent/JP5204777B2/ja
Priority to US12/808,868 priority patent/US8347026B2/en
Priority to EP08865074A priority patent/EP2226727A1/en
Publication of WO2009081551A1 publication Critical patent/WO2009081551A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/18Address timing or clocking circuits; Address control signal generation or management, e.g. for row address strobe [RAS] or column address strobe [CAS] signals

Definitions

  • the present invention relates to a memory device and a control method thereof, and more particularly to a memory device capable of reading and writing data.
  • a large-capacity and low-cost DRAM is used to store a large amount of data.
  • recent image processing apparatuses include MPEG2 and H.264.
  • HD High Definition
  • bank interleave control is usually performed in DRAM access control.
  • the bank interleave control is a control for executing activation processing and precharge processing of another bank during execution of data transfer to a specific bank.
  • the inaccessible period is concealed, and apparently data transfer is always possible on the data bus.
  • this bank interleave control In order for this bank interleave control to function effectively, the data transfer time of another bank needs to exceed the inaccessible period for a certain bank.
  • Patent Document 1 There is a method described in Patent Document 1 as a conventional method for solving this problem.
  • a plurality of memory devices that constitute one logical address space are accessed using individual address buses.
  • the access efficiency seen from the data bus width of the entire plurality of memory devices is improved.
  • the address bus is individually controlled for each memory device, so that the minimum accessible unit can be reduced as compared with a case where a single address bus is shared.
  • the method described in Patent Document 1 can reduce unnecessary data with respect to the data bus width of the entire memory devices. Therefore, the technique described in Patent Document 1 can suppress a decrease in access efficiency even in a system in which accesses with a small transfer size occur frequently.
  • the minimum access unit of DRAM is “bus width ⁇ minimum burst number”. While the minimum burst number of SDRAM is 1, the minimum burst number of the high-speed DRAM described above is defined as 2 for DDR, 4 for DDR2, and 8 for DDR3. Therefore, there is a problem that the minimum access unit increases even when a high-speed DRAM is used, as in the case where the bus width is increased.
  • the minimum access unit indicates the minimum data transfer amount that is always transferred for one access. Every access request is transferred in integer multiples of the minimum access unit. Therefore, by increasing the minimum access unit, a lot of useless transfer is performed for an access with a small transfer amount and an arbitrary and non-continuous access often used for image processing. As a result, the effective transfer efficiency decreases.
  • the minimum access unit that gets worse with an increase in the minimum burst number can be improved.
  • the use of a plurality of memory devices causes another problem that the cost increases.
  • An object of the present invention is to solve the above-described problems, and to provide a memory device that can realize high access efficiency and suppress an increase in cost.
  • a memory device is a memory device capable of reading and writing data of a first size, and holds N (N: integer greater than or equal to 2) addresses.
  • N integer greater than or equal to 2 addresses.
  • An output data bus and an input data bus of the first size bus width including a plurality of second slots which are partial buses of the bus width, and the N memory modules Among the data read through the bus, two or more first slot data included in the N read buses are selected, and the selected data is stored in the second slot included in the output data bus.
  • the memory device according to the present invention can access data at a plurality of completely different addresses with one input / output without changing the transfer size of read data and the transfer size of write data.
  • the memory device according to the present invention can reduce the minimum access unit of data, thereby realizing high access efficiency.
  • the memory device according to the present invention can realize high access efficiency without increasing the number of memory devices to be mounted as compared with the conventional memory device. That is, the memory device according to the present invention can realize high access efficiency and can suppress an increase in cost.
  • the memory device further includes a slot address processing unit that obtains a slot address indicating a one-to-one correspondence between the position of the first slot and the position of the second slot, and the read data processing unit includes: The data of the first slot at the position indicated by the slot address is selected from the plurality of first slots included in the N read buses, and the selected data corresponds to the position of the first slot.
  • the write data processing unit outputs the data of the second slot included in the input data bus at the position corresponding to the position of the second slot indicated by the slot address. You may output to 1 slot.
  • the memory device can rearrange the external slot and the internal slot in any combination according to the slot address.
  • the slot address includes a second slot address that specifies the position of each of the plurality of second slots, and a first slot address that specifies the position of the first slot corresponding to each of the second slot addresses.
  • the first slot address designates a first address designating one of the N read buses and a write bus, and designates a position of the first slot included in each of the N read buses and the write bus.
  • the read data processing unit selects the data of the first slot included in the read bus specified by the first address and specified by the second address, and the selected data Is specified by the second slot address corresponding to the first slot address including the first address and the second address.
  • the write data processing unit includes the data in the second slot at the position specified by the second slot address in the first slot address corresponding to the second slot address. In the write bus specified by the first address, the data may be output to the first slot at the position specified by the second address included in the first slot address.
  • the memory device can access data at a desired address of a desired memory module according to the slot address.
  • the write data processing unit gives a flag instructing not to write the data of the first slot to the memory module in a first slot other than the first slot that outputs the data of the second slot. May be.
  • the memory device can prohibit writing to an address where data that does not need to be changed is stored.
  • the write data processing unit sets the data in the second slot at the position specified by the second slot address to the first slot address corresponding to the second slot address in all of the N write buses.
  • the first slot specified by the second address corresponding to the first address is output to the first slot at the position specified by the second address included, and for each write bus specified by the first address.
  • a flag indicating that the data of the first slot should not be written to the memory module may be assigned to the first slot other than.
  • the memory device can incorporate the external slot into the internal slot by an easy process of providing a mask.
  • first size and the second size may be the same.
  • each of the read buses and each of the write buses may include N first slots, and each of the output data bus and input data bus may include N second slots.
  • the memory device further receives a plurality of commands within one cycle of a signal based on a synchronization signal supplied from the outside, and the received commands are assigned to the addresses of the N memory modules and the slot addresses.
  • a command interface for conversion wherein the address holding unit holds N addresses converted by the command interface, and the slot address processing unit obtains a slot address converted by the command interface .
  • This configuration can suppress an increase in the external clock frequency or external command bus width.
  • the command interface may receive N commands in one cycle of the signal based on the synchronization signal.
  • the memory device can receive commands for all the memory modules in one cycle of the signal based on the synchronization signal.
  • the memory device further converts write data supplied to an external data bus from the bus width of the external data bus to the first size, outputs the converted write data to the input data bus, and outputs the output
  • a data input / output interface is provided for converting read data of the first size of the data bus into the bus width of the external data bus and outputting the converted read data to the external data bus, and the data input / output interface is supplied from the outside
  • the signal based on the synchronized signal a plurality of data of the bus width of the external data bus supplied to the external data bus are received, and in one cycle of the signal based on the synchronized signal supplied from the outside
  • the plurality of read data converted to the bus width of the external data bus are output to the external data bus It may be.
  • This configuration can suppress an increase in the external clock frequency or the external data bus width.
  • the memory device includes the N memory modules, the N read buses, the N write buses, the address holding unit, the read data processing unit, the write data processing unit, the output data bus, A plurality of group memory modules each including the input data bus and a slot address processing unit; and a command interface for converting an externally supplied command into the addresses of the plurality of group memory modules and the slot address,
  • the address holding unit of each group memory module holds an address converted by the command interface, and the slot address processing unit of each group memory module has a slot address converted by the command interface. Scan may be acquired.
  • the memory device can improve the efficiency of the data bus.
  • the command interface may receive a plurality of the commands within one cycle of a signal based on a synchronization signal supplied from the outside.
  • This configuration can suppress an increase in the external clock frequency or external command bus width.
  • the command interface may receive the commands for the number of the plurality of group memories within one cycle of a signal based on the synchronization signal.
  • the memory device can receive commands for all the group memory modules in one cycle of the signal based on the synchronization signal.
  • the memory device further converts write data supplied to an external data bus from the bus width of the external data bus to the first size, and converts the converted write data to the input data of the plurality of group memory modules.
  • Data input / output that outputs to the bus, converts the read data of the first size of the output data bus of the plurality of group memory modules to the bus width of the external data bus, and outputs the converted read data to the external data bus
  • the data input / output interface receives a plurality of data having a bus width of the external data bus supplied to the external data bus within one cycle of a signal based on a synchronization signal supplied from the outside; Within one cycle of the signal based on the synchronization signal supplied from the external data Scan a plurality of the read data converted to the bus width of the may be output to the external data bus.
  • This configuration can suppress an increase in the external clock frequency or the external data bus width.
  • the memory device further corresponds to each of the plurality of group memory modules, converts write data supplied to an external data bus from the bus width of the external data bus to the first size, and converts the converted write data Is output to the input data bus of the corresponding group memory module, the read data of the first size of the output data bus of the corresponding group memory module is converted into the bus width of the external data bus, and the converted read data Are output to the external data bus, and the plurality of data input / output interfaces are supplied to the external data bus within one cycle of a signal based on a synchronization signal supplied from the outside. Receive a plurality of bus width data of the external data bus and From within one cycle of the signal based on the synchronizing signal supplied, a plurality of the read data converted to a bus width of the external data bus may be output to the external data bus.
  • a method for controlling a memory device capable of reading and writing data of a first size wherein the memory device includes an address holding unit that holds N (N: an integer of 2 or more) addresses, and a third Data is stored for each address and N read buses and N write buses of a second size bus width including a plurality of first slots, which are partial buses of a size bus width, and held in the address holding unit.
  • N addresses respectively designated by N addresses, N memory modules connected to the N read buses and the N write buses one-to-one, and a partial bus width of the third size
  • An output data bus and an input data bus each having a bus width of the first size including a plurality of second slots, which are buses, from the N memory modules via the N read buses.
  • the read data select two or more first slot data included in the N read buses, output the selected data to the second slot included in the output data bus, and
  • the data of the plurality of second slots included in the input data bus is output to any one of the first slots included in the N write buses, thereby writing to the N memory modules.
  • the control method according to the present invention can access data at a plurality of completely different addresses with one input / output without changing the transfer size of read data and the transfer size of write data.
  • the control method according to the present invention can reduce the minimum access unit of data, thereby realizing high access efficiency.
  • the control according to the present invention can realize high access efficiency without increasing the number of memory devices to be mounted as compared with the conventional memory device. That is, the control method according to the present invention can realize high access efficiency and can suppress an increase in cost.
  • the present invention can be realized not only as such a memory device, but also as a memory device control method using characteristic means included in the memory device as a step, and such characteristic steps in a computer. It can also be realized as a program to be executed. Needless to say, such a program can be distributed via a recording medium such as a CD-ROM and a transmission medium such as the Internet.
  • the present invention can provide a memory device that can realize high access efficiency and suppress an increase in cost.
  • FIG. 1 is a block diagram showing a configuration of a memory device according to Embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing an operation of the read data processing unit according to the first embodiment of the present invention.
  • FIG. 3 is a diagram showing an operation of the write data processing unit according to the first embodiment of the present invention.
  • FIG. 4 is a diagram showing a data read operation of the group memory module according to the first embodiment of the present invention.
  • FIG. 5 is a diagram showing a data write operation of the group memory module according to Embodiment 1 of the present invention.
  • FIG. 6 is a diagram showing a continuous data read operation of the group memory module according to the first embodiment of the present invention.
  • FIG. 1 is a block diagram showing a configuration of a memory device according to Embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing an operation of the read data processing unit according to the first embodiment of the present invention.
  • FIG. 3 is a diagram showing an operation of the write data processing
  • FIG. 7 is a block diagram showing a configuration of the memory device according to Embodiment 2 of the present invention.
  • FIG. 8 is a diagram showing a data read operation of the group memory module according to the second embodiment of the present invention.
  • FIG. 9A is a diagram showing a command reception operation by the command interface according to Embodiment 2 of the present invention.
  • FIG. 9B is a diagram showing a command receiving operation by the command interface according to Embodiment 2 of the present invention.
  • FIG. 10A is a diagram showing a data input / output operation by the data input / output interface according to the second embodiment of the present invention.
  • FIG. 10B is a diagram showing a data input / output operation by the data input / output interface according to Embodiment 2 of the present invention.
  • FIG. 11 is a diagram showing the minimum access granularity, internal clock frequency, and the like of the memory device according to the second embodiment of the present invention.
  • FIG. 12 is a block diagram showing a configuration of a modification of the memory device according to Embodiment 2 of the present invention.
  • Memory device 100 100A, 100B Group memory module 101 Address processing unit 102 Data input / output unit 110 Row address processing unit 120 Column address processing unit 130 Slot address processing unit 140 Write data processing unit 150 Read data processing unit 160 160A, 160B, 260 Data input / output interface 161, 162 External data bus 170, 270 Command interface 171, 271 Command receiving unit 172, 272 Command conversion issuing unit 173 External command bus 174, 174A, 174B, 177, 177A, 177B, 177C, 177D Column address 175, 175A, 175B, 178, 178A, 178B, 178C, 178D Row address 176, 176A, 176B Slot address 180, 180A, 180B, 180C, 180D Memory module 181 Memory cell 182 Column decoder 183 Row decoder 185, 185A, 185B, 185C, 185D Internal memory read bus 186, 186A, 186B, 186C, 186D Internal memory write bus 187 ,
  • the memory device includes a plurality of memory modules and simultaneously accesses the plurality of memory modules. Furthermore, when writing data, the memory device according to Embodiment 1 of the present invention divides externally input write data into a plurality of slots, and writes the data incorporating the slots into each memory module. In addition, the memory device according to the first embodiment of the present invention divides data read from each memory module into a plurality of slots when reading data, and reads the read data that combines the designated slots among the divided slots. Output. Thereby, the memory device according to the first embodiment of the present invention can realize high access efficiency and can suppress an increase in cost.
  • FIG. 1 is a block diagram showing the configuration of the memory device of the present invention.
  • the memory device 10 shown in FIG. 1 is a memory device capable of reading and writing data in units of m bits.
  • the memory device 10 stores m-bit write data input to the external data bus 161 in accordance with the external command input to the external command bus 173.
  • the memory device 10 outputs the held data to the external data bus 161 as m-bit read data in accordance with the external command input to the external command bus 173.
  • the memory device 10 includes a group memory module 100, a data input / output interface 160, and a command interface 170.
  • the memory device 10 is configured by one or a plurality of semiconductor integrated circuits.
  • the group memory module 100 includes an address processing unit 101, a data input / output unit 102, four memory modules 180A to 180D, internal memory read buses 185A to 185D, internal memory write buses 186A to 186D, and an output data bus. 187 and an input data bus 188.
  • the memory modules 180A to 180D will be referred to as memory modules 180 unless otherwise distinguished.
  • the internal memory read buses 185A to 185D are referred to as internal memory read bus 185 unless otherwise distinguished.
  • the internal memory write buses 186A to 186D are not particularly distinguished, they are referred to as an internal memory write bus 186.
  • the command interface 170 includes a command receiving unit 171 and a command conversion issuing unit 172.
  • the command receiving unit 171 receives an external command supplied to the external command bus 173.
  • the external command is a command for instructing the operation of the memory device 10.
  • the external command includes an external address, information designating reading or writing, and a signal for controlling operation timing.
  • the command receiving unit 171 receives four external commands for each memory module 180 for one access in the group memory module 100.
  • the command conversion issuing unit 172 converts the external address included in the external command received by the command receiving unit 171 into a column address 174, a row address 175, and a slot address 176, which are internal addresses of the memory device 10.
  • the command conversion issuing unit 172 outputs the column address 174 to the column address processing unit 120, outputs the row address 175 to the row address processing unit 110, and outputs the slot address 176 to the slot address processing unit 130.
  • the column address 174, the row address 175, and the slot address 176 each include an address corresponding to four memory modules 180.
  • the command interface 170 generates an activation signal, a read instruction signal, and a write instruction signal, which will be described later, from information specifying read or write included in the external command, a signal for controlling the operation timing, and the like.
  • the command interface 170 outputs the generated activation signal, read instruction signal, and write instruction signal group memory module 100.
  • the address processing unit 101 holds four addresses for each of the four memory modules 180.
  • the address processing unit 101 includes a row address processing unit 110 and a column address processing unit 120.
  • the row address processing unit 110 holds row addresses 178A to 178D corresponding to the memory modules 180A to 180D included in the row address 175 output by the command conversion issuing unit 172, respectively.
  • the row address processing unit 110 holds the row addresses 178A to 178D until access (reading or writing) to the plurality of memory modules 180 is completed. Note that the row addresses 178A to 178D are referred to as row addresses 178 when they are not particularly distinguished.
  • the column address processing unit 120 holds column addresses 177A to 177D corresponding to the memory modules 180A to 180D included in the column address 174 output by the command conversion issuing unit 172, respectively.
  • the column address processing unit 120 holds the column addresses 177A to 177D until access to the plurality of memory modules 180 is completed. If the column addresses 177A to 177D are not particularly distinguished, they are referred to as column addresses 177.
  • Each memory module 180 stores data for each address, and each address is designated by four addresses held in the address processing unit 101.
  • the four memory modules 180A to 180D are connected to the four internal memory read buses 185A to 185D and the four internal memory write buses 186A to 186D on a one-to-one basis.
  • the memory module 180 includes a memory cell 181, a column decoder 182, and a row decoder 183.
  • the memory module 180 is, for example, a DRAM.
  • Memory cell 181 is arranged in a matrix and includes a plurality of memory elements each holding m-bit data.
  • the column decoder 182 selects a predetermined column of the memory cells 181 by decoding the input column address 177.
  • the row decoder 183 selects a predetermined row of the memory cell 181 by decoding the input row address 178.
  • the memory module 180 reads data held in the memory element at the address of the column selected by the column decoder 182 and the row selected by the row decoder 183, and writes data to the memory element I do.
  • the data input / output unit 102 includes a slot address processing unit 130, a write data processing unit 140, and a read data processing unit 150.
  • the slot address processing unit 130 acquires the slot address 176 output from the command interface 170.
  • the slot address processing unit 130 holds the slot address 176 until the access to each memory module 180 is completed.
  • the write data processing unit 140 is connected to the memory modules 180A to 180D via internal memory write buses 186A to 186D, respectively.
  • the write data processing unit 140 assembles the write data of the input data bus 188 into the slots of each internal memory write bus 186 according to the slot address 176 output by the slot address processing unit 130.
  • the write data processing unit 140 sets a data mask flag at an unnecessary slot position.
  • the read data processing unit 150 is connected to the memory modules 180A to 180D via internal memory read buses 185A to 186D.
  • the read data processing unit 150 assembles the slots of each internal memory read bus 185 in accordance with the slot address 176 output from the slot address processing unit 130 and outputs it to the output data bus 187 as read data.
  • each internal memory read bus 185 is m bits
  • the bus width of each internal memory write bus 186 is m bits
  • the bus widths of the output data bus 187 and the input data bus 188 are each m bits.
  • the data input / output interface 160 is connected to the read data processing unit 150 via the output data bus 187.
  • the data input / output interface 160 converts the m-bit read data of the output data bus 187 into the bus width of the external data bus 161.
  • the data input / output interface 160 outputs the converted read data to the external data bus 161.
  • the data input / output interface 160 divides the read data output to the output data bus 187 according to the external clock, and outputs the divided read data to the external data bus 161.
  • the external clock is a synchronization signal supplied from the outside.
  • the data input / output interface 160 may use a timing signal that changes at a timing based on the change timing of the external clock, instead of the external clock.
  • the data input / output interface 160 is connected to the write data processing unit 140 via the input data bus 188.
  • the data input / output interface 160 converts the write data supplied to the external data bus 161 from the bus width of the external data bus 161 to an m-bit bus width.
  • the data input / output interface 160 outputs the converted write data to the input data bus 188.
  • the data input / output interface 160 captures the write data input to the external data bus 161 in accordance with the external clock, and outputs the captured write data to the input data bus 188.
  • FIG. 2 is a diagram illustrating the operation of the read data processing unit 150 when reading data.
  • Cell0 to Cell3 in FIG. 2 correspond to the memory modules 180A to 180D, respectively.
  • Each internal memory read bus 185 includes four internal slots 210.
  • the internal slot 210 is a data unit obtained by dividing the internal memory read bus 185 and the internal memory write bus 186 having a bus width of m bits by 4 memory modules.
  • the internal slot 210 is a partial bus of the internal memory read bus 185 and the internal memory write bus 186.
  • the read data processing unit 150 assembles the slots of the internal memory read bus 185 according to the slot address 176 output from the slot address processing unit 130 and outputs the assembled data to the output data bus 187 as read data.
  • the output data bus 187 includes four external slots 211.
  • the external slot 211 is a data unit obtained by dividing the output data bus 187 and the input data bus 188 having a bus width of m bits by 4 memory modules.
  • the external slot 211 is a partial bus of the output data bus 187 and the input data bus 188.
  • the read data processing unit 150 includes four data out of the data read from the four memory modules 180 via the four internal memory read buses 185 according to the slot address 176 output from the slot address processing unit 130.
  • the data of the internal slot 210 is selected.
  • the read data processing unit 150 incorporates the selected data into the external slot 211 included in the output data bus 187 and outputs it.
  • the slot address 176 is information indicating a one-to-one correspondence between the position of the internal slot 210 and the position of the external slot 211.
  • the slot address 176 includes four external slot addresses 201 and internal slot addresses 202 corresponding to the four external slot addresses 201, respectively.
  • the external slot address 201 is an address that designates the position of the external slot 211.
  • the internal slot address 202 is an address that specifies the position of the internal slot 210.
  • the internal slot address 202 is 4 bits.
  • the internal slot address 202 includes a 2-bit upper slot address 203 and a 2-bit lower slot address 204.
  • the upper slot address 203 is an upper 2-bit address of the internal slot address 202.
  • the upper slot address 203 is an address for designating one of the memory modules 180A to 180D.
  • the upper slot address 203 is an address that specifies one of the internal memory read buses 185A to 185D and the internal memory write buses 186A to 186D.
  • the lower slot address 204 is a lower 2 bit address of the internal slot address 202.
  • the lower slot address 204 is an address that designates one of the internal slots 210 included in each internal memory read bus 185 and each internal memory write bus 186.
  • the read data processing unit 150 selects data in the internal slot 210 that is included in the internal memory read bus 185 specified by the upper slot address 203 and specified by the lower slot address 204. In accordance with the slot address 176, the read data processing unit 150 reads the data selected in the external slot 211 at the position specified by the external slot address 201 corresponding to the internal slot address 202 including the upper slot address 203 and the lower slot address 204. Output.
  • the read data processing unit 150 selects each of the internal slots 210 designated by the four internal slot addresses 202 included in the slot address 176.
  • the read data processing unit 150 outputs each of the selected four 210 to the corresponding external slot 211.
  • the read data processing unit 150 selects the four internal slots 210 included in the 4 ⁇ m-bit data read from the four memory modules 180 based on the slot address 176, and selects the selected four internal slots.
  • the data 210 is output as one m-bit read data.
  • FIG. 3 is a diagram illustrating the operation of the write data processing unit 140 during data writing. Note that Cell0 to Cell3 in FIG. 3 correspond to the memory modules 180A to 180D, respectively.
  • Input data bus 188 includes four external slots 211.
  • the write data processing unit 140 assembles the write data of the input data bus 188 into the slots of each internal memory write bus 186 according to the slot address 176 output by the slot address processing unit 130.
  • Each internal memory write bus 186 includes four internal slots 210, respectively.
  • the write data processing unit 140 outputs the data of the four external slots 211 included in the input data bus 188 to one of the internal slots 210 included in the four internal memory write buses 186, respectively. Write data is written into the memory module 180.
  • the write data processing unit 140 converts the data in the external slot 211 at the position specified by the external slot address 201 to the internal memory write bus 186 specified by the upper slot address 203 corresponding to the external slot address 201. Are output to the internal slot 210 at the position specified by the lower slot address 204 corresponding to the external slot address 201.
  • the write data processing unit 140 outputs the data of the external slot 211 specified by the four external slot addresses 201 included in the slot address 176 to the corresponding internal slot 210.
  • the write data processing unit 140 rearranges the m-bit write data of the input data bus 188 according to the slot address 176, and copies and outputs it to all the internal memory write buses 186. At this time, the write data processing unit 140 sets a data mask flag in the internal slot 210 that does not require writing, and outputs the data mask flag to the internal memory write bus 186.
  • the data mask flag is a flag for instructing not to write the data of the internal slot 210 to which the data mask flag is assigned to the memory module 180.
  • the write data processing unit 140 gives a data mask flag to the internal slots 210 other than the internal slot 210 that has output the data of the external slot 211.
  • the write data processing unit 140 converts the data in the external slot 211 at the position specified by the external slot address 201 into the internal slot 210 at the position specified by the lower slot address 204 corresponding to the external slot address 201. Incorporate into.
  • the write data processing unit 140 generates one m-bit data in which the data of the four external slot addresses 201 are incorporated in the four internal slots 210 according to the slot address 176, respectively.
  • the write data processing unit 140 For each internal memory write bus 186 specified by the upper slot address 203, the write data processing unit 140 transfers data to the internal slot 210 other than the internal slot 210 specified by the lower slot address 204 corresponding to the upper slot address 203. Add a mask flag.
  • the write data processing unit 140 can distribute and write the data of the four external slots 211 included in the m-bit write data to the four memory modules 180 based on the slot address 176.
  • FIG. 4 is a diagram showing a data read operation by the group memory module 100.
  • the row address processing unit 110 receives a row address command including a row address 175 and an activation signal from the command interface 170.
  • the row address processing unit 110 issues a row address 178 and an activation signal (row ACT) simultaneously to the four memory modules 180 from the received row address command.
  • row ACT shown in FIG. 4 is a signal indicating an activated state at a low level and indicating an inactivated state at a high level.
  • the row address processing unit 110 holds the row address 178 and the activation signal until a deactivation command is sent from the command interface 170. For example, the row address processing unit 110 holds the row address 178 and the activation signal until the period T4 ends.
  • the column address processing unit 120 receives a column address command including a column address 174 and a read instruction signal from the command interface 170 in a cycle T2.
  • the column address processing unit 120 issues a column address 177 and a read instruction signal simultaneously to all four memory modules 180 activated in the cycle T2 in the cycle T3.
  • the memory module 180 reads the data stored in the memory element in the column specified by the column address 177 among the memory elements of the activated row address 178, and the internal memory read connected to each memory module 180. Output to the bus 185.
  • the memory module 180 continues to output data to the internal memory read bus 185 while the column address 177 and the read instruction signal are supplied.
  • the column address processing unit 120 holds the column address 177 and the read instruction signal until the period T4 ends.
  • the read data processing unit 150 takes the read data output to each internal memory read bus 185 at cycle T3 into a data holding circuit (not shown) provided in the read data processing unit 150.
  • the slot address processing unit 130 receives a slot address command including the slot address 176 from the command interface 170 at a cycle T2 in synchronization with the reception timing of the column address command.
  • the slot address processing unit 130 holds the received slot address command until the period T4 ends.
  • the slot address processing unit 130 issues the internal slot address 202 and the external slot address 201 simultaneously to the read data processing unit 150 at a cycle T4.
  • the read data processing unit 150 selects the internal memory read bus 185 according to the upper slot address 203 included in the internal slot address 202 received at the cycle T4 for each external slot 211 according to the external slot address 201 received at the cycle T4, Further, data in the internal slot 210 in the internal memory read bus 185 is selected according to the lower slot address 204 included in the internal slot address 202.
  • the read data processing unit 150 assigns the selected four internal slots 210 to the four external slots 211 and outputs read data including the four external slots to the data input / output interface 160 at a cycle T5.
  • the four sets of the internal slot address 202 and the external slot address 201 included in the slot address 176 are “0B-S1”, “1C-S2”, “2A-S0”, and “3D-S3”,
  • the data of the first internal slot 210 of the internal memory read bus 185B is incorporated into the second external slot 211 of the read data, and the data of the second internal slot 210 of the internal memory read bus 185C is the third of the read data.
  • the data in the third internal slot 210 of the internal memory read bus 185A is incorporated in the external slot 211, the data in the first external slot 211 of the read data is incorporated, and the data in the last internal slot 210 of the internal memory read bus 185D is It is incorporated in the last external slot 211 of the read data.
  • the row address processing unit 110 receives an inactive command from the command interface 170 at a cycle T5.
  • the row address processing unit 110 shifts the row address 178 and the activation signal of each memory module 180 activated in the cycle T2 to an inactive state.
  • the group memory module 100 simultaneously activates unrelated row addresses of the four memory modules 180.
  • the group memory module 100 issues a column address 177 and a read command to the four memory modules 180 simultaneously.
  • totally independent four data are output to the internal memory read bus 185 having the data width m.
  • the read data processing unit 150 selects the internal slot 210 for each internal memory read bus 185 specified by the internal slot address 202, and outputs it independently to the four external slots 211.
  • the read data output to the data input / output interface 160 becomes independent data with little relevance in units of m / 4 bits.
  • the data input / output interface 160 can reduce the effective data unit (hereinafter referred to as the minimum access unit) to m / 4 bits while maintaining the bus width m. .
  • FIG. 5 is a diagram showing a data write operation by the group memory module 100.
  • the memory element of the memory module 180 specified by the row address 178 is activated at the cycle T2.
  • the write data processing unit 140 takes the write data input from the data input / output interface 160 into a data holding circuit (not shown) included in the write data processing unit 140.
  • the write data processing unit 140 sends the fetched write data to an output circuit (not shown) that outputs data to each internal memory write bus 186 provided in the write data processing unit 140.
  • the slot address processing unit 130 issues the internal slot address 202 and the external slot address 201 to the write data processing unit 140 at the same time.
  • the write data processing unit 140 generates a data mask flag in order to separate data to be written into each memory module 180 and data not to be written. At cycle T4, the write data processing unit 140 outputs the generated data mask flag simultaneously with the data output.
  • the write data processing unit 140 is connected to the memory module 180 in which the data of each external slot 211 is written according to the upper slot address 203 included in the internal slot address 202 received from the slot address processing unit 130 at the cycle T3.
  • the internal memory write bus 186 to be used is selected.
  • the write data processing unit 140 validates the internal slot 210 of the selected internal memory write bus 186 according to the lower slot address 204 included in the internal slot address 202.
  • the write data processing unit 140 sets a data mask flag for the internal slot 210 that is not validated.
  • the write data processing unit 140 outputs the data and data mask flag generated in cycle T3.
  • the column address processing unit 120 receives a column address command including a column address 174 and a write instruction signal from the command interface 170 in a cycle T2.
  • the column address processing unit 120 issues a column address 177 and a write instruction signal simultaneously to all of the four memory modules activated in the cycle T2.
  • the memory module 180 stores the data input from the internal memory write bus 186 to the memory element indicated by the column address 177 among the memory elements of the activated row address 178.
  • the write data processing unit 140 continues to output data to the internal memory write bus 186 while the column address 177 and the write instruction signal are supplied to the memory module 180. For example, the write data processing unit 140 continues to output data until the cycle T4 ends.
  • cycle T5 the row address processing unit 110 shifts the row address 178 and the activation signal of each memory module 180 activated in cycle T2 to the inactive state.
  • the group memory module 100 selects the internal memory write bus 186 to which the input write data is to be output for each of the four external slots 211, and the data mask is not applied to the internal slot 210 that does not require writing according to the internal slot address 202. Attach a flag and output.
  • the group memory module 100 receives the write data input with the bus width m from the data input / output interface 160 at the position of the arbitrary row address 178 and column address 177 on the arbitrary memory module 180 in units of m / 4 bits. Can be stored in the memory element. Therefore, the group memory module 100 can reduce the minimum access unit to m / 4 bits while holding the input bus width m bits in data writing.
  • FIG. 6 is a diagram illustrating an operation of continuously reading data by the group memory module 100.
  • the memory element of the memory module 180 specified by the row address 178 is activated at the cycle T2.
  • the column address processing unit 120 receives the first column address command from the command interface 170. In a cycle T3, the column address processing unit 120 issues the first column address 177 and the read instruction signal simultaneously to the four memory modules 180 activated in the cycle T2.
  • the column address processing unit 120 receives the second column address command from the command interface 170 at the cycle T3. In a cycle T4, the column address processing unit 120 issues a second column address 177 and a read instruction signal simultaneously to the four memory modules 180 activated in the cycle T2.
  • each memory module 180 Upon receipt of the first column address 177 and the read instruction signal, each memory module 180 outputs the first read data to the internal memory read bus 185 in the period T3. Receiving the second column address 177 and the read instruction signal, each memory module 180 outputs the second read data to the internal memory read bus 185 in the period T4.
  • the read data processing unit 150 takes the first read data output to each internal memory read bus 185 into the data holding circuit at the first rising edge of the cycle T4. The read data processing unit 150 performs processing for outputting the fetched first read data to the data input / output interface 160. Next, the read data processing unit 150 takes the second read data output to each internal memory read bus 185 into the data holding circuit at the first rising edge of the cycle T5. The read data processing unit 150 performs processing for outputting the fetched second read data to the data input / output interface 160.
  • the slot address processing unit 130 receives the first slot address command from the command interface 170 in a cycle T2 in synchronization with the reception timing of the column address command by the column address processing unit 120.
  • the slot address processing unit 130 holds the received first slot address command until the end of the period T4.
  • the slot address processing unit 130 issues the internal slot address 202 and the external slot address 201 included in the first slot address command to be held to the read data processing unit 150 at the same time.
  • the slot address processing unit 130 receives the second slot address command from the command interface 170 at a cycle T3.
  • the slot address processing unit 130 holds the received second slot address command until the end of the period T5.
  • the slot address processing unit 130 issues the internal slot address 202 and the external slot address 201 included in the second slot address command to be held to the read data processing unit 150 at the same time.
  • the data holding circuit included in the read data processing unit 150 may have a plurality of stages, or may be a FiFo (Fast in Fast out) buffer or the like.
  • the read data processing unit 150 reads the internal memory according to the first external slot address 201 received at the cycle T4, and for each external slot 211 according to the upper slot address 203 included in the first internal slot address 202 received at the cycle T4.
  • the bus 185 is selected, and the data in the internal slot 210 in the internal memory read bus 185 is selected according to the lower slot address 204 included in the internal slot address 202.
  • the read data processing unit 150 assigns the data of the selected four internal slots 210 to the four external slots 211 at cycle T5 and outputs the first read data including the four external slots 211 to the data input / output interface 160. To do.
  • the read data processing unit 150 performs internal processing according to the second external slot address 201 received at the cycle T5, and for each external slot 211, according to the upper slot address 203 included in the second internal slot address 202 received at the cycle T5.
  • the memory read bus 185 is selected, and the data of the internal slot 210 in the internal memory read bus 185 is selected according to the lower slot address 204 included in the internal slot address 202.
  • the read data processing unit 150 assigns the data of the selected four internal slots 210 to the four external slots 211 at cycle T6 and outputs the second read data including the four external slots 211 to the data input / output interface 160. To do.
  • the first internal slot address 202 and the external slot address 201 received at the cycle T4 and the cycle T5 may be different from or the same as the second internal slot address 202 and the external slot address 201. . That is, the group memory module 100 can select an arbitrary slot according to the first and second slot addresses 176 specified from the outside.
  • the memory device 10 can output read data for each cycle while holding the bus width m bits at the output of the data input / output interface 160 and reducing the effective data unit to m / 4 bits.
  • the memory device 10 can perform the continuous write operation in the same manner. That is, the continuous write operation is a pipeline operation in which the input timing of the write command and write data in the first write operation and the second write operation is shifted by one cycle.
  • the memory device 10 according to the first embodiment of the present invention can access data at a plurality of completely different addresses with one input / output without changing the transfer size of read data and the transfer size of write data. .
  • the memory device 10 according to the first embodiment of the present invention can reduce the minimum access unit of data, and thus can achieve high access efficiency.
  • the memory device 10 according to the first embodiment of the present invention can realize high access efficiency without increasing the number of memory devices to be mounted as compared with the conventional memory device. That is, the memory device 10 according to the first embodiment of the present invention can achieve high access efficiency and can suppress an increase in cost.
  • Embodiment 2 The memory device according to Embodiment 2 of the present invention includes two group memory modules 100 according to Embodiment 1 described above.
  • FIG. 7 is a block diagram showing a configuration of the memory device according to Embodiment 2 of the present invention. Elements similar to those in FIG. 1 are denoted by the same reference numerals, and detailed description thereof is omitted.
  • the memory device 20 shown in FIG. 7 includes group memory modules 100A and 100B, a data input / output interface 260, and a command interface 270.
  • the group memory modules 100A and 100B have the same configuration as the group memory module 100 shown in FIG.
  • the command interface 270 includes a command receiving unit 271 and a command conversion issuing unit 272.
  • the command receiving unit 271 receives an external command for the group memory modules 100A and 100B input to the external command bus 173.
  • the command conversion issuing unit 272 converts the external address included in the external command for the group memory module 100A received by the command receiving unit 271 to the column address 174A, the row address 175A, and the slot address that are internal addresses of the group memory module 100A. Convert to 176A.
  • the command conversion issuing unit 272 outputs the column address 174A, the row address 175A, and the slot address 176A to the column address processing unit 120, the row address processing unit 110, and the slot address processing unit 130 of the group memory module 100A, respectively.
  • the command conversion issuing unit 272 uses the external address included in the external command for the group memory module 100B received by the command receiving unit 271 as the column address 174B, the row address 175B, and the slot address, which are internal addresses of the group memory module 100B. Convert to 176B.
  • the command conversion issuing unit 272 outputs the column address 174B, the row address 175B, and the slot address 176B to the column address processing unit 120, the row address processing unit 110, and the slot address processing unit 130 of the group memory module 100B, respectively.
  • the data input / output interface 260 converts the read data from the group memory module 100A output to the output data bus 187A to the bus width of the external data bus 161, and outputs the converted read data to the external data bus 161.
  • the data input / output interface 260 converts the read data from the group memory module 100B output to the output data bus 187B to the bus width of the external data bus 161, and outputs the converted read data to the external data bus 161.
  • the data input / output interface 260 converts the write data input to the external data bus 161 from the bus width of the external data bus 161 to an m-bit bus width, and outputs the converted write data to the input data buses 188A and 188B. To do.
  • the bus widths of the output data buses 187A and 187B and the input data buses 188A and 188B are m bits, respectively.
  • FIG. 8 is a diagram showing a data read operation by the memory device 20.
  • the group memory module 100A receives the row address 175A and the activation signal from the command interface 270. In the period T2, the group memory module 100A activates the four memory modules 180 simultaneously.
  • the group memory module 100B receives the row address 175B and the activation signal from the command interface 270 in the cycle T2. In the period T3, the group memory module 100B activates the four memory modules 180 simultaneously.
  • the group memory module 100A receives the column address 174A and the slot address 176A from the command interface 270.
  • the group memory module 100A issues a column address 177 to the memory module 180 at period T3.
  • the read data processing unit 150 of the group memory module 100A takes the data output to the internal memory read bus 185 into the data holding circuit.
  • the group memory module 100B receives the column address 174B and the slot address 176B from the command interface 270.
  • the group memory module 100B issues a column address 177 to the memory module 180 at period T4.
  • the read data processing unit 150 of the group memory module 100B takes the data output to the internal memory read bus 185 into the data holding circuit.
  • the group memory module 100A incorporates the internal slot 210 into the external slot 211 according to the slot address 176A, and outputs the incorporated read data to the data input / output interface 260.
  • the group memory module 100B incorporates the internal slot 210 into the external slot 211 according to the slot address 176B, and outputs the incorporated read data to the data input / output interface 260.
  • the memory device 20 controls the group memory modules 100A and 100B in the same manner as the group memory module 100 of the first embodiment.
  • the memory device 20 shifts the command sent from the command interface 270 to each of the group memory modules 100A and 100B by one cycle.
  • the inaccessible period that occurs in each of the group memory modules 100A and 100B can be used as the access period of the other group memory modules 100A and 100B. Therefore, the memory device 20 can improve the efficiency of the external data bus 161.
  • the memory device 20 includes the two group memory modules 100A and 100B, but may include two or more group memory modules.
  • command interface 270 and the data input / output interface 260 can receive commands and output read data using the following method.
  • FIG. 9A and 9B are diagrams showing a command receiving operation by the command interface 270.
  • FIG. 9A and 9B are diagrams showing a command receiving operation by the command interface 270.
  • the command interface 270 may use either the command reception method (hereinafter “method X”) shown in FIG. 9A or the command reception method (hereinafter “method Y”) shown in FIG. 9B.
  • Method X is a method in which the command interface 270 receives two external commands 301 and 302 within one access cycle of the external clock signal 273.
  • the external clock signal 273 is a synchronization signal supplied from the outside of the memory device 20.
  • the command interface 270 receives an external command for M group memory modules in M / 2 cycles. Note that the command interface 270 may use a timing signal that changes at a timing based on the change timing of the external clock signal 273 instead of the external clock signal 273.
  • Method Y is a method in which the command interface 270 receives M external commands 301 to 30M within one access cycle of the external clock signal 273. In method Y, the command interface 270 receives an external command for M group memory modules in one cycle.
  • 10A and 10B are diagrams showing a data input / output operation by the data input / output interface.
  • the data input / output interface 260 may use either the data input / output method (hereinafter “method P”) shown in FIG. 10A or the data input / output method (hereinafter “method Q”) shown in FIG. 10B.
  • method P data input / output method
  • method Q data input / output method
  • Method P is a method in which the data input / output interface 260 inputs / outputs data corresponding to two external data bus widths in one access cycle of the data strobe signal 261. That is, the data input / output interface 260 receives two data of the bus width of the external data bus 161 supplied to the external data bus 161 within one cycle of the data strobe signal 261. The data input / output interface 260 outputs to the external data bus 161 two read data converted into the bus width of the external data bus 161 within one cycle of the data strobe signal 261.
  • the data strobe signal 261 is a synchronization signal supplied from the outside of the memory device 20. Note that the data input / output interface 260 may use a timing signal that changes at a timing based on the change timing of the data strobe signal 261 instead of the data strobe signal 261.
  • the data input / output interface 260 receives or transmits M read data or M write data with the external data bus 161 in M / 2 cycles.
  • Method Q is a method in which the data input / output interface 260 inputs / outputs data corresponding to one external data bus width within one access cycle of the data strobe signal 261.
  • the data input / output interface 260 receives or transmits M read data or M write data in the M cycle with the external data bus 161.
  • FIG. 11 shows the bandwidth, the minimum access granularity (minimum access unit), the external clock frequency, the internal clock frequency, and the external data bus in the conventional method and the method of the present application in which the method X, method Y, method P and method Q are combined It is a figure which shows a frequency and an external data bus width.
  • the conventional method is DDR2-800 with a data bus width of 4 bytes.
  • the external clock frequency is the frequency of the external clock signal 273, and the external data bus frequency is the frequency of the data strobe signal 261.
  • the bandwidth and the external clock frequency are 3200 MByte / s and 400 MHz, respectively, in the conventional method and the present method, which are the same.
  • the minimum access unit can be reduced without changing the internal clock frequency and the external clock frequency and without reducing the data bus width.
  • the external data bus width can be expanded to secure a memory bandwidth and the internal clock frequency can be lowered. Thereby, the power consumption of the memory device 20 can be reduced.
  • the minimum access unit can be reduced without changing the internal clock frequency and the external clock frequency and without reducing the data bus width. Further, when the method Y and the method P are combined, it is possible to reduce the deterioration of the data transfer efficiency due to the generation of the invalid period of the external data bus 161. This invalid period is generated when the issue of the other command is delayed by giving priority to either one when there are two or more commands issued to the group memory modules 100A and 100B in the same cycle.
  • the internal clock frequency and the external data clock frequency can be lowered without reducing the data memory bandwidth. Thereby, the power consumption of the memory device 20 can be reduced. Further, when the method Y and the method Q are combined, it is possible to reduce the deterioration of the data transfer efficiency due to the generation of the invalid period of the external data bus 161.
  • the memory devices 10 and 20 according to the embodiment of the present invention have been described above. However, the present invention is not limited to this embodiment.
  • the memory device 20 includes one data input / output interface 260.
  • the following configuration may be used.
  • FIG. 12 is a diagram showing a configuration of a modification of the memory device according to Embodiment 2 of the present invention.
  • the data input / output interface 160A converts the m-bit read data of the output data bus 187A into the bus width of the external data bus 161, and outputs the converted read data to the external data bus 161.
  • the data input / output interface 160A converts the write data supplied to the external data bus 161 from the bus width of the external data bus 161 to the m-bit bus width, and outputs the converted write data to the input data bus 188A.
  • the data input / output interface 160B converts the m-bit read data of the output data bus 187B into the bus width of the external data bus 162, and outputs the converted read data to the external data bus 162.
  • the data input / output interface 160A converts the write data supplied to the external data bus 162 from the bus width of the external data bus 162 to an m-bit bus width, and outputs the converted write data to the input data bus 188B.
  • the reception method of the command interface 270 shown in FIGS. 9A and 9B may be applied to the command interface 170 according to the first embodiment described above.
  • the command interface 170 may accept a plurality of external commands for each memory module 180 during one cycle of the external clock signal 273. That is, the command interface 170 may accept two or more external commands during one cycle of the external clock signal 273, or may accept the same number of commands as the number of memory modules 180.
  • command interface 270 may accept the same number of commands as the number of the group memory modules 100A and 100B during one cycle of the external clock signal 273, and the memory module 180 included in the plurality of group memory modules 100A and 100B. A number of commands equal to the total number of commands may be accepted.
  • the command interface 270 has a function of issuing commands simultaneously to the group memory modules 100A and 100B or a plurality of memory modules 180 in the group memory modules 100A and 100B.
  • the number of modules or the number of external commands equal to or greater than the total number of memory modules 180 included in the plurality of group memory modules may be received.
  • the command interface 270 receives a plurality of external commands in a time division manner, but a method of transferring the external command bus 173 by dividing the bus width may be used.
  • the data input / output interface 260 transmits / receives data to / from the external data bus 161 in a time division manner.
  • the data input / output interface 260 may transfer the external data bus 161 by dividing the bus width. Good.
  • the row address 178 may be a page address of the memory cell 181.
  • bit specifying the memory module 180 and the bit specifying the slot included in the internal slot address 202 may be at arbitrary positions.
  • the memory module may be specified by the lower 2 bits and the slot may be specified by the upper 2 bits.
  • the number of memory modules 180 included in the group memory modules 100, 100A, and 100B is not limited to four, and may be two or more.
  • each internal memory read bus 185 and each internal memory write bus 186 is selected. Two or more of the four internal slots included in the write bus 186 are selected, and none of the four internal slots included in the other internal memory read bus 185 or the internal memory write bus 186 may be selected.
  • the bus widths of the internal memory read bus 185 and the internal memory write bus 186 are equal to the bus widths of the output data bus 187 and the input data bus 188, but they may be different. That is, the number of internal slots 210 included in the internal memory read bus 185 and the internal memory write bus 186 may be different from the number of external slots 211 included in the output data bus 187 and the input data bus 188.
  • the number of internal slots 210 included in the internal memory read bus 185 and the internal memory write bus 186 and the number of external slots 211 included in the output data bus 187 and the input data bus 188 are defined as the memory module 180. Although it is equal to the number of, it may be different.
  • the bus widths of the internal memory read bus 185 and the internal memory write bus 186 are equal to the bus widths of the output data bus 187 and the input data bus 188, and the internal memory read bus 185 and the internal memory write
  • the number of internal slots 210 included in bus 186 and the number of external slots 211 included in output data bus 187 and input data bus 188 are preferably equal to the number of memory modules 180.
  • the present invention can be applied to a memory device and a memory control method, and particularly applicable to a memory device including a plurality of DRAMs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)

Abstract

 本発明に係るメモリ装置(10)は、複数の内部スロット(210)を含むN個の内部メモリリードバス(185)及びN個の内部メモリライトバス(186)と、N個のメモリモジュール(180)と、複数の外部スロット(211)を含む出力データバス(187)及び入力データバス(188)と、N個のメモリモジュール(180)から、N個の内部メモリリードバス(185)を介して読み出されたデータのうち、2以上の内部スロット(210)のデータを選択し、出力データバス(187)の外部スロット(211)に出力するリードデータ処理部(150)と、入力データバス(188)の複数の外部スロット(211)のデータを、それぞれN個の内部メモリライトバス(186)に含まれる内部スロット(210)のいずれかに出力することで、N個のメモリモジュール(180)に書き込むライトデータ処理部(140)とを備える。

Description

メモリ装置及びその制御方法
 本発明は、メモリ装置及びその制御方法に関し、特に、データの読み出し及び書き込みが可能なメモリ装置に関する。
 一般に、画像処理装置を含む情報処理装置では、膨大なデータを記憶するために、大容量かつ低コストであるDRAMが用いられる。特に、近年の画像処理装置は、MPEG2及びH.264等のHD(High Definition)画像処理に対応するため、かつ同時に複数チャンネルの処理を行うため、かつ高画質な3Dグラフィックス処理を行うため等により、大容量に加え、高いデータ転送能力(以下、メモリ帯域と記す)を有するDRAMを必要としている。
 一般的に、高いメモリ帯域を実現する方法として、(1)バスの動作周波数を上げる方法、(2)メモリのバス幅を広くとる方法、又はこれらの方法(1)及び(2)を併用する方法などが知られている。
 一方、一般にDRAMは、アクセスを行う際、事前にアクセスするBank・Rowを指定して、アクティベート処理を行う必要がある。また、同一Bankにおいて、アクセスするRowを変更する場合は、一旦アクセスしていたRowをプリチャージ処理し、新たにアクセスするRowに対してアクティベート処理を行う必要がある。これらのアクティベート処理を行う期間、及びプリチャージ処理を行う期間において、該当Bankに対するアクセスができない。よって、同一Bank内で、Rowを切り替える際に、アクセス不可期間が発生することで、データバスに空きが発生してしまうという欠点がある。
 そこで、その欠点を補うべく、通常DRAMアクセス制御においては、バンクインタリーブ制御と呼ばれる制御が行われる。バンクインタリーブ制御は、ある特定のバンクへのデータ転送実行中に、他のバンクのアクティベート処理、及びプリチャージ処理を実行する制御である。これにより、アクセス不可期間を隠蔽し、見かけ上、データバス上で、常時データ転送が可能となる。このバンクインタリーブ制御を有効に機能させるためには、あるバンクに対するアクセス不可期間を、他バンクのデータ転送時間が上回る必要がある。
 しかしながら、高いメモリ帯域を実現するために、前記(1)及び(2)のいずれの対応をとった場合においても、単位時間あたりのデータ転送量が増えるのに対し、アクセス不可期間の絶対時間が変わらない。これにより、アクセス不可期間を隠蔽するのに必要なデータ転送量が増加する。
 その結果、他バンクのデータ転送量を増やさない限り、すなわち、1アクセスあたりの転送サイズを増やさない限り、バンクインタリーブ制御を行ったとしても、アクセス不可期間の隠蔽が十分に実現できない。これにより、データバスに空きが発生することとなり、アクセス効率の低下が発生するという問題がある。このことは、転送サイズが小さいアクセスが頻発するシステムにおいては、大幅なアクセス効率の低下を招くことになる。
 この問題に対する従来の手法として、特許文献1に記載の手法がある。特許文献1記載の手法では、1つの論理アドレス空間を構成する複数のメモリデバイスに対してそれぞれ個別のアドレスバスを用いてアクセスする。これにより、複数のメモリデバイス全体のデータバス幅から見たアクセス効率が向上される。
 特許文献1記載の手法では、メモリデバイスごとにアドレスバスを個別に制御することで、アクセスできる最小単位を単一のアドレスバスを共有して使用する場合に比べ、小さくすることが可能である。これにより、特許文献1記載の手法は、複数のメモリデバイス全体のデータバス幅に対して不要なデータを削減できる。よって、特許文献1記載の手法は、転送サイズが小さいアクセスが頻発するシステムにおいても、アクセス効率の低下を抑制できる。
特表2005-517242号公報
 一般的にDRAMの最小アクセス単位は、「バス幅 × 最小バースト数」となる。SDRAMの最小バースト数が1であるのに対して、前述した高速なDRAMの最小バースト数は、DDRで2、DDR2で4、DDR3で8と規定されている。よって、バス幅を広げる対応をした場合と同様に、高速なDRAMを使用することによっても、最小アクセス単位が増加するという課題がある。
 最小アクセス単位とは、1回のアクセスに対して、必ず転送される最小データ転送量を示す。あらゆるアクセス要求は、最小アクセス単位の整数倍で転送される。よって、最小アクセス単位が増大することにより、転送量の小さいアクセス、及び画像処理によく使用される任意かつ非連続なアクセスに対して、無駄な転送が多く行われる。この結果、実効転送効率が低下する。
 すなわち、特許文献1記載の手法では、最小アクセス単位を小さくするためにバス幅に着目し、複数のデバイスを用いてデータバスを個別にアクセスできるようにしている。しかしながら、SDRAMより高速なDRAMを使用する場合DDRで2、DDR2で4、DDR3で8と最小バースト数が増加するため、結果的に最小アクセス単位を小さくできない。それゆえ、使用するメモリをより高速なDRAM(DDR、DDR2及びDDR3等)にした場合、最小バースト数の増加に起因して最小アクセス単位は増加する。これにより、アクセス効率が悪化するという課題がある。
 また、更に多くのメモリデバイスを実装することで、最小バースト数の増加で悪化する最小アクセス単位を改善できる。しかしながら、更に複数のメモリデバイスを使用するために、コストが増加するという別の課題が生じる。
 本発明は、上記課題を解決するもので、高いアクセス効率を実現でき、コストの増加を抑制するメモリ装置を提供することを目的とする。
 上記目的を達成するために、本発明に係るメモリ装置は、第1サイズのデータの読み出し及び書き込みが可能なメモリ装置であって、N(N:2以上の整数)個のアドレスを保持するアドレス保持部と、第3サイズのバス幅の部分的なバスである第1スロットを複数含む第2サイズのバス幅のリードバスN個及びライトバスN個と、アドレス毎にデータを記憶し、前記アドレス保持部に保持されるN個のアドレスによりそれぞれアドレスが指定され、前記N個のリードバス及び前記N個のライトバスに一対一に接続されるN個のメモリモジュールと、前記第3サイズのバス幅の部分的なバスである第2スロットを複数含む前記第1サイズのバス幅の出力データバス及び入力データバスと、前記N個のメモリモジュールから、前記N個のリードバスを介して読み出されたデータのうち、前記N個のリードバスに含まれる2以上の前記第1スロットのデータを選択し、選択したデータを前記出力データバスに含まれる前記第2スロットに出力するリードデータ処理部と、前記入力データバスに含まれる前記複数の第2スロットのデータを、それぞれ前記N個のライトバスに含まれる第1スロットのいずれかに出力することで、前記N個のメモリモジュールに書き込むライトデータ処理部とを備える。
 この構成によれば、本発明に係るメモリ装置は、読み出しデータの転送サイズ、及び書き込みデータの転送サイズを変えることなく、1回の入出力で複数の全く異なるアドレスのデータへアクセスできる。これにより、本発明に係るメモリ装置は、データの最小アクセス単位を小さくできるので、高いアクセス効率を実現できる。また、本発明に係るメモリ装置は、従来のメモリ装置と比べて実装するメモリデバイスの数を増加させることなく、高いアクセス効率を実現できる。すなわち、本発明に係るメモリ装置は、高いアクセス効率を実現でき、かつコストの増加を抑制できる。
 また、前記メモリ装置は、さらに、前記第1スロットの位置と、前記第2スロットの位置との一対一の対応関係を示すスロットアドレスを取得するスロットアドレス処理部を備え、前記リードデータ処理部は、前記N個のリードバスに含まれる前記複数の第1スロットのうち、前記スロットアドレスに示される位置の第1スロットのデータを選択し、選択したデータを当該第1スロットの位置に対応する位置の前記第2スロットに出力し、前記ライトデータ処理部は、前記入力データバスに含まれる前記第2スロットのデータを、前記スロットアドレスに示される当該第2スロットの位置に対応する位置の前記第1スロットに出力してもよい。
 この構成によれば、本発明に係るメモリ装置は、スロットアドレスに従い、外部スロットと内部スロットとを任意の組み合わせで組み替えることができる。
 また、前記スロットアドレスは、前記複数の第2スロットの位置をそれぞれ指定する第2スロットアドレスと、当該第2スロットアドレスのそれぞれに対応する第1スロットの位置を指定する第1スロットアドレスとを含み、前記第1スロットアドレスは、前記N個のリードバス及びライトバスのいずれかを指定する第1アドレスと、前記N個のリードバス及びライトバスのそれぞれに含まれる前記第1スロットの位置を指定する第2アドレスとを含み、前記リードデータ処理部は、前記第1アドレスで指定されるリードバスに含まれ、かつ前記第2アドレスで指定される第1スロットのデータを選択し、選択したデータを当該第1アドレス及び当該第2アドレスを含む第1スロットアドレスに対応する前記第2スロットアドレスで指定される位置の第2スロットに出力し、前記ライトデータ処理部は、前記第2スロットアドレスで指定される位置の第2スロットのデータを、当該第2スロットアドレスに対応する前記第1スロットアドレスに含まれる前記第1アドレスで指定されるライトバスにおける、当該第1スロットアドレスに含まれる前記第2アドレスで指定される位置の第1スロットに出力してもよい。
 この構成によれば、本発明に係るメモリ装置は、スロットアドレスに従い、所望のメモリモジュールの所望のアドレスのデータにアクセスできる。
 また、前記ライトデータ処理部は、前記第2スロットのデータを出力した第1スロット以外の第1スロットに、当該第1スロットのデータを前記メモリモジュールに書き込ませないことを指示するフラグを付与してもよい。
 この構成によれば、本発明に係るメモリ装置は、変更が不要なデータが記憶されるアドレスへの書き込みを禁止できる。
 また、前記ライトデータ処理部は、前記第2スロットアドレスで指定される位置の第2スロットのデータを、前記N個のライトバスの全てにおける、当該第2スロットアドレスに対応する第1スロットアドレスに含まれる前記第2アドレスで指定される位置の第1スロットに出力し、前記第1アドレスで指定されるライトバスごとに、当該第1アドレスに対応する前記第2アドレスで指定される第1スロット以外の第1スロットに、当該第1スロットのデータを前記メモリモジュールに書き込ませないことを指示するフラグを付与してもよい。
 この構成によれば、本発明に係るメモリ装置は、マスクを付与するという容易な処理で、外部スロットを内部スロットに組み込める。
 また、前記第1サイズと、前記第2サイズは同一であってもよい。
 また、前記各リードバス及び前記各ライトバスはそれぞれ、N個の前記第1スロットを含み、前記出力データバス及び入力データバスはそれぞれ、N個の前記第2スロットを含んでもよい。
 また、メモリ装置は、さらに、外部から供給される同期信号に基づく信号の1サイクル内に、複数のコマンドを受信し、受信したコマンドを、前記N個のメモリモジュールのアドレス、及び前記スロットアドレスに変換するコマンドインターフェースを備え、前記アドレス保持部は、前記コマンドインターフェースにより変換されたN個のアドレスを保持し、前記スロットアドレス処理部は、前記コマンドインターフェースにより変換されたスロットアドレスを取得してもよい。
 この構成によれば、外部クロックの周波数又は外部コマンドバス幅の増加を抑制できる。
 また、前記コマンドインターフェースは、前記同期信号に基づく信号の1サイクル内に、N個の前記コマンドを受信してもよい。
 この構成によれば、本発明に係るメモリ装置は、同期信号に基づく信号の1サイクルで、全てのメモリモジュールに対するコマンドを受信できる。
 また、前記メモリ装置は、さらに、外部データバスに供給された書き込みデータを前記外部データバスのバス幅から前記第1サイズに変換し、変換した書き込みデータを前記入力データバスに出力し、前記出力データバスの第1サイズの読み出しデータを前記外部データバスのバス幅に変換し、変換した読み出しデータを前記外部データバスに出力するデータ入出力インターフェースを備え、前記データ入出力インターフェースは、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスに供給された前記外部データバスのバス幅のデータを複数受信し、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスのバス幅に変換した複数の前記読み出しデータを前記外部データバスに出力してもよい。
 この構成によれば、外部クロックの周波数又は外部データバス幅の増加を抑制できる。
 また、前記メモリ装置は、前記N個のメモリモジュール、前記N個のリードバス、前記N個のライトバス、前記アドレス保持部、前記リードデータ処理部、前記ライトデータ処理部、前記出力データバス、前記入力データバス、及びスロットアドレス処理部をそれぞれ備える複数のグループメモリモジュールと、外部から供給されるコマンドを、前記複数のグループメモリモジュールのアドレス、及び前記スロットアドレスに変換するコマンドインターフェースを備え、前記各グループメモリモジュールの前記アドレス保持部は、前記コマンドインターフェースにより変換されたアドレスをそれぞれ保持し、前記各グループメモリモジュールの前記スロットアドレス処理部は、前記コマンドインターフェースにより変換されたスロットアドレスを取得してもよい。
 この構成によれば、外部へのデータバス上で1つのグループメモリモジュールが有する物理的にアクセスが不可能な期間を、他のグループメモリモジュールのアクセスで置き換えることができる。これにより、本発明に係るメモリ装置は、データバスの効率を向上できる。
 また、前記コマンドインターフェースは、外部から供給される同期信号に基づく信号の1サイクル内に、複数の前記コマンドを受信してもよい。
 この構成によれば、外部クロックの周波数又は外部コマンドバス幅の増加を抑制できる。
 また、前記コマンドインターフェースは、前記同期信号に基づく信号の1サイクル内に、前記複数のグループメモリの数の前記コマンドを受信してもよい。
 この構成によれば、本発明に係るメモリ装置は、同期信号に基づく信号の1サイクルで、全てのグループメモリモジュールに対するコマンドを受信できる。
 また、前記メモリ装置は、さらに、外部データバスに供給された書き込みデータを前記外部データバスのバス幅から前記第1サイズに変換し、変換した書き込みデータを前記複数のグループメモリモジュールの前記入力データバスに出力し、前記複数のグループメモリモジュールの前記出力データバスの第1サイズの読み出しデータを前記外部データバスのバス幅に変換し、変換した読み出しデータを前記外部データバスに出力するデータ入出力インターフェースを備え、前記データ入出力インターフェースは、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスに供給された前記外部データバスのバス幅のデータを複数受信し、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスのバス幅に変換した複数の前記読み出しデータを前記外部データバスに出力してもよい。
 この構成によれば、外部クロックの周波数又は外部データバス幅の増加を抑制できる。
 また、前記メモリ装置は、さらに、前記複数のグループメモリモジュールにそれぞれ対応し、外部データバスに供給された書き込みデータを前記外部データバスのバス幅から前記第1サイズに変換し、変換した書き込みデータを対応する前記グループメモリモジュールの前記入力データバスに出力し、対応する前記グループメモリモジュールの前記出力データバスの第1サイズの読み出しデータを前記外部データバスのバス幅に変換し、変換した読み出しデータを前記外部データバスに出力する複数のデータ入出力インターフェースを備え、前記複数のデータ入出力インターフェースは、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスに供給された前記外部データバスのバス幅のデータを複数受信し、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスのバス幅に変換した複数の前記読み出しデータを前記外部データバスに出力してもよい。
 また、第1サイズのデータの読み出し及び書き込みが可能なメモリ装置の制御方法であって、前記メモリ装置は、N(N:2以上の整数)個のアドレスを保持するアドレス保持部と、第3サイズのバス幅の部分的なバスである第1スロットを複数含む第2サイズのバス幅のリードバスN個及びライトバスN個と、アドレス毎にデータを記憶し、前記アドレス保持部に保持されるN個のアドレスによりそれぞれアドレスが指定され、前記N個のリードバス及び前記N個のライトバスに一対一に接続されるN個のメモリモジュールと、前記第3サイズのバス幅の部分的なバスである第2スロットを複数含む前記第1サイズのバス幅の出力データバス及び入力データバスとを備え、前記N個のメモリモジュールから、前記N個のリードバスを介して読み出されたデータのうち、前記N個のリードバスに含まれる2以上の前記第1スロットのデータを選択し、選択したデータを前記出力データバスに含まれる前記第2スロットに出力し、前記入力データバスに含まれる前記複数の第2スロットのデータを、それぞれ前記N個のライトバスに含まれる第1スロットのいずれかに出力することで、前記N個のメモリモジュールに書き込む。
 これによれば、本発明に係る制御方法は、読み出しデータの転送サイズ、及び書き込みデータの転送サイズを変えることなく、1回の入出力で複数の全く異なるアドレスのデータへアクセスできる。これにより、本発明に係る制御方法は、データの最小アクセス単位を小さくできるので、高いアクセス効率を実現できる。また、本発明に係る制御は、従来のメモリ装置と比べて実装するメモリデバイスの数を増加させることなく、高いアクセス効率を実現できる。すなわち、本発明に係る制御方法は、高いアクセス効率を実現でき、かつコストの増加を抑制できる。
 なお、本発明は、このようなメモリ装置として実現できるだけでなく、メモリ装置に含まれる特徴的な手段をステップとするメモリ装置の制御方法として実現したり、そのような特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD-ROM等の記録媒体及びインターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
 以上より、本発明は、高いアクセス効率を実現でき、コストの増加を抑制するメモリ装置を提供できる。
図1は、本発明の実施の形態1に係るメモリ装置の構成を示すブロック図である。 図2は、本発明の実施の形態1に係るリードデータ処理部の動作を示す図である。 図3は、本発明の実施の形態1に係るライトデータ処理部の動作を示す図である。 図4は、本発明の実施の形態1に係るグループメモリモジュールのデータ読み出し動作を示す図である。 図5は、本発明の実施の形態1に係るグループメモリモジュールのデータ書き込み動作を示す図である。 図6は、本発明の実施の形態1に係るグループメモリモジュールの連続的なデータ読み出し動作を示す図である。 図7は、本発明の実施の形態2に係るメモリ装置の構成を示すブロック図である。 図8は、本発明の実施の形態2に係るグループメモリモジュールのデータ読み出し動作を示す図である。 図9Aは、本発明の実施の形態2に係るコマンドインターフェースによるコマンド受付動作を示す図である。 図9Bは、本発明の実施の形態2に係るコマンドインターフェースによるコマンド受付動作を示す図である。 図10Aは、本発明の実施の形態2に係るデータ入出力インターフェースによるデータ入出力動作を示す図である。 図10Bは、本発明の実施の形態2に係るデータ入出力インターフェースによるデータ入出力動作を示す図である。 図11は、本発明の実施の形態2に係るメモリ装置の最小アクセス粒度、内部クロック周波数等を示す図である。 図12は、本発明の実施の形態2に係るメモリ装置の変形例の構成を示すブロック図である。
符号の説明
 10、20、30 メモリ装置
 100、100A、100B グループメモリモジュール
 101 アドレス処理部
 102 データ入出力部
 110 ロウアドレス処理部
 120 カラムアドレス処理部
 130 スロットアドレス処理部
 140 ライトデータ処理部
 150 リードデータ処理部
 160、160A、160B、260 データ入出力インターフェース
 161、162 外部データバス
 170、270 コマンドインターフェース
 171、271 コマンド受信部
 172、272 コマンド変換発行部
 173 外部コマンドバス
 174、174A、174B、177、177A、177B、177C、177D カラムアドレス
 175、175A、175B、178、178A、178B、178C、178D ロウアドレス
 176、176A、176B スロットアドレス
 180、180A、180B、180C、180D メモリモジュール
 181 メモリセル
 182 カラムデコーダ
 183 ロウデコーダ
 185、185A、185B、185C、185D 内部メモリリードバス
 186、186A、186B、186C、186D 内部メモリライトバス
 187、187A、187B 出力データバス
 188、188A、188B 入力データバス
 201 外部スロットアドレス
 202 内部スロットアドレス
 203 上位スロットアドレス
 204 下位スロットアドレス
 210 内部スロット
 211 外部スロット
 261 データストローブ信号
 273 外部クロック信号
 以下、本発明に係るメモリ装置の実施の形態について、図面を参照しながら詳細に説明する。
 (実施の形態1)
 本発明の実施の形態1に係るメモリ装置は、複数のメモリモジュールを備え、当該複数のメモリモジュールに対して同時にアクセスする。さらに、本発明の実施の形態1に係るメモリ装置は、データ書き込みの際、外部から入力されたライトデータを複数のスロットに分割し、当該スロットを組み込んだデータを各メモリモジュールに書き込む。また、本発明の実施の形態1に係るメモリ装置は、データ読み出しの際、各メモリモジュールから読み出したデータを複数のスロットに分割し、分割したスロットのうち指定されたスロットを組み合わせたリードデータを出力する。これにより、本発明の実施の形態1に係るメモリ装置は、高いアクセス効率を実現でき、かつコストの増加を抑制できる。
 まず、本発明の実施の形態に係るメモリ装置の構成を説明する。
 図1は、本発明のメモリ装置の構成を示すブロック図である。
 図1に示すメモリ装置10は、mビット単位のデータの読み出し及び書き込みが可能なメモリ装置である。メモリ装置10は、外部コマンドバス173に入力された外部コマンドに従って、外部データバス161に入力されたmビットのライトデータを記憶する。また、メモリ装置10は、外部コマンドバス173に入力された外部コマンドに従って、保持するデータをmビットのリードデータとして外部データバス161に出力する。
 メモリ装置10は、グループメモリモジュール100と、データ入出力インターフェース160と、コマンドインターフェース170とを備える。例えば、メモリ装置10は、1又は複数の半導体集積回路で構成される。
 グループメモリモジュール100は、アドレス処理部101と、データ入出力部102と、4個のメモリモジュール180A~180Dと、内部メモリリードバス185A~185Dと、内部メモリライトバス186A~186Dと、出力データバス187と、入力データバス188とを備える。なお、メモリモジュール180A~180Dを特に区別しない場合には、メモリモジュール180と記す。また、内部メモリリードバス185A~185Dを特に区別しない場合は、内部メモリリードバス185と記す。また、内部メモリライトバス186A~186Dを特に区別しない場合は、内部メモリライトバス186と記す。
 コマンドインターフェース170は、コマンド受信部171と、コマンド変換発行部172とを備える。
 コマンド受信部171は、外部コマンドバス173に供給された外部コマンドを受信する。外部コマンドは、メモリ装置10の動作を指示するコマンドである。具体的には、外部コマンドは、外部アドレスと、読み出し又は書き込みを指定する情報と、動作のタイミングを制御する信号とを含む。また、コマンド受信部171は、グループメモリモジュール100における1回のアクセスに対して、各メモリモジュール180に対する4つの外部コマンドを受信する。
 コマンド変換発行部172は、コマンド受信部171により受信された外部コマンドに含まれる外部アドレスを、メモリ装置10の内部のアドレスである、カラムアドレス174、ロウアドレス175及びスロットアドレス176に変換する。コマンド変換発行部172は、カラムアドレス174をカラムアドレス処理部120に出力し、ロウアドレス175をロウアドレス処理部110に出力し、スロットアドレス176をスロットアドレス処理部130に出力する。カラムアドレス174、ロウアドレス175、及びスロットアドレス176は、それぞれ4個のメモリモジュール180に対応するアドレスを含む。
 また、コマンドインターフェース170は、外部コマンドに含まれる読み出し又は書き込みを指定する情報、及び動作のタイミングを制御する信号等から後述する活性化信号、読み出し指示信号及び書き込み指示信号を生成する。コマンドインターフェース170は、生成した活性化信号、読み出し指示信号及び書き込み指示信号グループメモリモジュール100に出力する。
 アドレス処理部101は、4個のメモリモジュール180のそれぞれに対する4個のアドレスを保持する。アドレス処理部101は、ロウアドレス処理部110と、カラムアドレス処理部120とを備える。
 ロウアドレス処理部110は、コマンド変換発行部172により出力されたロウアドレス175に含まれるメモリモジュール180A~180Dのそれぞれに対応するロウアドレス178A~178Dを保持する。ロウアドレス処理部110は、複数のメモリモジュール180へのアクセス(読み出し又は書き込み)が完了するまで、ロウアドレス178A~178Dを保持する。なお、ロウアドレス178A~178Dを特に区別しない場合には、ロウアドレス178と記す。
 カラムアドレス処理部120は、コマンド変換発行部172により出力されたカラムアドレス174に含まれるメモリモジュール180A~180Dのそれぞれに対応するカラムアドレス177A~177Dを保持する。カラムアドレス処理部120は、複数のメモリモジュール180へのアクセスが完了するまで、カラムアドレス177A~177Dを保持する。なお、カラムアドレス177A~177Dを特に区別しない場合には、カラムアドレス177と記す。
 各メモリモジュール180は、アドレス毎にデータを記憶し、アドレス処理部101に保持される4個のアドレスによりそれぞれアドレスが指定される。4個のメモリモジュール180A~180Dは、それぞれ4個の内部メモリリードバス185A~185D及び4個の内部メモリライトバス186A~186Dに一対一に接続される。メモリモジュール180は、メモリセル181と、カラムデコーダ182と、ロウデコーダ183とを備える。メモリモジュール180は、例えば、DRAMである。
 メモリセル181は、行列状に配置され、それぞれmビットのデータを保持する複数のメモリ素子を含む。
 カラムデコーダ182は、入力されたカラムアドレス177をデコードすることでメモリセル181の所定の列を選択する。ロウデコーダ183は、入力されたロウアドレス178をデコードすることでメモリセル181の所定の行を選択する。
 メモリモジュール180は、メモリセル181において、カラムデコーダ182により選択された列、かつロウデコーダ183により選択された行のアドレスのメモリ素子に保持されるデータの読み出し、及び当該メモリ素子へのデータの書き込みを行う。
 データ入出力部102は、スロットアドレス処理部130と、ライトデータ処理部140と、リードデータ処理部150とを備える。
 スロットアドレス処理部130は、コマンドインターフェース170により出力されるスロットアドレス176を取得する。スロットアドレス処理部130は、各メモリモジュール180へのアクセス完了まで、スロットアドレス176を保持する。
 ライトデータ処理部140は、メモリモジュール180A~180Dに、それぞれ内部メモリライトバス186A~186Dを介して接続される。
 ライトデータ処理部140は、スロットアドレス処理部130により出力されるスロットアドレス176に従って、入力データバス188のライトデータを各内部メモリライトバス186のスロットへ組上げる。また、ライトデータ処理部140は、不要なスロット位置にはデータマスクフラッグを設定する。
 リードデータ処理部150は、メモリモジュール180A~180Dに、内部メモリリードバス185A~186Dを介して接続される。リードデータ処理部150は、スロットアドレス処理部130により出力されるスロットアドレス176に従って、各内部メモリリードバス185のスロットを組上げてリードデータとして出力データバス187に出力する。
 各内部メモリリードバス185のバス幅はmビットであり、各内部メモリライトバス186のバス幅はmビットである。また、出力データバス187及び入力データバス188のバス幅は、それぞれmビットである。
 データ入出力インターフェース160は、出力データバス187を介してリードデータ処理部150に接続される。データ入出力インターフェース160は、出力データバス187のmビットのリードデータを外部データバス161のバス幅に変換する。データ入出力インターフェース160は、変換したリードデータを外部データバス161に出力する。言い換えると、データ入出力インターフェース160は、出力データバス187に出力されたリードデータを外部クロックに合わせて分割し、分割したリードデータを外部データバス161に出力する。ここで、外部クロックは、外部から供給される同期信号である。なお、データ入出力インターフェース160は、外部クロックの代わりに、外部クロックの変化のタイミングに基づくタイミングで変化するタイミング信号を用いてもよい。
 データ入出力インターフェース160は、入力データバス188を介してライトデータ処理部140に接続される。データ入出力インターフェース160は、外部データバス161に供給されたライトデータを外部データバス161のバス幅から、mビットのバス幅に変換する。データ入出力インターフェース160は、変換したライトデータを入力データバス188に出力する。言い換えると、データ入出力インターフェース160は、外部データバス161に入力されたライトデータを、外部クロックに合わせて取り込み、取り込んだライトデータを入力データバス188に出力する。
 次に、本発明の実施の形態1に係るメモリ装置10の動作を説明する。
 図2は、データ読み出し時におけるリードデータ処理部150の動作を示す図である。図2におけるCell0~Cell3は、それぞれメモリモジュール180A~180Dに対応する。
 データ読み出し時には、メモリモジュール180により内部メモリリードバス185A~185Dのそれぞれに、mビットの読み出しデータが出力される。各内部メモリリードバス185は、4つの内部スロット210を含む。内部スロット210は、バス幅mビットの内部メモリリードバス185及び内部メモリライトバス186をそれぞれメモリモジュール数4で分割したデータ単位である。言い換えると、内部スロット210は、内部メモリリードバス185及び内部メモリライトバス186の部分的なバスである。
 リードデータ処理部150は、スロットアドレス処理部130により出力されるスロットアドレス176に従って、内部メモリリードバス185のスロットを組上げてリードデータとして出力データバス187に出力する。
 出力データバス187は、4つの外部スロット211を含む。外部スロット211は、バス幅mビットの出力データバス187及び入力データバス188をそれぞれメモリモジュール数4で分割したデータ単位である。言い換えると、外部スロット211は、出力データバス187及び入力データバス188の部分的なバスである。
 リードデータ処理部150は、スロットアドレス処理部130により出力されるスロットアドレス176に従って、4個の内部メモリリードバス185を介して4個のメモリモジュール180から読み出されたデータのうち、4個の内部スロット210のデータを選択する。リードデータ処理部150は、選択したデータを出力データバス187に含まれる外部スロット211に組み込んで出力する。
 スロットアドレス176は、内部スロット210の位置と、外部スロット211の位置との一対一の対応関係を示す情報である。スロットアドレス176は、4つの外部スロットアドレス201と、4つの外部スロットアドレス201にそれぞれ対応する内部スロットアドレス202とを含む。
 外部スロットアドレス201は、外部スロット211の位置を指定するアドレスである。
 内部スロットアドレス202は、内部スロット210の位置を指定するアドレスである。ここでは、内部スロットアドレス202は4ビットである。
 内部スロットアドレス202は、2ビットの上位スロットアドレス203と、2ビットの下位スロットアドレス204とを含む。
 上位スロットアドレス203は、内部スロットアドレス202の上位2ビットのアドレスである。上位スロットアドレス203は、メモリモジュール180A~180Dのうちいずれかを指定するアドレスである。言い換えると、上位スロットアドレス203は、内部メモリリードバス185A~185D及び内部メモリライトバス186A~186Dのうちいずれかを指定するアドレスである。
 下位スロットアドレス204は、内部スロットアドレス202の下位2ビットのアドレスである。下位スロットアドレス204は、各内部メモリリードバス185及び各内部メモリライトバス186に含まれる内部スロット210のうちいずれかを指定するアドレスである。
 リードデータ処理部150は、上位スロットアドレス203で指定される内部メモリリードバス185に含まれ、かつ下位スロットアドレス204で指定される内部スロット210のデータを選択する。リードデータ処理部150は、スロットアドレス176に従い、当該上位スロットアドレス203及び当該下位スロットアドレス204を含む内部スロットアドレス202に対応する外部スロットアドレス201で指定される位置の外部スロット211に選択したデータを出力する。
 リードデータ処理部150は、スロットアドレス176に含まれる4つの内部スロットアドレス202で指定される内部スロット210をそれぞれ選択する。リードデータ処理部150は、選択した4つの210をそれぞれ、対応する外部スロット211に出力する。
 以上により、リードデータ処理部150は、スロットアドレス176に基づき、4つのメモリモジュール180から読み出された4×mビットのデータに含まれる4つの内部スロット210を選択し、選択した4つの内部スロット210のデータをmビットの1つのリードデータとして出力する。
 図3は、データ書き込み時におけるライトデータ処理部140の動作を示す図である。なお、図3におけるCell0~Cell3は、それぞれメモリモジュール180A~180Dに対応する。
 データ書き込み時には、データ入出力インターフェース160により、入力データバス188に、mビットのライトデータが出力される。入力データバス188は、4つの外部スロット211を含む。
 ライトデータ処理部140は、スロットアドレス処理部130により出力されるスロットアドレス176に従って、入力データバス188のライトデータを各内部メモリライトバス186のスロットへ組上げる。
 各内部メモリライトバス186は、それぞれ4つの内部スロット210を含む。
 ライトデータ処理部140は、入力データバス188に含まれる4個の外部スロット211のデータを、それぞれ4個の内部メモリライトバス186に含まれる内部スロット210のいずれかに出力することで、4個のメモリモジュール180にライトデータを書き込む。
 具体的には、ライトデータ処理部140は、外部スロットアドレス201で指定される位置の外部スロット211のデータを、当該外部スロットアドレス201に対応する上位スロットアドレス203で指定される内部メモリライトバス186における、当該外部スロットアドレス201に対応する下位スロットアドレス204で指定される位置の内部スロット210に出力する。
 ライトデータ処理部140は、スロットアドレス176に含まれる4つの外部スロットアドレス201で指定される外部スロット211のデータをそれぞれ、対応する内部スロット210に出力する。
 また、ライトデータ処理部140は、入力データバス188のmビットのライトデータをスロットアドレス176に従い組み替えたうえ、全ての内部メモリライトバス186にコピーし出力する。この際、ライトデータ処理部140は、書き込みが不要な内部スロット210にはデータマスクフラグを設定し、内部メモリライトバス186に出力する。データマスクフラグは、当該データマスクフラグを付与した内部スロット210のデータをメモリモジュール180に書き込ませないことを指示するフラグである。
 つまり、ライトデータ処理部140は、外部スロット211のデータを出力した内部スロット210以外の内部スロット210に、データマスクフラグを付与する。
 具体的には、ライトデータ処理部140は、外部スロットアドレス201で指定される位置の外部スロット211のデータを、当該外部スロットアドレス201に対応する下位スロットアドレス204で指定される位置の内部スロット210に組み込む。ライトデータ処理部140は、スロットアドレス176に従い、4つの外部スロットアドレス201のデータをそれぞれ4つの内部スロット210に組み込んだ1つのmビットのデータを生成する。
 ライトデータ処理部140は、上位スロットアドレス203で指定される内部メモリライトバス186ごとに、当該上位スロットアドレス203に対応する下位スロットアドレス204で指定される内部スロット210以外の内部スロット210に、データマスクフラグを付与する。
 以上により、ライトデータ処理部140は、スロットアドレス176に基づき、mビットのライトデータに含まれる4つの外部スロット211のデータを、4つのメモリモジュール180に分散して書き込むことができる。
 次に、グループメモリモジュール100によるデータ読み出し動作を説明する。
 図4は、グループメモリモジュール100によるデータ読み出し動作を示す図である。
 内部クロックの周期T1で、ロウアドレス処理部110は、コマンドインターフェース170からロウアドレス175及び活性化信号を含むロウアドレスコマンドを受け取る。内部クロックの周期T2で、ロウアドレス処理部110は、受け取ったロウアドレスコマンドから4つのメモリモジュール180にロウアドレス178及び活性化信号(ロウACT)を同時に発行する。なお、図4に示すロウACTは、Lowレベルで活性化状態を示し、Highレベルで非活性化状態を示す信号である。
 これにより、ロウアドレス178で指定された行のメモリ素子が活性化される。ロウアドレス処理部110は、ロウアドレス178及び活性化信号を、コマンドインターフェース170から非活性化のコマンドが送られるまで保持する。例えば、ロウアドレス処理部110は、周期T4が終わるまでロウアドレス178及び活性化信号を保持する。
 一方、カラムアドレス処理部120は、周期T2で、コマンドインターフェース170からカラムアドレス174及び読み出し指示信号を含むカラムアドレスコマンドを受け取る。カラムアドレス処理部120は、周期T3で、周期T2で活性化された4つのメモリモジュール180の全てに対して、カラムアドレス177及び読み出し指示信号を同時に発行する。これにより、メモリモジュール180は、活性化しているロウアドレス178のメモリ素子のうちカラムアドレス177で指定される列のメモリ素子が記憶しているデータを各メモリモジュール180に接続されている内部メモリリードバス185へ出力する。
 また、メモリモジュール180は、カラムアドレス177及び読み出し指示信号が供給されている間、内部メモリリードバス185へデータを出力し続ける。例えば、カラムアドレス処理部120は、周期T4が終わるまでカラムアドレス177及び読み出し指示信号を保持する。
 周期T4でリードデータ処理部150は、周期T3で各内部メモリリードバス185へ出力されたリードデータをリードデータ処理部150が備えるデータ保持回路(図示せず)に取り込む。
 また、スロットアドレス処理部130は、カラムアドレスコマンドの受け取りタイミングと同期して周期T2でコマンドインターフェース170からスロットアドレス176を含むスロットアドレスコマンドを受け取る。スロットアドレス処理部130は、受け取ったスロットアドレスコマンドを周期T4が終わるまで保持する。スロットアドレス処理部130は、周期T4で、リードデータ処理部150へ内部スロットアドレス202及び外部スロットアドレス201を同時に発行する。
 リードデータ処理部150は、周期T4で受け取った外部スロットアドレス201に従い、外部スロット211毎に、周期T4で受け取った内部スロットアドレス202に含まれる上位スロットアドレス203に従い内部メモリリードバス185を選択し、更に内部スロットアドレス202に含まれる下位スロットアドレス204に従い内部メモリリードバス185内の内部スロット210のデータを選択する。リードデータ処理部150は、周期T5で、選択した4つの内部スロット210を4つの外部スロット211に割り当て、当該4つの外部スロットを含むリードデータをデータ入出力インターフェース160へ出力する。
 例えば、スロットアドレス176に含まれる内部スロットアドレス202と外部スロットアドレス201との4つの組が、「0B-S1」、「1C-S2」、「2A-S0」及び「3D-S3」の場合、内部メモリリードバス185Bの最初の内部スロット210のデータが、リードデータの2番目の外部スロット211に組み込まれ、内部メモリリードバス185Cの2番目の内部スロット210のデータが、リードデータの3番目の外部スロット211に組み込まれ、内部メモリリードバス185Aの3番目の内部スロット210のデータが、リードデータの最初の外部スロット211に組み込まれ、内部メモリリードバス185Dの最後の内部スロット210のデータが、リードデータの最後の外部スロット211に組み込まれる。
 ロウアドレス処理部110は、周期T5でコマンドインターフェース170から非活性コマンドを受け取る。ロウアドレス処理部110は、周期T2で活性化した各メモリモジュール180のロウアドレス178及び活性化信号を非活性状態へ移行させる。
 このように、グループメモリモジュール100は、4つのメモリモジュール180の関連性のないロウアドレスを同時に活性化する。次に、グループメモリモジュール100は、カラムアドレス177及び読み出しコマンドを、4つのメモリモジュール180に同時に発行する。これにより、データ幅mの内部メモリリードバス185に全く独立した4つのデータが出力される。
 また、リードデータ処理部150は、内部スロットアドレス202で指定される各内部メモリリードバス185毎に内部スロット210を選択し、4つの外部スロット211に独立して出力する。これにより、データ入出力インターフェース160へ出力されるリードデータは、m/4ビット単位の関連性の薄い独立したデータとなる。このようにして、本発明に係るメモリ装置10において、データ入出力インターフェース160は、バス幅mを保持しつつ有効なデータ単位(以降、最小アクセス単位)をm/4ビットにまで下げることができる。
 次に、グループメモリモジュール100によるデータ書き込み動作を説明する。
 図5は、グループメモリモジュール100によるデータ書き込み動作を示す図である。
 なお、図4に示すデータ読み出し動作と同様の動作については説明を省略する。
 読み出し動作と同様に、周期T2で、ロウアドレス178で指定されたメモリモジュール180のメモリ素子が活性化される。
 周期T3でライトデータ処理部140は、データ入出力インターフェース160から入力されたライトデータを、ライトデータ処理部140が備えるデータ保持回路(図示せず)に取り込む。また、ライトデータ処理部140は、取り込んだライトデータを、ライトデータ処理部140が備える、各内部メモリライトバス186にデータを出力する出力回路(図示せず)に送る。
 また、周期T3でスロットアドレス処理部130は、ライトデータ処理部140へ内部スロットアドレス202及び外部スロットアドレス201を同時に発行する。
 ライトデータ処理部140は、各メモリモジュール180に書き込むデータと、書き込まないデータを分けるため、データマスクフラグを生成する。周期T4でライトデータ処理部140は、生成したデータマスクフラグを、データの出力と同時に出力する。
 具体的には、ライトデータ処理部140は、周期T3でスロットアドレス処理部130から受け取った内部スロットアドレス202に含まれる上位スロットアドレス203に従い、各外部スロット211のデータが書き込まれるメモリモジュール180と接続される内部メモリライトバス186を選択する。ライトデータ処理部140は、内部スロットアドレス202に含まれる下位スロットアドレス204に従い、選択された内部メモリライトバス186の内部スロット210を有効化する。また、ライトデータ処理部140は、有効化されない内部スロット210に対してデータマスクフラッグを設定する。
 周期T4でライトデータ処理部140は、周期T3で生成したデータ及びデータマスクフラッグを出力する。
 一方、カラムアドレス処理部120は、周期T2で、コマンドインターフェース170からカラムアドレス174及び書き込み指示信号を含むカラムアドレスコマンドを受け取る。周期T4でカラムアドレス処理部120は、周期T2で活性化された4つのメモリモジュールの全てに対してカラムアドレス177及び書き込み指示信号を同時に発行する。これにより、メモリモジュール180は、活性化しているロウアドレス178のメモリ素子のうちカラムアドレス177で指示されるメモリ素子へ、内部メモリライトバス186から入力されるデータを記憶する。ここで、ライトデータ処理部140は、メモリモジュール180にカラムアドレス177及び書き込み指示信号が供給されている間、内部メモリライトバス186にデータを出力し続ける。例えば、ライトデータ処理部140は、周期T4が終わるまでデータを出力し続ける。
 周期T5で、ロウアドレス処理部110は、周期T2で活性化した各メモリモジュール180のロウアドレス178及び活性化信号を非活性状態へ移行させる。
 このように、グループメモリモジュール100は、入力されたライトデータを4つの外部スロット211毎に出力すべき内部メモリライトバス186を選択し、内部スロットアドレス202に従い書き込み不要な内部スロット210にはデータマスクフラッグを添付して出力する。これにより、グループメモリモジュール100は、データ入出力インターフェース160からバス幅mで入力されるライトデータをm/4ビットの単位で任意のメモリモジュール180上の任意のロウアドレス178及びカラムアドレス177の位置のメモリ素子に記憶させることができる。よって、グループメモリモジュール100は、データ書き込みにおいて、入力バス幅mビットを保持しつつ最小アクセス単位をm/4ビットにまで下げることができる。
 次に、グループメモリモジュール100による連続的にデータを読み出す動作を説明する。
 図6は、グループメモリモジュール100による連続的にデータを読み出す動作を示す図である。
 なお、図4に示すデータ読み出し動作と同様の動作については説明を省略する。
 図4に示す読み出し動作と同様に、周期T2で、ロウアドレス178で指定されたメモリモジュール180のメモリ素子が活性化される。
 周期T2でカラムアドレス処理部120は、コマンドインターフェース170から1回目のカラムアドレスコマンドを受け取る。周期T3でカラムアドレス処理部120は、周期T2で活性化された4つのメモリモジュール180へ1回目のカラムアドレス177及び読み出し指示信号を同時に発行する。
 また、周期T3でカラムアドレス処理部120は、コマンドインターフェース170から2回目のカラムアドレスコマンドを受け取る。周期T4でカラムアドレス処理部120は、周期T2で活性化された4つのメモリモジュール180へ2回目のカラムアドレス177及び読み出し指示信号を同時に発行する。
 1回目のカラムアドレス177及び読み出し指示信号の発行を受けて各メモリモジュール180は、周期T3の期間で内部メモリリードバス185に1回目の読み出しデータを出力する。2回目のカラムアドレス177及び読み出し指示信号の発行を受けて各メモリモジュール180は、周期T4の期間で内部メモリリードバス185に2回目の読み出しデータを出力する。
 なお、ここでは、リードコマンドを2回発行する例を説明したが、2回以上であっても同様に処理できる。また、2回以上の場合も、内部クロックのサイクル(周期)単位で、内部メモリリードバス185に出力されるデータが切り替わる。
 リードデータ処理部150は、各内部メモリリードバス185へ出力された1回目の読み出しデータを、周期T4の最初の立ち上がりエッジでデータ保持回路に取り込む。リードデータ処理部150は、取り込んだ1回目の読み出しデータをデータ入出力インターフェース160に出力するための処理を行う。次に、リードデータ処理部150は、各内部メモリリードバス185へ出力された2回目の読み出しデータを、周期T5の最初の立ち上がりエッジでデータ保持回路に取り込む。リードデータ処理部150は、取り込んだ2回目の読み出しデータをデータ入出力インターフェース160に出力するための処理を行う。
 一方、スロットアドレス処理部130は、カラムアドレス処理部120によるカラムアドレスコマンドの受け取りタイミングと同期して、周期T2でコマンドインターフェース170から1回目のスロットアドレスコマンドを受け取る。スロットアドレス処理部130は、受け取った1回目のスロットアドレスコマンドを周期T4の終わりまで保持する。周期T4でスロットアドレス処理部130は、リードデータ処理部150に、保持する1回目のスロットアドレスコマンドに含まれる内部スロットアドレス202及び外部スロットアドレス201を同時に発行する。
 また、スロットアドレス処理部130は、周期T3でコマンドインターフェース170から2回目のスロットアドレスコマンドを受け取る。スロットアドレス処理部130は、受け取った2回目のスロットアドレスコマンドを周期T5の終わりまで保持する。周期T5でスロットアドレス処理部130は、リードデータ処理部150に、保持する2回目のスロットアドレスコマンドに含まれる内部スロットアドレス202及び外部スロットアドレス201を同時に発行する。
 ここで、リードデータ処理部150が備えるデータ保持回路は、複数の段数を有してもよいし、FiFo(Fast in Fast out)バッファ等であってもよい。
 リードデータ処理部150は、周期T4で受け取った1回目の外部スロットアドレス201に従い、外部スロット211毎に、周期T4で受け取った1回目の内部スロットアドレス202に含まれる上位スロットアドレス203に従い内部メモリリードバス185を選択し、更に内部スロットアドレス202に含まれる下位スロットアドレス204に従い内部メモリリードバス185内の内部スロット210のデータを選択する。リードデータ処理部150は、周期T5で、選択した4つの内部スロット210のデータを4つの外部スロット211に割り当て、当該4つの外部スロット211を含む1回目のリードデータをデータ入出力インターフェース160へ出力する。
 また、リードデータ処理部150は、周期T5で受け取った2回目の外部スロットアドレス201に従い、外部スロット211毎に、周期T5で受け取った2回目の内部スロットアドレス202に含まれる上位スロットアドレス203に従い内部メモリリードバス185を選択し、更に内部スロットアドレス202に含まれる下位スロットアドレス204に従い内部メモリリードバス185内の内部スロット210のデータを選択する。リードデータ処理部150は、周期T6で、選択した4つの内部スロット210のデータを4つの外部スロット211に割り当て、当該4つの外部スロット211を含む2回目のリードデータをデータ入出力インターフェース160へ出力する。
 ここで、周期T4及び周期T5で受け取る1回目の内部スロットアドレス202及び外部スロットアドレス201と、2回目の内部スロットアドレス202及び外部スロットアドレス201とは異なってもよいし、同一であってもよい。すなわち、グループメモリモジュール100は、外部から指定された1回目及び2回目のスロットアドレス176に従い、任意のスロットを選択できる。
 このように、メモリ装置10は、データ入出力インターフェース160の出力においてバス幅mビットを保持しつつ有効なデータ単位をm/4ビットに下げたまま、毎サイクルリードデータを出力できる。
 なお、ここでは連続の読み出し動作を説明したが、メモリ装置10は、連続の書き込み動作も同様に行うことができる。つまり、連続の書き込み動作は、1回目の書き込み動作と、2回目の書き込み動作とのライトコマンド及びライトデータの入力タイミングが1サイクルずれたパイプライン動作になる。
 以上より、本発明の実施の形態1に係るメモリ装置10は、読み出しデータの転送サイズ、及び書き込みデータの転送サイズを変えることなく、1回の入出力で複数の全く異なるアドレスのデータへアクセスできる。これにより、本発明の実施の形態1に係るメモリ装置10は、データの最小アクセス単位を小さくできるので、高いアクセス効率を実現できる。また、本発明の実施の形態1に係るメモリ装置10は、従来のメモリ装置と比べて実装するメモリデバイスの数を増加させることなく、高いアクセス効率を実現できる。すなわち、本発明の実施の形態1に係るメモリ装置10は、高いアクセス効率を実現でき、かつコストの増加を抑制できる。
 (実施の形態2)
 本発明の実施の形態2に係るメモリ装置は、上述した実施の形態1に係るグループメモリモジュール100を2つ備える。
 まず、本発明の実施の形態2に係るメモリ装置の構成を説明する。
 図7は、本発明の実施の形態2に係るメモリ装置の構成を示すブロック図である。なお、図1と同様の要素には同一の符号を付しており詳細な説明は省略する。
 図7に示すメモリ装置20は、グループメモリモジュール100A及び100Bと、データ入出力インターフェース260と、コマンドインターフェース270とを備える。
 グループメモリモジュール100A及び100Bは、それぞれ図1に示すグループメモリモジュール100と同一の構成である。
 コマンドインターフェース270は、コマンド受信部271と、コマンド変換発行部272とを備える。
 コマンド受信部271は、外部コマンドバス173に入力されたグループメモリモジュール100A及び100Bに対する外部コマンドを受信する。
 コマンド変換発行部272は、コマンド受信部271により受信されたグループメモリモジュール100Aに対する外部コマンドに含まれる外部アドレスを、グループメモリモジュール100Aの内部のアドレスである、カラムアドレス174A、ロウアドレス175A及びスロットアドレス176Aに変換する。コマンド変換発行部272は、カラムアドレス174A、ロウアドレス175A及びスロットアドレス176Aをそれぞれ、グループメモリモジュール100Aのカラムアドレス処理部120、ロウアドレス処理部110、及びスロットアドレス処理部130に出力する。
 コマンド変換発行部272は、コマンド受信部271により受信されたグループメモリモジュール100Bに対する外部コマンドに含まれる外部アドレスを、グループメモリモジュール100Bの内部のアドレスである、カラムアドレス174B、ロウアドレス175B及びスロットアドレス176Bに変換する。コマンド変換発行部272は、カラムアドレス174B、ロウアドレス175B及びスロットアドレス176Bをそれぞれ、グループメモリモジュール100Bのカラムアドレス処理部120、ロウアドレス処理部110、及びスロットアドレス処理部130に出力する。
 データ入出力インターフェース260は、出力データバス187Aに出力されたグループメモリモジュール100Aからのリードデータを外部データバス161のバス幅に変換し、変換したリードデータを外部データバス161に出力する。
 データ入出力インターフェース260は、出力データバス187Bに出力されたグループメモリモジュール100Bからのリードデータを外部データバス161のバス幅に変換し、変換したリードデータを外部データバス161に出力する。
 データ入出力インターフェース260は、外部データバス161に入力されたライトデータを、外部データバス161のバス幅から、mビットのバス幅に変換し、変換したライトデータを入力データバス188A及び188Bに出力する。
 出力データバス187A、187B、入力データバス188A及び188Bのバス幅は、それぞれmビットである。
 次に、メモリ装置20の動作を説明する。
 図8は、メモリ装置20によるデータ読み出し動作を示す図である。
 2つのグループメモリモジュールからデータを読み出す動作を以下に示す。
 周期T1でグループメモリモジュール100Aは、ロウアドレス175A及び活性化信号をコマンドインターフェース270から受け取る。周期T2でグループメモリモジュール100Aは、4つのメモリモジュール180を同時に活性化する。
 一方、周期T2でグループメモリモジュール100Bは、ロウアドレス175B及び活性化信号をコマンドインターフェース270から受け取る。周期T3でグループメモリモジュール100Bは、4つのメモリモジュール180を同時に活性化する。
 周期T2でグループメモリモジュール100Aは、コマンドインターフェース270からカラムアドレス174A及びスロットアドレス176Aを受け取る。周期T3でグループメモリモジュール100Aは、メモリモジュール180に対してカラムアドレス177を発行する。周期T4でグループメモリモジュール100Aのリードデータ処理部150は、内部メモリリードバス185に出力されたデータをデータ保持回路に取り込む。
 周期T3でグループメモリモジュール100Bは、コマンドインターフェース270からカラムアドレス174B及びスロットアドレス176Bを受け取る。周期T4でグループメモリモジュール100Bは、メモリモジュール180に対してカラムアドレス177を発行する。周期T5でグループメモリモジュール100Bのリードデータ処理部150は、内部メモリリードバス185に出力されたデータをデータ保持回路に取り込む。
 周期T5でグループメモリモジュール100Aは、スロットアドレス176Aに従い、内部スロット210を外部スロット211に組み込み、組み込んだリードデータをデータ入出力インターフェース260へ出力する。
 周期T6でグループメモリモジュール100Bは、スロットアドレス176Bに従い、内部スロット210を外部スロット211に組み込み、組み込んだリードデータをデータ入出力インターフェース260へ出力する。
 以上のように、メモリ装置20は、各グループメモリモジュール100A及び100Bを実施の形態1のグループメモリモジュール100と同様に制御する。メモリ装置20は、コマンドインターフェース270から各グループメモリモジュール100A及び100Bに送るコマンドを1周期ずらす。これにより、各グループメモリモジュール100A及び100Bで発生するアクセス不可期間を、他のグループメモリモジュール100A及び100Bのアクセス期間として利用できる。よって、メモリ装置20は、外部データバス161の効率を向上できる。
 なお、ここでは、メモリ装置20は、2個のグループメモリモジュール100A及び100Bを備えるとしたが、2個以上のグループメモリモジュールを備えてもよい。
 また、コマンドインターフェース270及びデータ入出力インターフェース260は、以下に示す方式を用いて、コマンドの受信及びリードデータの出力を行える。
 図9A及び図9Bは、コマンドインターフェース270によるコマンド受付動作を示す図である。
 コマンドインターフェース270は、図9Aに示すコマンド受付方式(以下「方式X」)と、図9Bに示すコマンド受付方式(以下「方式Y」)のうちいずれかを用いればよい。
 方式Xは、コマンドインターフェース270が、外部クロック信号273の1アクセスサイクル内に2個の外部コマンド301及び302を受信する方式である。外部クロック信号273は、メモリ装置20の外部から供給される同期信号である。方式Xでは、コマンドインターフェース270は、M個のグループメモリモジュールに対する外部コマンドをM/2サイクルで受信する。なお、コマンドインターフェース270は、外部クロック信号273の代わりに、外部クロック信号273の変化のタイミングに基づくタイミングで変化するタイミング信号を用いてもよい。
 方式Yは、コマンドインターフェース270が、外部クロック信号273の1アクセスサイクル内にM個の外部コマンド301~30Mを受信する方式である。方式Yでは、コマンドインターフェース270は、M個のグループメモリモジュールに対する外部コマンドを1サイクルで受信する。
 図10A及び図10Bは、データ入出力インターフェースによるデータ入出力動作を示す図である。
 データ入出力インターフェース260は、図10Aに示すデータ入出力方式(以下「方式P」)と、図10Bに示すデータ入出力方式(以下「方式Q」)のうちいずれかを用いればよい。
 方式Pは、データ入出力インターフェース260が、データストローブ信号261の1アクセスサイクル内に外部データバス幅の2つ分のデータを入出力する方式である。つまり、データ入出力インターフェース260は、データストローブ信号261の1サイクル内に、外部データバス161に供給された当該外部データバス161のバス幅のデータを2つ分受信する。データ入出力インターフェース260は、データストローブ信号261の1サイクル内に、外部データバス161のバス幅に変換した2つ分のリードデータを外部データバス161に出力する。
 データストローブ信号261は、メモリ装置20の外部から供給される同期信号である。なお、データ入出力インターフェース260は、データストローブ信号261の代わりに、データストローブ信号261の変化のタイミングに基づくタイミングで変化するタイミング信号を用いてもよい。
 方式Pでは、データ入出力インターフェース260は、外部データバス161との間でM個のリードデータ又はM個のライトデータを、M/2サイクルで受信又は送信する。
 方式Qは、データ入出力インターフェース260が、データストローブ信号261の1アクセスサイクル内に外部データバス幅の1つ分のデータを入出力する方式である。方式Qでは、データ入出力インターフェース260は、外部データバス161との間でM個のリードデータ又はM個のライトデータを、Mサイクルで受信又は送信する。
 図11は、従来手法と、上記方式X、方式Y、方式P及び方式Qを組み合わせた本願手法とにおけるバンド幅、最小アクセス粒度(最小アクセス単位)、外部クロック周波数、内部クロック周波数、外部データバス周波数、及び外部データバス幅を示す図である。
 従来手法は、データバス幅が4ByteのDDR2-800である。また、外部クロック周波数は、外部クロック信号273の周波数であり、外部データバス周波数は、データストローブ信号261の周波数である。
 図11に示すように、従来手法及び本願手法では、バンド幅及び外部クロック周波数がそれぞれ3200MByte/s及び400MHzであり、同一である。
 方式Xと方式Pとを組み合わせた場合、内部クロック周波数及び外部クロック周波数を変えることなく、かつデータバス幅を狭めることなく、最小アクセス単位を小さくできる。
 方式Xと方式Qとを組み合わせた場合、外部データバス幅を広げメモリ帯域を確保するとともに内部クロック周波数を下げることができる。これにより、メモリ装置20の消費電力を低減できる。
 方式Yと方式Pを組み合わせた場合、内部クロック周波数及び外部クロック周波数を変えることなく、かつデータバス幅を狭めることなく、最小アクセス単位を小さくできる。さらに、方式Yと方式Pを組み合わせた場合、外部データバス161の無効期間の発生によるデータ転送効率の悪化を軽減できる。この無効期間は、各グループメモリモジュール100A及び100Bに対して発行するコマンドが同一サイクルで2つ以上ある場合にどちらかを優先する事で他方のコマンドの発行が遅れることにより発生する。
 方式Yと方式Qを組み合わせた場合、データメモリ帯域を減らすことなく、内部クロック周波数及び外部データクロック周波数を下げることができる。これにより、メモリ装置20の消費電力を低減できる。さらに、方式Yと方式Qを組み合わせた場合、外部データバス161の無効期間の発生によるデータ転送効率の悪化を軽減できる。
 以上、本発明の実施の形態に係るメモリ装置10及び20について説明したが、本発明は、この実施の形態に限定されるものではない。
 例えば、上記実施の形態2の説明では、メモリ装置20は、1つのデータ入出力インターフェース260を備えるとしたが、以下に示す構成であってもよい。
 図12は、本発明の実施の形態2に係るメモリ装置の変形例の構成を示す図である。
 図12に示すメモリ装置30は、図7に示すメモリ装置20に対して、2つのデータ入出力インターフェース160A及び160Bを備える点が異なる。
 データ入出力インターフェース160Aは、出力データバス187Aのmビットのリードデータを外部データバス161のバス幅に変換し、変換したリードデータを外部データバス161に出力する。データ入出力インターフェース160Aは、外部データバス161に供給されたライトデータを外部データバス161のバス幅から、mビットのバス幅に変換し、変換したライトデータを入力データバス188Aに出力する。
 データ入出力インターフェース160Bは、出力データバス187Bのmビットのリードデータを外部データバス162のバス幅に変換し、変換したリードデータを外部データバス162に出力する。データ入出力インターフェース160Aは、外部データバス162に供給されたライトデータを外部データバス162のバス幅から、mビットのバス幅に変換し、変換したライトデータを入力データバス188Bに出力する。
 また、図9A、図9Bに示すコマンドインターフェース270の受信方式を、上述した実施の形態1に係るコマンドインターフェース170に適用してもよい。この場合、コマンドインターフェース170は、外部クロック信号273の1サイクルの間に、各メモリモジュール180に対する複数の外部コマンドを受け付けてもよい。つまり、コマンドインターフェース170は、外部クロック信号273の1サイクルの間に、2以上の外部コマンドを受け付けてもよいし、メモリモジュール180の数と同数のコマンドを受け付けてもよい。
 また、コマンドインターフェース270は、外部クロック信号273の1サイクルの間に、グループメモリモジュール100A及び100Bの数と同数のコマンドを受け付けてもよし、複数のグループメモリモジュール100A及び100Bに含まれるメモリモジュール180の総数と等しい数のコマンドを受け付けてもよい。
 また、コマンドインターフェース270は、各グループメモリモジュール100A及び100B、又は各グループメモリモジュール100A及び100B内の複数のメモリモジュール180に対して同時にコマンドが発行する機能を有し、1アクセスサイクル内にグループメモリモジュールの数、又は複数のグループメモリモジュールに含まれるメモリモジュール180の総数と等しい数以上の外部コマンドを受信してよい。
 また、上記説明では、コマンドインターフェース270が、時分割で複数の外部コマンドを受信しているが、外部コマンドバス173をバス幅分割して転送する方式であってもよい。
 また、上記説明では、データ入出力インターフェース260は、外部データバス161との間で、時分割でデータを送受信しているが、外部データバス161をバス幅分割して転送する方式であってもよい。
 また、上記ロウアドレス178は、メモリセル181のページアドレスであってもよい。
 また、内部スロットアドレス202に含まれる、メモリモジュール180を指定するビットと、スロットを指定するビットとは、任意の位置でよい。例えば、下位2ビットでメモリモジュールを指定し、上位2ビットでスロットを指定してもよい。
 また、グループメモリモジュール100、100A及び100Bが備えるメモリモジュール180の数は4個に限定されるものではなく、2以上であればよい。
 また、上記説明では、各内部メモリリードバス185及び各内部メモリライトバス186に含まれる4つの内部スロット210のうちそれぞれ1つが選択される例を述べたが、ある内部メモリリードバス185又は内部メモリライトバス186に含まれる4つの内部スロットのうち2以上が選択され、他の内部メモリリードバス185又は内部メモリライトバス186に含まれる4つの内部スロットがいずれも選択されなくてもよい。
 また、上記説明では、内部メモリリードバス185及び内部メモリライトバス186のバス幅と、出力データバス187及び入力データバス188のバス幅とが等しいとしたが、異なってもよい。つまり、内部メモリリードバス185及び内部メモリライトバス186に含まれる内部スロット210の数と、出力データバス187及び入力データバス188に含まれる外部スロット211の数とが異なってもよい。
 さらに、上記説明では、内部メモリリードバス185及び内部メモリライトバス186に含まれる内部スロット210の数と、出力データバス187及び入力データバス188に含まれる外部スロット211の数とは、メモリモジュール180の数と等しいとしたが、異なってもよい。
 なお、上述したように、内部メモリリードバス185及び内部メモリライトバス186のバス幅と、出力データバス187及び入力データバス188のバス幅とを等しくし、かつ内部メモリリードバス185及び内部メモリライトバス186に含まれる内部スロット210の数と、出力データバス187及び入力データバス188に含まれる外部スロット211の数とを、メモリモジュール180の数と等しくすることが好ましい。これにより、比較的単純な構成により上述したメモリ装置10を実現できるとともに、効率的に最小アクセス単位を小さくできる。
 本発明は、メモリ装置及びメモリ制御方法に適用でき、特に、複数のDRAM等を備えるメモリ装置に適用できる。

Claims (16)

  1.  第1サイズのデータの読み出し及び書き込みが可能なメモリ装置であって、
     N(N:2以上の整数)個のアドレスを保持するアドレス保持部と、
     第3サイズのバス幅の部分的なバスである第1スロットを複数含む第2サイズのバス幅のリードバスN個及びライトバスN個と、
     アドレス毎にデータを記憶し、前記アドレス保持部に保持されるN個のアドレスによりそれぞれアドレスが指定され、前記N個のリードバス及び前記N個のライトバスに一対一に接続されるN個のメモリモジュールと、
     前記第3サイズのバス幅の部分的なバスである第2スロットを複数含む前記第1サイズのバス幅の出力データバス及び入力データバスと、
     前記N個のメモリモジュールから、前記N個のリードバスを介して読み出されたデータのうち、前記N個のリードバスに含まれる2以上の前記第1スロットのデータを選択し、選択したデータを前記出力データバスに含まれる前記第2スロットに出力するリードデータ処理部と、
     前記入力データバスに含まれる前記複数の第2スロットのデータを、それぞれ前記N個のライトバスに含まれる第1スロットのいずれかに出力することで、前記N個のメモリモジュールに書き込むライトデータ処理部とを備える
     ことを特徴とするメモリ装置。
  2.  前記メモリ装置は、さらに、
     前記第1スロットの位置と、前記第2スロットの位置との一対一の対応関係を示すスロットアドレスを取得するスロットアドレス処理部を備え、
     前記リードデータ処理部は、前記N個のリードバスに含まれる前記複数の第1スロットのうち、前記スロットアドレスに示される位置の第1スロットのデータを選択し、選択したデータを当該第1スロットの位置に対応する位置の前記第2スロットに出力し、
     前記ライトデータ処理部は、前記入力データバスに含まれる前記第2スロットのデータを、前記スロットアドレスに示される当該第2スロットの位置に対応する位置の前記第1スロットに出力する
     ことを特徴とする請求項1記載のメモリ装置。
  3.  前記スロットアドレスは、前記複数の第2スロットの位置をそれぞれ指定する第2スロットアドレスと、当該第2スロットアドレスのそれぞれに対応する第1スロットの位置を指定する第1スロットアドレスとを含み、
     前記第1スロットアドレスは、前記N個のリードバス及びライトバスのいずれかを指定する第1アドレスと、前記N個のリードバス及びライトバスのそれぞれに含まれる前記第1スロットの位置を指定する第2アドレスとを含み、
     前記リードデータ処理部は、前記第1アドレスで指定されるリードバスに含まれ、かつ前記第2アドレスで指定される第1スロットのデータを選択し、選択したデータを当該第1アドレス及び当該第2アドレスを含む第1スロットアドレスに対応する前記第2スロットアドレスで指定される位置の第2スロットに出力し、
     前記ライトデータ処理部は、前記第2スロットアドレスで指定される位置の第2スロットのデータを、当該第2スロットアドレスに対応する前記第1スロットアドレスに含まれる前記第1アドレスで指定されるライトバスにおける、当該第1スロットアドレスに含まれる前記第2アドレスで指定される位置の第1スロットに出力する
     ことを特徴とする請求項2記載のメモリ装置。
  4.  前記ライトデータ処理部は、前記第2スロットのデータを出力した第1スロット以外の第1スロットに、当該第1スロットのデータを前記メモリモジュールに書き込ませないことを指示するフラグを付与する
     ことを特徴とする請求項1記載のメモリ装置。
  5.  前記ライトデータ処理部は、前記第2スロットアドレスで指定される位置の第2スロットのデータを、前記N個のライトバスの全てにおける、当該第2スロットアドレスに対応する第1スロットアドレスに含まれる前記第2アドレスで指定される位置の第1スロットに出力し、前記第1アドレスで指定されるライトバスごとに、当該第1アドレスに対応する前記第2アドレスで指定される第1スロット以外の第1スロットに、当該第1スロットのデータを前記メモリモジュールに書き込ませないことを指示するフラグを付与する
     ことを特徴とする請求項3記載のメモリ装置。
  6.  前記第1サイズと、前記第2サイズは同一である
     ことを特徴とする請求項1記載のメモリ装置。
  7.  前記各リードバス及び前記各ライトバスはそれぞれ、N個の前記第1スロットを含み、
     前記出力データバス及び入力データバスはそれぞれ、N個の前記第2スロットを含む
     ことを特徴とする請求項6記載のメモリ装置。
  8.  メモリ装置は、さらに、
     外部から供給される同期信号に基づく信号の1サイクル内に、複数のコマンドを受信し、受信したコマンドを、前記N個のメモリモジュールのアドレス、及び前記スロットアドレスに変換するコマンドインターフェースを備え、
     前記アドレス保持部は、前記コマンドインターフェースにより変換されたN個のアドレスを保持し、
     前記スロットアドレス処理部は、前記コマンドインターフェースにより変換されたスロットアドレスを取得する
     ことを特徴とする請求項2記載のメモリ装置。
  9.  前記コマンドインターフェースは、前記同期信号に基づく信号の1サイクル内に、N個の前記コマンドを受信する
     ことを特徴とする請求項8記載のメモリ装置。
  10.  前記メモリ装置は、さらに、
     外部データバスに供給された書き込みデータを前記外部データバスのバス幅から前記第1サイズに変換し、変換した書き込みデータを前記入力データバスに出力し、前記出力データバスの第1サイズの読み出しデータを前記外部データバスのバス幅に変換し、変換した読み出しデータを前記外部データバスに出力するデータ入出力インターフェースを備え、
     前記データ入出力インターフェースは、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスに供給された前記外部データバスのバス幅のデータを複数受信し、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスのバス幅に変換した複数の前記読み出しデータを前記外部データバスに出力する
     ことを特徴とする請求項1記載のメモリ装置。
  11.  前記メモリ装置は、
     前記N個のメモリモジュール、前記N個のリードバス、前記N個のライトバス、前記アドレス保持部、前記リードデータ処理部、前記ライトデータ処理部、前記出力データバス、前記入力データバス、及びスロットアドレス処理部をそれぞれ備える複数のグループメモリモジュールと、
     外部から供給されるコマンドを、前記複数のグループメモリモジュールのアドレス、及び前記スロットアドレスに変換するコマンドインターフェースを備え、
     前記各グループメモリモジュールの前記アドレス保持部は、前記コマンドインターフェースにより変換されたアドレスをそれぞれ保持し、
     前記各グループメモリモジュールの前記スロットアドレス処理部は、前記コマンドインターフェースにより変換されたスロットアドレスを取得する
     ことを特徴とする請求項2記載のメモリ装置。
  12.  前記コマンドインターフェースは、外部から供給される同期信号に基づく信号の1サイクル内に、複数の前記コマンドを受信する
     ことを特徴とする請求項11記載のメモリ装置。
  13.  前記コマンドインターフェースは、前記同期信号に基づく信号の1サイクル内に、前記複数のグループメモリの数の前記コマンドを受信する
     ことを特徴とする請求項12記載のメモリ装置。
  14.  前記メモリ装置は、さらに、
     外部データバスに供給された書き込みデータを前記外部データバスのバス幅から前記第1サイズに変換し、変換した書き込みデータを前記複数のグループメモリモジュールの前記入力データバスに出力し、前記複数のグループメモリモジュールの前記出力データバスの第1サイズの読み出しデータを前記外部データバスのバス幅に変換し、変換した読み出しデータを前記外部データバスに出力するデータ入出力インターフェースを備え、
     前記データ入出力インターフェースは、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスに供給された前記外部データバスのバス幅のデータを複数受信し、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスのバス幅に変換した複数の前記読み出しデータを前記外部データバスに出力する
     ことを特徴とする請求項11記載のメモリ装置。
  15.  前記メモリ装置は、さらに、
     前記複数のグループメモリモジュールにそれぞれ対応し、外部データバスに供給された書き込みデータを前記外部データバスのバス幅から前記第1サイズに変換し、変換した書き込みデータを対応する前記グループメモリモジュールの前記入力データバスに出力し、対応する前記グループメモリモジュールの前記出力データバスの第1サイズの読み出しデータを前記外部データバスのバス幅に変換し、変換した読み出しデータを前記外部データバスに出力する複数のデータ入出力インターフェースを備え、
     前記複数のデータ入出力インターフェースは、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスに供給された前記外部データバスのバス幅のデータを複数受信し、外部から供給される同期信号に基づく信号の1サイクル内に、前記外部データバスのバス幅に変換した複数の前記読み出しデータを前記外部データバスに出力する
     ことを特徴とする請求項11記載のメモリ装置。
  16.  第1サイズのデータの読み出し及び書き込みが可能なメモリ装置の制御方法であって、
     前記メモリ装置は、
     N(N:2以上の整数)個のアドレスを保持するアドレス保持部と、
     第3サイズのバス幅の部分的なバスである第1スロットを複数含む第2サイズのバス幅のリードバスN個及びライトバスN個と、
     アドレス毎にデータを記憶し、前記アドレス保持部に保持されるN個のアドレスによりそれぞれアドレスが指定され、前記N個のリードバス及び前記N個のライトバスに一対一に接続されるN個のメモリモジュールと、
     前記第3サイズのバス幅の部分的なバスである第2スロットを複数含む前記第1サイズのバス幅の出力データバス及び入力データバスとを備え、
     前記N個のメモリモジュールから、前記N個のリードバスを介して読み出されたデータのうち、前記N個のリードバスに含まれる2以上の前記第1スロットのデータを選択し、選択したデータを前記出力データバスに含まれる前記第2スロットに出力し、
     前記入力データバスに含まれる前記複数の第2スロットのデータを、それぞれ前記N個のライトバスに含まれる第1スロットのいずれかに出力することで、前記N個のメモリモジュールに書き込む
     ことを特徴とする制御方法。
PCT/JP2008/003832 2007-12-21 2008-12-18 メモリ装置及びその制御方法 WO2009081551A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN2008801221216A CN101903868B (zh) 2007-12-21 2008-12-18 存储装置以及其控制方法
JP2009527380A JP5204777B2 (ja) 2007-12-21 2008-12-18 メモリ装置及びその制御方法
US12/808,868 US8347026B2 (en) 2007-12-21 2008-12-18 Memory device and memory device control method
EP08865074A EP2226727A1 (en) 2007-12-21 2008-12-18 Memory device and memory device control method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2007-330352 2007-12-21
JP2007330352 2007-12-21

Publications (1)

Publication Number Publication Date
WO2009081551A1 true WO2009081551A1 (ja) 2009-07-02

Family

ID=40800869

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2008/003832 WO2009081551A1 (ja) 2007-12-21 2008-12-18 メモリ装置及びその制御方法

Country Status (5)

Country Link
US (1) US8347026B2 (ja)
EP (1) EP2226727A1 (ja)
JP (1) JP5204777B2 (ja)
CN (1) CN101903868B (ja)
WO (1) WO2009081551A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2491377A (en) * 2011-05-31 2012-12-05 British Broadcasting Corp Method and apparatus for memory access in an interleaver
JP6449702B2 (ja) * 2015-03-30 2019-01-09 ルネサスエレクトロニクス株式会社 半導体装置
TWI556100B (zh) * 2015-10-26 2016-11-01 點序科技股份有限公司 快閃記憶體裝置及其交錯存取方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05100948A (ja) * 1991-04-01 1993-04-23 Motorola Inc 2乗演算を実行する速度改良型データ処理システム及びその方法
JPH10116226A (ja) * 1996-07-31 1998-05-06 Lg Semicon Co Ltd 半導体記憶装置のアドレス整列装置
JP2001243771A (ja) * 2000-02-28 2001-09-07 Internatl Business Mach Corp <Ibm> メモリ・チップ及びデータ記憶方法
JP2005517242A (ja) 2002-02-06 2005-06-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ アドレス空間、バスシステム、メモリコントローラ及びデバイスシステム
WO2006091283A2 (en) * 2005-02-23 2006-08-31 Micron Technology, Inc. Memory device and method having multiple internal data buses and memory bank interleaving

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6370636B1 (en) * 1996-07-31 2002-04-09 Hyundai Electronics Industries Co., Ltd. Accessing byte lines from dual memory blocks and aligning for variable length instruction execution
US6405273B1 (en) * 1998-11-13 2002-06-11 Infineon Technologies North America Corp. Data processing device with memory coupling unit
JP2000315173A (ja) * 1999-04-30 2000-11-14 Matsushita Electric Ind Co Ltd メモリ制御装置
DE60112946T2 (de) 2000-06-29 2006-02-23 Kyowa Yuka Co. Ltd. Harzzusammensetzung
KR100468761B1 (ko) * 2002-08-23 2005-01-29 삼성전자주식회사 분할된 시스템 데이터 버스에 연결되는 메모리 모듈을구비하는 반도체 메모리 시스템
JPWO2005109205A1 (ja) * 2004-04-15 2008-03-21 松下電器産業株式会社 情報処理装置およびデータアクセス方法
CN101065725A (zh) * 2004-11-25 2007-10-31 松下电器产业株式会社 命令供给装置
US7702846B2 (en) * 2005-03-15 2010-04-20 Panasonic Corporation Memory controller, nonvolatile storage device, nonvolatile storage system, and data writing method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05100948A (ja) * 1991-04-01 1993-04-23 Motorola Inc 2乗演算を実行する速度改良型データ処理システム及びその方法
JPH10116226A (ja) * 1996-07-31 1998-05-06 Lg Semicon Co Ltd 半導体記憶装置のアドレス整列装置
JP2001243771A (ja) * 2000-02-28 2001-09-07 Internatl Business Mach Corp <Ibm> メモリ・チップ及びデータ記憶方法
JP2005517242A (ja) 2002-02-06 2005-06-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ アドレス空間、バスシステム、メモリコントローラ及びデバイスシステム
WO2006091283A2 (en) * 2005-02-23 2006-08-31 Micron Technology, Inc. Memory device and method having multiple internal data buses and memory bank interleaving

Also Published As

Publication number Publication date
JP5204777B2 (ja) 2013-06-05
US8347026B2 (en) 2013-01-01
JPWO2009081551A1 (ja) 2011-05-06
US20110167228A1 (en) 2011-07-07
CN101903868A (zh) 2010-12-01
EP2226727A1 (en) 2010-09-08
CN101903868B (zh) 2012-07-04

Similar Documents

Publication Publication Date Title
US7907469B2 (en) Multi-port memory device for buffering between hosts and non-volatile memory devices
JP6018118B2 (ja) マイクロスレッドメモリ
JP5231642B2 (ja) メモリモジュール内の独立制御式仮想メモリ装置
JP5365336B2 (ja) メモリ制御装置およびメモリ制御方法
JP5351145B2 (ja) メモリ制御装置、メモリシステム、半導体集積回路およびメモリ制御方法
JP2726578B2 (ja) Dramの回復を制御する方法
JP2002056676A (ja) 半導体記憶装置
US20060218315A1 (en) Memory access control circuit
JP2002063069A (ja) メモリ制御装置、データ処理システム及び半導体装置
US9607667B1 (en) Memory device and electronic apparatus including the same
US6396747B2 (en) Semiconductor memory device capable of high speed input/output of wide bandwidth data by improving usage efficiency of external data bus
JP2010277216A (ja) メモリコントローラ、システムおよび半導体メモリのアクセス制御方法
US7996601B2 (en) Apparatus and method of partially accessing dynamic random access memory
US6502173B1 (en) System for accessing memory and method therefore
JP5204777B2 (ja) メモリ装置及びその制御方法
JP2007213055A (ja) シンクロナスダイナミックランダムアクセスメモリを用いたフレームデータの転送方法及びフレームデータのソースドライバへの転送方法並びにタイミング制御モジュール
JP2013058277A (ja) 半導体装置
US20090319708A1 (en) Electronic system and related method with time-sharing bus
US8099530B2 (en) Data processing apparatus
JP2007059047A (ja) 半導体メモリシステムおよび半導体メモリチップ
JP2004127305A (ja) メモリ制御装置
WO2023189358A1 (ja) メモリ制御装置
EP4379721A1 (en) Address decoding method, and memory controller and semiconductor memory system using the same
US20230176786A1 (en) Read clock start and stop for synchronous memories
JP2008251060A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200880122121.6

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2009527380

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08865074

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12808868

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2008865074

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE