US5926398A - Semiconductor device layout method capable of arranging functional cells with data signal lines and control signal lines having a proper length and configuration - Google Patents

Semiconductor device layout method capable of arranging functional cells with data signal lines and control signal lines having a proper length and configuration Download PDF

Info

Publication number
US5926398A
US5926398A US08/813,937 US81393797A US5926398A US 5926398 A US5926398 A US 5926398A US 81393797 A US81393797 A US 81393797A US 5926398 A US5926398 A US 5926398A
Authority
US
United States
Prior art keywords
functional cells
common
data
signals
semiconductor device
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.)
Expired - Fee Related
Application number
US08/813,937
Inventor
Takeshi Nakamura
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.)
NEC Electronics Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Assigned to NEC CORPORATION reassignment NEC CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: NAKAMURA, TAKESHI
Application granted granted Critical
Publication of US5926398A publication Critical patent/US5926398A/en
Assigned to NEC ELECTRONICS CORPORATION reassignment NEC ELECTRONICS CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: NEC CORPORATION
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier the substrate being a semiconductor body
    • H01L27/10Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having at least one potential-jump barrier or surface barrier; including integrated passive circuit elements with at least one potential-jump barrier or surface barrier the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement

Definitions

  • the present invention relates to a semiconductor device layout method and, in particular, to a layout method for arranging a given number of cells with regularity.
  • Each of the cells includes one or more transistors and one or more passive elements which are wired and connected in a given manner so as to perform a logical operation, and is generally called a functional cell.
  • a cell rank length limiting value is used for limiting a cell rank length, that is, the sum of widths of the functional cells included in one rank.
  • the functional cells are grouped so as to be disposed within the cell rank length limiting value.
  • the arranging order of the functional cells in the cell rank is determined considering a connecting relationship of the functional cells. Specifically, positional changes of the functional cells are performed as needed to minimize the number of wires between the functional cells.
  • each of the functional cells corresponding to each of the ranks is assigned parameters in the form of a group name representing the same group and relative position coordinates representing a relative position of the cell in the group.
  • grouping of the functional cells is performed based on the group names, and then the functional cells are disposed per group depending on the relative position coordinates.
  • a cell arranging table having relative positions of the functional cells is prepared. Then, with reference to the cell arranging table, the functional cells are arranged using instance names assigned thereto and defined by names representing relative positions of the cells to the groups.
  • the functional cells are arranged in a direction of propagation of the data signals, and the control signals and the data signals are delivered through the first layer metal wiring and the second layer metal wiring, respectively, so as to achieve the high-density layout.
  • the fourth layout method it is possible that the first layer metal wiring and the second layer metal wiring are not arranged linearly so that the size of the wiring region is increased.
  • a semiconductor device layout method to which the present invention is applicable is for arranging a given number of functional cells with regularity.
  • the method comprises the steps of reading out a net list including circuit connection data necessary for arranging the functional cells, grouping the functional cells into groups based on the net list and either of common data signals and common control signals, determining an arranging order of the common data signals and the common control signals, rearranging the functional cells per group based on either of the common data signals and the common control signals, outputting a relative position list including relative positions of the rearranged functional cells, and the functional cells based on read-out size data of the functional cells and the relative position list.
  • FIG. 1 is a diagram for explaining a general data path layout
  • FIG. 2 is a diagram for explaining the flows of signals in the layout shown in FIG. 1;
  • FIG. 3 is a flowchart for explaining a conventional first layout method
  • FIG. 4 is a diagram for explaining a cell rank length limiting value used in the conventional first layout method
  • FIG. 5 is a diagram for explaining a conventional second layout method
  • FIG. 6 is a diagram for explaining a conventional third layout method
  • FIG. 7 is a diagram for explaining a conventional fourth layout method
  • FIG. 8 is a diagram for explaining a problem caused by the conventional fourth layout method
  • FIG. 9 is a flowchart for explaining a semiconductor device layout method according to a first preferred embodiment of the present invention.
  • FIG. 10 is a diagram for explaining grouping of functional cells in the semiconductor device layout method according to the first preferred embodiment
  • FIG. 11 is a diagram for explaining a data path layout achieved by the semiconductor device layout method according to the first preferred embodiment
  • FIGS. 12A and 12B are diagrams for explaining a case where a logic synthesis is performed in the semiconductor device layout method as described with reference to FIG. 9;
  • FIG. 13 is a diagram for explaining a particular process in a semiconductor device layout method according to a second preferred embodiment of the present invention.
  • FIG. 14 is a flowchart for explaining a grouping process in the semiconductor device layout method according to the second preferred embodiment.
  • a plurality of functional cells 9, each processing one-bit data are connected to data signal lines 7 including a clock signal line 13 and control signal lines 8.
  • the functional cells 9 are arranged with regularity corresponding to the number of bits to be processed.
  • the flows of the signals are shown in FIG. 2, wherein the data signals 7 flow laterally while the control signals 8 flow vertically. As appreciated, the flow directions of the data signals and the control signals may be reversed.
  • a cell rank length limiting value for limiting a cell rank length (sum of widths of functional cells included in one rank) is produced.
  • the functional cells are grouped so as to be arranged within the cell rank length limiting value.
  • the arranging order of the functional cells in the cell rank is determined considering a connecting relationship of the functional cells. Specifically, a cell rank correction is performed, wherein positional changes of the functional cells are performed as needed to minimize the number of wires between the functional cells.
  • Each of the functional cells A 0! to A 6! belonging to the same group is assigned, in advance, two parameters in the form of a group name G1 to used for grouping and relative position coordinates (X, Y) representing a relative position of the cell in the group.
  • the group here, corresponds to one cell rank including a plurality of functional cells.
  • grouping of the functional cells is performed based on the assigned group names, and then the functional cells A 0! to A 6! are disposed per group depending on the arranging order determined by the relative position coordinates (X, Y).
  • a cell arranging table assigning relative positions (X, Y) to each of the functional cells is prepared in advance, and the arrangement of the functional cells is performed according thereto.
  • the functional cells are arranged using instance names assigned thereto and defined by names representing relative positions of the cells to the groups.
  • the functional cells are arranged in a direction of propagation of the data signals, and the control signals and the data signals are delivered through the first layer metal wiring and the second layer metal wiring, respectively, so as to achieve the high-density layout. More specifically, a plurality of functional cells 9 are arranged in an X direction to form a functional cell block 21, and a plurality of functional cell blocks 21 are arranged in a Y direction, that is, a direction of propagation of the data signals. Between the adjacent functional cell blocks 21 are disposed a plurality of control signal lines 8 which extend in the X direction and made of first layer metal. Further, a plurality of data signal lines 7 for data delivery and reception between the functional cells 9 are made of second layer metal and extend in the Y direction passing through the corresponding functional cells 9.
  • FIG. 8 shows a layout result according to the fourth layout method. The figure shows that, if the data signals do not flow through the functional cells of the same order between the functional cell blocks 21, bending is caused in the data signal lines 7 so as to lower the wiring efficiency.
  • a net list memory 1 stores a net list in the form of circuit connection data necessary for arranging the functional cells 9.
  • the net list includes, for example, wiring data, such as circuit module names, module terminal names and types, cell names and types, connection wiring names and terminal arrangement.
  • a relative position list memory 2 stores relative positions of the rearranged functional cells as a relative position list, as will be described later.
  • a cell library memory 3 stores size data of the functional cells.
  • a signal list memory 4 stores a list of data signal names and control signal names.
  • the net list is read out from the net list memory 1. Then, the data signal name and the control signal name are stored per functional cell, and a list of the data signal names and the control signal names is produced. It may be arranged that the data signal names and the control signal names are given from the signal list memory 4.
  • step S12 common data signals or common control signals are set to be wiring signals, and a given number of functional cells arranged based on the wiring signals and referring to the net list. Specifically, as shown in FIG. 10, for example, the functional cells 9 connected to one of the data signal lines 7 for the common data signal are put together into one of groups 6.
  • step S13 the arranging order of the data signals and the control signals is determined. If the signal list is given, the order in the signal list is set to be the signal arranging order. On the other hand, if the signal list is not given, the order in the list of the data signal names and the control signal names is set to be the signal arranging order.
  • the functional cells are rearranged per group based on the common data signals or the common control signals, that is, wiring signals. Specifically, the arranging order of the functional cell in each group is determined, for example, based on a connecting relationship of a control signal and an arranging order of the control signal.
  • a relative position list of the rearranged functional cells is outputted.
  • the relative position of each functional cell is determined based on the corresponding data and control signal names and the arranging order of the data and control signals determined at step S13, wherein the rank order is determined as the data signal order while the column order is determined as the control signal order.
  • the relative position list is determined by the connection order between the common data signals and the common control signals.
  • the relative position list is stored in the relative position list memory 2.
  • step S16 the arrangement or placement of the functional cells is performed based on the size data of the cells read out from the cell library memory 3 and the relative position list read out from the relative position list memory 2.
  • the data path layout is determined. Specifically, based on the size data of the cells read out from the cell library memory 3 and the relative position list read out from the relative position list memory 2, the relative arrangement or placement including the size data of the functional cells is achieved.
  • the functional cells 9 connected to the same data signal lines 7 are arranged in the same ranks, while the functional cells 9 connected to the same control signal lines 8 are arranged in the same columns.
  • the data signal lines 7 and the control signal lines 8 are wired linearly. Accordingly, the high-speed data transmission can be achieved with the semiconductor device having the foregoing layout.
  • the functional cells 9, each processing one-bit data are arranged with regularity corresponding to the number of bits to be processed as shown in FIG. 1. Further, as shown in FIG. 2, the data signals (data signal lines 7) flow laterally while the control signals (control signal lines 8) flow vertically. As described before, the flow directions of the data signals and the control signals may be reversed.
  • FIGS. 12A and 12B As known in the art, when a particular condition, such as a timing constraint, is applied to a logic circuit so as to perform a logic synthesis, it is possible that a state, for example, as shown in FIGS. 12A and 12B, is caused.
  • a plurality of functional cells 9 connected to the data signal line 7 form a group having a group name "G12".
  • FIG. 12B owing to provision of buffers 10 each having an input terminal 22 and an output terminal 23, the data signal line 7 is divided into two data signal lines 71 and 72, and a plurality of functional cells 9 connected to the data signal lines 71 and 72 form two groups having group names "G11a" and "G11b", respectively.
  • FIG. 12A a plurality of functional cells 9 connected to the data signal line 7 form a group having a group name "G12".
  • FIG. 12B owing to provision of buffers 10 each having an input terminal 22 and an output terminal 23, the data signal line 7 is divided into two data signal lines 71
  • step S12 in FIG. 9 Upon execution of step S12 in FIG. 9, it is recognized whether a particular data signal common to the groups defined at step S12 in FIG. 9 is connected to a passing wiring node. If positive, that is, the particular common signal is connected to the passing wiring node, a group name of the corresponding group determined upon grouping of the functional cells is replaced with a data signal name of the passing wiring node. Then, those groups having group names, which are the same as the data signal name of the passing wiring node, are reformed into one group.
  • step S21 determines whether any of the data signal lines of the groups defined at step S12 in FIG. 9 is connected to the output terminal 23 of the buffer 10, that is, whether the data signal line per group is connected to the output of the buffer 10. If connected, the process proceeds to step S22 where the buffer 10 is not handled as one functional cell, but as one passing wiring node, and the group name "G25" is replaced with the group name "G12" as an input signal name of the buffer 10. Then, at step S23, the replaced data signal (group name "G25”) is removed from the list produced at step S11 in FIG. 9.
  • step S24 it is determined whether the new group name "G12" exists in the list. If negative, the process proceeds to step S25 where the new group name "G12" is added to the list. On the other hand, if positive at step S24, the process proceeds to step S26 where those groups having the group name "G12" are unified. From step S21, S25 or S26, the process proceeds to step S27 where group reformation is performed.
  • step S28 it is determined whether there is any group connected to the buffer 10. If negative, grouping is finished. On the other hand, if positive at step S28, the process returns to step S21 to repeat execution of the foregoing steps until all the groups are connected to the functional cells other than the buffer 10.
  • the signal lines can be wired linearly with the same length, a standard deviation of a delay distribution per bit processing can be suppressed by 1/3 to 1/2 as compared with the prior art so that the speed-up of data transmission in the semiconductor device is highly achieved.
  • the functional cells sharing the same data or control signal are put together into one group, the functional cells to be arranged in the same rank or column can be easily determined so that various kinds of semiconductor devices can be easily produced.
  • the buffer cell is used as a functional cell for dividing the common data signal.
  • a functional cell may be used that provides the ratio of 1:1 with respect to the input and output signals thereof.
  • the data signals are used for grouping, the control signal may be used therefor.

Abstract

A semiconductor device layout method arranges a given number of functional cells with regularity. In the layout method, a net list including circuit connection data necessary for the arrangement of the cells is read out, and then, the functional cells are divided into groups based on the net list and common data or control signals. Subsequently, an arranging order of the common data signals and the common control signals is determined, and then, the functional cells are rearranged per group based on the common data or control signals. Thereafter, a relative position list including relative positions of the rearranged functional cells is produced. Then, the functional cells are arranged based on read-out size data of the functional cells and the relative position list.

Description

BACKGROUND OF THE INVENTION
The present invention relates to a semiconductor device layout method and, in particular, to a layout method for arranging a given number of cells with regularity. Each of the cells includes one or more transistors and one or more passive elements which are wired and connected in a given manner so as to perform a logical operation, and is generally called a functional cell.
In the general data path layout, a plurality of functional cells are arranged with regularity and connected to the wiring in the form of data signal lines and control signal lines. For determining an arrangement of these functional cells, there have been available the following first to fourth layout methods, which will also be described later in further detail with reference to the drawings:
In the first layout method, a cell rank length limiting value is used for limiting a cell rank length, that is, the sum of widths of the functional cells included in one rank. The functional cells are grouped so as to be disposed within the cell rank length limiting value. In each of the groups, the arranging order of the functional cells in the cell rank is determined considering a connecting relationship of the functional cells. Specifically, positional changes of the functional cells are performed as needed to minimize the number of wires between the functional cells.
However, in the foregoing first layout method, when the cell rank limiting value is exceeded upon grouping, it is possible that a functional cell which should be arranged in the present cell rank is arranged in another cell rank. This is caused by the fact that the functional cells are arranged only based on the cell length, that is, without considering a circuit structure. Further, due to the arranging order of the functional cells in one rank, more wiring may be needed, thereby increasing a size of a wiring region.
In the second layout method, each of the functional cells corresponding to each of the ranks is assigned parameters in the form of a group name representing the same group and relative position coordinates representing a relative position of the cell in the group. First, grouping of the functional cells is performed based on the group names, and then the functional cells are disposed per group depending on the relative position coordinates.
In the third layout method, a cell arranging table having relative positions of the functional cells is prepared. Then, with reference to the cell arranging table, the functional cells are arranged using instance names assigned thereto and defined by names representing relative positions of the cells to the groups.
However, in either of the second and third layout methods, since the arrangement of the functional cells is manually given in advance, much labor is required. Further, when arranging the functional cells using the instance names thereof, the arranging operation cannot but rely on the form of the instance names.
In the fourth layout method, as described in Japanese First (unexamined) Patent Publication No. 5-152439, the functional cells are arranged in a direction of propagation of the data signals, and the control signals and the data signals are delivered through the first layer metal wiring and the second layer metal wiring, respectively, so as to achieve the high-density layout.
However, in the fourth layout method, it is possible that the first layer metal wiring and the second layer metal wiring are not arranged linearly so that the size of the wiring region is increased.
SUMMARY OF THE INVENTION
Therefore, it is an object of the present invention to provide an improved semiconductor device layout method which is capable of arranging functional cells with data signal lines and control signal lines having a proper length and configuration.
A semiconductor device layout method to which the present invention is applicable is for arranging a given number of functional cells with regularity. The method comprises the steps of reading out a net list including circuit connection data necessary for arranging the functional cells, grouping the functional cells into groups based on the net list and either of common data signals and common control signals, determining an arranging order of the common data signals and the common control signals, rearranging the functional cells per group based on either of the common data signals and the common control signals, outputting a relative position list including relative positions of the rearranged functional cells, and the functional cells based on read-out size data of the functional cells and the relative position list.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will be understood more fully from the detailed description given hereinbelow, taken in conjunction with the accompanying drawings.
In the drawings:
FIG. 1 is a diagram for explaining a general data path layout;
FIG. 2 is a diagram for explaining the flows of signals in the layout shown in FIG. 1;
FIG. 3 is a flowchart for explaining a conventional first layout method;
FIG. 4 is a diagram for explaining a cell rank length limiting value used in the conventional first layout method;
FIG. 5 is a diagram for explaining a conventional second layout method;
FIG. 6 is a diagram for explaining a conventional third layout method;
FIG. 7 is a diagram for explaining a conventional fourth layout method;
FIG. 8 is a diagram for explaining a problem caused by the conventional fourth layout method;
FIG. 9 is a flowchart for explaining a semiconductor device layout method according to a first preferred embodiment of the present invention;
FIG. 10 is a diagram for explaining grouping of functional cells in the semiconductor device layout method according to the first preferred embodiment;
FIG. 11 is a diagram for explaining a data path layout achieved by the semiconductor device layout method according to the first preferred embodiment;
FIGS. 12A and 12B are diagrams for explaining a case where a logic synthesis is performed in the semiconductor device layout method as described with reference to FIG. 9;
FIG. 13 is a diagram for explaining a particular process in a semiconductor device layout method according to a second preferred embodiment of the present invention; and
FIG. 14 is a flowchart for explaining a grouping process in the semiconductor device layout method according to the second preferred embodiment.
DESCRIPTION OF THE PREFERRED EMBODIMENT
For facilitating understanding of later-described preferred embodiments of the present invention, the conventional semiconductor device layout methods will be first explained hereinbelow.
As shown in FIG. 1, in the general data path layout for delivery and reception of data signals, a plurality of functional cells 9, each processing one-bit data, are connected to data signal lines 7 including a clock signal line 13 and control signal lines 8. The functional cells 9 are arranged with regularity corresponding to the number of bits to be processed. The flows of the signals are shown in FIG. 2, wherein the data signals 7 flow laterally while the control signals 8 flow vertically. As appreciated, the flow directions of the data signals and the control signals may be reversed.
As described before, there have been available the following first to fourth layout methods for arranging the functional cells:
With reference to FIGS. 3 and 4, the first conventional layout method will be explained. Functional cells A, B, C and D in a cell library 3 are further distinguished using indices assigned thereto as seen from FIG. 4. At step S11, a cell rank length limiting value for limiting a cell rank length (sum of widths of functional cells included in one rank) is produced. Then, at step S12, the functional cells are grouped so as to be arranged within the cell rank length limiting value. Subsequently, at step S13, in each of the groups, the arranging order of the functional cells in the cell rank is determined considering a connecting relationship of the functional cells. Specifically, a cell rank correction is performed, wherein positional changes of the functional cells are performed as needed to minimize the number of wires between the functional cells.
Now, referring to FIG. 5, the second conventional layout method will be explained. Each of the functional cells A 0! to A 6! belonging to the same group is assigned, in advance, two parameters in the form of a group name G1 to used for grouping and relative position coordinates (X, Y) representing a relative position of the cell in the group. The group, here, corresponds to one cell rank including a plurality of functional cells.
First, grouping of the functional cells is performed based on the assigned group names, and then the functional cells A 0! to A 6! are disposed per group depending on the arranging order determined by the relative position coordinates (X, Y).
Now, referring to FIG. 6, the third conventional layout method will be explained. A cell arranging table assigning relative positions (X, Y) to each of the functional cells is prepared in advance, and the arrangement of the functional cells is performed according thereto. In this case, with reference to the cell arranging table, the functional cells are arranged using instance names assigned thereto and defined by names representing relative positions of the cells to the groups.
Now, referring to FIG. 7, the fourth conventional layout method will be explained. In this layout method, which is also described in Japanese First Unexamined Patent Publication No. 5-152439, the functional cells are arranged in a direction of propagation of the data signals, and the control signals and the data signals are delivered through the first layer metal wiring and the second layer metal wiring, respectively, so as to achieve the high-density layout. More specifically, a plurality of functional cells 9 are arranged in an X direction to form a functional cell block 21, and a plurality of functional cell blocks 21 are arranged in a Y direction, that is, a direction of propagation of the data signals. Between the adjacent functional cell blocks 21 are disposed a plurality of control signal lines 8 which extend in the X direction and made of first layer metal. Further, a plurality of data signal lines 7 for data delivery and reception between the functional cells 9 are made of second layer metal and extend in the Y direction passing through the corresponding functional cells 9.
FIG. 8 shows a layout result according to the fourth layout method. The figure shows that, if the data signals do not flow through the functional cells of the same order between the functional cell blocks 21, bending is caused in the data signal lines 7 so as to lower the wiring efficiency.
Now, a semiconductor device layout method according to a first preferred embodiment of the present invention will be described hereinbelow with reference to FIG. 9. In this layout method, a given number of functional cells are arranged with regularity.
In FIG. 9, a net list memory 1 stores a net list in the form of circuit connection data necessary for arranging the functional cells 9. The net list includes, for example, wiring data, such as circuit module names, module terminal names and types, cell names and types, connection wiring names and terminal arrangement. A relative position list memory 2 stores relative positions of the rearranged functional cells as a relative position list, as will be described later. A cell library memory 3 stores size data of the functional cells. A signal list memory 4 stores a list of data signal names and control signal names.
First at step S11, the net list is read out from the net list memory 1. Then, the data signal name and the control signal name are stored per functional cell, and a list of the data signal names and the control signal names is produced. It may be arranged that the data signal names and the control signal names are given from the signal list memory 4.
Then, at step S12, common data signals or common control signals are set to be wiring signals, and a given number of functional cells arranged based on the wiring signals and referring to the net list. Specifically, as shown in FIG. 10, for example, the functional cells 9 connected to one of the data signal lines 7 for the common data signal are put together into one of groups 6.
Subsequently, at step S13, the arranging order of the data signals and the control signals is determined. If the signal list is given, the order in the signal list is set to be the signal arranging order. On the other hand, if the signal list is not given, the order in the list of the data signal names and the control signal names is set to be the signal arranging order.
Then, at step S14, the functional cells are rearranged per group based on the common data signals or the common control signals, that is, wiring signals. Specifically, the arranging order of the functional cell in each group is determined, for example, based on a connecting relationship of a control signal and an arranging order of the control signal.
Then, at step S15, a relative position list of the rearranged functional cells is outputted. The relative position of each functional cell is determined based on the corresponding data and control signal names and the arranging order of the data and control signals determined at step S13, wherein the rank order is determined as the data signal order while the column order is determined as the control signal order. Specifically, the relative position list is determined by the connection order between the common data signals and the common control signals. The relative position list is stored in the relative position list memory 2.
Now, proceeding to step S16, the arrangement or placement of the functional cells is performed based on the size data of the cells read out from the cell library memory 3 and the relative position list read out from the relative position list memory 2. In this manner, the data path layout is determined. Specifically, based on the size data of the cells read out from the cell library memory 3 and the relative position list read out from the relative position list memory 2, the relative arrangement or placement including the size data of the functional cells is achieved.
As a result, as shown in FIG. 11, the functional cells 9 connected to the same data signal lines 7 are arranged in the same ranks, while the functional cells 9 connected to the same control signal lines 8 are arranged in the same columns. With this arrangement, the data signal lines 7 and the control signal lines 8 are wired linearly. Accordingly, the high-speed data transmission can be achieved with the semiconductor device having the foregoing layout.
In the foregoing data path layout, the functional cells 9, each processing one-bit data, are arranged with regularity corresponding to the number of bits to be processed as shown in FIG. 1. Further, as shown in FIG. 2, the data signals (data signal lines 7) flow laterally while the control signals (control signal lines 8) flow vertically. As described before, the flow directions of the data signals and the control signals may be reversed.
As known in the art, when a particular condition, such as a timing constraint, is applied to a logic circuit so as to perform a logic synthesis, it is possible that a state, for example, as shown in FIGS. 12A and 12B, is caused. In FIG. 12A, a plurality of functional cells 9 connected to the data signal line 7 form a group having a group name "G12". On the other hand, in FIG. 12B, owing to provision of buffers 10 each having an input terminal 22 and an output terminal 23, the data signal line 7 is divided into two data signal lines 71 and 72, and a plurality of functional cells 9 connected to the data signal lines 71 and 72 form two groups having group names "G11a" and "G11b", respectively. In case of FIG. 12B, upon execution of steps S11 and S12 in FIG. 9, not only the functional cells 9 connected to the same data signal lines 7 are put together into the corresponding groups, but also, as shown in FIG. 13, the functional cells 9 connected to the data signal lines 71 and 72 are assigned a common group name "G25", respectively, and these groups ("G25") are unified to form one new unified group 24 which is assigned a group name "G12". In this case, each of the passing functional cells (buffers 10) which divide the data signal line 7 is recognized as one passing wiring node.
Upon execution of step S12 in FIG. 9, it is recognized whether a particular data signal common to the groups defined at step S12 in FIG. 9 is connected to a passing wiring node. If positive, that is, the particular common signal is connected to the passing wiring node, a group name of the corresponding group determined upon grouping of the functional cells is replaced with a data signal name of the passing wiring node. Then, those groups having group names, which are the same as the data signal name of the passing wiring node, are reformed into one group.
Now, referring to FIG. 14, further explanation will be given about grouping according to a second preferred embodiment of the present invention. First, step S21 determines whether any of the data signal lines of the groups defined at step S12 in FIG. 9 is connected to the output terminal 23 of the buffer 10, that is, whether the data signal line per group is connected to the output of the buffer 10. If connected, the process proceeds to step S22 where the buffer 10 is not handled as one functional cell, but as one passing wiring node, and the group name "G25" is replaced with the group name "G12" as an input signal name of the buffer 10. Then, at step S23, the replaced data signal (group name "G25") is removed from the list produced at step S11 in FIG. 9.
Subsequently, at step S24, it is determined whether the new group name "G12" exists in the list. If negative, the process proceeds to step S25 where the new group name "G12" is added to the list. On the other hand, if positive at step S24, the process proceeds to step S26 where those groups having the group name "G12" are unified. From step S21, S25 or S26, the process proceeds to step S27 where group reformation is performed.
Then, at step S28, it is determined whether there is any group connected to the buffer 10. If negative, grouping is finished. On the other hand, if positive at step S28, the process returns to step S21 to repeat execution of the foregoing steps until all the groups are connected to the functional cells other than the buffer 10.
Further explanation will be given hereinbelow about grouping. In FIG. 12B, the data signal lines 71 and 72 corresponding to the group names "G11a" and "G11b" are connected to the output terminals 23 of the buffers 10. Accordingly, the groups having the group names "G11a" and "G11b" are put together to form the group having the group name "G12" which is the name of the data signal line 7. Then, the group name "G25" is removed from the list, and the group name "G12" is added to the list. If there exist groups having the same group name, those groups are unified into one group. The foregoing processes are repeatedly performed. After grouping is finished, the process proceeds to step S13 in FIG. 9.
According to the foregoing semiconductor device layout methods, since the signal lines can be wired linearly with the same length, a standard deviation of a delay distribution per bit processing can be suppressed by 1/3 to 1/2 as compared with the prior art so that the speed-up of data transmission in the semiconductor device is highly achieved. Further, since the functional cells sharing the same data or control signal are put together into one group, the functional cells to be arranged in the same rank or column can be easily determined so that various kinds of semiconductor devices can be easily produced.
In the foregoing semiconductor device layout methods, the buffer cell is used as a functional cell for dividing the common data signal. However, instead of the buffer cell, such a functional cell may be used that provides the ratio of 1:1 with respect to the input and output signals thereof. Further, although the data signals are used for grouping, the control signal may be used therefor.
While the present invention has been described in terms of the preferred embodiments, the invention is not to be limited thereto, but can be embodied in various ways without departing from the principle of the invention as defined in the appended claims. The entire disclosure of Japanese Patent Application No. 8-47431 filed on Mar. 5, 1996 including specification, claims, drawings and summary are incorporated herein by reference in its entirety.

Claims (6)

What is claimed is:
1. A semiconductor device layout method for arranging a given number of functional cells in ranks and columns, said method comprising the steps of:
reading out a net list including circuit connection data necessary for arranging said functional cells;
grouping said functional cells into groups based on said net list and either of common data signals and common control signals;
determining an arranging order of said common data signals and said common control signals;
rearranging said functional cells per group based on either of said common data signals and said common control signals so that those of said cells that are connected to the same one of said common data signals are arranged in the same ranks and so that those of said cells that are connected to the same one of said common control signals are arranged in the same columns;
outputting a relative position list including relative positions of said rearranged functional cells; and
arranging said functional cells based on read-out size data of said functional cells and said relative position list.
2. The semiconductor device layout method according to claim 1, wherein said grouping step recognizes, as a passing wiring node, a passing functional cell which divides either of said common data signals and said common control signals.
3. The semiconductor device layout method according to claim 2, wherein said grouping step further comprises the steps of:
recognizing whether either of a particular data signal and a particular control signal common to said groups is connected to the passing wiring node;
replacing if said connection recognizing step recognizes that said particular signal is connected to the passing wiring node, a group name of the corresponding group determined upon grouping of said functional cells, with either of a data signal name and a control signal name of said passing wiring node; and
reforming those groups having group names, which are the same as said either of the data signal name and the control signal name, into one group.
4. The semiconductor device layout method according to claim 1, wherein said relative position list is determined based on a connection order between said common data signals and said common control signals.
5. A semiconductor device arranged according to the semiconductor device layout method of claim 1, wherein data signal lines for said common data signals and control signal lines for said common control signals are wired linearly.
6. A semiconductor device layout method for arranging a given number of functional cells with regularity, said method comprising the steps of:
reading out a net list including circuit connection data necessary for arranging said functional cells;
grouping said functional cells into groups based on said net list and either of common data signals and common control signals, and recognizing, as a passing wiring node, a passing functional cell which divides either of said common data signals and said common control signals;
determining an arranging order of said common data signals and said common control signals;
rearranging said functional cells per group based on either of said common data signals and said common control signals;
outputting a relative position list including relative positions of said rearranged functional cells;
arranging said functional cells based on read-out size data of said functional cells and said relative position list;
recognizing whether either of a particular data signal and a particular control signal common to said groups is connected to the passing wiring node;
replacing, if said connection recognizing step recognizes that said particular signal is connected to the passing wiring node, a group name of the corresponding group determined upon grouping of said functional cells, with either of a data signal name and a control signal name of said passing wiring node; and
reforming those groups having group names, which are the same as said either of the data signal name and the control signal name, into one group.
US08/813,937 1996-03-05 1997-03-03 Semiconductor device layout method capable of arranging functional cells with data signal lines and control signal lines having a proper length and configuration Expired - Fee Related US5926398A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP8047431A JP2773771B2 (en) 1996-03-05 1996-03-05 Semiconductor device layout method
JP8-047431 1996-03-05

Publications (1)

Publication Number Publication Date
US5926398A true US5926398A (en) 1999-07-20

Family

ID=12774970

Family Applications (1)

Application Number Title Priority Date Filing Date
US08/813,937 Expired - Fee Related US5926398A (en) 1996-03-05 1997-03-03 Semiconductor device layout method capable of arranging functional cells with data signal lines and control signal lines having a proper length and configuration

Country Status (3)

Country Link
US (1) US5926398A (en)
JP (1) JP2773771B2 (en)
KR (1) KR100272887B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001033441A2 (en) * 1999-11-05 2001-05-10 Intel Corporation Structural regularity extraction and floorplanning in datapath circuits using vectors
US6470484B1 (en) * 2000-05-18 2002-10-22 Lsi Logic Corporation System and method for efficient layout of functionally extraneous cells
US6526560B1 (en) * 1999-09-21 2003-02-25 Seiko Epson Corporation Macro cell creating method, apparatus and library thereof, and recording medium
US6625789B2 (en) * 2000-04-14 2003-09-23 Hitachi, Ltd. Computer-readable medium for recording interface specifications
US8701059B2 (en) * 2009-08-07 2014-04-15 International Business Machines Corporation Method and system for repartitioning a hierarchical circuit design

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4400428B2 (en) 2004-11-22 2010-01-20 エルピーダメモリ株式会社 Semiconductor integrated circuit design method, design apparatus and program
JP4777834B2 (en) * 2006-06-29 2011-09-21 富士通株式会社 Logical drawing display method, program and apparatus
US8099702B2 (en) * 2008-07-30 2012-01-17 Synopsys, Inc. Method and apparatus for proximate placement of sequential cells

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4882690A (en) * 1985-09-26 1989-11-21 Hitachi, Ltd. Incremental logic synthesis method
JPH05152439A (en) * 1991-11-27 1993-06-18 Sanyo Electric Co Ltd Semiconductor integrated circuit
US5341308A (en) * 1991-05-17 1994-08-23 Altera Corporation Methods for allocating circuit elements between circuit groups
JPH0887533A (en) * 1994-09-16 1996-04-02 Nec Corp Function cell arrangement method for semiconductor device
US5566078A (en) * 1993-05-26 1996-10-15 Lsi Logic Corporation Integrated circuit cell placement using optimization-driven clustering
US5659717A (en) * 1995-07-31 1997-08-19 Altera Corporation Methods for partitioning circuits in order to allocate elements among multiple circuit groups
US5661663A (en) * 1995-03-24 1997-08-26 Lsi Logic Corporation Physical design automation system and method using hierarchical clusterization and placement improvement based on complete re-placement of cell clusters

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06209043A (en) * 1993-01-08 1994-07-26 Sharp Corp Automatically arranging method and device for functional cell in designing digital lsi
JPH06349945A (en) * 1993-06-04 1994-12-22 Mitsubishi Electric Corp Macro cell automatic layout device
JP3071617B2 (en) * 1993-09-20 2000-07-31 富士通株式会社 Semiconductor design method and semiconductor design device
JPH07105253A (en) * 1993-10-07 1995-04-21 Nec Corp Data bus circuit layout generation system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4882690A (en) * 1985-09-26 1989-11-21 Hitachi, Ltd. Incremental logic synthesis method
US5341308A (en) * 1991-05-17 1994-08-23 Altera Corporation Methods for allocating circuit elements between circuit groups
JPH05152439A (en) * 1991-11-27 1993-06-18 Sanyo Electric Co Ltd Semiconductor integrated circuit
US5566078A (en) * 1993-05-26 1996-10-15 Lsi Logic Corporation Integrated circuit cell placement using optimization-driven clustering
JPH0887533A (en) * 1994-09-16 1996-04-02 Nec Corp Function cell arrangement method for semiconductor device
US5661663A (en) * 1995-03-24 1997-08-26 Lsi Logic Corporation Physical design automation system and method using hierarchical clusterization and placement improvement based on complete re-placement of cell clusters
US5659717A (en) * 1995-07-31 1997-08-19 Altera Corporation Methods for partitioning circuits in order to allocate elements among multiple circuit groups

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
PTO 99 0138 (translation of Japanese Document No. 05 152439, published Jun. 18, 1993, filed Nov. 27, 1991, invented by Hakoda et al.). *
PTO 99 0248 (translation of Japanese Document No. 08 087533, published Apr. 2, 1996, filed Sep. 16, 1994, invented by Nakamura et al.). *
PTO 99-0138 (translation of Japanese Document No. 05-152439, published Jun. 18, 1993, filed Nov. 27, 1991, invented by Hakoda et al.).
PTO 99-0248 (translation of Japanese Document No. 08-087533, published Apr. 2, 1996, filed Sep. 16, 1994, invented by Nakamura et al.).

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594808B1 (en) 1998-11-06 2003-07-15 Intel Corporation Structural regularity extraction and floorplanning in datapath circuits using vectors
US20040010759A1 (en) * 1998-11-06 2004-01-15 Intel Corporation Structural regularity extraction and floorplanning in datapath circuits using vectors
US7337418B2 (en) 1998-11-06 2008-02-26 Intel Corporation Structural regularity extraction and floorplanning in datapath circuits using vectors
US6526560B1 (en) * 1999-09-21 2003-02-25 Seiko Epson Corporation Macro cell creating method, apparatus and library thereof, and recording medium
WO2001033441A2 (en) * 1999-11-05 2001-05-10 Intel Corporation Structural regularity extraction and floorplanning in datapath circuits using vectors
WO2001033441A3 (en) * 1999-11-05 2002-05-16 Intel Corp Structural regularity extraction and floorplanning in datapath circuits using vectors
US6625789B2 (en) * 2000-04-14 2003-09-23 Hitachi, Ltd. Computer-readable medium for recording interface specifications
US6470484B1 (en) * 2000-05-18 2002-10-22 Lsi Logic Corporation System and method for efficient layout of functionally extraneous cells
US8701059B2 (en) * 2009-08-07 2014-04-15 International Business Machines Corporation Method and system for repartitioning a hierarchical circuit design

Also Published As

Publication number Publication date
KR970067850A (en) 1997-10-13
JPH09246388A (en) 1997-09-19
KR100272887B1 (en) 2000-11-15
JP2773771B2 (en) 1998-07-09

Similar Documents

Publication Publication Date Title
US5838581A (en) Layout system for logic circuit
US7796462B2 (en) Data flow control in multiple independent port
CN100339909C (en) Integated circuit storing equipment
US5926398A (en) Semiconductor device layout method capable of arranging functional cells with data signal lines and control signal lines having a proper length and configuration
US6405356B1 (en) Method of automatic placement for an arrayed-element device
JP3028949B1 (en) Semiconductor storage device, method of forming the same, and recording medium recording the method
EP0544164A1 (en) Semi custom-made integrated circuit having clock synchronous circuit improved in clock skew
US6650574B2 (en) Semiconductor device preventing signal delay among wirings
US7187573B2 (en) Memory circuit and method of generating the same
JP2701779B2 (en) Clock skew reduction method
KR100362207B1 (en) Serial access memory device
KR100605576B1 (en) Semiconductor memory device with uniform access time of data
JPH05233092A (en) Method and circuit for distributing clock signal
US7057946B2 (en) Semiconductor integrated circuit having latching means capable of scanning
US6698001B2 (en) Method for generating register transfer level code
JPH0279294A (en) Data length variable memory
US6532179B2 (en) Input signal receiving circuit for semiconductor integrated circuit
US6760896B2 (en) Process layout of buffer modules in integrated circuits
JP3818191B2 (en) Source-synchronous software macro and information processing device
KR100284011B1 (en) Memory Management Method for Non-Square Interleaver / Deinterleaver
JP2872174B2 (en) Master slice type semiconductor integrated circuit and layout method thereof
KR20030081033A (en) Memory device with non-quadrangular memory bank
JP2002260394A (en) Non-volatile semiconductor memory
JP2658829B2 (en) Layout method of semiconductor integrated circuit
JPS5922320B2 (en) Storage device

Legal Events

Date Code Title Description
AS Assignment

Owner name: NEC CORPORATION, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NAKAMURA, TAKESHI;REEL/FRAME:008425/0661

Effective date: 19970225

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: NEC ELECTRONICS CORPORATION, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NEC CORPORATION;REEL/FRAME:013751/0721

Effective date: 20021101

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20070720