WO2000052753A1 - Semiconductor integrated circuit and method for designing logic integrated circuit comprising the same - Google Patents

Semiconductor integrated circuit and method for designing logic integrated circuit comprising the same Download PDF

Info

Publication number
WO2000052753A1
WO2000052753A1 PCT/JP1999/001035 JP9901035W WO0052753A1 WO 2000052753 A1 WO2000052753 A1 WO 2000052753A1 JP 9901035 W JP9901035 W JP 9901035W WO 0052753 A1 WO0052753 A1 WO 0052753A1
Authority
WO
WIPO (PCT)
Prior art keywords
circuit
data
integrated circuit
signal
logic
Prior art date
Application number
PCT/JP1999/001035
Other languages
French (fr)
Japanese (ja)
Inventor
Masayuki Satoh
Takayuki Oshima
Isao Shimizu
Hideaki Takahashi
Original Assignee
Hitachi, Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi, Ltd. filed Critical Hitachi, Ltd.
Priority to PCT/JP1999/001035 priority Critical patent/WO2000052753A1/en
Publication of WO2000052753A1 publication Critical patent/WO2000052753A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design

Definitions

  • the present invention relates to a technology that is effective when used for designing a semiconductor integrated circuit and also for constructing a logic integrated circuit.
  • the design data described in the HDL is converted into a design data at the logic gate level by a program called a logic synthesis tool.
  • a logic synthesis tool is also provided by several EDA vendors.
  • the generated logic gate-level design data is again verified by test vectors.
  • the defect detection rate at this time is, for example, 95% or more. Failure due to verification If found, correct the design data at the logic gate level.
  • the layout and data at the element level are generated by a program called an automatic layout 'tool.
  • These automated layout tools are also provided by several EDA vendors.
  • the generated layout data is subjected to an actual load simulation by means of a test vector, including wiring delays, etc., and inappropriate parts are corrected and optimized.
  • a mask pattern data is generated by a network based on the generated layout data, and a mask is created based on the data.
  • a logic integrated circuit is formed on the semiconductor wafer by the previous process, and the wafer is cut into chips, sealed with a sealing material such as resin, and assembled into a package.
  • a sealing material such as resin
  • An object of the present invention is to provide a logic integrated circuit design method capable of greatly reducing the number of design steps and the development period.
  • Another object of the present invention is to provide a logic integrated circuit whose function can be easily changed as required.
  • Still another object of the present invention is to provide a logic integrated circuit capable of forming a normal function by substituting a defective part of a completed product even if the element has a defect.
  • a self-configuration circuit that is a semiconductor integrated circuit capable of configuring arbitrary logic
  • a design circuit at a functional level described in a language such as HDL is decoded by a control circuit, and the self-configuration is performed.
  • a logic integrated circuit having a desired logic function is configured.
  • the self-configuring circuit includes a memory circuit capable of reading and writing, a comparator circuit for comparing data written in the memory circuit with data read from the memory circuit, A variable address conversion circuit for converting the input address signal into a logic circuit having a desired logic function as an address signal to the memory circuit. Data is written to the memory circuit so that the read data of the logical circuit becomes an output signal expected for the input signal of the logic circuit.
  • the HDL language has a structure similar to that of an existing general programming language, and software that performs logic synthesis based on functional level design data written in the HDL language, that is, HDL description statements, and logic synthesis Since the software that converts design data into logic gate-level design data has already been developed, it generates a signal that determines the logical configuration of the self-configuring circuit based on the function-level design data. Such a control circuit can be fully realized using current technology.
  • the logic since the logic is configured using a self-configuring circuit having a memory circuit capable of reading and writing, the logic function can be changed by rewriting the memory circuit. Thus, it is possible to realize a logic integrated circuit whose functions can be easily changed according to the conditions.
  • the self-configuring circuit includes a comparison circuit that compares data written in the memory circuit with data read from the memory circuit, and a variable address conversion circuit.
  • the conversion address of the variable address conversion circuit can be constructed. If the memory circuit includes a defective part, the logic can be configured using only the normal area while avoiding the defective part. It can be avoided automatically and a normal function can be configured.
  • the control circuit that decodes the design data at the function level may be configured as a semiconductor integrated circuit different from the self-configured circuit, or may be configured as a self-configured circuit. It may be configured integrally on one semiconductor chip. When the control circuit for decoding the design data at the function level and the self-configuration circuit are integrated, a storage for storing the design data at the function level may be provided integrally.
  • a part of the memory circuit constituting the self-configuring circuit may be a storage region for storing the design data of the functional level.
  • the design data at the functional level described in the HDL language is about one tenth less than the design data at the logic gate level, so that It can be sufficiently stored in the memory circuit formed in the device.
  • the self-constituting circuit includes a memory circuit capable of reading and writing, and a memory written in the memory circuit.
  • a comparison circuit that compares data read from the memory circuit and an address conversion circuit that converts an address signal supplied to the memory circuit based on a comparison result in the comparison circuit
  • a comparison circuit that reads data from the memory circuit
  • a switch matrix circuit for switching the data stored in the storage circuit to an address signal input to the address conversion circuit. It is good to do. This makes it possible to configure a sequential circuit including a latch circuit such as a flip-flop.
  • the memory circuits that can be read and written in the self-configuration circuit include DRAM (dynamic random access memory) or SRAM (static random access memory).
  • a volatile memory e.g., memory
  • EEPROM electrically writable and erasable non-volatile storage device
  • FIG. 1 is a flowchart showing a procedure for developing a logic integrated circuit to which the present invention is applied.
  • FIG. 2 is a block diagram showing a first embodiment of a self-configuring circuit which enables the design method according to the present invention.
  • FIG. 3 is a block diagram showing a specific example of a variable address conversion circuit included in the self-configuration circuit of the first embodiment.
  • FIG. 4 is a logical configuration diagram showing a specific example of the comparison circuit included in the self-configuration circuit of the first embodiment.
  • FIG. 5 is a flowchart showing how to change the conversion address in the self-configuration circuit of the first embodiment.
  • FIG. 6 is an explanatory diagram showing an example of a logic gate circuit constituted by the self-configuration circuit of the first embodiment and its HDL description.
  • FIG. 7 is a block diagram illustrating an example of a system that configures a logic circuit having a desired logic function according to the HDL description using the self-configuration circuit according to the first embodiment.
  • FIG. 8 is a block diagram showing a second embodiment of the self-configuring circuit which enables the design method according to the present invention.
  • FIG. 9 is a circuit configuration diagram showing a specific example of a variable switch circuit included in the self-configuration circuit of the second embodiment.
  • FIG. 10 is a logical configuration diagram showing a specific example of a data storage circuit included in the self-configuration circuit of the second embodiment.
  • FIG. 11 is an explanatory diagram illustrating a flip-flop circuit as an example of a logic circuit including the self-configuration circuit according to the second embodiment and an HDL description thereof.
  • FIG. 12 is a flowchart illustrating an outline of a processing procedure in the control device when a desired logic circuit is configured using the self-configuration circuit according to the embodiment.
  • FIG. 13 is a block diagram showing a third embodiment of the self-configuring circuit which enables the design method according to the present invention.
  • FIG. 14 is a block diagram showing a fourth embodiment of the self-configuring circuit which enables the design method according to the present invention.
  • FIG. 15 is a flowchart showing a procedure for developing a conventional logic integrated circuit. BEST MODE FOR CARRYING OUT THE INVENTION
  • FIG. 1 is a flowchart showing a procedure for developing a logic integrated circuit to which the present invention is applied.
  • Step S describe the designed function in a language such as HDL (Step S 1).
  • step S3 the data is stored as a data file in a storage device such as a hard disk (step S3).
  • a storage device such as a hard disk
  • step S4 the operation of the design data described in the HDL is verified by a verification program called a test vector as to whether the operation is appropriate (step S4). If a defect is found by verification, the design data described in HDL is corrected. After that, the logic function described in the HDL is configured using a self-configuration circuit formed as a semiconductor integrated circuit (step S5). By the above procedure, a logic integrated circuit having a desired function is obtained, so that the development period is greatly reduced.
  • FIG. 2 shows a block diagram of a first embodiment of a self-constituting circuit that enables the design method according to the present invention according to the flowchart of FIG.
  • Each circuit block shown in FIG. 2 is formed on one semiconductor chip such as single crystal silicon by a known semiconductor manufacturing technique.
  • reference numeral 10 denotes a readable and writable memory circuit having substantially the same configuration as a known general-purpose DRAM (dynamic random access memory) or SRAM (static random access memory). It is.
  • a plurality of memory cells are arranged in a matrix, a plurality of read lines and a plurality of data lines are arranged in a lattice, and the memory cells in the same row correspond to each other.
  • the memory cells in the same column are connected to the corresponding memory array 11 and the corresponding memory cells in the memory array 11 by decoding the supplied address signal.
  • An address decoder 12 that sets one word line to the selected level, and a sense amplifier circuit 13 that amplifies the potential read from the memory cell connected to the selected word line to the data line
  • a write / read control circuit 14 for controlling the operation timing of the sense amplifier circuit 13 and the like based on the chip select signal CE and the write control signal WE.
  • the self-constituting circuit of this embodiment takes in a write data input from outside the chip and transfers it to the sense amplifier circuit 13 or read from the memory circuit 10.
  • An input / output & comparison circuit 20 that outputs data to the outside of the chip, compares read data with data input from outside the chip, and inputs / outputs an address signal input from outside the chip.
  • the variable address conversion circuit 30 converts the data according to the comparison result in the power & comparison circuit 20 and supplies the converted address to the address / decoder 12.
  • 41 is an address input terminal to which an address signal from the outside of the chip is input
  • 42 is a data input / output terminal to output read data from the memory circuit to the outside or to input write data from the outside.
  • FIG. 3 is a block diagram showing a specific example of the variable address conversion circuit 30 included in the self-configuration circuit of the embodiment shown in FIG.
  • the variable address circuit 30 has substantially the same circuit configuration as the memory circuit 10 of FIG.
  • variable address circuit 30 includes a plurality of memory cells arranged in a matrix, a plurality of word lines and a plurality of data lines arranged in a lattice, and the memory cells in the same row
  • the memory cells in the same column connected to the corresponding power supply line and the memory array 31 connected to the corresponding data line and the memory cell supplied to the input terminal 41 from the outside.
  • An address decoder 32 that decodes a dress signal to set one corresponding read line in the memory array 31 to a selected level, and a decode line from a memory cell connected to the selected read line.
  • a write control circuit for controlling the operation timing of the sense amplifier circuit 33 based on the comparison result signal CM from the input / output & comparison circuit 20. Composed of 3 4 etc. To have.
  • the address decoder 32 includes a decoding circuit and an incrementer or an arithmetic unit that increments the decoded address based on the comparison result signal CM.
  • the increment value may be stored in the memory 31 to reduce the storage capacity of the memory 31.
  • FIG. 4 shows a specific example of the input / output & comparison circuit 20 included in the self-configuration circuit of the first embodiment.
  • the input / output & comparison circuit 20 is connected to the signal line 51 connected to the output terminal of the sense amplifier circuit 13 and the data input / output terminal 42.
  • the switch means 21 provided between the read signal line 52 and the read / write control circuit 14 and controlled by the comparison instruction signal CC, and the read signal from the sense amplifier circuit 33
  • a NAND gate circuit 22 which receives the comparison instruction signal CC supplied from the write / read control circuit 14 as an input signal, an output signal of the NAND gate circuit 22 and the data input / output terminal 4 2 It is composed of an exclusive OR gate circuit 23 that receives signals and an OR gate circuit 24 that receives output signals of a plurality of exclusive OR gate circuits 23 as inputs.
  • a comparison circuit comprising the switch means 21, NAND gate circuit 22, and exclusive OR gate circuit 23 is provided for each data input / output terminal 42, and the exclusive OR gate of each comparison circuit is provided.
  • the output signal of the circuit 23 is input to the OR gate circuit 24, and the output signal of the OR gate circuit 24 is supplied to the variable address circuit 30 as a comparison result signal CM.
  • an input buffer and an output buffer commonly connected to the data input / output terminal 42 may be provided on the signal line 52 side.
  • variable address translation circuit 30 stores each address in the memory array 31 in each address of the memory array 31 by initial setting processing or the like. The corresponding address is stored.
  • the address decoder 32 of the variable address circuit 30 decodes the address signal and sets the corresponding read line in the memory array 31 to the selection level.
  • the previously stored address data is output, that is, the address conversion is performed (step S11).
  • the read address data is amplified by the sense amplifier 33 and supplied to the address decoder 12 of the memory circuit 10.
  • a dress The decoder 12 decodes the supplied address to set the corresponding word line in the memory array 11 to the selected level, and at that time, the data input from the outside via the input / output & comparison circuit 20. Write to the selected memory cell (step S12).
  • step S13 reading of the write data is performed from the memory array 11 (step S13).
  • the read data is amplified by the sense amplifier 13 and supplied to the input / output & comparison circuit 20.
  • the write data input at the time of data writing is input to the data input / output terminal 41.
  • the input / output & comparison circuit 20 compares the data read from the memory array 11 with the write data input to the data input / output terminal 41, and indicates a comparison result indicating a match or mismatch.
  • the signal CM is output to the write control circuit 34 of the variable address conversion circuit 30.
  • the write control circuit 34 checks the comparison result signal CM to determine whether or not the writing has been normally performed (step S14). If the write control circuit 34 determines that the write has failed, it sends a signal to the address decoder 32 to operate the internal increment and increment the input address signal (step S15). Then, the incremented address is supplied to the address decoder 12 to be decoded, and the next read line in the memory array 11 is set to the selected level. Then, the process returns to step S12, and data input from the outside via the input / output & comparison circuit 20 is written to the selected memory cell connected to the word line.
  • the write data is read from the memory array 11 again, and the input / output and comparison circuit 20 compares the read data with the data externally input to the data input / output terminal 42. Then, when they match, the write control circuit 34 outputs a write end signal WF to the outside, and the data write operation for one address ends (step S16). Upon receiving the write end signal WF, the external control circuit generates the next address signal and outputs the address signal to the address input terminal. 4 Enter in 1. In response, the write control flow of FIG. 5 is started again from step S1, and the write processing for the next address is executed.
  • the data to be written is read and written after the data is written, and if there is an error, the address is updated and the data is written to the next address position.
  • the address is automatically skipped and data is written to the next address. Therefore, in the self-configuration circuit of this embodiment, not only all the memory cells in the memory array 11 need not be normal, but also it is necessary to test the memory array in advance for any defective bits. It has the advantage that there is no.
  • the output signal line of the sense amplifier 33 of the variable address conversion circuit 30 in FIG. It is configured to be able to supply not only to the address decoder 12 of the memory circuit 10 but also to the input / output & comparison circuit 20. Then, in the same manner as described above, the normality / abnormality of the write data to the memory array 31 is determined, and if abnormal, the address is skipped. As a result, regarding the memory array 31 as well, not only all the memory cells need not be normal, but also it is not necessary to test the memory array for a defective bit in advance.
  • FIG. 6 shows an example of a logic gate circuit constituted by the self-configuration circuit of the first embodiment and an HDL description thereof.
  • FIG. 7 shows an example of a system that configures a logic circuit having a desired logic function according to the HDL description using the self-configuration circuit of the first embodiment.
  • 100 is the self-configuration circuit of the above embodiment
  • 200 is a storage device (file) storing design data described in HDL as shown in FIG. 6,
  • 300 is the storage device (file). Decodes the HDL description stored in the file and forms a signal to configure the corresponding logic function in the self-configuration circuit 100
  • This is a control device that outputs data.
  • the control device 300 can be configured using, for example, a general-purpose microphone computer.
  • the control device 300 decodes the HDL description and recognizes that the configuration target is a NAND gate circuit. For example, the control device 300 uses the truth table of Table 1 below as an address signal to be supplied to the self-configuration circuit 100. A combination "0, 0", “1, 0", “0, 1,...,” 1, 1 "of the indicated input signals In0, In1 is generated.
  • the generated address signal is applied to the address input terminal 41 (see FIG. 2) of the self-configuration circuit 100.
  • the control device 300 generates a data corresponding to the output Out 0 of the truth table as a write data corresponding to each of the above addresses, and sends the write data to the self-configuration circuit 100.
  • data is written to the memory circuit 10 according to the procedure described with reference to the flowchart of FIG.
  • the input address signal may be two bits. Therefore, the address' decoder 32 shown in FIG. 3 is divided into, for example, two bits, so that one read line in the memory array 31 can be selected with only two bits. Good.
  • FIG. 8 is a block diagram showing a second embodiment of the self-configuring circuit which enables the design method according to the present invention.
  • This embodiment is obtained by adding a data storage 60 and a switch matrix 70 as a variable switch circuit to the self-configuration circuit of the first embodiment shown in FIG.
  • the data storage 60 is the data input from the data input / output terminal 42 or the data read from the memory circuit 10. This circuit is provided between the input / output & comparison circuit 20 and the data input / output terminal 42.
  • the switch matrix 70 is a circuit for supplying the data held in the data storage 60 to the variable address conversion circuit 30 in place of the input address signal.
  • the address input terminal 41 And the variable address conversion circuit 30 is a circuit for supplying the data held in the data storage 60 to the variable address conversion circuit 30 in place of the input address signal.
  • the memory circuit 10, the input / output & comparison circuit 20, and the variable address conversion circuit 30 other than the data storage 60 and the switch matrix 70 have exactly the same configuration as that of the first embodiment.
  • FIG. 9 is a circuit configuration diagram showing a specific example of the switch matrix 70 included in the self-configuration circuit (FIG. 8) of the second embodiment.
  • the switch matrix 70 has a plurality of signal lines 71 on which address signals input to the address input terminals 41 and the output of the data storage 60 are provided.
  • the signal lines 72 on which signals are carried are arranged in a grid pattern so as to cross each other, and a switching circuit 73 is arranged at each intersection of the signal lines 71 and 72.
  • a RAM 74 for storing control information of each switch circuit 73 is provided.
  • the switching circuit 73 switches the address signal or data storage input from the address input terminal 41.
  • switch elements SW 1 and SW 2 which are a pair of MOS FETs that are turned on and off complementarily to select and output the 60 output signal.
  • the gate terminals of the switch elements SW 1 and SW 2 are connected to the RAM terminals.
  • FIG. 10 is a logical configuration diagram showing a specific example of the data storage circuit 60 included in the self-configuration circuit (FIG. 8) of the second embodiment.
  • the data storage circuit 60 includes a flip-flop FF provided for each two data lines of the memory array 11 in the memory circuit 10. 1, FF2, FFn, and AND gates G1, G2,... Gn for forming a latch clock for each flip-flop.
  • each flip-flop F Fi one signal (d i) of a pair of data lines is input to a data input terminal D.
  • the other signal (A i) of the pair of data lines is input to the AND gate G i together with the system clock signal CLK.
  • the output signal of the AND gate G i is input to the clock terminal ck of the corresponding flip-flop FF i, and the input signal to the data terminal D is synchronized with the falling or rising of the signal to the clock terminal ck. It is configured to be taken in the flip-flop FFi.
  • the signal Ai when the signal A i is at the low level, the output of the AND gate G i is fixed at the low level, so that even when the system clock CLK changes, the corresponding flip-flop FF i is latched. No action is taken. That is, in this embodiment, the signal Ai is used as a signal (hereinafter, referred to as an active bit) for controlling whether or not data is taken into the flip-flop FFi.
  • the self-configuration circuit in FIG. 8 uses the data storage 60 having the above-described operating characteristics to select data read from the memory circuit 10 according to a certain input state. Then, by supplying this to the variable address conversion circuit 30 via the switch matrix 70, the next input state can be controlled by the previous output data. That is, by this, the order A circuit can be configured.
  • FIG. 11 shows an example of a flip-flop circuit as an example of a logic circuit constituted by the self-configuration circuit of the second embodiment shown in FIG. 8 and its HDL description. ing.
  • each output terminal of two NAND gate circuits G11 and G12 is connected to one input terminal of the other NAND gate circuit.
  • the truth table representing the output signal states corresponding to the input signals of the two NAND gate circuits G 11 and G 12 constituting the flip-flop circuit is as shown in Table 2 below.
  • Al and A2 are the above-mentioned active bits stored in the memory circuit 10 corresponding to the input. Only when this active bit is "1", the output value of the flip-flop is the truth of the corresponding NAND gate. Outputs value data.
  • a flip-flop circuit as shown in FIG. 11 When a flip-flop circuit as shown in FIG. 11 is configured using the self-configuration circuit of FIG. 8, first, four input signals InO, Inl, In2, In3 Can be input from the address input terminal 41 through the switch matrix 70. Input to the variable address conversion circuit 30 and the output data d 1, A 1, d 2, and A 2 of the truth table in Table 2 corresponding to the combination of those input signals are input from the data input / output terminal 42 I do. As a result, the output data of the truth table d 1, A 1, d 2 and A 2 are written. As in the first embodiment, when writing is completed, reading is performed to determine whether or not writing has been performed normally, and in the case of a writing error, the address is updated and writing is performed at another address.
  • a state is set for a predetermined flip-flop (for example, FF1, FF2) in the storage 60.
  • FF1, FF2 a predetermined flip-flop
  • the input signals In 2 and In 3 are fixed to “0”, respectively, and attention is paid to the NAND gate circuit Gl 1, and the input signals In 0 and In 1 are flip-flop FF Set to "0, 0", “1, 0", "0, 1” or "1, 1" according to the data you want to keep at 1 and input from the address input terminal 41.
  • the input signals Ino and Inl are fixed at “0", respectively, and the input signals In2 and In3 are held in the flip-flop FF2 while focusing on the NAND gate circuit G12.
  • the N AND gate circuit G "1" is read out as the active bit A2 corresponding to 2. Therefore, the clock CLK is supplied to the flip-flop FF2 through the AND gate G2 of the data storage 60.
  • the flip-flop consisting of two NAND gates as shown in Fig. 11 has its output ⁇ ut 0, 0 because its output signal is fed back to one input terminal of the other NAND gate. ut 1 cannot be "0" at the same time. Therefore, when setting the states of the flip-flops FF1 and FF2 of the data storage 60, it is necessary to take care that neither of the holding states becomes "0".
  • the control information RAM 74 in the switch matrix circuit 70 is surrounded by a dotted line in FIG. 9 (A). Rewrite the storage data of the memory cells corresponding to the switches CSW31 and CSW22, and switch those switches from the address input terminal 41 to the output terminal of the data storage 60. As a result, the input signals I n1 and I n2 of the flip-flop in FIG. 11 are not permitted to be input, and the outputs Out 0 and Out 1 of the NAND gates Gll and G12 are input instead.
  • a signal (address) is supplied to the variable address conversion circuit 30 at the next stage. In other words, this forms a flip-flop feedback loop.
  • a system that configures a logic circuit having a desired logic function according to the HDL description using the self-configuration circuit of the second embodiment of FIG. 8 uses the self-configuration circuit of the first embodiment shown in FIG.
  • the system shown in Figure 7 It may be the same as In other words, the control device 300, which is configured separately from the self-configuration circuit, decodes the HDL description read from the file in which the HDL-described design data is stored, and assigns the corresponding logic function to the self-configuration circuit 1. Form and output a signal to be configured in 0 0.
  • the control device 300 decodes the HDL description and recognizes that the configuration target is a flip-flop circuit. For example, the control device 300 uses the truth of Table 2 below as an address signal to be supplied to the self-configuration circuit 100. Combination of input signals InO, In1, In2, In3 shown in the value table
  • the generated address signal is applied to the address input terminal 41 of the self-configuration circuit 100.
  • the controller 300 writes the active bits and the data A 1 and A 2 corresponding to the data d 1 and d 2 of the truth table and the data corresponding to the above-mentioned addresses. It is generated as data and applied to the data input / output terminal 42 in parallel with the input of the address signal to the self-configuration circuit 100 in time.
  • FIG. 12 shows an outline of a control procedure of the control device 300 constituting a desired logic circuit.
  • the control device 300 first decodes the HDL description (step S21), and extracts a combinational circuit and a sequential circuit constituting a logic circuit from the HDL description (step S22). Next, a truth table for the extracted combinational circuit or sequential circuit, that is, a truth value database is generated (step S23). Then, using the generated truth value data, the data writing to the memory circuit 10 of the self-configuration circuit 100 and the setting of the variable address conversion circuit 30 are performed according to the flowchart of FIG. (Step S24).
  • control device 300 decodes the HDL description and, when judging that the extracted logic circuit is a sequential circuit, extracts circuit connection information of the focused sequential circuit (step S25) .
  • control information to be stored in the control information RAM 74 of the switch matrix circuit 70 is generated and written using the extracted circuit connection information (step S26).
  • FIG. 13 shows a third embodiment of a self-configuring circuit which enables the design method according to the present invention.
  • a plurality of self-configuration circuits 100 as shown in FIG. 8 are arranged in a matrix on one semiconductor chip, and a horizontal wiring is provided between the self-configuration circuits.
  • a region 110 and a vertical wiring region 120 are provided, and a switcher for selectively connecting a signal line is provided at an intersection of the horizontal wiring region 110 and the vertical wiring region 120.
  • a trick circuit 130 is provided.
  • the address input terminal of each self-configuration A switch matrix circuit 140 for selectively coupling to the signal lines of the wiring area 120 and the data input / output terminals of each self-constituting circuit 100 are connected to the signal lines of the horizontal wiring area 110.
  • a switch matrix circuit 150 for selective coupling to the circuit.
  • FIG. 14 shows a fourth embodiment of the self-configuration circuit which enables the design method according to the present invention.
  • an HDL storage that stores design data of an HDL description as shown in FIG. 7 together with a self-configuration circuit 100 ′ shown in FIGS. 2, 8 and 13.
  • an HDL controller 300 ′ that decodes the HDL description and forms and outputs a signal for configuring the corresponding logical function using the self-configuration circuit 100.
  • the HDL controller 300 ′ that decodes the HDL sentence has a configuration similar to, for example, a CPU of a micro-program control method, that is, a memory (microphone) that stores a microprogram that describes a procedure for processing each HDL language. And a control circuit for controlling the read sequence of the memory, a decoder circuit for decoding the read microphone command and forming a control signal, and the like. Since the HDL language is not enormous and its grammar is relatively simple, it is possible to implement it on a single semiconductor chip using current semiconductor integrated circuit technology.
  • FIG. 14 shows that the memory circuit 10 mainly including the memory array and the variable address conversion circuit 30 are arranged in one memory space.
  • the memory array 11 forming the memory circuit 10 and the memory array 31 forming the variable address conversion circuit 30 may be arranged in separate areas in the same memory array.
  • a Dress '' Decor Dashes 12, 32, a comparison circuit 14, a storage device 60, a switch matrix 70, etc. are collectively shown as an addressing circuit. Since the storage 60 described in the embodiment of FIG. 8 is also a kind of memory, this is also based on the same idea as above, and the memory array 11 and the variable address
  • the conversion circuit 30 and the memory array 31 may be arranged in a separate area in one memory array.
  • the HDL storage that stores the design data of the HDL description can also be configured to be arranged in a separate area in one memory array together with the memory array 11 that constitutes the memory circuit 10. It is.
  • the present invention is not limited to the above-described embodiments, and may be variously modified without departing from the gist thereof.
  • the logical gate circuit to be configured is not limited to the NAND gate, but may be a NOR gate, an AND gate, an OR gate, or the like.
  • the flip-flop circuit to be configured is not limited to the one including only two NAND gates as shown in FIG. 11, but may be an RS flip-flop having a reset terminal and a reset terminal.
  • the invention made by the present inventor has been mainly described by taking, as an example, a method of designing a logic integrated circuit, which is a field of application as a background, but the present invention is not limited thereto.
  • it can be used for the development of a semiconductor integrated circuit in which a logic circuit and an analog circuit are mixed on one semiconductor chip.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)

Abstract

By using a semiconductor integrated self-constituting circuit capable of constituting an arbitrary logic, a control unit or control circuit interprets design data of function level described in a language, for example, HDL, and a signal for determining the logic structure of the self-constituting circuit is fed from the control unit or control circuit to the self-constituting circuit so as to constitute a logic integrated circuit having a desired logic function.

Description

明 細 半導体集積回路およびそれを用いた論理集積回路の設計方法  Semiconductor integrated circuit and logic integrated circuit design method using the same
技術分野 Technical field
本発明は、 半導体集積回路の設計さらには論理集積回路の構築方式に利 用して有効な技術に関する。  The present invention relates to a technology that is effective when used for designing a semiconductor integrated circuit and also for constructing a logic integrated circuit.
背景技術 Background art
近年、 論理集積回路の開発すなわち設計からその試作までは、 図 1 5に 示すような手順に従って行われるようになって来ている。 すなわち、 論理 集積回路の開発は、 図 1 5に示されているように、 先ず実現しょうとする 論理集積回路の機能設計を行なう。 次に、 設計された機能を H D L (Hardware Description Language) などの言言吾で言己述する。 そして、 こ の HD Lで記述された設計デ一夕 (HDL記述文) は、 ハードディスクな どの記憶装置にデ一夕ファイルとして記憶しておく。 なお、 HDL記述に 関しては、 状態遷移図やフローチヤ一卜から自動的に HD L記述文を作成 する支援ツール (プログラム) が ED A (エンジニアリング · デザィン · オートメーション) ベンダから提供されている。 次に、 HDL記述された設計データをテス ト ·べク トルと呼ばれる検証 用プログラムにより、 動作が適切であるか検証する。 検証によって不具合 が見つかった場合には、 HDL記述文を修正する。  In recent years, the development of a logic integrated circuit, that is, the process from design to prototyping, has been performed according to the procedure shown in Figure 15. That is, in the development of a logic integrated circuit, as shown in Fig. 15, first, the functional design of the logic integrated circuit to be realized is performed. Next, the designed function is described in a language such as HDL (Hardware Description Language). The design data (HDL description) described in the HDL is stored as a data file in a storage device such as a hard disk. For HDL descriptions, EDA (Engineering Design Automation) vendors provide support tools (programs) that automatically create HDL descriptions from state transition diagrams and flowcharts. Next, the design data described in HDL is verified by a verification program called a test vector to determine whether the operation is appropriate. If the verification reveals a defect, correct the HDL description.
その後、 HD L記述された設計データを論理合成ツールと呼ばれるプロ グラムにより、 論理ゲートレベルの設計デ一夕に変換する。 このような論 理合成ツールも、 複数の EDAベンダより提供されている。 生成された論 理ゲートレベルの設計データは、 再びテス ト · ベク トルにより検証される。 このときの不良検出率は例えば 95 %以上とされる。 検証によって不具合 が見つかった場合には、 論理ゲ一トレベルの設計データを修正する。 After that, the design data described in the HDL is converted into a design data at the logic gate level by a program called a logic synthesis tool. Such logic synthesis tools are also provided by several EDA vendors. The generated logic gate-level design data is again verified by test vectors. The defect detection rate at this time is, for example, 95% or more. Failure due to verification If found, correct the design data at the logic gate level.
次に、 論理ゲートレベルの設計デ一夕に基づいて、 自動レイアウ ト ' ツールと呼ばれるプログラムにより素子レベルのレイアウ ト , デ一夕を生 成する。 このような自動レイアウ ト · ツールも、 複数の E D Aベンダによ り提供されている。 生成されたレイアウ ト · デ一夕は、 テス トベク トルに よって配線遅延等を含めた形で実負荷シミュレ一ションが行なわれて、 不 適切な個所は修正され最適化される。 その後、 生成された上記レイァゥ ト . データに基づいてァ一トワークによりマスクパターン ·デ一夕を生成 し、 このデ一夕に基づいてマスクを作成する。  Next, based on the design data at the logic gate level, the layout and data at the element level are generated by a program called an automatic layout 'tool. These automated layout tools are also provided by several EDA vendors. The generated layout data is subjected to an actual load simulation by means of a test vector, including wiring delays, etc., and inappropriate parts are corrected and optimized. Thereafter, a mask pattern data is generated by a network based on the generated layout data, and a mask is created based on the data.
その後、 前工程により半導体ウェハ上に論理集積回路が形成され、 ゥェ ハは各チップに切断されて樹脂などの封止材によって封止されてパッケ一 ジに組み立てられる。 しかしながら、 上述のような設計、 製造方式に あっては、 最終的な論理集積回路装置として完成されるまでに多くの設計 工程を経て何段階もの設計データが作成されるため、 データ量の増大を招 いている。 また、 システム全体が一つの半導体チップ上に構成されるシス テム · オン ' チヅプでは、 様々な機能回路プロックを多用して構成される ことから、 設計データの検証や修正の工数が増加しており、 設計上大きな 問題となって来ている。  Thereafter, a logic integrated circuit is formed on the semiconductor wafer by the previous process, and the wafer is cut into chips, sealed with a sealing material such as resin, and assembled into a package. However, in the above-described design and manufacturing methods, many stages of design data are created through many design processes until the final logic integrated circuit device is completed, so that the amount of data increases. Inviting. In addition, in the system-on-chip, in which the entire system is implemented on a single semiconductor chip, various functional circuit blocks are frequently used, so the number of steps for verifying and correcting design data is increasing. It is becoming a big problem in design.
さらに、 従来の設計手法では、 素子を微細化すればするほど 1つの半導 体集積回路 ( I Cとも言う) を製造するために使用されるマスクの枚数が 増大するとともに、 微細加工のため高価な製造装置を必要としており、 設 計コス ト、 製造コス トの増加、 歩留まりの低下を招いている。  Furthermore, in the conventional design method, as the size of the element is reduced, the number of masks used for manufacturing one semiconductor integrated circuit (also referred to as IC) increases, and the cost increases due to the fine processing. Production equipment is required, which causes an increase in design and manufacturing costs and a decrease in yield.
しかも、 従来の設計手法では、 各製品ごとに別個のマスクを製作しなく てはならないため、 新しい製品の開発に要する期間が長くなる。 また、 今 後実現されると予想されるディ一プ ' サブミクロン ( 0 . l〃m以下) の 微細加工では、 S O R (シンクロ トロン) 装置が必須となるので、 半導体 装置メーカ一一社ではその投資が困難になり、 微細化に対する投資額が限 界に近づいている。 In addition, the traditional design method requires a separate mask for each product, which increases the time required to develop a new product. In addition, SOR (Synchrotron) equipment is required for deep sub-micron (0.1 μm or less) fine processing, which is expected to be realized in the future. Investment becomes difficult, and the amount of investment for miniaturization is limited Approaching the world.
この発明の目的は、 設計工数および開発期間を大幅に短縮することが可 能な論理集積回路の設計手法を提供することにある。  An object of the present invention is to provide a logic integrated circuit design method capable of greatly reducing the number of design steps and the development period.
この発明の他の目的は、 必要に応じて機能の変更が容易な論理集積回路 を提供することにある。  Another object of the present invention is to provide a logic integrated circuit whose function can be easily changed as required.
この発明のさらに他の目的は、 出来上がった製品の一部の素子に不良が あってもそれを代替して正常な機能を構成することができる論理集積回路 を提供することにある。  Still another object of the present invention is to provide a logic integrated circuit capable of forming a normal function by substituting a defective part of a completed product even if the element has a defect.
この発明の前記ならびにそのほかの目的と新規な特徴については、 本明 細書の記述および添附図面から明らかになるであろう。 発明の開示  The above and other objects and novel features of the present invention will become apparent from the description of the present specification and the accompanying drawings. Disclosure of the invention
本願において開示される発明のうち代表的なものの概要を説明すれば、 下記のとおりである。  The outline of a typical invention disclosed in the present application is as follows.
すなわち、 任意の論理を構成可能な半導体集積回路化された自己構成回 路を用い、 H D Lのような言語で記述された機能レベルの設計デ一夕を制 御回路で解読して、 上記自己構成回路の論理構成を決定する信号を、 上記 制御回路から上記自己構成回路に与えることによって、 所望の論理機能を 有する論理集積回路を構成するようにしたものである。  In other words, using a self-configuration circuit that is a semiconductor integrated circuit capable of configuring arbitrary logic, a design circuit at a functional level described in a language such as HDL is decoded by a control circuit, and the self-configuration is performed. By providing a signal for determining the logical configuration of the circuit from the control circuit to the self-configuration circuit, a logic integrated circuit having a desired logic function is configured.
上記自己構成回路は、 読み出しおよび書き込みが可能なメモリ回路と、 該メモリ回路に書き込まれたデ一夕とメモリ回路から読み出されたデ一夕 とを比較する比較回路と、 上記メモリ回路に供給されるァドレス信号を上 記比較回路における比較結果に基づいて変換する可変ァドレス変換回路と を含み、 所望の論理機能を有する論理回路の入力信号を上記メモリ回路へ のアドレス信号とし、 かっこのメモリ回路の読み出しデ一夕が当該論理回 路の上記入力信号に対して期待される出力信号となるように、 上記メモリ 回路にデータを書き込むようにする。 H D L言語は既存の一般的なプログラム言語と類似の構造を有している とともに、 H D L言語で記述された機能レベルの設計データすなわち H D L記述文に基づいて論理合成を行なうソフ トウエアおよび論理合成された 設計デ一夕から論理ゲート · レベルの設計デ一夕に変換するソフ トウェア はすでに開発されていることから、 機能レベルの設計データに基づいて上 記自己構成回路の論理構成を決定させる信号を生成する制御回路は現在の 技術をもって充分に実現可能である。 The self-configuring circuit includes a memory circuit capable of reading and writing, a comparator circuit for comparing data written in the memory circuit with data read from the memory circuit, A variable address conversion circuit for converting the input address signal into a logic circuit having a desired logic function as an address signal to the memory circuit. Data is written to the memory circuit so that the read data of the logical circuit becomes an output signal expected for the input signal of the logic circuit. The HDL language has a structure similar to that of an existing general programming language, and software that performs logic synthesis based on functional level design data written in the HDL language, that is, HDL description statements, and logic synthesis Since the software that converts design data into logic gate-level design data has already been developed, it generates a signal that determines the logical configuration of the self-configuring circuit based on the function-level design data. Such a control circuit can be fully realized using current technology.
上記設計手法によれば、 論理集積回路の開発に際して、 H D L記述文の み作成すれば良く、 H D L記述文に基づく論理合成およびその検証並びに 論理合成された設計データから論理ゲート · レベルの設計データへの変換 および検証が不用になるので、 設計工数および開発期間を大幅に短縮する ことが可能になる。 しかも、 状態遷移図やフローチャートから自動的に H D L記述文を作成する支援ツール (プログラム) が E D Aベンダから提供 されているので、 H D L記述の作成も比較的容易に行える。  According to the above design method, when developing a logic integrated circuit, only the HDL description statement needs to be created. Logic synthesis based on the HDL description statement and its verification, and from logic-synthesized design data to logic gate-level design data This eliminates the need for conversion and verification, greatly reducing design man-hours and development time. Moreover, since a support tool (program) for automatically creating an HDL description from a state transition diagram or a flowchart is provided by an EDA vendor, it is relatively easy to create an HDL description.
また、 本発明では、 読み出しおよび書き込みが可能なメモリ回路を有す る自己構成回路を使用して論理を構成するようにしているため、 メモリ回 路の書き換えにより論理機能の変更が可能となり、 必要に応じて機能の変 更が容易な論理集積回路を実現することができる。  Further, in the present invention, since the logic is configured using a self-configuring circuit having a memory circuit capable of reading and writing, the logic function can be changed by rewriting the memory circuit. Thus, it is possible to realize a logic integrated circuit whose functions can be easily changed according to the conditions.
さらに、 上記自己構成回路は、 メモリ回路に書き込まれたデータとメモ リ回路から読み出されたデータとを比較する比較回路と可変ァドレス変換 回路とを備えているので、 構成したい論理を自己検証しながら可変ァドレ ス変換回路の変換アドレスを構成して行くことができる。 そして、 メモリ 回路が不良個所を含んでいるような場合には、 不良個所を避けて正常な領 域のみを使用して論理を構成することができるため、 一部の素子に不良が あってもそれを自動的に回避して正常な機能を構成することができる。 なお、 機能レベルの設計データを解読する上記制御回路は、 上記自己構 成回路と異なる半導体集積回路として構成してもよいし、 自己構成回路と 一体にして一つの半導体チヅプ上に構成するようにしてもよい。 機能レべ ルの設計データを解読する上記制御回路と上記自己構成回路とを一体にし た場合には、 機能レベルの設計デ一夕を格納するス トレ一ジも一体に設け るとよい。 Further, the self-configuring circuit includes a comparison circuit that compares data written in the memory circuit with data read from the memory circuit, and a variable address conversion circuit. However, the conversion address of the variable address conversion circuit can be constructed. If the memory circuit includes a defective part, the logic can be configured using only the normal area while avoiding the defective part. It can be avoided automatically and a normal function can be configured. The control circuit that decodes the design data at the function level may be configured as a semiconductor integrated circuit different from the self-configured circuit, or may be configured as a self-configured circuit. It may be configured integrally on one semiconductor chip. When the control circuit for decoding the design data at the function level and the self-configuration circuit are integrated, a storage for storing the design data at the function level may be provided integrally.
これにより、 機能レベルで記述された設計文をス トレ一ジに格納してや るだけで、 自己の判断と処理で所望の論理機能を有する完全に自己構成可 能な論理集積回路を実現することができる。 また、 上記自己構成回路を構 成するメモリ回路の一部の領域を上記機能レベルの設計データを格納する ス トレ一ジ領域とすることも可能である。 例えば H D L言語で記述された 機能レベルの設計デ一夕は、 論理ゲート · レベルの設計デ一夕に比べてそ のデ一夕量が約 1 0分の 1程度であるため、 半導体集積回路内に形成され たメモリ回路に充分に格納可能である。  As a result, it is possible to realize a completely self-configurable logic integrated circuit having a desired logic function through self-determination and processing simply by storing the design statement described at the function level in the storage. it can. Further, a part of the memory circuit constituting the self-configuring circuit may be a storage region for storing the design data of the functional level. For example, the design data at the functional level described in the HDL language is about one tenth less than the design data at the logic gate level, so that It can be sufficiently stored in the memory circuit formed in the device.
さらに、 構成する論理機能が組み合わせ回路のみでなく順序回路を含む ような場合には、 上記自己構成回路として、 上記読み出しおよび書き込み が可能なメモリ回路と、 該メモリ回路に書き込まれたデ一夕とメモリ回路 から読み出されたデータとを比較する比較回路と、 上記メモリ回路に供給 されるァドレス信号を上記比較回路における比較結果に基づいて変換する ァドレス変換回路との他に、 メモリ回路から読み出されたデータを保持す るデータス トレージ回路と、 該デ一夕ス トレ一ジ回路に保持されている データを上記ァドレス変換回路に入力されるァドレス信号に切り替えるス イ ッチマ ト リ ックス回路とを設けるようにすると良い。 これによつて、 フ リップフ口ップのようなラツチ回路を含む順序回路を構成することができ る。  Further, when the logic function to be configured includes not only a combinational circuit but also a sequential circuit, the self-constituting circuit includes a memory circuit capable of reading and writing, and a memory written in the memory circuit. In addition to a comparison circuit that compares data read from the memory circuit and an address conversion circuit that converts an address signal supplied to the memory circuit based on a comparison result in the comparison circuit, a comparison circuit that reads data from the memory circuit And a switch matrix circuit for switching the data stored in the storage circuit to an address signal input to the address conversion circuit. It is good to do. This makes it possible to configure a sequential circuit including a latch circuit such as a flip-flop.
上記機能レベルの設計データを記述する言語としては、 例えば H D L言 語を用いることができる。 上記自己構成回路に含まれる読み出しおよび書 き込みが可能なメモリ回路としては、 D R A M (ダイナミ ック型ランダ ム ' アクセスメモリ) または S R A M (スタティ ック型ランダム . ァクセ ス · メモリ) のような揮発性メモリが望ましいが、 電気的に書き込みおよ び消去可能な不揮発性記憶装置 (EEPROM) であってもよい。 揮発性 メモリを使用することにより、 余分な昇圧回路を設ける必要がないととも に、 低電圧駆動が可能である。 また、 SRAMでなく DRAMを用いた場 合には、 同一記憶容量に対して占有面積を減らしチップサイズを小さくす ることができる。 一方、 D RAMでなく S R AMを用いた場合には、 DR AMに特有のリフレツシュ動作が不用になるという利点がある。 図面の簡単な説明 As a language for describing the design data at the functional level, for example, an HDL language can be used. The memory circuits that can be read and written in the self-configuration circuit include DRAM (dynamic random access memory) or SRAM (static random access memory). A volatile memory (e.g., memory) is preferred, but it may be an electrically writable and erasable non-volatile storage device (EEPROM). By using volatile memory, there is no need to provide an extra booster circuit, and low-voltage driving is possible. When DRAM is used instead of SRAM, the occupied area can be reduced and the chip size can be reduced for the same storage capacity. On the other hand, when the SRAM is used instead of the DRAM, there is an advantage that the refresh operation peculiar to the DRAM becomes unnecessary. BRIEF DESCRIPTION OF THE FIGURES
図 1は、 本発明を適用した論理集積回路の開発手順を示すフローチヤ一 トである。  FIG. 1 is a flowchart showing a procedure for developing a logic integrated circuit to which the present invention is applied.
図 2は、 本発明に係る設計手法を可能にする自己構成回路の第 1の実施 例を示すブロック図である。  FIG. 2 is a block diagram showing a first embodiment of a self-configuring circuit which enables the design method according to the present invention.
図 3は、 第 1の実施例の自己構成回路に含まれる可変ァドレス変換回路 の具体例を示すブロック図である。  FIG. 3 is a block diagram showing a specific example of a variable address conversion circuit included in the self-configuration circuit of the first embodiment.
図 4は、 第 1の実施例の自己構成回路に含まれる比較回路の具体例を示 す論理構成図である。  FIG. 4 is a logical configuration diagram showing a specific example of the comparison circuit included in the self-configuration circuit of the first embodiment.
図 5は、 第 1の実施例の自己構成回路における変換ァドレスの変更の仕 方を示すフローチャートである。  FIG. 5 is a flowchart showing how to change the conversion address in the self-configuration circuit of the first embodiment.
図 6は、 第 1の実施例の自己構成回路により構成される論理ゲート回路 の一例およびその HD L記述を示す説明図である。  FIG. 6 is an explanatory diagram showing an example of a logic gate circuit constituted by the self-configuration circuit of the first embodiment and its HDL description.
図 7は、 第 1の実施例の自己構成回路を用い HD L記述に従って所望の 論理機能の論理回路を構成するシステムの例を示すブロック図である。 図 8は、 本発明に係る設計手法を可能にする自己構成回路の第 2の実施 例を示すブロック図である。  FIG. 7 is a block diagram illustrating an example of a system that configures a logic circuit having a desired logic function according to the HDL description using the self-configuration circuit according to the first embodiment. FIG. 8 is a block diagram showing a second embodiment of the self-configuring circuit which enables the design method according to the present invention.
図 9は、 第 2の実施例の自己構成回路に含まれる可変スィ ツチ回路の具 体例を示す回路構成図である。 図 1 0は、 第 2の実施例の自己構成回路に含まれるデ一タス トレ一ジ回 路の具体例を示す論理構成図である。 FIG. 9 is a circuit configuration diagram showing a specific example of a variable switch circuit included in the self-configuration circuit of the second embodiment. FIG. 10 is a logical configuration diagram showing a specific example of a data storage circuit included in the self-configuration circuit of the second embodiment.
図 1 1は、 第 2の実施例の自己構成回路により構成される論理回路の一 例としてのフリップフロップ回路とその H D L記述を示す説明図である。 図 1 2は、 実施例の自己構成回路を用いて所望の論理回路を構成する場 合の制御装置における処理手順の概略を示すフローチャートである。  FIG. 11 is an explanatory diagram illustrating a flip-flop circuit as an example of a logic circuit including the self-configuration circuit according to the second embodiment and an HDL description thereof. FIG. 12 is a flowchart illustrating an outline of a processing procedure in the control device when a desired logic circuit is configured using the self-configuration circuit according to the embodiment.
図 1 3は、 本発明に係る設計手法を可能にする自己構成回路の第 3の実 施例を示すブロック図である。  FIG. 13 is a block diagram showing a third embodiment of the self-configuring circuit which enables the design method according to the present invention.
図 1 4は、 本発明に係る設計手法を可能にする自己構成回路の第 4の実 施例を示すブロック図である。  FIG. 14 is a block diagram showing a fourth embodiment of the self-configuring circuit which enables the design method according to the present invention.
図 1 5は、 従来の論理集積回路の開発手順を示すフローチャートである。 発明を実施するための最良の形態  FIG. 15 is a flowchart showing a procedure for developing a conventional logic integrated circuit. BEST MODE FOR CARRYING OUT THE INVENTION
以下、 本発明 好適な実施例が図面に基づいて説明される。  Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
図 1は、 本発明を適用した論理集積回路の開発手順を示すフローチヤ一 トである。  FIG. 1 is a flowchart showing a procedure for developing a logic integrated circuit to which the present invention is applied.
先ず実現しょう とする論理集積回路の機能設計を行なう (ステップ S First, design the function of the logic integrated circuit to be realized (Step S
1 ) 。 次に、 設計された機能を H D Lなどの言語で機能記述 (ステップ S1). Next, describe the designed function in a language such as HDL (Step S
2 ) し、 ハードディスクなどの記憶装置にデ一夕ファイルとして記憶する (ステップ S 3 ) 。 なお、 H D L記述に関しては、 前述したように、 状態 遷移図やフローチャートなどから自動的に H D L記述文を作成する支援 ヅ一ルが E D Aベンダから提供されているので、 そのようなヅ一ルを用い て作成すると良い。 2) Then, the data is stored as a data file in a storage device such as a hard disk (step S3). As for HDL description, as mentioned above, EDA vendors provide support tools for automatically creating HDL descriptions from state transition diagrams and flowcharts. It is good to create.
次に、 H D L記述された設計デ一夕をテス ト ·べク トルと呼ばれる検証 用プログラムにより、 動作が適切であるか検証する (ステップ S 4 ) 。 検 証によって不具合が見つかった場合には、 H D L記述された設計データを 修正する。 その後、 H D L記述された論理機能を、 半導体集積回路として形成され た自己構成回路を用いて構成する (ステップ S 5 ) 。 以上の手順によって 所望の機能を有する論理集積回路が得られるので、 大幅に開発期間が短縮 される。 Next, the operation of the design data described in the HDL is verified by a verification program called a test vector as to whether the operation is appropriate (step S4). If a defect is found by verification, the design data described in HDL is corrected. After that, the logic function described in the HDL is configured using a self-configuration circuit formed as a semiconductor integrated circuit (step S5). By the above procedure, a logic integrated circuit having a desired function is obtained, so that the development period is greatly reduced.
図 2には、 図 1のフローチャートに従った本発明に係る設計手法を可能 にする自己構成回路の第 1実施例のブロック図が示されている。 なお、 図 2に示されている各回路プロックは、 公知の半導体製造技術により単結晶 シリコンのような 1つの半導体チヅプ上に形成されている。  FIG. 2 shows a block diagram of a first embodiment of a self-constituting circuit that enables the design method according to the present invention according to the flowchart of FIG. Each circuit block shown in FIG. 2 is formed on one semiconductor chip such as single crystal silicon by a known semiconductor manufacturing technique.
図 2において、 1 0は公知の汎用 D R A M (ダイナミ ック · ランダム · アクセス ' メモリ) もしくは S R A M (スタティ ヅク · ランダム . ァクセ ス · メモリ) とほぼ同様な構成を有する読み出しおよび書き込み可能なメ モリ回路である。  In FIG. 2, reference numeral 10 denotes a readable and writable memory circuit having substantially the same configuration as a known general-purpose DRAM (dynamic random access memory) or SRAM (static random access memory). It is.
すなわち、 メモリ回路 1 0は、 複数のメモリセルがマト リ ックス状に配 置されるとともに、 複数のヮード線と複数のデータ線が格子状に配置され、 同一の行のメモリセルはそれそれ対応するワード線に接続され、 同一の列 のメモリセルはそれそれ対応するデ一夕線に接続されてなるメモリアレイ 1 1 と、 供給されたァドレス信号をデコードしてメモリアレイ 1 1内の対 応する 1本のワード線を選択レベルにするアドレス · デコーダ 1 2 と、 選 択されたヮード線に接続されたメモリセルからデ一夕線に読み出された電 位を増幅するセンスアンプ回路 1 3 と、 チップ選択信号 C Eおよび書込み 制御信号 W Eに基づいて上記センスアンプ回路 1 3などの動作タイ ミング を制御する書込み ·読出し制御回路 1 4などから構成されている。  That is, in the memory circuit 10, a plurality of memory cells are arranged in a matrix, a plurality of read lines and a plurality of data lines are arranged in a lattice, and the memory cells in the same row correspond to each other. The memory cells in the same column are connected to the corresponding memory array 11 and the corresponding memory cells in the memory array 11 by decoding the supplied address signal. An address decoder 12 that sets one word line to the selected level, and a sense amplifier circuit 13 that amplifies the potential read from the memory cell connected to the selected word line to the data line And a write / read control circuit 14 for controlling the operation timing of the sense amplifier circuit 13 and the like based on the chip select signal CE and the write control signal WE.
この実施例の自己構成回路には、 上記メモリ回路 1 0の他、 チップ外部 から入力された書込みデ一夕を取り込んでセンスアンプ回路 1 3へ渡した り、 メモリ回路 1 0から読み出されたデータをチップ外部へ出力したり、 読出しデータとチップ外部から入力されたデ一夕とを比較したりする入出 カ&比較回路 2 0 と、 チップ外部から入力されたァドレス信号を上記入出 カ&比較回路 2 0における比較結果に応じて変換し上記ァ ドレス · デコ一 ダ 1 2に供給する可変ァドレス変換回路 3 0とから構成されている。 In addition to the memory circuit 10 described above, the self-constituting circuit of this embodiment takes in a write data input from outside the chip and transfers it to the sense amplifier circuit 13 or read from the memory circuit 10. An input / output & comparison circuit 20 that outputs data to the outside of the chip, compares read data with data input from outside the chip, and inputs / outputs an address signal input from outside the chip. The variable address conversion circuit 30 converts the data according to the comparison result in the power & comparison circuit 20 and supplies the converted address to the address / decoder 12.
4 1はチップ外部からのァドレス信号が入力されるァドレス入力端子、 4 2はメモリ回路からの読出しデータを外部へ出力したり外部からの書込 みデータが入力されるデータ入出力端子である。  41 is an address input terminal to which an address signal from the outside of the chip is input, and 42 is a data input / output terminal to output read data from the memory circuit to the outside or to input write data from the outside.
図 3には、 図 2の実施例の自己構成回路に含まれる可変ァドレス変換回 路 3 0の具体例がプロック図で示されている。 この可変ァドレス回路 3 0 は、 図 2のメモリ回路 1 0とほぼ同様な回路構成を有している。  FIG. 3 is a block diagram showing a specific example of the variable address conversion circuit 30 included in the self-configuration circuit of the embodiment shown in FIG. The variable address circuit 30 has substantially the same circuit configuration as the memory circuit 10 of FIG.
すなわち、 可変ァドレス回路 3 0は、 複数のメモリセルがマト リ ックス 状に配置されるとともに、 複数のワード線と複数のデ一夕線が格子状に配 置され、 同一の行のメモリセルはそれそれ対応するヮ一ド線に接続され、 同一の列のメモリセルはそれそれ対応するデ一夕線に接続されてなるメモ リアレイ 3 1 と、 外部よ り入力端子 4 1 に供給されたア ドレス信号をデ コードしてメモリアレイ 3 1内の対応する 1本のヮード線を選択レベルに するアドレス · デコーダ 3 2 と、 選択されたヮ一ド線に接続されたメモリ セルからデ一夕線に読み出された電位を増幅するセンスアンプ回路 3 3と、 上記入出力 &比較回路 2 0からの比較結果信号 C Mに基づいて上記センス アンプ回路 3 3の動作夕イ ミングを制御する書込み制御回路 3 4などから 構成されている。  That is, the variable address circuit 30 includes a plurality of memory cells arranged in a matrix, a plurality of word lines and a plurality of data lines arranged in a lattice, and the memory cells in the same row The memory cells in the same column connected to the corresponding power supply line and the memory array 31 connected to the corresponding data line and the memory cell supplied to the input terminal 41 from the outside. An address decoder 32 that decodes a dress signal to set one corresponding read line in the memory array 31 to a selected level, and a decode line from a memory cell connected to the selected read line. And a write control circuit for controlling the operation timing of the sense amplifier circuit 33 based on the comparison result signal CM from the input / output & comparison circuit 20. Composed of 3 4 etc. To have.
図示しないが、 上記ア ドレス ' デコーダ 3 2は、 デコード回路とデコ一 ドされるァドレスを上記比較結果信号 C Mに基づいてィンクリメン トする インクリメン夕もしくは演算器とを含んでいる。 また、 イ ンクリメント値 を該メモリ 3 1に記憶させて 3 1の記憶容量を減らすようにしても良い。 図 4には、 第 1の実施例の自己構成回路に含まれる入出力 &比較回路 2 0の具体例が示されている。  Although not shown, the address decoder 32 includes a decoding circuit and an incrementer or an arithmetic unit that increments the decoded address based on the comparison result signal CM. Alternatively, the increment value may be stored in the memory 31 to reduce the storage capacity of the memory 31. FIG. 4 shows a specific example of the input / output & comparison circuit 20 included in the self-configuration circuit of the first embodiment.
図 4に示されているように、 入出力 &比較回路 2 0は、 センスアンプ回 路 1 3の出力端子に接続された信号線 5 1 とデータ入出力端子 4 2に接続 された信号線 5 2 との間に設けられ上記書込み '読出し制御回路 1 4から 供給される比較指示信号 C Cにより制御されるスィ ツチ手段 2 1 と、 セン スアンプ回路 3 3からの読出し信号と上記書込み ·読出し制御回路 1 4か ら供給される比較指示信号 C Cとを入力信号とする N A N Dゲート回路 2 2 と、 該 N A N Dゲート回路 2 2の出力信号と上記データ入出力端子 4 2 より入力された信号とを入力とするィクスクル一シブ O Rゲート回路 2 3 と、 複数のィクスクルーシブ O Rゲ一ト回路 2 3の出力信号を入力とする O Rゲート回路 2 4とから構成されている。 As shown in FIG. 4, the input / output & comparison circuit 20 is connected to the signal line 51 connected to the output terminal of the sense amplifier circuit 13 and the data input / output terminal 42. The switch means 21 provided between the read signal line 52 and the read / write control circuit 14 and controlled by the comparison instruction signal CC, and the read signal from the sense amplifier circuit 33 A NAND gate circuit 22 which receives the comparison instruction signal CC supplied from the write / read control circuit 14 as an input signal, an output signal of the NAND gate circuit 22 and the data input / output terminal 4 2 It is composed of an exclusive OR gate circuit 23 that receives signals and an OR gate circuit 24 that receives output signals of a plurality of exclusive OR gate circuits 23 as inputs.
すなわち、 上記スィ ツチ手段 2 1 と N A N Dゲート回路 2 2 とイクスク ルーシブ O Rゲート回路 2 3とからなる比較回路が、 各データ入出力端子 4 2ごとに設けられ、 各比較回路のィクスクルーシブ O Rゲ一ト回路 2 3 の出力信号が上記 0 Rゲート回路 2 4に入力され、 0 Rゲート回路 2 4の 出力信号が比較結果信号 C Mとして前記可変ァドレス回路 3 0に供給され るように構成されている。 なお、 図示しないが、 信号線 5 2側にはデ一夕 入出力端子 4 2に共通に接続された入力バッファと出力バッファが設けら れていても良い。  That is, a comparison circuit comprising the switch means 21, NAND gate circuit 22, and exclusive OR gate circuit 23 is provided for each data input / output terminal 42, and the exclusive OR gate of each comparison circuit is provided. The output signal of the circuit 23 is input to the OR gate circuit 24, and the output signal of the OR gate circuit 24 is supplied to the variable address circuit 30 as a comparison result signal CM. Although not shown, an input buffer and an output buffer commonly connected to the data input / output terminal 42 may be provided on the signal line 52 side.
次に、 上記実施例の自己構成回路における変換ァドレスの変更の仕方を、 図 5に示されているフローチャートを用いて説明する。 なお、 図 5に示さ れているフローチヤ一トが開始される以前に、 初期設定処理等により可変 アドレス変換回路 3 0においては、 メモリアレイ 3 1内の各番地にメモリ 回路 1 0の各番地に対応したァドレスが格納されている。  Next, how to change the conversion address in the self-configuration circuit of the above embodiment will be described with reference to the flowchart shown in FIG. Before the flow chart shown in FIG. 5 is started, the variable address translation circuit 30 stores each address in the memory array 31 in each address of the memory array 31 by initial setting processing or the like. The corresponding address is stored.
外部よりアドレス入力端子 4 1ヘアドレス信号が入力されると、 可変ァ ドレス回路 3 0のアドレスデコーダ 3 2はそのァドレス信号をデコードし てメモリアレイ 3 1内の対応するヮード線を選択レベルにして予め格納さ れているアドレスデ一夕を出力、 すなわちアドレス変換を行なう (ステツ プ S 1 1 ) 。 読み出されたアドレスデータは、 センスアンプ 3 3により増 幅されてメモリ回路 1 0のアドレスデコ一ダ 1 2に供給される。 ア ドレス デコーダ 1 2は供給されたァドレスをデコ一ドしてメモリアレイ 1 1内の 対応するワード線を選択レベルにし、 そのとき入出力 &比較回路 2 0を介 して外部より入力されているデータを選択メモリセルに書き込む (ステツ プ S 1 2 ) 。 When an address signal is input to the address input terminal 41 from the outside, the address decoder 32 of the variable address circuit 30 decodes the address signal and sets the corresponding read line in the memory array 31 to the selection level. The previously stored address data is output, that is, the address conversion is performed (step S11). The read address data is amplified by the sense amplifier 33 and supplied to the address decoder 12 of the memory circuit 10. A dress The decoder 12 decodes the supplied address to set the corresponding word line in the memory array 11 to the selected level, and at that time, the data input from the outside via the input / output & comparison circuit 20. Write to the selected memory cell (step S12).
次に、 メモリアレイ 1 1から当該書込みデ一夕の読出しを行なう (ス テツプ S 1 3 ) 。 読み出されたデータはセンスアンプ 1 3により増幅され て入出力 &比較回路 2 0に供給される。 このとき、 データ入出力端子 4 1 にはデータ書込み時に入力された書込みデータが入力されている。 これに よって、 入出力 &比較回路 2 0はメモリアレイ 1 1から読み出されたデー 夕とデータ入出力端子 4 1に入力されている書込みデータとを比較し、 一 致または不一致を示す比較結果信号 C Mを可変ァドレス変換回路 3 0の書 込み制御回路 3 4へ出力する。  Next, reading of the write data is performed from the memory array 11 (step S13). The read data is amplified by the sense amplifier 13 and supplied to the input / output & comparison circuit 20. At this time, the write data input at the time of data writing is input to the data input / output terminal 41. As a result, the input / output & comparison circuit 20 compares the data read from the memory array 11 with the write data input to the data input / output terminal 41, and indicates a comparison result indicating a match or mismatch. The signal CM is output to the write control circuit 34 of the variable address conversion circuit 30.
すると、 書込み制御回路 3 4は、 比較結果信号 C Mを見て書込みが正常 に行なわれたか否か判定する (ステップ S 1 4 ) 。 ここで、 書込み制御回 路 3 4が書込み失敗と判定すると、 アドレスデコーダ 3 2へ信号を送って 内部のイ ンクリメン夕を動作させ、 入力ァドレス信号をィンク リメントさ せる (ステップ S 1 5 ) 。 すると、 このインクリメン トされたアドレスは、 アドレスデコーダ 1 2に供給されてデコ一ドされ、 メモリアレイ 1 1内の 次のヮ一ド線が選択レベルにされる。 そして、 ステップ S 1 2へ戻ってそ のワード線に接続されている選択メモリセルに、 入出力 &比較回路 2 0を 介して外部より入力されているデータが書き込まれる。  Then, the write control circuit 34 checks the comparison result signal CM to determine whether or not the writing has been normally performed (step S14). If the write control circuit 34 determines that the write has failed, it sends a signal to the address decoder 32 to operate the internal increment and increment the input address signal (step S15). Then, the incremented address is supplied to the address decoder 12 to be decoded, and the next read line in the memory array 11 is set to the selected level. Then, the process returns to step S12, and data input from the outside via the input / output & comparison circuit 20 is written to the selected memory cell connected to the word line.
次に、 再びメモリアレイ 1 1から当該書込みデータの読出しを行ない、 入出力 &比較回路 2 0により外部からデ一夕入出力端子 4 2へ入力されて いるデータとの比較を行なう。 そして、 一致すると書込み制御回路 3 4は 外部へ書込み終了信号 W Fを出力して、 一つのアドレスに対するデータの 書込み動作が終了する (ステップ S 1 6 ) 。 外部の制御回路は、 上記書込 み終了信号 W Fを受けると次のァドレス信号を生成してァドレス入力端子 4 1へ入力する。 これに応じて、 再び図 5の書込み制御フローがステップ S 1から開始され、 次のァドレスに対する書込み処理が実行される。 Next, the write data is read from the memory array 11 again, and the input / output and comparison circuit 20 compares the read data with the data externally input to the data input / output terminal 42. Then, when they match, the write control circuit 34 outputs a write end signal WF to the outside, and the data write operation for one address ends (step S16). Upon receiving the write end signal WF, the external control circuit generates the next address signal and outputs the address signal to the address input terminal. 4 Enter in 1. In response, the write control flow of FIG. 5 is started again from step S1, and the write processing for the next address is executed.
上記のように、 この実施例においては、 デ一夕書込み後に当該書込み データを読み出して判定し、 誤りがあればアドレスを更新して次のアドレ ス位置にデ一夕を書き込むようにしている。 これによつて、 メモリアレイ 1 1内に欠陥があっても自動的にそのァドレスをとばして次のアドレスに デ一夕が書き込まれることとなる。 そのため、 この実施例の自己構成回路 にあっては、 メモリアレイ 1 1内のすべてのメモリセルが正常である必要 がないのみならず、 事前にメモリアレイに不良ビッ 卜がないかテス 卜する 必要もないという利点を有している。  As described above, in this embodiment, the data to be written is read and written after the data is written, and if there is an error, the address is updated and the data is written to the next address position. As a result, even if there is a defect in the memory array 11, the address is automatically skipped and data is written to the next address. Therefore, in the self-configuration circuit of this embodiment, not only all the memory cells in the memory array 11 need not be normal, but also it is necessary to test the memory array in advance for any defective bits. It has the advantage that there is no.
なお、 上記実施例では、 メモリアレイ 1 1に欠陥があるか否か判定して 書込みを行なう場合について説明したが、 図 2の可変ァドレス変換回路 3 0のセンスアンプ 3 3の出力信号線を、 メモリ回路 1 0のアドレスデコ一 ダ 1 2のみならず入出力 &比較回路 2 0へも供給可能に構成しておく。 そ して、 上記と同様にしてメモリアレイ 3 1への書込みデータの正常/異常 を判定して、 異常の場合にはアドレスをとばすようにする。 これにより、 メモリアレイ 3 1に関しても、 すべてのメモリセルが正常である必要がな いのみならず、 事前にメモリアレイに不良ビッ トがないかテス トする必要 もなくなる。  In the above-described embodiment, a case has been described in which writing is performed by determining whether the memory array 11 has a defect. However, the output signal line of the sense amplifier 33 of the variable address conversion circuit 30 in FIG. It is configured to be able to supply not only to the address decoder 12 of the memory circuit 10 but also to the input / output & comparison circuit 20. Then, in the same manner as described above, the normality / abnormality of the write data to the memory array 31 is determined, and if abnormal, the address is skipped. As a result, regarding the memory array 31 as well, not only all the memory cells need not be normal, but also it is not necessary to test the memory array for a defective bit in advance.
図 6には、 第 1の実施例の自己構成回路により構成される論理ゲート回 路の一例とその H D L記述が示されている。 また図 7には、 第 1の実施例 の自己構成回路を用い H D L記述に従って所望の論理機能を有する論理回 路を構成するシステムの例が示されている。  FIG. 6 shows an example of a logic gate circuit constituted by the self-configuration circuit of the first embodiment and an HDL description thereof. FIG. 7 shows an example of a system that configures a logic circuit having a desired logic function according to the HDL description using the self-configuration circuit of the first embodiment.
図 7において、 1 0 0は上記実施例の自己構成回路、 2 0 0は図 6に示 されているような H D L記述された設計データが格納された記憶装置 (ファイル) 、 3 0 0は該ファイルに記憶されている H D L記述を解読し て対応する論理機能を自己構成回路 1 0 0内に構成するための信号を形成 し出力する制御装置である。 この制御装置 300は、 例えば汎用のマイク 口コンピュータを用いて構成することができる。 In FIG. 7, 100 is the self-configuration circuit of the above embodiment, 200 is a storage device (file) storing design data described in HDL as shown in FIG. 6, and 300 is the storage device (file). Decodes the HDL description stored in the file and forms a signal to configure the corresponding logic function in the self-configuration circuit 100 This is a control device that outputs data. The control device 300 can be configured using, for example, a general-purpose microphone computer.
次に、 図 6の NANDゲート回路を例にとって具体的な論理の構成の仕 方を説明する。 先ず、 制御装置 300は、 HD L記述を解読して構成対象 が N ANDゲート回路であることを認識し、 例えば自己構成回路 1 00に 供給するァ ドレス信号として次の表 1の真理値表に示されている入力信号 I n 0 , I n 1の組み合わせ " 0 , 0 " , " 1 , 0 " , " 0, 1,, , " 1 , 1 " を生成する。  Next, the specific logic configuration will be described using the NAND gate circuit of FIG. 6 as an example. First, the control device 300 decodes the HDL description and recognizes that the configuration target is a NAND gate circuit. For example, the control device 300 uses the truth table of Table 1 below as an address signal to be supplied to the self-configuration circuit 100. A combination "0, 0", "1, 0", "0, 1,...," 1, 1 "of the indicated input signals In0, In1 is generated.
そして、 この生成したァドレス信号を自己構成回路 100のアドレス入 力端子 4 1 (図 2参照) へ与える。 これとともに、 制御装置 300は、 真 理値表の出力 Ou t 0に相当するデ一夕を上記各ァドレスに対応する書込 みデ一夕として生成して、 その書き込みデータを自己構成回路 100への ァドレス信号の入力と時間的に並行してデ一夕入出力端子 42へ与える。 すると、 自己構成回路 1 00内では、 図 5のフローチャートを用いて説 明した手順に従ってメモリ回路 10へのデータの書込みを行なう。 従って、 書込み終了後に、 NANDゲート回路の入力信号 I n 0 , I n lを、 自己 構成回路 1 00の所定のァドレス入力端子 4 1へ入力すると、 メモリ回路 に記憶されている対応するデータが読み出されて NANDゲ一ト回路の出 力 0 u t 0に相当する信号がデータ入出力端子 42の所定の端子から出力 される。 このように、 図 2の実施例の自己構成回路を使用すると、 HD L 記述に従つたメモリ回路 10へのデ一夕書込みにより所望の論理機能が実 現されることとなる。 表 1 Then, the generated address signal is applied to the address input terminal 41 (see FIG. 2) of the self-configuration circuit 100. At the same time, the control device 300 generates a data corresponding to the output Out 0 of the truth table as a write data corresponding to each of the above addresses, and sends the write data to the self-configuration circuit 100. To the input / output terminal 42 in parallel with the input of the address signal. Then, in the self-configuration circuit 100, data is written to the memory circuit 10 according to the procedure described with reference to the flowchart of FIG. Therefore, when the input signals I n0 and I nl of the NAND gate circuit are input to the predetermined address input terminal 41 of the self-configuration circuit 100 after the writing is completed, the corresponding data stored in the memory circuit is read. Then, a signal corresponding to the output 0 ut 0 of the NAND gate circuit is output from a predetermined terminal of the data input / output terminal 42. As described above, when the self-configuration circuit of the embodiment shown in FIG. 2 is used, a desired logic function is realized by data writing to the memory circuit 10 according to the HDL description. table 1
Figure imgf000016_0001
なお、 上記のような 2入力 N A N Dゲ一ト回路のみを図 2の自己構成回 路を用いて構成する場合には、 入力アドレス信号は 2 ビッ 卜でよい。 従つ て、 図 3に示されているアドレス ' デコーダ 3 2を例えば 2ビッ トごとに ァドレス分割した構成とし、 2 ビッ トのみでメモリアレイ 3 1内の 1本の ヮード線を選択できるようにすると良い。
Figure imgf000016_0001
When only the two-input NAND gate circuit as described above is configured using the self-configuration circuit of FIG. 2, the input address signal may be two bits. Therefore, the address' decoder 32 shown in FIG. 3 is divided into, for example, two bits, so that one read line in the memory array 31 can be selected with only two bits. Good.
これにより、 1つの自己構成回路で複数の論理ゲート回路を実現するこ とができる。 また、 従来のメモリ と同様なア ドレス構成としかつ 1つのメ モリアレイで複数の論理ゲート回路を実現するには、 上記入力のビッ ト以 外のアドレスビッ トを補完する必要があるが、 上記のようにァドレス分割 を行えばアドレスの補完も必要なくなる。 ただし、 実現したい論理を構成 する各論理ゲ一ト回路に番号をつけてその番号を補完ァドレスとして上記 入力ビッ 卜に組み合わせたものを着目する論理ゲ一卜のアドレスとするこ とで、 アドレス分割をしないメモリアレイを用いることも可能である。 図 8は、 本発明に係る設計手法を可能にする自己構成回路の第 2の実施 例を示すブロック図である。  As a result, a plurality of logic gate circuits can be realized by one self-configuration circuit. In addition, in order to realize the same address configuration as that of the conventional memory and to realize a plurality of logic gate circuits with one memory array, it is necessary to complement address bits other than the above input bits. If address division is performed in this way, address completion is not required. However, address division is performed by assigning a number to each logic gate circuit that constitutes the logic to be realized and using that number as a complementary address and combining it with the above input bit as the address of the logic gate of interest. It is also possible to use a memory array that does not perform the above. FIG. 8 is a block diagram showing a second embodiment of the self-configuring circuit which enables the design method according to the present invention.
この実施例は、 図 2に示す第 1の実施例の自己構成回路に、 データス ト レ一ジ 6 0 と、 可変スィ ッチ回路としてのスイ ッチマ トリ ックス 7 0 とを 追加したものである。 デ一夕ス トレ一ジ 6 0は、 メモリ回路 10から読み出 されたデ一夕も しくはデータ入出力端子 4 2 よ り入力された前回の入力 デ一夕を保持する回路であり、 入出力 &比較回路 2 0 とデータ入出力端子 4 2 との間に設けられる。 スィ ツチマトリックス 7 0は、 上記データス ト レ一ジ 6 0に保持されているデータを入力ァドレス信号に代えて可変ァド レス変換回路 3 0へ供給するための回路であり、 ァドレス入力端子 4 1 と 可変ァドレス変換回路 3 0との間に設けられる。 This embodiment is obtained by adding a data storage 60 and a switch matrix 70 as a variable switch circuit to the self-configuration circuit of the first embodiment shown in FIG. The data storage 60 is the data input from the data input / output terminal 42 or the data read from the memory circuit 10. This circuit is provided between the input / output & comparison circuit 20 and the data input / output terminal 42. The switch matrix 70 is a circuit for supplying the data held in the data storage 60 to the variable address conversion circuit 30 in place of the input address signal. The address input terminal 41 And the variable address conversion circuit 30.
なお、 データス トレージ 6 0とスイ ッチマト リックス 7 0以外のメモリ 回路 1 0と入出力 &比較回路 2 0 と可変アドレス変換回路 3 0は第 1の実 施例と全く同様の構成である。  Note that the memory circuit 10, the input / output & comparison circuit 20, and the variable address conversion circuit 30 other than the data storage 60 and the switch matrix 70 have exactly the same configuration as that of the first embodiment.
図 9は、 第 2の実施例の自己構成回路 (図 8 ) に含まれるスィ ッチマト リ ックス 7 0の具体例を示す回路構成図である。  FIG. 9 is a circuit configuration diagram showing a specific example of the switch matrix 70 included in the self-configuration circuit (FIG. 8) of the second embodiment.
スィ ッチマト リ ックス 7 0は、 図 9 ( A) に示されているように、 ア ド レス入力端子 4 1に入力されたァドレス信号がのる複数の信号線 7 1 と データス トレージ 6 0の出力信号がのる信号線 7 2とが互いに交差するよ うに格子状に配置され、 信号線 7 1 と 7 2の各交点に切替えスィツチ回路 7 3が配置されてなる。 これとともに、 各切替えスィ ッチ回路 7 3の制御 情報を記憶する RAM 7 4が設けられている。  As shown in FIG. 9 (A), the switch matrix 70 has a plurality of signal lines 71 on which address signals input to the address input terminals 41 and the output of the data storage 60 are provided. The signal lines 72 on which signals are carried are arranged in a grid pattern so as to cross each other, and a switching circuit 73 is arranged at each intersection of the signal lines 71 and 72. In addition, a RAM 74 for storing control information of each switch circuit 73 is provided.
上記切替えスィッチ回路 7 3は、 図 9 (B) に示されているように、 ァ ドレス入力端子 4 1より入力されたアドレス信号またはデータス トレージ As shown in FIG. 9 (B), the switching circuit 73 switches the address signal or data storage input from the address input terminal 41.
6 0の出力信号を選択して出力させるため相補的にオン、 オフ状態にされ る一対の MO S F E Tからなるスィ ッチ素子 SW 1 , SW 2により構成さ れている。 そして、 各スイ ッチ素子 SW 1 , SW 2のゲート端子が R AMIt is composed of a pair of switch elements SW 1 and SW 2, which are a pair of MOS FETs that are turned on and off complementarily to select and output the 60 output signal. The gate terminals of the switch elements SW 1 and SW 2 are connected to the RAM terminals.
7 4内に記憶されている制御情報に従って制御されるように構成されてい る。 ただし、 RAM 7 4を設ける代わりに、 図 9 ( C) のように、 信号線 7 1 と信号線 7 2の各交点にそれそれ S RAMセルと同様なス夕ティ ック 型メモリセル M Cと切替えスイ ッチ C SWとを設けた構成としても良い。 図 1 0は、 第 2の実施例の自己構成回路 (図 8 ) に含まれるデータス ト レージ回路 6 0の具体例を示す論理構成図である。 デ一タス トレ一ジ回路 6 0は、 図 1 0に示されているように、 メモリ回 路 1 0内のメモリアレイ 1 1の 2本ずつのデータ線に対応して設けられた フリ ップフロップ F F 1, F F 2, F F nと、 各フリ ップフロップの ラッチ用クロックを形成するための A N Dゲート G 1, G 2 , …… G nと から構成されている。 It is configured to be controlled according to the control information stored in 74. However, instead of providing the RAM 74, as shown in FIG. 9 (C), each of the intersections of the signal lines 71 and 72 is connected to a static memory cell MC similar to the SRAM cell. A configuration in which a switching switch C SW is provided may be employed. FIG. 10 is a logical configuration diagram showing a specific example of the data storage circuit 60 included in the self-configuration circuit (FIG. 8) of the second embodiment. As shown in FIG. 10, the data storage circuit 60 includes a flip-flop FF provided for each two data lines of the memory array 11 in the memory circuit 10. 1, FF2, FFn, and AND gates G1, G2,... Gn for forming a latch clock for each flip-flop.
そして、 各フ リ ップフロップ F F iは、 対をなすデ一夕線の一方の信号 ( d i ) がデ一夕入力端子 Dに入力される。 また、 対をなすデータ線の他 方の信号 ( A i ) はシステムクロック信号 C L Kとともに A N Dゲート G iに入力されている。 そして、 この A N Dゲート G iの出力信号が対応す るフ リ ップフロップ F F iのクロック端子 c kに入力され、 クロック端子 c kへの信号の立ち下がりまたは立ち上がりに同期してデータ端子 Dへの 入力信号が当該フリ ップフロップ F F iに取り込まれるように構成されて いる。  In each flip-flop F Fi, one signal (d i) of a pair of data lines is input to a data input terminal D. The other signal (A i) of the pair of data lines is input to the AND gate G i together with the system clock signal CLK. Then, the output signal of the AND gate G i is input to the clock terminal ck of the corresponding flip-flop FF i, and the input signal to the data terminal D is synchronized with the falling or rising of the signal to the clock terminal ck. It is configured to be taken in the flip-flop FFi.
図 1 0の回路においては、 信号 A iが口ウレベルにされていると、 A N Dゲート G iの出力がロウレベルに固定されるため、 システムクロック C L Kが変化しても対応するフリ ップフロップ F F iはラッチ動作を行なわ ない。 つまり、 この実施例では、 信号 A iをフリ ツプフロップ F F iへの データの取込みを行なうか否か制御する信号 (以下、 アクティブビッ トと 称する) として使用している。  In the circuit of FIG. 10, when the signal A i is at the low level, the output of the AND gate G i is fixed at the low level, so that even when the system clock CLK changes, the corresponding flip-flop FF i is latched. No action is taken. That is, in this embodiment, the signal Ai is used as a signal (hereinafter, referred to as an active bit) for controlling whether or not data is taken into the flip-flop FFi.
前述した図 2の実施例の自己構成回路は、 入力状態 (入力アドレス) に よって出力状態 (出力データ) が一義的に決定するので、 組み合わせ回路 を構成することはできるが、 順序回路を構成することはできない。 これに 対して、 図 8の自己構成回路は、 上記のような動作特性を有するデータス トレ一ジ 6 0を用いることにより、 ある入力状態に応じてメモリ回路 1 0 から読み出されたデータを選択的に保持し、 これをスィ ッチマ ト リ ックス 7 0を介して可変アドレス変換回路 3 0へ供給することで前回の出力デー 夕で次の入力状態を制御することができる。 つまり、 これによつて、 順序 回路を構成することができるようになる。 In the self-configuring circuit of the embodiment of FIG. 2 described above, since the output state (output data) is uniquely determined by the input state (input address), a combinational circuit can be formed, but a sequential circuit It is not possible. On the other hand, the self-configuration circuit in FIG. 8 uses the data storage 60 having the above-described operating characteristics to select data read from the memory circuit 10 according to a certain input state. Then, by supplying this to the variable address conversion circuit 30 via the switch matrix 70, the next input state can be controlled by the previous output data. That is, by this, the order A circuit can be configured.
図 1 1には、 図 8に示されている第 2の実施例の自己構成回路により構 成される論理回路の一例としてのフ リ ップフ口ヅプ回路の一例とその HD L記述が示されている。 図 1 1のフ リ ップフロ ヅプ回路は、 2つの NAN Dゲート回路 G 1 1, G 1 2の各出力端子が他方の N ANDゲ一ト回路の 一方の入力端子に接続されている。  FIG. 11 shows an example of a flip-flop circuit as an example of a logic circuit constituted by the self-configuration circuit of the second embodiment shown in FIG. 8 and its HDL description. ing. In the flip-flop circuit shown in FIG. 11, each output terminal of two NAND gate circuits G11 and G12 is connected to one input terminal of the other NAND gate circuit.
このフリツプフ口ップ回路を構成する 2つの NAN Dゲート回路 G 1 1 , G 1 2の入力信号に対応する出力信号状態を表わす真理値表は、 次の表 2 のようになる。 表 2において、 Al, A2はメモリ回路 1 0に入力に対応し て記憶される前述のァクティブビッ 卜で、 このァクティブビッ 卜が " 1 " のときだけフリ ップフロップの出力値は対応する N ANDゲートの真理値 データを出力することを意味する。  The truth table representing the output signal states corresponding to the input signals of the two NAND gate circuits G 11 and G 12 constituting the flip-flop circuit is as shown in Table 2 below. In Table 2, Al and A2 are the above-mentioned active bits stored in the memory circuit 10 corresponding to the input. Only when this active bit is "1", the output value of the flip-flop is the truth of the corresponding NAND gate. Outputs value data.
表 2  Table 2
Figure imgf000019_0001
図 1 1に示すようなフ リ ップフロ ップ回路を、 図 8の自己構成回路を用 いて構成する場合には、 先ず、 4つの入力信号 I n O, I n l, I n 2 , I n 3をァドレス入力端子 4 1 よりスィ ッチマト リ ックス 7 0を介して可 変ァドレス変換回路 3 0に入力するとともに、 それらの入力信号の組合せ に対応した表 2の真理値表の出力デ一夕 d 1 , A 1 , d 2 , A 2をデータ 入出力端子 42より入力する。 これにより、 上記入力信号 I n O , I η 1 , I η 2 , Ι η 3をアドレスとしてメモリ回路 1 0内のメモリアレイ 1 1の 所定の番地に真理値表の出力デ一夕 d 1, A 1 , d 2 , A 2を書き込まれ る。 書込みが終了したら、 読み出しを行なって正常に書き込まれたか否か 判定し、 書込みエラーのときはァドレス更新して別の番地に書込みを行な う点は、 第 1の実施例と同様である。
Figure imgf000019_0001
When a flip-flop circuit as shown in FIG. 11 is configured using the self-configuration circuit of FIG. 8, first, four input signals InO, Inl, In2, In3 Can be input from the address input terminal 41 through the switch matrix 70. Input to the variable address conversion circuit 30 and the output data d 1, A 1, d 2, and A 2 of the truth table in Table 2 corresponding to the combination of those input signals are input from the data input / output terminal 42 I do. As a result, the output data of the truth table d 1, A 1, d 2 and A 2 are written. As in the first embodiment, when writing is completed, reading is performed to determine whether or not writing has been performed normally, and in the case of a writing error, the address is updated and writing is performed at another address.
次に、 構成しょうとするフリ ヅプフロップ回路の帰還ループを設定する ため、 デ一夕ス トレージ 6 0内の所定のフ リ ップフロ ップ (例えば F F 1, F F 2 ) に対する状態設定を行なう。 具体的には、 先ず入力信号 I n 2 , I n 3をそれそれ 「0」 に固定して、 NANDゲート回路 G l 1に着目し その入力信号 I n O , I n 1をフ リ ップフロップ F F 1に保持させたい デ一夕に応じて " 0 , 0" , " 1 , 0" , " 0, 1 " または " 1, 1 " に 設定してァドレス入力端子 4 1より入力する。  Next, in order to set a feedback loop of a flip-flop circuit to be configured, a state is set for a predetermined flip-flop (for example, FF1, FF2) in the storage 60. Specifically, first, the input signals In 2 and In 3 are fixed to “0”, respectively, and attention is paid to the NAND gate circuit Gl 1, and the input signals In 0 and In 1 are flip-flop FF Set to "0, 0", "1, 0", "0, 1" or "1, 1" according to the data you want to keep at 1 and input from the address input terminal 41.
すると、 表 2の a, b , c , dの欄にそれそれ示されているように、 入 力信号 I n 2 , I n 3が共に 「 0」 に固定されていると、 NANDゲート 回路 G 1に対応するァクティブビッ ト A 1として " 1 " が読み出される。 そのため、 データス トレ一ジ 6 0の ANDゲート G 1を通してクロック C L Kがフリ ップフ口ップ F F 1に供給される。 その結果、 そのときの入力 信号 I n O , I n 1の組合せに応じて " 1 " または " 0 " のデ一夕 d 1が フ リ ップフロ ップ F F 1に取り込まれる。 つまり、 フ リ ップフロップ F F 1の状態が設定される。  Then, as shown in the columns a, b, c, and d of Table 2, when the input signals In 2 and In 3 are both fixed to “0”, the NAND gate circuit G "1" is read as active bit A1 corresponding to 1. Therefore, the clock CLK is supplied to the flip-flop FF1 through the AND gate G1 of the data storage 60. As a result, the data d 1 of “1” or “0” is taken into the flip-flop FF 1 according to the combination of the input signals In 0 and In 1 at that time. That is, the state of the flip-flop F F 1 is set.
次に、 入力信号 I n O , I n lをそれそれ 「 0」 に固定して、 NAND ゲート回路 G 1 2に着目しその入力信号 I n 2, I n 3をフリ ップフロッ プ F F 2に保持させたいデ一夕に応じて " 0 , 0" , " 1 , 0" , "0 , 1 " または " 1 , 1 " に設定してァドレス入力端子 4 1より入力する。 すると、 表 2の a, e , i , mの欄にそれそれ示されているように、 入 力信号 I n 0 , I n 1が共に 「 0j に固定されていると、 N ANDゲート 回路 G 2に対応するァクティプビッ ト A 2として " 1 " が読み出される。 そのため、 データス トレージ 60の ANDゲート G2を通してクロック C L Kがフ リ ップフロップ F F 2に供給される。 その結果、 そのときの入力 信号 I n 2, I n 3の組合せに応じて " 1 " または "0" のデ一夕 d 2が フリ ップフロップ F F 2に取り込まれる。 つまり、 フ リ ップフロップ F F 2の状態が設定される。 Next, the input signals Ino and Inl are fixed at "0", respectively, and the input signals In2 and In3 are held in the flip-flop FF2 while focusing on the NAND gate circuit G12. Set to "0, 0", "1, 0", "0, 1" or "1, 1" according to the desired data and input from the address input terminal 41. Then, as shown in the columns a, e, i, and m of Table 2, when the input signals In0 and In1 are both fixed to "0j," the N AND gate circuit G "1" is read out as the active bit A2 corresponding to 2. Therefore, the clock CLK is supplied to the flip-flop FF2 through the AND gate G2 of the data storage 60. As a result, the input signal I n2 at that time , In 3 depending on the combination of In3 and In3, the data d2 of "1" or "0" is taken into the flip-flop FF2, that is, the state of the flip-flop FF2 is set.
なお、 図 1 1に示すような 2つの N A N Dゲートからなるフ リ ップフ ロップは、 それそれの出力信号が他方の N ANDゲートの一方の入力端子 に帰還されているため、 出力〇ut 0, 0 u t 1が同時に "0" となり得 ない。 従って、 上記データス トレージ 60のフリ ップフロップ F F 1 , F F 2の状態を設定する際には、 それらの保持状態が共に "0" にならない ように留意する必要がある。  Note that the flip-flop consisting of two NAND gates as shown in Fig. 11 has its output 〇ut 0, 0 because its output signal is fed back to one input terminal of the other NAND gate. ut 1 cannot be "0" at the same time. Therefore, when setting the states of the flip-flops FF1 and FF2 of the data storage 60, it is necessary to take care that neither of the holding states becomes "0".
上記のようにして、 フリ ップフロップ F F 1, FF 2を所望の状態に設 定した後に、 スィ ッチマト リ ックス回路 70内の制御情報 RAM 74内の、 図 9 ( A) において点線で囲まれているスイ ッチ C S W31と C SW22に対 応するメモリセルの記憶デ一夕を書き換えて、 それらのスィ ッチを、 アド レス入力端子 4 1側からデータス トレージ 60の出力端子側へ切り替える。 これによつて、 図 1 1のフリ ップフロップの入力信号 I n 1, I n 2は入 力が不許可とされ、 代わりに NANDゲート G l l, G 1 2の出力 Out 0, Ou t 1が入力信号 (アドレス) として次段の可変アドレス変換回路 30に供給されるようになる。 つまり、 これによつて、 フリ ップフロップ の帰還ループが構成されたこととなる。  After setting the flip-flops FF 1 and FF 2 to the desired state as described above, the control information RAM 74 in the switch matrix circuit 70 is surrounded by a dotted line in FIG. 9 (A). Rewrite the storage data of the memory cells corresponding to the switches CSW31 and CSW22, and switch those switches from the address input terminal 41 to the output terminal of the data storage 60. As a result, the input signals I n1 and I n2 of the flip-flop in FIG. 11 are not permitted to be input, and the outputs Out 0 and Out 1 of the NAND gates Gll and G12 are input instead. A signal (address) is supplied to the variable address conversion circuit 30 at the next stage. In other words, this forms a flip-flop feedback loop.
なお、 図 8の第 2の実施例の自己構成回路を用い HD L記述に従って所 望の論理機能を有する論理回路を構成するシステムは、 図 2に示す第 1の 実施例の自己構成回路を用いて論理を構成する図 7に示されているシステ ムと同様で良い。 つまり、 自己構成回路とは別個に構成された制御装置 3 0 0が、 H D L記述された設計データが格納されたファイルから読み出さ れた H D L記述を解読して、 対応する論理機能を自己構成回路 1 0 0内に 構成するための信号を形成し出力する。 Note that a system that configures a logic circuit having a desired logic function according to the HDL description using the self-configuration circuit of the second embodiment of FIG. 8 uses the self-configuration circuit of the first embodiment shown in FIG. The system shown in Figure 7 It may be the same as In other words, the control device 300, which is configured separately from the self-configuration circuit, decodes the HDL description read from the file in which the HDL-described design data is stored, and assigns the corresponding logic function to the self-configuration circuit 1. Form and output a signal to be configured in 0 0.
図 7のシステムにより、 図 8の第 2の実施例の自己構成回路を用いて、 H D L記述に従って図 1 1に示されているような構成のフリヅプフ口ップ 回路を論理構成する手順を説明する。 先ず、 制御装置 3 0 0は、 H D L記 述を解読して構成対象がフ リップフロップ回路であることを認識し、 例え ば自己構成回路 1 0 0に供給するァドレス信号として次の表 2の真理値表 に示されている入力信号 I n O , I n 1 , I n 2 , I n 3の組み合わせ A procedure for logically configuring a flip-flop circuit having a configuration as shown in FIG. 11 according to the HDL description using the system of FIG. 7 using the self-configuration circuit of the second embodiment of FIG. 8 will be described. . First, the control device 300 decodes the HDL description and recognizes that the configuration target is a flip-flop circuit. For example, the control device 300 uses the truth of Table 2 below as an address signal to be supplied to the self-configuration circuit 100. Combination of input signals InO, In1, In2, In3 shown in the value table
" 0, 0, 0, 0,, , " 1, 0, 0, 0,, , " 0 , 1 , 0, 0,, " 1,"0,0,0,0 ,,, 1,1,0,0,0 ,,,, 0,1,0,0,, 1,"
1, 1 , 1 " を生成する。 1, 1, 1 "is generated.
そして、 この生成したァドレス信号を自己構成回路 1 0 0のアドレス入 力端子 4 1へ与える。 これとともに、 制御装置 3 0 0は、 真理値表の出力 d 1, d 2に相当するデ一夕と対応するアクティブビッ ト ·デ一夕 A 1 , A 2を、 上記各アドレスに対応する書込みデータとして生成して、 自己構 成回路 1 0 0へのアドレス信号の入力と時間的に並行してデータ入出力端 子 4 2へ与える。  Then, the generated address signal is applied to the address input terminal 41 of the self-configuration circuit 100. At the same time, the controller 300 writes the active bits and the data A 1 and A 2 corresponding to the data d 1 and d 2 of the truth table and the data corresponding to the above-mentioned addresses. It is generated as data and applied to the data input / output terminal 42 in parallel with the input of the address signal to the self-configuration circuit 100 in time.
すると、 自己構成回路 1 0 0内では、 図 5のフ ローチヤ一トを用いて説 明した手順に従ってメモリ回路 1 0へのデ一夕の書込みを行なう。 従って、 書込み終了後に、 フ リ ップフロ ップ回路の入力信号 I n 0〜 I n 3を、 自 己構成回路 1 0 0の所定のァドレス入力端子 4 1へ入力すると、 メモリ回 路に記憶されている対応するデ一夕 (出力データビッ ト d l, d 2および アクティ ブ ' ビッ ト A 1 , A 2 ) が読み出される。 そして、 先ずァクティ ブ ' ビッ ト A l , A 2が " 1 " であるものに対応する出力デ一夕が、 図 1 0に示されているフリ ップフロップ F F 土に取込まれる。 これがスィ ッチ マト リ ックス 6 0を介して可変ァドレス変換回路 3 0へ供給される。 これによつて、 前に読み出されたデータに応じて次のデ一夕がメモリ回 路 1 0から読み出され、 フリ ップフ口ヅプ回路の出力 0 u t 0, 0 u t 1 に相当する信号がデータ入出力端子 4 2の所定の端子から出力される。 こ のように、 図 8の実施例の自己構成回路を使用すると、 H D L記述に従つ たメモリ回路 1 0へのデータ書込みによりフ リ ツプフ口ップの論理を構成 することができ、 順序回路を含む所望の論理機能が実現されることとなる。 図 1 2には所望の論理回路を構成する制御装置 3 0 0の制御手順の概略 が示されている。 制御装置 3 0 0は、 先ず、 H D L記述を解読し (ステツ プ S 2 1 ) 、 H D L記述から論理回路を構成する組み合わせ回路や順序回 路を抽出する (ステップ S 2 2 ) 。 次に、 抽出した組み合わせ回路または 順序回路に関する真理表すなわち真理値デ一夕を生成する (ステップ S 2 3 ) 。 それから、 生成した真理値デ一夕を用いて、 図 5のフローチャート に従って、 自己構成回路 1 0 0のメモリ回路 1 0へのデ一夕の書込みおよ び可変ァドレス変換回路 3 0の設定を行なう (ステップ S 2 4 ) 。 Then, in the self-configuration circuit 100, data is written to the memory circuit 10 in accordance with the procedure described using the flowchart of FIG. Therefore, when the input signals In0 to In3 of the flip-flop circuit are input to the predetermined address input terminal 41 of the self-configuration circuit 100 after the writing is completed, the signals are stored in the memory circuit. The corresponding data (output data bits dl, d2 and active bits A1, A2) are read. Then, first, the output data corresponding to the bits whose active bits Al and A2 are "1" is taken into the flip-flop FF soil shown in FIG. This is supplied to the variable address conversion circuit 30 via the switch matrix 60. As a result, the next data is read from the memory circuit 10 in accordance with the previously read data, and the signals corresponding to the outputs 0 ut 0 and 0 ut 1 of the flip-flop circuit are output. Is output from a predetermined terminal of the data input / output terminal 42. As described above, when the self-configuration circuit of the embodiment of FIG. 8 is used, flip-flop logic can be configured by writing data to the memory circuit 10 according to the HDL description, and the sequential circuit can be configured. A desired logical function including the above is realized. FIG. 12 shows an outline of a control procedure of the control device 300 constituting a desired logic circuit. The control device 300 first decodes the HDL description (step S21), and extracts a combinational circuit and a sequential circuit constituting a logic circuit from the HDL description (step S22). Next, a truth table for the extracted combinational circuit or sequential circuit, that is, a truth value database is generated (step S23). Then, using the generated truth value data, the data writing to the memory circuit 10 of the self-configuration circuit 100 and the setting of the variable address conversion circuit 30 are performed according to the flowchart of FIG. (Step S24).
また、 制御装置 3 0 0は、 H D L記述を解読して、 抽出した論理回路が 順序回路であると判断したときは、 着目する順序回路の回路接続情報の抽 出を行なう (ステップ S 2 5 ) 。 次に、 抽出された回路接続情報を用いて スィ ツチマト リ ックス回路 7 0の制御情報 R A M 7 4へ記憶する制御情報 の生成および書込みを行なう (ステップ S 2 6 ) 。  Further, the control device 300 decodes the HDL description and, when judging that the extracted logic circuit is a sequential circuit, extracts circuit connection information of the focused sequential circuit (step S25) . Next, the control information to be stored in the control information RAM 74 of the switch matrix circuit 70 is generated and written using the extracted circuit connection information (step S26).
図 1 3には、 本発明に係る設計手法を可能にする自己構成回路の第 3の 実施例が示されている。  FIG. 13 shows a third embodiment of a self-configuring circuit which enables the design method according to the present invention.
この実施例では、 図 8に示されているような自己構成回路 1 0 0が、 1 つの半導体チップ上に複数個マト リ ックス状に配置されているとともに、 各自己構成回路間に横方向配線領域 1 1 0と縦方向配線領域 1 2 0 とが設 けられ、 横方向配線領域 1 1 0 と縦方向配線領域 1 2 0との交差部位には 選択的に信号線を結合可能にするスィツチマ トリ ックス回路 1 3 0が設け られている。 さらに、 各自己構成回路 1 0 0のア ドレス入力端子を縦方向 配線領域 1 2 0の信号線に選択的に結合するためのスィ ツチマト リ ックス 回路 1 4 0と、 各自己構成回路 1 0 0のデータ入出力端子を横方向配線領 域 1 1 0の信号線に選択的に結合するためのスィ ツチマト リ ックス回路 1 5 0 とが設けられている。 In this embodiment, a plurality of self-configuration circuits 100 as shown in FIG. 8 are arranged in a matrix on one semiconductor chip, and a horizontal wiring is provided between the self-configuration circuits. A region 110 and a vertical wiring region 120 are provided, and a switcher for selectively connecting a signal line is provided at an intersection of the horizontal wiring region 110 and the vertical wiring region 120. A trick circuit 130 is provided. In addition, the address input terminal of each self-configuration A switch matrix circuit 140 for selectively coupling to the signal lines of the wiring area 120 and the data input / output terminals of each self-constituting circuit 100 are connected to the signal lines of the horizontal wiring area 110. And a switch matrix circuit 150 for selective coupling to the circuit.
このように、 複数個の自己構成回路 1 0 0を 1つの半導体チップ上に設 けておく ことにより、 所望の論理機能を有しかつより規模の大きな論理集 積回路を、 H D L記述に従って構成することが可能となる。  By providing a plurality of self-configuring circuits 100 on a single semiconductor chip, a larger-scale logic integrated circuit having a desired logic function and a larger scale is configured according to the HDL description. It becomes possible.
図 1 4には、 本発明に係る設計手法を可能にする自己構成回路の第 4の 実施例が示されている。  FIG. 14 shows a fourth embodiment of the self-configuration circuit which enables the design method according to the present invention.
この実施例は、 図 2や図 8および図 1 3に示されている自己構成回路 1 0 0 ' と共に、 図 7に示されているような H D L記述の設計デ一夕を記憶 する H D Lス トレージ 2 0 0, と、 H D L記述を解読して対応する論理機 能を自己構成回路 1 0 0を用いて構成するための信号を形成し出力する H D Lコントローラ 3 0 0 ' が設けられている。  In this embodiment, an HDL storage that stores design data of an HDL description as shown in FIG. 7 together with a self-configuration circuit 100 ′ shown in FIGS. 2, 8 and 13. And an HDL controller 300 ′ that decodes the HDL description and forms and outputs a signal for configuring the corresponding logical function using the self-configuration circuit 100.
ここで、 H D L文を解読する H D Lコン トローラ 3 0 0 ' は、 例えばマ イク口プログラム制御方式の C P Uと同様な構成、 すなわち各 H D L言語 を処理する手順を記述したマイクロプログラムを記憶するメモリ (マイク 口 R O M ) と、 該メモリの読出しシーケンス制御を行なう制御回路と、 読 み出されたマイク口命令をデコードして制御信号を形成するデコーダ回路 等により構成することができる。 H D L言語は膨大なものでなく しかも文 法も比較的単純であるので、 現在の半導体集積回路技術をもって充分に 1 つの半導体チップ上に構成することが可能である。  Here, the HDL controller 300 ′ that decodes the HDL sentence has a configuration similar to, for example, a CPU of a micro-program control method, that is, a memory (microphone) that stores a microprogram that describes a procedure for processing each HDL language. And a control circuit for controlling the read sequence of the memory, a decoder circuit for decoding the read microphone command and forming a control signal, and the like. Since the HDL language is not enormous and its grammar is relatively simple, it is possible to implement it on a single semiconductor chip using current semiconductor integrated circuit technology.
なお、 図 1 4には、 メモリアレイを主体とするメモリ回路 1 0 と可変ァ ドレス変換回路 3 0とが一つのメモリ空間に配置されているものとして示 されている。 これはメモリ回路 1 0を構成するメモリアレイ 1 1 と、 可変 アドレス変換回路 3 0を構成するメモリアレイ 3 1 とを同一のメモリァレ ィ内の別個の領域に配置してもよいという意味である。 ア ドレス ' デコー ダ 1 2 , 3 2や比較回路 1 4、 デ一夕 'ス トレージ 6 0、 スィ ッチ ' マ ト リ ックス 7 0等は、 アドレツシング回路としてまとめて示されている。 図 8の実施例において説明したデ一夕 · ス トレ一ジ 6 0もメモリの一種 であるので、 これも上記と同様の思想に従って、 メモリ回路 1 0を構成す るメモリアレイ 1 1および可変ァドレス変換回路 3 0を構成するメモリァ レイ 3 1 と共に一つのメモリアレイ内の別個の領域に配置するようにして もよい。 さらに、 H D L記述の設計デ一夕を記憶する H D Lス トレ一ジも、 メモリ回路 1 0を構成するメモリアレイ 1 1 と共に一つのメモリアレイ内 の別個の領域に配置するように構成することも可能である。 FIG. 14 shows that the memory circuit 10 mainly including the memory array and the variable address conversion circuit 30 are arranged in one memory space. This means that the memory array 11 forming the memory circuit 10 and the memory array 31 forming the variable address conversion circuit 30 may be arranged in separate areas in the same memory array. A Dress '' Decor Dashes 12, 32, a comparison circuit 14, a storage device 60, a switch matrix 70, etc. are collectively shown as an addressing circuit. Since the storage 60 described in the embodiment of FIG. 8 is also a kind of memory, this is also based on the same idea as above, and the memory array 11 and the variable address The conversion circuit 30 and the memory array 31 may be arranged in a separate area in one memory array. Furthermore, the HDL storage that stores the design data of the HDL description can also be configured to be arranged in a separate area in one memory array together with the memory array 11 that constitutes the memory circuit 10. It is.
以上本発明者によってなされた発明を実施例に基づき具体的に説明した が、 本発明は上記実施例に限定されるものではなく、 その要旨を逸脱しな い範囲で種々変更可能であることはいうまでもない。 例えば、 構成する論 理ゲート回路は、 N A N Dゲートに限定されず、 N O Rゲートや A N D ゲート、 O Rゲート等であっても良い。 また、 構成するフ リ ップフロップ 回路も図 1 1のような 2つの N A N Dゲートのみからなるものに限定され ず、 リセッ ト端子ゃセッ ト端子を有する R Sフ リ ップフロ ップ等であって も良い。 産業上の利用可能性  Although the invention made by the present inventor has been specifically described based on the embodiments, the present invention is not limited to the above-described embodiments, and may be variously modified without departing from the gist thereof. Needless to say. For example, the logical gate circuit to be configured is not limited to the NAND gate, but may be a NOR gate, an AND gate, an OR gate, or the like. Further, the flip-flop circuit to be configured is not limited to the one including only two NAND gates as shown in FIG. 11, but may be an RS flip-flop having a reset terminal and a reset terminal. Industrial applicability
以上の説明では主として本発明者によってなされた発明をその背景と なった利用分野である論理集積回路の設計手法を例にとって説明したが、 この発明はそれに限定されない。 たとえば、 論理回路とアナログ回路とが 一つの半導体チップ上に混在されてなる半導体集積回路の開発にも利用す ることができる。  In the above description, the invention made by the present inventor has been mainly described by taking, as an example, a method of designing a logic integrated circuit, which is a field of application as a background, but the present invention is not limited thereto. For example, it can be used for the development of a semiconductor integrated circuit in which a logic circuit and an analog circuit are mixed on one semiconductor chip.

Claims

請求の範囲 The scope of the claims
1 . 読み出しおよび書き込みが可能な記憶手段と、 該記憶手段に書き込ま れたデ一夕と記憶手段から読み出されたデータとを比較する比較手段と、 上記記憶手段に供給されるァドレス信号を上記比較手段における比較結果 に基づいて変換する可変ァドレス変換手段とを備え、 所望の論理機能を有 する論理回路の入力信号が上記記憶手段へのァドレス信号として入力され るとともに、 上記記憶手段の読み出しデ一夕が当該論理回路の上記入力信 号に対して期待される出力信号となるように上記記憶手段にデ一夕が書き 込まれることを特徴とする半導体集積回路。 1. Readable and writable storage means, comparison means for comparing data written in the storage means with data read from the storage means, and an address signal supplied to the storage means Variable address conversion means for converting based on a comparison result in the comparison means, wherein an input signal of a logic circuit having a desired logic function is input as an address signal to the storage means, and read data of the storage means is read out. A semiconductor integrated circuit, wherein data is written in the storage means so that the output becomes an expected output signal for the input signal of the logic circuit.
2 . 上記記憶手段と上記比較手段と上記可変ァドレス変換手段とが 1つの 半導体チップ上に複数個設けられてなることを特徴とする請求項 1に記載 の半導体集積回路。 2. The semiconductor integrated circuit according to claim 1, wherein a plurality of said storage means, said comparison means, and said variable address conversion means are provided on one semiconductor chip.
3 . 上記記憶手段は揮発性メモリであることを特徴とする請求項 1または 2に記載の半導体集積回路。 3. The semiconductor integrated circuit according to claim 1, wherein the storage means is a volatile memory.
4 . 上記可変アドレス変換手段は、 複数のメモリセルがマ ト リ ックス状に 配置されたメモリアレイと、 入力アドレス信号に基づいて該メモリアレイ 内のメモリセルを選択するァドレスデコーダと、 上記メモリアレイから読 み出された信号を増幅する読出し手段と、 制御信号に基づいて上記入力ァ ドレス信号を更新する演算手段とにより構成されていることを特徴とする 請求項 1、 2または 3に記載の半導体集積回路。' 4. The variable address conversion means includes: a memory array in which a plurality of memory cells are arranged in a matrix; an address decoder that selects a memory cell in the memory array based on an input address signal; 4. A read-out unit for amplifying a signal read out of the control unit, and a calculating unit for updating the input address signal based on a control signal, wherein Semiconductor integrated circuit. '
5 . 上記メモリアレイは揮発性メモリからなるメモリアレイであることを 特徴とする請求項 4に記載の半導体集積回路。 5. The semiconductor integrated circuit according to claim 4, wherein the memory array is a memory array including a volatile memory.
6 . 上記記憶手段から読み出されたデータを保持可能なデータ保持手段と、 入力ァドレス信号または上記データ保持手段の出力信号を切り替えて上記 可変ァドレス変換手段に供給可能なスィ ツチマト リ ックスと、 該スィ ッチ マト リ ックス内の各スィ ツチの制御情報を記憶する記憶手段とをさらに備 えていることを特徴とする請求項 1、 2、 3、 4または 5に記載の半導体 集積回路。 6. A data holding means capable of holding data read from the storage means, a switch matrix capable of switching an input address signal or an output signal of the data holding means and supplying the data signal to the variable address conversion means, 6. The semiconductor integrated circuit according to claim 1, further comprising storage means for storing control information of each switch in the switch matrix.
7 . 上記デ一夕保持手段は、 上記メモリ回路から読み出された第 1のデー 夕をラツチ可能なラッチ手段と、 上記メモリ回路から読み出された第 1の データに基づいて上記ラッチ手段への第 1のデータのラツチを許可または 不許可にするゲート手段とにより構成されてなることを特徴とする請求項7. The data holding means includes a latch means capable of latching the first data read from the memory circuit, and a latch means based on the first data read from the memory circuit. And a gate means for permitting or disallowing the first data latch of claim 1.
6に記載の半導体集積回路。 7. The semiconductor integrated circuit according to 6.
8 . 請求項 1、 2、 3、 4、 5、 6または 7に記載の半導体集積回路を用 いて、 H D L言語で記述された機能レベルの設計デ一夕を制御手段で解読 して、 任意の論理を構成可能な自己構成回路の論理構成を決定する信号を、 上記制御手段から上記自己構成回路に与えることにより所望の論理機能を 有する論理集積回路を構成するようにしたことを特徴とする論理集積回路 の構成方法。 8. Using the semiconductor integrated circuit according to claim 1, 2, 3, 4, 5, 6 or 7, the control means decodes the design data of the function level described in the HDL language, and A logic for providing a logic integrated circuit having a desired logic function by providing a signal for determining the logical configuration of a self-configuring circuit capable of configuring logic from the control means to the self-configuring circuit. How to configure an integrated circuit.
9 . 上記制御手段は、 上記自己構成回路と同一の半導体チップ上に形成さ れていることを特徴とする請求項 8に記載の論理集積回路の構成方法。 9. The method according to claim 8, wherein the control means is formed on the same semiconductor chip as the self-configuring circuit.
1 0 . 上記機能レベルの設計データを格納するス トレージは、 上記制御手 段および上記自己構成回路と同一の半導体チップ上に形成されていること を特徴とする請求項 9に記載の論理集積回路の構成方法。 10. The logic integrated circuit according to claim 9, wherein the storage for storing the design data of the function level is formed on the same semiconductor chip as the control means and the self-configuring circuit. Configuration method.
1 1 . 論理機能をハードウエア記述言語によって表わしたところの記述か ら得られた倩報を保持し、 そのア ドレス端子に供給される信号を入力信号 として、 上記入力信号に従った上記論理機能の出力を、 その出力端子から 得る記憶手段を含むことを特徴とする半導体集積回路。 1 1. The logical function expressed in the hardware description language is retained, and the signal supplied to the address terminal is used as an input signal. A semiconductor integrated circuit including storage means for obtaining an output from the output terminal.
1 2 . 上記論理機能は、 組み合わせ論理機能を含むことを特徴とする請求 項 1 1に記載の半導体集積回路。 12. The semiconductor integrated circuit according to claim 11, wherein the logic function includes a combination logic function.
1 3 . 上記論理機能は、 順序論理機能を含むことを特徴とする請求項 1 1 または 1 2に記載の半導体集積回路。 13. The semiconductor integrated circuit according to claim 11, wherein the logic function includes a sequential logic function.
1 4 . 上記記憶手段は、 読出し書込み可能な記憶手段であることを特徴と する請求項 1 1に記載の半導体集積回路。 14. The semiconductor integrated circuit according to claim 11, wherein said storage means is a readable and writable storage means.
1 5 . ハードウェア記述言語によって表わされたところの記述から上記記 憶手段へ書込まれる上記情報を形成するところの変換手段と、 上記記憶手 段とが同一の半導体チップに形成されていることを特徴とする請求項 1 1 に記載の半導体集積回路。 15. The conversion means for forming the information written in the storage means from the description expressed in the hardware description language and the storage means are formed on the same semiconductor chip. 12. The semiconductor integrated circuit according to claim 11, wherein:
1 6 . 上記ハードウェア記述言語によって表わされたところの記述を保持 する記憶手段が、 上記半導体チップに形成されていることを特徴とする請 求項 1 5に記載の半導体集積回路。 16. The semiconductor integrated circuit according to claim 15, wherein storage means for holding a description represented by the hardware description language is formed on the semiconductor chip.
PCT/JP1999/001035 1999-03-04 1999-03-04 Semiconductor integrated circuit and method for designing logic integrated circuit comprising the same WO2000052753A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP1999/001035 WO2000052753A1 (en) 1999-03-04 1999-03-04 Semiconductor integrated circuit and method for designing logic integrated circuit comprising the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1999/001035 WO2000052753A1 (en) 1999-03-04 1999-03-04 Semiconductor integrated circuit and method for designing logic integrated circuit comprising the same

Publications (1)

Publication Number Publication Date
WO2000052753A1 true WO2000052753A1 (en) 2000-09-08

Family

ID=14235097

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1999/001035 WO2000052753A1 (en) 1999-03-04 1999-03-04 Semiconductor integrated circuit and method for designing logic integrated circuit comprising the same

Country Status (1)

Country Link
WO (1) WO2000052753A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005008893A1 (en) * 2003-07-16 2005-01-27 Innotech Corporation Semiconductor integrated circuit
WO2009001426A1 (en) * 2007-06-25 2008-12-31 Taiyo Yuden Co., Ltd. Semiconductor device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07152794A (en) * 1993-11-29 1995-06-16 Nec Corp Logic simulator
JPH08115357A (en) * 1994-10-19 1996-05-07 Fujitsu Ltd Method and device for conversion of net list into hardware language
JPH09237283A (en) * 1996-02-29 1997-09-09 Ricoh Co Ltd Lsi function design support device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07152794A (en) * 1993-11-29 1995-06-16 Nec Corp Logic simulator
JPH08115357A (en) * 1994-10-19 1996-05-07 Fujitsu Ltd Method and device for conversion of net list into hardware language
JPH09237283A (en) * 1996-02-29 1997-09-09 Ricoh Co Ltd Lsi function design support device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005008893A1 (en) * 2003-07-16 2005-01-27 Innotech Corporation Semiconductor integrated circuit
WO2009001426A1 (en) * 2007-06-25 2008-12-31 Taiyo Yuden Co., Ltd. Semiconductor device
US8050132B2 (en) 2007-06-25 2011-11-01 Taiyo Yuden Co., Ltd. Semiconductor device
JP5081240B2 (en) * 2007-06-25 2012-11-28 太陽誘電株式会社 Semiconductor device

Similar Documents

Publication Publication Date Title
US6782499B2 (en) Semiconductor integrated circuit device, method of manufacturing the device, and computer readable medium
JP4955990B2 (en) Nonvolatile semiconductor memory device
JP5046167B2 (en) Program for circuit design scaling
JPH09180477A (en) Non-volatile semiconductor memory device and its reading/programming method
US20090248955A1 (en) Redundancy for code in rom
JP2007294039A (en) Nonvolatile semiconductor storage device
US11437982B2 (en) Flip flop standard cell
US7864621B2 (en) Compiled memory, ASIC chip, and layout method for compiled memory
JP2689768B2 (en) Semiconductor integrated circuit device
JP2006155710A (en) Semiconductor memory device
WO2006046282A1 (en) Nonvolatile storage device
CN101563675B (en) A new implementation of column redundancy for a flash memory with a high write parallelism
WO2000052753A1 (en) Semiconductor integrated circuit and method for designing logic integrated circuit comprising the same
JP4299984B2 (en) Semiconductor memory device
US8233334B2 (en) Code address memory (CAM) cell read control circuit of semiconductor memory device and method of reading data of CAM cell
KR100676788B1 (en) Memory circuit
US5603023A (en) Processor circuit for heapsorting
JP2006179124A (en) Semiconductor memory
JP2980038B2 (en) Semiconductor storage device
US20070263443A1 (en) Method, apparatus, and system for providing initial state random access memory
US7623403B2 (en) NAND flash memory device and method of operating the same
US8106681B2 (en) Semiconductor device, and programming method and programming system therefor
JPH1064275A (en) Delay circuit, and pulse generation circuit, and semiconductor storage using them
WO2021219977A1 (en) Configurable multiplexing circuitry
JP2711177B2 (en) Semiconductor storage device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref country code: JP

Ref document number: 2000 603090

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 09914429

Country of ref document: US

122 Ep: pct application non-entry in european phase