Memory control circuit that selectively performs address translation based on the value of a road start address
First Claim
Patent Images
1. A memory control circuit for controlling read and transfer of data from a memory in response to a read request by an instruction processing unit, comprising:
- a memory divided into 2M blocks i (i=0, 1, . . . , 2M -1), each block i storing data corresponding to address 2M N+i, where M is a natural number equal to or greater than 2, and N is a non-negative integer;
an address translation circuit for selectively performing address translation on a read address issued by the instruction processing unit in accordance with a predetermined translation rule, the address translation circuit receiving the read address and supplying output to blocks j (j=0, 1 , . . . , 2M-1 -1) so that the read address is provided via the address translation circuit to the blocks j while the read address is directly provided to blocks k (k=2M-1, 2M-1 +1, . . . , 2M -1);
a latch circuit provided for each block with one-to-one correspondence, each latch circuit latching data read from the corresponding block, the latching operation being carried out simultaneously for all of the blocks so as to allow 2M blocks of memory including at least 2M-1 +1 successive addresses to be readable by the instruction processing unit for every latching action; and
a selector circuit for selecting data among the latched data and outputting the selected data to a data bus, in response to an address and transfer timing output by the instruction processing unit,wherein when the read start address requested by the instruction processing unit is 2M N+j, the address translation circuit is not activated so that address 2M N is supplied to all blocks, andwhen the read start address requested by the instruction processing unit is 2M N+k, the address translation circuit is activated to perform address translation so that address 2M (N+1) is supplied to the blocks j, while address 2M N is supplied to the blocks k.
1 Assignment
0 Petitions
Accused Products
Abstract
A memory control circuit improves the read speed of a program memory stored in a ROM. The memory control circuit includes a memory divided into four blocks, an address translation circuit for providing address 4N+1 to blocks 0 and 1 only when the required read address is 4N+2 or 4N+3, a set of latch circuits for latching data read from each of the blocks, and a selector circuit for selecting necessary data from among the latched data and outputting it to a data bus. Accordingly, three or more blocks of memory are made readable in every latched operation.
13 Citations
18 Claims
-
1. A memory control circuit for controlling read and transfer of data from a memory in response to a read request by an instruction processing unit, comprising:
-
a memory divided into 2M blocks i (i=0, 1, . . . , 2M -1), each block i storing data corresponding to address 2M N+i, where M is a natural number equal to or greater than 2, and N is a non-negative integer; an address translation circuit for selectively performing address translation on a read address issued by the instruction processing unit in accordance with a predetermined translation rule, the address translation circuit receiving the read address and supplying output to blocks j (j=0, 1 , . . . , 2M-1 -1) so that the read address is provided via the address translation circuit to the blocks j while the read address is directly provided to blocks k (k=2M-1, 2M-1 +1, . . . , 2M -1); a latch circuit provided for each block with one-to-one correspondence, each latch circuit latching data read from the corresponding block, the latching operation being carried out simultaneously for all of the blocks so as to allow 2M blocks of memory including at least 2M-1 +1 successive addresses to be readable by the instruction processing unit for every latching action; and a selector circuit for selecting data among the latched data and outputting the selected data to a data bus, in response to an address and transfer timing output by the instruction processing unit, wherein when the read start address requested by the instruction processing unit is 2M N+j, the address translation circuit is not activated so that address 2M N is supplied to all blocks, and when the read start address requested by the instruction processing unit is 2M N+k, the address translation circuit is activated to perform address translation so that address 2M (N+1) is supplied to the blocks j, while address 2M N is supplied to the blocks k. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A memory control circuit for controlling read and transfer of data from a memory in response to a read request by an instruction processing unit, the memory being divided into an even number of blocks greater than or equal to 4, said memory control circuit comprising:
-
an address translation circuit for selectively performing address translation on a read address issued by the instruction processing unit in accordance with a predetermined translation rule, the address translation circuit supplying output to the blocks of one half of the memory so that the read address is provided via the address translation circuit to the blocks of the one half of the memory, while the read address is directly provided to the blocks of the other half of the memory; a plurality of latch circuits, each of the latch circuits being provided for one of the blocks of the memory to latch data read from the corresponding block, the latching operation being carried out simultaneously for all of the latch circuits so as to allow all blocks of the memory, including at least N successive addresses (where N=half the number of blocks+1), to be made readable by the instruction processing unit for every latching operation; and a selector circuit for selecting data from the latched data for output to a data bus, the selector circuit operating in response to a timing signal from the instruction processing unit, wherein when the read start address requested by the instruction processing unit corresponds to an address in one of the blocks of the one half of the memory, the address translation circuit is not activated so that the read address issued by the instruction processing unit is supplied to all blocks, and when the read start address requested by the instruction processing unit corresponds to an address in one of the blocks of the other half of the memory, the address translation circuit is activated to perform address translation so that a translated read address is supplied to the blocks of the one half of the memory, while the read address issued by the instruction processing unit is supplied to the blocks of the other half of the memory. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification