KR102053722B1 - 적층 반도체 장치의 tsv 배치 설계 방법 및 적층 반도체 장치의 tsv 배치 설계 시스템 - Google Patents

적층 반도체 장치의 tsv 배치 설계 방법 및 적층 반도체 장치의 tsv 배치 설계 시스템 Download PDF

Info

Publication number
KR102053722B1
KR102053722B1 KR1020130025466A KR20130025466A KR102053722B1 KR 102053722 B1 KR102053722 B1 KR 102053722B1 KR 1020130025466 A KR1020130025466 A KR 1020130025466A KR 20130025466 A KR20130025466 A KR 20130025466A KR 102053722 B1 KR102053722 B1 KR 102053722B1
Authority
KR
South Korea
Prior art keywords
tsv
signal
grids
path
initial
Prior art date
Application number
KR1020130025466A
Other languages
English (en)
Other versions
KR20140112589A (ko
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 KR1020130025466A priority Critical patent/KR102053722B1/ko
Priority to US14/203,650 priority patent/US9026969B2/en
Publication of KR20140112589A publication Critical patent/KR20140112589A/ko
Application granted granted Critical
Publication of KR102053722B1 publication Critical patent/KR102053722B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L23/00Details of semiconductor or other solid state devices
    • H01L23/48Arrangements for conducting electric current to or from the solid state body in operation, e.g. leads, terminal arrangements ; Selection of materials therefor
    • 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/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Architecture (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

적층 반도체 장치의 TSV 배치 설계 방법에서는, 적층 반도체 장치에 포함되고 서로 적층되는 복수의 반도체 다이들 각각에 대하여, TSV들의 삽입 가능한 위치를 나타내는 복수의 TSV 후보 그리드들을 결정한다. 복수의 TSV 후보 그리드들에 기초하여, 적층 반도체 장치를 통과하는 복수의 신호들에 대한 연결 가능한 신호 경로들을 각각 표시하는 복수의 경로 그래프들을 생성한다. 복수의 경로 그래프들에 기초하여, 복수의 신호들에 대한 최단 신호 경로들에 상응하도록 초기 TSV 삽입 위치들을 결정한다. 초기 TSV 삽입 위치들을 검증하여, 복수의 신호들에 대한 복수의 신호 망들이 배선 가능하도록 최종 TSV 삽입 위치들을 결정한다.

Description

적층 반도체 장치의 TSV 배치 설계 방법 및 적층 반도체 장치의 TSV 배치 설계 시스템{METHOD OF DESIGNING ARRANGEMENT OF TSV IN STACKED SEMICONDUCTOR DEVICE AND DESIGNING SYSTEM FOR ARRANGEMENT OF TSV IN STACKED SEMICONDUCTOR DEVICE}
본 발명은 반도체 장치에 관한 것으로서, 더욱 상세하게는 적층 반도체 장치의 TSV 배치 설계 방법 및 적층 반도체 장치의 TSV 배치 설계 시스템에 관한 것이다.
전자 기기의 소형화 및 경량화 추세에 따라, 전자 기기에 포함되는 반도체 장치들 또한 소형화, 경량화되고 있다. 최근에는 반도체 집적 공정의 한계를 극복하고 반도체 장치의 집적도를 향상시키기 위하여, 복수의 반도체 칩들이 수직적으로 적층되는 반도체 장치, 즉 3차원 집적 회로가 연구되고 있다. 일반적으로, 3차원 집적 회로 내에 적층된 반도체 칩들은 관통 실리콘 비아(Through Silicon Via; TSV)를 이용하여 서로 전기적으로 연결될 수 있다.
본 발명의 일 목적은 최적화된 신호 경로를 가지는 적층 반도체 장치를 효율적으로 개발할 수 있는 적층 반도체 장치의 TSV 배치 설계 방법을 제공하는 것이다.
본 발명의 다른 목적은 최적화된 신호 경로를 가지는 적층 반도체 장치를 효율적으로 개발할 수 있는 적층 반도체 장치의 TSV 배치 설계 시스템을 제공하는 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법에서, 적층 반도체 장치에 포함되고 서로 적층되는 복수의 반도체 다이들 각각에 대하여, 관통 실리콘 비아(Through Silicon Via; TSV)들의 삽입 가능한 위치를 나타내는 복수의 TSV 후보 그리드(TSV candidate grid)들을 결정한다. 상기 복수의 TSV 후보 그리드들에 기초하여, 상기 적층 반도체 장치를 통과하는 복수의 신호들에 대한 연결 가능한 신호 경로들을 각각 표시하는 복수의 경로 그래프들을 생성한다. 상기 복수의 경로 그래프들에 기초하여, 상기 복수의 신호들에 대한 최단 신호 경로들에 상응하도록 초기 TSV 삽입 위치들을 결정한다. 상기 초기 TSV 삽입 위치들을 검증하여, 상기 복수의 신호들에 대한 복수의 신호 망(net)들이 배선 가능하도록 최종 TSV 삽입 위치들을 결정한다.
상기 복수의 경로 그래프들을 생성하는데 있어서, 상기 복수의 신호들 중 제1 신호에 대한 제1 출발점(source)부터 제1 도착점(sink)까지 연결 가능한 모든 제1 신호 경로들을 표시하는 제1 경로 그래프를 생성할 수 있다. 상기 복수의 신호들 중 제2 신호에 대한 제2 출발점부터 제2 도착점까지 연결 가능한 모든 제2 신호 경로들을 표시하는 제2 경로 그래프를 생성할 수 있다.
상기 제1 경로 그래프를 생성하는데 있어서, 상기 복수의 반도체 다이들 중 제1 반도체 다이에 배치되는 상기 제1 출발점 및 상기 복수의 반도체 다이들 중 제2 반도체 다이에 배치되는 상기 제1 도착점을 결정할 수 있다. 상기 복수의 TSV 후보 그리드들 중 상기 제1 반도체 다이에 배치되는 제1 TSV 후보 그리드들을 선택할 수 있다. 상기 제1 출발점과 상기 제1 TSV 후보 그리드들 각각을 직접적으로 연결할 수 있다. 상기 제1 TSV 후보 그리드들 각각과 상기 제1 도착점을 연결할 수 있다.
상기 제1 경로 그래프를 생성하는데 있어서, 상기 복수의 TSV 후보 그리드들 중 상기 제1 반도체 다이와 상기 제2 반도체 사이의 상기 제3 반도체 다이에 배치되는 제2 TSV 후보 그리드들을 더 선택할 수 있다. 이 경우, 상기 제1 TSV 후보 그리드들 각각과 상기 제1 도착점을 연결하는데 있어서, 상기 제1 TSV 후보 그리드들 각각과 상기 제2 TSV 후보 그리드들 각각을 직접적으로 연결할 수 있고, 상기 제2 TSV 후보 그리드들 각각과 상기 제1 도착점을 직접적으로 연결할 수 있다.
상기 제1 경로 그래프는 상기 제1 출발점부터 상기 제1 도착점까지를 연결하는 상기 모든 제1 신호 경로들이 상기 제1 TSV 후보 그리드들 중 하나만을 포함하도록 일방향성을 가질 수 있다.
상기 초기 TSV 삽입 위치들을 결정하는데 있어서, 상기 제1 신호 경로들 중에서 제1 최단 신호 경로를 획득하고, 상기 복수의 TSV 후보 그리드들 중에서 상기 제1 최단 신호 경로에 포함되는 제1 TSV 후보 그리드들을 상기 제1 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택할 수 있다. 상기 제2 신호 경로들 중에서 제2 최단 신호 경로를 획득하고, 상기 복수의 TSV 후보 그리드들 중에서 상기 제2 최단 신호 경로에 포함되는 제2 TSV 후보 그리드들을 상기 제2 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택할 수 있다.
상기 최종 TSV 삽입 위치들을 결정하는데 있어서, 상기 초기 TSV 삽입 위치들로 선택된 상기 제1 및 제2 TSV 후보 그리드들에 복수의 제1 TSV들을 배치하고 상기 복수의 반도체 다이들 상에 복수의 제1 배선들을 배치하여 상기 제1 및 제2 신호들에 대한 제1 및 제2 신호 망들을 형성하는 경우에, 상기 제1 및 제2 신호 망들에 대한 배선 가능성(Routability) 여부를 판단하는 검증 동작을 수행할 수 있다. 상기 검증 동작의 결과에 기초하여 상기 제1 및 제2 신호 망들이 배선 가능한 것으로 판단된 경우에, 상기 초기 TSV 삽입 위치들을 상기 최종 TSV 삽입 위치들로서 선택할 수 있다. 상기 검증 동작의 결과에 기초하여 상기 제1 및 제2 신호 망들 중 적어도 하나가 배선 불가능한 것으로 판단된 경우에, 상기 초기 TSV 삽입 위치들을 업데이트할 수 있다.
상기 복수의 반도체 다이들 각각은 배선들의 삽입 가능한 위치를 나타내는 복수의 일반 그리드(normal grid)들을 더 포함하고, 상기 복수의 제1 배선들은 상기 복수의 일반 그리드들 중 상기 제1 및 제2 신호 망들에 상응하는 제1 및 제2 일반 그리드들을 경유할 수 있다. 상기 검증 동작을 수행하는데 있어서, 상기 제1 및 제2 TSV 후보 그리드들에 배치된 상기 제1 TSV들의 개수를 카운트하여, 상기 제1 및 제2 TSV 후보 그리드들 중 허용 가능한 TSV 개수보다 많은 개수의 TSV들이 배치된 혼잡(over-congested) TSV 후보 그리드가 존재하는지 여부를 판단할 수 있다. 상기 제1 및 제2 일반 그리드들에 배치된 상기 제1 배선들의 개수를 카운트하여, 상기 제1 및 제2 일반 그리드들 중 허용 가능한 배선 개수보다 많은 개수의 배선들이 배치된 혼잡 일반 그리드가 존재하는지 여부를 판단할 수 있다.
상기 초기 TSV 삽입 위치들을 업데이트하는데 있어서, 상기 혼잡 TSV 후보 그리드 및 상기 혼잡 일반 그리드를 포함하는 혼잡 그리드들에 기초하여 혼잡도 리스트(over-congestion list)를 획득할 수 있다. 상기 혼잡도 리스트에 기초하여, 상기 제1 및 제2 신호 망들 중 재배치 우선 순위가 가장 높은 신호 망을 선택할 수 있다. 상기 복수의 경로 그래프들 중 상기 선택된 신호 망에 상응하는 경로 그래프를 변경할 수 있다. 상기 선택된 신호 망에 상응하고 상기 변경된 경로 그래프에 기초하여, 상기 초기 TSV 삽입 위치들 중 적어도 일부를 변경할 수 있다.
상기 재배치 우선 순위가 가장 높은 신호 망을 선택하는데 있어서, 상기 제1 및 제2 신호 망들 중 상기 혼잡 그리드들을 가장 많이 경유하는 신호 망을 선택할 수 있다.
상기 제1 및 제2 신호 망들이 동일한 개수의 상기 혼잡 그리드들을 경유하는 경우에, 상기 초기 TSV 삽입 위치들이 업데이트된 이후의 길이 증가량이 가장 작은 신호 망을 선택할 수 있다.
상기 선택된 신호 망에 상응하는 경로 그래프를 변경하는데 있어서, 상기 선택된 신호 망에 상응하는 경로 그래프를 선택할 수 있다. 상기 선택된 경로 그래프에서 상기 혼잡 그리드들에 상응하는 혼잡 영역을 삭제할 수 있다.
상기 초기 TSV 삽입 위치들 중 적어도 일부를 변경하는데 있어서, 상기 혼잡 영역이 삭제된 경로 그래프에 기초하여 제3 최단 신호 경로를 획득할 수 있다. 상기 제1 및 제2 TSV 후보 그리드들 중 상기 제3 최단 신호 경로에 포함되지 않는 일부를 상기 초기 TSV 삽입 위치들에서 제외하거나, 상기 제3 최단 신호 경로에 포함되고 상기 제1 및 제2 TSV 후보 그리드들과 다른 제3 TSV 후보 그리드를 상기 초기 TSV 삽입 위치들로서 선택할 수 있다.
상기 적층 반도체 장치의 TSV 배치 설계 방법에서, 상기 업데이트된 초기 TSV 삽입 위치들에 대한 검증 동작을 다시 수행하는 단계를 더 포함할 수 있다. 상기 초기 TSV 삽입 위치들을 업데이트하는 단계는, 상기 검증 동작의 결과에 기초하여 상기 제1 및 제2 신호 망들이 배선 가능한 것으로 판단될 때까지 반복적으로 수행될 수 있다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 서로 적층되는 복수의 반도체 다이들을 포함하는 적층 반도체 장치의 TSV(Through Silicon Via; TSV) 배치 설계 방법에서, 상기 복수의 반도체 다이들에 포함되는 복수의 기능 블록들의 배치와, 상기 복수의 기능 블록들의 배치에 따른 TSV들의 삽입 가능한 위치를 나타내는 복수의 TSV 후보 그리드(TSV candidate grid)들 및 상기 복수의 기능 블록들의 배치에 따른 배선들의 삽입 가능한 위치를 나타내는 복수의 일반 그리드(normal grid)들을 결정한다. 상기 복수의 TSV 후보 그리드들에 기초하여, 상기 적층 반도체 장치를 통과하는 복수의 신호들 각각의 출발점(source)부터 도착점(sink)까지 연결 가능하고 일방향성을 가지는 모든 신호 경로들을 각각 표시하는 복수의 경로 그래프들을 생성한다. 상기 복수의 경로 그래프들에 기초하여, 상기 복수의 신호들에 대한 최단 신호 경로를 형성하도록 초기 TSV 삽입 위치들을 결정한다. 상기 초기 TSV 삽입 위치들에 기초하여 상기 복수의 신호들에 대한 복수의 신호 망(net)들을 형성하는 경우에, 상기 복수의 신호 망들에 대한 배선 가능성(Routability) 여부를 판단하는 검증 동작을 수행한다. 상기 검증 동작의 결과에 기초하여 상기 복수의 신호 망들이 배선 가능한 것으로 판단된 경우에, 상기 초기 TSV 삽입 위치들을 최종 TSV 삽입 위치들로서 결정한다. 상기 검증 동작의 결과에 기초하여 상기 복수의 신호 망들 중 적어도 하나가 배선 불가능한 것으로 판단된 경우에, 상기 복수의 TSV 후보 그리드들 중 혼잡(over-congested) TSV 후보 그리드 및 상기 복수의 일반 그리드들 중 혼잡 일반 그리드에 기초하여 혼잡도 리스트(over-congestion list)를 획득하고, 상기 혼잡도 리스트에 기초하여 상기 복수의 신호 망들 중 재배치 우선 순위가 가장 높은 신호 망을 선택하고, 상기 복수의 경로 그래프들 중 상기 선택된 신호 망에 상응하는 경로 그래프를 변경하며, 상기 선택된 신호 망에 상응하고 상기 변경된 경로 그래프에 기초하여 상기 초기 TSV 삽입 위치들 중 적어도 일부를 변경함으로써, 상기 초기 TSV 삽입 위치들을 업데이트한다.
상기 다른 목적을 달성하기 위해, 본 발명의 실시예들에 따른 서로 적층되는 복수의 반도체 다이들을 포함하는 적층 반도체 장치의 TSV(Through Silicon Via; TSV) 배치 설계 시스템은 그리드 결정부, 경로 그래프 생성부, TSV 위치 결정부 및 검증부를 포함한다. 상기 그리드 결정부는 상기 복수의 반도체 다이들에 포함되는 복수의 기능 블록들의 배치와 관련된 기능 블록 배치 정보에 기초하여, 상기 복수의 반도체 다이 내에서 TSV들이 삽입 가능한 위치와 관련된 TSV 후보 그리드 정보를 생성한다. 상기 경로 그래프 생성부는 상기 TSV 후보 그리드 정보에 기초하여, 상기 적층 반도체 장치를 통과하는 복수의 신호들의 각각의 출발점(source)부터 도착점(sink)까지 연결 가능하고 일방향성을 가지는 모든 신호 경로들을 표시하는 복수의 경로 그래프들과 관련된 경로 그래프 정보를 생성한다. 상기 TSV 위치 결정부는 상기 경로 그래프 정보에 기초하여, 상기 복수의 신호들 각각에 대한 최단 신호 경로를 형성하도록 상기 적층 반도체 장치에 삽입되는 TSV들의 초기 위치와 관련된 초기 TSV 삽입 위치 정보를 생성한다. 상기 검증부는 상기 초기 TSV 삽입 위치 정보에 대한 검증 동작을 수행하여, 상기 적층 반도체 장치에 삽입되는 TSV들의 최종 위치와 관련된 최종 TSV 삽입 위치 정보를 생성하거나, 또는 상기 경로 그래프 정보 및 상기 초기 TSV 삽입 위치 정보를 업데이트하기 위한 제어 신호를 생성한다.
상기와 같은 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법 및 시스템에서는, 복수의 기능 블록들의 배치를 나타내는 플로어 플랜이 지정된 상태에서 TSV들의 삽입 위치를 결정할 수 있다. TSV 후보 그리드들, 정상 그리드들 및 경로 그래프들에 기초하여 TSV 연결 실패 및 배선 실패가 발생하지 않을 때까지 TSV 삽입 위치들에 대한 검증 동작 및 업데이트 동작을 반복함으로써, TSV 연결 실패 및 배선 실패 없이 최적화된 신호 경로를 가지는 적층 반도체 장치를 설계할 수 있다.
도 1은 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법을 나타내는 순서도이다.
도 2 및 3은 도 1의 적층 반도체 장치의 TSV 배치 설계 방법을 설명하기 위한 도면들이다.
도 4는 도 1의 복수의 경로 그래프들을 생성하는 단계의 일 예를 나타내는 순서도이다.
도 5는 도 4의 제1 경로 그래프를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 6a, 6b, 7a 및 7b는 도 5의 제1 경로 그래프를 생성하는 단계를 설명하기 위한 도면들이다.
도 8은 도 4의 제2 경로 그래프를 생성하는 단계의 일 예를 나타내는 순서도이다.
도 9a 및 9b는 도 8의 제2 경로 그래프를 생성하는 단계를 설명하기 위한 도면들이다.
도 10a 및 10b는 도 4의 제n 경로 그래프를 생성하는 단계를 설명하기 위한 도면들이다.
도 11은 도 1의 초기 TSV 삽입 위치들을 결정하는 단계의 일 예를 나타내는 순서도이다.
도 12a, 12b, 12c 및 12d는 도 11의 초기 TSV 삽입 위치들을 결정하는 단계를 설명하기 위한 도면들이다.
도 13은 도 1의 최종 TSV 삽입 위치들을 결정하는 단계의 일 예를 나타내는 순서도이다.
도 14는 도 13의 검증 동작을 수행하는 단계의 일 예를 나타내는 순서도이다.
도 15a, 15b, 15c, 16a, 16b 및 16c는 도 14의 검증 동작을 수행하는 단계를 설명하기 위한 도면들이다.
도 17은 도 13의 초기 TSV 삽입 위치들을 업데이트하는 단계의 일 예를 나타내는 순서도이다.
도 18a, 18b, 19a, 19b, 19c 및 19d는 도 17의 초기 TSV 삽입 위치들을 업데이트하는 단계를 설명하기 위한 도면들이다.
도 20은 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법을 나타내는 순서도이다.
도 21은 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 시스템을 나타내는 블록도이다.
도 22는 본 발명의 실시예들에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
한편, 어떤 실시예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도에 명기된 순서와 다르게 일어날 수도 있다. 예를 들어, 연속하는 두 블록이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 상기 블록들이 거꾸로 수행될 수도 있다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법을 나타내는 순서도이다.
본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법은, 서로 적층되는 복수의 반도체 다이들을 포함하는 적층 반도체 장치를 설계하는데 이용되며, 특히 상기 복수의 반도체 다이들을 서로 전기적으로 연결하기 위하여 반도체 다이를 관통하여 형성되는 관통 실리콘 비아(Through Silicon Via; TSV)의 삽입 위치를 결정하는데 이용될 수 있다. 이하, TSV의 삽입 위치를 결정하는 방법을 중심으로 본 발명의 실시예들을 설명하지만, 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법은 적층 반도체 장치에 포함되는 임의의 수직 배선(즉, 3차원 배선) 및/또는 평면 배선(즉, 2차원 배선)의 배치를 결정하는 경우에도 이용될 수 있다.
도 1을 참조하면, 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법에서는, 복수의 반도체 다이들에 배치되는 복수의 TSV 후보 그리드(TSV candidate grid)들을 결정한다(단계 S100). 상술한 것처럼, 상기 복수의 반도체 다이들은 상기 적층 반도체 장치에 포함되고 서로 적층된다. 상기 복수의 TSV 후보 그리드들은 상기 복수의 반도체 다이들 내에서 TSV들이 삽입 가능한 위치를 나타낸다. 일 실시예에서, 상기 복수의 반도체 다이들에 포함되는 복수의 기능 블록들의 배치가 결정된 이후에 상기 복수의 TSV 후보 그리드들이 결정될 수 있다.
상기 복수의 TSV 후보 그리드들에 기초하여, 상기 적층 반도체 장치를 통과하는 복수의 신호들에 대한 연결 가능한 신호 경로들을 각각 표시하는 복수의 경로 그래프들을 생성한다(단계 S200). 예를 들어, 상기 복수의 경로 그래프들은 상기 복수의 신호들 각각의 출발점(source)부터 도착점(sink)까지의 모든 신호 경로들을 각각 표시할 수 있다.
상기 복수의 경로 그래프들에 기초하여 초기 TSV 삽입 위치들을 결정하고(단계 S300), 상기 초기 TSV 삽입 위치들을 검증하여 최종 TSV 삽입 위치들을 결정한다(단계 S400). 예를 들어, 상기 초기 TSV 삽입 위치들은 상기 복수의 신호들 각각에 대한 최단 신호 경로에 상응하도록 결정될 수 있고, 상기 최종 TSV 삽입 위치들은 상기 복수의 신호들에 대한 복수의 신호 망(net)들이 배선 가능하도록 결정될 수 있다.
도 2 및 3은 도 1의 적층 반도체 장치의 TSV 배치 설계 방법을 설명하기 위한 도면들이다. 특히 도 2 및 3은 복수의 TSV 후보 그리드들을 결정하는 도 1의 단계 S100을 설명하기 위한 도면들이다.
도 2 및 3을 참조하면, 적층 반도체 장치(10)는 서로 적층되는 복수의 반도체 다이들(100, 200, 300)을 포함하며, 복수의 TSV 후보 그리드들(g11, g12, ..., g1x, g21, g22, ..., g2y)은 복수의 반도체 다이들(100, 200, 300)에 배치된다.
복수의 TSV 후보 그리드들(g11, ..., g1x, g21, ..., g2y)은 복수의 반도체 다이들(100, 200, 300)에 포함되는 복수의 기능 블록들의 배치에 따라 결정된다. 다시 말하면, 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법에서는, 상기 복수의 기능 블록들의 배치를 나타내는 플로어 플랜(floorplan)이 지정된 상태에서 TSV들의 삽입 위치를 결정할 수 있다. 예를 들어, 도 3에 도시된 것처럼, 반도체 다이(100)에 포함되는 기능 블록들(FB11, FB12, FB13)의 배치가 먼저 결정되고, 기능 블록들(FB11, FB12, FB13)의 배치에 따라, 즉 기능 블록들(FB11, FB12, FB13)이 배치되지 않는 영역에 TSV 후보 그리드들(g11, ..., g1x)이 결정될 수 있다. 기능 블록들(FB11, FB12, FB13)은 특정한 기능을 수행하는 구성요소들로서, 각각 CPU(central processing unit)와 메모리 컨트롤러 등이 포함되는 코어 블록, 디스플레이 컨트롤러 블록, 파일 시스템 블록, GPU(graphic processing unit) 블록, 이미지 신호 프로세서 블록, 멀티 포맷 코덱 블록 등의 하나일 수 있다.
일 실시예에서, 복수의 TSV 후보 그리드들(g11, ..., g1x, g21, ..., g2y)과 함께 복수의 일반 그리드(normal grid)들이 결정될 수 있다. 적층 반도체 장치(10)는 서로 다른 반도체 다이들에 배치되는 기능 블록들을 연결하는 TSV와 같은 수직 배선(즉, 3차원 배선)뿐 아니라, 동일한 반도체 다이 내에 배치되는 기능 블록들을 연결하는 평면 배선(즉, 2차원 배선)을 포함한다. 상기 복수의 일반 그리드들은 상기 복수의 기능 블록들의 배치에 따른 상기 평면 배선들의 삽입 가능한 위치를 나타낼 수 있다. 예를 들어, 도 3에 도시된 것처럼, 반도체 다이(100)에 포함되는 기능 블록들(FB11, FB12, FB13)의 배치에 따라, 즉 기능 블록들(FB11, FB12, FB13)이 배치되지 않는 영역에 일반 그리드들(G11, G12)이 결정될 수 있다.
한편, 복수의 반도체 다이들(100, 200, 300) 중 가장 하단에 적층되는 반도체 다이(300)에는 TSV들이 삽입되지 않을 수 있으며, 따라서 반도체 다이(300)는 상기 TSV 후보 그리드들을 포함하지 않을 수 있다.
도시하지는 않았지만, 반도체 다이(100)와 마찬가지로 반도체 다이들(200, 300) 또한 기능 블록들 및 일반 그리드들을 각각 포함할 수 있다. 또한, 도 2에서는 적층 반도체 장치(10)가 세 개의 반도체 다이들(100, 200, 300)을 포함하는 것으로 도시하였으나, 본 발명의 실시예들에 따른 방법에 기초하여 설계되는 적층 반도체 장치는 서로 적층되는 임의의 개수의 반도체 다이들을 포함할 수 있다.
도 4는 도 1의 복수의 경로 그래프들을 생성하는 단계의 일 예를 나타내는 순서도이다.
도 1 및 도 4를 참조하면, 복수의 경로 그래프들을 생성하는데 있어서, 상기 복수의 신호들 중 제1 신호에 대한 제1 출발점부터 제1 도착점까지 연결 가능한 모든 제1 신호 경로들을 표시하는 제1 경로 그래프를 생성할 수 있다(단계 S210). 이 때, 상기 모든 제1 신호 경로들은 상기 제1 출발점부터 상기 제1 도착점까지 일방향성을 가지도록 형성될 수 있으며, 이에 대해서는 도 6b, 7a 및 7b를 참조하여 후술하도록 한다.
마찬가지로, 상기 복수의 신호들 중 제2 내지 제n(n은 2 이상의 자연수) 신호들에 대한 제2 내지 제n 경로 그래프들을 생성할 수 있다. 상기 제2 신호에 대한 제2 출발점부터 제2 도착점까지 연결 가능한 모든 제2 신호 경로들을 표시하는 제2 경로 그래프를 생성하며(단계 S230), 상기 제n 신호에 대한 제n 출발점부터 제n 도착점까지 연결 가능한 모든 제n 신호 경로들을 표시하는 제n 경로 그래프를 생성할 수 있다(단계 S250).
도 5는 도 4의 제1 경로 그래프를 생성하는 단계의 일 예를 나타내는 순서도이다. 도 6a, 6b, 7a 및 7b는 도 5의 제1 경로 그래프를 생성하는 단계를 설명하기 위한 도면들이다.
도 5, 6a, 6b, 7a 및 7b를 참조하면, 제1 경로 그래프를 생성하는데 있어서, 상기 제1 신호에 대한 제1 출발점(SC1) 및 제1 도착점(SK1)을 결정할 수 있다(단계 S212). 제1 출발점(SC1)은 제1 반도체 다이(100)에 배치되며, 제1 도착점(SK1)은 제2 반도체 다이(200)에 배치될 수 있다. 도 5 및 6a의 예에서, 제1 출발점(SC1) 및 제1 도착점(SK1)은 서로 인접하는 반도체 다이들(100, 200)에 배치될 수 있다. 도 6b에 도시된 것처럼, 제1 출발점(SC1) 및 제1 도착점(SK1)은 제1 경로 그래프(PG1)의 터미널 꼭지점(즉, 시작점 및 종료점)으로 표현될 수 있다.
복수의 TSV 후보 그리드들(g11, ..., g1x, g21,..., g2y) 중에서, 제1 출발점(SC1)이 포함되는 제1 반도체 다이(100)에 배치되는 제1 TSV 후보 그리드들(g11, ..., g1x)을 선택할 수 있다(단계 S214). 도 6b에 도시된 것처럼, 제1 TSV 후보 그리드들(g11, ..., g1x)은 제1 경로 그래프(PG1)의 중간 꼭지점(즉, 경유점)들로 표현될 수 있다.
시작점인 제1 출발점(SC1)과 경유점들인 제1 TSV 후보 그리드들(g11, ..., g1x) 각각을 직접적으로 연결하고(단계 S216), 제1 TSV 후보 그리드들(g11, ..., g1x) 각각과 종료점인 제1 도착점(SK1)을 직접적으로 연결(단계 S218)함으로써, 제1 경로 그래프(PG1)를 완성할 수 있다. 이 경우, 제1 경로 그래프(PG1)는 x(x는 자연수)개의 제1 신호 경로들을 포함할 수 있다. 또한 제1 경로 그래프(PG1)에서, 꼭지점(vertex)들(SC1, SK1, g11, ..., g1x)은 출발점, 도착점 또는 TSV 후보 그리드들에 상응하며, 두 개의 꼭지점들을 연결하는 선분(edge)들은 반도체 다이 내의 평면 배선(즉, 2차원 배선)들에 상응할 수 있다.
일 실시예에서, 제1 경로 그래프(PG1)는 일방향성을 가지도록 형성될 수 있다. 다시 말하면, 제1 출발점(SC1)부터 제1 도착점(SK1)까지를 연결하는 상기 모든 제1 신호 경로들은 제1 TSV 후보 그리드들(g11, ..., g1x) 중 하나만을 포함할 수 있다. 경로 그래프가 일방향성을 가지지 않는다면, 예를 들어 도 7a에 도시된 것처럼 출발점(SC)과 도착점(SK)을 연결하는 신호 경로가 두 개 이상의 TSV 후보 그리드들(g1, g2, g3)을 경유하도록 형성되는 경우에, 불필요하게 많은 TSV들이 삽입됨으로써 라운드 트립(round trip)이 유발될 수 있다. 반면에, 경로 그래프가 일방향성을 가진다면, 예를 들어 도 7b에 도시된 것처럼 출발점(SC)과 도착점(SK)을 연결하는 신호 경로가 하나의 TSV 후보 그리드(g3)만을 경유하도록 형성되는 경우에, 가능한 한 적은 개수의 TSV가 삽입됨으로써 라운드 트립이 방지되고 신호 망의 길이가 감소될 수 있다.
도 8은 도 4의 제2 경로 그래프를 생성하는 단계의 일 예를 나타내는 순서도이다. 도 9a 및 9b는 도 8의 제2 경로 그래프를 생성하는 단계를 설명하기 위한 도면들이다.
도 8, 9a 및 9b를 참조하면, 제2 경로 그래프를 생성하는데 있어서, 상기 제2 신호에 대한 제2 출발점(SC2) 및 제2 도착점(SK2)을 결정할 수 있다(단계 S232). 제2 출발점(SC2)은 제1 반도체 다이(100)에 배치되며, 제2 도착점(SK2)은 제3 반도체 다이(300)에 배치될 수 있다. 도 8 및 9a의 예에서, 제2 출발점(SC2) 및 제2 도착점(SK2)은 서로 이격된(즉, 인접하지 않는) 반도체 다이들(100, 300)에 배치될 수 있다. 도 9b에 도시된 것처럼, 제2 출발점(SC2) 및 제2 도착점(SK2)은 제2 경로 그래프(PG2)의 터미널 꼭지점으로 표현될 수 있다.
복수의 TSV 후보 그리드들(g11, ..., g1x, g21,..., g2y) 중에서, 제2 출발점(SC2)이 포함되는 제1 반도체 다이(100)에 배치되는 제1 TSV 후보 그리드들(g11, ..., g1x)을 선택하며(단계 S234), 제1 반도체 다이(100)와 제3 반도체 다이(300) 사이의 제2 반도체 다이(200)에 배치되는 제2 TSV 후보 그리드들(g21, ..., g2y)을 선택할 수 있다(단계 S236). 도 9b에 도시된 것처럼, 제1 TSV 후보 그리드들(g11, ..., g1x) 및 제2 TSV 후보 그리드들(g21, ..., g2y)은 제2 경로 그래프(PG2)의 중간 꼭지점들로 표현될 수 있다.
시작점인 제2 출발점(SC2)과 제1 경유점들인 제1 TSV 후보 그리드들(g11, ..., g1x) 각각을 직접적으로 연결하고(단계 S238), 제1 TSV 후보 그리드들(g11, ..., g1x) 각각과 제2 경유점들인 제2 TSV 후보 그리드들(g21, ..., g2y) 각각을 직접적으로 연결하며(단계 S240), 제2 TSV 후보 그리드들(g21, ..., g2y) 각각과 종료점인 제2 도착점(SK2)을 직접적으로 연결(단계 S242)함으로써, 제2 경로 그래프(PG2)를 완성할 수 있다. 이 경우, 제2 경로 그래프(PG2)는 x*y(y는 자연수)개의 제2 신호 경로들을 포함할 수 있다. 제2 경로 그래프(PG2)는 일방향성을 가지도록 형성될 수 있다. 즉, 제2 출발점(SC2)부터 제2 도착점(SK2)까지를 연결하는 상기 모든 제2 신호 경로들은 제1 TSV 후보 그리드들(g11, ..., g1x) 중 하나 및 제2 TSV 후보 그리드들(g21, ..., g2y) 중 하나만을 각각 포함할 수 있다.
도 10a 및 10b는 도 4의 제n 경로 그래프를 생성하는 단계를 설명하기 위한 도면들이다.
도 10a 및 10b를 참조하면, 제n 경로 그래프를 생성하는 단계는 제1 경로 그래프를 생성하는 단계와 유사할 수 있다. 구체적으로, 상기 제n 신호에 대한 제n 출발점(SCn) 및 제n 도착점(SKn)을 결정할 수 있다. 제n 출발점(SCn)은 제2 반도체 다이(200)에 배치되며, 제n 도착점(SKn)은 제3 반도체 다이(300)에 배치될 수 있다. 복수의 TSV 후보 그리드들(g11, ..., g1x, g21,..., g2y) 중에서 제n 출발점(SCn)이 포함되는 제2 반도체 다이(200)에 배치되는 제2 TSV 후보 그리드들(g21, ..., g2y)을 선택할 수 있다. 제n 출발점(SCn)과 제2 TSV 후보 그리드들(g21, ..., g2y) 각각을 직접적으로 연결하고, 제2 TSV 후보 그리드들(g21, ..., g2y) 각각과 제n 도착점(SKn)을 직접적으로 연결함으로써, 제n 경로 그래프(PGn)를 완성할 수 있다. 이 경우, 제n 경로 그래프(PGn)는 y개의 제n 신호 경로들을 포함할 수 있으며, 일방향성을 가지도록 형성될 수 있다.
도 4 내지 도 10(즉, 도 10a 및 10b)을 참조하여 복수의 경로 그래프들(PG1, PG2, ..., PGn)을 생성하는 과정을 설명하였으나, 상기 경로 그래프들의 구성은 적층 반도체 장치에 포함되는 반도체 다이들의 개수, TSV 후보 그리드들의 개수, 및 상기 복수의 신호들에 대한 출발점/도착점들의 위치에 따라 다양하게 변경될 수 있다. 한편, 도 6b, 9b 및 10b에서는 상기 경로 그래프들이 상부 반도체 다이에서 하부 반도체 다이로 진행되는 일방향성을 가지는 것으로 도시하였으나, 상기 복수의 신호들에 대한 출발점/도착점들의 위치에 따라서 상기 경로 그래프들 중 적어도 일부는 하부 반도체 다이에서 상부 반도체 다이로 진행되는 일방향성을 가질 수도 있다.
도 11은 도 1의 초기 TSV 삽입 위치들을 결정하는 단계의 일 예를 나타내는 순서도이다. 도 12a, 12b, 12c 및 12d는 도 11의 초기 TSV 삽입 위치들을 결정하는 단계를 설명하기 위한 도면들이다.
도 11, 12a, 12b, 12c 및 12d를 참조하면, 초기 TSV 삽입 위치들을 결정하는데 있어서, 상기 제1 내지 제n 신호들에 대한 제1 내지 제n 신호 망들의 길이만을 고려하여(즉, 제1 내지 제n 신호 망들이 각각 최소의 길이를 가지도록) 상기 초기 TSV 삽입 위치들이 결정될 수 있다.
구체적으로, 제1 경로 그래프(PG1)에 포함되는 상기 제1 신호 경로들 중에서 제1 최단 신호 경로를 획득하고, 복수의 TSV 후보 그리드들(g11, ..., g1x, g21, ..., g2y) 중에서 상기 제1 최단 신호 경로에 포함되는 TSV 후보 그리드들을 상기 제1 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택할 수 있다(단계 S310). 예를 들어, 도 12a에 도시된 것처럼 제1 최단 신호 경로(SP1)가 획득된 경우에, 제1 최단 신호 경로(SP1)에 포함되는 TSV 후보 그리드(g1x)를 상기 제1 신호에 대한 상기 초기 TSV 삽입 위치로서 선택할 수 있다.
일 실시예에서, 다익스트라(Dijkstra) 알고리즘에 기초하여 제1 최단 신호 경로(SP1)가 획득될 수 있다. 상기 다익스트라 알고리즘은 복수 개의 점들을 포함하는 그래프에서 임의의 두 점에 대한 최단 경로를 찾는 알고리즘의 하나로서, 해당 기술 분야에서 널리 알려진 기술이므로 상세한 설명은 생략하도록 한다. 실시예에 따라서, 벨만-포드(Bellman-Ford) 알고리즘, 플로이드-워셜(Floyd-Warshall) 알고리즘 등과 같은 다양한 최단 경로 검색 알고리즘들 중 하나에 기초하여 제1 최단 신호 경로(SP1)가 획득될 수도 있다.
마찬가지로, 상기 제2 내지 제n 신호들에 대한 상기 초기 TSV 삽입 위치들이 선택될 수 있다. 제2 경로 그래프(PG2)에 포함되는 상기 제2 신호 경로들 중에서 제2 최단 신호 경로를 획득하고, 복수의 TSV 후보 그리드들(g11, ..., g1x, g21, ..., g2y) 중에서 상기 제2 최단 신호 경로에 포함되는 TSV 후보 그리드들을 상기 제2 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택할 수 있다(단계 S330). 예를 들어, 도 12b에 도시된 것처럼 제2 최단 신호 경로(SP2)가 획득된 경우에, 제2 최단 신호 경로(SP2)에 포함되는 TSV 후보 그리드들(g11, g22)을 상기 제2 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택할 수 있다. 제n 경로 그래프(PGn)에 포함되는 상기 제n 신호 경로들 중에서 제n 최단 신호 경로를 획득하고, 복수의 TSV 후보 그리드들(g11, ..., g1x, g21, ..., g2y) 중에서 상기 제n 최단 신호 경로에 포함되는 TSV 후보 그리드들을 상기 제n 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택할 수 있다(단계 S350). 예를 들어, 도 12c에 도시된 것처럼 제n 최단 신호 경로(SPn)가 획득된 경우에, 제n 최단 신호 경로(SPn)에 포함되는 TSV 후보 그리드(g21)를 상기 제n 신호에 대한 상기 초기 TSV 삽입 위치로서 선택할 수 있다. 상기 제2 내지 제n 최단 신호 경로들 또한 다양한 최단 경로 검색 알고리즘들 중 하나에 기초하여 획득될 수 있다.
적층 반도체 장치(10)를 통과하는 상기 제1 내지 제n 신호들에 대한 상기 초기 TSV 삽입 위치가 모두 선택된 이후에, 도 12d에 도시된 것처럼 상기 초기 TSV 삽입 위치들로서 선택된 TSV 후보 그리드들(g11, g1x, g21, g22)에 TSV들을 배치하고, 출발점/도착점들 및 삽입된 TSV들의 위치에 따라서 복수의 반도체 다이들(100, 200, 300) 상에 평면 배선들을 배치함으로써, 상기 제1 내지 제n 신호들에 대한 상기 제1 내지 제n 신호 망들이 형성될 수 있다. 도 12d에 도시하지는 않았지만, 상기 평면 배선들은 도 3에 도시된 것과 같은 일반 그리드들(G11, G12)을 경유하도록 배치될 수 있다.
도 13은 도 1의 최종 TSV 삽입 위치들을 결정하는 단계의 일 예를 나타내는 순서도이다.
도 13을 참조하면, 최종 TSV 삽입 위치들을 결정하는데 있어서, 상기 제1 내지 제n 신호 망들의 길이뿐 아니라 배선 가능성(Routability)도 함께 고려하여(즉, 제1 내지 제n 신호 망들이 각각 정상적으로 구현 가능하도록) 상기 최종 TSV 삽입 위치들이 결정될 수 있다.
구체적으로, 상기 제1 내지 제n 신호 망들에 대한 배선 가능성 여부를 판단하는 검증 동작을 수행할 수 있다(단계 S410). 도 12d에 도시하지는 않았지만, 상기 초기 TSV 삽입 위치에 기초하여 상기 제1 내지 제n 신호 망들이 형성되는 경우에, 하나의 TSV 후보 그리드에 여러 개의 TSV들이 배치될 수도 있고(즉, TSV 연결 실패) 하나의 일반 그리드에 여러 개의 평면 배선들이 배치될 수도 있다(즉, 배선 실패). 이 때, TSV 후보 그리드 또는 일반 그리드에 허용 가능한 개수보다 많은 개수의 TSV들 또는 평면 배선들이 배치되는 경우에, 상기 제1 내지 제n 신호 망들 중 적어도 하나 및 이를 포함하는 적층 반도체 장치는 정상적으로 구현될 수 없다. 따라서 상기 검증 동작을 수행함으로써, 길이가 최소화되면서 배선 실패가 발생하지 않도록, 즉 최적화된 신호 경로를 가지도록 상기 최종 TSV 삽입 위치들을 결정할 수 있다. 상기 TSV 후보 그리드들 및 상기 일반 그리드들에 대한 혼잡도(congestion)를 조사하여 상기 검증 동작이 수행될 수 있으며, 이에 대해서는 도 14, 15a, 15b, 15c, 16a, 16b 및 16c를 참조하여 상세하게 후술하도록 한다.
상기 검증 동작의 결과에 기초하여 상기 제1 내지 제n 신호 망들이 배선 가능한 것으로 판단된 경우에(단계 S410: 예), 도 1의 단계 S300에서 결정된 상기 초기 TSV 삽입 위치들을 상기 최종 TSV 삽입 위치들로서 선택할 수 있다(단계 S430).
상기 검증 동작의 결과에 기초하여 상기 제1 내지 제n 신호 망들 중 적어도 하나가 배선 불가능한 것으로 판단된 경우에(단계 S410: 아니오), 상기 초기 TSV 삽입 위치들을 업데이트할 수 있다(단계 S450). 예를 들어, 상기 TSV 후보 그리드들 및 상기 일반 그리드들에 대한 혼잡도에 기초하여 상기 초기 TSV 삽입 위치들 중 적어도 일부를 변경할 수 있다. 상기 업데이트 동작에 대해서는 도 17, 18a, 18b, 19a, 19b, 19c 및 19d를 참조하여 상세하게 후술하도록 한다.
상기 업데이트 동작 이후에 단계 S410을 다시 수행할 수 있다. 즉, 상기 업데이트된 초기 TSV 삽입 위치들에 대한 검증 동작을 다시 수행할 수 있다. 상기 검증 동작의 결과에 기초하여 상기 제1 내지 제n 신호 망들이 모두 배선 가능한 것으로 판단될 때까지 상기 검증 동작 및 상기 업데이트 동작이 반복적으로 수행될 수 있다.
도 14는 도 13의 검증 동작을 수행하는 단계의 일 예를 나타내는 순서도이다. 도 15a, 15b, 15c, 16a, 16b 및 16c는 도 14의 검증 동작을 수행하는 단계를 설명하기 위한 도면들이다.
도 12d, 14, 15a, 15b, 15c, 16a, 16b 및 16c를 참조하면, 상기 제1 내지 제n 신호 망들에 대한 배선 가능성 여부를 판단하는 상기 검증 동작을 수행하는데 있어서, 상기 초기 TSV 삽입 위치들로 선택된 TSV 후보 그리드들(g11, g1x, g21, g22)에 배치된 TSV들의 개수를 카운트하여, 혼잡(over-congested) TSV 후보 그리드가 존재하는지 여부를 판단할 수 있다(단계 S412). 상기 혼잡 TSV 후보 그리드는 상기 초기 TSV 삽입 위치들로 선택된 TSV 후보 그리드들(g11, g1x, g21, g22) 중 허용 가능한 TSV 개수(예를 들어, 기준 TSV 개수)보다 많은 개수의 TSV들이 배치되는 TSV 후보 그리드를 나타낸다. 상기 허용 가능한 TSV 개수는 TSV 후보 그리드들의 면적, 및 반도체 제조 공정 조건에 따른 TSV의 크기에 기초하여 결정될 수 있다.
예를 들어, 도 15a에 도시된 것처럼 TSV 후보 그리드(g11)에는 4개의 TSV들이 배치 가능할 수 있다. 즉, TSV 후보 그리드(g11)의 허용 가능한 TSV 개수는 4개일 수 있다. 하지만, 상기 초기 TSV 삽입 위치들에 기초하여 상기 제1 내지 제n 신호 망들이 형성되는 경우에, 도 15b에 도시된 것처럼 TSV 후보 그리드(g11)에는 6개의 TSV들(ATSVs)이 할당될 수 있다. 이 경우, 도 15c에 도시된 것처럼 할당된 6개의 TSV들(ATSVs) 중에서 4개의 TSV들은 TSV 후보 그리드(g11) 내에 배치될 수 있지만 나머지 2개의 TSV들(OTSVs)은 TSV 후보 그리드(g11) 내에 배치될 수 없으며, 따라서 상기 제1 내지 제n 신호 망들 중 적어도 하나가 정상적으로 구현되지 않을 수 있다.
상기 혼잡 TSV 후보 그리드가 존재하지 않는 것으로 판단된 경우에(단계 S412: 아니오), 상기 초기 TSV 삽입 위치들에 기초하여 일반 그리드들에 배치된 평면 배선들의 개수를 카운트하여, 혼잡 일반 그리드가 존재하는지 여부를 판단할 수 있다(단계 S414). 상기 혼잡 일반 그리드는 상기 일반 그리드들 중 허용 가능한 배선 개수(예를 들어, 기준 배선 개수)보다 많은 개수의 평면 배선들이 배치되는 일반 그리드를 나타낸다. 상기 허용 가능한 배선 개수는 일반 그리드들의 면적, 및 반도체 제조 공정 조건에 따른 평면 배선의 폭에 기초하여 결정될 수 있다.
예를 들어, 도 16a에 도시된 것처럼 일반 그리드(G31)에는 4개의 평면 배선들이 배치 가능할 수 있다. 즉, 일반 그리드(G31)의 허용 가능한 배선 개수는 4개일 수 있다. 하지만, 상기 초기 TSV 삽입 위치들에 기초하여 상기 제1 내지 제n 신호 망들이 형성되는 경우에, 도 16b에 도시된 것처럼 일반 그리드(G31)에는 5개의 평면 배선들(AWIREs)이 할당될 수 있다. 이 경우, 도 16c에 도시된 것처럼 할당된 5개의 평면 배선들(AWIREs) 중에서 4개의 평면 배선들은 일반 그리드(G31) 내에 배치될 수 있지만 나머지 1개의 평면 배선(OWIRE)은 일반 그리드(G31) 내에 배치될 수 없으며, 따라서 상기 제1 내지 제n 신호 망들 중 적어도 하나가 정상적으로 구현되지 않을 수 있다.
상기 혼잡 일반 그리드가 존재하지 않는 것으로 판단된 경우에(단계 S414: 아니오), 즉 상기 혼잡 TSV 후보 그리드 및 상기 혼잡 일반 그리드를 포함하는 혼잡 그리드들이 존재하지 않는 경우에, 도 13의 단계 S430을 수행하여 상기 초기 TSV 삽입 위치들을 상기 최종 TSV 삽입 위치들로서 선택할 수 있다.
상기 혼잡 TSV 후보 그리드가 존재하는 것으로 판단되거나(단계 S412: 예) 상기 혼잡 일반 그리드가 존재하는 것으로 판단된 경우에(단계 S414: 예), 즉 상기 혼잡 그리드들이 적어도 하나 존재하는 경우에, 도 13의 단계 S450을 수행하여 상기 초기 TSV 삽입 위치들을 업데이트할 수 있다.
실시예에 따라서, 단계 S412 및 S414는 순차적으로 수행될 수도 있고, 실질적으로 동시에 수행될 수도 있다. 단계 S412 및 S414가 순차적으로 수행되는 경우에, 도 14에 도시된 것처럼 단계 S412가 먼저 수행될 수도 있으며, 도시하지는 않았지만 단계 S414가 먼저 수행될 수도 있다.
도 17은 도 13의 초기 TSV 삽입 위치들을 업데이트하는 단계의 일 예를 나타내는 순서도이다. 도 18a, 18b, 19a, 19b, 19c 및 19d는 도 17의 초기 TSV 삽입 위치들을 업데이트하는 단계를 설명하기 위한 도면들이다.
도 17, 18a, 18b, 19a, 19b, 19c 및 19d를 참조하면, 상기 초기 TSV 삽입 위치들을 업데이트하는데 있어서, 상기 혼잡 TSV 후보 그리드 및 상기 혼잡 일반 그리드를 포함하는 상기 혼잡 그리드들에 기초하여 혼잡도 리스트(over-congestion list)를 획득할 수 있다(단계 S452). 상기 혼잡도 리스트는 상기 혼잡 그리드들의 이름들 및 각 혼잡 그리드를 경유하는 신호 망들의 이름들을 포함할 수 있다. 예를 들어, 상기 혼잡도 리스트는 도 18a에 도시된 것처럼 획득될 수 있다. 도 18a의 예에서, 신호 망들(net2, net7, net12, ...)이 혼잡 TSV 후보 그리드(CTG)인 g11을 경유하며, 신호 망들(net2, net5, ...)이 혼잡 일반 그리드(CNG)인 G31을 경유할 수 있다.
상기 혼잡도 리스트에 기초하여, 상기 복수의 신호 망들 중 재배치 우선 순위가 가장 높은 신호 망을 선택할 수 있다(단계 S454). 예를 들어, 상기 복수의 신호 망들 중 상기 혼잡 그리드들을 가장 많이 경유하는 신호 망을 상기 재배치 우선 순위가 가장 높은 신호 망으로서 선택할 수 있다. 도 18a의 예에서, 제2 신호 망(net2)은 두 개의 혼잡 그리드들(g11, G31)을 경유하며, 신호 망들(net5, net7, net12)은 각각 하나의 혼잡 그리드(g11 또는 G31)를 경유한다. 제2 신호 망(net2)이 다른 신호 망들(net5, net7, net12)보다 많은 혼잡 그리드들을 통과하므로, 상기 재배치 우선 순위가 가장 높은 신호 망으로서 제2 신호 망(net2)이 선택될 수 있다.
일 실시예에서, 상기 혼잡 그리드들을 가장 많이 경유하는 신호 망이 적어도 두 개 이상 존재하는 경우에, 상기 적어도 두 개의 신호 망들 중에서 상기 초기 TSV 삽입 위치들이 업데이트된 이후의 길이 증가량이 가장 작은 신호 망을 상기 재배치 우선 순위가 가장 높은 신호 망으로서 선택할 수 있다. 예를 들어, 업데이트 동작이 수행되는 경우에 각 신호 망들에 대한 길이 증가량을 나타내는 리스트가 도 18b에 도시된 것처럼 획득될 수 있다. 도 18b의 예에서, 신호 망들(net2, net4, net9, ...)이 각각 동일한 개수(예를 들어, 2개)의 혼잡 그리드들을 경유할 수 있다. 이 경우, 신호 망들(net2, net4, net9, ...) 각각에 대하여, 상기 초기 TSV 삽입 위치들이 업데이트된 이후에 배선의 길이 증가량을 계산하고 이를 오름차순으로 정렬할 수 있다. 가장 위쪽에 배치된, 즉 상기 초기 TSV 삽입 위치들이 업데이트된 이후에 배선의 길이 증가량이 가장 작은 제2 신호 망(net2)이 상기 재배치 우선 순위가 가장 높은 신호 망으로서 선택될 수 있다.
도 1의 단계 S200에서 생성된 상기 복수의 경로 그래프들 중, 상기 재배치 우선 순위가 가장 높은 신호 망으로서 선택된 신호 망에 상응하는 경로 그래프를 변경할 수 있다(단계 S456). 구체적으로, 상기 선택된 신호 망에 상응하는 경로 그래프를 선택하며, 상기 선택된 경로 그래프에서 상기 혼잡 그리드들에 상응하는 혼잡 영역을 삭제할 수 있다.
예를 들어, 도 18a 및 18b를 참조하여 상술한 것처럼, 가장 많은 혼잡 그리드들(g11, G31)을 경유하는 제2 신호 망(net2)이 선택된 경우에, 제2 신호 망(net2)에 상응하는(즉, 상기 제2 신호에 상응하는) 제2 경로 그래프(도 9b의 PG2)를 선택할 수 있다. 도 19a에 도시된 것처럼, 혼잡 TSV 후보 그리드(g11)는 제1 반도체 다이(100)에 배치되며, 혼잡 일반 그리드(G31)는 제3 반도체 다이(300)에 배치될 수 있다.
제2 경로 그래프(PG2)에서 혼잡 그리드들(g11, G31)에 상응하는 상기 혼잡 영역을 삭제할 수 있다. 예를 들어, 혼잡 TSV 후보 그리드(g11)에 상응하는 중간 꼭지점(g11) 및 중간 꼭지점(g11)과 연결되는 선분들을 삭제하고 혼잡 일반 그리드(G31)에 상응하는 선분을 삭제함으로써, 도 19b에 도시된 것처럼 업데이트된 제2 경로 그래프(PG2')를 획득할 수 있다.
상기 재배치 우선 순위가 가장 높은 신호 망으로서 선택된 신호 망에 상응하고 단계 S456에서 변경된 경로 그래프에 기초하여, 상기 초기 TSV 삽입 위치들 중 적어도 일부를 변경할 수 있다(단계 S458). 구체적으로, 상기 혼잡 영역이 삭제된 경로 그래프에 기초하여 업데이트된 최단 신호 경로를 획득하며, 상기 업데이트된 최단 신호 경로에 기초하여 상기 복수의 TSV 후보 그리드들 중 일부를 상기 초기 TSV 삽입 위치들에서 제외하거나 및/또는 상기 복수의 TSV 후보 그리드들 중 일부를 상기 초기 TSV 삽입 위치들로서 선택할 수 있다.
예를 들어, 도 19b를 참조하여 상술한 것처럼 업데이트된 제2 경로 그래프(PG2')가 획득된 경우에, 도 19c에 도시된 것처럼 업데이트된 제2 경로 그래프(PG2')에 대한 업데이트된 제2 최단 신호 경로(SP2')를 획득할 수 있다. 업데이트된 제2 최단 신호 경로(SP2') 또한 도 11을 참조하여 상술한 다양한 최단 경로 검색 알고리즘들 중 하나에 기초하여 획득될 수 있다.
도 19d에 도시된 것처럼, 상기 제2 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택된 TSV 후보 그리드들(g11, g22) 중에서, 업데이트된 제2 최단 신호 경로(SP2')에 포함되지 않는 TSV 후보 그리드들(g11, g22)을 상기 초기 TSV 삽입 위치들에서 제외하고, 업데이트된 제2 최단 신호 경로(SP2')에 포함되는 TSV 후보 그리드들(g12, g2y)을 상기 초기 TSV 삽입 위치들로서 선택함으로써, 상기 초기 TSV 삽입 위치들을 업데이트할 수 있다.
상기 초기 TSV 삽입 위치들(예를 들어, g11, g22)에 기초하여 형성되는 제2 신호 망(도 12d)과 비교하였을 때, 상기 업데이트된 TSV 삽입 위치들(예를 들어, g12, g2y)에 기초하여 형성되는 제2 신호 망은(도 19d) 혼잡 그리드들을 회피하도록 구현될 수 있으며, 따라서 적층 반도체 장치는 TSV 연결 실패 및/또는 배선 실패 없이 최적화된 신호 경로를 가지도록 설계될 수 있다.
도 17 내지 도 19(즉, 도 19a 내지 19d)에서는 하나의 신호 망을 선택하여 초기 TSV 삽입 위치들을 업데이트하는 것으로 설명하였으나, 실시예에 따라서 재배치 우선 순위가 가장 높은 적어도 두 개의 신호 망들을 선택하여 초기 TSV 삽입 위치들을 업데이트할 수도 있다.
도 20은 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법을 나타내는 순서도이다.
도 20을 참조하면, 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 방법에서는, 상기 적층 반도체 장치 내에서 서로 적층되는 복수의 반도체 다이들에 포함되는 복수의 기능 블록들의 배치와, 상기 복수의 기능 블록들의 배치에 따른 복수의 TSV 후보 그리드들 및 복수의 일반 그리드들을 결정한다(단계 S1100). 상기 복수의 TSV 후보 그리드들에 기초하여, 상기 적층 반도체 장치를 통과하는 복수의 신호들 각각의 출발점부터 도착점까지 연결 가능하고 일방향성을 가지는 모든 신호 경로들을 각각 표시하는 복수의 경로 그래프들을 생성한다(단계 S1200). 상기 복수의 경로 그래프들에 기초하여, 상기 복수의 신호들 각각에 대한 최단 신호 경로를 형성하도록 초기 TSV 삽입 위치들을 결정한다(단계 S1300). 단계 S1100은 도 1의 단계 S100과 실질적으로 동일하며, 도 2 및 3을 참조하여 상술한 것처럼 수행될 수 있다. 단계 S1200은 도 1의 단계 S200과 실질적으로 동일하며, 도 4 내지 도 10(즉, 도 10a 및 10b)을 참조하여 상술한 것처럼 수행될 수 있다. 단계 S1300은 도 1의 단계 S300과 실질적으로 동일하며, 도 11, 12a, 12b, 12c 및 12d를 참조하여 상술한 것처럼 수행될 수 있다.
상기 초기 TSV 삽입 위치들에 기초하여 상기 복수의 신호들에 대한 복수의 신호 망들을 형성하는 경우에, 상기 복수의 신호 망들에 대한 배선 가능성 여부를 판단하는 검증 동작을 수행한다(단계 S1410). 상기 검증 동작의 결과에 기초하여 상기 복수의 신호 망들이 배선 가능한 것으로 판단된 경우에(단계 S1410: 예), 상기 초기 TSV 삽입 위치들을 최종 TSV 삽입 위치들로서 결정한다(단계 S1430). 상기 검증 동작의 결과에 기초하여 상기 복수의 신호 망들 중 적어도 하나가 배선 불가능한 것으로 판단된 경우에(단계 S1410: 아니오), 상기 초기 TSV 삽입 위치들을 업데이트한다(단계 S1450). 구체적으로, 상기 복수의 TSV 후보 그리드들 중 혼잡 TSV 후보 그리드 및 상기 복수의 일반 그리드들 중 혼잡 일반 그리드에 기초하여 혼잡도 리스트를 획득하고, 상기 혼잡도 리스트에 기초하여 상기 복수의 신호 망들 중 재배치 우선 순위가 가장 높은 신호 망을 선택하고, 상기 복수의 경로 그래프들 중 상기 선택된 신호 망에 상응하는 경로 그래프를 변경하며, 상기 선택된 신호 망에 상응하고 상기 변경된 경로 그래프에 기초하여 상기 초기 TSV 삽입 위치들 중 적어도 일부를 변경함으로써, 상기 초기 TSV 삽입 위치들을 업데이트한다. 단계 S1410, S1430 및 S1450은 도 1의 단계 S400과 실질적으로 동일하며, 도 13 내지 19(즉, 도 19a, 19b, 19c 및 19d)를 참조하여 상술한 것처럼 수행될 수 있다.
도 21은 본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 시스템을 나타내는 블록도이다.
도 21을 참조하면, 적층 반도체 장치의 TSV 배치 설계 시스템(500)은 그리드 결정부(510), 경로 그래프 생성부(520), TSV 위치 결정부(530), 검증부(540) 및 저장부(550)를 포함한다.
그리드 결정부(510)는 기능 블록 배치 정보(FBI)에 기초하여 TSV 후보 그리드 정보(TGI)를 생성한다. 기능 블록 배치 정보(FBI)는 적층 반도체 다이 내의 복수의 반도체 다이들에 포함되는 복수의 기능 블록들의 배치와 관련된 정보이며, TSV 후보 그리드 정보(TGI)는 상기 복수의 반도체 다이 내에서 TSV들이 삽입 가능한 위치와 관련된 정보이다. 상술한 것처럼, 본 발명의 실시예들에서는 상기 복수의 기능 블록들의 배치를 나타내는 플로어 플랜이 지정된 상태에서 TSV들의 삽입 위치를 결정하므로, 기능 블록 배치 정보(FBI)는 미리 결정된 상태로 제공될 수 있다. 일 실시예에서, 그리드 결정부(510)는 기능 블록 배치 정보(FBI)에 기초하여 일반 그리드 정보(NGI)를 더 발생할 수 있다. 일반 그리드 정보(NGI)는 상기 복수의 반도체 다이 내에서 평면 배선들이 삽입 가능한 위치와 관련된 정보일 수 있다.
경로 그래프 생성부(520)는 TSV 후보 그리드 정보(TGI)에 기초하여 경로 그래프 정보(PGI)를 생성한다. 경로 그래프 정보(PGI)는 복수의 경로 그래프들과 관련된 정보이며, 상기 복수의 경로 그래프들은 상기 적층 반도체 장치를 통과하는 복수의 신호들의 출발점부터 도착점까지의 모든 신호 경로들을 표시하고 일방향성을 가지는 그래프들이다. 실시예에 따라서, 경로 그래프 정보(PGI)는 TSV 후보 그리드 정보(TGI) 및 일반 그리드 정보(NGI)에 기초하여 생성될 수도 있다.
TSV 위치 결정부(530)는 경로 그래프 정보(PGI)에 기초하여 초기 TSV 삽입 위치 정보(ITPI)를 생성한다. 초기 TSV 삽입 위치 정보(ITPI)는 상기 적층 반도체 장치에 삽입되는 TSV들의 초기 위치와 관련된 정보이며, 상기 복수의 신호들 각각에 대한 최단 신호 경로를 형성하도록 결정된다.
검증부(540)는 초기 TSV 삽입 위치 정보(ITPI)에 대한 검증 동작을 수행하여 최종 TSV 삽입 위치 정보(FTPI) 또는 제어 신호(CS)를 생성한다. 상기 검증 동작은, 초기 TSV 삽입 위치 정보(ITPI)에 기초하여 상기 복수의 신호들에 대한 복수의 신호 망들을 형성하는 경우에, 상기 복수의 신호 망들에 대한 배선 가능성 여부를 판단하는 동작이다.
상기 검증 동작의 결과에 기초하여 상기 복수의 신호 망들이 배선 가능한 것으로 판단된 경우에, 검증부(540)는 최종 TSV 삽입 위치 정보(FTPI)를 생성할 수 있다. 최종 TSV 삽입 위치 정보(FTPI)는 상기 적층 반도체 장치에 삽입되는 TSV들의 최종 위치(예를 들어, 최적화된 위치)와 관련된 정보이다. 상기 검증 동작의 결과에 기초하여 상기 복수의 신호 망들 중 적어도 하나가 배선 불가능한 것으로 판단된 경우에, 검증부(540)는 제어 신호(CS)를 생성할 수 있다. 제어 신호(CS)에 기초하여 경로 그래프 정보(PGI)에 포함되는 경로 그래프들이 업데이트되며, 업데이트된 경로 그래프에 기초하여 초기 TSV 삽입 위치 정보(ITPI)에 포함되는 TSV들의 초기 위치가 업데이트될 수 있다. 상기 검증 동작 및 상기 업데이트 동작은 상기 복수의 신호 망들이 모두 배선 가능할 때까지 반복 수행될 수 있다.
저장부(550)는 그리드 결정부(510), 경로 그래프 생성부(520), TSV 위치 결정부(530) 및 검증부(540)에서 수행되는 연산 결과 및/또는 시뮬레이션 결과들을 저장할 수 있다.
실시예에 따라서, 그리드 결정부(510), 경로 그래프 생성부(520), TSV 위치 결정부(530) 및 검증부(540)의 전부 또는 일부는 CPU와 같은 프로세서에 의해 실행 가능한 프로그램의 형태로 구현되거나 하드웨어로 구현될 수 있다.
본 발명의 실시예들에 따른 적층 반도체 장치의 TSV 배치 설계 시스템(500)은 도 1 내지 20을 참조하여 설명한 적층 반도체 장치의 TSV 배치 설계 방법에 기초하여 구동됨으로써, TSV 연결 실패 및 배선 실패 없이 최적화된 신호 경로를 가지는 적층 반도체 장치를 설계할 수 있다.
도 22는 본 발명의 실시예들에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
도 22를 참조하면, 컴퓨팅 시스템(1000)은 프로세서(1010), 메모리 장치(1020), 디스플레이 장치(1030), 저장 장치(1040), 입출력 장치(1050) 및 파워 서플라이(1060)를 포함할 수 있다. 한편, 도 22에 도시되지는 않았지만, 컴퓨팅 시스템(1000)은 비디오 카드, 사운드 카드, 메모리 카드, USB 장치 등과 통신하거나, 또는 다른 전자 기기들과 통신할 수 있는 포트(port)들을 더 포함할 수 있다.
프로세서(1010)는 특정 계산들 또는 태스크(task)들을 수행할 수 있다. 실시예에 따라서, 프로세서(1010)는 마이크로프로세서(micro-processor) 또는 중앙 처리 장치(Central Processing Unit; CPU)일 수 있다. 프로세서(1010)는 어드레스 버스(address bus), 제어 버스(control bus) 및 데이터 버스(data bus)를 통하여 메모리 장치(1020), 디스플레이 장치(1030), 저장 장치(1040) 및 입출력 장치(1050)와 통신을 수행할 수 있다. 실시예에 따라서, 프로세서(1010)는 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스와 같은 확장 버스에 더욱 연결될 수 있다.
메모리 장치(1020)는 컴퓨팅 시스템(1000)의 동작에 필요한 데이터를 저장할 수 있다. 예를 들어, 메모리 장치(1020)는 DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), 모바일 DRAM 등과 같은 휘발성 메모리로 구현되거나, EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시 메모리(Flash Memory), PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), NFGM(Nano Floating Gate Memory), PoRAM(Polymer Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric Random Access Memory) PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), NFGM(Nano Floating Gate Memory), PoRAM(Polymer Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric Random Access Memory) 등과 같은 비휘발성 메모리로 구현될 수 있다.
디스플레이 장치(1030)는 컴퓨팅 시스템(1000)의 동작에 필요한 영상을 표시할 수 있다. 예를 들어, 디스플레이 장치(1030)는 액정 표시(Liquid Crystal Display; LCD) 장치, 유기 발광 표시 장치(Organic Light Emitting Device; OLED), 플라즈마 표시 패널(Plasma Display Panel; PDP) 등을 포함할 수 있다.
저장 장치(1040)는 솔리드 스테이트 드라이브(solid state drive), 하드 디스크 드라이브(hard disk drive), 씨디롬(CD-ROM) 등을 포함할 수 있다. 입출력 장치(1050)는 키보드, 키패드, 마우스 등과 같은 입력 수단 및 프린터 등과 같은 출력 수단을 포함할 수 있다. 파워 서플라이(1060)는 컴퓨팅 시스템(1000)의 동작에 필요한 동작 전압을 공급할 수 있다.
컴퓨팅 시스템(1000)에 포함되는 반도체 장치들 중 적어도 일부는 적층 반도체 장치(즉, 3차원 집적 회로)의 형태로 구현될 수 있다. 상기 적층 반도체 장치는 도 1 내지 20을 참조하여 설명한 방법에 기초하여 설계됨으로써, TSV 연결 실패 및 배선 실패 없이 최적화된 신호 경로를 가질 수 있다.
컴퓨팅 시스템(1000)은 다양한 형태들의 패키지로 구현될 수 있다. 예를 들어, 컴퓨팅 시스템(1000)의 적어도 일부의 구성들은 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 패키지들을 이용하여 실장될 수 있다.
한편, 컴퓨팅 시스템(1000)은 적층 반도체 장치를 포함하는 모든 컴퓨팅 시스템으로 해석되어야 할 것이다. 예를 들어, 컴퓨팅 시스템(1000)은 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 개인 정보 단말기(personal digital assistant; PDA), 휴대형 멀티미디어 플레이어(portable multimedia player; PMP), 디지털 카메라(Digital Camera), 개인용 컴퓨터(Personal Computer; PC), 서버 컴퓨터(Server Computer), 워크스테이션(Workstation), 노트북(Laptop), 디지털 TV(Digital Television), 셋-탑 박스(Set-Top Box), 음악 재생기(Music Player), 휴대용 게임 콘솔(Portable Game Console), 네비게이션(Navigation) 시스템 등을 포함할 수 있다.
본 발명은 적층 반도체 장치 및 이를 포함하는 다양한 장치 및 시스템에 적용될 수 있다. 따라서 본 발명은 적층 반도체 장치를 구비하는 컴퓨터, 노트북, 핸드폰, 스마트폰, MP3 플레이어, 개인 정보 단말기, 휴대형 멀티미디어 플레이어, 디지털 TV 및 디지털 카메라 등과 같은 전자 기기에 확대 적용될 수 있을 것이다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.

Claims (10)

  1. 적층 반도체 장치에 포함되고 서로 적층되는 복수의 반도체 다이들 각각에 대하여, 관통 실리콘 비아(Through Silicon Via; TSV)들의 삽입 가능한 위치를 나타내는 복수의 TSV 후보 그리드(TSV candidate grid)들을 결정하는 단계;
    상기 복수의 TSV 후보 그리드들에 기초하여, 상기 적층 반도체 장치를 통과하는 복수의 신호들에 대한 연결 가능한 신호 경로들을 각각 표시하는 복수의 경로 그래프들을 생성하는 단계;
    상기 복수의 경로 그래프들에 기초하여, 상기 복수의 신호들에 대한 최단 신호 경로들에 상응하도록 초기 TSV 삽입 위치들을 결정하는 단계; 및
    상기 초기 TSV 삽입 위치들을 검증하여, 상기 복수의 신호들에 대한 복수의 신호 망(net)들이 배선 가능하도록 최종 TSV 삽입 위치들을 결정하는 단계를 포함하는 적층 반도체 장치의 TSV 배치 설계 방법.
  2. 제 1 항에 있어서, 상기 복수의 경로 그래프들을 생성하는 단계는,
    상기 복수의 신호들 중 제1 신호에 대한 제1 출발점(source)부터 제1 도착점(sink)까지 연결 가능한 모든 제1 신호 경로들을 표시하는 제1 경로 그래프를 생성하는 단계; 및
    상기 복수의 신호들 중 제2 신호에 대한 제2 출발점부터 제2 도착점까지 연결 가능한 모든 제2 신호 경로들을 표시하는 제2 경로 그래프를 생성하는 단계를 포함하는 것을 특징으로 하는 적층 반도체 장치의 TSV 배치 설계 방법.
  3. 제 2 항에 있어서, 상기 초기 TSV 삽입 위치들을 결정하는 단계는,
    상기 제1 신호 경로들 중에서 제1 최단 신호 경로를 획득하고, 상기 복수의 TSV 후보 그리드들 중에서 상기 제1 최단 신호 경로에 포함되는 제1 TSV 후보 그리드들을 상기 제1 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택하는 단계; 및
    상기 제2 신호 경로들 중에서 제2 최단 신호 경로를 획득하고, 상기 복수의 TSV 후보 그리드들 중에서 상기 제2 최단 신호 경로에 포함되는 제2 TSV 후보 그리드들을 상기 제2 신호에 대한 상기 초기 TSV 삽입 위치들로서 선택하는 단계를 포함하는 것을 특징으로 하는 적층 반도체 장치의 TSV 배치 설계 방법.
  4. 제 3 항에 있어서, 상기 최종 TSV 삽입 위치들을 결정하는 단계는,
    상기 초기 TSV 삽입 위치들로 선택된 상기 제1 및 제2 TSV 후보 그리드들에 복수의 제1 TSV들을 배치하고 상기 복수의 반도체 다이들 상에 복수의 제1 배선들을 배치하여 상기 제1 및 제2 신호들에 대한 제1 및 제2 신호 망들을 형성하는 경우에, 상기 제1 및 제2 신호 망들에 대한 배선 가능성(Routability) 여부를 판단하는 검증 동작을 수행하는 단계;
    상기 검증 동작의 결과에 기초하여 상기 제1 및 제2 신호 망들이 배선 가능한 것으로 판단된 경우에, 상기 초기 TSV 삽입 위치들을 상기 최종 TSV 삽입 위치들로서 선택하는 단계; 및
    상기 검증 동작의 결과에 기초하여 상기 제1 및 제2 신호 망들 중 적어도 하나가 배선 불가능한 것으로 판단된 경우에, 상기 초기 TSV 삽입 위치들을 업데이트하는 단계를 포함하는 것을 특징으로 하는 적층 반도체 장치의 TSV 배치 설계 방법.
  5. 제 4 항에 있어서, 상기 복수의 반도체 다이들 각각은 배선들의 삽입 가능한 위치를 나타내는 복수의 일반 그리드(normal grid)들을 더 포함하고, 상기 복수의 제1 배선들은 상기 복수의 일반 그리드들 중 상기 제1 및 제2 신호 망들에 상응하는 제1 및 제2 일반 그리드들을 경유하며,
    상기 검증 동작을 수행하는 단계는,
    상기 제1 및 제2 TSV 후보 그리드들에 배치된 상기 제1 TSV들의 개수를 카운트하여, 상기 제1 및 제2 TSV 후보 그리드들 중 허용 가능한 TSV 개수보다 많은 개수의 TSV들이 배치된 혼잡(over-congested) TSV 후보 그리드가 존재하는지 여부를 판단하는 단계; 및
    상기 제1 및 제2 일반 그리드들에 배치된 상기 제1 배선들의 개수를 카운트하여, 상기 제1 및 제2 일반 그리드들 중 허용 가능한 배선 개수보다 많은 개수의 배선들이 배치된 혼잡 일반 그리드가 존재하는지 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 적층 반도체 장치의 TSV 배치 설계 방법.
  6. 제 5 항에 있어서, 상기 초기 TSV 삽입 위치들을 업데이트하는 단계는,
    상기 혼잡 TSV 후보 그리드 및 상기 혼잡 일반 그리드를 포함하는 혼잡 그리드들에 기초하여 혼잡도 리스트(over-congestion list)를 획득하는 단계;
    상기 혼잡도 리스트에 기초하여, 상기 제1 및 제2 신호 망들 중 재배치 우선 순위가 가장 높은 신호 망을 선택하는 단계;
    상기 복수의 경로 그래프들 중 상기 선택된 신호 망에 상응하는 경로 그래프를 변경하는 단계; 및
    상기 선택된 신호 망에 상응하고 상기 변경된 경로 그래프에 기초하여, 상기 초기 TSV 삽입 위치들 중 적어도 일부를 변경하는 단계를 포함하는 것을 특징으로 하는 적층 반도체 장치의 TSV 배치 설계 방법.
  7. 제 6 항에 있어서, 상기 재배치 우선 순위가 가장 높은 신호 망을 선택하는 단계는,
    상기 제1 및 제2 신호 망들 중 상기 혼잡 그리드들을 가장 많이 경유하는 신호 망을 선택하는 단계를 포함하는 것을 특징으로 하는 적층 반도체 장치의 TSV 배치 설계 방법.
  8. 제 6 항에 있어서, 상기 선택된 신호 망에 상응하는 경로 그래프를 변경하는 단계는,
    상기 선택된 신호 망에 상응하는 경로 그래프를 선택하는 단계; 및
    상기 선택된 경로 그래프에서 상기 혼잡 그리드들에 상응하는 혼잡 영역을 삭제하는 단계를 포함하는 것을 특징으로 하는 적층 반도체 장치의 TSV 배치 설계 방법.
  9. 서로 적층되는 복수의 반도체 다이들을 포함하는 적층 반도체 장치의 TSV 배치 설계 방법으로서,
    상기 복수의 반도체 다이들에 포함되는 복수의 기능 블록들의 배치와, 상기 복수의 기능 블록들의 배치에 따른 관통 실리콘 비아(Through Silicon Via; TSV)들의 삽입 가능한 위치를 나타내는 복수의 TSV 후보 그리드(TSV candidate grid)들 및 상기 복수의 기능 블록들의 배치에 따른 배선들의 삽입 가능한 위치를 나타내는 복수의 일반 그리드(normal grid)들을 결정하는 단계;
    상기 복수의 TSV 후보 그리드들에 기초하여, 상기 적층 반도체 장치를 통과하는 복수의 신호들 각각의 출발점(source)부터 도착점(sink)까지 연결 가능하고 일방향성을 가지는 모든 신호 경로들을 각각 표시하는 복수의 경로 그래프들을 생성하는 단계;
    상기 복수의 경로 그래프들에 기초하여, 상기 복수의 신호들에 대한 최단 신호 경로를 형성하도록 초기 TSV 삽입 위치들을 결정하는 단계;
    상기 초기 TSV 삽입 위치들에 기초하여 상기 복수의 신호들에 대한 복수의 신호 망(net)들을 형성하는 경우에, 상기 복수의 신호 망들에 대한 배선 가능성(Routability) 여부를 판단하는 검증 동작을 수행하는 단계;
    상기 검증 동작의 결과에 기초하여 상기 복수의 신호 망들이 배선 가능한 것으로 판단된 경우에, 상기 초기 TSV 삽입 위치들을 최종 TSV 삽입 위치들로서 결정하는 단계; 및
    상기 검증 동작의 결과에 기초하여 상기 복수의 신호 망들 중 적어도 하나가 배선 불가능한 것으로 판단된 경우에, 상기 복수의 TSV 후보 그리드들 중 혼잡(over-congested) TSV 후보 그리드 및 상기 복수의 일반 그리드들 중 혼잡 일반 그리드에 기초하여 혼잡도 리스트(over-congestion list)를 획득하고, 상기 혼잡도 리스트에 기초하여 상기 복수의 신호 망들 중 재배치 우선 순위가 가장 높은 신호 망을 선택하고, 상기 복수의 경로 그래프들 중 상기 선택된 신호 망에 상응하는 경로 그래프를 변경하며, 상기 선택된 신호 망에 상응하고 상기 변경된 경로 그래프에 기초하여 상기 초기 TSV 삽입 위치들 중 적어도 일부를 변경함으로써, 상기 초기 TSV 삽입 위치들을 업데이트하는 단계를 포함하는 적층 반도체 장치의 TSV 배치 설계 방법.
  10. 서로 적층되는 복수의 반도체 다이들을 포함하는 적층 반도체 장치의 TSV(Through Silicon Via; TSV) 배치 설계 시스템에 있어서,
    상기 복수의 반도체 다이들에 포함되는 복수의 기능 블록들의 배치와 관련된 기능 블록 배치 정보에 기초하여, 상기 복수의 반도체 다이 내에서 TSV들이 삽입 가능한 위치와 관련된 TSV 후보 그리드 정보를 생성하는 그리드 결정부;
    상기 TSV 후보 그리드 정보에 기초하여, 상기 적층 반도체 장치를 통과하는 복수의 신호들의 각각의 출발점(source)부터 도착점(sink)까지 연결 가능하고 일방향성을 가지는 모든 신호 경로들을 표시하는 복수의 경로 그래프들과 관련된 경로 그래프 정보를 생성하는 경로 그래프 생성부;
    상기 경로 그래프 정보에 기초하여, 상기 복수의 신호들 각각에 대한 최단 신호 경로를 형성하도록 상기 적층 반도체 장치에 삽입되는 TSV들의 초기 위치와 관련된 초기 TSV 삽입 위치 정보를 생성하는 TSV 위치 결정부; 및
    상기 초기 TSV 삽입 위치 정보에 대한 검증 동작을 수행하여, 상기 적층 반도체 장치에 삽입되는 TSV들의 최종 위치와 관련된 최종 TSV 삽입 위치 정보를 생성하거나, 또는 상기 경로 그래프 정보 및 상기 초기 TSV 삽입 위치 정보를 업데이트하기 위한 제어 신호를 생성하는 검증부를 포함하는 적층 반도체 장치의 TSV 배치 설계 시스템.
KR1020130025466A 2013-03-11 2013-03-11 적층 반도체 장치의 tsv 배치 설계 방법 및 적층 반도체 장치의 tsv 배치 설계 시스템 KR102053722B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130025466A KR102053722B1 (ko) 2013-03-11 2013-03-11 적층 반도체 장치의 tsv 배치 설계 방법 및 적층 반도체 장치의 tsv 배치 설계 시스템
US14/203,650 US9026969B2 (en) 2013-03-11 2014-03-11 Method of designing arrangement of TSV in stacked semiconductor device and designing system for arrangement of TSV in stacked semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130025466A KR102053722B1 (ko) 2013-03-11 2013-03-11 적층 반도체 장치의 tsv 배치 설계 방법 및 적층 반도체 장치의 tsv 배치 설계 시스템

Publications (2)

Publication Number Publication Date
KR20140112589A KR20140112589A (ko) 2014-09-24
KR102053722B1 true KR102053722B1 (ko) 2019-12-09

Family

ID=51489528

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130025466A KR102053722B1 (ko) 2013-03-11 2013-03-11 적층 반도체 장치의 tsv 배치 설계 방법 및 적층 반도체 장치의 tsv 배치 설계 시스템

Country Status (2)

Country Link
US (1) US9026969B2 (ko)
KR (1) KR102053722B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10075657B2 (en) 2015-07-21 2018-09-11 Fermi Research Alliance, Llc Edgeless large area camera system
US10352991B2 (en) 2015-07-21 2019-07-16 Fermi Research Alliance, Llc Edgeless large area ASIC

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090066366A1 (en) 2007-09-12 2009-03-12 Solomon Research Llc Reprogrammable three dimensional intelligent system on a chip
US20090070727A1 (en) 2007-09-12 2009-03-12 Solomon Research Llc Three dimensional integrated circuits and methods of fabrication
WO2012077280A1 (ja) 2010-12-09 2012-06-14 パナソニック株式会社 三次元集積回路の設計支援装置及び設計支援方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0773222A (ja) * 1993-06-29 1995-03-17 Hitachi Ltd 配線経路自動生成方法
JPH09330983A (ja) 1996-06-12 1997-12-22 Toshiba Corp Lsi配線用経路探索グラフの作成装置
KR19990065429A (ko) 1998-01-13 1999-08-05 구본준 스탠다드셀 집적회로의 경로지정방법
KR100363087B1 (ko) 2000-04-06 2002-12-02 삼성전자 주식회사 비표준 셀을 포함하는 집적회로의 설계 및 레이아웃 방법및 이를 기록한 기록매체
JP3616611B2 (ja) * 2002-05-14 2005-02-02 株式会社東芝 半導体集積回路装置の設計装置、半導体集積回路の設計方法および半導体集積回路設計プログラム
JP2004047803A (ja) 2002-07-12 2004-02-12 Toshiba Corp 回路ブロック、半導体集積回路、コンピュータが認識可能な回路ブロックの配置配線の設計データ、コンピュータが認識可能な半導体集積回路の配置配線の設計データ
JP4346410B2 (ja) * 2003-10-28 2009-10-21 東芝メモリシステムズ株式会社 半導体集積回路の配線設計方法及び半導体集積回路
JP4447960B2 (ja) 2004-05-31 2010-04-07 財団法人福岡県産業・科学技術振興財団 三次元実装回路の設計システム及び設計方法
KR100593803B1 (ko) 2004-12-06 2006-06-28 주식회사 엔타시스 반도체 집적회로의 블록배치 및 전력배선 설계방법
JP2006196511A (ja) * 2005-01-11 2006-07-27 Sony Corp 半導体集積回路
US20090144678A1 (en) 2007-11-30 2009-06-04 International Business Machines Corporation Method and on-chip control apparatus for enhancing process reliability and process variability through 3d integration
US8006212B2 (en) 2008-07-30 2011-08-23 Synopsys, Inc. Method and system for facilitating floorplanning for 3D IC
KR20120062281A (ko) * 2010-12-06 2012-06-14 삼성전자주식회사 관통 전극을 가지는 적층 구조의 반도체 장치 및 이에 대한 테스트 방법
US8599595B1 (en) * 2011-12-13 2013-12-03 Michael C. Stephens, Jr. Memory devices with serially connected signals for stacked arrangements

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090066366A1 (en) 2007-09-12 2009-03-12 Solomon Research Llc Reprogrammable three dimensional intelligent system on a chip
US20090070727A1 (en) 2007-09-12 2009-03-12 Solomon Research Llc Three dimensional integrated circuits and methods of fabrication
WO2012077280A1 (ja) 2010-12-09 2012-06-14 パナソニック株式会社 三次元集積回路の設計支援装置及び設計支援方法

Also Published As

Publication number Publication date
US20140258949A1 (en) 2014-09-11
KR20140112589A (ko) 2014-09-24
US9026969B2 (en) 2015-05-05

Similar Documents

Publication Publication Date Title
TWI524201B (zh) 驗證積體電路設計的方法與系統、電腦可讀取儲存媒體
TW202414244A (zh) 產生三維積體電路設計的方法
Kim et al. Block-level 3D IC design with through-silicon-via planning
KR102219460B1 (ko) 반도체 장치의 레이아웃 분리 방법 및 이를 사용한 반도체 장치 제조 방법
US10540475B2 (en) System for manufacturing a semiconductor device
US9141745B2 (en) Method and system for designing Fin-FET semiconductor device
US10229239B2 (en) Capacity model for global routing
US20120144358A1 (en) Resolving Global Coupling Timing and Slew Violations for Buffer-Dominated Designs
KR102053722B1 (ko) 적층 반도체 장치의 tsv 배치 설계 방법 및 적층 반도체 장치의 tsv 배치 설계 시스템
Ozdal et al. Archer: A history-based global routing algorithm
US9817936B2 (en) Methods for minimizing layout area of IC
Ozdal et al. Exact route matching algorithms for analog and mixed signal integrated circuits
CN112989751B (zh) 基于分支定界法的电路通道布线方法、装置及电子设备
JP4999840B2 (ja) 目的地点への距離が最短化されたマンハッタンルーティング
Moffitt Global routing revisited
US8904327B2 (en) Assisting in logic circuit design to place cells on an IC substrate and optimize wiring
Hao et al. An efficient algorithm for 3D-IC TSV assignment
Liang et al. GPU/ML-Enhanced Large Scale Global Routing Contest
JP5743808B2 (ja) 集積回路の配線方法、集積回路の配線プログラム及びそれを記憶した記憶媒体
US20230137941A1 (en) Segmentation method for path routing in multilayer structure and apparatus using the same
US20160283638A1 (en) Circuit routing based on total negative slack
JP5857882B2 (ja) 決定装置、決定プログラムおよび決定方法
TW202248875A (zh) 空間對準之方法及電路
Wang et al. Stress-aware P/G TSV planning in 3D-ICs
Tsai et al. Routability optimization for crossbar-switch structured ASIC design

Legal Events

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