US20020057110A1 - Path transistor circuit and method for designing the same, a device and method for optimizing logic circuits, and a computer product - Google Patents

Path transistor circuit and method for designing the same, a device and method for optimizing logic circuits, and a computer product Download PDF

Info

Publication number
US20020057110A1
US20020057110A1 US10/036,429 US3642902A US2002057110A1 US 20020057110 A1 US20020057110 A1 US 20020057110A1 US 3642902 A US3642902 A US 3642902A US 2002057110 A1 US2002057110 A1 US 2002057110A1
Authority
US
United States
Prior art keywords
path
logic circuit
logic
circuit
cell
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/036,429
Inventor
Mitsuru Sasaki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to US10/036,429 priority Critical patent/US20020057110A1/en
Publication of US20020057110A1 publication Critical patent/US20020057110A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1737Controllable logic circuits using multiplexers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation

Definitions

  • the present invention relates to a path transistor circuit used as a selector employing path transistors, a path transistor circuit design method, a logic circuit optimization device used to optimize buffering in designing a logic circuit, a logic circuit optimization method and a computer-readable recording medium in which a computer program which when executed on a computer realizes the method according to the present invention.
  • path transistor lacks in a force for driving other transistors such as a CMOS circuit. Due to this, conventionally, a plurality of stages of path transistors are connected to thereby cause waveform deformation of an electric signal, thus rather sacrificing timing performance. In these circumstances, demand for providing means and a method capable of overcoming these disadvantages more effectively than before rises.
  • the binary decision diagram theory is a theory for realizing logic circuit design in which a logic function is translated to an appropriate binary tree by using the binary decision diagram and the resultant tree is replaced by a path transistor selector having a pair of exclusive select inputs and one output.
  • logic composition and circuit optimization are carried out based on the binary decision diagram theory.
  • Japanese Patent Application Laid-Open No. 9-6821 discloses a method of efficiently probing a binary decision diagram.
  • this method temporary circuits of AND and OR circuits are composed from a logic function and grouped based on the input correlation, and the binary decision graph is probed while optimizing a combination of groups to thereby replace the circuits by a path transistor selector.
  • Publication 2 discloses a method including registering both logically equivalent CMOS circuit and path transistor circuit cells in a library and combining them according to required conditions so as to allow the mixture of the CMOS logic and the path transistor logic and to automatically optimize the circuit area, delay time and power consumption.
  • Publication 3 discloses a method including replacing portions having inputs fixed to“0” and “1” of a path transistor type logic circuit created based on the binary decision diagram theory by NAND and NOR circuits of a logically equivalent CMOS circuits and adjusting the circuits in light of the performance and required values of the overall circuits.
  • FIG. 23A shows a design example 1 of a conventional logic circuit (or the path transistor selector circuit in this case).
  • the path transistor selector circuit shown therein consists of n NMOS path transistors t 0 to tn provided at an input side and an inverter inv 0 and a voltage holding PMOS transistor pt 0 provided at an output side.
  • Input signals s 0 to sn are inputted into the input terminals i 0 to in of these path transistors t 0 to tn, respectively.
  • the continuities of the path transistors t 0 to tn are controlled by control signals se 10 to se 1 n inputted into gates g 0 to gn, respectively.
  • the level of only one of the control signals se 10 to se 1 n is H (active) and the levels of the remaining control signals are L.
  • the drains d 0 to dn of the path transistors t 0 to tn, respectively, are connected to the input terminal of the inverter inv 0 .
  • the inverter inv 0 inverts the output signal of any one of the path transistors t 0 to tn and outputs the inverted signal as an output signal o 0 .
  • This inverter inv 0 exists at a node n 0 .
  • the voltage holding PMOS transistor pt 0 is intended to hold voltage.
  • the drain dp of the voltage holding PMOS transistor pt 0 is connected to the input terminal of the inverter inv 0 and the gate gp thereof is connected to the output terminal of the inverter inv 0 .
  • a path transistor selector circuit shown in FIG. 23B is conventionally used.
  • a selector function is realized by employing complementary transfer gates C 0 to Cn instead of the path transistors t 0 to tn shown in FIG. 23A.
  • the path transistor selector circuit shown in FIG. 23B is not provided with a voltage holding PMOS transistor pt 0 and in this case (like shown in FIG. 23B) any CMOS gate (AND, OR, etc . . . ) can be switched instead of inverter inv 0 (Not shown).
  • the conventional design has disadvantage in that the load capacity of the path transistor selector circuit dynamically changes according to the values of the control signals se 10 to se 1 n shown in FIG. 23A. Namely, if the level of the control signal se 10 is H and the levels of the control signals se 11 , se 12 , . . .
  • a load capacity Ct to be driven from the input terminal i 0 becomes the sum of parasitic capacities Cs 0 and Cd 0 at the source and drain d 0 of the path transistor t 0 through which the input signal s 0 passes, a gate capacity Cinv 0 at the gate of the inverter inv 0 , a parasitic capacity Cdp at the drain dp of the voltage holding PMOS transistor pt 0 and drain capacities Cd 1 to Cdn at the drains d 1 to dn of the respective path transistors t 1 to tn.
  • This load capacity Ct is expressed by the following equation (1):
  • the load capacity of the path transistor selector circuit dynamically changes (to the load capacity Ct or the load capacity Ct′) according to the values (H level or L level) of the control signals se 10 to se 1 n.
  • a problem arises particularly when handling the path transistor selector circuit as some units.
  • the load capacity is the sum of the capacity of a load connected to the node n 0 and the parasitic capacities at the respective source of the path transistors t 2 , t 4 and t 6 .
  • FIG. 24 shows a design example 2 of the conventional logic circuit intended to increase the response speed of the circuit.
  • parts corresponding to those in FIG. 2 are denoted by the same reference symbols as those in FIG. 2.
  • inverters ia 0 and ib 0 , . . . and ia 3 and ib 3 are provided at the source sides of path transistors t 0 to t 7 , respectively and inverters ic 0 , ic 1 . . . and ic 3 are provided at output sides thereof.
  • the method of the design example 2 can be expected to advantageously improve the response speed of the circuit.
  • a packaging area and power consumption disadvantageously increase.
  • the load capacity dynamically changing according to the control logic is one factor which makes it difficult to ensure a driving force even in designing a cell base. This also causes the increase of a packing area and power consumption and the reduction of the response speed due to the waveform deformation of a signal.
  • the circuit is normally required to be characterized by the load capacity Ct expressed by the equation (1), i.e., the worst value, so as to avoid the above disadvantages. It is, therefore, expected to be difficult to adjust the circuit to avoid racing.
  • a plurality of path transistors are connected in parallel, same input signal is inputted into the input terminals of these path transistors, and continuities of the plurality of path transistors is controlled by a plurality of control signals having an exclusive relationship therebetween.
  • a plurality of buffers are provided for driving the drive segments including at least the plurality of path transistors and wirings, the drive segments being a plurality of divided ranges each having an equal potential.
  • the plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, a circuit is divided into a plurality of ranges each having an equal potential as drive segments to thereby drive the drive segments independently using buffers, respectively.
  • a circuit is divided into a plurality of ranges each having an equal potential as drive segments to thereby drive the drive segments independently using buffers, respectively.
  • the logic circuit optimization device comprises a logic specification indication unit which indicates logic specifications so that a plurality of control signals controlling continuities of the plurality of path transistors, respectively, have an exclusive relationship therebetween; a cell library unit which registers a plurality of cell data used to design the logic circuit; and an optimization unit which conducts a logic composition based on the logic specifications and the cell data, and for optimizing buffering in the logic circuit.
  • the logic specification indication unit indicates logic specifications so that a plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, and logic composition and the optimization of buffering are conducted based on the logic specifications and cell data.
  • FIG. 1 is a block diagram showing the constitution of one embodiment according to the present invention.
  • FIG. 2 shows an example of a grouping description part data 12 shown in FIG. 1;
  • FIG. 3 shows a cell library 700 used in the embodiment
  • FIG. 4 is an explanatory view for a CMOS logic circuit cell A used in the embodiment
  • FIG. 5 is an explanatory view for a path transistor selector cell D used in the embodiment
  • FIG. 6A and FIG. 6B are explain the operation of the embodiment
  • FIG. 7 is an explanatory view for the operation of the embodiment
  • FIG. 8 is a flow chart for describing the operation of the embodiment
  • FIG. 9 is an explanatory view for a design example 1 in the embodiment.
  • FIG. 10 is an explanatory view for a design example 1 in the embodiment.
  • FIG. 1A to FIG. 11C are for explaining a design example 2 in the embodiment
  • FIG. 12A and FIG. 12B are for explaining a design example 3 in the embodiment.
  • FIG. 13A and FIG. 13B are for explaining a design example 4 in the embodiment.
  • FIG. 14 is an explanatory view for a design example 4 in the embodiment.
  • FIG. 15 is an explanatory view for a design example in the embodiment.
  • FIG. 16 is an explanatory view for a modified example of the embodiment.
  • FIG. 17 is an explanatory view for a modified example of the embodiment.
  • FIG. 18 is an explanatory view for a modified example of the embodiment.
  • FIG. 19 is an explanatory view for a modified example of the embodiment.
  • FIG. 20 is an explanatory view for a modified example of the embodiment.
  • FIG. 21 is an explanatory view for a modified example of the embodiment.
  • FIG. 22 is a block diagram showing a modified example of the embodiment
  • FIG. 23A and FIG. 23B show a design example 1 of a conventional logic circuit
  • FIG. 24 shows a design example 2 of a conventional logic circuit.
  • FIG. 1 is a block diagram showing the constitution of one embodiment according to the present invention.
  • a logic specification indication section 1 indicates logic specifications relating to a to-be-designed logic circuit.
  • the logic specification indication section 1 inputs a behavior/net list 10 and specification data 11 as logic specifications.
  • the behavior/net list 10 is behavior and a net list described in HDL (Hardware Description Language) relating to a to-be-designed logic circuit.
  • HDL Hardware Description Language
  • component information, wiring connection information, positional information and the like are described.
  • One example of the logic circuit described herein may be a path transistor selector circuit already stated above.
  • the specification data 11 is expected value data on the input and output of the logic circuit.
  • a drive segment indication section 2 indicates directly or indirectly grouped drive segments constituting the logic circuit to the same node or net according to a certain rule (e.g., the exclusive conditions of control signals).
  • the drive segment indication section 2 inputs grouped description part data 12 corresponding to the drive segment.
  • FIG. 2 shows examples of the grouped description part data 12 .
  • grouped description part data 12 A(example 1), grouped description part data 12 B (example 2) and grouped description part data 12 C (example 3) are shown.
  • the grouped description part data 12 A defines information on a terminal designation group 1 (control terminals a to d), a terminal designation group 2 (control signals e to h), a terminal designation group 3 , . . . designating terminals constituting a drive segment.
  • the grouped description part data 12 B defines information on a terminal designation group 1 (instance A, control signal terminal a, . . . and instance D, control signal terminal d), a terminal designation group 2 , a terminal designation group 3 , constituting the drive segment.
  • the grouped description part data 12 C defines information on an instance designation group 1 (instances a to d), an instance designation group 2 , an instance designation group 3 , . . .
  • the three types of grouped description part data 12 A, 12 B and 12 C stated above may be recorded together in one recording region of a storage device (not shown) or recorded in a plurality of recording regions, respectively.
  • analyses as to logic composition, automatic wiring, and the electric characteristics (delay, waveform, power) of the logic circuit are executed based on a cell library 700 shown in FIG. 3.
  • FIG. 3 parts corresponding to the respective parts shown in FIG. 1 are denoted by the same reference symbols as those in FIG. 1.
  • Data (to be referred to as “cell data” hereinafter) for realizing cells which are considered to be the basic circuits in the design of a logic circuit such as circuits combining logic elements are registered in the cell library 700 according to a cell (fixed pattern) method.
  • Cell data for realizing a CMOS logic circuit cell A shown in, for example, FIG. 4 include cell data CELL-A 11 on the net list, cell data CELL-A 12 (input/output logic operations) on input/output logic operations, cell data CELL-A 21 on mask data, cell data CELL-A 22 on input/output terminal positions, cell data CELL-A 31 on input/output loads and resistances, cell data CELL-A 32 on delay time and driving force, . . .
  • These cell data CELL-A 11 , CELL-A 12 , . . . correspond to libraries shown in FIG. 3.
  • the cell data CELL-A 11 is registered in a CMOS logic circuit net list library 110 (see FIG. 3) and the cell data CELL-A 12 is registered in a CMOS logic circuit input/output logic operation library 120 (see FIG. 3).
  • the cell data CELL-A 21 is registered in a CMOS logic circuit mask data library 210 and the cell data CELL-A 22 is registered in a CMOS logic circuit input/output terminal position library 220 .
  • the cell data CELL-A 31 is registered in a CMOS logic circuit input/output load/resistance library 310 and the cell data CELL-A 32 is registered in a CMOS logic circuit delay time/driving force library 320 .
  • cell data for realizing a path transistor selector cell D shown in FIG. 5 include cell data CELL-D 11 on the net list, cell data CELL-D 12 on input/output logic operations, cell data CELL-D 21 on mask data, cell data CELL-D 22 on input/output terminal positions, cell data CELL-D 36 on input/output loads and resistances during assertion, cell data CELL-D 37 on input/output loads and resistances during negation, cell data CELL-D 38 on delay time and driving force, . . .
  • These cell data CELL-D 11 , CELL-D 12 , . . . correspond to libraries shown in FIG. 3.
  • the cell data CELL-D 11 is registered in a path transistor selector circuit net list library (not shown) of a net list creation path transistor selector cell library 150 (see FIG. 3).
  • the cell data CELL-D 12 is registered in a path transistor selector circuit input/output logic operation library (not shown) of the net list creation path transistor selector cell library 150 .
  • the cell data CELL-D 21 is registered in a path transistors selector circuit mask data library (not shown) of a layout creation path transistor selector cell library 250 .
  • the cell data CELL-D 22 is registered in a path transistor selector input/output terminal position library (not shown) of the layout creation path transistor selector cell library 250 .
  • the cell data CELL-D 36 is registered in a path transistor selector library 360 .
  • the cell data CELL-D 37 is registered in a path transistor selector library 370 .
  • the cell data CELL-D 38 is registered in a path transistor selector library 380 .
  • the cell library 700 consists of a net list creation CMOS logic circuit cell library 100 , a net list creation path transistor selector cell library 150 , a layout creation CMOS logic circuit cell library 200 , a layout creation path transistor selector cell library 250 , an electric characteristic analysis CMOS logic circuit cell library 300 and an electric characteristic analysis path transistor selector cell library 350 (see FIG. 1).
  • the net list creation CMOS logic circuit cell library 100 is a library in which data on a cell (CMOS logic circuit) for creating a net list.
  • the library 100 consists of a CMOS logic circuit net list library 110 and a CMOS logic circuit input/output logic operation library 120 .
  • the CMOS logic circuit net library 110 the cell data CELL-A 11 , CELL-B 11 , CELL-C 11 , . . . for creating the net list of the CMOS logic circuit are registered.
  • the CMOS logic circuit input/output logic operation library 120 the cell data CELL-A 12 , CELL-B 12 , CELL-C 12 , . . . on the input/output logic operation of the CMOS logic circuit are registered.
  • the net list creation path transistor selector cell library 150 is the same in structure as the net list creation CMOS logic circuit cell library 100 .
  • the library 150 consists of a path transistor selector circuit net list library and a path transistor selector circuit input/output logic operation library (both of which libraries are not shown). While the net list creation CMOS logic circuit cell library 100 consists of data on a plurality of cells for the CMOS logic circuit, the net list creation path transistor selector cell library 150 consists of data on a plurality of cells for the path transistor selector circuits.
  • the path transistor selector circuit means a selector circuit employing the path transistors.
  • the layout creation CMOS logic circuit cell library 200 is a library in which data on a plurality of cells on the layout of the mask pattern of the CMOS logic circuit.
  • the library 200 consists of a CMOS logic circuit mask data library 210 and a CMOS logic circuit input/output terminal position library 220 .
  • CMOS logic circuit mask data library 210 the cell data CELL-A 21 , CELL-B 21 , CELL-C 21 , . . . on the mask pattern of the CMOS logic circuit are registered.
  • CMOS logic circuit input/output terminal position library 220 the cell data CELL-A 22 , CELL-B 22 , CELL-C 22 , . . . on the positions of the input/output terminals of the CMOS logic circuit are registered.
  • the layout creation path transistor selector cell library 250 is the same in structure as the layout creation CMOS logic circuit cell library 200 .
  • the layout creation path transistor selector cell library 250 consists of path transistor selector circuit mask data and a path transistor selector circuit input/output position library (both of which are not shown). While the layout creation CMOS logic circuit cell library 200 consists of data on a plurality of cells for the CMOS logic circuit, the layout creation path transistor selector cell library 250 consists of data on a plurality of cells for the path transistors elector circuit.
  • the electric characteristic analysis CMOS logic circuit cell library 300 is a library in which data on a plurality of cells on the electric characteristics (delay, waveform, power and the like) of the CMOS logic circuit.
  • the library 300 consists of the CMOS logic circuit input/output load and resistance library 310 and the CMOS logic circuit delay time and driving force library 320 .
  • the cell data CELL-A 31 , CELL-B 31 , CELL-C 31 , . . . on the input/output loads and resistances of the CMOS logic circuit are registered.
  • the cell data CELL-A 32 , CELL-B 32 , CELL-C 32 , . . . on the delay time and driving force of the CMOS logic circuit are registered.
  • the electric characteristic analysis path transistor selector cell library 350 is a library in which data on a plurality of cells on the electric characteristics (delay, waveform, power and the like) of the path transistor selector circuit.
  • the library 350 consists of the path transistor selector libraries 360 , 370 and 380 .
  • the electric characteristics include those during the assertion of the path transistor and during the negation thereof.
  • path transistor selector circuits each having n select inputs i.e., path transistors t 0 to tn as shown in FIG. 6A are cells A 1 to Am, respectively shown in FIG. 6B and an input signal in 0 is inputted to the respective input terminals i 0 in common.
  • the maximum value Ct of the load capacity of the input terminal i 0 of the cell A 1 is expressed by the equation (1) and the minimum value Ct′ of the load capacity thereof is expressed by the equation (2).
  • the maximum value Ct and delay time Tt are usually adopted. If m cells, i.e., cells A 1 to Am are connected in parallel as shown in FIG. 6B, however, the load capacity m•Ct is erroneously recognized as the magnitude of the load of the input terminal i 0 and the electric characteristics can not be analyzed precisely. In that case, the state of the control signal for each path transistor is checked and, if the transistor is not continuous, the load capacity is set at the minimum value Ct′.
  • the path transistor selector library 360 (see FIG. 3) corresponding to the maximum value Ct is employed.
  • the path transistor selector library 370 corresponding to the minimum value Ct′ is employed.
  • the path transistor selector library 360 the cell data CELL-D 36 , CELL-E 36 , CELL-F 36 , . . . on the input/output loads and resistances of the path transistor select circuit during the assertion of the path transistors are registered.
  • the path transistor selector library 370 the cell data CELL-D 37 , CELL-E 37 , CELL-F 37 , . . . on the input/output loads and resistances of the path transistor selector circuit during the negation of the path transistors are registered.
  • the path transistor selector library 380 the cell data CELL-D 38 , CELL-E 38 , CELL-F 38 , . . . on the delay time and driving force of the path transistor selector circuit are registered.
  • the logic composition processing section 3 creates a composed net list 800 by executing a logic composition processing for composing a combination of a plurality of cells based on the specification data 11 from the logic specification indication section 1 , the behavior/net list 10 , the grouped description part data 12 from the drive segment indication section 2 , the net list creation CMOS logic circuit cell library 100 , the net list creation path transistor selector cell library 150 , the electric characteristic analysis CMOS logic circuit cell library 300 and the electric characteristic analysis path transistor selector cell library 350 .
  • the composed net list 800 does not include information on the electric characteristics of wirings between cells.
  • a delay, waveform and power analysis section 4 analyzes electric characteristics (delay, waveform, power) relating to the composed net list 800 using the electric characteristic analysis CMOS logic circuit cell library 300 and the electric characteristic analysis path transistor selector cell library 350 , and provides delay, waveform, power consumption analysis estimation result data 810 as an analysis result.
  • the delay, wave form and power analysis section 4 performs analysis as to a path (wiring) indicated by a thick line shown therein.
  • An automatic layout/wiring processing section 5 creates layout data 820 on the logic circuit using the composed net list 800 , the layout creation CMOS logic circuit cell library 200 and the layout creation path transistor selector cell library 250 .
  • the layout data 820 includes all physical characteristics such as those of wirings between cells.
  • a layout data conversion section 6 converts the layout data 820 into mask pattern data 830 and physical characteristics (of wirings and the like) inclusive net list 840 .
  • the mask pattern data 830 is data on the mask pattern in case of forming a logic circuit on a semiconductor substrate.
  • the physical characteristics (of wirings and the like) inclusive net list 840 include physical characteristics of wirings and the like.
  • a delay, waveform and power analysis section 7 analyzes electric characteristics (delay, waveform and power) relating to the physical characteristics (of wirings and the like) inclusive net list 840 using the electric characteristic analysis CMOS logic circuit cell library 300 and the electric characteristic analysis path transistor selector cell library 350 , and provides delay, waveform and power consumption analysis design value data 850 as an analysis result.
  • the path transistor selector circuit shown in FIG. 9 has four nodes n 0 to n 3 . From these nodes, selected input signals are outputted as output signals o 0 to o 3 through inverters inv 0 to inv 3 , respectively. At the node n 0 , path transistors t 0 and t 1 connected in parallel, the inverter inv 0 and a voltage holding PMOS transistor pt 0 are arranged.
  • the continuities of these path transistors t 0 and t 1 are controlled by control signals sa 0 and sb 0 , respectively and one of input signals a 0 and b 0 is selected. Namely, if the level of the control signal sa 0 is H. the path transistor t 0 becomes continuous and the input signal a 0 is selected. If the level of the control signal sb 0 is H, the path transistor t 1 becomes continuous and the input signal b 0 is selected.
  • the control signals sa 0 and sb 0 has an exclusive relationship therebetween, i.e., if the level of one signal is H, the level of the other is L and the levels of the both signals do not become H simultaneously.
  • path transistors t 2 and t 3 connected in parallel, the inverter inv 1 and a voltage holding PMOS transistor pt 1 are arranged.
  • the continuities of these path transistors t 2 and t 3 are controlled by control signals sa 1 and sb 1 , respectively and one of input signals a 0 and b 1 is selected. Namely, if the level of the control signal sa 1 is H, the path transistor t 2 becomes continuous and the input signal a 0 is selected. If the level of the control signal sb 1 is H, the path transistor t 3 becomes continuous and the input signal b 1 is selected.
  • the control signals sa 1 and sb 1 has an exclusive relationship therebetween, i.e., if the level of one signal is H, that of the other is L and the levels of the both signals do not become H simultaneously.
  • path transistors t 4 and t 5 connected in parallel, the inverter inv 2 and a voltage holding PMOS transistor pt 2 are arranged.
  • the continuities of these path transistors t 4 and t 5 are controlled by control signals sa 2 and sb 2 , respectively, and one of input signals a 0 and b 2 is selected. Namely, if the level of the control signal sa 2 is H, the path transistor t 4 becomes continuous and the input signal a 0 is selected. If the level of the control signal sb 2 is H, the path transistor t 5 becomes continuous and the input signal b 2 is selected.
  • the control signals sa 2 and sb 2 have an exclusive relationship therebetween, i.e., if the level of one signal is H, the level of the other is L and the levels of the both signals do not become H simultaneously.
  • path transistors t 6 and t 7 connected in parallel, the inverter inv 3 and a voltage holding PMO transistor pt 3 are arranged.
  • the continuities of these path transistors t 6 and t 7 are controlled by control signals sa 3 and sb 3 and one of input signals a 0 and b 3 is selected. Namely, if the level of the control signal sa 3 is H, the path transistor t 6 becomes continuous and the input signal a 0 is selected. If the level of the control signal sb 3 is H, the path transistor t 7 becomes continuous and the input signal b 3 is selected.
  • the control signals sa 3 and sb 3 have an exclusive relationship therebetween, i.e., if the level of one signal is H, that of the other is L and the levels of the both signals do not become H simultaneously.
  • the input signal a 0 is a common input signal inputted to the path transistors t 0 , t 2 , t 4 and t 6 . Due to this, it is necessary to drive the load of the load capacity of the worst value seen from the input terminal of the input signal a 0 using one buffer (not shown) . Namely, in the path transistor selector circuit showed in FIG. 9, a buffer having an enough and spare driving force (i.e., a buffer ensuring an excessive driving force) is used, which buffer is not preferable in light of reducing power consumption and a packaging area.
  • a buffer having an enough and spare driving force i.e., a buffer ensuring an excessive driving force
  • the levels of all the control signals sa 0 , sa 1 , sa 2 and sa 3 are often set at H level simultaneously. That is, these control signals sa 0 , sa 1 , sa 2 and sa 3 do not satisfy an exclusive relationship therebetween.
  • a range (path transistor(s), wiring(s), inverter(s) , voltage holding PMOS transistor(s), node(s)) driven by one buffer in the path transistor selector circuit and having the same potential is defined as a drive segment. For example, if only the path transistor t 0 shown in FIG.
  • the drive segment 9 is continuous and one buffer is connected to the input terminal of the input signal a 0 , then the drive segment corresponds to a range including the elements (the path transistor t 0 , the inverter inv 0 , the voltage holding PMOS transistor pt 0 ) on the node n 0 , the wirings connected to those elements and wirings connected to the respective sources of the path transistors t 2 , t 4 and t 6 .
  • the drive segment corresponds to a range including elements (the path transistor t 0 , the inverter inv 0 , the voltage holding PMOS transistor pt 0 ) on the node 0 and wirings connected to these elements, elements (the path transistor t 2 , the inverter inv 1 , the voltage holding PMOS transistor pt 1 ) on the node n 1 and wirings connected to these elements, and wirings connected to the respective sources of the path transistors t 4 and t 6 .
  • the control signals sa 0 , sa 1 , sa 2 and sa 3 do not have an exclusive relationship therebetween. Due to this, the drive segment dynamically changes between the drive segment in a case where the level of the control signal sa 0 is H and only the path transistor t 0 is continuous, and the drive segment in a case where the level of the control signal sa 0 is H, that of the control signal sa 1 is H and both the path transistors t 0 and t 2 are continuous.
  • the drive segment dynamically changes according to the patterns of the control signals and the load capacity of the load which should be driven by one buffer, therefore, dynamically changes.
  • a buffer capable of driving the load with the load capacity of the worst value (maximum value) is used in the path transistor selector circuit in FIG. 9.
  • the load capacity changes since the control signals sa 0 , sa 1 , sa 2 and sa 3 do not have an exclusive relationship therebetween.
  • the path transistor selector circuit which has been optimized as shown in FIG. 10 is designed so that control signals sa 0 , sa 1 , sa 2 and sa 3 have an exclusive relationship therebetween (i.e., only one control signal is at H level and the other control signals are at L level at the same time).
  • a range including the path transistors t 0 and t 2 , wirings and the like is defined as one drive segment
  • a range including the path transistors t 4 , t 6 , wirings and the like is defined as the other drive segment.
  • One drive segment is driven by a buffer B 0 and the other drive segment is driven by a buffer B 1 .
  • the path transistor selector circuit shown in FIG. 9 has one drive segment
  • the path transistor shown in FIG. 10 has two drive segments.
  • the buffer B 0 optimum for driving the sum of a load relating to a path transistor (e.g., path transistor t 0 ) selected by the control signal, a load relating to an unselected path transistor (e.g., path transistor t 2 ) and a load relating to wirings, is provided.
  • the sum of the plural loads stated above is a value estimated as a worst value. Accordingly, compared with the buffer (not shown) for the path transistor selector circuit shown in FIG. 9, the buffer B 0 does not need to ensure an excessive driving force but it suffices to have a driving force necessary and sufficient (effective driving force).
  • the buffer B 1 optimum for driving the sum of a load relating to a path transistor (e.g., path transistor t 4 ) selected by the control signal, a load relating to an unselected path transistor (e.g. path transistor t 6 ) and a load relating to wirings, is provided.
  • the sum of the plural loads stated above is a value estimated as a worst value. Accordingly, compared with the buffer for the path transistor selector circuit(not shown) in FIG. 9, the buffer B 1 does not need to ensure an excessive driving force but it suffices to have a driving force necessary and sufficient (effective driving force).
  • the buffers B 0 and B 1 each having an optimum driving force are provided on the logic circuit as shown in FIG. 10, thereby optimizing the logic circuit. It is noted that the optimization method in the design example 1 (FIG. 10) can be conducted irrespectively of the number of selections of the selector, the number of selectors connected in parallel, the number of input signals of the same selector, the type of path transistors (NMOS, PMOS, transmission gate) and wiring length.
  • step SA 1 a plurality of cells constituting the cell library 700 shown in FIG. 3 are created.
  • step SA 2 logic and physical characteristic data on the respective cells are collected.
  • a step SA 3 it is judged whether or not the to-be-designed logic circuit is a path transistor selector circuit. If this judgment result is “Yes”, in a step SA 4 , the net list creation path transistor selector cell library 150 , the layout creation path transistor selector cell library 250 and the electric characteristic analysis path transistor selector cell library 350 shown in FIG. 3 are created.
  • step SA 5 the net list creation CMOS logic circuit cell library 100 , the layout creation CMOS logic circuit cell library 200 and the electric characteristic analysis CMOS logic circuit cell library 300 shown in FIG. 3 are created.
  • step SA 6 the libraries created in either the step SA 4 or step SA 5 are registered in the cell library 700 .
  • a step SA 7 the behavior/net list 10 described in HDL and the specification data 11 are created as logic specifications.
  • the logic specification indication section 1 indicates the logic specifications (the behavior/net list 10 and the specification data 11 ).
  • the logic specifications indicated here are intended to realize the path transistor selector circuit shown in FIG. 10 and include the exclusive relationship between the control signals, area, delay time, power consumption and the like as already described above.
  • a step SA 8 grouped description part data 12 (see FIG. 2) on the groups (drive segments) of the path transistor selector circuit is created based on cell and terminal information.
  • the drive segment indication section 2 indicates grouping based on the grouped description part data 12 .
  • the drive segments here include the path transistors t 0 and t 1 , the path transistors t 2 and t 3 , the path transistors t 4 and t 5 , and the path transistors t 6 and t 7 shown in FIG. 10.
  • the logic composition processing section 3 designates the fixation and optimization of the circuit and performs a logic composition based on the specification data 11 from the logic specification indication section 1 , the behavior/net list 10 , the grouped description part data 12 from the drive segment indication section 2 , the net list creation path transistor selector cell library 150 and the electric characteristic analysis path transistor selector cell library 350 .
  • the logic composition processing section 3 passes the logic composition result to the delay, waveform and power analysis section 4 and to the automatic layout and wiring processing section 5 as the composed net list 800 .
  • a step SA 10 the delay, waveform and power analysis section 4 analyzes electric characteristics (delay, waveform and power) relating to the composed net list 800 using the electric characteristic analysis path transistor selector cell library 350 .
  • a step SA 11 the delay, waveform and power analysis section 4 judges whether or not the electric characteristic analysis result satisfies the required specifications. If this judgment result is “No”, the electric characteristic specifications are reviewed and optimized so as to satisfy the required specifications in steps SA 7 , SA 8 and SA 9 .
  • step SA 7 a logic structure employing the path transistor selector is reviewed and the overall logic structure is reviewed.
  • step SA 8 the grouping of the path transistor selector is reviewed.
  • step SA 9 optimization other than grouping of the path transistor selector is conducted.
  • step SA 10 electric characteristics relating to the composed net list 800 after review and optimization are analyzed.
  • the automatic layout and wiring processing section 5 creates layout data 820 on the logic circuit conforming to a design rule based on the composed net list 800 and the layout creation path transistor selector cell library 250 .
  • the layout conversion section 6 converts the layout data 820 into the physical characteristic (of wirings and the like) inclusive net list 840 and then passes the list 840 to the delay, waveform and power analysis section 7 .
  • the delay, waveform and power analysis section 7 analyzes the electric properties (delay, waveform, power) relating to the physical characteristic (of wirings and the like) inclusive net list 840 using the electric characteristic analysis path transistor selector cell library 350 .
  • the delay, waveform and power analysis section 7 judges whether or not the electric characteristic analysis result satisfies the required specifications. If this judgment result is “No”, the layout and wirings are optimized in a step SA 12 and processings after a step SA 13 are executed.
  • the layout data conversion section 6 converts the layout data 820 into the mask pattern data 830 . Thereafter, based on the mask pattern data 830 , the logic circuit shown in FIG. 10 is formed on the semiconductor substrate.
  • the path transistor selector circuit (prototype) shown in FIG. 11A has two nodes, i.e., n 0 (selector SEL 0 ) and n 1 (selector SEL 1 ) From the respective nodes, selected input signals are outputted as output signals o 0 and o 1 .
  • path transistors t 0 to t 3 connected in parallel, an inverter inv 0 and a voltage holding PMOS transistor pt 0 are arranged.
  • the continuities of these path transistors t 0 to t 3 are controlled by control signals sa 0 , sb 0 , sc 0 and sd 0 , respectively and one of input signals a 0 , b 0 , c 0 and d 0 is selected.
  • the path transistor t 0 becomes continuous and the input signal a 0 is selected and outputted, as the output signal o 0 , to a logic circuit 900 in the later stage through the inverter inv 0 .
  • path transistors t 4 to t 7 connected in parallel, an inverter inv 1 and a voltage holding PMOS transistor pt 1 are arranged.
  • the input signal a 0 is an input signal common to the path transistors t 0 and t 4 .
  • the continuities of these path transistors t 4 to t 7 are controlled by control signals sa 1 , sb 1 , sc 1 and sd 1 , respectively and one of input signals a 0 , b 1 , c 1 and d 1 is selected. For example, if the level of the control signal sa 1 is H, then the path transistor t 4 becomes continuous and the input signal a 0 is selected.
  • the input signal a 0 is outputted, as an output signal o 1 , to the logic circuit 900 in the later stage through the inverter inv 1 .
  • the levels of the control signals sa 0 and sa 1 often become H simultaneously. In that case, the problem occurs that a load capacity to be driven increases and that optimum buffering cannot be conducted.
  • the behavior/net list 10 , the specification data 11 and the grouped description part data 12 shown in FIG. 1 are created so as to intentionally ensure the exclusive relationship between the control signal sa 0 ′ and sa 1 ′ as shown in FIG. 11B.
  • the levels of the control signals sa 0 ′ and sa 1 ′ do not become H simultaneously and optimum buffering can be realized, thereby reducing a packaging area and improving delay time and power consumption. That is to say, by intentionally recomposing the selected logics so as to obtain control signals which have an exclusive relationship therebetween for the purpose of creating independent drive segments (selectors SEL 0 and SEL 1 ) to optimize buffering, the operation characteristics of the path transistor circuit improves.
  • the behavior/net list 10 , the specification data 11 and the grouped description part data 12 are created so that the input signal sa 0 may not be inputted into two drive segments (selectors SEL 0 and SEL 1 ).
  • the logic circuits shown in FIGS. 11B and 11C are designed according to the flow chart shown in FIG. 8.
  • the optimization method in the design example 2 (FIGS. 11B and 11C) can be realized irrespectively of the number of selections of the selectors, the number of selectors connected in parallel, the number of input signals of a single selector, the type of path transistors (NMOS, PMOS, transmission gate) and wiring length.
  • the path transistor selector circuit (prototype) shown in FIG. 12A consists of four selectors SEL 0 to SEL 4 .
  • Each of the selectors SEL 0 to SEL 4 is a three-input, one-output type selector and consists of a plurality of path transistors (not shown). It is noted that FIG. 12A does not show the control signals of the path transistors. Also, one of the input signals of the selector SEL 0 is an input signal common to the other selectors SEL 1 to SEL 4 .
  • the selectors SEL 1 and SEL 2 required to be optimized are partially cut as a drive segment and these selectors SEL 1 and SEL 2 are subjected to the optimization in either the design example 1 or design example 2 described above, thereby selecting a buffer B for realizing optimum buffering.
  • the behavior/net list 10 , the specification data 11 and the grouped description part data 12 (see FIG. 1) for realizing the optimization are created.
  • the path transistor selector circuit shown in FIG. 12B is designed according to the flow chart shown in FIG. 8.
  • the path transistor selector circuit (prototype) shown in FIG. 13A is a data alignment circuit for fetching data of [0:63] bits shown in FIG. 14 as effective bits in units of one byte (eight bits) .
  • selectors SEL 0 , SEL 32 , SEL 48 and SEL 56 corresponding to [0] bit, [32] bit, [48] bit and [56] bit, respectively are shown and selectors corresponding to the remaining bits are not shown.
  • the selector SEL 0 selects either input bit [0] or ‘0’ data based on a control signal and outputs the selected one as an output bit out[0].
  • the selector SEL 32 selects one of input bits in [0], [32] and ‘0’ data based on a control signal and outputs the selected one as an output bit out [32].
  • the selector SEL 48 selects one of input bits in [0], [16], [48] and ‘0’ data and outputs the selected one as an output bit out[48].
  • the selector SEL 56 selects one of input bits in [0 ], [8], [24], [56] and ‘0’ data and outputs the selected one as an output bit out [56].
  • the input bit [0] is an input bit common to the selectors SEL 0 , SEL 32 , SEL 48 and SEL 56 .
  • a buffer B 1 corresponding to the selectors SEL 0 and SEL 32 and a buffer B 2 corresponding to the selectors SEL 48 and SEL 56 are provided and the buffers B 1 ad B 2 conduct buffering independently of each other, thereby making it possible to conduct optimum buffering.
  • the behavior/net list 10 , the specification data 11 and the grouped description part data 12 (see FIG. 1) for realizing the optimization are created.
  • the path transistor selector circuits shown in FIG. 13B are designed according to the flow chart shown in FIG. 8.
  • the optimization method in the design example 4 is also applicable to a barrel shifter circuit or the like used for bit operation and realized irrespectively of the number of selections, the number of selectors connected in parallel, the number of input signals of a single selector, the type of path transistors (NMOS, PMOS and transmission gate) and wiring length.
  • the optimization method is also applicable to a path transistor selector circuit 1200 and a data path 1300 used for a memory block 1100 such as a RAM macro or a register array.
  • path transistor selector circuit 1200 In the memory block 1100 , data read/write is controlled by the path transistor selector circuit 1200 .
  • This path transistor selector circuit 1200 is obtained by making a group of drive segments a macro group. The circuit 1200 selects read/write select pattern data using control signals divided in an exclusive manner and outputs the selected data to the memory block 1100 .
  • This path transistor selector circuit 1200 can obtain the same advantages as those in the design examples 1 to 4.
  • the data path 1300 is provided at the output side of the memory block 1100 and has the same functions as those of the path transistor selector circuit shown in FIG. 13A and FIG. 13B. That is to say, the data path 1300 conducts data alignment and bit operation for shift operation and the like to the read data, according to control signals divided in an exclusive manner.
  • the behavior/net list 10 , the specification data 11 and the grouped description part data 12 (see FIG. 1) for realizing the optimization of the path transistor selector circuit 1200 and the data path 1300 are created.
  • the path transistor selector circuit 1200 and the data path 1300 shown in FIG. 15 are designed according to the flow chart shown in FIG. 8.
  • an NAND circuit shown in FIG. 16 instead of each of the selectors x 0 to X 3 shown in FIG. 10 may be provided.
  • path transistors t 0 , t 1 and an inverter inv 1 are provided at the input side of a node n 0 and an inverter inv 0 and a voltage holding PMOS transistor pt 0 are provided at the output side of the node n 0 .
  • the continuities of the path transistors t 0 and t 1 are controlled by a control signal se 10 .
  • the drains of the respective path transistors t 0 and t 1 are connected to the common node n 0 .
  • An input terminal i 0 at the source side of the path transistor t 0 is set to have a potential equal to the potential of the input terminal at the source side of the other path transistor through a wiring (not shown) .
  • the inverter inv 1 may be provided at the control signal se 10 -side of the path transistor t 0 , the source side of the path transistor t 0 may be grounded and the source side of the path transistor t 1 maybe set as the input terminal i 0 .
  • an NOR circuit shown in FIG. 17 instead of each of the selectors x 0 to X 3 shown in FIG. 10 may be provided.
  • path transistors t 0 , t 1 and an inverter inv 1 are provided at the input side of a node n 0 and an inverter inv 0 is provided at the output side of the node n 0 .
  • the continuities of the path transistors t 0 and t 1 are controlled by a control signal se 10 .
  • the drains of the respective path transistors t 0 and t 1 are connected to the common node n 0 .
  • An input terminal i 0 at the source side of the path transistor t 0 has a potential equal to the potential of an input terminal at the source side of the other path transistor through a wiring (not shown).
  • the inverter inv 1 may be provided at the transistor t 1 side, the source side of the path transistor t 0 may have a predetermined potential and the source side of the path transistor t 1 may be set as an input terminal i 0 .
  • a circuit shown in FIG. 18 instead of each of the selectors x 0 to X 3 shown in FIG. 10 may be provided.
  • path transistors t 0 to tn are provided at the input side of a node n 0 and an inverter inv 0 and a voltage holding PMOS transistor pt 0 are provided at the output side of the node n 0 .
  • the continuities of these path transistors t 0 to tn are controlled by control signals se 10 to se 1 n, respectively.
  • An input terminal i 0 at the source side of the path transistor t 0 is set to have a potential equal to the potential of an input terminal at the source side of the other path transistor through a wiring (not shown).
  • the drains of the respective path transistors t 0 to tn are connected to the common node n 0 .
  • the path transistor t 2 or path transistor t 3 may be omitted.
  • a multi-stage circuit shown in FIG. 19 instead of each of the selectors x 0 to X 3 shown in FIG. 10 may be provided.
  • path transistors t 0 to tn, a path transistor tm, an inverter inv 1 and a voltage holding PMOS transistor pt 1 are arranged at the input side of a node n 0 and an inverter inv 0 and a voltage holding PMOS transistor pt 0 are arranged at the output side of the node n 0 .
  • the circuit shown therein is intended to reduce a load capacity seen from the input terminals i 0 and i 1 .
  • the continuities of the path transistors t 0 to tn and the path transistor tm are controlled by control signals se 10 to se 1 n and selm, respectively.
  • the circuit shown therein may be constituted to dispense with pull-up circuits (the inverter inv 1 and the voltage holding PMOS transistor pt 1 ).
  • a circuit shown in FIG. 20 instead of the buffer B 0 and the circuits x 0 and x 1 (buffer B 1 , circuits x 2 and X 3 ) shown in FIG. 10 maybe arranged.
  • the circuit shown in FIG. 20 consists of a buffer B 0 , selectors MUX 0 to MUX 2 .
  • the selector MUX 0 consists of path transistors t 00 , t 01 , t 02 and t 03 provided at the input side of a node n 0 and an inverter inv 0 aid a voltage holding PMOS transistor pt 0 provided at the output side of the node n 0 .
  • the continuities of these path transistors t 00 , t 01 , t 02 and t 03 are controlled by control signals se 100 , se 101 , se 102 and se 103 , respectively.
  • the selector MUX 1 consists of path transistors t 10 , t 11 , t 12 and t 13 provided at the input side of the node n 1 and an inverter inv 1 and a voltage holding PMOS transistor pt 1 provided at the output side of the node n 1 .
  • the continuities of these path transistors t 10 , t 11 , t 12 and t 13 are controlled by control signals se 110 , se 111 , se 112 and se 113 , respectively.
  • the selector MUX 2 consists of path transistors t 20 , t 21 , t 22 and t 23 provided at the input side of the node n 2 and an inverter inv 2 and a voltage holding PMOS transistor pt 2 provided at the output side of the node n 2 .
  • the continuities of these path transistors t 20 , t 21 , t 22 and t 23 are controlled by control signals se 12 O, se 121 , se 122 and se 123 , respectively.
  • the sources s 00 , s 11 and s 21 of the respective path transistors t 00 , t 11 and t 21 are connected to a common buffer B 0 through wirings.
  • the control signals se 100 , se 111 and se 121 controlling the continuities of the path transistors t 00 , t 11 and t 21 , respectively, have an exclusive relationship therebetween. Therefore, if the level of one control signal out of these control signals se 100 , se 111 and se 121 is H, the levels of the other control signals are L.
  • Capacitors C 00 , C 01 and a resistance R 0 correspond to the capacities and resistance of a wiring connecting the buffer B 0 to the source s 11 of the path transistor t 11 .
  • capacitors C 10 , C 11 and a resistance R 1 correspond to the capacities and resistance of a wiring connecting the source s 11 of the path transistor t 11 to the source s 21 of the path transistor t 21 .
  • control signals having an exclusive relationship there between are control signals se 100 , se 111 and se 121 . The other combination of control signals is also applicable.
  • FIG. 21 is an explanatory view for the modified example 6 of one embodiment already stated above.
  • parts corresponding to those in FIG. 20 are denoted by the same reference symbols as those in FIG. 20.
  • a path transistor ta is interposed in the middle of a wiring (at a buffer B 0 side) connecting a buffer B 0 to the source s 11 of a path transistor t 11 .
  • the continuity of the path transistor ta is controlled by a control signal se 100 (inversion) inverted from a control signal se 100 . Therefore, if the level of the control signal se 100 is H and the path transistor t 00 is continuous, the level of the control signal se 100 (inversion) is L and the path transistor ta is cut off.
  • the wiring capacity and resistance seen from the side of the buffer B 0 are reduced by those of the downstream part of the path transistor ta.
  • An inverter invp and a voltage holding PMOS transistor ptp constitute a pull-up circuit and are connected to one end of a resistance R 0 .
  • This pull-up circuit is intended to improve the electric characteristics relating to wirings when the path transistor ta is continuous.
  • a path transistor tb is interposed in the middle (at a source s 11 side) of a wiring connecting the source s 11 of the path transistor t 11 to the source s 21 of the path transistor t 21 .
  • the continuity of the path transistor tb is controlled by a control signal se 111 (inversion) inverted from a control signal se 111 . Therefore, if the level of the control signal se 111 is H and the path transistor t 00 is continuous, the level of the control signal se 111 (inversion) is L and the path transistor tb is cut off.
  • the wiring capacity and resistance seen from the side of the buffer B 0 are reduced by those of the downstream part of the path transistor tb.
  • a logic circuit optimization program for realizing the above-stated functions may be recorded on a computer readable recording medium 1500 shown in FIG. 22 and the logic circuit optimization program recorded on this recording medium 1500 may be read and executed by a computer 1400 , thereby designing and optimizing the logic circuit.
  • the computer 1400 shown in FIG. 22 consists of a CPU 1401 executing the logic circuit optimization program, an input device 1402 such as a keyboard and a mouse, an ROM (Read Only Memory) 1403 storing various data, an RAM (Random Access Memory) 1404 storing operation parameters and the like, a reading device 1405 reading the logic circuit optimization program from the recording medium 1500 , an output device 1406 such as a display and a printer, and a bus BU connecting the respective constituent elements of the computer 1400 .
  • a CPU 1401 executing the logic circuit optimization program
  • an input device 1402 such as a keyboard and a mouse
  • an ROM (Read Only Memory) 1403 storing various data
  • an RAM (Random Access Memory) 1404 storing operation parameters and the like
  • a reading device 1405 reading the logic circuit optimization program from the recording medium 1500
  • an output device 1406 such as a display and a printer
  • a bus BU connecting the respective constituent elements of the computer 1400 .
  • the CPU 1401 reads the logic circuit optimization program recorded on the recording medium 1500 through the reading device 1405 , executes the logic circuit optimization program and thereby designs and optimizes the logic circuit.
  • the recording medium 1500 may be not only a portable type recording medium such as an optical disk, a floppy disk or a hard disk, but also a transmission medium, such as a network, temporarily holding data.
  • the logic circuit optimization device (CAD) shown in FIG. 1 has been described.
  • the present invention is also applicable to a macro design such as a full-custom macro design or a semi-custom macro design. Accordingly, the path transistor selector circuit itself described in the embodiment is also contained in the present invention.
  • a plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, a circuit is divided into a plurality of ranges each having an equal potential as drive segments to thereby drive the drive segments independently using the buffers B 0 and B 1 (see FIG. 10), respectively.
  • a circuit is divided into a plurality of ranges each having an equal potential as drive segments to thereby drive the drive segments independently using the buffers B 0 and B 1 (see FIG. 10), respectively.
  • a plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, a circuit is divided into a plurality of ranges each having an equal potential as drive segments to thereby drive the drive segments independently using buffers, respectively.
  • the present invention can advantageously, easily optimize buffering and obtain a logic circuit excellent in electric characteristics, compared with a conventional circuit.
  • the logic specification indication unit indicates logic specifications so that a plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, and logic composition and the optimization of buffering are conducted based on the logic specifications and cell data.
  • the present invention can advantageously optimize the buffering of a logic circuit employing path transistors and obtain a logic circuit excellent in electric characteristics.
  • logic specifications are indicated so that a plurality of signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, and logic composition and the optimization of buffering are conducted based on the logic specification and cell data.
  • the present invention can advantageously optimize the buffering of a logic circuit employing path transistors and obtain a logic circuit excellent in electric characteristics.

Abstract

A path transistor circuit comprises a plurality of path transistors connected in parallel. Same input signal is inputted into the sources of these path transistors. Continuities of these path transistors is controlled by a plurality of control signals having an exclusive relationship therebetween. A plurality of buffers respectively drive the drive segments including at least the path transistors and wirings. The drive segments being a plurality of divided ranges each having an equal potential.

Description

    FIELD OF THE INVENTION
  • The present invention relates to a path transistor circuit used as a selector employing path transistors, a path transistor circuit design method, a logic circuit optimization device used to optimize buffering in designing a logic circuit, a logic circuit optimization method and a computer-readable recording medium in which a computer program which when executed on a computer realizes the method according to the present invention. [0001]
  • BACKGROUND OF THE INVENTION
  • In the recent semiconductor LSI (Large Scale Integrated Circuit) field, a method for designing a logic circuit using path transistors has been widely utilized. Especially, A logic circuit composition method using a binary decision diagram plays a significant role in separating a logic circuit into select logics and putting the design of a logic circuit using path transistors to practical use. In addition, it is known that in a path transistor logic circuit, the number of normally used transistors is smaller than the number of CMOS (Complementary Metal Oxide Semiconductor) gates, thereby facilitating realizing low power consumption and high integration. [0002]
  • On the other hand, potential problems with the use of a path transistor include that the path transistor lacks in a force for driving other transistors such as a CMOS circuit. Due to this, conventionally, a plurality of stages of path transistors are connected to thereby cause waveform deformation of an electric signal, thus rather sacrificing timing performance. In these circumstances, demand for providing means and a method capable of overcoming these disadvantages more effectively than before rises. [0003]
  • Recently, with the progress of the high integration of a semiconductor integrated circuit, attention is increasingly paid to a path transistor capable of realizing high integration with low power consumption. A technique of this type has been frequently used in designing mainly a memory or a programmable logic array. Since the design of a logic circuit employing a binary decision diagram theory was published, this technique has been employed positively with a view to higher integration, lower power consumption and higher speed. [0004]
  • The binary decision diagram theory is a theory for realizing logic circuit design in which a logic function is translated to an appropriate binary tree by using the binary decision diagram and the resultant tree is replaced by a path transistor selector having a pair of exclusive select inputs and one output. Conventionally, logic composition and circuit optimization are carried out based on the binary decision diagram theory. [0005]
  • For example, Japanese Patent Application Laid-Open No. 9-6821 (to be referred to as “[0006] Publication 1” hereinafter) discloses a method of efficiently probing a binary decision diagram. According to this method, temporary circuits of AND and OR circuits are composed from a logic function and grouped based on the input correlation, and the binary decision graph is probed while optimizing a combination of groups to thereby replace the circuits by a path transistor selector.
  • Meanwhile, it has become conventionally possible to easily create a logic by applying path transistors to a logic circuit. Although effective in solving a select logic, the path transistor has an essential disadvantage in that a signal driving force should be supplied from another CMOS gate. This disadvantage is, therefore, one factor which makes circuit design difficult. [0007]
  • Further, in designing logic, if a circuit logically composed using a path transistor cannot be actually used due to the occurrence of a waveform deformation, it is necessary to change circuit arrangement. To do so, a method for intentionally mixing an optimal combination of CMOS logics into a logic circuit including path transistors, is adopted. [0008]
  • Japanese Patent Application Laid-Open No. 9-321146 (to be referred to as “[0009] Publication 2” hereinafter) and Japanese Patent Application Laid-Open No. 10-200394 (to be referred to as “Publication 3” hereinafter) disclose the above-stated method as well as a method for optimizing a circuit area, delay time and power consumption. Namely, Publication 2 discloses a method including registering both logically equivalent CMOS circuit and path transistor circuit cells in a library and combining them according to required conditions so as to allow the mixture of the CMOS logic and the path transistor logic and to automatically optimize the circuit area, delay time and power consumption.
  • [0010] Publication 3 discloses a method including replacing portions having inputs fixed to“0” and “1” of a path transistor type logic circuit created based on the binary decision diagram theory by NAND and NOR circuits of a logically equivalent CMOS circuits and adjusting the circuits in light of the performance and required values of the overall circuits.
  • As disclosed by [0011] Publications 2 and 3, it is conventionally impossible to satisfy required performance only with the path transistor logic and the CMOS logic is, therefore, still employed to the ordinary design of logic. Nevertheless, the path transistors are often used only for a path transistor selector circuit capable of making most use of the features of the CMOS theory.
  • FIG. 23A shows a design example 1 of a conventional logic circuit (or the path transistor selector circuit in this case). The path transistor selector circuit shown therein consists of n NMOS path transistors t[0012] 0 to tn provided at an input side and an inverter inv0 and a voltage holding PMOS transistor pt0 provided at an output side. Input signals s0 to sn are inputted into the input terminals i0 to in of these path transistors t0 to tn, respectively. In addition, the continuities of the path transistors t0 to tn are controlled by control signals se10 to se1n inputted into gates g0 to gn, respectively. Here, the level of only one of the control signals se10 to se1n is H (active) and the levels of the remaining control signals are L.
  • The drains d[0013] 0 to dn of the path transistors t0 to tn, respectively, are connected to the input terminal of the inverter inv0. The inverter inv0 inverts the output signal of any one of the path transistors t0 to tn and outputs the inverted signal as an output signal o0. This inverter inv0 exists at a node n0. The voltage holding PMOS transistor pt0 is intended to hold voltage. The drain dp of the voltage holding PMOS transistor pt0 is connected to the input terminal of the inverter inv0 and the gate gp thereof is connected to the output terminal of the inverter inv0.
  • If the level of the control signal se[0014] 10 is set at H and those of the other control signals se1 to se1n are set t L, then only the path transistor t0 becomes continuous and an input signal s0 is thereby selected from among the input signals s0 to sn. As a result, the input signal s0 is inverted by the inverter inv0 and then outputted as an output signal o0.
  • Additionally, a path transistor selector circuit shown in FIG. 23B is conventionally used. In FIG. 23B, a selector function is realized by employing complementary transfer gates C[0015] 0 to Cn instead of the path transistors t0 to tn shown in FIG. 23A. It is noted that the path transistor selector circuit shown in FIG. 23B is not provided with a voltage holding PMOS transistor pt0 and in this case (like shown in FIG. 23B) any CMOS gate (AND, OR, etc . . . ) can be switched instead of inverter inv0 (Not shown).
  • In the meantime, as already stated above, the conventional design has disadvantage in that the load capacity of the path transistor selector circuit dynamically changes according to the values of the control signals se[0016] 10 to se1n shown in FIG. 23A. Namely, if the level of the control signal se10 is H and the levels of the control signals se11, se12, . . . and seln are L, then a load capacity Ct to be driven from the input terminal i0 becomes the sum of parasitic capacities Cs0 and Cd0 at the source and drain d0 of the path transistor t0 through which the input signal s0 passes, a gate capacity Cinv0 at the gate of the inverter inv0, a parasitic capacity Cdp at the drain dp of the voltage holding PMOS transistor pt0 and drain capacities Cd1 to Cdn at the drains d1 to dn of the respective path transistors t1 to tn. This load capacity Ct is expressed by the following equation (1):
  • Ct=Cs 0+(Cd 0+Cd 1+. . . +Cdn)+Cdp+Cinv 0 . . .  (1)
  • On the other hand, if the level of the control signal se[0017] 10 is L, a load capacity Ct′ to be driven from the input terminal i0 becomes a parasitic capacity Cs0 at the source of the path transistor t0 and expressed by the following equation (2):
  • Ct′=Cs0 . . .  (2)
  • Conventionally, therefore, the load capacity of the path transistor selector circuit dynamically changes (to the load capacity Ct or the load capacity Ct′) according to the values (H level or L level) of the control signals se[0018] 10 to se1n. Thus, a problem arises particularly when handling the path transistor selector circuit as some units.
  • Namely, as shown in FIG. 9, if one wiring (signal line) is used as the input line of two or more path transistors (in case of FIG. 9, path transistors t[0019] 0, t2, t4 and t6) , the magnitude of the load capacity at the input terminal varies according to the patterns of the control signals controlling the continuities of the respective path transistors. In FIG. 9, the wiring of an input signal a0 is connected to the respective sources of the four path transistors t0, t2, t4 and t6.
  • Here, in a case where only the path transistor t[0020] 0 selects the input signal a0 among the path transistors t0, t2, t4 and t6, i.e., the level of the control signal sa0 is H and the levels of the control signals sa1, sa2 and sa3 are L, then the load capacity is the sum of the capacity of a load connected to the node n0 and the parasitic capacities at the respective source of the path transistors t2, t4 and t6.
  • On the other hand, in a case where all of the path transistors t[0021] 0, t2, t4 and t6 select the input signal a0, i.e., the levels of the control signals sa0, sa1, sa2 and sa3 are H, then the loads of the inverters inv0 to inv3 connected to the nodes n0 to n3, respectively and the path transistors t1, t3, t5 and t7 which do not select the input signal a0 are to be driven by one buffer (not shown) for the input signal a0 in a front stage, with the result that the circuit becomes disadvantageously unbalanced.
  • Such a phenomenon always occurs irrespectively of the number of connections of the path transistor selector circuit and the number of control signals (or the number of path transistors) of the path transistor selector circuit. In case of the constitution in which path transistor selector circuits employing path transistors are connected in parallel as data path constituent circuits such as shifters and data align circuits, in particular, the number of long data transmission wirings for connecting the path transistor selector circuits is greater than the number of wirings in an ordinary logic circuit and the load capacity thereof thereby increases. Due to this, in view of the dynamically changing load capacity and the load resistance caused by the long wirings, it is required to consider, for example, minimizing load capacity and load resistance as much as possible in a design phase. [0022]
  • FIG. 24 shows a design example [0023] 2 of the conventional logic circuit intended to increase the response speed of the circuit. In FIG. 24, parts corresponding to those in FIG. 2 are denoted by the same reference symbols as those in FIG. 2. In FIG. 24, inverters ia0 and ib0, . . . and ia3 and ib3 are provided at the source sides of path transistors t0 to t7, respectively and inverters ic0, ic1 . . . and ic3 are provided at output sides thereof. The method of the design example 2 can be expected to advantageously improve the response speed of the circuit. However, due to the increase of the number of logic stages and devices, a packaging area and power consumption disadvantageously increase.
  • Furthermore, conventionally, if logic circuit packaging operation is automated, it is disadvantageously difficult to handle a parasitic load capacity at an input terminal in a cell design phase. If a net list is composed and a path transistor circuit employing path transistors is simply replaced by a cell, an input driving buffer may be inadvertently made large in scale, thus disadvantageously providing a quite imbalanced circuit. [0024]
  • As can be understood from the above, the load capacity dynamically changing according to the control logic (control signal patterns) is one factor which makes it difficult to ensure a driving force even in designing a cell base. This also causes the increase of a packing area and power consumption and the reduction of the response speed due to the waveform deformation of a signal. Moreover, in case of characterizing a circuit by the delay, load capacity and the like of a path transistor selector circuit employing path transistors, the circuit is normally required to be characterized by the load capacity Ct expressed by the equation (1), i.e., the worst value, so as to avoid the above disadvantages. It is, therefore, expected to be difficult to adjust the circuit to avoid racing. [0025]
  • Other objects and features of this invention will become apparent from the following description with reference to the accompanying drawings. [0026]
  • SUMMARY OF THE INVENTION
  • It is an object of the present invention to provide a path transistor circuit, a path transistor circuit design method, a logic circuit optimization device, a logic circuit optimization method and a computer-readable recording medium recording a logic circuit optimization program capable of easily optimizing the buffering of a pass transistor circuit (logic circuit) employing path transistors and obtaining a logic circuit excellent in electric characteristics. [0027]
  • In the path transistor circuit according to one aspect of the present invention, a plurality of path transistors are connected in parallel, same input signal is inputted into the input terminals of these path transistors, and continuities of the plurality of path transistors is controlled by a plurality of control signals having an exclusive relationship therebetween. Further, a plurality of buffers are provided for driving the drive segments including at least the plurality of path transistors and wirings, the drive segments being a plurality of divided ranges each having an equal potential. [0028]
  • Thus, the plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, a circuit is divided into a plurality of ranges each having an equal potential as drive segments to thereby drive the drive segments independently using buffers, respectively. As a result, it is possible to easily optimize buffering and obtain a path transistor circuit excellent in electric characteristics, compared with a conventional circuit. [0029]
  • The logic circuit optimization device according to another aspect of the present invention comprises a logic specification indication unit which indicates logic specifications so that a plurality of control signals controlling continuities of the plurality of path transistors, respectively, have an exclusive relationship therebetween; a cell library unit which registers a plurality of cell data used to design the logic circuit; and an optimization unit which conducts a logic composition based on the logic specifications and the cell data, and for optimizing buffering in the logic circuit. [0030]
  • Thus, the logic specification indication unit indicates logic specifications so that a plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, and logic composition and the optimization of buffering are conducted based on the logic specifications and cell data. As a result, it is possible to easily optimize the buffering of a logic circuit employing path transistors and obtain a logic circuit excellent in electric characteristics.[0031]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram showing the constitution of one embodiment according to the present invention; [0032]
  • FIG. 2 shows an example of a grouping [0033] description part data 12 shown in FIG. 1;
  • FIG. 3 shows a [0034] cell library 700 used in the embodiment;
  • FIG. 4 is an explanatory view for a CMOS logic circuit cell A used in the embodiment; [0035]
  • FIG. 5 is an explanatory view for a path transistor selector cell D used in the embodiment; [0036]
  • FIG. 6A and FIG. 6B are explain the operation of the embodiment; [0037]
  • FIG. 7 is an explanatory view for the operation of the embodiment; [0038]
  • FIG. 8 is a flow chart for describing the operation of the embodiment; [0039]
  • FIG. 9 is an explanatory view for a design example 1 in the embodiment; [0040]
  • FIG. 10 is an explanatory view for a design example 1 in the embodiment; [0041]
  • FIG. 1A to FIG. 11C are for explaining a design example 2 in the embodiment; [0042]
  • FIG. 12A and FIG. 12B are for explaining a design example 3 in the embodiment; [0043]
  • FIG. 13A and FIG. 13B are for explaining a design example 4 in the embodiment; [0044]
  • FIG. 14 is an explanatory view for a design example 4 in the embodiment; [0045]
  • FIG. 15 is an explanatory view for a design example in the embodiment; [0046]
  • FIG. 16 is an explanatory view for a modified example of the embodiment; [0047]
  • FIG. 17 is an explanatory view for a modified example of the embodiment; [0048]
  • FIG. 18 is an explanatory view for a modified example of the embodiment; [0049]
  • FIG. 19 is an explanatory view for a modified example of the embodiment; [0050]
  • FIG. 20 is an explanatory view for a modified example of the embodiment; [0051]
  • FIG. 21 is an explanatory view for a modified example of the embodiment; [0052]
  • FIG. 22 is a block diagram showing a modified example of the embodiment; [0053]
  • FIG. 23A and FIG. 23B show a design example 1 of a conventional logic circuit; and [0054]
  • FIG. 24 shows a design example 2 of a conventional logic circuit.[0055]
  • DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • A preferred embodiment of a path transistor circuit, a path transistor circuit design method, a logic circuit optimization device, a logic circuit optimization method and a computer-readable recording medium recording a logic circuit optimization program according to the present invention, will now be explained with reference to the accompanying drawings. [0056]
  • FIG. 1 is a block diagram showing the constitution of one embodiment according to the present invention. In FIG. 1, a logic [0057] specification indication section 1 indicates logic specifications relating to a to-be-designed logic circuit. To be specific, the logic specification indication section 1 inputs a behavior/net list 10 and specification data 11 as logic specifications. The behavior/net list 10 is behavior and a net list described in HDL (Hardware Description Language) relating to a to-be-designed logic circuit. As the behavior state transition and the like relating to the logic circuit are described. As the net list, component information, wiring connection information, positional information and the like are described. One example of the logic circuit described herein may be a path transistor selector circuit already stated above.
  • The [0058] specification data 11 is expected value data on the input and output of the logic circuit. A drive segment indication section 2 indicates directly or indirectly grouped drive segments constituting the logic circuit to the same node or net according to a certain rule (e.g., the exclusive conditions of control signals). To be specific, the drive segment indication section 2 inputs grouped description part data 12 corresponding to the drive segment. FIG. 2 shows examples of the grouped description part data 12. In FIG. 2, as examples of grouped description part data 12, grouped description part data 12 A(example 1), grouped description part data 12B (example 2) and grouped description part data 12C (example 3) are shown.
  • The grouped [0059] description part data 12A defines information on a terminal designation group 1 (control terminals a to d), a terminal designation group 2 (control signals e to h), a terminal designation group 3, . . . designating terminals constituting a drive segment. The grouped description part data 12B defines information on a terminal designation group 1 (instance A, control signal terminal a, . . . and instance D, control signal terminal d), a terminal designation group 2, a terminal designation group 3, constituting the drive segment. The grouped description part data 12C defines information on an instance designation group 1 (instances a to d), an instance designation group 2, an instance designation group 3, . . . The three types of grouped description part data 12A, 12B and 12C stated above may be recorded together in one recording region of a storage device (not shown) or recorded in a plurality of recording regions, respectively.
  • Here, as one embodiment, analyses as to logic composition, automatic wiring, and the electric characteristics (delay, waveform, power) of the logic circuit are executed based on a [0060] cell library 700 shown in FIG. 3. In FIG. 3, parts corresponding to the respective parts shown in FIG. 1 are denoted by the same reference symbols as those in FIG. 1. Data (to be referred to as “cell data” hereinafter) for realizing cells which are considered to be the basic circuits in the design of a logic circuit such as circuits combining logic elements are registered in the cell library 700 according to a cell (fixed pattern) method.
  • Cell data for realizing a CMOS logic circuit cell A shown in, for example, FIG. 4, include cell data CELL-A[0061] 11 on the net list, cell data CELL-A12 (input/output logic operations) on input/output logic operations, cell data CELL-A21 on mask data, cell data CELL-A22 on input/output terminal positions, cell data CELL-A31 on input/output loads and resistances, cell data CELL-A32 on delay time and driving force, . . . These cell data CELL-A11, CELL-A12, . . . correspond to libraries shown in FIG. 3.
  • Namely, the cell data CELL-A[0062] 11 is registered in a CMOS logic circuit net list library 110 (see FIG. 3) and the cell data CELL-A12 is registered in a CMOS logic circuit input/output logic operation library 120 (see FIG. 3). Likewise, the cell data CELL-A21 is registered in a CMOS logic circuit mask data library 210 and the cell data CELL-A22 is registered in a CMOS logic circuit input/output terminal position library 220. The cell data CELL-A31 is registered in a CMOS logic circuit input/output load/resistance library 310 and the cell data CELL-A32 is registered in a CMOS logic circuit delay time/driving force library 320.
  • Similarly, cell data for realizing a path transistor selector cell D shown in FIG. 5 include cell data CELL-D[0063] 11 on the net list, cell data CELL-D12 on input/output logic operations, cell data CELL-D21 on mask data, cell data CELL-D22 on input/output terminal positions, cell data CELL-D36 on input/output loads and resistances during assertion, cell data CELL-D37 on input/output loads and resistances during negation, cell data CELL-D38 on delay time and driving force, . . . These cell data CELL-D11, CELL-D12, . . . correspond to libraries shown in FIG. 3.
  • Namely, the cell data CELL-D[0064] 11 is registered in a path transistor selector circuit net list library (not shown) of a net list creation path transistor selector cell library 150 (see FIG. 3). The cell data CELL-D12 is registered in a path transistor selector circuit input/output logic operation library (not shown) of the net list creation path transistor selector cell library 150.
  • Likewise, the cell data CELL-D[0065] 21 is registered in a path transistors selector circuit mask data library (not shown) of a layout creation path transistor selector cell library 250. The cell data CELL-D22 is registered in a path transistor selector input/output terminal position library (not shown) of the layout creation path transistor selector cell library 250. The cell data CELL-D36 is registered in a path transistor selector library 360. The cell data CELL-D37 is registered in a path transistor selector library 370. The cell data CELL-D38 is registered in a path transistor selector library 380.
  • As can be seen, the [0066] cell library 700 consists of a net list creation CMOS logic circuit cell library 100, a net list creation path transistor selector cell library 150, a layout creation CMOS logic circuit cell library 200, a layout creation path transistor selector cell library 250, an electric characteristic analysis CMOS logic circuit cell library 300 and an electric characteristic analysis path transistor selector cell library 350 (see FIG. 1).
  • The net list creation CMOS logic [0067] circuit cell library 100 is a library in which data on a cell (CMOS logic circuit) for creating a net list. The library 100 consists of a CMOS logic circuit net list library 110 and a CMOS logic circuit input/output logic operation library 120. In the CMOS logic circuit net library 110, the cell data CELL-A11, CELL-B11, CELL-C11, . . . for creating the net list of the CMOS logic circuit are registered. In the CMOS logic circuit input/output logic operation library 120, the cell data CELL-A12, CELL-B12, CELL-C12, . . . on the input/output logic operation of the CMOS logic circuit are registered.
  • On the other hand, the net list creation path transistor [0068] selector cell library 150 is the same in structure as the net list creation CMOS logic circuit cell library 100. The library 150 consists of a path transistor selector circuit net list library and a path transistor selector circuit input/output logic operation library (both of which libraries are not shown). While the net list creation CMOS logic circuit cell library 100 consists of data on a plurality of cells for the CMOS logic circuit, the net list creation path transistor selector cell library 150 consists of data on a plurality of cells for the path transistor selector circuits. Here, the path transistor selector circuit means a selector circuit employing the path transistors.
  • The layout creation CMOS logic [0069] circuit cell library 200 is a library in which data on a plurality of cells on the layout of the mask pattern of the CMOS logic circuit. The library 200 consists of a CMOS logic circuit mask data library 210 and a CMOS logic circuit input/output terminal position library 220.
  • In the CMOS logic circuit [0070] mask data library 210, the cell data CELL-A21, CELL-B21, CELL-C21, . . . on the mask pattern of the CMOS logic circuit are registered. In the CMOS logic circuit input/output terminal position library 220, the cell data CELL-A22, CELL-B22, CELL-C22, . . . on the positions of the input/output terminals of the CMOS logic circuit are registered.
  • On the other hand, the layout creation path transistor [0071] selector cell library 250 is the same in structure as the layout creation CMOS logic circuit cell library 200. The layout creation path transistor selector cell library 250 consists of path transistor selector circuit mask data and a path transistor selector circuit input/output position library (both of which are not shown). While the layout creation CMOS logic circuit cell library 200 consists of data on a plurality of cells for the CMOS logic circuit, the layout creation path transistor selector cell library 250 consists of data on a plurality of cells for the path transistors elector circuit.
  • The electric characteristic analysis CMOS logic [0072] circuit cell library 300 is a library in which data on a plurality of cells on the electric characteristics (delay, waveform, power and the like) of the CMOS logic circuit. The library 300 consists of the CMOS logic circuit input/output load and resistance library 310 and the CMOS logic circuit delay time and driving force library 320.
  • In the CMOS logic circuit input/output load and [0073] resistance library 310, the cell data CELL-A31, CELL-B31, CELL-C31, . . . on the input/output loads and resistances of the CMOS logic circuit are registered. In the CMOS logic circuit delay time and driving force library 320, the cell data CELL-A32, CELL-B32, CELL-C32, . . . on the delay time and driving force of the CMOS logic circuit are registered.
  • On the other hand, the electric characteristic analysis path transistor [0074] selector cell library 350 is a library in which data on a plurality of cells on the electric characteristics (delay, waveform, power and the like) of the path transistor selector circuit. The library 350 consists of the path transistor selector libraries 360, 370 and 380. The electric characteristics include those during the assertion of the path transistor and during the negation thereof.
  • Here, consideration will be given to a case where the path transistor selector circuits each having n select inputs, i.e., path transistors t[0075] 0 to tn as shown in FIG. 6A are cells A1 to Am, respectively shown in FIG. 6B and an input signal in0 is inputted to the respective input terminals i0 in common. In this case, the maximum value Ct of the load capacity of the input terminal i0 of the cell A1 is expressed by the equation (1) and the minimum value Ct′ of the load capacity thereof is expressed by the equation (2).
  • To characterize a cell, the maximum value Ct and delay time Tt are usually adopted. If m cells, i.e., cells A[0076] 1 to Am are connected in parallel as shown in FIG. 6B, however, the load capacity m•Ct is erroneously recognized as the magnitude of the load of the input terminal i0 and the electric characteristics can not be analyzed precisely. In that case, the state of the control signal for each path transistor is checked and, if the transistor is not continuous, the load capacity is set at the minimum value Ct′. During the assertion of the path transistors, the path transistor selector library 360 (see FIG. 3) corresponding to the maximum value Ct is employed. During the negation of the path transistors, the path transistor selector library 370 corresponding to the minimum value Ct′ is employed.
  • In the path transistor selector library [0077] 360, the cell data CELL-D36, CELL-E36, CELL-F36, . . . on the input/output loads and resistances of the path transistor select circuit during the assertion of the path transistors are registered. In the path transistor selector library 370, the cell data CELL-D37, CELL-E37, CELL-F37, . . . on the input/output loads and resistances of the path transistor selector circuit during the negation of the path transistors are registered. In the path transistor selector library 380, the cell data CELL-D38, CELL-E38, CELL-F38, . . . on the delay time and driving force of the path transistor selector circuit are registered.
  • Returning to FIG. 1, the logic [0078] composition processing section 3 creates a composed net list 800 by executing a logic composition processing for composing a combination of a plurality of cells based on the specification data 11 from the logic specification indication section 1, the behavior/net list 10, the grouped description part data 12 from the drive segment indication section 2, the net list creation CMOS logic circuit cell library 100, the net list creation path transistor selector cell library 150, the electric characteristic analysis CMOS logic circuit cell library 300 and the electric characteristic analysis path transistor selector cell library 350. Normally, the composed net list 800 does not include information on the electric characteristics of wirings between cells.
  • A delay, waveform and [0079] power analysis section 4 analyzes electric characteristics (delay, waveform, power) relating to the composed net list 800 using the electric characteristic analysis CMOS logic circuit cell library 300 and the electric characteristic analysis path transistor selector cell library 350, and provides delay, waveform, power consumption analysis estimation result data 810 as an analysis result. Here, if analyzing the delay of the path transistor selector circuit shown in FIG. 7, the delay, wave form and power analysis section 4 performs analysis as to a path (wiring) indicated by a thick line shown therein.
  • An automatic layout/[0080] wiring processing section 5 creates layout data 820 on the logic circuit using the composed net list 800, the layout creation CMOS logic circuit cell library 200 and the layout creation path transistor selector cell library 250. The layout data 820 includes all physical characteristics such as those of wirings between cells.
  • A layout [0081] data conversion section 6 converts the layout data 820 into mask pattern data 830 and physical characteristics (of wirings and the like) inclusive net list 840. The mask pattern data 830 is data on the mask pattern in case of forming a logic circuit on a semiconductor substrate. The physical characteristics (of wirings and the like) inclusive net list 840 include physical characteristics of wirings and the like.
  • A delay, waveform and [0082] power analysis section 7 analyzes electric characteristics (delay, waveform and power) relating to the physical characteristics (of wirings and the like) inclusive net list 840 using the electric characteristic analysis CMOS logic circuit cell library 300 and the electric characteristic analysis path transistor selector cell library 350, and provides delay, waveform and power consumption analysis design value data 850 as an analysis result.
  • Next, the operation will be described with reference to a flow chart shown in FIG. 8. While the present invention is applied to a logic circuit optimization device serving as a CAD (Computer Aided Design) device, design examples 1 to 5 (see FIGS. [0083] 9 to 15) of the logic circuit using this logic circuit optimization device will be described first.
  • Design Example 1 [0084]
  • First, description will be given to a design example 1 for designing a path transistor selector circuit shown in FIG. 10 obtained by optimizing a path transistor selector circuit (logic circuit) shown in FIG. 9. The path transistor selector circuit shown in FIG. 9 has four nodes n[0085] 0 to n3. From these nodes, selected input signals are outputted as output signals o0 to o3 through inverters inv0 to inv3, respectively. At the node n0, path transistors t0 and t1 connected in parallel, the inverter inv0 and a voltage holding PMOS transistor pt0 are arranged.
  • The continuities of these path transistors t[0086] 0 and t1 are controlled by control signals sa0 and sb0, respectively and one of input signals a0 and b0 is selected. Namely, if the level of the control signal sa0 is H. the path transistor t0 becomes continuous and the input signal a0 is selected. If the level of the control signal sb0 is H, the path transistor t1 becomes continuous and the input signal b0 is selected. Here, the control signals sa0 and sb0 has an exclusive relationship therebetween, i.e., if the level of one signal is H, the level of the other is L and the levels of the both signals do not become H simultaneously.
  • At the node n[0087] 1, path transistors t2 and t3 connected in parallel, the inverter inv1 and a voltage holding PMOS transistor pt1 are arranged. The continuities of these path transistors t2 and t3 are controlled by control signals sa1 and sb1, respectively and one of input signals a0 and b1 is selected. Namely, if the level of the control signal sa1 is H, the path transistor t2 becomes continuous and the input signal a0 is selected. If the level of the control signal sb1 is H, the path transistor t3 becomes continuous and the input signal b1 is selected. Here, the control signals sa1 and sb1 has an exclusive relationship therebetween, i.e., if the level of one signal is H, that of the other is L and the levels of the both signals do not become H simultaneously.
  • At the node n[0088] 2, path transistors t4 and t5 connected in parallel, the inverter inv2 and a voltage holding PMOS transistor pt2 are arranged. The continuities of these path transistors t4 and t5 are controlled by control signals sa2 and sb2, respectively, and one of input signals a0 and b2 is selected. Namely, if the level of the control signal sa2 is H, the path transistor t4 becomes continuous and the input signal a0 is selected. If the level of the control signal sb2 is H, the path transistor t5 becomes continuous and the input signal b2 is selected. Here, the control signals sa2 and sb2 have an exclusive relationship therebetween, i.e., if the level of one signal is H, the level of the other is L and the levels of the both signals do not become H simultaneously.
  • At the node n[0089] 3, path transistors t6 and t7 connected in parallel, the inverter inv3 and a voltage holding PMO transistor pt3 are arranged. The continuities of these path transistors t6 and t7 are controlled by control signals sa3 and sb3 and one of input signals a0 and b3 is selected. Namely, if the level of the control signal sa3 is H, the path transistor t6 becomes continuous and the input signal a0 is selected. If the level of the control signal sb3 is H, the path transistor t7 becomes continuous and the input signal b3 is selected. Here, the control signals sa3 and sb3 have an exclusive relationship therebetween, i.e., if the level of one signal is H, that of the other is L and the levels of the both signals do not become H simultaneously.
  • Here, in the path transistor selector circuit shown in FIG. 9, the input signal a[0090] 0 is a common input signal inputted to the path transistors t0, t2, t4 and t6. Due to this, it is necessary to drive the load of the load capacity of the worst value seen from the input terminal of the input signal a0 using one buffer (not shown) . Namely, in the path transistor selector circuit showed in FIG. 9, a buffer having an enough and spare driving force (i.e., a buffer ensuring an excessive driving force) is used, which buffer is not preferable in light of reducing power consumption and a packaging area. Further, in the path transistor selector circuit, the levels of all the control signals sa0, sa1, sa2 and sa3 are often set at H level simultaneously. That is, these control signals sa0, sa1, sa2 and sa3 do not satisfy an exclusive relationship therebetween.
  • In this embodiment, a range (path transistor(s), wiring(s), inverter(s) , voltage holding PMOS transistor(s), node(s)) driven by one buffer in the path transistor selector circuit and having the same potential is defined as a drive segment. For example, if only the path transistor t[0091] 0 shown in FIG. 9 is continuous and one buffer is connected to the input terminal of the input signal a0, then the drive segment corresponds to a range including the elements (the path transistor t0, the inverter inv0, the voltage holding PMOS transistor pt0) on the node n0, the wirings connected to those elements and wirings connected to the respective sources of the path transistors t2, t4 and t6.
  • Furthermore, if both the path transistors t[0092] 0 and t2 are continuous and one buffer is connected to the input terminal of the input signal a0, the drive segment corresponds to a range including elements (the path transistor t0, the inverter inv0, the voltage holding PMOS transistor pt0) on the node 0 and wirings connected to these elements, elements (the path transistor t2, the inverter inv1, the voltage holding PMOS transistor pt1) on the node n1 and wirings connected to these elements, and wirings connected to the respective sources of the path transistors t4 and t6.
  • In this way, in the path transistor selector circuit shown in FIG. 9, the control signals sa[0093] 0, sa1, sa2 and sa3 do not have an exclusive relationship therebetween. Due to this, the drive segment dynamically changes between the drive segment in a case where the level of the control signal sa0 is H and only the path transistor t0 is continuous, and the drive segment in a case where the level of the control signal sa0 is H, that of the control signal sa1 is H and both the path transistors t0 and t2 are continuous.
  • Accordingly, in the path transistor selector circuit shown in FIG. 9, the drive segment dynamically changes according to the patterns of the control signals and the load capacity of the load which should be driven by one buffer, therefore, dynamically changes. To deal with such a dynamic change of the load capacity, a buffer capable of driving the load with the load capacity of the worst value (maximum value) is used in the path transistor selector circuit in FIG. 9. In addition, the load capacity changes since the control signals sa[0094] 0, sa1, sa2 and sa3 do not have an exclusive relationship therebetween.
  • Considering this, the path transistor selector circuit which has been optimized as shown in FIG. 10 is designed so that control signals sa[0095] 0, sa1, sa2 and sa3 have an exclusive relationship therebetween (i.e., only one control signal is at H level and the other control signals are at L level at the same time). Besides, a range including the path transistors t0 and t2, wirings and the like, is defined as one drive segment, whereas a range including the path transistors t4, t6, wirings and the like, is defined as the other drive segment. One drive segment is driven by a buffer B0 and the other drive segment is driven by a buffer B1. Namely, the path transistor selector circuit shown in FIG. 9 has one drive segment, whereas the path transistor shown in FIG. 10 has two drive segments.
  • Further, in the one drive segment, the buffer B[0096] 0 optimum for driving the sum of a load relating to a path transistor (e.g., path transistor t0) selected by the control signal, a load relating to an unselected path transistor (e.g., path transistor t2) and a load relating to wirings, is provided. Here, the sum of the plural loads stated above is a value estimated as a worst value. Accordingly, compared with the buffer (not shown) for the path transistor selector circuit shown in FIG. 9, the buffer B0 does not need to ensure an excessive driving force but it suffices to have a driving force necessary and sufficient (effective driving force).
  • Likewise, in the other drive segment, the buffer B[0097] 1 optimum for driving the sum of a load relating to a path transistor (e.g., path transistor t4) selected by the control signal, a load relating to an unselected path transistor (e.g. path transistor t6) and a load relating to wirings, is provided. Here, the sum of the plural loads stated above is a value estimated as a worst value. Accordingly, compared with the buffer for the path transistor selector circuit(not shown) in FIG. 9, the buffer B1 does not need to ensure an excessive driving force but it suffices to have a driving force necessary and sufficient (effective driving force).
  • As can be understood from the above, in the design example [0098] 1, the buffers B0 and B1 each having an optimum driving force are provided on the logic circuit as shown in FIG. 10, thereby optimizing the logic circuit. It is noted that the optimization method in the design example 1 (FIG. 10) can be conducted irrespectively of the number of selections of the selector, the number of selectors connected in parallel, the number of input signals of the same selector, the type of path transistors (NMOS, PMOS, transmission gate) and wiring length.
  • Next, description will be given to the design example 1 for designing the path transistor selector circuit (see FIG. 10) with reference to the flow chart shown in FIG. 8. In a step SA[0099] 1, a plurality of cells constituting the cell library 700 shown in FIG. 3 are created. In a step SA2, logic and physical characteristic data on the respective cells are collected.
  • In a step SA[0100] 3, it is judged whether or not the to-be-designed logic circuit is a path transistor selector circuit. If this judgment result is “Yes”, in a step SA4, the net list creation path transistor selector cell library 150, the layout creation path transistor selector cell library 250 and the electric characteristic analysis path transistor selector cell library 350 shown in FIG. 3 are created.
  • On the other hand, if the judgment result of the step SA[0101] 3 is “No” in a step SA5, the net list creation CMOS logic circuit cell library 100, the layout creation CMOS logic circuit cell library 200 and the electric characteristic analysis CMOS logic circuit cell library 300 shown in FIG. 3 are created. In a step SA6, the libraries created in either the step SA4 or step SA5 are registered in the cell library 700.
  • In a step SA[0102] 7, the behavior/net list 10 described in HDL and the specification data 11 are created as logic specifications. As a result, the logic specification indication section 1 indicates the logic specifications (the behavior/net list 10 and the specification data 11). The logic specifications indicated here are intended to realize the path transistor selector circuit shown in FIG. 10 and include the exclusive relationship between the control signals, area, delay time, power consumption and the like as already described above.
  • In a step SA[0103] 8, grouped description part data 12 (see FIG. 2) on the groups (drive segments) of the path transistor selector circuit is created based on cell and terminal information. As a result, the drive segment indication section 2 indicates grouping based on the grouped description part data 12. The drive segments here include the path transistors t0 and t1, the path transistors t2 and t3, the path transistors t4 and t5, and the path transistors t6 and t7 shown in FIG. 10.
  • In a step SA[0104] 9, the logic composition processing section 3 designates the fixation and optimization of the circuit and performs a logic composition based on the specification data 11 from the logic specification indication section 1, the behavior/net list 10, the grouped description part data 12 from the drive segment indication section 2, the net list creation path transistor selector cell library 150 and the electric characteristic analysis path transistor selector cell library 350. As a result, the logic composition processing section 3 passes the logic composition result to the delay, waveform and power analysis section 4 and to the automatic layout and wiring processing section 5 as the composed net list 800.
  • In a step SA[0105] 10, the delay, waveform and power analysis section 4 analyzes electric characteristics (delay, waveform and power) relating to the composed net list 800 using the electric characteristic analysis path transistor selector cell library 350. In a step SA11, the delay, waveform and power analysis section 4 judges whether or not the electric characteristic analysis result satisfies the required specifications. If this judgment result is “No”, the electric characteristic specifications are reviewed and optimized so as to satisfy the required specifications in steps SA7, SA8 and SA9.
  • That is, in the step SA[0106] 7, a logic structure employing the path transistor selector is reviewed and the overall logic structure is reviewed. In the step SA8, the grouping of the path transistor selector is reviewed. Also, in the step SA9, optimization other than grouping of the path transistor selector is conducted. As a result, in a step SA10, electric characteristics relating to the composed net list 800 after review and optimization are analyzed.
  • On the other hand, if the judgment result of the step SA[0107] 11 is “Yes”, the automatic layout and wiring processing section 5 creates layout data 820 on the logic circuit conforming to a design rule based on the composed net list 800 and the layout creation path transistor selector cell library 250. In a step SA13, the layout conversion section 6 converts the layout data 820 into the physical characteristic (of wirings and the like) inclusive net list 840 and then passes the list 840 to the delay, waveform and power analysis section 7.
  • Consequently, the delay, waveform and [0108] power analysis section 7 analyzes the electric properties (delay, waveform, power) relating to the physical characteristic (of wirings and the like) inclusive net list 840 using the electric characteristic analysis path transistor selector cell library 350. In a step SA14, the delay, waveform and power analysis section 7 judges whether or not the electric characteristic analysis result satisfies the required specifications. If this judgment result is “No”, the layout and wirings are optimized in a step SA12 and processings after a step SA13 are executed.
  • On the other hand, if the judgment result SA[0109] 14 is “Yes”, i.e., the physical characteristic (of wirings and the like) inclusive net list 840 satisfies the required specifications relating to the electric characteristics, then the layout data conversion section 6 converts the layout data 820 into the mask pattern data 830. Thereafter, based on the mask pattern data 830, the logic circuit shown in FIG. 10 is formed on the semiconductor substrate.
  • Design Example 2 [0110]
  • Next, description will be given to a design example 2 for designing a path transistor selector circuit shown in FIGS. 11B and 11C obtained by optimizing a path transistor selector circuit (logic circuit) shown in FIG. 1A. The path transistor selector circuit (prototype) shown in FIG. 11A has two nodes, i.e., n[0111] 0 (selector SEL0) and n1 (selector SEL1) From the respective nodes, selected input signals are outputted as output signals o0 and o1.
  • At the node n[0112] 0, path transistors t0 to t3 connected in parallel, an inverter inv0 and a voltage holding PMOS transistor pt0 are arranged. The continuities of these path transistors t0 to t3 are controlled by control signals sa0, sb0, sc0 and sd0, respectively and one of input signals a0, b0, c0 and d0 is selected. For example, if the level of the control signal sa0 is H, then the path transistor t0 becomes continuous and the input signal a0 is selected and outputted, as the output signal o0, to a logic circuit 900 in the later stage through the inverter inv0.
  • At the node n[0113] 1, path transistors t4 to t7 connected in parallel, an inverter inv1 and a voltage holding PMOS transistor pt1 are arranged. The input signal a0 is an input signal common to the path transistors t0 and t4. The continuities of these path transistors t4 to t7 are controlled by control signals sa1, sb1, sc1 and sd1, respectively and one of input signals a0, b1, c1 and d1 is selected. For example, if the level of the control signal sa1 is H, then the path transistor t4 becomes continuous and the input signal a0 is selected. The input signal a0 is outputted, as an output signal o1, to the logic circuit 900 in the later stage through the inverter inv1.
  • Here, in the logic circuit shown in FIG. 1A, the levels of the control signals sa[0114] 0 and sa1 often become H simultaneously. In that case, the problem occurs that a load capacity to be driven increases and that optimum buffering cannot be conducted. To avoid this problem, in the design example 2, the behavior/net list 10, the specification data 11 and the grouped description part data 12 shown in FIG. 1 are created so as to intentionally ensure the exclusive relationship between the control signal sa0′ and sa1′ as shown in FIG. 11B.
  • By doing so, the levels of the control signals sa[0115] 0′ and sa1′ do not become H simultaneously and optimum buffering can be realized, thereby reducing a packaging area and improving delay time and power consumption. That is to say, by intentionally recomposing the selected logics so as to obtain control signals which have an exclusive relationship therebetween for the purpose of creating independent drive segments (selectors SEL0 and SEL1) to optimize buffering, the operation characteristics of the path transistor circuit improves.
  • Further, in the design example 2, as shown in FIG. 11C, the behavior/[0116] net list 10, the specification data 11 and the grouped description part data 12 are created so that the input signal sa0 may not be inputted into two drive segments (selectors SEL0 and SEL1). It is noted that the logic circuits shown in FIGS. 11B and 11C are designed according to the flow chart shown in FIG. 8. The optimization method in the design example 2 (FIGS. 11B and 11C) can be realized irrespectively of the number of selections of the selectors, the number of selectors connected in parallel, the number of input signals of a single selector, the type of path transistors (NMOS, PMOS, transmission gate) and wiring length.
  • Design Example 3 [0117]
  • Next, description will be given to a design example 3 for designing a path transistor selector circuit shown in FIG. 12B obtained by optimizing a path transistor selector circuit (logic circuit) shown in FIG. 12A. The path transistor selector circuit (prototype) shown in FIG. 12A consists of four selectors SEL[0118] 0 to SEL4. Each of the selectors SEL0 to SEL4 is a three-input, one-output type selector and consists of a plurality of path transistors (not shown). It is noted that FIG. 12A does not show the control signals of the path transistors. Also, one of the input signals of the selector SEL0 is an input signal common to the other selectors SEL1 to SEL4.
  • In the design example 3, if it is necessary to optimize (improve buffering) of a path PS[0119] 1 relating to the selector SEL1 shown in FIG. 12A and a path PS 2 relating to the selector SEL2 and it is not necessary to optimize the other paths, then the path transistor selector circuit shown in FIG. 12B is designed.
  • Namely, in the design example 3, the selectors SEL[0120] 1 and SEL2 required to be optimized are partially cut as a drive segment and these selectors SEL1 and SEL2 are subjected to the optimization in either the design example 1 or design example 2 described above, thereby selecting a buffer B for realizing optimum buffering. In the design example 3, the behavior/net list 10, the specification data 11 and the grouped description part data 12 (see FIG. 1) for realizing the optimization are created. It is noted that the path transistor selector circuit shown in FIG. 12B is designed according to the flow chart shown in FIG. 8.
  • Design Example 4 [0121]
  • Next, description will be given to a design example 4 for designing a path transistor selector circuit shown in FIG. 13B obtained by optimizing a path transistor selector circuit (logic circuit) shown in FIG. 13A. The path transistor selector circuit (prototype) shown in FIG. 13A is a data alignment circuit for fetching data of [0:63] bits shown in FIG. 14 as effective bits in units of one byte (eight bits) . In FIG. 13A, among [0:63] bits to be outputted, selectors SEL[0122] 0, SEL32, SEL48 and SEL56 corresponding to [0] bit, [32] bit, [48] bit and [56] bit, respectively are shown and selectors corresponding to the remaining bits are not shown.
  • The selector SEL[0123] 0 selects either input bit [0] or ‘0’ data based on a control signal and outputs the selected one as an output bit out[0]. The selector SEL32 selects one of input bits in [0], [32] and ‘0’ data based on a control signal and outputs the selected one as an output bit out [32]. The selector SEL48 selects one of input bits in [0], [16], [48] and ‘0’ data and outputs the selected one as an output bit out[48].
  • Further, the selector SEL[0124] 56 selects one of input bits in [0 ], [8], [24], [56] and ‘0’ data and outputs the selected one as an output bit out [56]. Here, the input bit [0] is an input bit common to the selectors SEL0, SEL32, SEL48 and SEL56.
  • The data alignment circuit shown in FIG. 13A is capable of outputting output data of five patterns in all according to [0125] control patterns 1 to 5 shown in FIG. 14. Namely, in the control pattern 1, ‘0’ is selected by the control circuit in the selectors SEL0, SEL32 and SEL48. In the selector SEL56, the input bit [0] is selected by the control signal and outputted as an output bit [56]. Accordingly, in the control pattern 1, as shown in FIG. 14, output data of [0:55]=‘0’ and [56:63]=one-byte data, are outputted.
  • Further, in the [0126] control pattern 4, with the output bit out [32] as the boundary of a drive segment, output data of [0:31]=four-byte data (byte0 to byte3 of input data), [32:63]=four-byte data (byte0 to byte3 of input data) are outputted. Namely, in the control pattern 4, both the selectors SEL0 and SEL32 select the input bit in [0]. Due to this, the control signals of the both selectors do not have an exclusive relationship therebetween. In that case, it is difficult to realize optimum buffering and the specifications do not satisfy the required specifications with regard to area, delay time, power consumption and the like.
  • Considering this, in the design example 4, as shown in FIG. 13B, with the output bit out [32] as the boundary of a drive segment, a buffer B[0127] 1 corresponding to the selectors SEL0 and SEL32 and a buffer B2 corresponding to the selectors SEL48 and SEL56 are provided and the buffers B1 ad B2 conduct buffering independently of each other, thereby making it possible to conduct optimum buffering.
  • Further, in the design example 4, the behavior/[0128] net list 10, the specification data 11 and the grouped description part data 12 (see FIG. 1) for realizing the optimization are created. It is noted that the path transistor selector circuits shown in FIG. 13B are designed according to the flow chart shown in FIG. 8. The optimization method in the design example 4 (see FIG. 13B) is also applicable to a barrel shifter circuit or the like used for bit operation and realized irrespectively of the number of selections, the number of selectors connected in parallel, the number of input signals of a single selector, the type of path transistors (NMOS, PMOS and transmission gate) and wiring length.
  • Design Example 5 [0129]
  • In the design examples 1 to 4, description has been given about a case of microscopically optimizing the logic circuit while paying attention to the exclusive relationship between the control signals. As shown in FIG. 15, the optimization method is also applicable to a path [0130] transistor selector circuit 1200 and a data path 1300 used for a memory block 1100 such as a RAM macro or a register array.
  • The latter case will be described hereinafter as a design example 5. In the [0131] memory block 1100, data read/write is controlled by the path transistor selector circuit 1200. This path transistor selector circuit 1200 is obtained by making a group of drive segments a macro group. The circuit 1200 selects read/write select pattern data using control signals divided in an exclusive manner and outputs the selected data to the memory block 1100. This path transistor selector circuit 1200 can obtain the same advantages as those in the design examples 1 to 4.
  • Further, the [0132] data path 1300 is provided at the output side of the memory block 1100 and has the same functions as those of the path transistor selector circuit shown in FIG. 13A and FIG. 13B. That is to say, the data path 1300 conducts data alignment and bit operation for shift operation and the like to the read data, according to control signals divided in an exclusive manner. In the design example 4, the behavior/net list 10, the specification data 11 and the grouped description part data 12 (see FIG. 1) for realizing the optimization of the path transistor selector circuit 1200 and the data path 1300, are created. It is noted that the path transistor selector circuit 1200 and the data path 1300 shown in FIG. 15 are designed according to the flow chart shown in FIG. 8.
  • One embodiment according to the present invention has been described in detail so far, with reference to the accompanying drawings. It should be noted that concrete constitution examples of the preset invention are not limited to this embodiment and that any design changes and the like within the range of the scope of the present invention are included in the invention. [0133]
  • For example, as a modified example 1 of one embodiment, an NAND circuit shown in FIG. 16 instead of each of the selectors x[0134] 0 to X3 shown in FIG. 10 may be provided. In the NAND circuit shown in FIG. 16, path transistors t0, t1 and an inverter inv1 are provided at the input side of a node n0 and an inverter inv0 and a voltage holding PMOS transistor pt0 are provided at the output side of the node n0. The continuities of the path transistors t0 and t1 are controlled by a control signal se10. The drains of the respective path transistors t0 and t1 are connected to the common node n0.
  • An input terminal i[0135] 0 at the source side of the path transistor t0 is set to have a potential equal to the potential of the input terminal at the source side of the other path transistor through a wiring (not shown) . In the NAND circuit shown in FIG. 16, the inverter inv1 may be provided at the control signal se10-side of the path transistor t0, the source side of the path transistor t0 may be grounded and the source side of the path transistor t1 maybe set as the input terminal i0.
  • Furthermore, as a modified example 2 of one embodiment stated above, an NOR circuit shown in FIG. 17 instead of each of the selectors x[0136] 0 to X3 shown in FIG. 10 may be provided. In the NOR circuit shown in FIG. 17, path transistors t0, t1 and an inverter inv1 are provided at the input side of a node n0 and an inverter inv0 is provided at the output side of the node n0. The continuities of the path transistors t0 and t1 are controlled by a control signal se10. The drains of the respective path transistors t0 and t1 are connected to the common node n0.
  • An input terminal i[0137] 0 at the source side of the path transistor t0 has a potential equal to the potential of an input terminal at the source side of the other path transistor through a wiring (not shown). In the NOR circuit shown therein, the inverter inv1 may be provided at the transistor t1 side, the source side of the path transistor t0 may have a predetermined potential and the source side of the path transistor t1 may be set as an input terminal i0.
  • Moreover, as a modified example 3 of one embodiment stated above, a circuit shown in FIG. 18 instead of each of the selectors x[0138] 0 to X3 shown in FIG. 10 may be provided. In the circuit shown in FIG. 18, path transistors t0 to tn are provided at the input side of a node n0 and an inverter inv0 and a voltage holding PMOS transistor pt0 are provided at the output side of the node n0.
  • The continuities of these path transistors t[0139] 0 to tn are controlled by control signals se10 to se1n, respectively. An input terminal i0 at the source side of the path transistor t0 is set to have a potential equal to the potential of an input terminal at the source side of the other path transistor through a wiring (not shown). The drains of the respective path transistors t0 to tn are connected to the common node n0. In the circuit shown in FIG. 18, the path transistor t2 or path transistor t3 may be omitted.
  • Furthermore, as a modified example 4 of one embodiment stated above, a multi-stage circuit shown in FIG. 19 instead of each of the selectors x[0140] 0 to X3 shown in FIG. 10 may be provided. In the circuit shown in FIG. 19, path transistors t0 to tn, a path transistor tm, an inverter inv1 and a voltage holding PMOS transistor pt1 are arranged at the input side of a node n0 and an inverter inv0 and a voltage holding PMOS transistor pt0 are arranged at the output side of the node n0.
  • The circuit shown therein is intended to reduce a load capacity seen from the input terminals i[0141] 0 and i1. The continuities of the path transistors t0 to tn and the path transistor tm are controlled by control signals se10 to se1n and selm, respectively. The circuit shown therein may be constituted to dispense with pull-up circuits (the inverter inv1 and the voltage holding PMOS transistor pt1).
  • As a modified example 5 of one embodiment stated above, a circuit shown in FIG. 20 instead of the buffer B[0142] 0 and the circuits x0 and x1 (buffer B1, circuits x2 and X3) shown in FIG. 10 maybe arranged. The circuit shown in FIG. 20 consists of a buffer B0, selectors MUX0 to MUX2. The selector MUX0 consists of path transistors t00, t01, t02 and t03 provided at the input side of a node n0 and an inverter inv0 aid a voltage holding PMOS transistor pt0 provided at the output side of the node n0. The continuities of these path transistors t00, t01, t02 and t03 are controlled by control signals se100, se101, se102 and se103, respectively.
  • The selector MUX[0143] 1 consists of path transistors t10, t11, t12 and t13 provided at the input side of the node n1 and an inverter inv1 and a voltage holding PMOS transistor pt1 provided at the output side of the node n1. The continuities of these path transistors t10, t11, t12 and t13 are controlled by control signals se110, se111, se112 and se113, respectively.
  • The selector MUX[0144] 2 consists of path transistors t20, t21, t22 and t23 provided at the input side of the node n2 and an inverter inv2 and a voltage holding PMOS transistor pt2 provided at the output side of the node n2. The continuities of these path transistors t20, t21, t22 and t23 are controlled by control signals se12O, se121, se122 and se123, respectively.
  • In the circuit shown in FIG. 20, the sources s[0145] 00, s11 and s21 of the respective path transistors t00, t11 and t21 are connected to a common buffer B0 through wirings. Here, the control signals se100, se111 and se121 controlling the continuities of the path transistors t00, t11 and t21, respectively, have an exclusive relationship therebetween. Therefore, if the level of one control signal out of these control signals se100, se111 and se121 is H, the levels of the other control signals are L.
  • Capacitors C[0146] 00, C01 and a resistance R0 correspond to the capacities and resistance of a wiring connecting the buffer B0 to the source s11 of the path transistor t11. Likewise, capacitors C10, C11 and a resistance R1 correspond to the capacities and resistance of a wiring connecting the source s11 of the path transistor t11 to the source s21 of the path transistor t21. In the modified example 5, description has been given while assuming that control signals having an exclusive relationship there between are control signals se100, se111 and se121. The other combination of control signals is also applicable.
  • In the modified example 5 (see FIG. 20), if wirings connecting the buffer B[0147] 0 to the sources s00, s11 and s21 of the respective path transistors t00, t11 and t21 are long, the load capacity seen from the side of the buffer B0 increases. To avoid this, the wirings may be cut off in the middle so as to reduce the load capacity by utilizing the exclusive relationship among the control signals se100, se111 and se121. This constitution will be described hereinafter as a modified example 6.
  • FIG. 21 is an explanatory view for the modified example 6 of one embodiment already stated above. In FIG. 21, parts corresponding to those in FIG. 20 are denoted by the same reference symbols as those in FIG. 20. In FIG. 21, a path transistor ta is interposed in the middle of a wiring (at a buffer B[0148] 0 side) connecting a buffer B0 to the source s11 of a path transistor t11. The continuity of the path transistor ta is controlled by a control signal se100 (inversion) inverted from a control signal se100. Therefore, if the level of the control signal se100 is H and the path transistor t00 is continuous, the level of the control signal se100 (inversion) is L and the path transistor ta is cut off. Thus, the wiring capacity and resistance seen from the side of the buffer B0 are reduced by those of the downstream part of the path transistor ta.
  • An inverter invp and a voltage holding PMOS transistor ptp constitute a pull-up circuit and are connected to one end of a resistance R[0149] 0. This pull-up circuit is intended to improve the electric characteristics relating to wirings when the path transistor ta is continuous.
  • Also, in the circuit shown in FIG. 21, a path transistor tb is interposed in the middle (at a source s[0150] 11 side) of a wiring connecting the source s11 of the path transistor t11 to the source s21 of the path transistor t21. The continuity of the path transistor tb is controlled by a control signal se111 (inversion) inverted from a control signal se111. Therefore, if the level of the control signal se111 is H and the path transistor t00 is continuous, the level of the control signal se111 (inversion) is L and the path transistor tb is cut off. Thus, the wiring capacity and resistance seen from the side of the buffer B0 are reduced by those of the downstream part of the path transistor tb.
  • Furthermore, as a modified example 7 of one embodiment already stated above, a logic circuit optimization program for realizing the above-stated functions may be recorded on a computer [0151] readable recording medium 1500 shown in FIG. 22 and the logic circuit optimization program recorded on this recording medium 1500 may be read and executed by a computer 1400, thereby designing and optimizing the logic circuit.
  • The [0152] computer 1400 shown in FIG. 22 consists of a CPU 1401 executing the logic circuit optimization program, an input device 1402 such as a keyboard and a mouse, an ROM (Read Only Memory) 1403 storing various data, an RAM (Random Access Memory) 1404 storing operation parameters and the like, a reading device 1405 reading the logic circuit optimization program from the recording medium 1500, an output device 1406 such as a display and a printer, and a bus BU connecting the respective constituent elements of the computer 1400.
  • The [0153] CPU 1401 reads the logic circuit optimization program recorded on the recording medium 1500 through the reading device 1405, executes the logic circuit optimization program and thereby designs and optimizes the logic circuit. The recording medium 1500 may be not only a portable type recording medium such as an optical disk, a floppy disk or a hard disk, but also a transmission medium, such as a network, temporarily holding data.
  • In one embodiment stated above, the logic circuit optimization device (CAD) shown in FIG. 1 has been described. The present invention is also applicable to a macro design such as a full-custom macro design or a semi-custom macro design. Accordingly, the path transistor selector circuit itself described in the embodiment is also contained in the present invention. [0154]
  • As explained above, according to one embodiment of the present invention, a plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, a circuit is divided into a plurality of ranges each having an equal potential as drive segments to thereby drive the drive segments independently using the buffers B[0155] 0 and B1 (see FIG. 10), respectively. Thus, it is possible to easily optimize buffering and to obtain a logic circuit excellent in electric characteristics compared with a conventional circuit.
  • Furthermore, a plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, a circuit is divided into a plurality of ranges each having an equal potential as drive segments to thereby drive the drive segments independently using buffers, respectively. Thus, the present invention can advantageously, easily optimize buffering and obtain a logic circuit excellent in electric characteristics, compared with a conventional circuit. [0156]
  • Furthermore, the logic specification indication unit indicates logic specifications so that a plurality of control signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, and logic composition and the optimization of buffering are conducted based on the logic specifications and cell data. Thus, the present invention can advantageously optimize the buffering of a logic circuit employing path transistors and obtain a logic circuit excellent in electric characteristics. [0157]
  • Furthermore, in a logic specification indication step, logic specifications are indicated so that a plurality of signals have an exclusive relationship therebetween, i.e., the control signals do not become active simultaneously, and logic composition and the optimization of buffering are conducted based on the logic specification and cell data. Thus, the present invention can advantageously optimize the buffering of a logic circuit employing path transistors and obtain a logic circuit excellent in electric characteristics. [0158]
  • Although the invention has been described with respect to a specific embodiment for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art which fairly fall within the basic teaching herein set forth. [0159]

Claims (14)

What is claimed is:
1. A path transistor circuit comprising:
a plurality of path transistors connected in parallel and each one having input terminals, same input signal is being inputted into said input terminals of said path transistors, and continuities of the plurality of said path transistors is being controlled by a plurality of control signals having an exclusive relationship therebetween; and
a plurality of buffers which drive drive segments including at least said path transistors and wirings, the drive segments being a plurality of divided ranges each having an equal potential.
2. The path transistor circuit according to claim 1, wherein each of said buffer has a driving force capable of driving a necessary, sufficient load capacity with a reference to the worst value of the load capacity of said drive segments.
3. The path transistor circuit according to claim 1, wherein said buffers are provided corresponding to a part of said drive segments.
4. The path transistor circuit according to claim 1, wherein said path transistor circuit being used as a bit shift circuit applying the select logic of the path transistors and operating output bits relative to input bits.
5. A path transistor circuit design method comprising:
a first step of designing a plurality of path transistors connected in parallel and having input terminals, respectively, into which input terminals a same input signal is inputted, continuities of the plurality of path transistors controlled by a plurality of control signals having an exclusive relationship therebetween; and
a second step of designing a plurality of buffers respectively driving drive segments including at least the plurality of path transistors and wirings, the drive segments being a plurality of divided ranges each having an equal potential.
6. A logic circuit optimization device for optimizing design of a logic circuit consisting of a plurality of path transistors connected in parallel and having input terminals, respectively, into which input terminals a same input signal is inputted, said logic circuit optimization device comprising:
a logic specification indication unit which indicates logic specifications so that a plurality of control signals controlling continuities of the plurality of path transistors, respectively, have an exclusive relationship therebetween;
a cell library unit which registers a plurality of cell data used to design said logic circuit; and
an optimization unit which conducts a logic composition based on the logic specifications and the cell data, and for optimizing buffering in said logic circuit.
7. The logic circuit optimization device according to claim 6 further comprising a grouping unit which groups said path transistors into a plurality of groups based on the exclusive relationship,
wherein said optimization unit conducts logic composition based on said grouped drive segments, the logic specifications and the cell data, and optimizes buffering in said logic circuit.
8. The logic circuit optimization device according to claim 7 wherein said optimization unit optimizes buffering with respect to a part of said drive segments.
9. The logic circuit optimization device according to claim 6, wherein said logic circuit is a bit shift circuit applying the select logic of the path transistors and operating output bits relative to input bits.
10. The logic circuit optimization device according to claim 6, wherein a plurality of the logic circuits are provided to constitute a macro circuit.
11. The logic circuit optimization device according to claim 6, wherein a first cell data applying the maximum value of the load capacity of said logic circuit and a second cell data applying the minimum value of the load capacity are registered, as cell data for analyzing the electric characteristics of the logic circuit, in said cell library unit.
12. The logic circuit optimization device according to claim 11, wherein the first and second cell data are created according to the actual operation of said logic circuit.
13. A logic circuit optimization method for optimizing design of a logic circuit consisting of a plurality of path transistors connected in parallel and having input terminals, respectively, into which input terminals a same input signal is inputted, the method characterized by comprising:
a logic specification indication step of indicating logic specifications so that a plurality of control signals respectively controlling continuities of the plurality of path transistors have an exclusive relationship therebetween;
a registration step of registering a plurality of cell data used to design said logic circuit in a cell library; and
an optimization step of conducting logic composition based on the logic specifications and the cell data and optimizing buffering in said logic circuit.
14. A computer-readable recording medium recording a logic circuit optimization program applied to a logic circuit optimization device for optimizing design of a logic circuit consisting of a plurality of path transistors connected in parallel and having input terminals, respectively, into which input terminals a same input signal is inputted, the computer-readable recording medium characterized by recording the logic circuit optimization program to allow a computer to execute:
a logic specification indication step of indicating logic specifications so that a plurality of control signals respectively controlling continuities of the plurality of path transistors have an exclusive relationship therebetween;
a registration step of registering a plurality of cell data used to design said logic circuit in a cell library; and
an optimization step of conducting logic composition based on the logic specifications and the cell data and optimizing buffering in said logic circuit.
US10/036,429 2000-06-15 2002-01-07 Path transistor circuit and method for designing the same, a device and method for optimizing logic circuits, and a computer product Abandoned US20020057110A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/036,429 US20020057110A1 (en) 2000-06-15 2002-01-07 Path transistor circuit and method for designing the same, a device and method for optimizing logic circuits, and a computer product

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2000180393A JP2001358578A (en) 2000-06-15 2000-06-15 Pass transistor circuit, its designing method, logical circuit optimization unit, logical circuit optimization method and computer readable medium recording logical circuit optimization program
JP2000-180393 2000-06-15
US09/726,607 US6720797B2 (en) 2000-06-15 2000-12-01 Pass transistor circuit with exclusive controls
US10/036,429 US20020057110A1 (en) 2000-06-15 2002-01-07 Path transistor circuit and method for designing the same, a device and method for optimizing logic circuits, and a computer product

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/726,607 Division US6720797B2 (en) 2000-06-15 2000-12-01 Pass transistor circuit with exclusive controls

