KR102530599B1 - 반도체 설계 공정 비용 감소를 위한 hdevs 기반 rtl 설계 도구 및 복합 시뮬레이터 - Google Patents

반도체 설계 공정 비용 감소를 위한 hdevs 기반 rtl 설계 도구 및 복합 시뮬레이터 Download PDF

Info

Publication number
KR102530599B1
KR102530599B1 KR1020210080826A KR20210080826A KR102530599B1 KR 102530599 B1 KR102530599 B1 KR 102530599B1 KR 1020210080826 A KR1020210080826 A KR 1020210080826A KR 20210080826 A KR20210080826 A KR 20210080826A KR 102530599 B1 KR102530599 B1 KR 102530599B1
Authority
KR
South Korea
Prior art keywords
rtl
devs
design
open source
design tool
Prior art date
Application number
KR1020210080826A
Other languages
English (en)
Other versions
KR20220170146A (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 KR1020210080826A priority Critical patent/KR102530599B1/ko
Publication of KR20220170146A publication Critical patent/KR20220170146A/ko
Application granted granted Critical
Publication of KR102530599B1 publication Critical patent/KR102530599B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/18Manufacturability analysis or optimisation for manufacturability

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

반도체 설계 공정 비용 감소를 위한 HDEVS 기반 RTL 설계 도구 및 복합 시뮬레이터가 개시된다. 컴퓨터 장치로 구현되는 RTL 시뮬레이션 시스템은 오픈소스 RTL(register transfer level) 설계 도구에 미실장된 기능이 HDEVS(hybrid discrete event system specification) 기반 RTL 설계 도구를 통해 추가됨에 따라 상기 오픈소스 RTL 설계 도구와 함께 시뮬레이션이 가능한 HDEVS 형태의 RTL-DEVS 시뮬레이터를 포함할 수 있다.

Description

반도체 설계 공정 비용 감소를 위한 HDEVS 기반 RTL 설계 도구 및 복합 시뮬레이터{HDEVS based RTL design tool with co-simulator for reducing semiconductor design and verification process cost}
아래의 설명은 오픈소스 RTL(register transfer level) 설계 도구를 보완할 수 있는 기술에 관한 것이다.
반도체는 세계적으로 아주 큰 규모의 사업이며 반도체 웨이퍼 제작 전에 검증 과정은 오랜 시간과 돈이 들어가는 과정으로, 반도체 공정과정 중 로직 설계 및 시뮬레이션을 위해 현재 다양한 오픈소스 RTL 설계 도구가 산업계에서 활용되고 있다.
이러한 오픈소스 RTL 설계 도구는 동작 설계 및 시뮬레이션시의 기능 제약이 많다.
설계자가 새로운 제약조건의 동작 시뮬레이션을 수행하고자 한다면 기존의 오픈소스 RTL 설계 도구의 코드를 새롭게 개발하여 기능을 추가할 수 있다. 또 다른 방법으로, 라이선스 비용을 지불하고 해외 상용 RTL 설계 도구를 사용할 수 있다.
하지만, 두 가지 방법 모두 대량의 비용과 많은 시간을 필요로 한다. 오픈소스를 추가로 개발하는 경우 시간적, 인적 비용이 크게 발생하게 되어 스위트 스팟을 잡기 어렵고, 상용 RTL 설계 도구를 사용하는 경우 로직 설계 단계부터 시뮬레이션까지 많은 비용이 발생한다.
이로 인해 일부 대기업을 제외하면 중소 팹리스 업체들이 칩 설계부터 생산 공정에 도달하기까지 큰 장벽이 있으며, 프론트엔드 단계에서의 부담을 줄이는 방법들을 연구할 필요가 있다.
반도체 설계 공정 비용 감소를 위한 HDEVS(hybrid discrete event system specification) 기반 RTL 설계 도구 및 복합 시뮬레이터를 제공할 수 있다.
컴퓨터 장치에 있어서, 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 오픈소스 RTL(register transfer level) 설계 도구에 미실장된 기능이 HDEVS(hybrid discrete event system specification) 기반 RTL 설계 도구를 통해 추가됨에 따라 상기 오픈소스 RTL 설계 도구와 함께 시뮬레이션이 가능한 HDEVS 형태의 RTL-DEVS 시뮬레이터를 포함하는 컴퓨터 장치를 제공한다.
일 측면에 따르면, 상기 적어도 하나의 프로세서는, 반정형 모델에 대한 설계 요구사항의 정의가 인자로 주어지면 상기 오픈소스 RTL 설계 도구와 상기 RTL-DEVS 시뮬레이터를 통해 통합 시뮬레이션을 제공할 수 있다.
다른 측면에 따르면, 상기 적어도 하나의 프로세서는, 상기 오픈소스 RTL 설계 도구와 상기 RTL-DEVS 시뮬레이터를 이용한 이중 검정을 통해 모든 시뮬레이션 만족 시 합성(synthesis) 단계를 수행할 수 있다.
또 다른 측면에 따르면, 상기 미실장된 기능이 RTL-DEVS 모델로 재정의되어 라이브러리 구현체로 설계될 수 있다.
또 다른 측면에 따르면, 상기 적어도 하나의 프로세서는, 반정형 형태의 데이터 형태로 기술된 RTL-DEVS 모델의 동작을 HDL(Hardware Description Language)로 변환해주는 변환기를 포함할 수 있다.
본 발명의 실시예에 따르면, 오픈소스 RTL 설계 도구를 보완할 수 있는 DEVS 기반 모델을 통해 반도체 프론트엔드 설계 단계 중 RTL 설계와 HDL 변환 후 검증 단계까지의 비용이 크게 개선될 수 있다.
본 발명의 실시예에 따르면, 백엔드 설계 과정에서 다시 로직 설계 단계로 돌아오는 상황을 최소화할 수 있고 차후 새로운 시뮬레이션 기능에 대한 확장 또한 용이하다.
도 1은 본 발명의 일실시예에 있어서 컴퓨터 장치의 내부 구성의 일례를 설명하기 위한 블록도이다.
도 2는 본 발명의 일실시예에 있어서 오픈소스 미실장 시뮬레이터 기능을 추가한 RTL-DEVS 개요를 나타낸 것이다.
도 3은 본 발명의 일실시예에 있어서 RTL 설계 및 시뮬레이션 단계를 나타낸 것이다.
도 4는 본 발명의 일실시예에 있어서 반도체 설계 공정 흐름도 및 RTL 설계 및 검증 실패가 전체 프로세스에 미치는 영향을 설명하기 위한 도면이다.
도 5는 본 발명의 일실시예에 있어서 오픈소스 시뮬레이터와의 HDEVS 복합 시뮬레이터 구상도를 나타낸 것이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명의 실시예들은 오픈소스 RTL 설계 도구를 보완할 수 있는 기술에 관한 것이다.
본 명세서에서 구체적으로 개시되는 것들을 포함하는 실시예들은 반도체 설계 공정 비용 감소를 위한 HDEVS 기반 RTL 설계 도구 및 복합 시뮬레이터를 제공할 수 있다.
도 1은 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다. 예를 들어, 본 발명의 실시예들에 따른 RTL 시뮬레이션 시스템은 도 1을 통해 도시된 컴퓨터 장치(100)에 의해 구현될 수 있다.
도 1에 도시된 바와 같이, 컴퓨터 장치(100)는 본 발명의 실시예들에 따른 RTL 시뮬레이션 방법을 실행하기 위한 구성요소로서, 메모리(110), 프로세서(120), 통신 인터페이스(130) 그리고 입출력 인터페이스(140)를 포함할 수 있다.
메모리(110)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 디스크 드라이브와 같은 비소멸성 대용량 기록장치는 메모리(110)와는 구분되는 별도의 영구 저장 장치로서 컴퓨터 장치(100)에 포함될 수도 있다. 또한, 메모리(110)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(110)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 메모리(110)로 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 인터페이스(130)를 통해 메모리(110)에 로딩될 수도 있다. 예를 들어, 소프트웨어 구성요소들은 네트워크(160)를 통해 수신되는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 컴퓨터 장치(100)의 메모리(110)에 로딩될 수 있다.
프로세서(120)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(110) 또는 통신 인터페이스(130)에 의해 프로세서(120)로 제공될 수 있다. 예를 들어 프로세서(120)는 메모리(110)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신 인터페이스(130)은 네트워크(160)를 통해 컴퓨터 장치(100)가 다른 장치와 서로 통신하기 위한 기능을 제공할 수 있다. 일례로, 컴퓨터 장치(100)의 프로세서(120)가 메모리(110)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이나 명령, 데이터, 파일 등이 통신 인터페이스(130)의 제어에 따라 네트워크(160)를 통해 다른 장치들로 전달될 수 있다. 역으로, 다른 장치로부터의 신호나 명령, 데이터, 파일 등이 네트워크(160)를 거쳐 컴퓨터 장치(100)의 통신 인터페이스(130)를 통해 컴퓨터 장치(100)로 수신될 수 있다. 통신 인터페이스(130)를 통해 수신된 신호나 명령, 데이터 등은 프로세서(120)나 메모리(110)로 전달될 수 있고, 파일 등은 컴퓨터 장치(100)가 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.
통신 방식은 제한되지 않으며, 네트워크(160)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망)을 활용하는 통신 방식뿐만 아니라 기기들 간의 근거리 유선/무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(160)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(160)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.
입출력 인터페이스(140)는 입출력 장치(150)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 마이크, 키보드, 카메라 또는 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(140)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(150)는 컴퓨터 장치(100)와 하나의 장치로 구성될 수도 있다.
또한, 다른 실시예들에서 컴퓨터 장치(100)는 도 1의 구성요소들보다 더 적은 혹은 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 장치(100)는 상술한 입출력 장치(150) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
이하에서는 반도체 설계 공정 비용 감소를 위한 HDEVS 기반 RTL 설계 도구 및 복합 시뮬레이터의 구체적인 실시예를 설명하기로 한다.
DEVS(discrete event system specification) 시뮬레이션 도구로 RTL 검증 단계의 구현이 가능하다.
본 실시예에서는 기존의 오픈소스 RTL 설계 도구에서 부족한 기능을 DEVS 모델로 설계하여 기존의 오픈소스 RTL 설계 도구와 함께 시뮬레이션이 가능한 HDEVS(hybrid DEVS) 형태의 RTL-DEVS 시뮬레이터를 제공한다.
이에 따라 기존의 오픈소스 시뮬레이션 도구에서 제공하지 못하는 기능은 RTL-DEVS로 설계하여 시뮬레이션하고, 이를 통해 RTL의 설계 스펙을 만족하는지 검증할 수 있다.
오픈소스 RTL 설계 도구와 RTL-DEVS 시뮬레이션 도구를 활용한 이중 검정이 가능해지며, 두 가지 시뮬레이션을 모두 만족할 때에만 합성(synthesis) 단계로 넘어갈 수 있다.
원하는 기능을 RTL-DEVS 모델을 활용하여 빠르게 기술 가능하다. 그리고, 정의된 모델을 별도의 도구 개발없이 기존의 DEVS 시뮬레이터로 통합 시뮬레이션이 가능하다.
이를 통하여 RTL 설계 단계에서의 라이센스 비용 및 검증 시간을 절감 가능하며, 동작의 정확도를 높일 수 있다.
도 2는 본 발명의 일실시예에 있어서 오픈소스 미실장 시뮬레이터 기능을 추가한 RTL-DEVS 개요를 나타낸 것이다.
도 2를 참조하면, 프로세서(120)는 반도체 디자인을 위해 DEVS 이론을 기반으로 HDL(Hardware Description Language) 요구사양(specification)을 결정한다.
RTL-DEVS 모델은 일부 기능에 대해서 기존의 오픈소스 RTL 설계 도구를 대체할 수 있고, 기존의 오픈소스 RTL 설계 도구들이 제공하지 못하는 기능에 대해서 추가적인 모델링 및 시뮬레이션을 제공하는 상호보완적인 형태로 동작할 수 있다.
우선 기존 오픈소스 RTL 설계 도구와 상용 RTL 설계 도구들의 기능들을 비교 분석하여 RTL-DEVS에서 모델링 되어야 할 RTL 수준의 디자인 스펙을 정의한다. 기존 오픈소스 도구들의 구조분석을 통하여 시뮬레이션 동작에 대하여 시뮬레이션 요구사양을 정의한다.
RTL-DEVS에서 정의된 모델의 구현체를 기존의 오픈소스 도구를 활용하여 HDL로 재설계하고 두 모델의 시뮬레이션 결과를 분석하여 RTL-DEVS 동작 모델의 검증을 진행한다.
프로세서(120)는 DEVS HDL에서 HDL로의 컴파일러(compiler)를 수행한다. 합성을 위해 컴파일러라는 도구를 많이 사용한다. 설계자가 반정형 형태의 데이터 형태로 RTL-DEVS Model 동작을 기술하면 HDL로 변환해주는 변환기를 사용한다. 반정형 데이터는 json, xml, yaml과 같은 데이터 형태로서 형식에 자유롭게 빠르게 기술 가능한 특성을 가진다. 설계자는 RTL-DEVS로 모델을 빠르게 정의하고 DEVS 환경에서 이를 검증할 수 있다. 그 후 이를 HDL로 변환하여 기존의 오픈소스 RTL 도구에서 등가(Equivalence) 검증을 수행한다.
프로세서(120)는 디자인 검증을 위한 시뮬레이터를 결정한다. 검증 방법에서 가장 중요한 것은 시뮬레이션이다. HDL은 하드웨어 설명(hardware description)뿐 아니라 시뮬레이션을 위해서도 사용된다.
본 실시예에서는 시뮬레이션 도구로서 오픈소스 RTL 도구와 함께 RTL-DEVS 모델을 위한 DEVS 시뮬레이터를 사용한다.
일반화된 모델을 바탕으로 RTL-DEVS 동작 모델을 정의하고 RTL-DEVS 모델을 활용한 설계 도구 라이브러리를 정의한다. 기존의 오픈소스 도구들의 부재한 기능을 RTL-DEVS 모델로 재정의하고 라이브러리 구현체로 설계할 수 있다.
HDL 스펙 수준에서 기존 오픈소스 도구들이 제공하지 못하는 메인 기능들에 대하여 RTL-DEVS를 활용하여 라이브러리로 설계한다(예를 들어, RTL-DEVS for Gate, RTL-DEVS for UDP 등). 시뮬레이션 동작 방식에서 기존의 오픈소스 도구들이 제공하지 못하는 다양한 시뮬레이션 형태를 지원하는 라이브러리로써 설계한다(예를 들어, RTL-DEVS for MultiClock source). 이미 상용 도구로 개발되어 검증이 완료된 HDL모델을 RTL-DEVS 라이브러리로 재설계하여 시뮬레이션하고 이를 사전 검증 완료된 HDL 기반의 모델과 비교 분석하여 라이브러리의 동작을 검증한다.
본 실시예들은 반도체 공정에서의 오픈소스 RTL 설계도구와 함께 동작하는 HDEVS 기반의 RTL 설계 도구를 제공한다. 반도체 설계 공정 중 프론트-엔드 단계 공정의 비용 이슈를 해결하기 위해 ① RTL-DEVS의 모델 스펙 설계, ② RTL-DEVS 모델의 동작 설계 및 검증, ③ RTL-DEVS를 활용한 Library의 설계 및 검증, ④ RTL-DEVS to HDL 변환기 설계, ⑤ HDEVS 시뮬레이터 개발을 통해 제한적인 오픈소스 RTL 설계도구를 고확장성, 저비용의 HDEVS 기반 RTL 설계도구와 병용하여 설계 효용을 높일 수 있다.
현대 집적 회로 설계 작업은 ESL(Electronic system level) 설계, RTL 설계 또는 검증, 물리적 칩 설계의 3단계로 나눠진다. 설계 단계 중 RTL 설계는 조합 논리와 순차 논리를 설계하고 검증하기 위한 매우 중요한 단계이다.
도 3은 RTL 설계 및 시뮬레이션 단계를 나타내고 있다.
RTL 설계 단계의 중요성에도 불구하고 HDL 언어 기반 설계 도구들에 대한 매우 값비싼 라이선스 비용 문제로 인해 MyHDL과 같은 다양한 오픈소스 RTL 설계 도구들이 사용되고 있다.
반도체 설계 단계에서 오픈소스 소프트웨어의 도입은 이론상 프로토타입 개발 시간 및 비용 측면의 효율성 증대, 커뮤니티를 기반으로 수행되는 집단 검증 등 오픈소스 활용에 따른 여러 장점이 있으나 실제 상용 소프트웨어에 비해서 기능에 많은 제약이 있고 최신 기술이 지속적으로 업데이트 되기 어렵다는 단점이 있다.
RTL 단계에서의 다양한 검증 부족은 논리 설계 이후의 회로 설계와 같은 백엔드 설계 공정에서 요구사양 위반을 발생시키는 요인이 될 수 있으므로 RTL 설계 단계에서 최대한 많은 검증이 이루어져야 한다.
그러나, 오픈소스 RTL 설계 도구에 상용 설계 도구에 준하는 기능을 추가하기 위해서는 고수준의 내부 구조분석이 필요하고, 필요로 하는 기능을 새롭게 추가하는 데에는 상용 설계 도구 사용을 위한 비용보다 훨씬 더 큰 시간적, 인적 비용이 들어갈 수 있다.
최근 RTL 이후의 반도체 설계 공정에 HDEVS를 적용하여 비용 및 검증 구조를 개선하려는 연구들이 활발하게 진행되고 있다.
RTL 설계 작업 또한 효과적인 비용 절약을 위한 검증 구조 개선이 필요하며, HDEVS가 RTL 설계 검증을 위한 새로운 대안이 될 수 있다. 기존 오픈소스 RTL 설계도구가 제공하지 못하는 기능들을 HDEVS 기반 RTL 설계 도구를 통해 쉽게 확장할 수 있다면 상용 툴의 값비싼 라이선스 비용 지불 없이 디자인 동작 설계 수준에서 더욱 다양한 검증이 가능하다.
따라서, 논리 합성 이후 발생하는 다양한 요구사양 위반에 의한 반복적인 재설계 빈도를 낮춤으로써 설계 효용을 높여줄 수 있다.
오픈소스 RTL 설계도구와 함께 동작하는 HDEVS 기반의 RTL 설계 도구는 다음과 같은 세부 내용을 포함한다(도 2 참조)
1) RTL-DEVS 모델 스펙 설계
2) RTL-DEVS 모델 동작 설계 및 검증
3) RTL-DEVS를 활용한 설계 도구 라이브러리의 개발
4) RTL-DEVS to HDL 변환기의 설계
5) HDEVS 기반의 RTL-DEVS with 오픈소스 RTL 설계도구 시뮬레이터 설계
도 4는 반도체 설계 공정 흐름도 및 RTL 설계 및 검증 실패가 전체 프로세스에 미치는 영향을 설명하기 위한 도면이다.
본 발명은 오픈소스 RTL 설계 도구와 상호보완으로 동작 가능한 DEVS 시뮬레이터를 제공할 수 있다. 1) 기존 설계 도구들의 특징과 DEVS 기반의 시뮬레이션 방식에 대한 비교평가를 진행한다. 2) DEVS 모델 기반 RTL을 설계하고 해당 동작이 기존 HDL 기반의 동작과 일치하는지 검증한다. 3) 시뮬레이터는 상기한 비교평가 결과와 검증 결과를 바탕으로 HDEVS 형태로 고도화한다.
도 5는 오픈소스 시뮬레이터와의 HDEVS 복합 시뮬레이터 구상도를 나타내고 있다.
설계자가 반정형 모델에 대한 설계 요구사항의 정의를 하고 이를 인자로 넘기면 자동으로 RTL-DEVS와 오픈소스 도구에서 검증을 해주는 통합 시뮬레이터를 구현할 수 있으며, 이를 통하여 기존의 도구들의 단점을 보완하는 HDEVS 형태의 시뮬레이션을 제공할 수 있다.
이처럼 본 발명의 실시예들에 따르면, 오픈소스 RTL 설계 도구를 보완할 수 있는 DEVS 기반 모델을 통해 반도체 프론트엔드 설계 단계 중 RTL 설계와 HDL 변환 후 검증 단계까지의 비용이 크게 개선될 수 있고 백엔드 설계 과정에서 다시 로직 설계 단계로 돌아오는 상황을 최소화할 수 있다.
DEVS를 통해 RTL 수준에서의 모델 검증이 가능해지므로 절차가 상대적으로 기존 오픈 소스코드를 사용하는 것보다 시간 상으로 짧아지며 절차를 단축시킬 수 있다.
DEVS는 동작의 천이를 수학적 모델로 기술하며 이는 HDL 수준에서의 설계보다 동작 형태를 단순 명료하게 해준다. 이를 통해 스펙 정의 및 구현 수준에서 일차적으로 빠르게 수학적 검증을 가능하게 한다. 이는 추후 시뮬레이션 과정에서 발견되는 일부 설계상의 문제를 발생하지 않도록 하는 장점이 있다.
DEVS로 모델을 기술하고 DEVS 시뮬레이터로 동작을 검증한다. 따라서 아무리 복잡한 동작이라도 DEVS 모델의 설계 명세만으로 간단히 해결할 수 있다. 이는 기능 추가를 위해 오픈소스 도구를 추가 개발하는 시간적 비용, 해외 라이선스 비용을 지불하고 상용 도구를 사용하는 금전적 비용을 둘 다 효과적으로 절감할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (5)

  1. 컴퓨터 장치에 있어서,
    메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    오픈소스 RTL(register transfer level) 설계 도구에 미실장된 기능이 HDEVS(hybrid discrete event system specification) 기반 RTL 설계 도구를 통해 추가됨에 따라 상기 오픈소스 RTL 설계 도구와 함께 시뮬레이션이 가능한 HDEVS 형태의 RTL-DEVS 시뮬레이터; 및
    반정형 형태의 데이터 형태로 기술된 RTL-DEVS 모델의 동작을 HDL(Hardware Description Language)로 변환해주는 변환기
    를 포함하고,
    RTL-DEVS 모델은 일부 기능에 대해 상기 오픈소스 RTL 설계 도구를 대체하고 상기 오픈소스 RTL 설계 도구가 제공하지 못하는 기능에 대해 추가적인 모델링과 시뮬레이션을 제공하는 상호보완적인 형태로 동작하고,
    상기 적어도 하나의 프로세서는,
    상기 미실장된 기능이 RTL-DEVS 모델로 재정의되어 라이브러리 구현체로 설계됨에 따라 시뮬레이션을 통해 RTL의 설계 스펙을 만족하는지 검증하는 것으로,
    반도체 디자인을 위해 DEVS 이론을 기반으로 HDL 요구사양(specification)을 결정하고 상기 오픈소스 RTL 설계 도구와 상용 RTL 설계 도구의 기능들을 비교 분석하여 RTL-DEVS에서 모델링하고자 하는 RTL 수준의 디자인 스펙을 정의하고,
    반정형 모델에 대한 설계 요구사양의 정의가 인자로 주어지면 상기 오픈소스 RTL 설계 도구와 상기 RTL-DEVS 시뮬레이터를 통해 통합 시뮬레이션을 제공하고,
    RTL-DEVS 모델의 동작을 HDL로 변환하여 상기 오픈소스 RTL 설계 도구에서 등가(Equivalence) 검증을 수행하고,
    상용 도구로 검증이 완료된 HDL 모델을 RTL-DEVS 라이브러리로 재설계하여 시뮬레이션한 후 사전 검증 완료된 HDL 기반의 모델과 비교 분석하여 라이브러리의 동작을 검증하고,
    상기 오픈소스 RTL 설계 도구와 상기 RTL-DEVS 시뮬레이터를 이용한 이중 검정을 통해 모든 시뮬레이션 만족 시 합성(synthesis) 단계를 수행하는 것
    을 특징으로 하는 컴퓨터 장치.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
KR1020210080826A 2021-06-22 2021-06-22 반도체 설계 공정 비용 감소를 위한 hdevs 기반 rtl 설계 도구 및 복합 시뮬레이터 KR102530599B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210080826A KR102530599B1 (ko) 2021-06-22 2021-06-22 반도체 설계 공정 비용 감소를 위한 hdevs 기반 rtl 설계 도구 및 복합 시뮬레이터

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210080826A KR102530599B1 (ko) 2021-06-22 2021-06-22 반도체 설계 공정 비용 감소를 위한 hdevs 기반 rtl 설계 도구 및 복합 시뮬레이터

Publications (2)

Publication Number Publication Date
KR20220170146A KR20220170146A (ko) 2022-12-29
KR102530599B1 true KR102530599B1 (ko) 2023-05-09

Family

ID=84539426

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210080826A KR102530599B1 (ko) 2021-06-22 2021-06-22 반도체 설계 공정 비용 감소를 위한 hdevs 기반 rtl 설계 도구 및 복합 시뮬레이터

Country Status (1)

Country Link
KR (1) KR102530599B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102640248B1 (ko) * 2023-06-16 2024-02-27 주식회사 하이퍼엑셀 생성형 거대 인공지능 모델의 효율적인 하드웨어 매핑을 위한 방법 및 시스템
CN117521573A (zh) * 2023-11-23 2024-02-06 苏州异格技术有限公司 一种fpga芯片的eda前端工具集成设计方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014021679A (ja) * 2012-07-17 2014-02-03 Fujitsu Semiconductor Ltd 設計支援装置、設計支援方法及びプログラム
KR102155126B1 (ko) * 2018-10-12 2020-09-11 인하대학교 산학협력단 이산 사건 명세와 모의 개체 아웃소싱 기반의 반도체 공정 모델링 및 시뮬레이션 시스템 및 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102064749B1 (ko) * 2017-10-16 2020-01-10 고려대학교 산학협력단 오픈 하드웨어 프로그래밍 및 모바일 프로그래밍을 위한 시스템
CN112100954A (zh) * 2020-08-31 2020-12-18 北京百度网讯科技有限公司 验证芯片的方法、装置和计算机存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014021679A (ja) * 2012-07-17 2014-02-03 Fujitsu Semiconductor Ltd 設計支援装置、設計支援方法及びプログラム
KR102155126B1 (ko) * 2018-10-12 2020-09-11 인하대학교 산학협력단 이산 사건 명세와 모의 개체 아웃소싱 기반의 반도체 공정 모델링 및 시뮬레이션 시스템 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Tim Pifer 외 4명, "Discrete event system specification, synthesis, and optimization of low-power FPGA-based embedded systems", 2013 International Conference on FPT, 2013.13., pp.98-105. 1부.*

Also Published As

Publication number Publication date
KR20220170146A (ko) 2022-12-29

Similar Documents

Publication Publication Date Title
Feist Vivado design suite
Teich Hardware/software codesign: The past, the present, and predicting the future
US8839171B1 (en) Method of global design closure at top level and driving of downstream implementation flow
US11914933B2 (en) Generation of dynamic design flows for integrated circuits
US20150169792A1 (en) Compiler for closed-loop 1xn vlsi design
KR102530599B1 (ko) 반도체 설계 공정 비용 감소를 위한 hdevs 기반 rtl 설계 도구 및 복합 시뮬레이터
US8635579B1 (en) Local clock skew optimization
US8539406B2 (en) Equivalence checking for retimed electronic circuit designs
US8316335B2 (en) Multistage, hybrid synthesis processing facilitating integrated circuit layout
US10289873B2 (en) Generating hardware security logic
KR20210030475A (ko) 서비스로서의 집적 회로
Gubbi et al. Survey of machine learning for electronic design automation
US10289774B1 (en) Systems and methods for reuse of delay calculation in static timing analysis
US7711534B2 (en) Method and system of design verification
KR20220148913A (ko) 초기 단계 회로 설계에서 기계 학습 기반 메트릭 예측
Devarajegowda et al. Meta-model based automation of properties for pre-silicon verification
US11022634B1 (en) Rail block context generation for block-level rail voltage drop analysis
Ebeid et al. HDL code generation from UML/MARTE sequence diagrams for verification and synthesis
JP5447547B2 (ja) マクロ遅延解析装置、マクロ境界パスの遅延解析方法、マクロ境界パスの遅延解析プログラム
US10936776B1 (en) Analyzing waveform data generated for simulated circuit design
US11630938B1 (en) Failure mode analysis for circuit design
US9355207B2 (en) Performing static timing analysis in the presence of instance-based systematic variations
KR20230148646A (ko) 오픈소스 rtl 설계 도구와 함께 시뮬레이션이 가능한 hdevs 형태의 rtl-devs 시뮬레이터
Chakravarthi System on Chip (SOC) Design
Jung et al. IEEE CEDA DATC: Expanding research foundations for IC physical design and ML-enabled EDA

Legal Events

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