US20090290444A1 - Semiconductor device - Google Patents
Semiconductor device Download PDFInfo
- Publication number
- US20090290444A1 US20090290444A1 US12/094,768 US9476808A US2009290444A1 US 20090290444 A1 US20090290444 A1 US 20090290444A1 US 9476808 A US9476808 A US 9476808A US 2009290444 A1 US2009290444 A1 US 2009290444A1
- Authority
- US
- United States
- Prior art keywords
- memory cell
- semiconductor device
- cell blocks
- read
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
- H03K19/1776—Structural details of configuration resources for memories
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17724—Structural details of logic blocks
- H03K19/17728—Reconfigurable logic blocks, e.g. lookup tables
Definitions
- the present invention relates to a semiconductor device capable of operating a memory as a logic circuit.
- LSIs large scale integrations
- An FPGA is a semiconductor device (e.g., an LSI) that allows a user to program a logic circuit after being manufactured.
- an FPGA includes a plurality of components (e.g., a logic circuit, interconnection lines, and switches), a multilayer interconnection structure including a plurality of interconnection layers and a highly advanced manufacturing technique are disadvantageously required for a semiconductor process.
- Japanese Unexamined Patent Application Publication No. 2003-224468 describes a semiconductor device that functions as a logic circuit after a truth table is written to a memory, such as a static random access memory (SRAM). When an address is input to the semiconductor device, the semiconductor device outputs the content of the memory.
- SRAM static random access memory
- memory cell blocks each including a plurality of memory cells each storing a predetermined amount of data are arranged in an array.
- Data output from one of the memory cell blocks is output to only two of the neighboring four memory cell blocks (for example, only the right block in the horizontal direction and the lower block in the vertical direction). Accordingly, it is difficult to operate as a logic circuit that requires return of data (i.e., feedback of data to the memory cell from which data was output).
- the optimization of the scale of the memory cell block e.g., the number of inputs and the number of outputs is not described.
- a semiconductor device includes a plurality of memory cell blocks, each including a plurality of memory cells each storing a predetermined amount of data.
- Each of the memory cell blocks stores, in the memory cells thereof, truth table data used for outputting desired logical values in response to input of a given address so as to function as a logic circuit.
- the number of inputs and the number of outputs of the memory cell block is three or more, and the memory cell blocks are connected to each other so that three or more outputs from one memory cell block are input to other three or more memory cell blocks.
- a memory that functions as a logic circuit can easily perform data feedback, and the scale of a memory cell block can be optimized.
- FIG. 1 is a block diagram of a semiconductor device and an information processing apparatus according to an embodiment of the present invention
- FIG. 2 is an exemplary configuration diagram of a memory cell which is a storage element of the semiconductor device shown in FIG. 1 ;
- FIG. 3 is an exemplary configuration diagram of a memory cell block
- FIG. 4 is a connection diagram of readout ports of the semiconductor device
- FIG. 5 is an exemplary internal configuration diagram of the semiconductor device
- FIG. 6 is an example configuration diagram of a 3-bit adder
- FIG. 7A is a schematic illustration of the memory cell block, and FIG. 7B is a truth table stored in a first memory cell block group;
- FIG. 8A is a schematic illustration of the memory cell block, and FIG. 8B is a truth table stored in a second memory cell block group;
- FIG. 9A is a schematic illustration of the memory cell block, and FIG. 9B is a truth table stored in a third memory cell block group;
- FIG. 10 is an exemplary connection diagram of readout ports of a semiconductor device
- FIG. 11 is an exemplary internal configuration diagram of the semiconductor device.
- FIG. 12 is a flow chart of an exemplary process performed when bit data is loaded in the semiconductor device that functions as a logic circuit.
- FIG. 1 is a block diagram of a semiconductor device and an information processing apparatus according to the present embodiment.
- An information processing apparatus 100 is a computer apparatus.
- the information processing apparatus 100 includes an input unit 101 (e.g., a keyboard), a storage unit 102 (e.g., a hard disk), a memory 103 (e.g., a random access memory (RAM)), an output unit 104 (e.g., a cathode ray tube (CRT)), a communication unit 105 serving as communication equipment, and a processing unit 106 (e.g., a central processing unit (CPU)).
- an input unit 101 e.g., a keyboard
- storage unit 102 e.g., a hard disk
- a memory 103 e.g., a random access memory (RAM)
- an output unit 104 e.g., a cathode ray tube (CRT)
- a communication unit 105 serving as communication equipment
- a processing unit 106
- bit data generated by the information processing apparatus 100 may be stored in a read only memory (ROM) (not shown).
- ROM read only memory
- a semiconductor device 110 is connected to the communication unit 105 of the information processing apparatus 100 .
- the semiconductor device 110 is a storage device similar to a widely used SRAM.
- the semiconductor device 110 is described in more detail below with reference to FIG. 2 and the subsequent drawings.
- FIG. 2 is a configuration diagram of a memory cell which is a storage element of the semiconductor device 110 shown in FIG. 1 .
- a memory cell 200 includes read word lines 201 and 202 , a write word line 211 , read data lines 221 and 222 , write data lines 231 and 232 , gates 241 , 242 , 251 , 252 , 261 , and 262 , and a flip-flop 271 .
- the gates 241 , 242 , 251 , 252 , 261 , and 262 are of a negative-metal oxide semiconductor (N-MOS) type.
- these gates may be of a positive-metal oxide semiconductor (P-MOS) type.
- these gates may be of a complex gate type including an N-MOS type and a P-MOS type. In such a case, peripheral circuits can be appropriately changed as needed.
- the read word lines 201 and 202 are interconnection lines to which a voltage is applied when data is read out from the memory cell 200 .
- the gates 241 and 242 are open.
- the gates 251 and 252 are open.
- the write word line 211 is an interconnection line to which a voltage is applied when data is written to the memory cell 200 .
- the gates 261 and 262 are open.
- the read word lines 221 and 222 are interconnection lines used for reading out data stored in the flip-flop 271 when a predetermined voltage is applied to the read word lines 201 and 202 so that the gates 241 , 242 , 251 , and 252 are open.
- data 11011 is read out from the read word line 221
- data “1” is read out from the read word line 222 .
- data “0” is read out from the read word line 222 .
- the read word lines 221 and 222 operate as a differential signal system.
- the write data lines 231 and 232 are interconnection lines used for writing data to the flip-flop 271 when a voltage is applied to the write word line 211 so that the gates 261 and 262 are open.
- data “0” is written from the write data line 231
- data “1” is written from the write data line 232 .
- data “0” is written from the write data line 232 .
- the flip-flop 271 holds binary data (“0”, or “1”) stored in the memory cell 200 in the above-described manner.
- FIG. 3 is a configuration diagram of a memory cell block in an internal structure of the semiconductor device 110 shown in FIG. 1 (see FIG. 2 if necessary).
- a memory cell block 300 includes a plurality of the memory cells 200 arranged in an array and connected to each other and read address decoders 311 and 312 . As described above, by disposing the read address decoders 311 and 312 of the read word lines 201 and 202 on the left and right sides of the memory cell block 300 , the memory cell block 300 can have the following interconnection function.
- the read word lines 221 and 222 are connected to another memory cell block 300 (not shown) at positions located above the uppermost and outer memory cells 200 , that is, the memory cell 200 (Cell 31 , 0 ) and the memory cell 200 (Cell 31 , 3 ).
- the read word lines 221 and 222 are connected to another memory cell block 300 (not shown) at positions below the lowermost and inner memory cells 200 , that is, the memory cell 200 (Cell 0 , 1 ) and the memory cell 200 (Cell 0 , 2 ).
- the read word lines 221 and 222 are disconnected at positions located above the uppermost and inner memory cells 200 , that is, the memory cell 200 (Cell 31 , 1 ) and the memory cell 200 (Cell 31 , 2 ).
- the read word lines 221 and 222 are disconnected at positions located below the lowermost and outer memory cells 200 , that is, the memory cell 200 (Cell 0 , 0 ) and the memory cell 200 (Cell 0 , 3 ).
- pairs of the outer read data interconnection lines are connected upwardly while pairs of the inner read data interconnection lines are connected downwardly.
- the scale of the output (readout) of the memory cell block 300 can be minimized, and therefore, the load of a variety of data processing can be reduced.
- a plurality of data items can be output in a plurality of directions.
- the read address decoder 311 is disposed on the left side so as to receive a plurality of address differential signals from address input lines 322 .
- the read address decoder 312 is disposed on the right side so as to receive a plurality of address differential signals from address input lines 323 .
- any one of the plurality of read word lines 331 to 362 (each corresponding to the read word line 202 shown in FIG. 2 ) can be selected on the basis of the inputs from the address input lines 322 , the address input lines 323 , and a select line 301 (an address selection line that selects a particular address). Thereafter, a voltage can be applied to the selected read word line.
- the select line 301 includes an inverter 302 .
- the read address decoder 311 includes a plurality of logic circuits 370 (e.g., AND circuits).
- a write word line 371 (corresponding to the write word line 211 shown in FIG. 2 ) is connected to a write address decoder 411 (see FIG. 5 ).
- logic circuits of the read address decoder 312 are similar to those of the read address decoder 311 , the descriptions thereof are not repeated (for example, a logic circuit 380 is connected to a read word line 381 ).
- switching between the adder and the subtractor can be conducted instantaneously by simply switching a signal from the select line 301 .
- switching between the adder and an original storage device can be conducted.
- the memory cell block 300 has been described in detail. As described above, by arranging the memory cells 200 into a 32 ⁇ 4 array and decreasing the lengths of the read word lines 221 and 222 (see FIG. 2 ), the need for a sense amplifier can be eliminated. Therefore, the circuits can be simplified.
- FIG. 4 is a connection diagram of readout ports (pairs of upper and lower outputs of the read data line shown in FIG. 3 and pairs of inputs from the address input lines 322 and 323 ) of the semiconductor device 110 shown in FIG. 1 .
- FIG. 4 only an upper left portion of the semiconductor device 110 is illustrated when viewed in plan.
- an input A 0 (for simplicity, hereinafter simply referred to as “A 0 ”, and the same for “A 1 ” to “A 3 ”) represents a combination of A 0 and /A 0 shown in FIG. 3 . The same applies to A 1 to A 3 .
- an output D 0 (for simplicity, hereinafter simply referred to as “D 0 ”, and the same for “D 1 ” to “D 3 ”) represents a combination of two read data lines of the memory cell 200 (Cell 31 , 0 ) shown in FIG. 3 . The same applies to D 1 to D 3 .
- a 0 to A 3 and D 0 to D 3 of the memory cell blocks 300 d to 300 l are connected as shown in FIG. 4 .
- a driver circuit 420 converts a signal input from an external apparatus to this device (the semiconductor device 110 ) into a differential signal.
- an amplifier 430 amplifies the input differential signal, and converts the differential signal to a normal signal. The amplifier 430 then outputs the normal signal to the external apparatus.
- the semiconductor device 110 can easily achieve feedback of data. More specifically, for example, when data is transmitted from D 3 of the memory cell block 300 d to A 1 of the memory cell block 300 g , a truth table indicating that data input from A 1 is output from D 1 is written to the memory cell block 300 g . In this way, the data can be fed back to A 3 of the memory cell block 300 d.
- the semiconductor device 110 can function as a variety of logic circuit without changing the interconnection lines.
- the number of turns and the shapes of the turns of the interconnection lines are not limited to those shown in FIG. 4 , and can be changed as needed.
- FIG. 5 is an internal configuration diagram of the semiconductor device 110 shown in FIG. 1 .
- the memory cell blocks 300 are arranged in an array.
- the write address decoder 411 is disposed on the left side.
- a write/read circuit 401 is disposed on the lower side.
- the write address decoder 411 and the write/read circuit 401 are connected as shown in the drawing. That is, FIG. 5 is a diagram illustrating a state other than connection of the readout ports in the semiconductor device 110 similar to that shown in FIG. 4 .
- the write address decoder 411 identifies an x address of the memory cell block 300 (an address in the vertical direction of the semiconductor device 110 shown in FIG. 5 ) when writing data into the memory cell block 300 .
- An x address for identifying a particular memory cell block 300 from among the plurality of memory cell blocks 300 is input to a high address (in this example, A 4 w , A 5 w , A 6 w . . . ).
- An x address for identifying an internal location (one of the memory cells 200 ) of the identified memory cell block 300 is input to a low address (in this example, A 0 w to A 3 w ).
- the write/read circuit 401 identifies a y address of the memory cell block 300 from and to which data is to be read and written. The write/read circuit 401 then reads and writes data from and to the identified memory cell block 300 .
- a y address (an address in the horizontal direction of the semiconductor device 110 shown in FIG. 5 ; Ayw 2 in this example) for identifying one of the memory cell blocks 300 is input to the write/read circuit 401 .
- a y address for identifying an internal location (one of the memory cells 200 ) of the identified memory cell block 300 is then input (in this example, Ayw 0 and Ayw 1 ).
- data of a plurality of bits are input from input 402 to the write/read circuit 401 .
- a particular memory cell 200 in a particular memory cell block 300 can be selected, and the truth table data can be updated.
- the semiconductor device 110 can change the operation thereof in accordance with the updated truth table data.
- FIG. 6 is a configuration diagram of a 3-bit adder. In FIG. 6 , connection between memory cell blocks is similar to that shown in FIG. 4 .
- E 0 represents the least significant bit of E.
- E 1 represents the next bit.
- E 2 represents the most significant bit of E.
- F 0 represents the least significant bit of F.
- F 1 represents the next bit.
- F 2 represents the most significant bit of F.
- Y 0 represents the least significant bit of Y.
- Y 1 represents the next bit.
- Y 2 represents the most significant bit of Y.
- C 0 represents a carry from the least significant bit as a result of addition.
- C 1 represents a carry from the next bit as a result of addition.
- C 2 represents a carry from the most significant bit as a result of addition.
- E 0 is input to A 0
- F 0 is input to A 1
- addition is performed.
- Y 0 is output from D 3 .
- C 0 is output from D 2 .
- E 1 is input to A 0
- F 1 is input to A 1 .
- C 0 is input to A 3 .
- addition is performed.
- Y 1 is output from D 3 .
- C 1 is output from D 2 .
- E 2 is input to A 0
- F 2 is input to A 1 .
- C 1 is input to A 3 .
- addition is performed.
- Y 2 is output from D 3 .
- C 2 is output from D 2 .
- Y 0 output from D 3 of the memory cell block 300 d is output from D 3 of the memory cell block 300 j through a route shown in the drawing.
- Y 1 output from D 3 of the memory cell block 300 e is output from D 3 of the memory cell block 300 k through a route shown in the drawing.
- Y 2 output from D 3 of the memory cell block 300 f is output from D 3 of the memory cell block 300 l through a route shown in the drawing.
- FIG. 7A is a schematic illustration of the memory cell block 300 .
- FIG. 7B illustrates a truth table stored in each of the memory cell blocks 300 d , 300 e , and 300 f (see FIG. 6 if necessary).
- D 0 and D 1 are not used in this example, “0” is output from D 0 and D 1 at all times.
- the first to fourth rows, fifth to eighth rows, ninth to twelfth rows, and thirteenth to sixteenth rows have the same pattern of truth values except for the values of A 2 . This is because correct outputs can be obtained even when either of “0” or “1” is input to A 2 .
- FIG. 8A is a schematic illustration of the memory cell block 300 .
- FIG. 8B illustrates a truth table stored in each of the memory cell blocks 300 g , 300 j , 300 k , and 300 l (see FIG. 6 if necessary).
- FIG. 9A is a schematic illustration of the memory cell block 300 .
- FIG. 9B illustrates a truth table stored in each of the memory cell blocks 300 h and 300 i (see FIG. 6 if necessary). As shown in FIG. 9A , in the memory cell block 300 , when inputs are fed to A 0 to A 3 , values defined in the truth table are output from D 0 to D 3 in accordance with the inputs.
- FIG. 10 is a connection diagram of the readout ports of a semiconductor device 110 a which is a modification of the semiconductor device 110 shown in FIG. 4 .
- memory cell blocks 300 m to 300 o are disposed in the leftmost column.
- Memory cell blocks 300 s to 300 u are disposed in a third column from the left.
- Memory cell blocks 300 p to 300 r disposed in a column between the two columns are positionally shifted by half a memory cell block in the vertical direction.
- a 0 to A 3 and D 0 to D 3 of each of these memory cell blocks are connected as shown in the drawing.
- the length of the interconnection line from one of D 0 to D 3 of one memory cell block to a corresponding one of A 0 to A 3 of another memory cell block can be reduced, as compared with the semiconductor device 110 shown in FIG. 4 .
- the number of turns and the shapes of the turns of the interconnection lines are not limited to those shown in FIG. 10 , and can be changed as needed.
- the internal structure of the semiconductor device 110 a (corresponding to FIG. 5 ) is shown in FIG. 11 .
- a memory can function as a logic circuit. By providing the output from one memory cell block to four memory cell blocks, feedback of data can be easily achieved.
- a C language program is written, and subsequently, a hardware description language (HDL) is generated. Thereafter, logic synthesis is performed using the HDL so that a logic circuit is generated.
- Logic modules and interconnection lines are distributed on an FPGA on the basis of the logic circuit. That is, such complicated and highly advanced process procedures are required.
- the semiconductor device functions as a memory or a storage element. Accordingly, after compiling a C language program, the resultant data can be loaded into the semiconductor device in the form of a truth table. Thus, the manufacturing process can be facilitated.
- the semiconductor device of the present embodiment functions as a storage element, a different logic circuit can be achieved by simply changing a truth table written to the memory cell 200 without changing the interconnection lines.
- FIG. 12 is a flow chart of an exemplary process performed when bit data is loaded into the semiconductor device that functions as a logic circuit.
- step S 1101 the information processing apparatus 100 receives, from the input unit 101 , a C language program that describes a desired function, and stores the C language program in the storage unit 102 .
- the storage unit 102 prestores programs for performing a variety of functions (e.g., addition and subtraction).
- step S 1102 an operator of the information processing apparatus 100 adds a declaration statement (the “Include” statements) to the C language program using the input unit 101 in order to refer to a necessary program prestored in the storage unit 102 .
- step S 1103 the processing unit 106 creates a truth table (e.g., a truth table 600 shown in FIG. 7 ) on the basis of the C language program including the added “Include” statement.
- step S 1104 the processing unit 106 generates bit data on the basis of the truth table.
- step S 1105 the processing unit 106 loads the bit data into the semiconductor device 110 via the communication unit 105 .
- the operation that allows the semiconductor device 110 to function as a logic circuit can be simplified.
- the number of the word lines may be increased to 33 or more by providing an intermediate buffer to the read sense amplifier or the read data lines.
- the semiconductor device of the present embodiment by using a plurality of memories and installing test programs in some of the memories, one of the other memories can be tested. In addition, after the test is completed, the test programs are erased from the memories. Thus, these memories can be used as normal memories.
- a memory included in a system LSI may be configured so as to function as the semiconductor device of the present embodiment. After the memory is self-tested, a C language test program is written to the memory so that a test logic circuit is achieved. Thus, other logic circuits in the system LSI can be tested.
- connection between the memory cell blocks is not limited to a connection pattern in which one memory block is connected to four other memory blocks, For example, any connection to three or more other memory cell blocks that enables data feedback may be employed.
- the interconnection may be achieved using one-side read data lines in accordance with a semiconductor layout and the logic circuit of a read address decoder.
- a semiconductor device may be achieved using a dynamic random access memory (DRAM) or a flash memory in place of an SRAM.
- DRAM dynamic random access memory
- SRAM static random access memory
- a function such as a pre-charging function may be employed.
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Logic Circuits (AREA)
- Static Random-Access Memory (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Read Only Memory (AREA)
Abstract
A semiconductor device includes a plurality of memory cell blocks, each including a plurality of memory cells each storing a predetermined amount of data. Each of the memory cell blocks stores, in the memory cells thereof, truth table data used for outputting desired logical values in response to input of a given address so as to function as a logic circuit. The number of inputs and the number of outputs of the memory cell block is three or more, and the memory cell blocks are connected to each other so that three or more outputs from one memory cell block are input to three or more other memory cell blocks.
Description
- 1. Field of the Invention
- The present invention relates to a semiconductor device capable of operating a memory as a logic circuit.
- 2. Description of the Related Art
- Existing semiconductor devices, such as a large scale integrations (LSIs), are manufactured through a plurality of steps including a functional design step, a logic circuit design step, a wafer production step, and an assembly step. These manufacturing steps are suitable for mass production for manufacturing a large number of products of the same type. However, the manufacturing steps are not suitable for high-mix low-volume production, since the steps are costly.
- Accordingly, a technology suitable for high-mix low-volume production has been developed. An example of such a technology is a field programmable gate array (FPGA). An FPGA is a semiconductor device (e.g., an LSI) that allows a user to program a logic circuit after being manufactured.
- However, since an FPGA includes a plurality of components (e.g., a logic circuit, interconnection lines, and switches), a multilayer interconnection structure including a plurality of interconnection layers and a highly advanced manufacturing technique are disadvantageously required for a semiconductor process.
- To solve such a problem, Japanese Unexamined Patent Application Publication No. 2003-224468 describes a semiconductor device that functions as a logic circuit after a truth table is written to a memory, such as a static random access memory (SRAM). When an address is input to the semiconductor device, the semiconductor device outputs the content of the memory.
- However, in the semiconductor device described in Japanese Unexamined Patent Application Publication No. 2003-224468, memory cell blocks each including a plurality of memory cells each storing a predetermined amount of data are arranged in an array. Data output from one of the memory cell blocks is output to only two of the neighboring four memory cell blocks (for example, only the right block in the horizontal direction and the lower block in the vertical direction). Accordingly, it is difficult to operate as a logic circuit that requires return of data (i.e., feedback of data to the memory cell from which data was output). In addition, the optimization of the scale of the memory cell block (e.g., the number of inputs and the number of outputs) is not described.
- Accordingly, it is an object of the present invention to provide a semiconductor device for serving as a memory capable of functioning as a logic circuit, facilitating feedback of data, and having an optimum scale of a memory cell block.
- According to an embodiment of the present invention, a semiconductor device includes a plurality of memory cell blocks, each including a plurality of memory cells each storing a predetermined amount of data. Each of the memory cell blocks stores, in the memory cells thereof, truth table data used for outputting desired logical values in response to input of a given address so as to function as a logic circuit. The number of inputs and the number of outputs of the memory cell block is three or more, and the memory cell blocks are connected to each other so that three or more outputs from one memory cell block are input to other three or more memory cell blocks.
- In a semiconductor device according to the present invention, a memory that functions as a logic circuit can easily perform data feedback, and the scale of a memory cell block can be optimized.
-
FIG. 1 is a block diagram of a semiconductor device and an information processing apparatus according to an embodiment of the present invention; -
FIG. 2 is an exemplary configuration diagram of a memory cell which is a storage element of the semiconductor device shown inFIG. 1 ; -
FIG. 3 is an exemplary configuration diagram of a memory cell block; -
FIG. 4 is a connection diagram of readout ports of the semiconductor device; -
FIG. 5 is an exemplary internal configuration diagram of the semiconductor device; -
FIG. 6 is an example configuration diagram of a 3-bit adder; -
FIG. 7A is a schematic illustration of the memory cell block, andFIG. 7B is a truth table stored in a first memory cell block group; -
FIG. 8A is a schematic illustration of the memory cell block, andFIG. 8B is a truth table stored in a second memory cell block group; -
FIG. 9A is a schematic illustration of the memory cell block, andFIG. 9B is a truth table stored in a third memory cell block group; -
FIG. 10 is an exemplary connection diagram of readout ports of a semiconductor device; -
FIG. 11 is an exemplary internal configuration diagram of the semiconductor device; and -
FIG. 12 is a flow chart of an exemplary process performed when bit data is loaded in the semiconductor device that functions as a logic circuit. - A semiconductor device according to an embodiment of the present invention is described below with reference to the accompanying drawings.
-
FIG. 1 is a block diagram of a semiconductor device and an information processing apparatus according to the present embodiment. An information processing apparatus 100 is a computer apparatus. The information processing apparatus 100 includes an input unit 101 (e.g., a keyboard), a storage unit 102 (e.g., a hard disk), a memory 103 (e.g., a random access memory (RAM)), an output unit 104 (e.g., a cathode ray tube (CRT)), acommunication unit 105 serving as communication equipment, and a processing unit 106 (e.g., a central processing unit (CPU)). - Note that bit data generated by the information processing apparatus 100 (refer to step S1104 shown in
FIG. 12 described below) may be stored in a read only memory (ROM) (not shown). - A
semiconductor device 110 is connected to thecommunication unit 105 of the information processing apparatus 100. In terms of hardware, thesemiconductor device 110 is a storage device similar to a widely used SRAM. Thesemiconductor device 110 is described in more detail below with reference toFIG. 2 and the subsequent drawings. -
FIG. 2 is a configuration diagram of a memory cell which is a storage element of thesemiconductor device 110 shown inFIG. 1 . Amemory cell 200 includes readword lines write word line 211, readdata lines data lines gates flop 271. - In this embodiment, the
gates - The read
word lines memory cell 200. When a voltage is applied to theread word line 201, thegates read word line 202, thegates - The
write word line 211 is an interconnection line to which a voltage is applied when data is written to thememory cell 200. When a voltage is applied to thewrite word line 211, thegates - The read
word lines flop 271 when a predetermined voltage is applied to theread word lines gates word line 221, data “1” is read out from the readword line 222. In contrast, when data “1” is read out from the readword line 221, data “0” is read out from the readword line 222. In this way, theread word lines - The
write data lines flop 271 when a voltage is applied to thewrite word line 211 so that thegates write data line 231, data “1” is written from thewrite data line 232. In contrast, when data “1” is written from thewrite data line 231, data “0” is written from thewrite data line 232. - The flip-
flop 271 holds binary data (“0”, or “1”) stored in thememory cell 200 in the above-described manner. -
FIG. 3 is a configuration diagram of a memory cell block in an internal structure of thesemiconductor device 110 shown inFIG. 1 (seeFIG. 2 if necessary). - A
memory cell block 300 includes a plurality of thememory cells 200 arranged in an array and connected to each other and readaddress decoders read address decoders word lines memory cell block 300, thememory cell block 300 can have the following interconnection function. - In the
memory cell block 300, theread word lines outer memory cells 200, that is, the memory cell 200 (Cell31, 0) and the memory cell 200 (Cell31, 3). In addition, theread word lines inner memory cells 200, that is, the memory cell 200 (Cell0, 1) and the memory cell 200 (Cell0, 2). - Furthermore, in the
memory cell block 300, theread word lines inner memory cells 200, that is, the memory cell 200 (Cell31, 1) and the memory cell 200 (Cell31, 2). In addition, theread word lines outer memory cells 200, that is, the memory cell 200 (Cell0, 0) and the memory cell 200 (Cell0, 3). - That is, in the
memory cell block 300, pairs of the outer read data interconnection lines are connected upwardly while pairs of the inner read data interconnection lines are connected downwardly. In this way, the scale of the output (readout) of thememory cell block 300 can be minimized, and therefore, the load of a variety of data processing can be reduced. In addition, a plurality of data items can be output in a plurality of directions. - In the
memory cell block 300, theread address decoder 311 is disposed on the left side so as to receive a plurality of address differential signals from address input lines 322. In addition, in thememory cell block 300, theread address decoder 312 is disposed on the right side so as to receive a plurality of address differential signals from address input lines 323. - Note that the number of inputs or outputs “three” or “four” described in the appended claims correspond to three pairs or four pairs of differential signals.
- In the
memory cell block 300, any one of the plurality of readword lines 331 to 362 (each corresponding to the readword line 202 shown inFIG. 2 ) can be selected on the basis of the inputs from theaddress input lines 322, theaddress input lines 323, and a select line 301 (an address selection line that selects a particular address). Thereafter, a voltage can be applied to the selected read word line. - Furthermore, the
select line 301 includes aninverter 302. Theread address decoder 311 includes a plurality of logic circuits 370 (e.g., AND circuits). A write word line 371 (corresponding to thewrite word line 211 shown inFIG. 2 ) is connected to a write address decoder 411 (seeFIG. 5 ). - Since logic circuits of the read
address decoder 312 are similar to those of the readaddress decoder 311, the descriptions thereof are not repeated (for example, alogic circuit 380 is connected to a read word line 381). - As shown in
FIG. 3 , for example, when data “1” is input from theselect line 301, the upper half of thememory cell 200 in thememory cell block 300 operates. In contrast, when data “0” is input from theselect line 301, the lower half of thememory cell 200 in thememory cell block 300 operates. - Accordingly, for example, if the upper half of the
memory cell 200 in thememory cell block 300 serves as an adder and the lower half of thememory cell 200 serves as a subtractor, switching between the adder and the subtractor can be conducted instantaneously by simply switching a signal from theselect line 301. Similarly, for example, switching between the adder and an original storage device can be conducted. - The
memory cell block 300 has been described in detail. As described above, by arranging thememory cells 200 into a 32×4 array and decreasing the lengths of the readword lines 221 and 222 (seeFIG. 2 ), the need for a sense amplifier can be eliminated. Therefore, the circuits can be simplified. -
FIG. 4 is a connection diagram of readout ports (pairs of upper and lower outputs of the read data line shown inFIG. 3 and pairs of inputs from theaddress input lines 322 and 323) of thesemiconductor device 110 shown inFIG. 1 . InFIG. 4 , only an upper left portion of thesemiconductor device 110 is illustrated when viewed in plan. - In each of
memory cell blocks 300 d to 300 l, an input A0 (for simplicity, hereinafter simply referred to as “A0”, and the same for “A1” to “A3”) represents a combination of A0 and /A0 shown inFIG. 3 . The same applies to A1 to A3. - In addition, in each of the
memory cell blocks 300 d to 300 l, an output D0 (for simplicity, hereinafter simply referred to as “D0”, and the same for “D1” to “D3”) represents a combination of two read data lines of the memory cell 200 (Cell31, 0) shown inFIG. 3 . The same applies to D1 to D3. - A0 to A3 and D0 to D3 of the
memory cell blocks 300 d to 300 l are connected as shown inFIG. 4 . - A
driver circuit 420 converts a signal input from an external apparatus to this device (the semiconductor device 110) into a differential signal. In addition, anamplifier 430 amplifies the input differential signal, and converts the differential signal to a normal signal. Theamplifier 430 then outputs the normal signal to the external apparatus. - By making interconnection in such a manner, the
semiconductor device 110 can easily achieve feedback of data. More specifically, for example, when data is transmitted from D3 of thememory cell block 300 d to A1 of thememory cell block 300 g, a truth table indicating that data input from A1 is output from D1 is written to thememory cell block 300 g. In this way, the data can be fed back to A3 of thememory cell block 300 d. - In addition, by simply changing truth tables written to the
memory cell blocks 300 d to 300 l, thesemiconductor device 110 can function as a variety of logic circuit without changing the interconnection lines. - Note that the number of turns and the shapes of the turns of the interconnection lines are not limited to those shown in
FIG. 4 , and can be changed as needed. -
FIG. 5 is an internal configuration diagram of thesemiconductor device 110 shown inFIG. 1 . Thememory cell blocks 300 are arranged in an array. Thewrite address decoder 411 is disposed on the left side. A write/read circuit 401 is disposed on the lower side. Thewrite address decoder 411 and the write/read circuit 401 are connected as shown in the drawing. That is,FIG. 5 is a diagram illustrating a state other than connection of the readout ports in thesemiconductor device 110 similar to that shown inFIG. 4 . - The
write address decoder 411 identifies an x address of the memory cell block 300 (an address in the vertical direction of thesemiconductor device 110 shown inFIG. 5 ) when writing data into thememory cell block 300. An x address for identifying a particularmemory cell block 300 from among the plurality of memory cell blocks 300 is input to a high address (in this example, A4 w, A5 w, A6 w . . . ). An x address for identifying an internal location (one of the memory cells 200) of the identifiedmemory cell block 300 is input to a low address (in this example, A0 w to A3 w). - The write/
read circuit 401 identifies a y address of thememory cell block 300 from and to which data is to be read and written. The write/read circuit 401 then reads and writes data from and to the identifiedmemory cell block 300. - More specifically, a y address (an address in the horizontal direction of the
semiconductor device 110 shown inFIG. 5 ; Ayw2 in this example) for identifying one of the memory cell blocks 300 is input to the write/read circuit 401. A y address for identifying an internal location (one of the memory cells 200) of the identifiedmemory cell block 300 is then input (in this example, Ayw0 and Ayw1). In addition, data of a plurality of bits (four bits in this example) are input frominput 402 to the write/read circuit 401. - In this way, a
particular memory cell 200 in a particularmemory cell block 300 can be selected, and the truth table data can be updated. - That is, when truth table data stored in the
memory cells 200 of one of the memory cell blocks 300 is updated, thesemiconductor device 110 can change the operation thereof in accordance with the updated truth table data. - The case where the
semiconductor device 110 shown inFIG. 4 is used for a 3-bit adder is described next with reference toFIGS. 6 to 9B . -
FIG. 6 is a configuration diagram of a 3-bit adder. InFIG. 6 , connection between memory cell blocks is similar to that shown inFIG. 4 . - The following description is made with reference to the case where two 3-bit values E and F are added, and the sum Y is output. “E0” represents the least significant bit of E. “E1” represents the next bit. “E2” represents the most significant bit of E. In addition, “F0” represents the least significant bit of F. “F1” represents the next bit. “F2” represents the most significant bit of F. Furthermore, “Y0” represents the least significant bit of Y. “Y1” represents the next bit. “Y2” represents the most significant bit of Y. “C0” represents a carry from the least significant bit as a result of addition. “C1” represents a carry from the next bit as a result of addition. “C2” represents a carry from the most significant bit as a result of addition. Although each signal is a differential signal, the notation is abbreviated for simplicity.
- In the
memory cell block 300 d, E0 is input to A0, and F0 is input to A1. Subsequently, addition is performed. As a result of the addition, Y0 is output from D3. C0 is output from D2. In thememory cell block 300 e, E1 is input to A0, and F1 is input to A1. C0 is input to A3. Subsequently, addition is performed. As a result of the addition, Y1 is output from D3. C1 is output from D2. In thememory cell block 300 f, E2 is input to A0, and F2 is input to A1. C1 is input to A3. Subsequently, addition is performed. As a result of the addition, Y2 is output from D3. C2 is output from D2. - Y0 output from D3 of the
memory cell block 300 d is output from D3 of thememory cell block 300 j through a route shown in the drawing. Y1 output from D3 of thememory cell block 300 e is output from D3 of thememory cell block 300 k through a route shown in the drawing. Y2 output from D3 of thememory cell block 300 f is output from D3 of the memory cell block 300 l through a route shown in the drawing. In this way, as a result of the addition, Y0, Y1, and Y2 can be obtained. -
FIG. 7A is a schematic illustration of thememory cell block 300.FIG. 7B illustrates a truth table stored in each of thememory cell blocks FIG. 6 if necessary). - As shown in
FIG. 7A , in thememory cell block 300, when inputs are fed to A0 to A3, values defined in the truth table are output from D0 to D3 in accordance with the inputs. - As shown in
FIG. 7B , when E (E0 to E2), F (F0 to F2), and Cin (C0 to C2) are input to A0, A1, and A3, the three values are summed. The resultant bit value Y (Y0 to Y2) is output from D3. A carry Cout (C0 to C2) is output from D2. - Note that since D0 and D1 are not used in this example, “0” is output from D0 and D1 at all times. In addition, the first to fourth rows, fifth to eighth rows, ninth to twelfth rows, and thirteenth to sixteenth rows have the same pattern of truth values except for the values of A2. This is because correct outputs can be obtained even when either of “0” or “1” is input to A2.
-
FIG. 8A is a schematic illustration of thememory cell block 300.FIG. 8B illustrates a truth table stored in each of thememory cell blocks FIG. 6 if necessary). - As shown in
FIG. 8A , in thememory cell block 300, when inputs are fed to A0 to A3, values defined in the truth table are output from D0 to D3 in accordance with the inputs. - As shown in
FIG. 8B , when Y (Y0 to Y2) is input to A1, that value is directly output from D3. Note that since D0 and D2 are not used in this example, “0” is output from D0 and D2 at all times. - In practice, a truth table having only two types (two rows) of patterns from A1 to D3 (i.e., patterns of “0” to “0” and “1” to “1”) is required. However, in order to obtain correct output results even when either value of “0” or “1” is input to A0, A2, and A3, a truth table of sixteen rows is used.
-
FIG. 9A is a schematic illustration of thememory cell block 300.FIG. 9B illustrates a truth table stored in each of thememory cell blocks 300 h and 300 i (seeFIG. 6 if necessary). As shown inFIG. 9A , in thememory cell block 300, when inputs are fed to A0 to A3, values defined in the truth table are output from D0 to D3 in accordance with the inputs. - As shown in
FIG. 9B , when C (C0 to C2) is input to A0, that value is directly output from D1. In addition, when Y (Y0 to Y2) is input to A1, that value is directly output from D3. Note that since D0 and D2 are not used in this example, “0” is output from D0 and D2 at all times. In addition, as in the case ofFIG. 5B , even when either value of “0” or “1” is input to A2 and A3, a correct resultant output value can be obtained. -
FIG. 10 is a connection diagram of the readout ports of asemiconductor device 110 a which is a modification of thesemiconductor device 110 shown inFIG. 4 . In thesemiconductor device 110 a,memory cell blocks 300 m to 300 o are disposed in the leftmost column. Memory cell blocks 300 s to 300 u are disposed in a third column from the left. Memory cell blocks 300 p to 300 r disposed in a column between the two columns are positionally shifted by half a memory cell block in the vertical direction. In addition, A0 to A3 and D0 to D3 of each of these memory cell blocks are connected as shown in the drawing. - As described above, by disposing some of the memory cell blocks while shifting the memory cell blocks, the length of the interconnection line from one of D0 to D3 of one memory cell block to a corresponding one of A0 to A3 of another memory cell block can be reduced, as compared with the
semiconductor device 110 shown inFIG. 4 . - Note that the number of turns and the shapes of the turns of the interconnection lines are not limited to those shown in
FIG. 10 , and can be changed as needed. In addition, the internal structure of thesemiconductor device 110 a (corresponding toFIG. 5 ) is shown inFIG. 11 . - As noted above, according to the semiconductor device of the present embodiment, a memory can function as a logic circuit. By providing the output from one memory cell block to four memory cell blocks, feedback of data can be easily achieved.
- In an existing manufacturing process of FPGAs, for example, a C language program is written, and subsequently, a hardware description language (HDL) is generated. Thereafter, logic synthesis is performed using the HDL so that a logic circuit is generated. Logic modules and interconnection lines are distributed on an FPGA on the basis of the logic circuit. That is, such complicated and highly advanced process procedures are required.
- In contrast, according to the present embodiment, the semiconductor device functions as a memory or a storage element. Accordingly, after compiling a C language program, the resultant data can be loaded into the semiconductor device in the form of a truth table. Thus, the manufacturing process can be facilitated. In addition, since the semiconductor device of the present embodiment functions as a storage element, a different logic circuit can be achieved by simply changing a truth table written to the
memory cell 200 without changing the interconnection lines. - This advantage is described in more detail below with reference to
FIG. 12 (seeFIG. 1 if necessary).FIG. 12 is a flow chart of an exemplary process performed when bit data is loaded into the semiconductor device that functions as a logic circuit. - First, in step S1101, the information processing apparatus 100 receives, from the
input unit 101, a C language program that describes a desired function, and stores the C language program in thestorage unit 102. Thestorage unit 102 prestores programs for performing a variety of functions (e.g., addition and subtraction). - Subsequently, in step S1102, an operator of the information processing apparatus 100 adds a declaration statement (the “Include” statements) to the C language program using the
input unit 101 in order to refer to a necessary program prestored in thestorage unit 102. - In step S1103, the
processing unit 106 creates a truth table (e.g., a truth table 600 shown inFIG. 7 ) on the basis of the C language program including the added “Include” statement. In step S1104, theprocessing unit 106 generates bit data on the basis of the truth table. Subsequently, in step S1105, theprocessing unit 106 loads the bit data into thesemiconductor device 110 via thecommunication unit 105. - In this way, according to the present embodiment, the operation that allows the
semiconductor device 110 to function as a logic circuit can be simplified. - In addition, according to the semiconductor device of the present embodiment, since an actual logic circuit is not used, malfunction of part of the memory can be easily dealt with by, for example, not using the faulty part.
- Furthermore, if, as described in the present embodiment, 32 word lines are used for one memory cell block, attenuation of data (signals) can be reduced, and therefore, the need for a sense amplifier can be eliminated. However, if the performance of the semiconductor device is critical, the number of the word lines may be increased to 33 or more by providing an intermediate buffer to the read sense amplifier or the read data lines.
- Furthermore, according to the semiconductor device of the present embodiment, by using a plurality of memories and installing test programs in some of the memories, one of the other memories can be tested. In addition, after the test is completed, the test programs are erased from the memories. Thus, these memories can be used as normal memories.
- Still furthermore, a memory included in a system LSI may be configured so as to function as the semiconductor device of the present embodiment. After the memory is self-tested, a C language test program is written to the memory so that a test logic circuit is achieved. Thus, other logic circuits in the system LSI can be tested.
- Yet still furthermore, connection between the memory cell blocks is not limited to a connection pattern in which one memory block is connected to four other memory blocks, For example, any connection to three or more other memory cell blocks that enables data feedback may be employed. In addition, while the above-described embodiment has been described with reference to the differential read data lines, the interconnection may be achieved using one-side read data lines in accordance with a semiconductor layout and the logic circuit of a read address decoder.
- While the present invention has been described as carried out in a specific embodiment thereof, it should be apparent to those skilled in the art that it is not limited thereto. For example, according to the present invention, a semiconductor device may be achieved using a dynamic random access memory (DRAM) or a flash memory in place of an SRAM.
- Furthermore, in order to improve the performance of the memories, a function such as a pre-charging function may be employed.
- Still furthermore, the invention is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
Claims (11)
1. A semiconductor device comprising:
a plurality of memory cell blocks, each including a plurality of memory cells each storing a predetermined amount of data;
wherein each of the memory cell blocks stores, in the memory cells thereof, truth table data used for outputting desired logical values in response to input of a given address so as to function as a logic circuit, and wherein the number of inputs and the number of outputs of the memory cell block is three or more, and the memory cell blocks are connected to each other so that three or more outputs from one memory cell block are input to three or more other memory cell blocks.
2. The semiconductor device according to claim 1 , wherein the number of inputs and the number of outputs of the memory cell block is four, and the memory cell blocks are connected to each other so that four outputs from one memory cell block are input to four other memory cell blocks.
3. The semiconductor device according to claim 1 , wherein the plurality of memory cell blocks have a rectangular shape of the same size, and wherein the memory cell blocks are connected to each other such that at least some of the memory cell blocks are positionally shifted from an array arrangement.
4. The semiconductor device according to claim 1 , wherein the plurality of memory cell blocks are arranged in an array and are connected to each other using interconnection lines.
5. The semiconductor device according to claim 1 , wherein each of the memory cell blocks further includes two read address decoders therein, and the memory cell includes two read word lines corresponding to the two read address decoders, and wherein, when a voltage is applied to the two read word lines, data stored in the memory cell is read out using a read data line.
6. The semiconductor device according to claim 1 , further comprising:
a write address decoder connected to the plurality of memory cell blocks, the write address decoder specifying an x address related to the plurality of memory cell blocks and the memory cell in the memory cell blocks; and
a write/read circuit connected to the plurality of memory cell block, the write/read circuit specifying a y address related to the plurality of memory cell blocks and the memory cell in the memory cell blocks so as to write data to the memory cell;
wherein the data is written to the memory cell by the write/read circuit when the memory cell is specified by the write address decoder and the write/read circuit.
7. The semiconductor device according to claim 1 , wherein the semiconductor device functions as a normal storage device when the memory cell of the memory cell block does not store the truth table data.
8. The semiconductor device according to claim 7 , wherein an operating area of the memory cell of the memory cell block is separated into two, and wherein, when a particular address select line of the read address decoder is switched, the operating areas of the memory cell are switched so that switching between an operation in which the memory cell functions as two logic circuits and an operation in which the memory cell functions as a logic circuit and a normal storage device is instantaneously performed.
9. The semiconductor device according to claim 1 , wherein, when truth table data stored in memory cells in some of the memory cell blocks is updated, the operation of the semiconductor device is changed in accordance with the updated truth table data.
10. The semiconductor device according to claim 1 , wherein the semiconductor device is included in a system LSI, the semiconductor device performs a self-test function, and the semiconductor device tests other logic circuits included in the system LSI.
11. The semiconductor device according to claim 1 , wherein the semiconductor device operates on the basis of a compilation result of a C language program that describes the operation of the semiconductor device.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2005/021758 WO2007060738A1 (en) | 2005-11-28 | 2005-11-28 | Semiconductor device |
Publications (1)
Publication Number | Publication Date |
---|---|
US20090290444A1 true US20090290444A1 (en) | 2009-11-26 |
Family
ID=38066980
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/094,768 Abandoned US20090290444A1 (en) | 2005-11-28 | 2005-11-28 | Semiconductor device |
US12/094,770 Active US7652946B2 (en) | 2005-11-28 | 2006-07-06 | Semiconductor device |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/094,770 Active US7652946B2 (en) | 2005-11-28 | 2006-07-06 | Semiconductor device |
Country Status (5)
Country | Link |
---|---|
US (2) | US20090290444A1 (en) |
JP (1) | JP4703655B2 (en) |
CN (2) | CN101310442A (en) |
TW (1) | TW200721190A (en) |
WO (2) | WO2007060738A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150022232A1 (en) * | 2012-04-11 | 2015-01-22 | Taiyo Yuden Co., Ltd. | Reconfigurable semiconductor device |
US8952721B2 (en) | 2010-06-24 | 2015-02-10 | Taiyo Yuden Co., Ltd. | Semiconductor device |
US9177092B2 (en) | 2012-04-09 | 2015-11-03 | Taiyo Yuden Co., Ltd. | Method for arranging and wiring reconfigurable semiconductor device, program therefor, and arranging and wiring apparatus |
US9350357B2 (en) | 2012-10-28 | 2016-05-24 | Taiyo Yuden Co., Ltd. | Reconfigurable semiconductor device |
US9425800B2 (en) | 2013-04-02 | 2016-08-23 | Taiyo Yuden Co., Ltd. | Reconfigurable logic device |
US9514259B2 (en) | 2012-11-20 | 2016-12-06 | Taiyo Yuden Co., Ltd. | Logic configuration method for reconfigurable semiconductor device |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007060738A1 (en) * | 2005-11-28 | 2007-05-31 | Taiyo Yuden Co., Ltd. | Semiconductor device |
JP5260077B2 (en) * | 2008-02-15 | 2013-08-14 | 太陽誘電株式会社 | Programmable logic device and its construction method and its use |
JP2010015328A (en) * | 2008-07-02 | 2010-01-21 | Tama Tlo Ltd | Memory/logic conjugate system |
JP5140029B2 (en) | 2009-03-30 | 2013-02-06 | 太陽誘電株式会社 | Semiconductor device |
CN102044288B (en) * | 2009-10-13 | 2013-07-31 | 中芯国际集成电路制造(北京)有限公司 | Method for converting electrical address and topological address of memory |
JP5565456B2 (en) * | 2010-02-16 | 2014-08-06 | 株式会社デンソー | Integrated circuit and method of using the same |
US8427184B2 (en) * | 2011-03-22 | 2013-04-23 | The United States Of America As Represented By The Secretary Of The Navy | SCR module dynamic counter tester |
DE112012003335T5 (en) * | 2011-08-12 | 2014-04-30 | Denso Corp. | Integrated circuit |
JP6444723B2 (en) * | 2014-01-09 | 2018-12-26 | 株式会社半導体エネルギー研究所 | apparatus |
JP2015165226A (en) * | 2014-02-07 | 2015-09-17 | 株式会社半導体エネルギー研究所 | Device |
US9869716B2 (en) * | 2014-02-07 | 2018-01-16 | Semiconductor Energy Laboratory Co., Ltd. | Device comprising programmable logic element |
DE112015000705T5 (en) * | 2014-02-07 | 2016-10-27 | Semiconductor Energy Laboratory Co., Ltd. | contraption |
US9416620B2 (en) | 2014-03-20 | 2016-08-16 | Weatherford Technology Holdings, Llc | Cement pulsation for subsea wellbore |
JP6405262B2 (en) | 2015-02-18 | 2018-10-17 | 太陽誘電株式会社 | Reconfigurable logical device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6288969B1 (en) * | 1996-06-20 | 2001-09-11 | Nortel Networks Limited | Multi-port random access memory |
US7525868B2 (en) * | 2006-11-29 | 2009-04-28 | Taiwan Semiconductor Manufacturing Co., Ltd. | Multiple-port SRAM device |
US7630272B2 (en) * | 2007-02-19 | 2009-12-08 | Freescale Semiconductor, Inc. | Multiple port memory with prioritized world line driver and method thereof |
US7652946B2 (en) * | 2005-11-28 | 2010-01-26 | Taiyo Yuden Corp. | Semiconductor device |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3400824B2 (en) * | 1992-11-06 | 2003-04-28 | 三菱電機株式会社 | Semiconductor storage device |
US5894565A (en) * | 1996-05-20 | 1999-04-13 | Atmel Corporation | Field programmable gate array with distributed RAM and increased cell utilization |
JP2003149300A (en) * | 2001-11-16 | 2003-05-21 | Hitachi Ltd | Test method and semiconductor device |
JP2003224468A (en) * | 2002-01-31 | 2003-08-08 | Hitachi Ltd | Semiconductor integrated circuit, its manufacturing method, and testing method |
-
2005
- 2005-11-28 WO PCT/JP2005/021758 patent/WO2007060738A1/en active Application Filing
- 2005-11-28 CN CNA2005800520664A patent/CN101310442A/en active Pending
- 2005-11-28 JP JP2007546336A patent/JP4703655B2/en not_active Expired - Fee Related
- 2005-11-28 US US12/094,768 patent/US20090290444A1/en not_active Abandoned
-
2006
- 2006-07-06 CN CN2006800430997A patent/CN101310443B/en not_active Expired - Fee Related
- 2006-07-06 WO PCT/JP2006/313502 patent/WO2007060763A1/en active Application Filing
- 2006-07-06 US US12/094,770 patent/US7652946B2/en active Active
- 2006-08-28 TW TW095131542A patent/TW200721190A/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6288969B1 (en) * | 1996-06-20 | 2001-09-11 | Nortel Networks Limited | Multi-port random access memory |
US7652946B2 (en) * | 2005-11-28 | 2010-01-26 | Taiyo Yuden Corp. | Semiconductor device |
US7525868B2 (en) * | 2006-11-29 | 2009-04-28 | Taiwan Semiconductor Manufacturing Co., Ltd. | Multiple-port SRAM device |
US7630272B2 (en) * | 2007-02-19 | 2009-12-08 | Freescale Semiconductor, Inc. | Multiple port memory with prioritized world line driver and method thereof |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8952721B2 (en) | 2010-06-24 | 2015-02-10 | Taiyo Yuden Co., Ltd. | Semiconductor device |
US9214209B2 (en) | 2010-06-24 | 2015-12-15 | Taiyo Yuden Co., Ltd. | Semiconductor device |
US9177092B2 (en) | 2012-04-09 | 2015-11-03 | Taiyo Yuden Co., Ltd. | Method for arranging and wiring reconfigurable semiconductor device, program therefor, and arranging and wiring apparatus |
US20150022232A1 (en) * | 2012-04-11 | 2015-01-22 | Taiyo Yuden Co., Ltd. | Reconfigurable semiconductor device |
US9425798B2 (en) * | 2012-04-11 | 2016-08-23 | Taiyo Yuden Co., Ltd. | Reconfigurable semiconductor device |
US9350357B2 (en) | 2012-10-28 | 2016-05-24 | Taiyo Yuden Co., Ltd. | Reconfigurable semiconductor device |
US9514259B2 (en) | 2012-11-20 | 2016-12-06 | Taiyo Yuden Co., Ltd. | Logic configuration method for reconfigurable semiconductor device |
US9425800B2 (en) | 2013-04-02 | 2016-08-23 | Taiyo Yuden Co., Ltd. | Reconfigurable logic device |
Also Published As
Publication number | Publication date |
---|---|
US7652946B2 (en) | 2010-01-26 |
WO2007060738A1 (en) | 2007-05-31 |
CN101310442A (en) | 2008-11-19 |
JP4703655B2 (en) | 2011-06-15 |
TW200721190A (en) | 2007-06-01 |
CN101310443A (en) | 2008-11-19 |
JPWO2007060738A1 (en) | 2009-05-07 |
WO2007060763A1 (en) | 2007-05-31 |
US20090154282A1 (en) | 2009-06-18 |
TWI367494B (en) | 2012-07-01 |
CN101310443B (en) | 2012-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20090290444A1 (en) | Semiconductor device | |
US12063041B2 (en) | Flip flop standard cell | |
JP2001325800A5 (en) | ||
CN110299165A (en) | SRAM memory part, memory input output and its method | |
US6233197B1 (en) | Multi-port semiconductor memory and compiler having capacitance compensation | |
US6370078B1 (en) | Way to compensate the effect of coupling between bitlines in a multi-port memories | |
KR20030014584A (en) | Semiconductor integrated circuit device | |
US7746722B2 (en) | Metal programmable self-timed memories | |
US8050132B2 (en) | Semiconductor device | |
Barth et al. | A 500-MHz multi-banked compilable DRAM macro with direct write and programmable pipelining | |
US7639557B1 (en) | Configurable random-access-memory circuitry | |
US6229741B1 (en) | Semiconductor integrated circuit device | |
KR0172350B1 (en) | Fast disturb test of semiconductor memory device and wordline decoder | |
JP3833022B2 (en) | Semiconductor device | |
JP2001014842A (en) | Semiconductor memory and logical lsi mixingly equipped with memory | |
JP2003149300A (en) | Test method and semiconductor device | |
JP5032996B2 (en) | Semiconductor device | |
KR20070080044A (en) | Multi bank semiconductor memory device and method for enabling multi bank thereof | |
JPH04217359A (en) | Semiconductor storage device | |
WO1999000752A1 (en) | Method and apparatus for incorporating dynamic random access memory design modules into an integrated circuit chip design | |
JPH06223597A (en) | Semiconductor device | |
JP4187714B2 (en) | Semiconductor memory layout method and semiconductor memory | |
JP2006172623A (en) | Semiconductor device | |
US6687182B2 (en) | Semiconductor memory device | |
JPH0325793A (en) | Semiconductor memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: TAIYO YUDEN CORP., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GENESIS TECHNOLOGY, INC.;REEL/FRAME:021906/0494 Effective date: 20080129 Owner name: GENESIS TECHNOLOGY, INC., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SATOH, MASAYUKI;REEL/FRAME:021914/0700 Effective date: 20071130 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |