KR100385862B1 - Method of improving routing delay for symmetrical FPGA - Google Patents

Method of improving routing delay for symmetrical FPGA Download PDF

Info

Publication number
KR100385862B1
KR100385862B1 KR10-1999-0021542A KR19990021542A KR100385862B1 KR 100385862 B1 KR100385862 B1 KR 100385862B1 KR 19990021542 A KR19990021542 A KR 19990021542A KR 100385862 B1 KR100385862 B1 KR 100385862B1
Authority
KR
South Korea
Prior art keywords
wiring
subnets
track
net
logic
Prior art date
Application number
KR10-1999-0021542A
Other languages
Korean (ko)
Other versions
KR20010001982A (en
Inventor
엄낙웅
박인학
Original Assignee
한국전자통신연구원
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 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR10-1999-0021542A priority Critical patent/KR100385862B1/en
Publication of KR20010001982A publication Critical patent/KR20010001982A/en
Application granted granted Critical
Publication of KR100385862B1 publication Critical patent/KR100385862B1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F1/00Refuse receptacles; Accessories therefor
    • B65F1/14Other constructional features; Accessories
    • B65F1/1405Compressing means incorporated in, or specially adapted for, refuse receptacles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F1/00Refuse receptacles; Accessories therefor
    • B65F1/14Other constructional features; Accessories
    • B65F1/16Lids or covers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F2210/00Equipment of refuse receptacles
    • B65F2210/132Draining means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F2210/00Equipment of refuse receptacles
    • B65F2210/162Pressing means

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

이 발명은 대칭형의 회로 구조를 갖는 현장 가공형 반도체(FPGA : Field Programmable Gate Array)의 신호 지연을 개선하는 기법에 관한 것이다.The present invention relates to a technique for improving signal delay of field programmable semiconductor arrays (FPGAs) having a symmetric circuit structure.

이 발명에 따르면 현장 가공형 반도체의 배선 지연 향상방법은, 논리블록 간의 배선형태를 이중 핀 네트의 서브네트 단위로 구분하는 제1단계와, 상기 서브네트들 사이의 통합 여부를 순차적으로 판단하는 제2단계, 상기 통합 가능한 서브네트들이 동일한 트랙값을 가지도록 두 서브네트들의 트랙 위치를 조정하는 제3단계, 및 나머지 서브네트들의 트랙 위치를 재조정하는 제4단계를 포함한다.According to the present invention, there is provided a method for improving wiring delay in a field-processing semiconductor, comprising: a first step of dividing a wiring form between logical blocks into subnet units of a double pin net, and sequentially determining whether to integrate the subnets; Step 2, adjusting the track position of the two subnets so that the mergeable subnets have the same track value, and adjusting the track position of the remaining subnets.

또한, 본 발명에 따르면 상술하였던 현장 가공형 반도체의 배선 지연 향상방법을 실현하기 위한 프로그램을 기록한 기록매체가 제공된다.Further, according to the present invention, there is provided a recording medium having recorded thereon a program for realizing the above-described method for improving the wiring delay of the field processing semiconductor.

Description

현장 가공형 반도체를 제조하는 방법 { Method of improving routing delay for symmetrical FPGA }How to fabricate field-processed semiconductors {Method of improving routing delay for symmetrical FPGA}

본 발명은 대칭형의 회로 구조를 갖는 현장 가공형 반도체(FPGA : Field Programmable Gate Array)의 신호 지연을 개선하는 기법에 관한 것으로서, 더 자세히 말하면 각 네트를 구성하는 배선 경로의 스위치소자 수를 최소화하는 기법에 관한 것이다.The present invention relates to a technique for improving signal delay of a field programmable semiconductor array (FPGA) having a symmetrical circuit structure. More specifically, the present invention relates to a technique for minimizing the number of switching elements in a wiring path constituting each net. It is about.

현장 가공형 반도체에서 핀과 핀을 연결하는 배선 경로는 다수의 금속선과 스위치소자로 이루어진다. 이러한 현장 가공형 반도체 회로는 많은 신호선을 가지는데, 그 중에서 같은 전위를 갖는 핀들을 연결하는 신호선을 "네트"라고 부른다. 두 개보다 많은 핀을 연결하는 네트를 "다중 핀 네트"라고 하고, 두 핀간을 연결하는 네트를 "이중 핀 네트"라고 한다.In the field-processed semiconductor, the wiring path connecting pins to pins is composed of a plurality of metal wires and switch elements. Such field-processed semiconductor circuits have many signal lines, of which signal lines connecting pins having the same potential are called "nets". A net connecting more than two pins is called a "multi pin net", and a net connecting two pins is called a "double pin net".

도 1은 대칭형 현장 가공형 반도체의 전형적인 배선 구조를 도시한 도면이다. 논리블록(1)은 L로 표시되어 있으며 칩의 가로와 세로 방향으로 일정한 간격을 두고 배열되며, 각 논리블록(1)에는 핀(11)이 도출된다. 도면에서는 4개의 논리블록이 배열된 현장 가공형 반도체가 도시되어 있다. 연결블록(2)은 논리블록(1) 사이의 영역이다. 스위치블록(3)은 연결블록(2) 사이의 영역을 의미한다. 각 연결블록(2)에는 수평 및 수직 방향으로 배선트랙(4,5,6,7,8,9)이 도출된다. 칩의 용량에 따라 논리블록(1)의 수, 핀(11)의 수, 및 배선트랙(4,5,6,7,8,9)의 수가 조절된다.1 is a diagram showing a typical wiring structure of a symmetrical field processed semiconductor. The logic blocks 1 are denoted by L and arranged at regular intervals in the horizontal and vertical directions of the chip, and pins 11 are drawn to each logical block 1. In the figure, a field-processed semiconductor is shown in which four logic blocks are arranged. The connection block 2 is an area between the logic blocks 1. The switch block 3 means the area between the connection blocks 2. Wiring tracks 4, 5, 6, 7, 8, and 9 are derived from the connecting blocks 2 in the horizontal and vertical directions. The number of logic blocks 1, the number of pins 11, and the number of wiring tracks 4, 5, 6, 7, 8, and 9 are adjusted according to the capacity of the chip.

연결블록(2)에서, 논리블록의 핀(11)과 배선트랙이 만나는 위치에 스위치소자(12)가 존재한다. 예를들어 배선트랙(7)과 논리블록의 핀(11)이 만나는 위치에 스위치소자(12)가 존재한다. 이 스위치소자(12)는 모오스 트랜지스터(13)를 이용하여 구현할 수 있다.In the connection block 2, the switch element 12 exists at the position where the pin 11 and the wiring track of the logic block meet. For example, the switch element 12 exists at the position where the wiring track 7 and the pin 11 of the logic block meet. This switch element 12 can be implemented using the MOS transistor 13.

스위치블록(3)에서, 연결블록(2)의 배선트랙들의 교점 중에서 대각선 방향의 교점을 스위칭 포인트(10)라고 한다. 논리블록(1)의 핀(11)에서 어떤 전기적 신호가 발생하면 인접한 연결블록의 스위치소자(12)를 통해 칩 내의 다른 스위치블록에게 전달한다. 스위치블록에서는 스위치 포인트의 각 스위치를 이용하여 신호가 흐르는 방향을 제어하여 원하는 위치로 신호를 전송한다. 상용 현장 가공형 반도체의 경우에 6개의 스위치소자(14,15,16,17,18,19)로 스위칭 포인트(10)를 구성한다.In the switch block 3, the intersection of the wiring tracks of the connection block 2 in the diagonal direction is called the switching point 10. When an electrical signal is generated at the pin 11 of the logic block 1, it is transmitted to another switch block in the chip through the switch element 12 of the adjacent connection block. The switch block transmits a signal to a desired position by controlling the direction in which the signal flows using each switch of the switch point. In the case of commercial field processing semiconductors, the switching point 10 is composed of six switch elements 14, 15, 16, 17, 18, and 19.

상기와 같이 구성된 대칭형 현장 가공형 반도체에 대한 일반적인 설계 흐름도가 도 2에 도시되어 있다. 먼저 현장 가공형 반도체 내의 논리소자에 전자회로의 연결정보를 매핑하고(S1), 논리소자를 논리블록에 배치한다(S2). 이때 논리블록의 수와 총 배선길이 등이 최소화되도록 한다. 다음, 논리소자들이 배치된 논리블록간을 스위치소자와 금속선을 이용하여 연결한다(S3). 이렇게 배선되면 비트열(bit-stream)을 발생하고(S4), 현장 가공형 반도체 칩을 프로그래밍한다(S5).A general design flow diagram for a symmetric field processed semiconductor configured as described above is shown in FIG. First, connection information of an electronic circuit is mapped to a logic element in a field-processed semiconductor (S1), and the logic element is placed in a logic block (S2). At this time, the number of logic blocks and the total wiring length are minimized. Next, the logic blocks on which the logic elements are arranged are connected using a switch element and a metal wire (S3). When wired in this way, a bit-stream is generated (S4), and an on-site semiconductor chip is programmed (S5).

상기한 배선 단계(S3)를 위한 종래의 배선 기술은 크게 두 가지 형태로 나눌 수 있다. 첫 번째는 각 네트를 여러 개의 이중 핀 네트로 분할한 다음, 이중 핀 네트를 단위로 배선을 수행하는 방식이다. 이 경우에 미로배선기법(maze routing)이 효과적이며 매 순간에 있어서는 최적에 가까운 배선 경로를 찾을 수 있다. 그러나, 전체 배선면에 있어서는 최적의 배선이 되기 어려운 단점이 있다. 특히 이중 핀 네트의 배선은 필요한 경우마다 스위치를 사용하기 때문에 스위치소자가 과도하게 필요하게 되는 경우가 빈번하게 발생한다. 따라서 상당히 큰 신호 지연이 발생하게 되는 문제점이 있다.The conventional wiring technique for the above-described wiring step S3 can be largely divided into two types. The first is to divide each net into several double pin nets and then wire them in units of double pin nets. In this case, the maze routing is effective, and at every moment, a near optimal wiring path can be found. However, there is a disadvantage in that it is difficult to achieve optimal wiring in the entire wiring surface. In particular, since the wiring of the double pin net uses a switch whenever necessary, excessive switching devices are frequently required. Therefore, there is a problem that a significant signal delay occurs.

두 번째 방식은 각 네트를 단위로 배선하는 기법이다. 각 네트의 연결 형태가 스타이너 트리(steiner tree)가 되도록 배선을 수행한다. 이와 같이 배선하면 배선길이와 스위치 개수 면에서는 개선이 이루어지나, 실제 수백에서 수천 개의 네트를 배선할 때에는 상호 작용 효과에 의해 전체 배선면에서 최적화를 이루기가 힘든다.The second method is to wire each net in units. Wiring is performed so that each net is connected to a steiner tree. This wiring improves the wiring length and the number of switches. However, when wiring hundreds or thousands of nets, it is difficult to optimize the entire wiring surface due to the interaction effect.

종래의 전형적인 배선기법을 도 3을 참조하면서 설명한다. 현장 가공형 반도체의 배선 자원은 한정되어 있으므로 배선에서 특히 고려해야 하는 사항은 최소한의 배선트랙을 이용하는 것이다. 이를 위해서 일반적으로 배선기는 배선트랙의 가장 밑 또는 왼쪽에서부터 비어있는 배선트랙에 네트를 할당한다.A conventional typical wiring technique will be described with reference to FIG. As wiring resources for field-processed semiconductors are limited, a particular consideration in wiring is to use the minimum wiring track. In order to do this, the routing device usually assigns nets to empty wiring tracks from the bottom or left of the wiring tracks.

도 3의 예에서는 4개의 네트 a, b, c, d가 구성된다. 그 중에서 a, b, c는 이중 핀 네트이고, d는 다중 핀 네트로서 3개의 핀을 연결한다. 네트가 연결한 핀의 수가 적은 것을 우선해서 정렬하면 a, b, c, d와 같은 순서가 얻어진다. 네트 a와 b는 각각 첫 번째 트랙에 놓이며 네트 c는 두 번째 트랙에 놓이게 된다. 네트 d는 두 개의 서브네트로 나누어져서 배선될 수 있으므로, 연결블록(20,21,22)을 연결하기 위해서 연결블록(22)에서는 두 개의 스위치소자(23,24)가 필요하게 된다.In the example of FIG. 3, four nets a, b, c, d are configured. Among them, a, b and c are double pin nets, and d is a multi pin net and connects three pins. If the net number of pins connected is prioritized, the order a, b, c, d is obtained. Nets a and b are each on the first track and net c is on the second track. Since the net d may be divided into two subnets and wired, two switch elements 23 and 24 are required in the connection block 22 to connect the connection blocks 20, 21 and 22.

대칭형 현장 가공형 반도체에서 서브네트로 나누어지는 위치는 연결블록 내에 존재한다. 이 성질을 이용하여 도 3의 배선 배치를 도 4와 같이 변경하면 네트 d의 두 서브네트는 스위치소자(25)에 의해 연결되므로 하나의 스위치 소자를 줄일 수 있게 된다.In symmetric field processing semiconductors, the location of the subnet is in the connection block. Using this property, if the wiring arrangement of FIG. 3 is changed as shown in FIG. 4, two subnets of the net d are connected by the switch element 25, thereby reducing one switch element.

이 발명의 목적은 이와 같이 기존의 배선 결과에서, 연결블록에 존재하는 스위치소자 중에서 불필요한 것을 제거함으로써 스위치소자 개수를 최소화하여 현장 가공형 반도체의 신호 지연을 최적화하는 방법을 제공하기 위한 것이다.It is an object of the present invention to provide a method of optimizing signal delay of field processed semiconductors by minimizing the number of switch elements by removing unnecessary ones from switch elements present in the connection block.

도 1은 일반적인 현장 가공형 반도체의 내부 구조도,1 is an internal structure diagram of a general field processing type semiconductor,

도 2는 종래 기술에 따른 현장 가공형 반도체의 설계 공정을 도시한 흐름도,2 is a flowchart illustrating a design process of an on-site semiconductor according to the prior art;

도 3은 종래 기술에 의해 설계된 배선 배치도,3 is a wiring arrangement diagram designed by the prior art;

도 4는 도 3에 도시된 배선 배치를 개선한 본 발명에 따라 설계된 배선 배치도,FIG. 4 is a wiring arrangement diagram designed according to the present invention in which the wiring arrangement shown in FIG. 3 is improved;

도 5는 본 발명에 따른 현장 가공형 반도체의 설계 공정을 도시한 흐름도,5 is a flowchart illustrating a design process of an on-site semiconductor according to the present invention;

도 6은 도 5에 도시된 신호지연 최적화단계를 상세하게 도시한 흐름도,6 is a flowchart illustrating in detail a signal delay optimization step shown in FIG. 5;

도 7은 도 6에 도시된 네트에 대한 스위치 최적화단계를 상세하게 도시한 흐름도,FIG. 7 is a detailed flowchart illustrating a switch optimization step for the net shown in FIG. 6;

도 8은 종래기술에 따라 설계된 배선 배치의 일 예시도,8 is an exemplary diagram of a wiring arrangement designed according to the prior art;

도 9는 도 8에 도시된 배선 배치를 최적화하기 위한 그래프도,9 is a graph for optimizing the wiring arrangement shown in FIG. 8;

도 10은 도 8에 도시된 배선 배치가 본 발명에 의해 설계되어 최적화된 상태를 도시한 도면이다.10 is a view showing a state in which the wiring arrangement shown in FIG. 8 is designed and optimized by the present invention.

위와 같은 기술적 과제를 해결하기 위한 이 발명에 따르면, 현장 가공형 반도체의 신호 지연을 최적화하는 방법이 제공된다. 먼저, 현장 가공형 반도체는 반도체회로를 구성하는 논리소자가 평면 상에 일정한 간격으로 배치되고 상기 논리소자 사이에 일정한 개수의 배선트랙이 가로와 세로방향으로 존재하며, 상기 배선트랙과 논리소자의 핀이 만나는 위치에 스위치소자가 존재한다.According to the present invention for solving the above technical problem, there is provided a method for optimizing the signal delay of the field-processed semiconductor. First, in the field processing type semiconductor, logic elements constituting a semiconductor circuit are arranged at regular intervals on a plane, and a predetermined number of wiring tracks exist in the horizontal and vertical directions between the logic elements, and the wiring tracks and the logic pins There is a switch element at this location.

이러한 현장 가공형 반도체를 제조하는 방법은, 상기 반도체회로의 연결정보를 상기 논리소자에 매핑하는 기술매핑단계와, 논리블록의 수와 총 배선길이 등이 최소화되도록 상기 논리소자를 논리블록에 배치하는 배치단계, 상기 논리블록 간을 스위치소자와 금속선을 이용하여 연결하는 배선단계, 상기 단계들을 통해 제조된반도체회로의 신호 지연을 측정하여 신호 지연을 개선하고자 하는 경우, 스위치소자 개수가 최소화되도록 재배선하는 배선 지연 향상단계, 및 신호 지연이 최적화된 반도체회로를 비트열 발생하여 프로그래밍하는 프로그래밍단계를 포함한다.The method for manufacturing an in-situ semiconductor includes a technology mapping step of mapping connection information of the semiconductor circuit to the logic device, and disposing the logic device in the logic block such that the number of logic blocks and the total wiring length are minimized. Arrangement step, wiring step of connecting the logic blocks between the switch element and the metal wire, if the signal delay of the semiconductor circuit manufactured by the steps to measure the signal delay to be improved, redistribution so as to minimize the number of switch elements A wiring delay improvement step and a programming step of generating and programming a bit string of the semiconductor circuit having optimized signal delay.

상기 배선 지연 향상단계는, 상기 논리블록 간의 배선형태를 이중 핀 네트의 서브네트 단위로 구분하는 제1단계와, 상기 서브네트들 사이의 통합 여부를 순차적으로 판단하는 제2단계, 상기 통합 가능한 서브네트들이 동일한 트랙값을 가지도록 두 서브네트들의 트랙 위치를 조정하는 제3단계, 및 나머지 서브네트들의 트랙 위치를 재조정하는 제4단계를 포함한다.The wire delay improving step may include: a first step of dividing a wiring form between the logic blocks into subnet units of a double pin net; a second step of sequentially determining whether the subnets are integrated; A third step of adjusting the track position of the two subnets so that the nets have the same track value, and a fourth step of readjusting the track position of the remaining subnets.

양호하게는, 상기 현장 가공형 반도체의 배선 지연 향상방법은 배선 후 스위치소자를 줄여 나가는 후처리 배선기법이다.Preferably, the method for improving the wiring delay of the field processing type semiconductor is a post-processing wiring method of reducing the switch element after wiring.

또한, 본 발명에 따르면, 컴퓨터에, 반도체회로의 배선트랙의 배선 정보를 판독하고 네트 단위로 모델링하는 제1단계와, 상기 네트를 구성하는 서브네트들과 스위치소자들이 각각 노드와 에지로 표현된 그래프를 형성하는 제2단계, 두 개의 스위치소자가 위치한 임의의 에지 양단에 연결된 두 서브네트들의 통합 가능 여부를 판단하는 제3단계, 상기 두 서브네트들이 통합될 수 있으면 두 서브네트를 통합하고 하나의 스위치소자를 제거하는 제4단계, 모든 에지에 대해 상기 제3단계 내지 제4단계를 반복 수행하는 제5단계, 및 모든 네트에 대해 상기 제2단계 내지 제5단계를 반복 수행하는 제6단계를 포함하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공된다.In addition, according to the present invention, a first step of reading wiring information of a wiring track of a semiconductor circuit and modeling it in a net unit in a computer, and the subnets and switch elements constituting the net are represented by nodes and edges, respectively. A second step of forming a graph, a third step of determining whether two subnets connected across any edge where two switch elements are located can be integrated; and if the two subnets can be integrated, the two subnets are merged and one A fourth step of removing the switch elements of the second step, a fifth step of repeatedly performing the third to fourth steps for all edges, and a sixth step of repeatedly performing the second to fifth steps for all nets A computer readable recording medium having recorded thereon a program is provided.

아래에서는 첨부된 도면을 참조하여 이 발명에 따른 현장 가공형 반도체의배선 지연 향상방법의 양호한 실시예에 대해 상세하게 설명하겠다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the wiring delay improvement method of the field-processing semiconductor according to the present invention.

도 5는 본 발명에 따른 현장 가공형 반도체의 설계 흐름도이다. 정보를 매핑하는 단계(S1)와 배치 단계(S2)와 배선 단계(S3)와 비트열 발생단계(S4), 및 현장 가공형 반도체 칩을 프로그래밍하는 단계(S5)는 종래기술과 동일하다.5 is a design flow chart of an on-site semiconductor according to the present invention. The step S1, the arrangement step S2, the wiring step S3, the bit string generation step S4, and the step S5 of programming the field-processed semiconductor chip are the same as in the prior art.

그러나, 본 발명에서는 배선 단계(S3) 후, 그 결과에 대해 회로의 신호 지연을 측정하는 단계(S6)와, 신호 지연이 사양에 도달하지 않은 경우나 신호 지연을 더욱 개선하고자 하는 경우에 수행하는 배선 지연 향상단계 즉, 신호지연 최적화단계(S7)를 더 포함한다.However, in the present invention, after the wiring step S3, the step of measuring the signal delay of the circuit with respect to the result (S6) and the case where the signal delay does not reach the specification or to further improve the signal delay is performed. The wiring delay improving step, that is, the signal delay optimization step S7 is further included.

상기 신호지연 최적화단계(S7)의 상세 흐름도가 도 6에 도시되어 있다.A detailed flowchart of the signal delay optimization step S7 is shown in FIG. 6.

먼저 단계(S100)에서 모든 네트의 정보를 읽어들인 다음, 계수기(j)를 초기화한다. 그리고 나서 단계(S101)에서 j번째 네트에 대한 스위치 최적화를 수행한다. 단계 (S102, S103)에서는 모든 네트에 대한 처리가 종결되었는지 여부를 판단하여 각 네트에 대하여 한 번씩의 최적화과정이 수행되도록 한다.First, all the net information is read in step S100, and then the counter j is initialized. Then, switch optimization for the j-th net is performed in step S101. In steps S102 and S103, it is determined whether or not the processing for all nets is completed so that one optimization process is performed for each net.

최적화 수행단계(S101)의 상세 흐름도가 도 7에 도시되어 있다.A detailed flowchart of the optimization performing step S101 is shown in FIG.

단계(S200)는 핀의 수(K)와 계수기(i), 그리고 그래프를 '0'으로 초기화하는 과정이고, 단계(S201)는 K-1개의 노드를 갖는 그래프를 설정하고, 'K'에 'K-1' 값을 할당하는 단계이다. 이때, 그래프의 각 노드는 하나의 서브네트를 나타낸다. 단계(S202)에서는 각 서브네트 즉, 그래프를 구성하는 각 노드를 연결하는 데 필요한 스위치소자의 위치를 판별한다. 그 정보에 따라 단계(S203)에서 스위치소자의 위치에 따라 에지를 형성한다. 여기서, 에지는 서브네트 간에 존재하는 하나 이상의 스위치소자들을 의미한다. 단계(S201, S202, S203)에 의해 그래프를 형성할 때 동일한 트랙값을 가지면서 인접한 서브네트들은 처음부터 하나의 슈퍼노드를 구성한다.Step S200 is a process of initializing the number of pins K, the counter i, and the graph to '0', and step S201 sets a graph having K-1 nodes and sets the graph to 'K'. This step is to assign a value of 'K-1'. At this time, each node of the graph represents one subnet. In step S202, the positions of the switch elements required to connect each subnet, that is, each node constituting the graph, are determined. According to the information, the edge is formed in accordance with the position of the switch element in step S203. Here, the edge refers to one or more switch elements existing between the subnets. When forming the graph by steps S201, S202, and S203, adjacent subnets with the same track value constitute one supernode from the beginning.

단계(S204)에서는 그래프를 구성하는 각 노드 중에서 연결된 에지의 수가 적은 것을 하나 선택하고 계수기(i)를 1 증가시킨다. 단계(S205)에서는 선택된 노드에 연결된 노드 중에서 통합 가능한 것이 있는 지를 판단한다. 가능한 것이 있으면 단계(S206)으로 진행하여 두 노드 즉, 두 개의 서브네트를 통합하고 그래프를 수정한다. 만약 단계(S205)에서 통합한 것이 없으면 단계(S207)로 진행하여 선택을 취소하고 다른 노드를 선택한다. 단계(S208)에서는 모든 노드에 대해 통합 여부를 검사하였는가를 판단한다. 검사가 다 이루어졌으면 최종 그래프를 출력하는 단계(S209)를 수행한다.In step S204, the number of connected edges is selected one from each node constituting the graph, and the counter i is increased by one. In step S205, it is determined whether any of the nodes connected to the selected node can be integrated. If possible, the process proceeds to step S206, in which the two nodes, that is, the two subnets, are integrated and the graph is modified. If there is nothing integrated in step S205, the flow advances to step S207 to cancel the selection and select another node. In step S208, it is determined whether all nodes have been checked for integration. If the inspection is completed, the step (S209) of outputting the final graph is performed.

K개의 노드를 갖는 네트는 K-1개의 서브네트(이중 핀 네트)를 가지며, 각 서브네트는 배선기에 의해 고유의 트랙값을 갖는다. 트랙값이란 각 수평 및 수직 채널에서 밑에서 위로 또는 왼쪽에서 오른쪽으로 진행하면서 트랙 하나 하나에 매기는 자연수로 정의된다. 도 3의 배선도를 예로 들면, 네트 a와 b는 트랙값 1을 갖고, 네트 c는 트랙값 2를 갖는다. 네트 d는 두 개의 서브네트가 각각 트랙값 1과 2를 갖는다. 동일한 네트에 속하는 서브네트들이 서로 다른 트랙값을 가질 경우에는 스위치소자가 추가된다. 즉, 네트 d는 두 개의 서브네트가 각각 다른 트랙값을 가지기 때문에 4개의 스위치소자가 필요하지만, 도 4에 도시된 바와 같이 동일한 트랙값을 가지도록 배선하면 3개의 스위치소자만이 필요하다. 따라서, 후처리기법으로서 동일한 네트에 속하는 서브네트들이 동일한 트랙값을 가지도록 재배치한다.A net with K nodes has K-1 subnets (double pin nets), each subnet having its own track value by the wiring harness. The track value is defined as a natural number assigned to each track, going from bottom to top or left to right in each horizontal and vertical channel. Taking the wiring diagram of FIG. 3 as an example, the nets a and b have a track value 1, and the net c has a track value 2. In net d, two subnets have track values 1 and 2, respectively. Switch elements are added when subnets belonging to the same net have different track values. That is, the net d requires four switch elements because the two subnets have different track values, but only three switch elements are required if the wiring is wired to have the same track value as shown in FIG. Therefore, as a post-processing technique, the subnets belonging to the same net are rearranged to have the same track value.

도 7의 흐름도 및 도 8 내지 도 10을 참조하면서 본 발명의 한 실시예를 설명하면 다음과 같다.An embodiment of the present invention will be described with reference to the flowchart of FIG. 7 and FIGS. 8 to 10.

도 8도는 5개의 핀을 연결하는 하나의 네트에 대한 배선도로서 4개의 서브네트 s1, s2, s3, s4로 이루어진다. 즉, 노드의 개수 K=5이며 이 경우에는 3개의 스위치소자가 추가로 배치된 상태이다. 서브네트들은 독립적으로 배선될 수 있으므로 배선율을 높이는 데 매우 중요한 요소이지만 그로 인해 종래의 배선에서는 도 8과 같이 스위치소자가 과다하게 사용되는 경우가 빈번하게 발생한다.FIG. 8 is a wiring diagram of one net connecting five pins and includes four subnets s1, s2, s3, and s4. That is, the number K of nodes is 5 and in this case, three switch elements are additionally arranged. Subnets can be wired independently, which is a very important factor in increasing the wiring rate. Therefore, in the conventional wiring, the switch element is frequently used as shown in FIG. 8.

상기와 같이 서브네트들을 이용하여 배선이 완료된 경우, 본 발명에 따른 현장 가공형 반도체의 배선 지연 향상방법을 수행하여 과다하게 사용된 스위치소자를 제거한다.When the wiring is completed using the subnets as described above, the excessively used switch element is removed by performing the method for improving the wiring delay of the field processed semiconductor according to the present invention.

5개의 노드를 가지는 현장 가공형 반도체의 경우, 서브네트(s1,s2,s3,s4)의 수 "K-1=4"이고, 단계(S201)에서 얻어지는 그래프는 표 1과 같다.In the case of an on-site semiconductor having five nodes, the number of subnets s1, s2, s3, and s4 is "K-1 = 4", and the graph obtained in step S201 is shown in Table 1 below.

s1s1 s2s2 s3s3 s4s4 s1s1 s2s2 s3s3 s4s4

단계(S202)는 각 서브네트 사이를 연결하는 스위치소자의 위치를 판별하는데, 여기에서는 s1과 s2, s2와 s3, s2와 s4, s3과 s4 사이를 연결하기 위하여 스위치소자가 필요하다. 이를 표 1의 그래프상에 표시하면 표2와 같고, 도식하면 도 9에 도시된 바와 같다. 도 9에서 서브네트를 나타내는 노드 옆의 숫자는 트랙값을 의미한다.Step S202 determines the position of the switch element connecting between each subnet, where a switch element is needed to connect between s1 and s2, s2 and s3, s2 and s4, s3 and s4. If this is displayed on the graph of Table 1, it is as Table 2, and it is as shown in FIG. In FIG. 9, the number beside the node representing the subnet means a track value.

s1s1 s2s2 s3s3 s4s4 s1s1 1One s2s2 1One 1One 1One s3s3 1One 1One s4s4 1One 1One

표 2의 그래프에서 알 수 있듯이, 상기의 서브네트 중에서 에지의 수가 가장 적은 서브네트는 s1이다. 따라서 단계(S204)는 최소비용의 서브네트로 s1을 선택하고 이때 i=1이 된다. 단계(S205)는 단계(S204)에서 선택된 s1이 인접한 s2와 통합할 수 있는 지를 판단한다. 이때 s1을 s2의 트랙으로 옮기거나 혹은 s2를 s1의 트랙으로 옮기는 것이 가능하면 통합의 조건이 충족되는 것이다. 만약 s1이 s2의 위치로 옮기는 것이 가능하다면 그래프는 단계(S206)에서 표 3과 같이 수정된다. 이때 K=3, i=0이 된다. s1과 다른 3개의 서브네트에 대해 통합 가능여부를 판별한다.As can be seen from the graph of Table 2, the subnet having the smallest number of edges among the subnets is s1. Therefore, step S204 selects s1 as the least cost subnet, where i = 1. Step S205 determines whether s1 selected in step S204 can integrate with an adjacent s2. If it is possible to move s1 to the track of s2 or s2 to the track of s1, then the condition of integration is satisfied. If it is possible to move s1 to the position of s2, the graph is modified as shown in Table 3 in step S206. At this time, K = 3 and i = 0. Determine if the s1 and the other three subnets can be integrated.

s1/s2s1 / s2 s3s3 s4s4 s1/s2s1 / s2 1One 1One s3s3 1One 1One s4s4 1One 1One

단계(S208)의 판단결과, i<K이므로 단계(S204)로 진행하여, 현재의 노드 s1/s2, s3, s4에 대한 통합 여부를 판별한다. 가령 s4가 s1/s2에 통합될 수 있다고 가정하면, 단계(S204)에 의해 i=1이 되지만 단계(S205)와 단계(S206)에 의해 K=2, i=0이 된다. 이때 단계(S206)에서 그래프는 표 4와 같이 수정된다.As a result of the determination in step S208, since i <K, the flow advances to step S204 to determine whether or not the current nodes s1 / s2, s3, and s4 are integrated. For example, assuming that s4 can be integrated into s1 / s2, i = 1 by step S204, but K = 2 and i = 0 by step S205 and S206. At this time, in step S206 the graph is modified as shown in Table 4.

s1/s2/s4s1 / s2 / s4 s3s3 s1/s2/s4s1 / s2 / s4 1One s3s3 1One

단계(S208)에서 i<k이므로 단계(S204)를 수행한다. 단계(S204)는 노드 s3이 노드 s1/s2/s4와 통합될 수 있는 지를 판별하고, 이때 통합될 수 있다고 가정하면 그래프는 하나의 슈퍼노드만 남게 된다.Since i <k in step S208, step S204 is performed. Step S204 determines whether node s3 can be integrated with node s1 / s2 / s4, and assuming that it can be integrated, the graph leaves only one supernode.

이때 단계(S204)에 의해 i=1이 되지만, 단계(S205)와 단계(S206)에 의해 K=1, i=0이 된다. 따라서, 단계(S208)에서 i<k이므로 다시 단계(S204)를 수행한다. 단계(S204)에서 i=1이 되지만 단계(S205)에서 통합될 수 없는 단일 노드로 판별되므로 단계(S207)로 진행하고 단계(S208)에서 i=K 이므로 단계(S209)로 진행한다.At this time, i = 1 at step S204, but K = 1 and i = 0 at step S205 and S206. Therefore, step S204 is performed again because i <k in step S208. In step S204, since i = 1 is determined as a single node that cannot be integrated in step S205, the process proceeds to step S207, and in step S208, i = K, so step S209 is reached.

본 실시예에서와 같이 네트의 모든 서브네트가 하나의 슈퍼노드 s1/s2/s4/s3로 통합되면, 배선은 도 10에 도시된 바와 같이 개선되며 총 3개의 스위치소자를 절약할 수 있다. 이렇게 각 네트에 대한 스위치소자를 최소화하는 단계(S101)를 수행하면 배선 지연을 대폭적으로 감소시키는 효과가 있다.If all the subnets of the net are integrated into one supernode s1 / s2 / s4 / s3 as in this embodiment, the wiring is improved as shown in FIG. 10 and can save a total of three switch elements. By performing the step S101 of minimizing the switch elements for the respective nets, there is an effect of significantly reducing the wiring delay.

본 발명은 하나의 네트를 한 번에 처리하기 때문에 먼저 배선하는 네트일수록 배선 영역에 여유가 생기는 등, 그 배선 순서에 따라 개선의 정도가 달라질 수 있다. 따라서, 한 번의 작용에 의해 적절한 결과가 얻어지지 않으면 네트 순서를 재조정하여 단계(S101, S102, S103)를 반복 수행한다.Since the present invention processes one net at a time, the degree of improvement may vary depending on the wiring order, such as a margin in the wiring area as the net to be wired first. Therefore, if proper results are not obtained by one action, the net order is readjusted and steps S101, S102, and S103 are repeated.

이상과 같이 본 발명에 따르면, 배선에 존재할 수 있는 불필요한 스위치소자를 제거하여 회로의 동작 성능을 향상시킬 수 있다. 이러한 본 발명은 대칭형 현장 가공형 반도체에 대한 기존의 모든 배선기에 적용시킬 수 있는 효과가 있다.According to the present invention as described above, it is possible to improve the operation performance of the circuit by removing unnecessary switch elements that may be present in the wiring. The present invention has an effect that can be applied to all existing wiring for the symmetric field processing semiconductor.

Claims (3)

반도체회로를 구성하는 논리소자가 평면 상에 일정한 간격으로 배치되고 상기 논리소자 사이에 일정한 개수의 배선트랙이 가로와 세로방향으로 존재하며, 상기 배선트랙과 논리소자의 핀이 만나는 위치에 스위치소자가 존재하는 현장 가공형 반도체를 제조하는 방법에 있어서,Logic elements constituting a semiconductor circuit are arranged at regular intervals on a plane, and a predetermined number of wiring tracks exist in the horizontal and vertical directions between the logic elements. In the method of manufacturing the existing field-processing semiconductor, 상기 반도체회로의 연결정보를 상기 논리소자에 매핑하는 기술매핑단계와, 논리블록의 수와 총 배선길이 등이 최소화되도록 상기 논리소자를 논리블록에 배치하는 배치단계와, 상기 논리블록 간을 스위치소자와 금속선을 이용하여 연결하는 배선단계와, 상기 단계들을 통해 제조된 반도체회로의 신호 지연을 측정하여 신호 지연을 개선하고자 하는 경우 스위치소자 개수가 최소화되도록 재배선하는 배선 지연 향상단계, 및 신호 지연이 최적화된 반도체회로를 비트열 발생하여 프로그래밍하는 프로그래밍단계를 포함하고,A technology mapping step of mapping connection information of the semiconductor circuits to the logic device, an arrangement step of disposing the logic device in a logic block such that the number of logic blocks, total wiring length, etc. are minimized, and switching elements between the logic blocks And a wiring step of connecting using a metal wire, and a wiring delay improving step of rewiring so that the number of switch elements is minimized when the signal delay of the semiconductor circuit manufactured by the above steps is measured and the signal delay is improved. A programming step of generating and programming a bit string of the optimized semiconductor circuit, 상기 배선 지연 향상단계는, 상기 배선단계에서 배선된 상기 논리블록 간을 연결하는 네트를 이중 핀 네트의 서브네트 단위로 분리하는 제1단계와,The wiring delay improving step may include: a first step of separating a net connecting the logic blocks wired in the wiring step into sub-units of a double pin net; 상기 각 네트를 구성하는 각 서브네트에 트랙을 할당하고 트랙값을 부여하는 제2단계와,A second step of allocating tracks and assigning track values to respective subnets constituting the respective nets; 상기 각 서브네트와 상기 서브네트의 양단이 각각 노드와 에지로 표현된 그래프를 형성하는 제3단계와,A third step of forming a graph in which each subnet and both ends of the subnet are represented by nodes and edges, respectively; 두 개의 스위치 소자가 위치한 임의의 에지 양단에 연결된 두 서브네트가 하나의 트랙으로 연결될 수 있는 지를 판단하여, 상기 두 서브네트들 사이의 통합 여부를 판단하는 제4단계와,A fourth step of judging whether two subnets connected at both ends of an arbitrary edge where two switch elements are located can be connected by one track, and determining whether the two subnets are integrated together; 상기 제4단계에서 통합 가능한 서브네트들의 트랙위치를 조정하고 하나의 트랙값을 부여하여 두 서브네트를 통합하고 상기 에지에서 하나의 스위치소자를 제거하며 통합결과에 따른 그래프를 재형성하는 제5단계, 및A fifth step of integrating the two subnets, removing one switch element from the edge, and reconstructing the graph according to the integration result by adjusting the track position of the subnets that can be integrated in the fourth step and assigning one track value; , And 상기 모든 에지와 서브네트에 대해서 상기 제4단계와 제5단계를 수행하는 제6단계를 포함한 것을 특징으로 하는 현장 가공형 반도체를 제조하는 방법.And a sixth step of performing the fourth and fifth steps for all the edges and subnets. 제1항에 있어서, 상기 현장 가공형 반도체의 배선 지연 향상방법은 배선 후 스위치소자를 줄여 나가는 후처리 배선기법인 것을 특징으로 하는 현장 가공형 반도체를 제조하는 방법.The method of claim 1, wherein the method for improving the wiring delay of the field processing semiconductor is a post-processing wiring method for reducing the switch element after wiring. 반도체회로를 구성하는 논리소자가 평면 상에 일정한 간격으로 배치되고 상기 논리소자 사이에 일정한 개수의 배선트랙이 가로와 세로방향으로 존재하며, 상기 배선트랙과 논리소자의 핀이 만나는 위치에 스위치소자가 존재하는 현장 가공형 반도체를 제조하는 과정에서 상기 스위치소자의 개수를 최소화하기 위하여,Logic elements constituting a semiconductor circuit are arranged at regular intervals on a plane, and a predetermined number of wiring tracks exist in the horizontal and vertical directions between the logic elements. In order to minimize the number of the switch element in the process of manufacturing the existing field-processed semiconductor, 컴퓨터에,On your computer, 반도체회로의 배선트랙의 배선 정보를 판독하고 네트 단위로 모델링하는 제1단계와,A first step of reading wiring information of a wiring track of a semiconductor circuit and modeling it in a net unit; 상기 네트를 구성하는 서브네트들과 상기 서브네트의 양단이 각각 노드와 에지로 표현된 그래프를 형성하는 제2단계,A second step of forming a graph in which the subnets constituting the net and both ends of the subnet are represented by nodes and edges, respectively; 두 개의 스위치 소자가 위치한 임의의 에지 양단에 연결된 두 서브네트가 하나의 트랙으로 연결될 수 있는 지를 판단하여, 상기 두 서브네트들 사이의 통합 여부를 판단하는 제3단계,A third step of determining whether two subnets connected at both ends of an arbitrary edge where two switch elements are located can be connected to one track, and determining whether the two subnets are integrated; 상기 제3단계에서 통합 가능한 서브네트들의 트랙위치를 조정하고 하나의 트랙값을 부여하여 두 서브네트를 통합하고 상기 에지에서 하나의 스위치소자를 제거하여 통합결과에 따른 그래프를 재형성하는 제4단계,A fourth step of reconstructing the graph according to the integration result by adjusting the track position of the subnets that can be integrated in the third step, assigning one track value, integrating the two subnets, and removing one switch element from the edge; , 모든 에지에 대해 상기 제3단계와 제4단계를 반복 수행하는 제5단계, 및A fifth step of repeating the third and fourth steps for all edges, and 모든 네트에 대해 상기 제2단계 내지 제5단계를 반복 수행하는 제6단계를 포함하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program comprising a sixth step of repeating the second to fifth steps for all nets.
KR10-1999-0021542A 1999-06-10 1999-06-10 Method of improving routing delay for symmetrical FPGA KR100385862B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-1999-0021542A KR100385862B1 (en) 1999-06-10 1999-06-10 Method of improving routing delay for symmetrical FPGA

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-1999-0021542A KR100385862B1 (en) 1999-06-10 1999-06-10 Method of improving routing delay for symmetrical FPGA

Publications (2)

Publication Number Publication Date
KR20010001982A KR20010001982A (en) 2001-01-05
KR100385862B1 true KR100385862B1 (en) 2003-06-02

Family

ID=19591342

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0021542A KR100385862B1 (en) 1999-06-10 1999-06-10 Method of improving routing delay for symmetrical FPGA

Country Status (1)

Country Link
KR (1) KR100385862B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10256374A (en) * 1997-03-13 1998-09-25 Nippon Telegr & Teleph Corp <Ntt> Field programmable gate array
JPH1145939A (en) * 1997-07-24 1999-02-16 Fuji Xerox Co Ltd Field programmable gate array

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10256374A (en) * 1997-03-13 1998-09-25 Nippon Telegr & Teleph Corp <Ntt> Field programmable gate array
JPH1145939A (en) * 1997-07-24 1999-02-16 Fuji Xerox Co Ltd Field programmable gate array

Also Published As

Publication number Publication date
KR20010001982A (en) 2001-01-05

Similar Documents

Publication Publication Date Title
US6870255B1 (en) Integrated circuit wiring architectures to support independent designs
US4577276A (en) Placement of components on circuit substrates
US5583788A (en) Automatic layout design method of wirings in integrated circuit using hierarchical algorithm
US10831972B2 (en) Capacity model for global routing
JPH0473622B2 (en)
JP2003506902A (en) Power and ground routing for integrated circuits
KR970008363B1 (en) Trimming circuit
US5598343A (en) Method of segmenting an FPGA channel architecture for maximum routability and performance
JPH02177345A (en) Semiconductor integrated circuit device
US6858935B1 (en) Simulating euclidean wiring directions using manhattan and diagonal directional wires
CN100401511C (en) Integrated circuit design for routing an electrical connection
US5200580A (en) Configurable multi-chip module interconnect
JPH0644596B2 (en) Method of forming CMOS cell layout
KR100385862B1 (en) Method of improving routing delay for symmetrical FPGA
JP4610313B2 (en) Semiconductor integrated circuit design method
JPS6247148A (en) Semiconductor integrated circuit device
US4575744A (en) Interconnection of elements on integrated circuit substrate
KR0134854B1 (en) Method and apparatus for designing semiconductor device
JP2004104039A (en) Automatic layout and wiring design method for integrated circuit, automatic layout and wiring design apparatus therefor, automatic layout and wiring design system therefor, control program and readable recording medium
JPH10242283A (en) Semiconductor integrated circuit and method for layout of semiconductor integrated circuit
JPH1041393A (en) Semiconductor standard cell and method for layout and wiring
KR100275489B1 (en) How to divide a multi-pin net into a double pin net for wiring symmetrical field-processed semiconductors
JPH02121349A (en) Semiconductor integrated circuit device and its design
CN110858587B (en) Chip and power supply planning method
Johann et al. LEGAL: an algorithm for simultaneous net routing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110511

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee