KR20210118544A - 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체 - Google Patents

회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체 Download PDF

Info

Publication number
KR20210118544A
KR20210118544A KR1020200034917A KR20200034917A KR20210118544A KR 20210118544 A KR20210118544 A KR 20210118544A KR 1020200034917 A KR1020200034917 A KR 1020200034917A KR 20200034917 A KR20200034917 A KR 20200034917A KR 20210118544 A KR20210118544 A KR 20210118544A
Authority
KR
South Korea
Prior art keywords
input
circuit block
output port
user interface
changing
Prior art date
Application number
KR1020200034917A
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 KR1020200034917A priority Critical patent/KR20210118544A/ko
Priority to PCT/KR2021/001822 priority patent/WO2021194089A1/ko
Publication of KR20210118544A publication Critical patent/KR20210118544A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/31Design entry, e.g. editors specifically adapted for circuit design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance

Landscapes

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

Abstract

회로 블록의 다수의 입출력 포트 간의 관계 및 다수의 입출력 포트 각각의 정보를 사용자가 직관적으로 파악할 수 있는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법은, 상기 회로 블록의 입출력 포트의 정보를 수신하고 상기 입출력 포트의 정보에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 생성하는 단계; 상기 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계; 상기 회로 블록의 내부의 회로 설계도를 수신하는 단계; 상기 회로 설계도에 포함된 복수의 서브 서킷의 핀과 연결된 배선의 네트 네임 및 상기 복수의 서브 서킷의 핀과 연결된 상기 입출력 포트의 정보를 저장하는 단계; 상기 복수의 서브 서킷의 핀과 연결된 배선의 네트 네임 및 상기 복수의 서브 서킷의 핀과 연결된 상기 입출력 포트의 정보에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계; 및 상기 변경된 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계;를 포함하고, 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는, 상기 회로 블록의 입출력 포트의 배치 또는 모양을 변경시키는 단계 및 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계 중 적어도 하나를 포함한다.

Description

회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체{METHOD FOR CHANGING THE GRAPHICAL USER INTERFACE OF CIRCUIT BLOCK AND COMPUTER-READABLE MEDIUM STORING INSTRUCTIONS FOR PROCESSING STEPS OF METHOD FOR CHANGING THE GRAPHICAL USER INTERFACE OF CIRCUIT BLOCK}
본 개시는 전자 설계 자동화 툴에서 내부의 회로 설계도 또는 시뮬레이션 결과에 따라 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 그 방법의 각 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체에 관한 것이다.
일반적으로, 전자 설계 자동화 툴에서 집적 회로의 설계는 서브 서킷(Sub-Circuit)과 배선을 시각적으로 표시하는 스키매틱(Schematic)을 이용한다.
스키매틱을 표현할 때, 범용적인 저항 소자, 인덕터, 축전기, 논리 소자 및 AMP 등의 기본 서브 서킷들은 각자의 심볼이 존재한다.
반면에, 위와 같은 기본 서브 서킷들이 아닌 사용자가 설계한 회로 설계도(Circuit design)는 박스 형태의 회로 블록 형태로 표시된다.
이 때, 회로 블록은 다수의 입출력 포트와 연결되어 있는 박스 형태로 표시될 수 있으나, 다수의 입출력 포트 사이의 관계를 사용자가 직관적으로 파악하기 어렵다는 문제점이 존재한다.
본 개시의 일 측면에 따르면, 회로 블록의 그래픽 사용자 인터페이스(Graphical User Interface;GUI)를 변경함으로써 회로 블록과 연결된 다수의 입출력 포트 사이의 연결 관계를 사용자가 직관적으로 파악할 수 있는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법을 제공한다.
본 개시의 일 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스(Graphical User Interface; GUI)를 변경하는 방법은, 프로세서가, 상기 회로 블록의 입출력 포트의 정보를 수신하고 상기 입출력 포트의 정보에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 생성하는 단계; 디스플레이가, 상기 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계; 상기 프로세서가, 상기 회로 블록의 내부의 회로 설계도(Circuit Design)를 수신하는 단계; 메모리가, 상기 회로 설계도에 포함된 복수의 서브 서킷(Sub-Circuit)의 핀(Pin)과 연결된 배선의 네트 네임(Net name) 및 상기 복수의 서브 서킷의 핀과 연결된 상기 입출력 포트의 정보를 저장하는 단계; 상기 프로세서가, 상기 복수의 서브 서킷의 핀과 연결된 배선의 네트 네임 및 상기 복수의 서브 서킷의 핀과 연결된 상기 입출력 포트의 정보에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계; 및 상기 디스플레이가, 상기 변경된 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계;를 포함하고, 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는, 상기 회로 블록의 입출력 포트의 배치 또는 모양을 변경시키는 단계 및 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계 중 적어도 하나를 포함할 수 있다.
또한, 상기 회로 블록의 입출력 포트의 배치 또는 모양을 변경시키는 단계는, 상기 복수의 서브 서킷의 핀과 연결된 배선 중에서 미리 설정된 네임과 동일한 네트 네임을 갖는 배선이 존재하면, 상기 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 상기 입출력 포트를 이동시키거나 변형시키는 단계;를 포함할 수 있다.
또한, 상기 미리 설정된 네임은, VDD, VSS, GND, PW, CLK 및 CK 중 적어도 하나를 포함할 수 있다.
또한, 상기 복수 개의 서브 서킷의 핀은 제1 핀과 제2 핀을 포함하고, 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계는, 상기 제1 핀과 상기 제2 핀 사이의 저항 값이 미리 설정된 값 이하이면, 상기 입출력 포트 중에서 상기 제1 핀과 연결된 제1 입출력 포트와 상기 제2 핀과 연결된 제2 입출력 포트를 연결하는 가상의 선을 생성하는 단계;를 포함할 수 있다.
또한, 상기 복수 개의 서브 서킷의 핀은 제1 핀과 제2 핀을 포함하고, 상기 회로 블록의 입출력 포트의 배치 또는 모양을 변경시키는 단계 및 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계는, 상기 제1 핀과 연결된 배선의 네트 네임이 제1 식별자를 포함하면, 상기 제1 식별자를 제외한 제1 네트 네임을 결정하는 단계; 상기 제2 핀과 연결된 배선의 네트 네임이 제2 식별자를 포함하면, 상기 제2 식별자를 제외한 제2 네트 네임을 결정하는 단계; 및 상기 제1 네트 네임과 상기 제2 네트 네임이 동일하고, 상기 제1 식별자와 상기 제2 식별자가 상이하면 상기 입출력 포트 중 상기 제1 핀과 연결된 제1 입출력 포트와 상기 제2 핀과 연결된 제2 입출력 포트를 서로 인접하게 배치시키는 단계;를 포함할 수 있다.
또한, 상기 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법은, 상기 메모리가, 상기 회로 설계도의 전체 이미지를 저장하는 단계; 상기 프로세서가, 사용자로부터 상기 입출력 포트 중 어느 하나의 입출력 포트에 대한 선택을 수신하는 단계; 상기 프로세서가, 상기 사용자의 선택에 응답하여, 상기 회로 설계도의 전체 이미지에서 상기 사용자로부터 선택된 입출력 포트와 대응되는 내부 포트를 강조하는 단계; 및 상기 디스플레이가, 상기 회로 설계도의 전체 이미지 출력하는 단계;를 더 포함할 수 있다.
또한, 상기 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법은, 상기 메모리가, 상기 회로 설계도에서 상기 입출력 포트에 대응되는 내부 포트를 미리 설정된 배율로 확대한 이미지를 저장하는 단계; 및 상기 디스플레이가, 상기 사용자의 선택에 응답하여, 상기 사용자로부터 선택된 입출력 포트와 대응되는 내부 포트를 미리 설정된 배율로 확대한 이미지를 출력하는 단계;를 더 포함할 수 있다.
다른 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법은, 디스플레이가, 상기 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계; 프로세서가, 사용자로부터 시뮬레이션 명령을 수신하고, 상기 시뮬레이션 명령에 응답하여 상기 회로 블록의 주파수 응답 특성을 시뮬레이션하는 단계; 메모리가, 상기 회로 블록의 주파수 응답 특성에 대한 시뮬레이션 결과를 저장하는 단계; 상기 프로세서가, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계; 및 상기 디스플레이가, 상기 변경된 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계;를 포함하고, 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는, 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계를 포함할 수 있다.
또한, 상기 회로 블록의 입출력 포트는 제1 입출력 포트 및 제2 입출력 포트를 포함하고, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는, 상기 제1 입출력 포트를 입력 포트로 설정하고 상기 제2 입출력 포트를 출력 포트로 설정하여 주파수 응답 특성을 획득한 시뮬레이션 결과에 있어서, 미리 설정된 주파수 이하의 주파수에서 주파수 응답의 크기가 미리 설정된 크기 이상이면 상기 제1 입출력 포트와 상기 제2 입출력 포트를 연결하는 가상의 선을 생성하는 단계;를 포함할 수 있다.
또한, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는, 상기 회로 블록 내부에 포함된 복수의 서브 서킷의 핀 중에서 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 핀이 존재하면, 상기 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 상기 입출력 포트를 이동시키거나 변형시키는 단계;를 포함할 수 있다.
또한, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는, 상기 회로 블록의 입출력 포트 중에서, 상기 시뮬레이션 명령에서 차동쌍으로 설정된 제1 입출력 포트 및 제2 입출력 포트를 서로 인접하게 배치시키는 단계;를 포함할 수 있다.
또한, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는, 상기 회로 블록의 입출력 포트 중에서 제1 입출력 포트를 입력 포트로 설정하고 제2 입출력 포트를 출력 포트로 설정하여 주파수 응답 특성을 획득한 시뮬레이션 결과에 있어서, 미리 설정된 주파수에서 주파수 응답의 크기가 미리 설정된 크기 이상이면 상기 제1 입출력 포트와 상기 제2 입출력 포트를 연결하는 가상의 선을 생성하는 단계;를 포함할 수 있다.
또한, 상기 제1 입출력 포트와 상기 제2 입출력 포트를 연결하는 가상의 선은, 밴드 패스 필터(Band Pass Filter; BPF)를 나타낼 수 있다.
또한, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는, 상기 회로 블록의 입출력 포트 중에서 제1 입출력 포트를 입력 포트로 설정하고 제2 입출력 포트를 출력 포트로 설정하여 획득한 시뮬레이션 결과가 상기 제2 입출력 포트를 입력 포트로 설정하고 상기 제1 입출력 포트를 출력 포트로 설정하여 획득한 시뮬레이션 결과와 상이하면, 상기 제1 입출력 포트와 상기 제2 입출력 포트를 연결하는 가상의 선을 생성하는 단계;를 포함할 수 있다.
또한, 상기 프로세서가, 상기 사용자로부터 상기 회로 블록의 입출력 포트 중 어느 하나의 입출력 포트에 대한 선택을 수신하는 단계; 상기 프로세서가, 상기 사용자의 선택에 응답하여, 상기 사용자로부터 선택된 입출력 포트를 입력 포트 및 출력 포트로 설정하여 획득한 주파수 응답 특성의 그래프를 강조하는 단계; 및 상기 디스플레이가, 상기 주파수 응답 특성의 그래프를 출력하는 단계;를 더 포함할 수 있다.
또한, 상기 프로세서가, 상기 사용자로부터 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선에 대한 선택을 수신하는 단계; 상기 프로세서가, 상기 사용자의 선택에 응답하여, 상기 사용자로부터 선택된 가상의 선과 연결되는 두 개의 입출력 포트 사이에서 획득한 주파수 응답 특성의 그래프를 강조하는 단계; 및 상기 디스플레이가, 상기 주파수 응답 특성의 그래프를 출력하는 단계;를 더 포함할 수 있다.
또한, 상기 디스플레이가, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 주파수 응답 특성 그래프를 출력하는 단계; 상기 프로세서가, 상기 사용자로부터 상기 주파수 응답 특성 그래프 중에서 특정 그래프에 대한 선택을 수신하는 단계; 및 상기 프로세서가, 상기 회로 블록의 입출력 포트 중에서 상기 사용자로부터 선택된 특정 그래프와 같은 주파수 응답 특성을 나타내는 한 개 또는 두 개의 입출력 포트를 결정하고, 상기 회로 블록 상에 상기 한 개 또는 두 개의 입출력 포트를 강조하는 단계;를 포함할 수 있다.
또한, 상기 회로 블록 상에 상기 두 개의 입출력 포트를 표시하는 단계는,
상기 두 개의 입출력 포트 사이를 연결하는 가상의 선이 존재하면 상기 가상의 선을 강조하는 단계;를 포함할 수 있다.
일 실시예에 따른 컴퓨터 판독 가능 저장 매체는, 상기 일 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록될 수 있다.
다른 실시예에 따른 컴퓨터 판독 가능 저장 매체는, 상기 다른 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록될 수 있다.
본 개시에 따르면 회로 블록의 다수의 입출력 포트 간의 관계 및 다수의 입출력 포트 각각의 정보를 사용자가 직관적으로 파악할 수 있다.
또한, 모델링된 회로 블록을 해석하기 위해 사용자가 투자하는 시간이나 노력이 감소될 수 있고, 회로를 설계하는 데 있어서 사용자의 휴먼 에러를 줄일 수 있다.
도 1은 일 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법을 수행하기 위한 컴퓨팅 시스템을 나타내는 블록도이다.
도 2 및 도 3은 일 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법의 순서도이다.
도 4는 일 실시예에 따른 회로 블록과 회로 블록 내부의 회로 설계도를 나타낸 도면이다.
도 5는 서브 서킷과 연결된 핀의 네트 네임에 따라 입출력 포트의 배치 또는 모양이 변경되는 과정을 설명하기 위한 도면이다.
도 6은 회로 블록의 입출력 포트 사이를 연결하는 가상의 선을 설명하기 위한 도면이다.
도 7은 회로 블록의 입출력 포트 중 차동쌍에 해당하는 입출력 포트들을 표시하는 방법을 나타낸 도면이다.
도 8은 사용자가 회로 블록의 입출력 포트 중 어느 하나를 선택한 경우 출력되는 이미지를 나타낸 도면이다.
도 9 및 도 10은 다른 실시예에 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법의 순서도이다.
도 11은 시뮬레이션에 따라 주파수 응답 특성을 산출하는 S-parameter 행렬을 나타낸 도면이다.
도 12는 회로 블록의 주파수 응답 특성을 시뮬레이션하여 획득한 주파수 응답 특성 그래프를 나타낸 도면이다.
도 13은 사용자가 시뮬레이션 결과 및 특성을 내포하고 있는 그래픽 사용자 인터페이스가 변경된 회로 블록의 가상의 선을 선택한 경우 해당 특성이 강조되어 그래프에 출력되는 이미지를 나타낸 도면이다.
도 14는 사용자가 시뮬레이션 결과 및 특성을 내포하고 있는 그래픽 사용자 인터페이스가 변경된 회로 블록의 입출력 포트를 선택한 경우 해당 특성이 강조되어 그래프에 출력되는 이미지를 나타낸 도면이다.
도 15는 또 다른 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법을 나타낸 순서도이다.
도 16 및 도 17은 사용자가 주파수 응답 특성 그래프에서 특정 그래프를 선택한 경우 해당 특성이 강조되어 그래프에 출력되는 이미지를 나타낸 도면이다.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 발명이 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 첨부된 도면들을 참고하여 본 발명의 작용 원리 및 실시예들에 대해 설명한다.
도 1은 일 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법을 수행하기 위한 컴퓨팅 시스템을 나타내는 블록도이다.
도 1을 참조하면, 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법을 수행하기 위한 컴퓨팅 시스템은, 프로세서(100), 메모리(200) 입력 장치(300), 디스플레이(400) 및 버스(10)를 포함할 수 있다.
컴퓨팅 시스템은 데스크탑 컴퓨터, 워크스테이션, 서버 등과 같은 고정형 컴퓨팅 시스템일 수도 있고, 랩탑 컴퓨터, 스마트폰, 태플릿 등과 같은 휴대형 컴퓨티 시스템일 수도 있다.
프로세서(100)는 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 실행하도록 구성될 수 있다. 예를 들어, 프로세서(100)는 메모리(200)에 저장된 회로 설계 프로그램(210)을 실행할 수 있다.
메모리(200)에 기록된 회로 설계 프로그램(210)은 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법의 각각의 단계를 수행하는 명령어를 포함할 수 있으며, 프로세서(100)는 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법의 각각의 단계를 수행하는 명령어를 실행할 수 있다.
메모리(200)는 앞서 설명한 바와 같이 집적 회로의 설계를 위한 전자 설계 자동화 툴(EDA)을 포함하는 회로 설계 프로그램(210)을 저장할 수 있다.
회로 설계 프로그램(210)은 스키매틱 상에서 회로를 설계하기 위한 명령어들을 포함하는 설계 프로그램, 또는 설계된 회로를 시뮬레이션하여 각각의 입출력 포트 사이의 주파수 응답 특성을 획득하기 위한 명령어들을 포함하는 시뮬레이션 프로그램을 포함할 수 있다.
메모리(200)는 프로세서(100)에 의해 처리될 데이터 또는 처리된 데이터를 저장할 수 있다.
예를 들어, 메모리(200)는 설계 프로그램에서 사용자에 의해 설계된 회로 설계도의 이미지를 저장하는 스토리지(220)를 포함할 수 있으며, 회로 설계도의 이미지는 회로 설계도의 전체 이미지 및 회로 설계도에서 내부 포트를 미리 설정된 배율로 확대한 이미지를 포함할 수 있다.
또한, 스토리지(220)는 설계된 회로를 시뮬레이션하여 획득한 시뮬레이션 결과를 저장할 수 있다. 예를 들어, 회로 블록(600)의 입출력 포트들 간의 주파수 응답 특성 그래프를 저장할 수 있으며, 각 입출력 포트들 간의 S-parameter를 저장할 수 있다.
이를 위한 메모리(200)는 SRAM(Static Random Access Memory)이나 DRAM(Dynamic RAM)과 같은 휘발성 메모리이거나, PRAM(Phase-change RAM), MRAM(Magnetic RAM), ReRAM(Resistive RAM), FRAM(Ferroelectrics RAM), 플래시 메모리 등의 비휘발성 메모리일 수 있다.
또한, 메모리(200)는 메모리 카드(MMC, eMMC, SD, MicroSD 등), SSD(Solid State Drive), HDD(Hard Disk Drive), 자기 테이프, 광학 디스크, 자기 디스크와 같은 저장 매체를 포함할 수도 있다. 또한, 메모리(200)는 컴퓨팅 시스템으로부터 탈착 가능할 수도 있다.
입력 장치(300)는 사용자로부터 각종 명령을 입력 받을 수 있는 사용자 인터페이스를 포함할 수 있다. 예를 들어, 입력 장치(300)는 키보드, 마우스, 터치 패드 등으로 구현될 수 있다. 사용자는 입력 장치(300)를 통해 각종 회로를 설계하기 위한 데이터를 입력할 수 있으며, 회로 블록(600)을 시뮬레이션 하기 위한 시뮬레이션 명령을 입력할 수 있다.
디스플레이(400)는 회로 설계 프로그램(210)을 실행할 때 생성되는 각종 정보를 표시할 수 있다. 예를 들어, 디스플레이(400)는 프로세서(100)가 메모리(200)에 저장된 회로 설계 프로그램(210)을 실행하는 경우 회로 설계 프로그램(210)에 대한 그래픽 사용자 인터페이스, 사용자가 회로 블록(600)의 내부의 회로 설계도를 설계하는 경우 스키매틱, 회로 블록(600)의 시뮬레이션 결과 등을 출력할 수 있다.
버스(10)는 컴퓨터 시스템의 내부에서 네트워크를 제공하기 위한 시스템 버스(10)(System Bus)일 수 있다. 프로세서(100), 메모리(200), 입력 장치(300) 및 디스플레이(400)는 버스(10)를 통해서 전기적으로 연결되고 상호 데이터를 교환할 수 있다. 다만, 버스(10)의 구성은 상술한 설명에만 한정되지 않으며, 효율적인 관리를 위한 중재 수단들을 더 포함할 수 있다.
이상으로 후술할 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법을 수행하기 위한 컴퓨팅 시스템의 각 구성을 설명하였다.
이하 도 2 내지 도 8을 참조하여 일 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법을 설명한다.
도 2 및 도 3은 일 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법의 순서도이고, 도 4는 일 실시예에 따른 회로 블록과 회로 블록 내부의 회로 설계도를 나타낸 도면이고, 도 5는 서브 서킷과 연결된 핀의 네트 네임에 따라 입출력 포트의 배치 또는 모양이 변경되는 과정을 설명하기 위한 도면이고, 도 6은 회로 블록의 입출력 포트 사이를 연결하는 가상의 선을 설명하기 위한 도면이고, 도 7은 회로 블록의 입출력 포트 중 차동쌍에 해당하는 입출력 포트들을 표시하는 방법을 나타낸 도면이고, 도 8은 사용자가 회로 블록의 입출력 포트 중 어느 하나를 선택한 경우 출력되는 이미지를 나타낸 도면이다.
도 2를 참조하면, 사용자가 입력 장치(300)를 통해 회로 블록(600)의 입출력 포트의 정보를 입력하면, 프로세서(100)가 회로 블록(600)의 입출력 포트의 정보를 수신할 수 있다(1000).
입출력 포트의 정보는 회로 블록(600)에 연결될 입출력 포트의 개수, 네임, 모양, 위치 등에 대한 정보를 포함할 수 있다.
프로세서(100)는 입출력 포트의 개수, 네임, 모양, 위치 등에 대한 정보에 기초하여 회로 블록의 그래픽 사용자 인터페이스를 생성할 수 있으며, 디스플레이(400)는 프로세서(100)에 의해 생성된 회로 블록의 그래픽 사용자 인터페이스를 출력할 수 있다.
또한, 프로세서(100)는 회로 블록(600)의 내부의 회로 설계도를 수신할 수 있다(1100). 프로세서(100)가 수신한 회로 설계도는 스토리지(220)에 저장된 미리 설계된 회로 설계도일 수도 있고, 사용자가 직접 설계한 회로 설계도일 수도 있다.
즉, 사용자는 입력 장치(300)를 통해 미리 설계된 회로 설계도를 불러올 수도 있으며, 입력 장치(300)를 통해 직접 회로를 설계할 수도 있다.
도 4를 참조하면, 회로 블록(600)은 입출력 포트(Port 1, Port 2, Port 3, Port 4, Port 5)와 연결되어 있으며, 회로 블록(600)의 하위 레이어에는 회로 설계도가 포함되어 있을 수 있다.
위와 같은 회로 설계도는 복수의 서브 서킷(Sub-Circuit)을 포함할 수 있으며, 복수의 서브 서킷과 배선이 연결된 형태로 구성될 수 있다.
또한, 회로 설계도는 배선과 연결된 내부 포트를 포함할 수 있으며, 이러한 내부 포트는 상위 레이어에서 회로 블록(600)의 입출력 포트와 대응될 수 있다.
서브 서킷이란 복수의 노드(이하, '핀')를 갖는 분기 회로를 의미할 수 있다.
예를 들어, 서브 서킷은 논리 게이트 등을 포함할 수 있다.
복수의 서브 서킷의 핀과 연결된 배선은 네트 네임(net name)을 부여 받을 수 있다. 예를 들어, 사용자는 서브 서킷의 핀과 연결된 배선에 대하여 자신의 편의에 맞추어 네트 네임을 입력할 수 있으며, 미리 설계된 회로도의 경우 이전 설계 사용자에 의해 각 배선에 네트 네임이 부여되어 있을 수 있다.
메모리(200)는 복수의 서브 서킷의 핀과 연결된 배선의 네트 네임 및 복수의 서브 서킷의 핀과 연결된 입출력 포트의 정보를 저장할 수 있다(1200).
예를 들어, 제1 서브 서킷의 핀과 연결된 배선의 네트 네임이 'A'이고, 네트 네임이 'A'인 배선과 연결된 내부 포트와 대응되는 외부 회로 블록(600)의 제1 입출력 포트의 네임이 'B'일 때, 제1 입출력 포트 'B'와 연결된 배선의 네트 네임 'A'를 서로 매칭시켜 저장할 수 있다.
이후 프로세서(100)는, 복수의 서브 서킷의 핀과 연결된 배선의 네트 네임 및 복수의 서브 서킷의 핀과 연결된 입출력 포트의 정보에 기초하여 회로 블록(600)의 그래픽 사용자 인터페이스를 변경시킬 수 있다(1300).
예를 들어, 프로세서(100)는 회로 블록(600)의 입출력 포트의 배치 또는 모양을 변경시키거나, 회로 블록(600)의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성함으로써 회로 블록(600)의 그래픽 사용자 인터페이스를 변경할 수 있다.
즉, 앞서 예시에서 제1 서브 서킷의 핀과 연결된 배선의 네트 네임인 'A'와 네트 네임이 'A'인 배선과 연결된 제1 입출력 포트의 정보에 기초하여 제1 입출력 포트의 배치 또는 모양을 변경시킬 수 있다.
회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 구체적인 방법은 도 3 내지 도 7을 참조하여 상세하게 설명한다.
도 3을 참조하면, 프로세서(100)는 복수의 서브 서킷의 핀 중에서 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 핀이 존재하는지 여부를 판단하고, 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 입출력 포트가 존재하면(1310), 미리 설정된 네임에 따라 입출력 포트의 배치 또는 모양을 변경할 수 있다(1315).
이 때, 미리 설정된 네임은 VDD, GND, PW, CLK 및 CK 중 적어도 하나를 포함할 수 있다. 즉, 미리 설정된 네임은 사용자가 회로를 설계할 때 통상적으로 사용하는 네트 네임을 포함할 수 있다.
즉, 프로세서(100)는 회로 블록(600)의 각각의 입출력 포트와 연결된 배선의 네트 네임에 기초하여, 입출력 포트의 배치 또는 모양을 변경할 수 있다.
도 5를 참조하면, Port 2는 'CK'라는 네트 네임을 갖는 배선과 연결되어 있음을 확인할 수 있으며, 'CK'는 주로 클럭 신호가 입력되는 배선의 네트 네임으로 활용된다.
사용자가 회로 블록(600)의 그래픽 사용자 인터페이스에서 'CK'와 연결된 Port 2가 클럭 신호가 입력되는 입출력 포트라는 점을 직관적으로 파악할 수 있도록, 프로세서(100)는 Port 2의 배치를 회로 블록(600)의 왼쪽 아래로 이동시킬 수 있으며, Port 2가 연결되는 부분에 삼각형 형상을 부가시킬 수 있다.
또한, Port 3은 'VDD'라는 네트 네임을 갖는 배선과 연결되어 있음을 확인할 수 있으며, 'VDD'는 주로 MOSFET의 드레인 전압(전원)이 입력되는 배선의 네트 네임으로 활용된다.
사용자가 회로 블록(600)의 그래픽 사용자 인터페이스에서 'VDD'와 연결된 Port 3이 드레인 전압이 입력되는 입출력 포트라는 점을 직관적으로 파악할 수 있도록, 프로세서(100)는 Port 3의 길이를 다른 포트의 길이보다 더욱 길게 변형시킬 수 있다.
또한, Port 4는 'GND'라는 네트 네임을 갖는 배선과 연결되어 있음을 확인할 수 있으며, 'GND'는 주로 모든 회로에 대해 전기적인 기준이 되는 전도체(접지)와 연결되는 배선의 네트 네임으로 활용된다.
사용자가 회로 블록(600)의 그래픽 사용자 인터페이스에서 'GND'와 연결된 Port 4가 접지와 연결되는 입출력 포트라는 점을 직관적으로 파악할 수 있도록, 프로세서(100)는 Port 4의 길이를 다른 포트의 길이보다 더욱 길게 변형시키고 Port 4의 일단에 접지 심볼을 추가할 수 있다.
Port 1 내지 Port 4에 대한 그래픽 사용자 인터페이스의 변화는 예시적인 것이며, 사용자에의 설정에 의해 변경될 수 있거나, 사용자가 각 포트의 정보를 직관적으로 파악할 수 있도록 하는 다른 방법으로 변화될 수 있음은 물론이다.
또한, 앞서 언급된 미리 설정된 네임들은 예시적인 것이며, 사용자에 설정이나 신경망의 학습에 의해 추가될 수 있다.
즉, 컴퓨팅 시스템 또는 컴퓨팅 시스템과 통신하는 서버는 네트 네임과 네트 네임의 역할 사이의 상관 관계를 학습할 수 있는 신경망을 포함할 수 있다.
신경망은 다층 퍼셉트론(multilayer perceptron) 구조에 따라 복수 개의 레이어를 포함할 수 있다. 즉, 신경망에 포함된 복수 개의 유닛들은 복수 개의 레이어로 분류될 수 있다.
다중 퍼셉트로 구조의 신경망은 복수 개의 레이어로 구현되어, 더 복잡한 모델에 대하여 학습할 수 있다.
또한, 복수 개의 레이어로 분류된 유닛들은 소정의 연결 강도로 서로 연결될 수 있다. 이때, 각 유닛은 서로 관련성이 높은 유닛들만 연결될 수 있다.
인간의 두뇌는 시냅스의 연결 형태 또는 연결 강도를 조절하여 학습한다. 즉, 두뇌는 잘못된 답으로 이끄는 뉴런들 사이의 연결을 약화시키고, 올바른 답으로 이끄는 뉴런들 사이의 연결을 강화시키는 방향으로 시냅스의 연결 강도를 조절하여 학습된다.
신경망도 상술한 인간의 두뇌의 학습 방법을 모방하여 학습된다. 여기서, 학습이란, 소정의 학습 데이터로부터 패턴을 찾아내어 일반화하는 것으로, 신경망은 올바른 답으로 이끄는 유닛들 사이의 연결 강도가 강화되도록 학습된다.
신경망은 각종 회로 설계도에 대한 시뮬레이션 결과를 입력 받을 수 있다. 예를 들어, 신경망은 회로 설계도에 포함된 네트 네임과 네트 네임을 갖는 배선에 인가되는 전압, 전류 값을 입력 받을 수 있고, 네트 네임과 네트 네임의 역할에 대한 상관 관계를 학습할 수 있다.
즉, 특정 사용자가 지속적으로 'D'라는 네트 네임을 갖는 배선을 인풋 전압을 인가하기 위한 입출력 포트와 연결시킨다면 신경망은 'D'라는 네트 네임을 미리 설정된 네임으로 저장할 수 있으며, 'D'라는 네트 네임을 갖는 배선과 연결되는 입출력 포트를 인풋 전압의 입력 포트로 결정할 수 있다.
또한, 신경망은 인풋 전압의 입력 포트로 사용되는 입출력 포트의 위치에 대한 정보를 수신하여 학습함으로써 입력 포트로 사용되는 입출력 포트의 배치 방법을 저장할 수 있다.
다시 도 3을 참조하면, 프로세서(100)는 복수의 서브 서킷의 핀들 중에서 각 핀 사이의 저항 값이 미리 설정된 값 이하인 두 개의 핀을 검색할 수 있다(1320). 이후 프로세서(100)는 두 개의 핀 각각과 연결된 입출력 포트를 연결하는 가상의 선을 생성하여 회로 블록(600)의 그래픽 사용자 인터페이스를 변경할 수 있다(1325).
즉, 복수 개의 서브 서킷의 핀은 제1 핀과 제2 핀을 포함하고, 프로세서(100)는 제1 핀과 제2 핀 사이의 저항 값이 미리 설정된 값 이하이면 입출력 포트 중에서 제1 핀과 연결된 제1 입출력 포트와 제2 핀과 연결된 제2 입출력 포트를 연결하는 가상의 선을 생성할 수 있다.
이 때, 미리 설정된 저항 값은 두 개의 핀 사이가 단락(short)된 것으로 판단될 수 있는 정도의 작은 저항 값으로 설정될 수 있다.
예를 들어, 미리 설정된 저항 값은 1옴으로 설정될 수 있으나, 사용자의 설정에 따라, 혹은 앞서 설명한 신경망의 학습에 따라 변경될 수 있다.
도 6을 참조하면, 왼쪽에 위치하는 인버터는 Vin이 입력되는 제1 핀을 포함하고, 오른쪽에 위치하는 인버터는 Vout이 출력되는 제2 핀을 포함할 수 있다.
또한 제1 핀과 제2 핀 사이의 저항 값은 1옴 이하일 수 있다.
따라서, 프로세서(100)는 제1 핀과 연결된 배선의 네트 네임(Vin)에 기초하여 제1 핀과 연결된 Port 1을 검색하고, 제2 핀과 연결된 배선의 네트 네임(Vout)에 기초하여, 제2 핀과 연결된 Port 4를 검색하고, 회로 블록(600)의 그래픽 사용자 인터페이스에서 Port 1과 Port 4를 연결하는 가상의 선(VL)을 생성할 수 있다.
위와 같은 가상의 선은 연결 관계에 따라 점선, 실선 등으로 표현될 수 있다.
사용자는 회로 블록(600)의 그래픽 사용자 인터페이스 상에서 Port 1과 Port 4가 연결되어 있는 것을 확인하고, Port 1과 Port 4가 단락된 사실을 직관적으로 파악할 수 있다.
다시 도 3을 참조하면, 프로세서(100)는 복수의 서브 서킷의 핀들 중에서 식별자를 제외한 네트 네임이 동일한 두 개의 배선과 연결된 두 개의 핀이 존재하면(1330), 두 개의 핀 각각과 연결된 입출력 포트를 인접하게 배치시키고 함께 분류할 수 있다(1335).
즉, 복수 개의 서브 서킷의 핀은 제1 핀과 제2 핀을 포함하고, 프로세서(100)는 제1 핀과 연결된 배선의 네트 네임이 제1 식별자를 포함하면, 제1 식별자를 제외한 제1 네트 네임을 결정하고, 제2 핀과 연결된 배선의 네트 네임이 제2 식별자를 포함하면, 제2 식별자를 제외한 제2 네트 네임을 결정하고, 제1 네트 네임과 제2 네트 네임이 동일하고, 제1 식별자와 제2 식별자가 상이하면 입출력 포트 중 제1 핀과 연결된 제1 입출력 포트와 제2 핀과 연결된 제2 입출력 포트를 서로 인접하게 배치시킬 수 있다.
이 때, 식별자는 언더바(_)와 언더바(_) 이후 병기된 글자를 의미할 수 있고, 식별자를 제외한 네트 네임은 언더바(_) 이전에 병기된 글자를 의미할 수 있다.
식별자를 제외한 네트 네임이 서로 동일한 각 배선은 주로 차동쌍의 입력 또는 출력을 위한 입출력 포트와 연결된다.
따라서, 식별자를 제외한 네트 네임이 서로 동일한 각 배선과 연결된 두 개의 입출력 포트를 서로 인접하게 배치하고, 함께 분류함으로써 사용자는 두 개의 입출력 포트가 차동쌍 관계에 있다는 점을 직관적으로 파악할 수 있다.
도 7을 참조하면, Port 1과 연결된 배선의 네트 네임에서 식별자(_p)를 제외한 네트 네임은 'Vin'인 것을 확인할 수 있으며, Port 4와 연결된 배선의 네트 네임에서 식별자(_n)를 제외한 네트 네임 또한 'Vin'인 것을 확인할 수 있다.
즉, 식별자(_p, _n)를 제외하는 경우 Port 1과 연결된 배선의 네트 네임 및 Port 4와 연결된 네트 네임이 'Vin'으로 동일하고, 식별자가 서로 _n, _p로 상이하므로, Port 1과 Port 4는 서로 인접하게 배치될 수 있다.
마찬가지로, Port 5와 Port 6도 서로 인접하게 배치될 수 있다.
두 개의 입출력 포트가 서로 인접하게 배치되는 것은, 두 개의 입출력 포트 사이에 다른 입출력 포트가 배치되지 않도록 입출력 포트들이 배치되는 것을 의미할 수 있다.
또한, 회로 블록(600)의 그래픽 사용자 인터페이스는 Port 1과 Port 4를 함께 묶는 가상의 박스, Port 5와 Port 6을 함께 묶는 가상의 박스(VC)를 생성함으로써 Port 1과 Port 4, Port 5와 Port 6을 함께 분류할 수 있다.
다만, Port 1과 Port 4, Port 5와 Port 6를 함께 분류하는 방법은 앞서 설명한 방법에 한정되는 것이 아니며, 사용자가 직관적으로 파악할 수 있는 방법이라면 한정 없이 사용될 수 있다.
이상으로 도 3 내지 도 7을 참조하여 회로 블록(600)의 사용자 그래픽 인터페이스를 변경하는 방법의 예시들을 살펴보았다.
다시 도 2를 참조하면, 디스플레이(400)는 프로세서(100)에 의해 변경된 회로 블록(600)의 그래픽 사용자 인터페이스를 출력할 수 있다(1400).
이후 회로 블록(600)의 그래픽 사용자 인터페이스에 대하여, 사용자가 특정 입출력 포트를 선택한다면(1500의 예) 프로세서(100)는 선택된 포트가 강조된 회로 설계도의 이미지를 생성할 수 있으며, 디스플레이(400)는 선택된 포트가 강조된 회로 설계도의 이미지를 출력할 수 있다(1600).
구체적으로, 프로세서(100)는 사용자로부터 입출력 포트 중 어느 하나의 입출력 포트에 대한 선택을 수신할 수 있고, 사용자의 선택에 응답하여 회로 설계도의 전체 이미지에서 사용자로부터 선택된 입출력 포트와 대응되는 내부 포트를 강조할 수 있으며, 이후 디스플레이(400)는 회로 설계도의 전체 이미지를 출력할 수 있다.
또 다른 예로, 프로세서(100)는 사용자의 선택에 응답하여 회로 설계도의 전체 이미지에서 사용자로부터 선택된 입출력 포트와 대응되는 내부 포트를 미리 설정된 배율로 확대한 이미지를 메모리(200)로부터 불러올 수 있으며, 디스플레이(400)는 사용자로부터 선택된 입출력 포트와 대응되는 내부 포트를 미리 설정된 배율로 확대한 이미지를 출력할 수 있다.
도 8을 참조하면, 사용자가 입력 장치(300)를 이용하여 회로 블록(600)의 그래픽 사용자 인터페이스에서 Port 1을 선택한 경우, 내부의 회로 설계도의 전체 이미지에서 Port 1이 강조된 이미지(CI) 및/또는 회로 설계도의 전체 이미지에서 Port 1이 미리 설정된 배율로 확대된 이미지(ZI)가 출력되는 것을 확인할 수 있다.
위와 같이 사용자가 회로 블록(600)의 그래픽 사용자 인터페이스에서 특정 포트를 선택한 경우 내부 회로 설계도에서의 특정 포트의 위치를 표시해줌으로써 사용자로 하여금 특정 포트의 정보를 보다 신속하고 정확하게 파악하도록 할 수 있다.
이상으로 도 2 내지 도 8을 참조하여, 일 실시예에 따른 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법을 설명하였다.
이하에서는 도 9 내지 도 14를 참조하여 다른 실시예에 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법을 설명한다.
도 9 및 도 10은 다른 실시예에 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법의 순서도이고, 도 11은 시뮬레이션에 따라 주파수 응답 특성을 산출하는 S-parameter 행렬을 나타낸 도면이고, 도 12는 회로 블록(600)의 주파수 응답 특성을 시뮬레이션하여 획득한 주파수 응답 특성 그래프를 나타낸 도면이고, 도 13은 사용자가 시뮬레이션 결과 및 특성을 내포하고 있는 그래픽 사용자 인터페이스가 변경된 회로 블록의 가상의 선을 선택한 경우 해당 특성이 강조되어 그래프에 출력되는 이미지를 나타낸 도면이고, 도 14는 사용자가 시뮬레이션 결과 및 특성을 내포하고 있는 그래픽 사용자 인터페이스가 변경된 회로 블록의 입출력 포트를 선택한 경우 해당 특성이 강조되어 그래프에 출력되는 이미지를 나타낸 도면이다.
도 9를 참조하면, 사용자가 입력 장치(300)를 통해 회로 블록(600)의 시뮬레이션 명령을 입력하면, 프로세서(100)는 시뮬레이션 명령을 수신할 수 있다(2000).
시뮬레이션 명령을 수신하면, 프로세서(100)는 회로 블록(600)에 포함된 회로 설계도에 기초하여 회로 블록(600)의 주파수 응답 특성을 시뮬레이션할 수 있다.
메모리(200)는 프로세서(100)에 의해 수행된 회로 블록(600)의 주파수 응답 특성에 대한 시뮬레이션 결과를 저장할 수 있다(2100).
도 11을 참조하면, 주파수 응답 특성에 대한 시뮬레이션 결과는 각각의 입출력 포트 사이의 S파라미터(S-parameter)를 포함할 수 있다.
S파라미터는 다양한 주파수에서 입출력 포트 사이의 입력과 출력의 비를 표현한 파라미터이다.
예를 들어, S12는 제1 입출력 포트를 입력 포트로 하고 제2 입출력 포트를 출력 포트로 하여 입력과 출력의 비를 표현한 파라미터이고, S21은 제2 입출력 포트를 입력 포트로 하고 제1 입출력 포트를 출력 포트로 하여 입력과 출력의 비를 표현한 파라미터이다.
또한, S파라미터는 각각의 입출력 포트의 자체 반사 값, 즉, 입력 포트와 출력 포트가 동일한 경우 자기 자신이 출력하여 돌려 받은 반사된 값의 비율을 포함할 수 있다.
예를 들어, S11 은 제1 입출력 포트르 입력 포트로 하고, 제1 입출력 포트를 출력 포트로 하여 입력과 출력의 비를 표현한 파라미터이다.
따라서, 입출력 포트의 개수가 n개라고 가정하면, S파라미터를 나타낸 S행렬은 n X n 행렬일 수 있다. 예를 들어, 입출력 포트의 개수가 4개인 경우 S행렬은 4x4 행렬일 수 있다.
도 12를 참조하면, 주파수 응답 특성에 대한 시뮬레이션 결과는 각각의 입출력 포트 사이의 주파수 응답 특성 그래프를 포함할 수 있다.
이 때, 주파수 응답 특성의 그래프의 개수는 S행렬의 원소 개수와 동일할 수 있다.
다시 도 9를 참조하면, 프로세서(100)는 회로 블록(600)의 주파수 응답 특성에 대한 시뮬레이션 결과에 기초하여 회로 블록(600)의 그래픽 사용자 인터페이스를 변경할 수 있다(2200).
회로 블록(600)의 주파수 응답 특성에 대한 시뮬레이션 결과에 기초하여 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 구체적인 방법은 도 10을 참조하여 후술한다.
도 10을 참조하면, 프로세서(100)는 제1 입출력 포트와 제2 입출력 포트 사이의 주파수 응답 특성이 미리 설정된 주파수(f0) 이하의 주파수에서 미리 설정된 이상의 크기를 갖는다면(2310의 예), 제1 입출력 포트와 제2 입출력 포트를 연결하는 가상의 선을 생성할 수 있다(2315).
이 때, 미리 설정된 주파수(f0)는 저주파의 기준이 되는 주파수로 설정될 수 있으며, 예를 들어 미리 설정된 주파수(f0)는100Hz 이하로 설정될 수 있다.
또한, 미리 설정된 크기는 입력 대비 출력 비가 1이상인 경우의 기준이 되는 크기로 설정될 수 있으며, 예를 들어 미리 설정된 크기는 0dB 이상으로 설정될 수 있다.
다만, 미리 설정된 주파수(f0) 및 미리 설정된 크기는 사용자에 의해 설정될 수도 있으며, 앞서 설명한 신경망에 의해 학습되어 변경될 수 있다.
제1 입출력 포트와 제2 입출력 포트 사이의 주파수 응답 특성이 저주파수 구간에서 0dB 이상의 크기를 갖는 경우 직류(DC) 관점에서 두 개의 입출력 포트는 단락된 것으로 간주할 수 있다.
따라서, 프로세서(100)가 제1 입출력 포트와 제2 입출력 포트 사이의 주파수 응답 특성이 미리 설정된 주파수(f0) 이하의 주파수에서 미리 설정된 이상의 크기를 갖는 경우 제1 입출력 포트와 제2 입출력 포트를 연결하는 가상의 선을 생성함으로써 사용자로 하여금 제1 입출력 포트와 제2 입출력 포트 사이가 DC적으로 단락되어 있다는 점을 직관적으로 파악하게 할 수 있다.
도 10에는 도시되어 있지 않지만, 도 5를 참조하여 전술한 바와 같이, 프로세서(100)는 시뮬레이션 결과에 기초할 때 회로 블록(600) 내부에 포함된 복수의 서브 서킷의 핀 중에서 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 핀이 존재하면, 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 입출력 포트를 이동시키거나 변형시킬 수 있다.
회로 블록(600)에 대하여 시뮬레이션을 하는 경우 스키매틱 상에서 구현된 서브 서킷, 배선, 포트 등이 netlist 형태로 변경되기 때문에, 프로세서(100)는 시뮬레이션 결과에 기초할 때 회로 블록(600) 내부에 포함된 복수의 서브 서킷의 핀 중에서 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 핀이 존재하는지 여부를 판단할 수 있다.
프로세서(100)는 회로 블록(600)의 입출력 포트 중에서 시뮬레이션 명령에서 차동쌍으로 설정된 제1 입출력 포트 및 제2 입출력 포트가 존재하면(2320의 예), 차동쌍으로 설정된 제1 입출력 포트 및 제2 입출력 포트를 서로 인접하게 배치시키고 함께 분류할 수 있다(2325).
사용자가 시뮬레이션 명령을 내리는 경우, 차동쌍에 대해서는 별도의 설정을 수행하는 바, 프로세서(100)는 시뮬레이션 명령에 기초하여 차동쌍인 입출력 포트들을 결정할 수 있다.
프로세서(100)는 제1 입출력 포트를 입력 포트로 하고 제2 입출력 포트를 출력 포트로 하여 획득한 주파수 응답 특성이 미리 설정된 주파수(f1)의 주파수에서 미리 설정된 이상의 크기를 갖는다면(2330의 예), 제1 입출력 포트와 제2 입출력 포트를 연결하는 가상의 선을 생성할 수 있다(2335).
이 때, 미리 설정된 주파수(f1)는 사용자에 의해 설정될 수 있으며, 앞선 단계(2310)에서 설명한 미리 설정된 주파수(f0)보다 크게 설정될 수 있다. 또한, 미리 설정된 크기는 앞선 단계(2310)에서 설명한 바와 같이 0dB 이상으로 설정될 수 있다.
만약, 제1 입출력 포트와 제2 입출력 포트 사이의 주파수 응답 특성이 미리 설정된 주파수(f1)에서 0dB 이상이라면, 제1 입출력 포트와 제2 입출력 포트 사이에는 미리 설정된 주파수(f1)의 주파수 대역에서 신호를 통과시키는 밴드 패스 필터(Band Pass Filter; BPF)가 마련되어 있다고 간주될 수 있다.
따라서, 이 때 제1 입출력 포트와 제2 입출력 포트를 연결하는 가상의 선은, 밴드 패스 필터의 주파수 응답 특성 그래프 모양일 수 있다.
이에 따라, 사용자는 제1 입출력 포트와 제2 입출력 포트 사이에 어떠한 밴드 패스 필터가 존재한다는 것을 직관적으로 파악할 수 있다.
도 13을 참조하면, 입출력 포트들을 연결하는 가상의 선들(VB, VL) 중에서 Port 1과 Port 30을 연결하는 가상의 선(VB)은 밴드 패스 필터의 주파수 응답 특성 그래프 모양인 것을 확인할 수 있다.
이에 따라, 사용자는 Port 1과 Port 30 사이에 특정 주파수 대역의 신호를 통과시키는 밴드 패스 필터가 존재한다는 것을 확인할 수 있다.
또한, 사용자는 Port 4와 Port 32의 사이는 DC관점에서 단락되어 있다는 사실을 확인할 수 있다.
다시 도 10을 참조하면, 프로세서(100)는 제1 입출력 포트를 입력 포트로 설정하고 제2 입출력 포트를 출력 포트로 설정하여 획득한 시뮬레이션 결과가 제2 입출력 포트를 입력 포트로 설정하고 제1 입출력 포트를 출력 포트로 설정하여 획득한 시뮬레이션 결과와 상이하면(2340의 예) 제1 입출력 포트와 제2 입출력 포트를 연결하는 가상의 선을 생성할 수 있다(2345).
또한, 프로세서(100)는 생성된 가상의 선의 일 단에 화살표 모양의 도형을 추가함으로써 제1 입출력 포트와 제2 입출력 포트 사이가 비가역적이라는 것을 직관적으로 표현할 수 있다.
도 13을 참조하면, Port 1과 Port 30을 연결하는 가상의 선(VB)은 일 단에 화살표 모양의 도형(P)이 추가되어 있는 것을 확인할 수 있다.
이로써 사용자는 Port 1로부터 Port 30으로의 주파수 응답 특성이 Port 30으로부터 Port 1로의 주파수 응답 특성과 상이하다는 것을 직관적으로 확인할 수 있다.
이상으로 도 10을 참조하여 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 구체적인 예시들을 살펴보았다.
다시 도 9를 참조하면, 디스플레이(400)는 프로세서(100)에 의해 변경된 회로 블록(600)의 그래픽 사용자 인터페이스를 출력할 수 있다(2300).
이후 사용자가 입력 장치(300)를 통해 회로 블록(600)의 그래픽 사용자 인터페이스에서 특정 입출력 포트를 선택하면, 프로세서(100)는 회로 블록(600)의 입출력 포트 중 어느 하나의 입출력 포트에 대한 선택을 수신할 수 있다.
프로세서(100)는 사용자의 선택에 응답하여(2400의 예), 사용자로부터 선택된 입출력 포트를 입력 포트 및 출력 포트로 설정하여 획득한 주파수 응답 특성의 그래프를 강조할 수 있다(2450).
이후 디스플레이(400)는 사용자로부터 선택된 입출력 포트를 입력 포트 및 출력 포트로 설정하여 획득한 주파수 응답 특성의 그래프가 강조된 전체 주파수 응답 특성의 그래프를 출력하거나, 사용자로부터 선택된 입출력 포트를 입력 포트 및 출력 포트로 설정하여 획득한 주파수 응답 특성의 그래프만을 출력할 수 있다(2600).
도 14를 참조하면, 사용자가 입력 장치(300)를 통해 회로 블록(600)의 입출력 포트 중 Port 1을 선택한 것을 확인할 수 있다.
이에 대해, 프로세서(100)는 전체 입출력 포트 사이의 주파수 응답 특성 그래프 중에서 S파라미터 S11에 대응되는 주파수 응답 특성 그래프만을 강조할 수 있다.
다시 도 9를 참조하면, 사용자가 입력 장치(300)를 통하여 회로 블록(600)의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 선택하면, 프로세서(100)는 가상의 선에 대한 선택을 수신할 수 있다(2500).
프로세서(100)는, 가상의 선에 대한 선택에 응답하여 선택된 가상의 선과 연결된 두 개의 입출력 포트 간의 주파수 응답 특성 그래프를 강조할 수 있다(2550).
이후 디스플레이(400)는 사용자로부터 선택된 가성의 선과 연결된 두 개의 입출력 포트 간의 주파수 응답 특성의 그래프가 강조된 전체 주파수 응답 특성의 그래프를 출력하거나, 사용자로부터 선택된 가성의 선과 연결된 두 개의 입출력 포트 간의 주파수 응답 특성의 그래프만을 출력할 수 있다(2600).
도 13을 참조하면, 사용자가 입력 장치(300)를 통해 회로 블록(600)의 Port 1과 Port 30을 연결하는 가상의 선(VB)을 선택한 것을 확인할 수 있다.
이에 대해, 프로세서(100)는 전체 입출력 포트 사이의 주파수 응답 특성 그래프 중에서 S파라미터 S1,30과 S30,1에 대응되는 주파수 응답 특성 그래프만을 강조할 수 있다.
이상으로 주파수 응답 특성에 기초하여 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법을 설명하였다.
이하에서는 도 15 내지 도 17을 참조하여 또 다른 실시예에 따른 회로 블록(600)의 그래픽 사용자 인터페이스를 변경하는 방법을 설명한다.
도 15는 또 다른 실시예에 따른 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법을 나타낸 순서도이고, 도 16 및 도 17은 사용자가 주파수 응답 특성 그래프에서 특정 그래프를 선택한 경우 해당 특성이 강조되어 그래프에 출력되는 이미지를 나타낸 도면이다.
도 15를 참조하면, 사용자로부터 회로 블록(600)에 대한 시뮬레이션 명령을 수신하여 프로세서(100)가 시뮬레이션 결과를 획득한 경우 디스플레이(400)는 회로 블록(600)의 입출력 포트 간의 주파수 응답 특성 그래프를 출력할 수 있다(3000).
이후 사용자는 입력 장치(300)를 통해 특정 그래프를 선택할 수 있으며, 프로세서(100)는 주파수 응답 특성 그래프 중에서 특정 그래프에 대한 선택을 수신할 수 있다(3100).
프로세서(100)는 특정 그래프와 같은 주파수 응답 특성을 나타내는 한 개 또는 두 개의 입출력 포트를 결정하고, 회로 블록(600) 상에 한 개 또는 두 개의 입출력 포트를 강조할 수 있다.
예를 들어, 프로세서(100)는 특정 그래프에 대응되는 주파수 응답 특성을 갖는 입출력 포트가 한 개인 경우, 즉, S파라미터의 대각 성분(S11, S22, S33, ...)에 해당하는 주파수 응답 특성 그래프인 경우에는(3200의 예) 해당 입출력 포트를 강조할 수 있다(3250).
도 17을 참조하면, 사용자가 선택한 특정 그래프는 Port 1 자체의 반사 값의 주파수 응답 특성 그래프이다. 다시 말해서, 사용자가 선택한 특정 그래프에 대응되는 주파수 응답 특성을 갖는 입출력 포트는 Port 1 한 개인 상황이다.
따라서, 회로 블록(600)의 그래픽 사용자 인터페이스에서 Port 1이 강조(EL)될 수 있다.
이에 따라, 사용자는 선택한 주파수 응답 특성 그래프가 어느 포트의 자체 반사 값인지 직관적으로 확인할 수 있다.
프로세서(100)는 사용자가 선택한 특정 그래프에 대응되는 주파수 응답 특성을 갖는 입출력 포트가 두 개인 경우, 두 개의 입출력 포트를 연결하는 가상의 선이 존재하는 지 여부를 판단할 수 있다(3300).
이후 프로세서(100)는 사용자가 선택한 특정 그래프에 대응되는 주파수 응답 특성을 갖는 두 개의 입출력 포트가 가상의 선으로 연결되어 있지 않으면(3300의 아니오) 각각의 입출력 포트를 강조할 수 있다(3250).
반면, 프로세서(100)는 사용자가 선택한 특정 그래프에 대응되는 주파수 응답 특성을 갖는 두 개의 입출력 포트가 가상의 선으로 연결되어 있으면(3300의 예) 가상의 선을 강조할 수 있다(3350).
예를 들어, 도 16을 참조하면 사용자가 선택한 특정 그래프는 Port 1과 Port 30 사이의 주파수 응답 특성 그래프인 것을 확인할 수 있다.
프로세서(100)는 Port 1과 Port 30이 가상의 선으로 연결되어 있지 않으면 Port 1과 Port 30을 각각 강조할 수 있으며, Port 1과 Port 30이 가상의 선으로 연결되어 있다고 판단되면 가상의 선을 강조(EB)할 수 있다.
이후, 디스플레이(400)는 특정 입출력 포트가 강조되거나 특정 가상의 선이 강조된 회로 블록(600)의 그래픽 사용자 인터페이스를 출력할 수 있다(3400).
위와 같은 과정에 따라, 사용자는 주파수 응답 특성의 각각의 그래프가 어느 입출력 포트와 관련 있는 그래프인지 직관적으로 파악할 수 있다.
지금까지 설명한 본 개시에 따르면 전자 설계 자동화 툴에서 회로 블록(600)의 그래픽 사용자 인터페이스를 자동으로 변경함으로써 회로 블록(600)의 내부 설계도에 대한 직관적 정보 제공으로, 회로 블록(600)의 입출력 포트 간 연결도의 직관성을 부여하여 회로 블록(600)의 설계/분석 효율을 높일 수 있다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서(100)에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(read only memory), RAM(random access memory), 자기 테이프, 자기 디스크, 플래쉬 메모리(200), 광 데이터 저장장치 등이 있을 수 있다.
또한, 컴퓨터가 읽을 수 있는 기록매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 기록 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리(200)와 같은 기기로 읽을 수 있는 기록 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 발명이 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
100: 프로세서 200: 메모리
300: 입력 장치 400: 디스플레이

Claims (20)

  1. 회로 블록의 그래픽 사용자 인터페이스(Graphical User Interface; GUI)를 변경하는 방법에 있어서,
    프로세서가, 상기 회로 블록의 입출력 포트의 정보를 수신하고 상기 입출력 포트의 정보에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 생성하는 단계;
    디스플레이가, 상기 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계;
    상기 프로세서가, 상기 회로 블록의 내부의 회로 설계도(Circuit Design)를 수신하는 단계;
    메모리가, 상기 회로 설계도에 포함된 복수의 서브 서킷(Sub-Circuit)의 핀(Pin)과 연결된 배선의 네트 네임(Net name) 및 상기 복수의 서브 서킷의 핀과 연결된 상기 입출력 포트의 정보를 저장하는 단계;
    상기 프로세서가, 상기 복수의 서브 서킷의 핀과 연결된 배선의 네트 네임 및 상기 복수의 서브 서킷의 핀과 연결된 상기 입출력 포트의 정보에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계; 및
    상기 디스플레이가, 상기 변경된 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계;를 포함하고,
    상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는,
    상기 회로 블록의 입출력 포트의 배치 또는 모양을 변경시키는 단계 및 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계 중 적어도 하나를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  2. 제1항에 있어서,
    상기 회로 블록의 입출력 포트의 배치 또는 모양을 변경시키는 단계는,
    상기 복수의 서브 서킷의 핀과 연결된 배선 중에서 미리 설정된 네임과 동일한 네트 네임을 갖는 배선이 존재하면, 상기 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 상기 입출력 포트를 이동시키거나 변형시키는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  3. 제2항에 있어서,
    상기 미리 설정된 네임은,
    VDD, VSS, GND, PW, CLK 및 CK 중 적어도 하나를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  4. 제1항에 있어서,
    상기 복수의 서브 서킷의 핀은 제1 핀과 제2 핀을 포함하고,
    상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계는,
    상기 제1 핀과 상기 제2 핀 사이의 저항 값이 미리 설정된 값 이하이면, 상기 입출력 포트 중에서 상기 제1 핀과 연결된 제1 입출력 포트와 상기 제2 핀과 연결된 제2 입출력 포트를 연결하는 가상의 선을 생성하는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  5. 제1항에 있어서,
    상기 복수의 서브 서킷의 핀은 제1 핀과 제2 핀을 포함하고,
    상기 회로 블록의 입출력 포트의 배치 또는 모양을 변경시키는 단계 및 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계는,
    상기 제1 핀과 연결된 배선의 네트 네임이 제1 식별자를 포함하면, 상기 제1 식별자를 제외한 제1 네트 네임을 결정하는 단계;
    상기 제2 핀과 연결된 배선의 네트 네임이 제2 식별자를 포함하면, 상기 제2 식별자를 제외한 제2 네트 네임을 결정하는 단계; 및
    상기 제1 네트 네임과 상기 제2 네트 네임이 동일하고, 상기 제1 식별자와 상기 제2 식별자가 상이하면 상기 입출력 포트 중에서 상기 제1 핀과 연결된 제1 입출력 포트와 상기 제2 핀과 연결된 제2 입출력 포트를 서로 인접하게 배치시키는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  6. 제1항에 있어서,
    상기 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법은,
    상기 메모리가, 상기 회로 설계도의 전체 이미지를 저장하는 단계;
    상기 프로세서가, 사용자로부터 상기 입출력 포트 중 어느 하나의 입출력 포트에 대한 선택을 수신하는 단계;
    상기 프로세서가, 상기 사용자의 선택에 응답하여, 상기 회로 설계도의 전체 이미지에서 상기 사용자로부터 선택된 입출력 포트와 대응되는 내부 포트를 강조하는 단계; 및
    상기 디스플레이가, 상기 회로 설계도의 전체 이미지 출력하는 단계;를 더 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  7. 제6항에 있어서,
    상기 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법은,
    상기 메모리가, 상기 회로 설계도에서 상기 입출력 포트에 대응되는 내부 포트를 미리 설정된 배율로 확대한 이미지를 저장하는 단계; 및
    상기 디스플레이가, 상기 사용자의 선택에 응답하여, 상기 사용자로부터 선택된 입출력 포트와 대응되는 내부 포트를 미리 설정된 배율로 확대한 이미지를 출력하는 단계;를 더 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  8. 회로 블록의 그래픽 사용자 인터페이스(Graphical User Interface; GUI)를 변경하는 방법에 있어서,
    디스플레이가, 상기 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계;
    프로세서가, 사용자로부터 시뮬레이션 명령을 수신하고, 상기 시뮬레이션 명령에 응답하여 상기 회로 블록의 주파수 응답 특성을 시뮬레이션하는 단계;
    메모리가, 상기 회로 블록의 주파수 응답 특성에 대한 시뮬레이션 결과를 저장하는 단계;
    상기 프로세서가, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계; 및
    상기 디스플레이가, 상기 변경된 회로 블록의 그래픽 사용자 인터페이스를 출력하는 단계;를 포함하고,
    상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는,
    상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선을 생성하는 단계를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  9. 제8항에 있어서,
    상기 회로 블록의 입출력 포트는 제1 입출력 포트 및 제2 입출력 포트를 포함하고,
    상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는,
    상기 제1 입출력 포트를 입력 포트로 설정하고 상기 제2 입출력 포트를 출력 포트로 설정하여 주파수 응답 특성을 획득한 시뮬레이션 결과에 있어서, 미리 설정된 주파수 이하의 주파수에서 주파수 응답의 크기가 미리 설정된 크기 이상이면 상기 제1 입출력 포트와 상기 제2 입출력 포트를 연결하는 가상의 선을 생성하는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  10. 제8항에 있어서,
    상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는,
    상기 회로 블록 내부에 포함된 복수의 서브 서킷의 핀 중에서 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 핀이 존재하면, 상기 미리 설정된 네임과 동일한 네트 네임을 갖는 배선과 연결된 상기 입출력 포트를 이동시키거나 변형시키는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  11. 제8항에 있어서,
    상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는,
    상기 회로 블록의 입출력 포트 중에서, 상기 시뮬레이션 명령에서 차동쌍으로 설정된 제1 입출력 포트 및 제2 입출력 포트를 서로 인접하게 배치시키는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  12. 제8항에 있어서,
    상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는,
    상기 회로 블록의 입출력 포트 중에서 제1 입출력 포트를 입력 포트로 설정하고 제2 입출력 포트를 출력 포트로 설정하여 주파수 응답 특성을 획득한 시뮬레이션 결과에 있어서, 미리 설정된 주파수에서 주파수 응답의 크기가 미리 설정된 크기 이상이면 상기 제1 입출력 포트와 상기 제2 입출력 포트를 연결하는 가상의 선을 생성하는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  13. 제12항에 있어서,
    상기 제1 입출력 포트와 상기 제2 입출력 포트를 연결하는 가상의 선은, 밴드 패스 필터(Band Pass Filter; BPF)를 나타내는, 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  14. 제8항에 있어서,
    상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 그래픽 사용자 인터페이스를 변경시키는 단계는,
    상기 회로 블록의 입출력 포트 중에서 제1 입출력 포트를 입력 포트로 설정하고 제2 입출력 포트를 출력 포트로 설정하여 획득한 시뮬레이션 결과가 상기 제2 입출력 포트를 입력 포트로 설정하고 상기 제1 입출력 포트를 출력 포트로 설정하여 획득한 시뮬레이션 결과와 상이하면, 상기 제1 입출력 포트와 상기 제2 입출력 포트를 연결하는 가상의 선을 생성하는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  15. 제8항에 있어서,
    상기 프로세서가, 상기 사용자로부터 상기 회로 블록의 입출력 포트 중 어느 하나의 입출력 포트에 대한 선택을 수신하는 단계;
    상기 프로세서가, 상기 사용자의 선택에 응답하여, 상기 사용자로부터 선택된 입출력 포트를 입력 포트 및 출력 포트로 설정하여 획득한 주파수 응답 특성의 그래프를 강조하는 단계; 및
    상기 디스플레이가, 상기 주파수 응답 특성의 그래프를 출력하는 단계;를 더 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  16. 제8항에 있어서,
    상기 프로세서가, 상기 사용자로부터 상기 회로 블록의 입출력 포트 간의 관계를 표시하기 위한 가상의 선에 대한 선택을 수신하는 단계;
    상기 프로세서가, 상기 사용자의 선택에 응답하여, 상기 사용자로부터 선택된 가상의 선과 연결되는 두 개의 입출력 포트 사이에서 획득한 주파수 응답 특성의 그래프를 강조하는 단계; 및
    상기 디스플레이가, 상기 주파수 응답 특성의 그래프를 출력하는 단계;를 더 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  17. 제8항에 있어서,
    상기 디스플레이가, 상기 시뮬레이션 결과에 기초하여 상기 회로 블록의 주파수 응답 특성 그래프를 출력하는 단계;
    상기 프로세서가, 상기 사용자로부터 상기 주파수 응답 특성 그래프 중에서 특정 그래프에 대한 선택을 수신하는 단계; 및
    상기 프로세서가, 상기 회로 블록의 입출력 포트 중에서 상기 사용자로부터 선택된 특정 그래프와 같은 주파수 응답 특성을 나타내는 한 개 또는 두 개의 입출력 포트를 결정하고, 상기 회로 블록 상에 상기 한 개 또는 두 개의 입출력 포트를 강조하는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  18. 제17항에 있어서,
    상기 회로 블록 상에 상기 두 개의 입출력 포트를 표시하는 단계는,
    상기 두 개의 입출력 포트 사이를 연결하는 가상의 선이 존재하면 상기 가상의 선을 강조하는 단계;를 포함하는 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법.
  19. 제1항 내지 제7항 중 어느 한 항의 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된, 컴퓨터 판독 가능 저장 매체.
  20. 제8항 내지 제18항 중 어느 한 항의 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된, 컴퓨터 판독 가능 저장 매체.
KR1020200034917A 2020-03-23 2020-03-23 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체 KR20210118544A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200034917A KR20210118544A (ko) 2020-03-23 2020-03-23 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체
PCT/KR2021/001822 WO2021194089A1 (ko) 2020-03-23 2021-02-10 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200034917A KR20210118544A (ko) 2020-03-23 2020-03-23 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체

Publications (1)

Publication Number Publication Date
KR20210118544A true KR20210118544A (ko) 2021-10-01

Family

ID=77892318

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200034917A KR20210118544A (ko) 2020-03-23 2020-03-23 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체

Country Status (2)

Country Link
KR (1) KR20210118544A (ko)
WO (1) WO2021194089A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024063387A1 (ko) * 2022-09-20 2024-03-28 주식회사 큐심플러스 양자 통신 회로를 가상적으로 시뮬레이션하기 위한 방법 및 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115688671B (zh) * 2022-11-14 2023-11-03 深圳市奇普乐芯片技术有限公司 布线方法、装置、终端及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3178458B2 (ja) * 1999-03-31 2001-06-18 日本電気株式会社 回路シミュレーション装置および方法
KR100363087B1 (ko) * 2000-04-06 2002-12-02 삼성전자 주식회사 비표준 셀을 포함하는 집적회로의 설계 및 레이아웃 방법및 이를 기록한 기록매체
US7350175B2 (en) * 2004-09-29 2008-03-25 Matsushita Electric Industrial Co., Ltd. Circuit board design system, design data analysis method and recording medium with analysis program recorded thereon
JPWO2012114523A1 (ja) * 2011-02-25 2014-07-07 富士通株式会社 設計装置、設計方法、及び設計プログラム
US8893073B2 (en) * 2012-12-27 2014-11-18 Synopsys, Inc. Displaying a congestion indicator for a channel in a circuit design layout

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024063387A1 (ko) * 2022-09-20 2024-03-28 주식회사 큐심플러스 양자 통신 회로를 가상적으로 시뮬레이션하기 위한 방법 및 장치

Also Published As

Publication number Publication date
WO2021194089A1 (ko) 2021-09-30

Similar Documents

Publication Publication Date Title
US11599698B1 (en) IR drop analysis based on sensitivity analysis and visualization
US20210279642A1 (en) Mixed-initiative machine learning systems and methods for determining segmentations
TWI533153B (zh) 用於在具有電感知之設計電子電路中提供在原位可定製化資訊之方法、系統及製造物
US11544434B1 (en) Matched net and device analysis based on parasitics
US8823711B2 (en) Incremental creation of a graphical object to visually represent a data set
JP2015167041A (ja) 機械学習モデル設計支援装置、機械学習モデル設計支援方法、機械学習モデル設計支援装置用プログラム
CN110362307A (zh) 表单页面配置方法及服务器
KR20210118544A (ko) 회로 블록의 그래픽 사용자 인터페이스를 변경하는 방법 및 회로 블록의 그래픽 사용자 인터페이스 변경하는 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 저장 매체
CN112966465B (zh) 电路仿真方法及设备
US9652360B2 (en) Crawling for extracting a model of a GUI-based application
CN112214210A (zh) 后勤业务规则引擎及其配置方法、装置、设备和存储介质
JP4780342B2 (ja) 半導体集積回路の電源モデル作成方法、装置、およびプログラム
US9317638B1 (en) Polymorphic circuit simulation system
CN107562710B (zh) 一种图表处理装置及方法
US8813004B1 (en) Analog fault visualization system and method for circuit designs
US7853442B2 (en) Printed circuit board design instruction support method and device
JP2008287666A (ja) 回路動作検証装置、半導体集積回路の製造方法、回路動作検証方法、制御プログラムおよび可読記録媒体
CN110019492B (zh) 一种信息显示方法及装置
CN113535162A (zh) 前端界面配置方法、展示方法及装置
US20200233932A1 (en) Providing ability to simulate production systems at scale in a fast, scalable way
US11301612B1 (en) Method and apparatus for predicting electrical values in electronic circuits
US11501475B2 (en) Graphical representation of electronic circuit operation
US10482211B1 (en) System and method for electronic circuit design editing having adaptive visual indicia for relative current loading of circuit layout portions
JP6364786B2 (ja) 設計書管理プログラム、設計書管理方法および設計書管理装置
CN115455876B (zh) 用于调试逻辑系统设计的方法及电子设备

Legal Events

Date Code Title Description
A201 Request for examination