Publications (1)

Publication Number Publication Date
US20020057110A1 true US20020057110A1 (en) 2002-05-16

Family

ID=18681503

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/726,607 Expired - Fee Related US6720797B2 (en) 2000-06-15 2000-12-01 Pass transistor circuit with exclusive controls
US10/036,429 Abandoned US20020057110A1 (en) 2000-06-15 2002-01-07 Path transistor circuit and method for designing the same, a device and method for optimizing logic circuits, and a computer product

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/726,607 Expired - Fee Related US6720797B2 (en) 2000-06-15 2000-12-01 Pass transistor circuit with exclusive controls

Country Status (2)

Country Link
US (2) US6720797B2 (en)
JP (1) JP2001358578A (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10310526B4 (en) 2003-03-11 2005-10-13 Adidas International Marketing B.V. football boot
US7463061B1 (en) * 2005-07-19 2008-12-09 Actel Corporation Apparatus and method for reducing leakage of unused buffers in an integrated circuit
US20100299966A1 (en) * 2009-06-01 2010-12-02 Tanev Michael Weight for attachment to a piece of footwear
US11055463B1 (en) * 2020-04-01 2021-07-06 Taiwan Semiconductor Manufacturing Company, Ltd. Systems and methods for gate array with partial common inputs

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5020013A (en) * 1989-09-29 1991-05-28 Cyrix Corporation Bidirectional variable bit shifter
US5712792A (en) * 1995-04-21 1998-01-27 Hitachi, Ltd. Logic circuit sythesizing method utilizing binary decision diagram explored based upon hierarchy of correlation between input variables
US6232799B1 (en) * 1999-10-04 2001-05-15 International Business Machines Corporation Method and apparatus for selectively controlling weak feedback in regenerative pass gate logic circuits
US6260185B1 (en) * 1995-04-21 2001-07-10 Hitachi, Ltd. Method for designing semiconductor integrated circuit and automatic designing device
US6301692B1 (en) * 1995-10-17 2001-10-09 Matsushita Electric Industrial Co., Ltd. Method for designing layout of semiconductor integrated circuit, semiconductor integrated circuit obtained by the same method, and method for verifying timing thereof
US6433588B1 (en) * 1996-04-16 2002-08-13 Hitachi, Ltd. Logic circuit including combined pass transistor and CMOS circuits and a method of synthesizing the logic circuit
US6769110B2 (en) * 1997-12-26 2004-07-27 Renesas Technology Corp. Semiconductor integrated circuit device, storage medium on which cell library is stored and designing method for semiconductor integrated circuit
US6845349B1 (en) * 1995-04-21 2005-01-18 Renesas Technology Corp. Method for designing semiconductor integrated circuit and automatic designing device

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0823809B2 (en) 1990-01-22 1996-03-06 株式会社東芝 Barrel shifter
JP3216726B2 (en) 1992-01-30 2001-10-09 大成建設株式会社 Gas removal equipment from waste landfill ground
JPH096821A (en) 1995-04-21 1997-01-10 Hitachi Ltd Composing method for logic circuit, manufacture of semiconductor device, an optimizing method for bisect determination graph
JP3708168B2 (en) * 1995-06-13 2005-10-19 富士通株式会社 Delay device
JPH09321146A (en) 1996-05-31 1997-12-12 Matsushita Electric Ind Co Ltd Designing of semiconductor integrated circuit and semiconductor integrated circuit provided by the designing
JP3625973B2 (en) 1997-01-07 2005-03-02 株式会社ルネサステクノロジ Logic circuit, logic circuit synthesis method, semiconductor device manufacturing method, and semiconductor integrated circuit device
US6288568B1 (en) * 1996-11-22 2001-09-11 Xilinx, Inc. FPGA architecture with deep look-up table RAMs
JPH11184899A (en) 1997-12-18 1999-07-09 Toshiba Corp Optimization device and method for path transistor logic circuit and computer readable record medium recording optimization program of the logic circuit

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5020013A (en) * 1989-09-29 1991-05-28 Cyrix Corporation Bidirectional variable bit shifter
US5712792A (en) * 1995-04-21 1998-01-27 Hitachi, Ltd. Logic circuit sythesizing method utilizing binary decision diagram explored based upon hierarchy of correlation between input variables
US6260185B1 (en) * 1995-04-21 2001-07-10 Hitachi, Ltd. Method for designing semiconductor integrated circuit and automatic designing device
US6845349B1 (en) * 1995-04-21 2005-01-18 Renesas Technology Corp. Method for designing semiconductor integrated circuit and automatic designing device
US6301692B1 (en) * 1995-10-17 2001-10-09 Matsushita Electric Industrial Co., Ltd. Method for designing layout of semiconductor integrated circuit, semiconductor integrated circuit obtained by the same method, and method for verifying timing thereof
US6433588B1 (en) * 1996-04-16 2002-08-13 Hitachi, Ltd. Logic circuit including combined pass transistor and CMOS circuits and a method of synthesizing the logic circuit
US6820242B2 (en) * 1996-04-16 2004-11-16 Renesas Technology Corp. Logic circuit including combined pass transistor and CMOS circuits and a method of synthesizing the logic circuit
US6769110B2 (en) * 1997-12-26 2004-07-27 Renesas Technology Corp. Semiconductor integrated circuit device, storage medium on which cell library is stored and designing method for semiconductor integrated circuit
US6232799B1 (en) * 1999-10-04 2001-05-15 International Business Machines Corporation Method and apparatus for selectively controlling weak feedback in regenerative pass gate logic circuits

Also Published As

Publication number Publication date
US6720797B2 (en) 2004-04-13
US20020000835A1 (en) 2002-01-03
JP2001358578A (en) 2001-12-26

Similar Documents

Publication Publication Date Title
US6272667B1 (en) Method and apparatus for clock gated logic circuits to reduce electric power consumption
US7207022B2 (en) Layout design method for semiconductor integrated circuits
US20110307852A1 (en) Systematic benchmarking system and method for standardized data creation, analysis and comparison of semiconductor technology node characteristics
US8782591B1 (en) Physically aware logic synthesis of integrated circuit designs
US8627252B2 (en) Method for selectively implementing low threshold voltage transistors in digital logic designs
JP5397083B2 (en) Circuit design support method, circuit design support apparatus, and circuit design support program
JP2002083001A (en) Designing method for logic circuit and cell library used for the same
US10943047B2 (en) Circuit design method and associated computer program product
US8181139B1 (en) Multi-priority placement for configuring programmable logic devices
KR19990007884A (en) Design method and automatic design device of semiconductor integrated circuit
US9178513B1 (en) Memory blocks with shared address bus circuitry
WO2011094031A2 (en) Zone-based leakage power optimization
US5712792A (en) Logic circuit sythesizing method utilizing binary decision diagram explored based upon hierarchy of correlation between input variables
US6820242B2 (en) Logic circuit including combined pass transistor and CMOS circuits and a method of synthesizing the logic circuit
US6720797B2 (en) Pass transistor circuit with exclusive controls
US7013443B2 (en) Delay diagnosis method for semiconductor integrated circuit, computer program product for diagnosing delay of semiconductor integrated circuit and computer readable recording medium recording program thereon
US6993737B1 (en) Leakage power optimization for integrated circuits
US7331027B2 (en) Method for swapping circuits in a metal-only engineering change
Rajagopal et al. A novel high-performance hybrid full adder for VLSI circuits
KR19980079812A (en) How to optimize the circuit structure included in the circuit layout
US7320117B2 (en) Design method for semiconductor integrated circuit device using path isolation
US6476635B1 (en) Programmable number of metal lines and effective metal width along critical paths in a programmable logic device
US6109201A (en) Resynthesis method for significant delay reduction
JP3004589B2 (en) Pass transistor logic design method
US11256838B2 (en) Establishing method for timing model

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION