KR102645072B1 - 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법 - Google Patents

매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법 Download PDF

Info

Publication number
KR102645072B1
KR102645072B1 KR1020230070265A KR20230070265A KR102645072B1 KR 102645072 B1 KR102645072 B1 KR 102645072B1 KR 1020230070265 A KR1020230070265 A KR 1020230070265A KR 20230070265 A KR20230070265 A KR 20230070265A KR 102645072 B1 KR102645072 B1 KR 102645072B1
Authority
KR
South Korea
Prior art keywords
macro
pin
pins
post
canvas
Prior art date
Application number
KR1020230070265A
Other languages
English (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 KR1020230070265A priority Critical patent/KR102645072B1/ko
Application granted granted Critical
Publication of KR102645072B1 publication Critical patent/KR102645072B1/ko

Links

Images

Classifications

    • 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/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • 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
    • 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/394Routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/092Reinforcement learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Architecture (AREA)
  • Biophysics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법을 개시한다. 본 발명은 강화학습을 통해 집적회로의 스탠다드 셀과 포트, 매크로들을 배치함에 있어 반도체 칩의 경계면으로 향하는 매크로의 핀 방향을 변경하여 배선 단계에서의 라우팅을 개선할 수 있다.

Description

매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법{POST PROCESSING APPARATUS AND METHOD FOR OPTIMIZING PIN DIRECTION OF MACRO}
본 발명은 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법에 관한 발명으로서, 더욱 상세하게는 강화학습을 통해 집적회로의 스탠다드 셀과 포트, 매크로들을 배치함에 있어 반도체 칩의 경계면으로 향하는 매크로의 핀 방향을 변경하여 배선 단계에서의 라우팅을 개선한 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법에 관한 것이다.
집적회로를 제작하기 위해서는 다양한 조건들을 만족시켜야 하고, 설계 단계에서 작업자들은 수작업으로 설계를 진행하고 있다.
작업자는 수작업을 통해 집적회로의 스탠다드 셀과 포트, 매크로들을 배치함에 있어 최적의 위치를 찾아 설계를 진행해야만 하여 작업 시간 및 인력이 증가하고, 업무 효율이 현저하게 낮아지는 문제점이 있다.
또한, 각 작업자마다 노하우가 다르기 때문에 양산 제품에 대한 결과물이 일관되지 않는 문제점이 있다.
강화 학습은 환경(environment)과 상호작용하며 목표를 달성하는 에이전트를 다루는 학습 방법으로서, 인공 지능 분야에서 많이 사용되고 있다.
도1은 일반적인 강화 학습 장치의 구성을 나타낸 블록도로서, 도 1에 나타낸 바와 같이, 에이전트(10)가 강화 학습 모델의 학습을 통해 액션(Action, 또는 행동) A를 결정하는 방법을 학습시키고, 각 액션인 A는 그 다음 상태(state) S에 영향을 끼치며, 성공한 정도는 보상(Reward) R로 측정할 수 있다.
즉, 보상은 강화 학습 모델을 통해 학습을 진행할 경우, 어떤 상태(State)에 따라 에이전트(10)가 결정하는 액션(행동)에 대한 보상 점수로서, 학습에 따른 에이전트(10)의 의사 결정에 대한 일종의 피드백이다.
환경(20)은 에이전트(10)가 취할 수 있는 행동, 그에 따른 보상 등 모든 규칙으로서, 상태, 액션, 보상 등은 모두 환경의 구성요소이고, 에이전트(10) 이외의 모든 정해진 것들이 환경이다.
이러한 강화 학습은 학습의 행동 주체인 강화 학습 에이전트(Agent)가 어떤 행동을 해야 더 많은 보상(Reward)을 받을지 알아내는 것을 목적으로 한다.
즉, 정해진 답이 없는 상태에서도 보상을 최대화시키기 위해 무엇을 할 것인가를 배우는 것으로서, 입력과 출력이 명확한 관계를 갖고 있는 상황에서 사전에 어떤 행위를 할 것인지 듣고 하는 것이 아니라, 시행착오를 거치면서 보상을 최대화시키는 것을 배우는 과정을 거친다.
또한, 에이전트는 시간 스텝이 흘러감에 따라 순차적으로 액션을 선택하게 되고, 상기 액션이 환경에 끼친 영향에 기반하여 보상을 받게 된다.
최근 들어, 반도체 설계 데이터를 이용한 강화학습을 통해 반도체 소자를 배치하는 연구가 많이 이루어지고 있다.
이러한 강화학습을 이용한 반도체 소자의 배치는 사용자의 개입 없이 고품질의 배치를 생성할 수 있도록 한다.
그러나, 종래 기술에 따른 강화학습 기반의 반도체 소자 배치에서 매크로 핀(Macro Pin)이 반도체 칩의 경계면을 향하는 문제점이 있다.
한국 등록특허공보 등록번호 제10-2208989호(발명의 명칭: 강화 학습을 통한 디바이스 배치 최적화)
이러한 문제점을 해결하기 위하여, 본 발명은 강화학습을 통해 집적회로의 스탠다드 셀과 포트, 매크로들을 배치함에 있어 반도체 칩의 경계면으로 향하는 매크로의 핀 방향을 변경하여 라우팅을 개선한 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위하여 본 발명의 일 실시 예는 매크로의 핀 방향 최적화를 위한 후처리 장치로서, 강화학습을 이용하여 디자인된 반도체 칩 설계 데이터를 입력받아 칩 캔버스에 배치된 매크로와 각 매크로의 매크로 핀 위치와 방향을 분석하되, 상기 매크로 핀의 위치 및 방향이 칩 캔버스(Chip canvas)의 외측 경계 방향으로 배치된 매크로를 추출하고, 추출된 매크로의 매크로 핀 위치와 방향을 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 변경하여 배치하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 반도체 칩 설계 데이터는 와이어 길이(Wire length)와 혼잡도(Congestion)의 보상(Reward)을 기반으로 강화학습을 이용하여 디자인된 것을 특징으로 한다.
또한, 상기 실시 예에 따른 후처리 장치는 분석된 매크로 핀의 위치 및 방향에 기반하여 매크로 핀의 위치가 겹치는 매크로를 추출하고, 상기 매크로 핀이 겹치는 매크로의 매크로 핀 방향을 변경하거나 또는 매크로 사이를 일정 거리 이격하여 배치하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 후처리 장치는 상기 디자인된 반도체 칩 설계 데이터로부터 매크로의 배치 정보를 수신하는 매크로 정보 입력부; 상기 수신된 매크로의 배치 정보를 이용하여 매크로 핀의 위치와 방향을 분석하고, 상기 분석된 매크로 핀의 위치에 기반하여 결정 경계 라인을 설정하되, 칩 캔버스의 외측 경계 방향 이외의 방향으로 배치된 매크로의 매크로 핀 중에서 상기 칩 캔버스의 외측 경계와 가장 가까운 매크로의 매크로 핀을 기준으로 결정 경계 라인을 설정하는 결정 경계 제어부; 및 상기 칩 캔버스의 외측 경계 방향으로 배치된 매크로를 추출하되, 상기 추출된 매크로의 매크로 핀이 상기 결정 경계 라인과 칩 캔버스의 외측 경계 사이에 위치하면, 상기 매크로 핀의 위치와 방향을 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 변경하여 배치하는 매크로 방향 제어부;를 포함하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 매크로 방향 제어부는 분석된 매크로 핀의 위치 및 방향에 기반하여 매크로 핀의 위치가 겹치는 매크로를 추출하고, 상기 매크로 핀이 겹치는 매크로의 방향, 매크로 핀의 방향, 매크로의 재배치 또는 매크로 사이에 임의의 오프셋 설정을 통해 일정 거리 이격하여 배치하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 매크로 방향 제어부는 와이어 길이(Wire length)와 혼잡도(Congestion)가 최소화되는 방향으로 매크로 핀의 방향을 변경하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 매크로 핀은 매크로의 롤링(Rolling), 매크로의 피칭((Pitching) 및 매크로의 요잉(Yawing) 중 어느 하나의 회전을 통해 매크로 핀의 방향이 변경되는 것을 특징으로 한다.
또한, 본 발명의 일 실시 예는 매크로의 핀 방향 최적화를 위한 후처리 방법으로서, a) 매크로 후처리부가 강화학습을 이용하여 디자인된 반도체 칩 설계 데이터로부터 매크로의 배치 정보를 수신하는 단계; b) 상기 매크로 후처리부가 수신된 매크로의 배치 정보를 이용하여 매크로 핀의 위치와 방향을 분석하고, 상기 분석된 매크로 핀의 위치에 기반하여 칩 캔버스의 외측 경계 방향 이외의 방향으로 배치된 매크로의 매크로 핀 중에서 상기 칩 캔버스의 외측 경계와 가장 가까운 매크로의 매크로 핀을 기준으로 결정 경계 라인을 설정하는 단계; 및 c) 상기 매크로 후처리부가 칩 캔버스의 외측 경계 방향으로 배치된 매크로를 추출하고, 추출된 매크로의 매크로 핀이 상기 결정 경계 라인과 칩 캔버스의 외측 경계 사이에 위치하면, 상기 매크로 핀의 위치와 방향을 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 변경하는 단계;를 포함한다.
또한, 상기 실시 예는 d) 상기 매크로 후처리부가 분석된 매크로 핀의 위치 및 방향에 기반하여 매크로 핀의 위치가 겹치는 매크로를 추출하고, 상기 매크로 핀이 겹치는 매크로의 방향, 매크로 핀의 방향, 매크로의 재배치 또는 매크로 사이에 임의의 오프셋 설정을 통해 일정 거리 이격하여 배치하는 단계;를 더 포함하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 반도체 칩 설계 데이터는 와이어 길이(Wire length)와 혼잡도(Congestion)의 보상(Reward)을 기반으로 강화학습을 이용하여 디자인된 것을 특징으로 한다.
또한, 상기 실시 예에 따른 매크로 후처리부는 와이어 길이(Wire length)와 혼잡도(Congestion)가 최소화되는 방향으로 매크로 핀의 방향을 변경하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 매크로 핀은 매크로의 롤링(Rolling), 매크로의 피칭((Pitching) 및 매크로의 요잉(Yawing) 중 어느 하나의 회전을 통해 매크로 핀의 방향이 변경되는 것을 특징으로 한다.
본 발명은 강화학습을 통해 집적회로의 스탠다드 셀과 포트, 매크로들을 배치함에 있어 반도체 칩의 경계면으로 향하는 매크로의 핀 방향을 변경하여 배선 단계에서의 라우팅을 개선할 수 있는 장점이 있다.
도 1은 일반적인 강화학습 장치의 구성을 나타낸 블록도.
도 2는 본 발명의 일 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 장치의 구성을 나타낸 예시도.
도 3은 강화학습을 통해 자동으로 배치된 매크로와 매크로 핀의 방향을 설명하기 위해 나타낸 예시도.
도 4는 도 2의 실시 예에 따른 매크로 후처리부 구성을 나타낸 블록도.
도 5는 본 발명의 일 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법을 설명하기 위해 나타낸 흐름도.
도 6은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 결정 경계 설정과정을 설명하기 위해 나타낸 흐름도.
도 7은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 매크로 방향 조정과정을 설명하기 위해 나타낸 흐름도.
도 8은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 매크로 핀이 겹치는 매크로의 조정과정을 설명하기 위해 나타낸 흐름도.
도 9는 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 매크로 방향 변경을 설명하기 위한 예시도.
도 10은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 결정 경계 설정을 설명하기 위한 예시도.
도 11은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 결정 경계 설정을 설명하기 위한 다른 예시도.
도 12는 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 매크로 겹침을 설명하기 위한 예시도.
도 13은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 매크로 겹침을 설명하기 위한 다른 예시도.
도 14는 강화학습을 통해 자동으로 매크로가 배치된 상태를 나타낸 예시도.
도 15는 도 4의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리후 매크로가 배치된 상태를 나타낸 예시도.
이하에서는 본 발명의 바람직한 실시 예 및 첨부하는 도면을 참조하여 본 발명을 상세히 설명하되, 도면의 동일한 참조부호는 동일한 구성요소를 지칭함을 전제하여 설명하기로 한다.
본 발명의 실시를 위한 구체적인 내용을 설명하기에 앞서, 본 발명의 기술적 요지와 직접적 관련이 없는 구성에 대해서는 본 발명의 기술적 요지를 흩뜨리지 않는 범위 내에서 생략하였음에 유의하여야 할 것이다.
또한, 본 명세서 및 청구범위에 사용된 용어 또는 단어는 발명자가 자신의 발명을 최선의 방법으로 설명하기 위해 적절한 용어의 개념을 정의할 수 있다는 원칙에 입각하여 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 할 것이다.
본 명세서에서 어떤 부분이 어떤 구성요소를 "포함"한다는 표현은 다른 구성요소를 배제하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.
또한, "‥부", "‥기", "‥모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어, 또는 그 둘의 결합으로 구분될 수 있다.
또한, "적어도 하나의" 라는 용어는 단수 및 복수를 포함하는 용어로 정의되고, 적어도 하나의 라는 용어가 존재하지 않더라도 각 구성요소가 단수 또는 복수로 존재할 수 있고, 단수 또는 복수를 의미할 수 있음은 자명하다 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법의 바람직한 실시예를 상세하게 설명한다.
도 2는 본 발명의 일 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 장치의 구성을 나타낸 예시도이고, 도 4는 도 2의 실시 예에 따른 매크로 후처리부 구성을 나타낸 블록도이다.
도 2 및 도 4를 참조하면, 본 발명의 일 실시 예는 매크로의 핀 방향 최적화를 위한 후처리 장치는, 매크로 후처리부(100)와, 액터(200)와, 시뮬레이터(300)를 포함하여 구성될 수 있다.
매크로 후처리부(100)는, 디자인된 반도체 칩 설계 데이터를 입력받아 칩 캔버스에 배치된 매크로와 각 매크로의 매크로 핀 위치와 방향을 분석할 수 있다.
또한, 매크로 후처리부100)는 분석된 매크로 핀의 위치 및 방향이 칩 캔버스(Chip canvas)의 외측 경계 방향으로 배치된 매크로를 추출하며, 추출된 매크로의 매크로 핀 위치와 방향을 칩 캔버스의 외측 경계 방향 이외의 방향으로 변경하여 배치할 수 있다.
여기서, 반도체 칩 설계 데이터는 2차원 그리드인 칩 캔버스(Canvas)의 크기 정보와, 매크로(Macro) 정보, 스탠다드 셀(Standard Cell) 정보, 클러스터(Cluster) 정보, IO 포트(Port)의 연결관계를 포함한 인접 행렬 정보(Adjacency matrix information)를 포함할 수 있다.
또한, 매크로 정보는 칩 캔버스 상의 매크로 위치, 매크로 핀 위치, 매크로 폭, 매크로 높이, 매크로 인덱스, 매크로 방향(Orientation) 등의 배치 정보를 포함할 수 있다.
또한, 반도체 칩 설계 데이터는 액터(200)와 시뮬레이터(300)에 의한 강화학습을 통해 디자인된 반도체 칩 설계 데이터일 수 있다.
또한, 매크로 후처리부(100)는 분석된 매크로 핀의 위치 및 방향에 기반하여 매크로 핀의 위치가 겹치는 매크로를 추출할 수 있다.
또한, 매크로 후처리부(100)는 매크로 핀이 겹치는 매크로가 추출되면, 해당 매크로 핀의 방향을 변경하거나 매크로 핀의 겹침이 발생된 매크로 사이를 일정 거리 이격하여 배치하거나 또는 칩 캔버스 상의 임의의 공간에 배치할 수도 있다.
이를 위해 매크로 후처리부(100)는 매크로 정보 입력부(110)와, 결정 경계 제어부(120)와, 매크로 방향 제어부(130)를 포함하여 구성될 수 있다.
매크로 정보 입력부(110)는 액터(200)와 시뮬레이터(300)에 의한 강화학습을 통해 디자인된 반도체 칩 설계 데이터를 수신하고, 수신된 반도체 칩 설계 데이터로부터 매크로 정보를 추출할 수 있다.
매크로와 매크로핀의 방향을 와이어 길이(Wire length)와 혼잡도(Congestion)의 보상(Reward)을 기반으로 강화학습하는 경우, 강화학습을 이용한 매크로의 자동 배치에서는 매크로의 핀 방향에 따라 와이어 길이와 혼잡도는 크게 차이가 나지 않고, 이로 인해 각 매크로와 매크로 핀의 방향이 캔버스의 경계(Boundary)로 향하는 경우가 발생된다.
도3을 참조하여 더욱 상세하게 설명하면, 도 3에 나타낸 바와 같이, 강화학습을 통해 캔버스(Canvas, 41)에 다수의 매크로(Macro, 42, 42a, 42b, 43c)와, IO 핀(43)이 자동으로 배치된 반도체 칩(40)이 생성될 수 있다.
이때, 각 매크로(42, 42a, 42b, 43c)의 매크로 핀(42', 42a', 42b', 43c') 방향이 캔버스(41)의 경계(Boundary)로 향하는 문제가 발생될 수 있다.
매크로 핀(42', 42a', 42b', 43c')의 방향이 캔버스(41)의 경계, 즉 반도체 칩(40)의 경계면을 향하는 것은 강화학습이 와이어 길이(Wire length)와 혼잡도(congestion)의 보상(Reward)을 기반으로 학습하기 때문에 발생된다.
또한, 강화학습을 이용한 매크로의 자동 배치에서는, 매크로의 핀 방향에 따라 와이어 길이와 혼잡도가 크게 차이가 나지 않기 때문에 반도체 칩의 경계면쪽으로 향하는 경우가 발생하고, 매크로 핀의 방향이 반도체 칩의 경계면을 향하게 되면, 이후 배선단계에서 선을 분배하는 라우팅이 어려워지게 된다.
다시 도2 및 도4를 참조하면, 결정 경계 제어부(120)는 매크로 정보 입력부(110)에서 추출되어 순차적으로 입력되는 매크로 정보를 이용하여 매크로 핀의 위치와 방향을 분석하고, 분석된 매크로 핀의 위치에 기반하여 결정 경계 라인을 설정할 수 있다.
즉, 결정 경계 제어부(120)는 결정 경계 라인을 설정하기 위해, 칩 캔버스에 배치된 매크로 및 매크로 핀의 방향 중에서 칩 캔버스의 외측 경계 방향 이외의 방향, 예를 들어, 칩 캔버스의 바깥쪽으로 향하지 않는 방향으로 배치된 매크로와 매크로 핀을 추출한다.
또한, 결정 경계 제어부(120)는 추출된 칩 캔버스의 외측 경계로 향하지 않는 방향으로 배치된 매크로와 매크로 핀 중에서, 칩 캔버스의 외측 경계와 가장 가까운 매크로의 매크로 핀을 추출한다.
또한, 결정 경계 제어부(120)는 칩 캔버스의 외측 경계와 가장 가까운 매크로의 매크로 핀을 기준으로 결정 경계 라인을 설정할 수 있다.
매크로 방향 제어부(130)는 칩 캔버스의 외측 경계 방향으로 배치된 매크로를 추출하되, 추출된 매크로의 매크로 핀이 결정 경계 제어부(120)에서 설정된 결정 경계 라인과 칩 캔버스의 외측 경계 사이에 위치하는지 확인할 수 있다.
또한, 매크로 방향 제어부(130)는 매크로 핀이 결정 경계 라인과 칩 캔버스의 외측 경계 사이에 위치하면, 매크로 핀의 위치와 방향을 칩 캔버스의 외측 경계 방향 이외의 방향, 즉 칩 캔버스의 내측 방향으로 변경하여 배치할 수 있다.
또한, 매크로 방향 제어부(130)는 분석된 매크로 핀의 위치 및 방향에 기반하여 설정된 결정 경계 라인과 칩 캔버스의 외측 경계 사이에 위치하지 않는 매크로 중에서 매크로 핀의 위치가 겹치는 매크로를 추출할 수 있다.
여기서, 겹치는 매크로 핀은 물리적으로 겹치는 것은 아니고, 매크로 사이의 거리가 매우 인접하여 배치된 것을 매크로 핀이 겹쳐진 것으로 판단할 수 있다.
또한, 매크로 방향 제어부(130)는 매크로 핀이 겹치는 것이 발생되면, 매크로의 매크로 핀 방향을 겹치지 않는 방향으로 변경하여 배치할 수 있다.
또한, 매크로 방향 제어부(130)는 매크로 핀이 겹치는 것이 발생되면, 매크로를 칩 캔버스 상의 임의의 위치로 이동하여 매크로 핀이 겹치지 않도록 배치할 수도 있다.
또한, 매크로 방향 제어부(130)는 매크로 핀이 겹치는 것이 발생되면, 매크로 사이에 임의의 오프셋 설정을 통해 서로 일정 거리 이격하여 매크로 핀이 겹치지 않도록 배치할 수도 있다.
또한, 매크로 방향 제어부(130)는 매크로 핀의 방향을 변경하기 전에 매크로 핀의 위치 변경에 따른 와이어 길이(Wire length)와 혼잡도(Congestion)를 산출하여 최솟값을 갖는 방향으로 매크로 핀의 방향을 변경할 수 있다.
또한, 매크로 방향 제어부(130)는 매크로 핀의 방향을 변경할 경우, 매크로의 롤링(Rolling), 매크로의 피칭((Pitching) 및 매크로의 요잉(Yawing) 중 어느 하나의 회전을 통해 매크로 핀의 방향이 변경되도록 한다.
액터(200)는 넷리스트 관련 메타 정보와, 매크로 정보가 포함된 상태(State) 정보와, 시뮬레이터로부터 제공되는 보상(Reward) 정보를 이용한 강화학습을 통해 반도체 칩 설계 데이터의 매크로 위치와 매크로 방향을 결정하는 액션을 생성한다.
시뮬레이터(300)는 액터(200)에서 결정된 액션과, 반도체 설계 데이터의 넷리스트 관련 메타 정보와, 액터(200)에서 결정된 액션을 반영한 인접 행렬 정보와, 매크로 정보를 포함한 상태(State) 정보를 기반으로 시뮬레이션을 수행할 수 있다.
또한, 시뮬레이터(300)는 액터(200)의 의사결정에 대한 피드백으로 시뮬레이션 결과에 따라 위치(Position), 방향(Orientation)을 포함한 배치 결과에 기반하여 보상(Reward) 정보를 산출하고, 산출된 보상 정보를 액터(200)로 제공한다.
다음은 본 발명의 일 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법을 설명한다.
도 5는 본 발명의 일 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법을 설명하기 위해 나타낸 흐름도이고, 도 6은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 결정 경계 설정과정을 설명하기 위해 나타낸 흐름도이며, 도 7은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 매크로 방향 조정과정을 설명하기 위해 나타낸 흐름도이고, 도 8은 도 5의 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법의 매크로 핀이 겹치는 매크로의 조정과정을 설명하기 위해 나타낸 흐름도이다.
도 3 내지 도 8을 참조하면, 본 발명의 일 실시 예에 따른 매크로의 핀 방향 최적화를 위한 후처리 방법은, 매크로 후처리부(100)가 강화학습을 이용하여 디자인된 반도체 칩 설계 데이터로부터 매크로의 배치 정보를 수신(S100)한다.
또한, 매크로 후처리부(100)는 수신된 매크로의 배치 정보를 이용하여 매크로 핀의 위치와 방향을 분석하고, 분석된 매크로 핀의 위치에 기반하여 칩 캔버스의 외측 경계 방향 이외의 방향으로 배치된 매크로의 매크로 핀 중에서 상기 칩 캔버스의 외측 경계와 가장 가까운 매크로의 매크로 핀을 기준으로 결정 경계 라인을 설정(S200)할 수 있다.
도 9를 참조하여 S200 단계를 더욱 상세하게 설명하면, 매크로 후처리부(100)는 반도체 칩 설계 데이터(500)의 칩 캔버스(510)와 복수의 매크로(520, 520a, 520b, 520c) 배치 정보를 기반으로 결정 경계 라인(511)을 설정하되, 초기값은 칩 캔버스(510)의 중앙에 결정 경계 라인(511)이 설정(S210)될 수 있다.
또한, 매크로 후처리부(100)는 매크로(520, 520a, 520b, 520c)들의 배치 정보를 기반으로 임의의 매크로(520)를 순차적으로 선택(S220)하여 칩 캔버스(510)에 배치하되, 선택된 매크로(520)의 매크로 핀(521) 위치를 분석하여 매크로 핀(521)이 배치된 매크로 핀 라인(522)을 분석(S230)한다.
S230 단계의 분석 결과, S210 단계에서 설정된 결정 경계 라인(511)이 매크로 핀 라인(522)보다 멀리 있는지 판단(S240)한다.
S240 단계의 판단 결과, 결정 경계 라인(511)이 매크로 핀 라인(522)보다 멀리 있으면, 매크로 후처리부(100)는 결정 경계 라인(511)을 매크로 핀 라인(522)으로 변경하는 업데이트를 수행(S250)하고, 가까이 있으면 현재 설정된 결정 경계 라인(511)의 위치를 유지하며, 마지막 매크로가 입력(S260)될 때가지 결정 경계 라인(511)의 위치가 업데이트 되도록 한다.
즉, S250 단계에서 매크로 후처리부(100)는 칩 캔버스(510)의 외측 경계 방향 이외의 방향으로 배치된 매크로(520, 520a, 520b, 520c)의 매크로 핀((521, 521a, 521b, 521c) 중에서 칩 캔버스(510)의 외측 경계와 가장 가까운 매크로의 매크로 핀을 기준으로 결정 경계 라인(511)이 설정되도록 한다.
미설명 부호 530은 IO 핀이다.
도 10은 최적화된 결정 경계 라인을 설명하기 위한 도면으로서, 도 10을 참조하면, 결정 경계가 최적화된 반도체 칩 설계 데이터(600)는 칩 캔버스(610)의 외측 경계에 근접하여 결정 경계 라인(620)이 설정될 수 있다.
이때, 결정 경계 라인(620)은 칩 캔버스(610)의 외측 경계 방향 이외의 방향으로 배치된 매크로(630, 630a, 630b) 중에서 칩 캔버스(610)의 외측 경계와 가장 가까운 매크로(630a)의 매크로 핀(631a)을 기준으로 결정 경계 라인(620)이 설정될 수 있고, 미설명 부호 640은 IO 핀이다.
다시 도 3 내지 도 8을 참조하면, S200 단계를 수행한 후, 매크로 후처리부(100)는 칩 캔버스의 외측 경계 방향으로 배치된 매크로를 추출하고, 추출된 매크로의 매크로 핀 위치와 방향을 칩 캔버스의 외측 경계 방향 이외의 방향으로 변경하여 배치(S300)한다.
도 11을 참조하여 S300 단계를 더욱 상세하게 설명하면, 매크로 후처리부(100)가 매크로를 선택(S310)하고, 선택된 매크로의 매크로 핀이 결정 경계 라인(620)의 바깥에 위치하는지 판단(S320)한다.
S320 단계의 판단 결과, S310 단계에서 선택된 매크로의 매크로 핀, 예를 들어 매크로(630c, 630e)의 매크로 핀(631c, 631e)이 칩 캔버스(610)의 외측 경계 방향으로 배치되었지만, 매크로 핀(631c, 631e)이 결정 경계 라인(620)의 안쪽에 위치하면, 매크로 핀(631c, 631e)의 위치는 변경하지 않는다.
또한, S320 단계의 판단 결과, 선택된 매크로(630d)의 매크로 핀(631d)이 칩 캔버스(610)의 외측 경계 방향으로 배치되고, 결정 경계 라인(620)의 바깥에 위치하면, 매크로 후처리부(100)는 매크로 핀(631d)이 칩 캔버스(610)의 외측 경계 이외의 방향, 예를 들어 칩 캔버스(610)의 내측 방향을 향하도록 매크로 핀(631d)의 위치를 변경(S330)한다.
또한, S330 단계는 매크로 핀(631d)의 방향 변경시, 방향별로 와이어 길이(Wire length)와 혼잡도(Congestion)를 산출하여 최소값을 갖는 방향으로 매크로 핀의 방향을 변경할 수 있다.
또한, S330 단계에서 매크로 핀(631d)의 방향을 변경할 경우, 매크로의 롤링(Rolling) 회전을 통한 방향 변경, 또는 매크로의 피칭((Pitching) 회전을 통한 방향 변경이 이루어지도록 한다.
또한, 매크로 후처리부(100)는 마지막 매크로가 입력되는지 판단(S340)하고, 마지막 매크로가 입력될 때까지 매크로 핀을 칩 캔버스(610)의 외측 경계 방향으로배치하여 결정 경계 라인(620)의 바깥에 위치한 매크로 핀의 방향을 변경한다.
다시 도 3 내지 도 8을 참조하면, S300 단계를 수행한 후, 매크로 후처리부(100)는 매크로 핀의 위치 및 방향에 기반하여 매크로 핀의 위치가 겹치는 매크로를 추출하고, 매크로 핀이 겹치는 매크로의 매크로 핀 방향을 변경하거나 또는 매크로 사이에 임의의 오프셋 설정을 통해 일정 거리 이격하여 배치(S400)한다.
도 12를 참조하여 S400 단계를 더욱 상세하게 설명하면, 매크로 후처리부(100)는 매크로(720, 720a, 720b, 720c, 720d, 720e, 720f, 720g)들의 배치 정보를 기반으로 임의의 매크로(720)를 선택(S410)하되, 선택된 매크로(720)의 매크로 핀(721) 위치를 분석하여 매크로 핀(721)이 배치된 매크로 핀 라인을 분석(S420)한다.
S420 단계의 분석 결과, 이전 매크로(720a)의 매크로 핀(721a)과 겹치는지 여부를 판단(S430)한다.
여기서, 매크로 핀이 겹치는지 여부는 매크로 핀이 물리적으로 겹치는 것은 아니고, 매크로 사이의 거리가 매우 인접하여 배치된 것으로 정의할 수 있다.
S430 단계에서의 매크로 핀 겹침은, 예를 들어 매크로 핀(721, 721a)이 모두 겹치거나, 매크로 핀(721b, 721c)의 일부가 겹치는 것일 수 있고, 겹치지 않는 것은 매크로 핀(721d, 721e)이 근접하여 배치되거나 또는 매크로 핀(721f, 721g)이 일정 거리 이격된 것일 수 있다.
계속해서, S430 단계의 판단 결과, 매크로 핀의 겹침이 발생되면 매크로 후처리부(100)는 매크로의 방향, 매크로 핀의 방향, 매크로의 재배치 또는 매크로 사이의 오프셋 설정을 통해 일정 거리 이격되도록 조정(S400)하여 배치한다.
도 13을 참조하면, 반도체 칩 설계 데이터(700)에서 매크로(720', 720a')의 매크로 핀(721', 721a')이 칩 캔버스(710)의 내측 방향을 향하도록 병렬로 배치하거나, 매크로(720b', 720c')의 매크로 핀(721b', 721c')가 칩 캔버스(710)의 내측을 향하도록 일정거리 이격하여 배치할 수 있다.
또한, 매크로(720d', 720e')의 매크로 핀(721d', 721e')이 일정 거리 이격된 상태에서 서로 대향하여 배치하거나 매크로(720f, 720g)의 매크로 핀(721f', 721g')이 같은 방향을 향하도록 직렬로 배치할 수도 있다.
미설명 부호 730은 IO 핀이다.
또한, S440 단계에서 매크로 후처리부(100)는 매크로 핀의 방향 변경시, 방향별로 와이어 길이와 혼잡도를 산출하여 최소값을 갖는 방향으로 매크로 핀의 방향을 변경할 수 있다.
또한, S440 단계에서 매크로 핀의 방향을 변경할 경우, 매크로의 롤링(Rolling) 회전을 통한 방향 변경, 매크로의 피칭((Pitching) 회전을 통한 방향 변경 또는 매크로의 요잉(Yawing) 회전을 통해 방향이 변경되도록 할 수 있다.
또한, 매크로 후처리부(100)는 마지막 매크로가 입력되는지 판단(S450)하여 마지막 매크로가 입력될 때까지 겹치는 매크로 핀의 방향 또는 간격을 조정한다.
이를 통해 도 14와 같이 강화학습을 통해 생성된 반도체 칩 설계 데이터(800)가 입력되면, 매크로(810, 820)와 매크로 칩(811, 821)의 방향을 분석한 후, 칩 캔버스의 외측 방향으로 배치된 매크로 중에서 미리 설정된 결정 경계 라인 바깥쪽에 위치한 매크로 칩의 방향을 도 15의 매크로(820a)와 매크로 칩(821a)과 같이 칩 캔버스의 내측 방향으로 변경하여 배치할 수 있다.
따라서, 강화학습을 통해 집적회로의 스탠다드 셀과 포트, 매크로들을 배치함에 있어 반도체 칩의 경계면으로 향하는 매크로의 핀 방향을 변경하여 배선 단계에서의 라우팅을 개선할 수 있다.
상기와 같이, 본 발명의 바람직한 실시 예를 참조하여 설명하였지만 해당 기술 분야의 숙련된 당업자라면 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
또한, 본 발명의 특허청구범위에 기재된 도면번호는 설명의 명료성과 편의를 위해 기재한 것일 뿐 이에 한정되는 것은 아니며, 실시예를 설명하는 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다.
또한, 상술된 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있으므로, 이러한 용어들에 대한 해석은 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
또한, 명시적으로 도시되거나 설명되지 아니하였다 하여도 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기재사항으로부터 본 발명에 의한 기술적 사상을 포함하는 다양한 형태의 변형을 할 수 있음은 자명하며, 이는 여전히 본 발명의 권리범위에 속한다.
또한, 첨부하는 도면을 참조하여 설명된 상기의 실시예들은 본 발명을 설명하기 위한 목적으로 기술된 것이며 본 발명의 권리범위는 이러한 실시예에 국한되지 아니한다.
100 : 매크로 후처리 부
110 : 매크로 정보 입력부
120 : 결정 경계 제어부
130 : 매크로 방향 제어부
200 : 액터
300 : 시뮬레이터
500, 600, 700, 800 : 반도체 칩 설계 데이터
510, 610, 710 : 칩 캔버스(Chip canvas)
511, 620 : 결정 경계 라인
520, 520a, 520b, 520c : 매크로
521, 521a, 521b, 521c: 매크로 핀
522 : 매크로 핀 라인
530, 640, 730 : IO 핀
630, 630a, 630b, 630c, 630d, 630e : 매크로
631, 631a, 631b, 631c, 631d, 631e : 매크로 핀
720, 720a, 720b, 720c, 720d, 720e, 720f, 720g : 매크로
720', 720a', 720b', 720c', 720d', 720e', 720f', 720g' : 매크로
721, 721a, 721b, 721c, 721d, 721e : 매크로 핀
721', 721a', 721b', 721c', 721d', 721e', 721f', 721g' : 매크로 핀
810, 810a, 820, 820a : 매크로
811, 811a, 821, 821a : 매크로 핀

Claims (12)

  1. 액터(200)와 시뮬레이터(300)에 의한 강화학습을 통해 디자인된 반도체 칩 설계 데이터로부터 매크로 정보를 수신하는 매크로 정보 입력부(110);
    상기 수신된 매크로 정보를 이용하여 매크로 핀의 위치와 방향을 분석하고, 상기 분석된 매크로 핀의 위치에 기반하여 결정 경계 라인을 설정하되, 칩 캔버스에 배치된 매크로와 매크로 핀의 방향 중에서 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 배치된 매크로와 매크로 핀을 추출하고, 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 배치된 매크로와 매크로 핀 중에서 상기 칩 캔버스의 외측 경계와 가장 가까운 매크로의 매크로 핀을 기준으로 결정 경계 라인을 설정하는 결정 경계 제어부(120); 및
    상기 칩 캔버스의 외측 경계 방향으로 배치된 매크로와 매크로 핀을 추출하되, 상기 추출된 매크로의 매크로 핀이 상기 결정 경계 라인과 칩 캔버스의 외측 경계 사이에 위치하면, 상기 칩 캔버스의 외측 경계 방향으로 배치된 매크로와 매크로 핀의 위치와 방향을 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 변경하여 배치하는 매크로 방향 제어부(130);를 포함하는 매크로의 핀 방향 최적화를 위한 후처리 장치.
  2. 제 1 항에 있어서,
    상기 반도체 칩 설계 데이터는 와이어 길이(Wire length)와 혼잡도(Congestion)의 보상(Reward)을 기반으로 강화학습을 이용하여 디자인된 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 후처리 장치는 분석된 매크로 핀의 위치 및 방향에 기반하여 매크로 핀의 위치가 겹치는 매크로를 추출하고, 상기 매크로 핀이 겹치는 매크로의 매크로 핀 방향을 변경하거나 또는 매크로 사이를 일정 거리 이격하여 배치하는 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 장치.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 매크로 방향 제어부(130)는 분석된 매크로 핀의 위치 및 방향에 기반하여 매크로 핀의 위치가 겹치는 매크로를 추출하고,
    상기 매크로 핀이 겹치는 매크로의 방향, 매크로 핀의 방향, 매크로의 재배치 또는 매크로 사이에 임의의 오프셋 설정을 통해 일정 거리 이격하여 배치하는 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 장치.
  6. 제 5 항에 있어서,
    상기 매크로 방향 제어부(130)는 와이어 길이(Wire length)와 혼잡도(Congestion)가 최소화되는 방향으로 매크로 핀의 방향을 변경하는 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 장치.
  7. 제 5 항에 있어서,
    상기 매크로 핀은 매크로의 롤링(Rolling), 매크로의 피칭((Pitching) 및 매크로의 요잉(Yawing) 중 어느 하나의 회전을 통해 매크로 핀의 방향이 변경되는 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 장치.
  8. a) 매크로 후처리부(100)의 매크로 정보 입력부(110)가 액터(200)와 시뮬레이터(300)에 의한 강화학습을 통해 디자인된 반도체 칩 설계 데이터로부터 매크로 정보를 수신하는 단계;
    b) 매크로 후처리부(100)의 결정 경계 제어부(120)가 상기 수신된 매크로 정보를 이용하여 매크로 핀의 위치와 방향을 분석하고, 상기 분석된 매크로 핀의 위치에 기반하여 칩 캔버스에 배치된 매크로와 매크로 핀의 방향 중에서 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 배치된 매크로와 매크로 핀을 추출하고, 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 배치된 매크로와 매크로 핀 중에서 상기 칩 캔버스의 외측 경계와 가장 가까운 매크로의 매크로 핀을 기준으로 결정 경계 라인을 설정하는 단계; 및
    c) 매크로 후처리부(100)의 매크로 방향 제어부(130)가 칩 캔버스의 외측 경계 방향으로 배치된 매크로와 매크로 핀을 추출하고, 상기 추출된 매크로의 매크로 핀이 상기 결정 경계 라인과 칩 캔버스의 외측 경계 사이에 위치하면, 상기 칩 캔버스의 외측 경계 방향으로 배치된 매크로와 매크로 핀의 위치와 방향을 상기 칩 캔버스의 외측 경계 방향 이외의 방향으로 변경하는 단계;를 포함하는 매크로의 핀 방향 최적화를 위한 후처리 방법.
  9. 제 8 항에 있어서,
    d) 상기 매크로의 핀 방향 최적화를 위한 후처리 방법은 매크로 후처리부(100)의 매크로 방향 제어부(130)가 분석된 매크로 핀의 위치 및 방향에 기반하여 매크로 핀의 위치가 겹치는 매크로를 추출하고, 상기 매크로 핀이 겹치는 매크로의 방향, 매크로 핀의 방향, 매크로의 재배치 또는 매크로 사이에 임의의 오프셋 설정을 통해 일정 거리 이격하여 배치하는 단계;를 더 포함하는 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 방법.
  10. 제 8 항 또는 제 9 항에 있어서,
    상기 반도체 칩 설계 데이터는 와이어 길이(Wire length)와 혼잡도(Congestion)의 보상(Reward)을 기반으로 강화학습을 이용하여 디자인된 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 방법.
  11. 제 8 항 또는 제 9 항에 있어서,
    상기 매크로 후처리부(100)의 매크로 방향 제어부(130)는 와이어 길이(Wire length)와 혼잡도(Congestion)가 최소화되는 방향으로 매크로 핀의 방향을 변경하는 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 방법.
  12. 제 8 항 또는 제 9 항에 있어서,
    상기 매크로 핀은 매크로의 롤링(Rolling), 매크로의 피칭((Pitching) 및 매크로의 요잉(Yawing) 중 어느 하나의 회전을 통해 매크로 핀의 방향이 변경되는 것을 특징으로 하는 매크로의 핀 방향 최적화를 위한 후처리 방법.
KR1020230070265A 2023-05-31 2023-05-31 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법 KR102645072B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230070265A KR102645072B1 (ko) 2023-05-31 2023-05-31 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230070265A KR102645072B1 (ko) 2023-05-31 2023-05-31 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102645072B1 true KR102645072B1 (ko) 2024-03-08

Family

ID=90235846

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230070265A KR102645072B1 (ko) 2023-05-31 2023-05-31 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102645072B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10173058A (ja) * 1996-12-12 1998-06-26 Nec Corp 配置配線方法
JP2002124571A (ja) * 2000-10-17 2002-04-26 Matsushita Electric Ind Co Ltd 半導体集積回路の配線生成方法
JP2004047516A (ja) * 2002-07-08 2004-02-12 Nec Electronics Corp 半導体集積回路装置及び半導体集積回路装置のレイアウト方法
KR102208989B1 (ko) 2017-03-24 2021-01-28 구글 엘엘씨 강화 학습을 통한 디바이스 배치 최적화
KR102420071B1 (ko) * 2021-11-18 2022-07-12 주식회사 마키나락스 인공지능 기반의 반도체 설계 자동화 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10173058A (ja) * 1996-12-12 1998-06-26 Nec Corp 配置配線方法
JP2002124571A (ja) * 2000-10-17 2002-04-26 Matsushita Electric Ind Co Ltd 半導体集積回路の配線生成方法
JP2004047516A (ja) * 2002-07-08 2004-02-12 Nec Electronics Corp 半導体集積回路装置及び半導体集積回路装置のレイアウト方法
KR102208989B1 (ko) 2017-03-24 2021-01-28 구글 엘엘씨 강화 학습을 통한 디바이스 배치 최적화
KR102420071B1 (ko) * 2021-11-18 2022-07-12 주식회사 마키나락스 인공지능 기반의 반도체 설계 자동화 방법

Similar Documents

Publication Publication Date Title
Li et al. A new paradigm for FPGA placement without explicit packing
Elgamma et al. Learn to place: FPGA placement using reinforcement learning and directed moves
US20070168067A1 (en) Production schedule creation device and method, production process control device and method, computer program, and computer-readable recording medium
Rosati et al. Modelling and optimization of fully flexible assembly systems (F‐FAS)
US8141022B2 (en) Method and apparatus for hierarchical design of semiconductor integrated circuit
EP2372585B1 (en) Method for defining fluid/solid boundary for computational fluid dynamics simulations
KR102645072B1 (ko) 매크로의 핀 방향 최적화를 위한 후처리 장치 및 방법
Huang et al. Detailed-routability-driven analytical placement for mixed-size designs with technology and region constraints
Huang et al. Detailed-routing-driven analytical standard-cell placement
CN115270687A (zh) 芯片布局方法、装置、设备及存储介质
CN105955626A (zh) 拍照搜索的方法及装置
Kost et al. Modeling of manufacturing systems and robot motions
Jiang et al. CU. POKer: placing DNNs on wafer-scale AI accelerator with optimal kernel sizing
US8006215B1 (en) Circuit clustering during placement
JP4783268B2 (ja) 半導体レイアウト設計装置
CN110851920B (zh) 一种模具压料器主筋线自动生成方法
Liu et al. Knowledge-based neural network model for FPGA logical architecture development
CN108681480B (zh) 后台应用程序管控方法、装置、存储介质及电子设备
KR102634706B1 (ko) 데드 스페이스의 최소화를 위한 집적회로 설계 장치 및 방법
CN106257464A (zh) 用于在ic布局中连接电源开关的方法
Stefanidis et al. Multi-armed bandits for autonomous timing-driven design optimization
KR102632950B1 (ko) 일반화 모델을 이용한 반도체 배치 시스템 및 방법
US7149994B1 (en) Integrated clock and input output placer
US7194722B1 (en) Cost-independent critically-based target location selection for combinatorial optimization
Bandeira et al. Fast and scalable I/O pin assignment with divide-and-conquer and hungarian matching

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant