← Back to Patent Explorer
EP0303752A1 Expired / Lapsed EP ⏱️ 0.0 years remaining

Memory access control device in a mixed data format system

Assignee: International Business Machines Corp
•
Filing: 1987-08-20
•
Granted: —
•
Expires: 2007-08-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The memory access control device to be used to access a memory organized in 2 n byte words and having the capability of addressing each byte in a word under control of byte select signals (BS), through a m-byte large bus 22, with 2 n /m being an integer k, to write or read data byte bursts comprising a variable count of bytes. To perform a write operation, k sets of m bytes received from bus 22 are stored into 2 n registers 40 during each bus period T, and then they are transferred into buffer 30 which comprises successive location of 2 n bytes positions, through an alignment and control logic 42, which causes the buffer to be written in such a way that it maps the data arrangement in memory, which depends upon the least significant bits of the memory starting address determining the byte location within the memory words. Once the complete data burst is written into the buffer, the buffer content is transferred to the memory by selectively activating the byte select signals according to the least significant bit values and the byte count value. To perform a memory read operation, the data read from the memory are transferred from the memory to the buffer in such a way that the buffer content maps the data burst arrangement in the memory. Then, the buffer is read and the data bytes read from each buffer location are provided to the registers 40. The data register content are provided through the alignment and control logic 42 to the data bus in the rigth order. This device allows to take full advantage of the page mode facility of dynamic memories, since it allows successive adjacent words to be addressed during the burst transfer.

Inventors

  • 👤 Jean-Claude Debize
  • 👤 Yves Hartmann
  • 👤 Pierre Huon
  • 👤 Michel Peyronnenc

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-06 13:33
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/04; G06F13/00; G06F13/14; G06F13/20; G06F13/28; G06F13/38; G06F13/40; G06F13/4004; G06F13/4009; G06F13/4018

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 371 words
Memory access control device to be used to access a memory organized in 2 n byte words and having the capability of addressing each byte in a word under control of byte select signals (BS), through a m-byte large bus, with 2 n /m being an integer k, to write data byte bursts comprising a variable count of bytes, characterized in that it comprises: - clocking means (60, 70, 76) which provide k non overlapping pulse streams (T1, T2) having the same period T, - memory format adapting means comprising: .2 n gating means making up k sets of gating means, each set being responsive to one of the k pulse streams, each gating means of each set being connected so as to receive a data byte from the data bus to provide it on its output when activated by the pulse stream, .2 n register means (40), each one means being connected to the output of a gating means in such a way that at the end of a T period, 2 n bytes are stored in the register means, .buffering means (30) comprising successive locations of 2 n positions, each position being able to store one byte under control of a write select signal, .alignment and control means (42) which are active for a memory write operation and are responsive to the values of the least significant bits of the starting memory address which determine the byte location within the memory words, to the byte count and to the non overlapping pulse streams to selectively activate the write select signals relative to each buffer byte position and to write the data register contents in the selected positions of successive buffer locations in such a way that the buffer content maps the arrangement of the data burst which is to be written into the memory, .memory writing control means (192,168) which are active when the complete data burst has been written into the buffering means to selectively activate the byte select signals (BS) as a function of the least significant bits of the starting memory address so as to transfer the buffer content to the memory from the byte location in the first word defined by the starting memory address.
Claim 2
Dependent Claim 371 words
Memory access control device to be used to access a memory organized in 2 n byte words and having the capability of addressing each byte in a word under control of byte select signals (BS), through a m-byte large bus, with 2 n /m being an integer k, to write data byte bursts comprising a variable count of bytes, characterized in that it comprises: - clocking means (60, 70, 76) which provide k non overlapping pulse streams (T1, T2) having the same period T, - memory format adapting means comprising: .2 n gating means making up k sets of gating means, each set being responsive to one of the k pulse streams, each gating means of each set being connected so as to receive a data byte from the data bus to provide it on its output when activated by the pulse stream, .2 n register means (40), each one means being connected to the output of a gating means in such a way that at the end of a T period, 2 n bytes are stored in the register means, .buffering means (30) comprising successive locations of 2 n positions, each position being able to store one byte under control of a write select signal, .alignment and control means (42) which are active for a memory write operation and are responsive to the values of the least significant bits of the starting memory address which determine the byte location within the memory words, to the byte count and to the non overlapping pulse streams to selectively activate the write select signals relative to each buffer byte position and to write the data register contents in the selected positions of successive buffer locations in such a way that the buffer content maps the arrangement of the data burst which is to be written into the memory, .memory writing control means (192,168) which are active when the complete data burst has been written into the buffering means to selectively activate the byte select signals (BS) as a function of the least significant bits of the starting memory address so as to transfer the buffer content to the memory from the byte location in the first word defined by the starting memory address.
Claim 3
Dependent Claim 242 words
Memory access control device according to claim 1, characterized in that the memory format adapting means comprises memory reading control means for sending a data byte burst stored in the memory from a starting memory address to the data bus, said memory reading control means comprising: .buffer writing means (190,216,148) which are active to cause the data byte burst read from the memory to be written into the successive locations of the data buffering means in such a way that the data buffer content maps the content of the memory portion where the data burst was stored, .buffer reading means (148,220,236) which are active when a complete burst has been written into the buffering means to read each buffer location, to provide the bytes read from the buffering means on buffer output buses (234 0-3), .register selection means (236) which are responsive to the values of the least significant bits of the memory starting address which determine the byte location within the memory words, to the byte count and to the non overlapping pulse streams to generate register select signals (RS), .gating means (246) which are responsive to the register select signals to provide the bytes from the buffer output buses to selected ones of the registers means, .data bus control means (43,250,252) responsive to the least significant bit values and to the non overlapping pulse streams, to provide the register means content to the data bus sequentially, in the right order.
Claim 4
Dependent Claim 243 words
Memory access control device according to claim 1 or 2 characterized in that the alignment and control means comprise: .2 n buffer input buses (126 0-3) which provide the data bytes to be written into the buffering means, .alignment logic (43) which are responsive, for a memory write operation to the least significant bits of the starting memory address to provide the register means content to selected buffer input buses by means of driving means (128) which are activated during the transfer of the data burst into the buffering means, .data bus cycle number determining means (98,92) which are activated at the start of a bus transfer, for a memory write operation, and which are responsive to the least significant bits of the starting memory address and to the byte count to determine the number of periods T which are needed to transfer the data burst from the data bus to the buffering means, said number being then decremented during each period T so as to provide a start of memory transfer signal when said number becomes equal to zero, .write select control means (140,148) which are activated by the start memory transfer signal and which are responsive to the least significant bits of the memory starting address and to the non overlapping pulses streams to activate the write select signals (WS) and cause the data bytes from the buffer input buses to be written into selected positions of the successive buffer locations.
Claim 5
Dependent Claim 163 words
Memory access control device according to claim 3 characterized in that the memory writing control means comprise: .memory transfer number determining means (182,184) which are responsive to the byte count and to the least significant bits of the starting memory address to determine the number of memory operations which are needed for a memory write operation to store the data burst into the memory, said number being then decremented each time a memory word is written, to provide a last memory transfer signal when said number becomes equal to zero, .byte select control means (168) which are activated when the start memory transfer signal becomes active until the last memory transfer signal becomes active to activate the memory byte select signals during the first and last memory transfers as a function of the least significant bits of the starting memory address and all the byte select signals during the intermediate transfers, to control the writing of the buffering means content into the memory.
Claim 6
Dependent Claim 122 words
Memory address control device according to any one of claims 3 or 4 characterized in that in the memory reading control means, the buffer writing means comprise: .buffer input means (216) which are active to provide the data bytes read from the memory to the buffer input buses, .memory transfer number determining means (182,184) which are responsive to the byte count and to the least significant bits of the starting memory address to determine the number of memory transfers which are needed to transfer the data burst from the memory to the buffering means, said number being then decremented each time a buffering means location is written, to provide a start of bus transfer signal when said number becomes equal to zero.
Claim 7
Dependent Claim 107 words
Memory access control device according to claim 5, characterized in that in the memory reading control means, the register selection means comprise data bus cycle number determining means (92, 98) which are activated at the start of the memory reading operation and are responsive to the least significant bits of the memory starting address and to the byte count to determine the number of periods T which are needed to transfer the data burst from the buffering means to the bus, said number being then decremented during each T period so as to provide an end of bus transfer signal when said number becomes equal to zero.
Claim 8
Dependent Claim 80 words
Memory access control device according to claim 6, characterized in that in the memory reading control means, the data bus control means makes use of the alignment logic (43) of the alignment and control means and comprises gating means which are responsive to the non overlapping pulses streams and to the least significant bits of the starting memory address, to provide m bytes to the data bus in the right order, until the end of bus transfer signal becomes active.
Claim 9
Dependent Claim 110 words
Memory access control device according to claim 7 characterized in that n and m are equal to 2 and the four write select signals WS0 to WS3, which control the writing into the four byte positions 0 to 3 are generated by the write select control logic means (140) according to the logical equations: WS0 = WS1 = T1.(LSB00 + LSB01) + T2.(LSB10 + LSB11) WS2 = T1.(LSB01 + LSB10) + T2.(LSB00 + LSB11) WS3 = T1.(LSB10 + LSB11) + T2 (LSB00 + LSB01) where T1 and T2 represent the two non overlapping pulse streams, and LSB00, LSB01, LSB10, LSB11 represent the least significant bits of the starting memory address.
Claim 10
Dependent Claim 164 words
Memory access control device according to claim 8 characterized in that the byte select control means generates the four memory byte select signals BS0 to BS3 according to the logical equations: .during the first transfer BS0 = LSB00.F BS1 = ((LSB00.BC<2) + (LSB10 + LSB11)).F BS2 = ((LSB00.BC<3) + (LSB01.BC<2) + LSB11).F BS3 = ((LSB00.BC<4) + (LSB01 BC<3) + (LSB10.BC<2)).F where F is equal to 1 during the first memory transfer and BC represents the byte count, .during the last transfer: BS0 always active BS1 = ((LSB00. X1 .X0) + (LSB01. X1 . X0 ) + LSB10.X1.X0) + (LSB11.X1. X0 )).L BS2 = ((LSB00.X1 ⊕ X0) + (LSB01. X1 ) + LSB10.( X1 ⊕ X0 ) + (LSB.11.X1)).L BS3 = ((LSB00. X0 . X1 ) + (LSB01.X0.X1) +(LSB10. X0 .X1) + LSB11X0. X1 )).L where L is equal to 1 during the last transfert, and X0 and X1 are the two least significant bits of the byte count and where ⊕ means Exclusive OR.
Claim 11
Dependent Claim 61 words
Memory access control device according to claim 9 characterized in that the register selection means generate the four register select signals RS0 to RS3 according to the logical equations: RS0= T1.LSB00 + T2.(LSB01 + LSB10 + LSB11) RS1= T1.(LSB00 + LSB01) + T2.(LSB10 + LSB11) RS2= T1.(LSB00 + LSB01 + LSB10) + T2.LSB11 RS3= T1.(LSB00 + LSB01 + LSB10 + LSB11)

References Cited (Backward Citations)

US4631671A Cited
EP0206083A1 Cited

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag