KR20240015594A - 양자정보기술 시스템 설계/검증 및 사용자 이용 편의성향상 처리 장치 및 방법 - Google Patents

양자정보기술 시스템 설계/검증 및 사용자 이용 편의성향상 처리 장치 및 방법 Download PDF

Info

Publication number
KR20240015594A
KR20240015594A KR1020230097176A KR20230097176A KR20240015594A KR 20240015594 A KR20240015594 A KR 20240015594A KR 1020230097176 A KR1020230097176 A KR 1020230097176A KR 20230097176 A KR20230097176 A KR 20230097176A KR 20240015594 A KR20240015594 A KR 20240015594A
Authority
KR
South Korea
Prior art keywords
input
module
block
element blocks
output
Prior art date
Application number
KR1020230097176A
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 PCT/KR2023/010802 priority Critical patent/WO2024025328A1/ko
Publication of KR20240015594A publication Critical patent/KR20240015594A/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
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/80Quantum programming, e.g. interfaces, languages or software-development kits for creating or handling programs capable of running on quantum computers; Platforms for simulating or accessing quantum computers, e.g. cloud-based quantum computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/70Photonic quantum communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/08Intellectual property [IP] blocks or IP cores

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Optics & Photonics (AREA)
  • Electromagnetism (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 양자 통신 회로를 가상적으로 시뮬레이션하기 위한 장치에 관한 것이다.

Description

양자정보기술 시스템 설계/검증 및 사용자 이용 편의성 향상 처리 장치 및 방법{APPRATUS AND METHOD FOR SYSTEM DESIGN/VERIFICATION OF QUANTUM INFORMATION TECHNOLOGY AND FOR USER CONVENIENCE ENHANCEMENT PROCESSING}
본 발명은 양자정보기술에서 사용하는 소자/부품/모듈 등을 컴퓨터 프로그램 내 모델링하고 이를 기반으로 연결/배치하여 양자정보시스템을 소프트웨어로 구성하는 분야에 관한 것이다.
모델링이란 현실세계의 복잡한 데이터들을 컴퓨터 정보 구조로 변환시키는 과정 또는 어떠한 특성을 수학적 또는 컴퓨터를 이용하여 해석, 설계하기 쉽게 변환하는 것을 말하며, 본 발명에서는 모델링을 소자/부품/모듈 등의 특성을 컴퓨터에서 사용하는 정보 구조로 변환하는 과정을 나타내며, 정보 구조로 변환된 것 즉, 모델링된 소자/부품/모듈의 입력에 따라 특성을 반영한 출력을 나타내는데 사용된다.
그래픽 언어(graphical language)는 NI사의 Labview, Mathwork사의 Simulink 등 여러 기능 블록을 그림으로 표현한 것을 이용하여 임의의 기능을 수행하도록 만든 일종의 컴퓨터 프로그램 언어이다. Simulink는 주로 신호처리, Labview 역시 simulink와 거의 유사하며 자사 NI 하드웨어와의 연결을 용이하게 하는 기능을 제공한다.
해당 시뮬레이터(Simulink, Labview) 뿐만 아니라 그래픽 언어는 기본적으로 다음과 같은 구조로 되어있다.
1. 요소 블록을 제공한다. 요소 블록은 소자, 기능함수, 모듈 등을 모델링한 결과물을 나타낸다.
2. 요소 블록 연결을 제공한다. 요소 블록의 연결을 통해 요소 블록 간의 정보 전달이 가능하다.
3. 요소 블록 입력 값 설정을 제공한다. 기 모델링된 요소 블록에 대해 파라미터 값을 입력하여 요소 블록 특성 기반의 신호처리한 출력값을 생성할 수 있다.
4. 결과를 출력한다. 요소 블록의 연결을 통해 출력된 최종 결과물 또는 중간 결과물을 report 형태로 사용자에게 전달이 가능하고, 각 요소 블록의 특성 값 또는 파라미터 입력 값을 report 할 수 있다.
등록특허 US7797674B1 등록특허 CN104536812B 공개특허 CN104536812A
기존 그래픽 언어는 다음과 같은 문제점 또는 기능 제한이 발생한다.
1. 제한된 요소 블록을 제공한다. 사용자가 원하는 기능 수행 블록을 위해서는 기존 제공되는 요소 블록의 조합을 통해 새로운 요소 블록을 구성할 있으나, 원하는 기능 수행에 상관없는 각 요소 블록의 특성을 입력해야 하는 불편함이 있으며, 원하는 기능 수행 블록의 특성을 직접적으로 입력할 수 없는 문제점이 있다.
2. 요소 블록 간 연결은 연결되는 요소 블록간의 데이터 타입 등 일부 정보를 이용하여 연결 가능 여부를 판별한다. 예를 들어 벡터와 스칼라 값의 연결은 불가하다. 만약 연결되는 정보 타입이 맞다면 요소 블록은 문제없이 연결된다. 이는 요소 블록의 인터페이스만 맞춘 것으로 요소 블록 연결 직후 정상 결과가 출력되는 지를 확인해야 한다. 그러나, 매 단계에서 결과 확인이 쉽지 않을 수 있기 때문에 여러 요소 블록이 연결된 후에는 문제가 발생하는 부분을 쉽게 찾을 수 없는 문제점이 있다.
3. 요소 블록 입력 값은 정해진 범위내에서만 입력 가능하다. 예를 들어 "1차 함수"와 같이 수식으로 모델링된 요소 블록은 정해진 범위가 없을 수 있다. 그러나, 특정 기능을 수행하는 요소 블록은 파라미터 값을 선택하거나 제한된 범위에서만 파라미터 값 입력이 가능하다. 특히, 수식으로 변환하기 어려운 입력은 정확한 입력이 불가하게 된다. 예를 들어, 노이즈가 포함된 펄스의 경우 노이즈는 수식으로 모델링이 불가하기 때문에 근사화된 수식으로의 변경만 가능하게 된다.
요소 블록의 결합으로 이루어진 시스템에 대한 최종 결과물만 report 한다. 즉, 저장되어 있는 각 요소별 특성, 입력 값, 최종 시스템 결과물에 대해서만 report를 하기 때문에, 예상치 못한 결과가 나와 수정했던 이력 등을 확인할 수 없다. 또는, 여러 시스템이 있는 경우 report된 최종 결과물을 비교할 수는 있지만, 결과물이 차이 나는 원인을 직접적으로 분석하여 제공하지 않는다.
상기 기술적 과제를 달성하기 위한 양자 통신 회로를 가상적으로 시뮬레이션하기 위한 장치는 사용자로부터 상기 양자 통신 회로의 모델링을 위한 입력 값을 입력 받는 입력 부, 상기 양자 통신 회로의 모델링을 출력하기 위한 출력 부, 및 상기 양자 통신 회로의 모델링을 시뮬레이션하기 위한 제어부를 포함하되, 상기 제어부는, 상기 입력 부를 통해서 입력된 신호에 기초하여 상기 양자 통신 회로의 모델링을 위한 복수 개의 요소 블록들을 배치하고, 상기 복수 개의 요소 블록들 각각을 케이블을 통해서 연결하며, 상기 복수 개의 요소 블록들의 및 상기 케이블의 복수 개의 파라미터 값들을 설정하고, 상기 복수 개의 요소 블록들 중 적어도 하나의 첫 번째 블록으로 입력 값을 입력하고, 상기 복수 개의 블록들 중 적어도 하나의 마지막 블록을 통해서 출력되는 출력 값을 출력하되, 상기 복수 개의 요소 블록들 중 둘 이상의 요소 블록들은 그룹핑되어 하나 이상의 모듈들 각각을 구성하고, 상기 하나 이상의 모듈들 각각은 특성에 따라 하나 이상의 설정 값이 설정되며, 상기 하나 이상의 설정 값은 모듈 이름, 및 모듈의 입력 파라미터 및/또는 출력 파라미터에 의한 모듈 타입을 포함하고, 상기 하나 이상의 모듈들 각각은 상기 모듈 타입, 상기 입력 파라미터 및/또는 상기 출력 파라미터에 기초하여 요소 블록 및/또는 다른 모듈과 연결된다.
또한, 본 발명에서, 상기 하나 이상의 모듈들 각각의 입력 값 및 출력 값은 모듈을 구성하는 상기 둘 이상의 요소 블록들의 특성에 따라 달라지는 장치.
또한, 본 발명에서, 상기 모듈 타입은 제1 타입, 제2 타입 또는 제3 타입 중 하나이며, 상기 제1 타입, 상기 제2 타입 및 상기 제3 타입은 상기 하나 이상의 모듈들 각각이 외부 요소 블록과 연결되는 방식에 따라 구별된다.
또한, 본 발명에서, 상기 제1 타입은 모듈을 구성하는 상기 둘 이상의 요소 블록 중 상기 모듈의 입력으로 사용되는 첫 번째 요소 블록의 입력 신호와 상기 둘 이상의 요소 블록 중 상기 모듈의 출력으로 사용되는 마지막 요소 블록의 출력 신호만 상기 외부 요소 블록과 연결된다.
또한, 본 발명에서, 상기 모듈의 입력으로 사용되는 상기 첫 번째 요소 블록 및/또는 상기 마지막 요소 블록은 적어도 하나의 요소 블록으로 구성된다.
또한, 본 발명에서, 상기 제2 타입은 모듈을 구성하는 상기 둘 이상의 요소 블록 중 상기 둘 이상의 요소 블록들 간 연결되지 않은 입력 신호 및/또는 출력 신호가 상기 외부 요소 블록과 연결되며, 상기 둘 이상의 요소 블록들의 파라미터들 중 일부 파라미터가 사용자로부터 입력된다.
또한, 본 발명에서, 상기 제3 타입은 모듈을 구성하는 상기 둘 이상의 요소 블록들의 모든 입력 신호 및/또는 출력 신호가 상기 외부 요소 블록들과 연결되며, 상기 둘 이상의 요소 블록들의 파라미터들 중 일부 파라미터가 사용자로부터 입력된다.
또한, 본 발명에서, 상기 모듈을 독립적으로 동작하여 입력 신호에 대한 출력 신호를 출력한다.
또한, 본 발명에서, 상기 모듈을 구성하는 상기 둘 이상의 요소 블록들의 파라미터들은 하나의 입력 창을 통해서 사용자로부터 입력 받는다.
또한, 본 발명에서, 상기 하나 이상의 모듈들 및 상기 복수 개의 요소 블록들 중 상기 하나 이상의 모듈들을 구성하지 않는 나머지 블록들은 개별적으로 반복 실행되는 횟수가 설정된다.
또한, 본 발명에서, 상기 복수 개의 파라미터들은 상기 복수 개의 요소 블록들 각각에서 개별적인 설정 창을 통해 입력된 값으로 개별적으로 설정되거나, 하나의 설정창을 통해서 설정된다.
또한, 본 발명에서, 상기 복수 개의 파라미터들이 상기 하나의 설정창을 통해서 설정되는 경우, 상기 복수 개의 파라미터들 중 상기 복수 개의 요소 블록들에 공통적으로 적용되는 파라미터는 하나의 입력 값을 통해서 동일하게 설정된다.
또한, 본 발명에서, 상기 복수 개의 요소 블록들 각각의 입력 값은 사용자에 의해서 설정된 방식으로 입력된다.
또한, 본 발명에서, 상기 복수 개의 요소 블록들 중 상기 적어도 하나의 첫 번째 블록을 제외한 각 블록들은 각 블록들의 이전 블록과 관련된 적어도 하나의 정보에 기초하여 결정된 적어도 하나의 후보 요소 블록 중 선택된 요소 블록이다.
또한, 본 발명에서, 상기 적어도 하나의 정보는 상기 이전 블록의 파라미터, 입력 값 및 출력 값 중 적어도 하나를 포함한다.
또한, 본 발명에서, 상기 제어부는, 상기 복수 개의 요소 블록들 중 상기 사용자에 의해서 선택된 요소 블록의 출력 값을 상기 출력부를 통해서 출력한다.
또한, 본 발명은, 사용자로부터 상기 양자 통신 회로의 모델링을 위한 입력 값을 입력 받는 입력 장치, 상기 양자 통신 회로의 모델링을 출력하기 위한 출력 장치, 상기 양자 통신 회로의 모델링을 시뮬레이션하기 위한 제어 장치; 및 상기 양자 통신 회로의 모델링 및 상기 시뮬레이션의 출력 값을 저장하기 위한 서버를 포함하되, 상기 제어 장치는, 상기 입력 장치를 통해서 사용자로부터 입력된 신호를 획득하고, 상기 획득된 신호에 기초하여 상기 양자 통신 회로의 모델링을 위한 복수 개의 요소 블록들을 배치하고, 상기 복수 개의 요소 블록들 각각을 케이블을 통해서 연결하며, 상기 복수 개의 요소 블록들의 및 상기 케이블의 복수 개의 파라미터 값들을 설정하고, 상기 복수 개의 요소 블록들 중 적어도 하나의 첫 번째 블록으로 입력 값을 입력하고, 상기 복수 개의 블록들 중 적어도 하나의 마지막 블록을 통해서 출력되는 출력 값을 출력하되, 상기 복수 개의 요소 블록들 중 둘 이상의 요소 블록들은 그룹핑되어 하나 이상의 모듈들 각각을 구성하고, 상기 하나 이상의 모듈들 각각은 특성에 따라 하나 이상의 설정 값이 설정되며, 상기 하나 이상의 설정 값은 모듈 이름, 및 모듈의 입력 파라미터 및/또는 출력 파라미터에 의한 모듈 타입을 포함하고, 상기 하나 이상의 모듈들 각각은 상기 모듈 타입, 상기 입력 파라미터 및/또는 상기 출력 파라미터에 기초하여 요소 블록 및/또는 다른 모듈과 연결되는 시스템을 제공한다.
본 발명에 의한 양자정보기술을 이용한 시스템 설계/검증용 시스템은 다음과 같은 효과가 있다.
본 발명은, 테스트를 하드웨어 (chip 포함) 대신 소프트웨어로 진행하여 개발비용을 낮춰 부품 및 모듈의 저가화가 가능해진다.
본 발명은, 사용자가 원하는 기능을 제공하는 요소 블록을 쉽게 구현할 수 있다.
본 발명은, 실제 환경에서 사용되는 입력값을 사용하여 정확한 시스템 설계/검증을 수행할 수 있다.
본 발명의 효과는 이상에서 언급한 것으로 제한되지 않으며, 명세서 전반의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있으나 명시적으로 언급되지 않은 다른 효과들 역시 포함한다.
도 1은 본 발명의 일 실시예에 따른 정보 전송에 대한 구성도의 일 예를 나타낸다
도 2는 본 발명의 일 실시예에 따른 양자 통신 모델링을 위한 시뮬레이터를 포함하는 사용자 시스템의 개략적인 구성도이다.
도 3은 본 발명의 일 실시예에 따른 양자 통신 모델링을 위한 시뮬레이터를 포함하는 서버 시스템의 개략적인 구성도이다
도 4는 본 발명의 일 실시예에 따른 pulse 파형의 왜곡이 발생한 예시도이다
도 5는 본 발명의 일 실시예에 따른 신규 요소 블록을 생성하는 순서도이다.
도 6은 본 발명의 일 실시예에 따른 요소 블록 후보 제시에 대한 순서도이다.
도 7은 본 발명의 일 실시예에 따른 그림 입력 처리에 대한 순서도이다.
도 8은 본 발명의 일 실시예에 따른 광케이블 입력 파라미터 창을 나타낸다.
도 9는 본 발명의 일 실시예에 따른 중간에 위치한 블록의 파라미터 변경 후 값 확인 예시를 나타낸다.
도 10은 본 발명의 일 실시예에 따른 그림 변형 방식을 통한 파라미터 입력 방식을 나타낸다.
도 11은 본 발명의 일 실시예에 따른 개별 요소 블록 입력 파라미터(a)와 통합 입력 파라미터(b) 예시를 나타낸다.
도 12는 본 발명의 일 실시예에 따른 도 10에 도시된 양자 통신 회로에 연관된 등가 회로 모델의 다른 예를 설명하는 데에 참조되는 도면이다.
도 13은 본 발명의 일 실시예에 따른 양자 통신 회로의 시뮬레이션 방법을 예시적으로 나타낸 순서도이다.
도 14 및 도 15는 본 발명의 일 실시예에 따른 양자 통신 회로의 시뮬레이션을 위해서 하나 이상의 요소 블록으로 구성되는 모듈을 생성/등록하기 위한 일 예를 나타낸다.
도 16은 본 발명의 일 실시예에 따른 모듈의 특정 타입의 일 예를 나타낸다.
도 17은 본 발명의 일 실시예에 따른 모듈의 사용 방법의 일 예를 나타내는 순서도이다.
도 18은 본 발명의 일 실시예에 따른 모듈의 내부 요소 블록들의 파라미터 설정 방법의 일 예를 나타낸다.
도 19는 본 발명의 일 실시예에 따른 모듈을 수정하는 방법의 일 예를 나타내는 순서도이다.
도 20 및 도 21은 본 발명의 일 실시예에 따른 모듈의 반복 실행 횟수를 설정하는 방법의 일 예를 나타낸다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 발명에서의 양자정보기술 시스템 설계 및 검증 장치는 모델링된 요소 블록을 기반으로 동작한다. 모델링된 요소 블록은 양자정보기술 시스템 구성 요소 중 일부 또는 전체가 될 수 있으며, 요소 블록을 조합하여 더 큰 요소 블록으로 구송할 수 있다. 설명의 용이를 위해 기능 단위로 구분하여 요소 블록으로 표현하고자 한다. 따라서, 요소 블록이라 함은 부품/소자/모듈을 모델링한 요소 블록 등을 포함할 수 있으며, 부품/소자/모듈들의 조합을 모델링한 것 역시 요소 블록으로 표현할 수 있다.
일반적으로 그래픽 언어에서 사용되는 용어인 드래그, 아이템 선택, 더블 클릭 등의 기본 용어는 본 발명에서 따로 정의하지 않으며, 필요에 의해 재정의 될 수 있다. 요소 블록 모델링 과정 또는 요소 블록 연결 등은 마우스 또는 화면 터치 등으로 실행할 수 있으나, 본 발명의 주요 목적인 신규 요소 블록 생성 등의 과정에 집중하기 위해 부수적인 과정들의 설명은 생략하고자 한다.
시뮬레이터는 특정 언어를 이용하여 최종 결과물을 도출하기 위한 처리 장치를 일반적으로 의미하며, 본 발명에서는 그래픽 언어 기반의 요소 블록을 이용하여 최종 결과물을 도출하는 처리 장치를 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 따른 요소 블록 모델링 및 양자정보기술 시스템 구성 방법에 대해 상세히 설명한다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시예에 따른 정보 전송에 대한 구성도의 일 예를 나타낸다
도 1을 참조하면, 양자 통신 회로를 가상적으로 시뮬레이션하기 위한 정보 전송에서 사용자(110)는 그래픽 언어를 직접 사용하는 주체이며, 입력 장치를 통한 입력을 통해 신규 요소 블록 및 모듈의 생성, 모듈 및 요소 블록들의 연결 및 모듈 및 요소 블록들의 파라미터 값을 입력 장치(또는 입력 부)를 통해서 입력하는 등 시스템의 설계 검증을 수행하는 주체이다.
서버(120)는 신규 모델링 요소 블록 정보 저장, 요소 블록 연결 시 유효한 연결 제공 및 확인, 시스템 출력 결과물 생성 등 양자정보기술 시스템용 시뮬레이터의 정보 저장/처리를 담당할 수 있다. 이때, 서버는 신규 모델링 요소 블록 정보 저장, 시스템용 시뮬레이터의 정보 저장을 담당하는 서버와 요소 블록 연결 시 유효한 연결 제공 및 확인, 시스템 출력 결과물 생성 등 양자정보기술 시스템용 시뮬레이터의 정보 처리를 담당하는 제어 장치로 분리될 수 있다.
관리자(130)는 사용자/서버 동작 모니터링, 사용자/서버 동작 지시, 시스템 유지보수 등의 주체이다.
각 구성원들 간 정보교환이 가능하며, 사용자는 시뮬레이터에서 사용하는 정보들인 신규 블록 생성 정보, 요소 블록 연결 정보, 입력한 파라미터 값 등을 저장할 수 있고, 또는 시뮬레이터는 서버에 위치하여 해당 정보는 서버에만 저장될 수도 있다. 시뮬레이터를 수행하는 주체는 사용자 또는 서버 또는 사용자와 서버가 될 수 있다. 즉, 사용자의 컴퓨터에서만 실행될 수도 있고, 또는 사용자는 서버에 접속하여 서버에서 실행될 수 있다. 또는 일부 기능은 사용자 컴퓨터에서 수행하고 나머지 기능은 서버에서 수행하고 수행 결과는 사용자 또는 서버로 전송할 수 있다.
하기에서는 시뮬레이터 수행 주체를 설명의 편의를 위해 사용자로 지정하여 예시하고, 서버는 사용자와의 공동 수행 주체만 될 수 있는 것으로 예시한다. 사용자가 서버에 접속하여 서버에 있는 시뮬레이터를 실행한다면 시뮬레이터의 수행 주체는 서버가 될 수 있지만 사용자와 서버의 전달 정보만 일부 변경될 뿐 발명의 주 목적을 해치지 않기 때문에 시뮬레이터 수행 주체는 사용자로 예시한다.
도 2는 본 발명의 일 실시예에 따른 양자 통신 모델링을 위한 시뮬레이터를 포함하는 사용자 시스템의 개략적인 구성도이다.
도 2를 참조하면, 사용자 시스템은 사용자 장치(200) 및 서버장치(300)로 구성될 수 있으며, 사용자 장치(200)와 서버장치(300)는 네트워크를 통해서 연결될 수 있다. 이때, 서버장치(300)는 양자 통신 모델링을 통한 시뮬레이션을 위해 생성된 모델, 모듈, 요소 블록, 입력 값 및 출력 값을 저장하는 서버(미도시) 와 모델, 모듈, 요소 블록, 입력 값을 통한 시뮬레이션을 처리하기 위한 제어 장치(또는, 프로세서 장치, 미도시)로 구성될 수 있다.
입력부(210)는 사용자로부터 정보를 입력받기 위한 장치부로써 사용자 입력부(예를 들어, 키보드 장치(211), 터치스크린(touch screen)(212), 마우스(mouse)(213) 등을 포함할 수 있으며, 소자/부품/모듈의 제원/스펙이 나와있는 문서, 하드웨어 실험에서 사용하는 실제 입력/출력 그림 등도 입력을 할 수 있어 영상인식부(214)에서 입력받을 수도 있다.
출력부(220)는 사용자의 입력 또는 사용자 입력에 대한 처리 결과 등을 표시하는 장치부이며, 모니터, 터치스크린 등의 디스플레이부(221)를 통해 표시할 수 있다.
메모리부(230)는 생성된 요소 블록 정보, 요소 블록 연결, 입력된 파라미터 값, 시스템 구성도, 출력 결과 등 시뮬레이터에서 사용되는 정보를 저장할 수 있다. 메모리부(230)는 서버장치(300)와 저장된 정보 중 일부 또는 전체를 네트워크를 통해 송/수신 또는 공유할 수 있다. 메모리는 정보를 전달하거나 신호가 처리되는 등의 시스템 내의 모든 상황에서 저장/읽기가 가능하며, 하기에서는 편의를 위해 저장/읽기 시점은 특정 짓지 않는다.
제어부(240)는 시뮬레이터 입력에 대한 처리부를 나타내며, 각 세부 기능은 다음과 같다.
입력값 처리부(241)는 입력부(210)의 입력을 인식 또는 구분하고, 입력된 값을 모델링된 요소 블록에 연결하여 메모리부(230)에 저장한다.
서버정보 처리부(242)에서는 서버로 전송할 정보를 처리하거나 서버에서 받은 정보를 처리하여 출력부(220) 또는 영상처리부(243)에 전달한다.
영상처리부(243)는 요소 블록을 화면에 구성하고 요소 블록의 배치 등 출력부에 나타내기 위한 처리 기능을 수행하고, 각 요소 블록의 객체명을 생성하여 요소 블록을 구분할 수 있는 기능을 제공한다.
신호처리부(250)는 선택된 요소 블록의 특성과 요소 블록의 입력에 대한 신호처리 등의 연산을 진행하여 출력부에 결과를 전달한다.
사용자가 서버에 접속하여 터미널로 사용하는 경우에도 사용자 시스템은 각 기능부의 역할이 축소/확대될 수는 있으나 본래 목적에는 어긋나지 않게 동작할 수 있다.
서버장치(300)는 사용자로부터 전달받은 신규 모델링 요소 블록 정보 저장, 요소 블록 연결 시 유효한 연결 제공 및 확인, 시스템 출력 결과물 생성 등 양자정보기술 시스템용 시뮬레이터의 정보를 저장/처리한다. 서버장치(300)는 사용자 장치(200)보다 메모리부가 크거나 처리 성능이 뛰어날 수 있으며, 사용자 장치의 기능 확대 및 처리 성능 향상 등에 보조적으로도 사용할 수 있다.
도 3은 본 발명의 일 실시예에 따른 양자 통신 모델링을 위한 시뮬레이터를 포함하는 서버 시스템의 개략적인 구성도이다
제어부(310)는 사용자 장치에서의 제어부(240)와 유사한 기능을 수행한다. 서버에서의 정보처리를 위한 처리부를 나타내며, 각 세부 기능은 다음과 같다.
입력값 처리부(311)는 사용자 장치로부터의 입력을 인식 또는 구분하고, 입력된 값을 모델링된 요소 블록에 연결하여 메모리부(330)에 저장한다. 또는 소자/부품/모듈의 제원/스펙이 나와있는 문서, 하드웨어 실험에서 사용하는 실제 입력/출력 그림 등을 처리하는 기능을 제공한다.
사용자정보 처리부(312)에서는 사용자에게 전송할 정보를 처리하거나 사용자로부터 받은 정보를 처리하여 사용자에게 전송한다.
영상처리부(313)는 각 요소 블록의 객체명을 생성하여 요소 블록을 구분할 수 있는 기능을 제공한다.
신호처리부(320)는 선택된 요소 블록의 특성과 요소 블록의 입력에 대한 신호처리 등의 연산을 진행하여 사용자 장치(200)에 결과를 전달한다.
메모리부(330)는 생성된 요소 블록 정보, 요소 블록 연결, 입력된 파라미터 값, 시스템 구성도, 출력 결과 등 시뮬레이터에서 사용되는 정보 또는 사용자 정보를 저장할 수 있다. 복수의 사용자가 생성한 요소 블록 정보 등을 영상처리부에서 생성한 객체명을 이용하여 구분할 수 있으며, 사용자정보 처리부(312)에서는 사용자의 정보뿐만 아니라 메모리부에 저장되어 있는 다른 사용자가 생성한 요소 블록 정보 또는 기 저장되어 있는 요소 블록 정보 등을 이용할 수 있다.
메모리부(330)은 저장된 정보 중 일부 또는 전체를 네트워크를 통해 사용자 장치(200)에게 송/수신 또는 공유할 수 있다.
사용자가 서버에 접속하여 터미널로 사용하는 경우에도 사용자 시스템은 각 기능부의 역할이 축소/확대될 수는 있으나 본래 목적에는 어긋나지 않게 동작할 수 있다.
상기에서는 사용자 장치와 서버 장치 내 가능한 기능을 기술하였으나, 기능 충돌이 일어나는 경우 사용자 또는 서버 장치에서 제거/추가하여 원활한 동작이 가능할 수 있다.
서버와 사용자 장치간 네트워크 전송 지원을 위한 네트워크 장치는 유/무선 인터넷, LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced), 5G(Fifth Generation)와 같은 이동통신 기술 등을 사용할 수 있다.
서버 장치(300)는 다수의 사용자 장치와의 정보 전달을 수행할 수 있다
신규 요소 블록 생성은 사용자 장치 또는 서버 장치에 존재하지 않는 요소 블록 생성에 관한 것으로 기존 요소 블록에 특성을 새롭게 추가한 것을 포함할 수 있다.
도 4는 본 발명의 일 실시예에 따른 pulse 파형의 왜곡이 발생한 예시도이다
도 4는 pulse 파형의 왜곡(410, 420, 430)이 발생한 예시도이다. 왜곡이 없는 결과를 예상했으나, 실제 부품/소자/모듈에서는 도 4와 같은 결과를 발생시킬 수 있다. 기존 그래픽 언어에서는 일부 왜곡을 형상화할 수는 있어도 정확히 도 4와 같은 출력을 나타낼 수는 없다.
도 5는 본 발명의 일 실시예에 따른 신규 요소 블록을 생성하는 순서도이다.
도 5를 참조하면, 실제 실험결과로 영상이나 이미지 파일을 입력/출력할 수 있다.
구체적으로, 사용자 장치는 인식부를 통해서 실제 실험결과를 입력 받을 수 있다(S501). 예를 들면, 도 4와 같은 결과가 사용자 장치의 영상 인식부를 통해서 입력될 수 있으며, 처리부를 통해서 입력된 실제 실험결과의 특성이 추출될 수 있다(S502). 동일한 부품/소자/모듈의 반복적인 실험을 통해 얻어진 결과를 입력하여 하나의 요소 블록의 출력 특성으로 지정할 수 있으며, 신호처리 또는 머신러닝 등을 통해 특성을 확률적으로 모델링하는 등 다양하게 결과를 활용할 수도 있다.
이후, 추가적인 입력이나, 동일한 입력이 반복되어 입력될 수 있으며, 이 경우, S501 및 S502를 통해서 특성이 추출될 수 있다.
이후, 서버에 등록될 정보 또는 사용자 영상처리부(243)에서 등록될 특성이 정보로 변환될 수 있다(S504). 이렇게 생성된 신규 요소 블록을 사용하기 위해서 사용자 영상 처리부를 통해서 객체가 생성될 수 있다(S505).
이후, 생성된 객체 및/또는 신규 요소 블록(또는 특성 정보 등)은 서버로 전송될 수 있으며(S506), 서버로 전송된 특성 정보는 서버 내의 객체 생성을 위해 처리될 수 있다(S511, S512).
결과 특성이외에도 부품/소자/모듈의 spec.에 표시된 제원 또는 성능 그래프 등을 영상인식부 입력으로 사용할 수 있고 jpg, pdf 등 인식에 용이한 파일 형태로 입력이 가능할 수 있다.
S502에서는 사용자 또는 서버가 지정한 방식으로 특성을 자동 추출할 수 있으며, 이 때, 사용자는 필요한 특성을 추출하기 위한 방식을 지정하여 추출된 특성 중 일부를 선택 또는 변경할 수 있다.
기존 요소 블록에 도 4와 같은 결과 특성을 추가하기 위해서는 신규 블록 생성이 아닌 기존 블록 갱신 과정을 통해 특성을 추가할 수 있다. 기존 블록 갱신 과정은 갱신할 요소 블록을 선택 후 도5와 같은 동일한 처리를 수행할 수 있다. S505, s512에서는 기존 요소 블록과 구분되는 신규 요소 블록으로 객체를 생성할 수 있다.
기존 시뮬레이터에서는 연결되는 요소 블록간의 데이터 타입 등 일부 정보를 이용하여 연결 가능 여부를 판별한다. 예를 들어 벡터와 스칼라 값의 연결은 불가하고, 만약 연결되는 정보 타입이 맞다면 요소 블록은 문제없이 연결된다. 이는 요소 블록의 인터페이스만 맞춘 것으로 요소 블록 연결 직후 정상 결과가 출력되는 지를 확인해야 한다.
본 발명에서는 신규 요소 블록 연결 방식을 제안하며, 연결을 추가하려는 마지막 요소 블록에 대해 해당 요소 블록의 파라미터 값 입력 등이 종료되면 해당 소자를 이용할 수 있는 후보 요소 블록을 화면에 제시해준다. 따라서, 연결이 추가되는 요소 블록뿐만 아니라 보여지는 후보 요소 블록에 따라 시스템 내 요소 블록 구성과 요소 블록 파라미터 값 변경 여부를 쉽게 알 수 있게 해준다.
도 6은 본 발명의 일 실시예에 따른 요소 블록 후보 제시에 대한 순서도이다.
도 6을 참조하면, 양자 통신 회로의 모델링을 위한 요소 블록을 추가하는 경우, 추가되는 요소 블록은 이전 요소 블록과 관련된 적어도 하나의 정보에 기초하여 선택될 수 있다. 즉, 이전 요소 블록의 파라미터, 입력 값 및 출력 값 중 적어도 하나에 기초하여 후보 요소 블록들이 결정될 수 있으며, 결정된 후보 요소 블록들 중 적어도 하나의 요소 블록이 선택될 수 있으며, 선택된 적어도 하나의 요소 블록이 이전 요소 블록과 연결되어 추가될 수 있다.
구체적으로, 추가되는 요소 블록의 후보 요소 블록들을 결정하기 위해서 마지막 요소 블록의 설정 값(예를 들면, 객체 명, 파라미터, 입력 값 및/또는 출력 값 등)이 입력될 수 있으며(S601), 입력된 마지막 요소 블록의 설정 값에 기초하여 서버정보 처리부에서 요소 블록의 특성이 파악될 수 있다.
이후, 영상처리부에서 파악된 특성에 접합한 후보 요소 블록 객체들이 결정(또는 선택)될 수 있으며(S603), 서버 영상처리부에서 파악된 특성에 적합한 후보 요소 블록 객체들이 결정(또는 선택)될 수 있다(S611).
서버 영상처리부에서 파악된 특성에 기초하여 선택된 후보 요소 블록 객체들 사용자 정보처리부에서 선택된 후보 요소 블록 객체들의 정보 처리 후 전송될 수 있다(S612).
즉, 서버 영상처리부에서 파악된 특성에 기초하여 선택된 후보 요소 블록 객체들은 S603에서 결정된 후보 요소 블록 객체들이 제외되고 전송될 수 있다.
S602에서는 마지막 요소 블록 설정 값 뿐만 아니라 마지막 요소 블록 이전의 요소 블록 객체명과 입력 값을 이용하여 추가될 요소 블록을 결정짓는 특성을 파악할 수도 있다.
상기 발명을 이용하면, 추가 요소 블록 후보 제시 뿐만 아니라 추가된 요소 블록의 특성을 일부 사용하지 않거나 입력 값을 제한할 수도 있다.
상기 문제점 부분에서 기술한대로 기존 시뮬레이터는 요소 블록 파라미터 값은 정해진 범위내에서만 입력 가능하다. 특히, 수식으로 변환하기 어려운 입력은 정확한 입력이 불가하게 된다. 예를 들어, 도 5를 통해 생성한 신규 요소 블록의 결과가 도 4와 같다면, 다음 요소 블록의 입력은 도 4가 된다. 따라서, 도 4와 같은 입력을 다음과 같은 도 7 과정으로 처리할 수 있으며, 그림으로 입력함을 예시한다.
도 7은 본 발명의 일 실시예에 따른 그림 입력 처리에 대한 순서도이다.
도 7을 참조하면, 도 4에서 설명한 이미지가 입력되는 경우, 특성을 파악하여 입력값에 대한 객체가 생성될 수 있다.
구체적으로, 도 4에서 설명한 것과 같은 이미지 또는 그래프 형식의 입력 값이 영상 인식부를 통해서 입력되면(S701), 입력 처리부에서 입력된 입력 값의 특성이 파악된 뒤(S702), 서버정보 처리부(242)를 통해서 서버에 전달되거나, 자체적으로 신호처리가 되어야 하는 부분이 분류될 수 있다(S704, S711).
이때, 추가적인 입력 값(이미지 또는 시뮬레이션을 통해 출력 그래프 등)이 존재하거나, 반복적인 입력이 있는 경우(S703), S701 및 S702를 통해서 특성이 파악된 뒤, 서버정보 처리부(242)를 통해서 서버에 전달되거나, 자체적으로 신호처리가 되어야 하는 부분이 분류될 수 있다.
이후, 각각 전달되거나, 분류된 부분은 사용자 영상처리부에서 처리되어 객체가 생성되거나, 서버로 전달된 부분은 서버의 영상 처리부를 통해서 입력에 대한 객체가 생성될 수 있다(S705, S712). 이후, 서버에서 처리되어 생성된 객체는 서버의 신호처리부를 통해서 결과 값(또는 출력 값)이 생성될 수 있다(S713).
S711에서는 해당 입력이 객체로 존재하는 지를 메모리에서 검색하고 없다면 새로이 S712에서 객체를 생성하고 있다면 S712를 생략하고 S713에서 바로 연산을 수행할 수 있다.
사용자의 영상처리부(243)에서는 자체적으로 입력값에 대한 분석을 통해 객체를 생성할 수도 있지만, 서버로부터 생성된 객체 정보를 복사하여 객체를 생성할 수 있다.
기존에는 구성된 시스템의 결과 또는 구성된 시스템의 요소 블록 설정 값 등을 요약하여 출력할 수 있다. 그러나, 본 발명에서는 요소 블록 설정 값 변경에 대한 이력을 저장하여 최종 설정 값 이외의 설정 값을 참조하여 시스템 구성에 대한 방향을 제시할 수 있다. 이러한 기능을 통해 구성된 시스템의 요소 블록 또는 요소 블록 파라미터 값을 변경하는 것에 대한 영향을 쉽게 파악할 수 있다.
이를 이용하여, 하나의 시스템에 대해 복수개의 최종 설정 값을 입력하여 복수 개의 시스템을만들 수 있고, 각 시스템간 다양한 입력 대비 출력값을 비교할 수 있다.
본 발명에서 생성된 요소 블록은 외부공개를 원치 않는 경우 black box로 처리할 수 있다. 즉, 지정된 사용자는 요소 블록의 특성을 볼 수 있지만, 그렇지 않은 사용자는 해당 특성에 대한 제한이 있을 수 있다.
기존에는 요소 블록을 연결하는 선은 신호 전달을 위한 선으로써 요소 블록 연결을 위한 데이터 타입만 고려를 했으나, 광통신 또는 양자정보기술에서는 요소 블록 연결을 광케이블로 하는 경우 광케이블의 특징, 길이, 꼬인 정도 등이 신호 전달에 큰 영향을 미친다. 따라서, 본 발명에서는 광케이블도 하나의 요소 블록으로 처리한다.
광케이블은 다른 요소 블록과 같이 광케이블 자체 특성으로 인해 입력과 출력이 있는 요소 블록으로 처리할 수 있다. 또한, 요소 블록을 연결하는 역할을 하기 때문에 광케이블은 다른 요소 블록과는 형태가 다를 수 있다.
도 8은 본 발명의 일 실시예에 따른 광케이블 입력 파라미터 창을 나타낸다.
도 8은 광케이블 입력 파라미터 창의 예시로써, Pulse 블록과 PM 블록을 이어주는 역할뿐만 아니라 Pol Maintanance와 같은 여러가지 파라미터를 입력할 수 있다. 또한, 도 8에서는 연결하는 블록 중 앞의 블록의 변수명 즉, 출력 변수명을 보여주고 이에 연결할 다음 블록의 변수명을 선택할 수 있다. 이 때, 연결하는 블록들 간 연결이 필요없는 변수명은 연결이 되지 않을 수 있다.
광케이블은 연결하는 블록의 변수들을 자동으로 매핑할 수 있으며 도 8의 Autolink 버튼을 눌러 AutoLink 기능을 사용하여 변수명이 같은 파라미터를 자동 연결하는 등 매핑 관련 기능을 사용할 수 있다.
도 9는 본 발명의 일 실시예에 따른 중간에 위치한 블록의 파라미터 변경 후 값 확인 예시를 나타낸다.
일반적으로 시뮬링크와 같은 기존 GUI 기반 시뮬레이터는 도 9(a)와 같이 블록 배치와 각 블록 파라미터 입력 종료 후 실행을 통해 값을 모니터링할 수 있다.
만약 도9(b)와 같이 중간에 위치한 Block_2 블록의 입력 파라미터를 변경하는 경우, 해당 파라미터 변경의 영향을 파악하기 위해서는 도9(c)와 같이 모니터링 블록을 통해 최종 결과 값을 확인하거나 또는 Block_2 블록에 모니터링 블록을 추가하여 Block_2 블록의 입력 값 변경에 의한 값을 확인할 수 있다.
본 발명에서는 요소 블록 개별 실행이 가능하도록 한다. Block_2 블록의 입력 값을 변경한 경우 1) 시뮬레이션을 다시 실행하여 기존과 같이 모니터링 블록에서 최종 값을 확인할 수 있으며, 2) Block_2 블록의 개별 실행을 통해 파라미터 변경으로 인한 Block_2의 결과 값만을 확인할 수 있다. 이 때, 개별 실행은 해당 블록까지만 실행하며, Block_3 블록은 실행하지 않는다. 즉, Block_2 블록에서 개별 실행하는 경우 해당 블록에 앞서 실행되야 하는 Block_1 블록과 Block_2 블록이 실행되어 개별 실행 결과를 출력할 수 있다. 이 때, Block_2 블록이 Block_1 블록의 결과를 저장하고 있었다면 Block_1 블록의 재실행 없이 바로 Block_2 블록만 실행하여 동일한 결과를 출력할 수 있다.
블록 배치 중 중간에 있는 PM_1 블록의 입력값을 90,90,90,90에서 180,180,180,180으로 변경 후 Run 버튼을 눌러 개별 실행을 수행하여 결과값이 변경될 수 있다. 사용자의 입력을 용이하게 하기 위해 도8에서와 같이 입력 창에 파라미터명에 해당 값을 입력하거나 또는 블록 특성을 반영한 그림에 직접 입력할 수 있다.
파라미터 입력 방식을 파라미터명이 문자로 되어 있는 곳에 입력하는 문자 입력과 파라미터 특징을 문자 또는 그립으로 입력할 수 있다. 이 때, 문자 입력 또는 그림 입력에 입력하면 다른 방식으로도 바로 표현이 가능할 수 있다. 즉, 문자 입력을 통해서 파라미터 특징이 입력되면 그림입력으로 바로 표현될 수 있으며, 그림입력으로 입력되면 문자 입력으로 바로 표현될 수 있다.
또는 두 가지를 혼합하여 일부는 그림 입력 나머지는 문자 입력을 통해 파라미터 입력을 수행할 수 있다.
도 10은 본 발명의 일 실시예에 따른 그림 변형 방식을 통한 파라미터 입력 방식을 나타낸다.
도 10을 참조하면, 일부는 그림을 통해서 입력하고, 나머지는 문자를 통해서 파라미터가 입력될 수 있다.
구체적으로, 도 10에 도시된 바와 같이 양자큐비트의 위상을 변경하기 위해 3차원 그림내 (a) 현재 위상이 표시된 붉은 색 화살표를 (b)와 같이 붉은 색 화살표를 마우스 등으로 회전시켜 180° 위상 변경 입력을 수행할 수 있다.
도 11은 본 발명의 일 실시예에 따른 개별 요소 블록 입력 파라미터(a)와 통합 입력 파라미터(b) 예시를 나타낸다.
도 11을 참조하면, 다수 개의 요소 블록 사용 시, 각 요소 블록마다 파라미터 입력을 해해야 하지만, 전체 파라미터 입력 창을 두어 각 요소 블록의 입력 파라미터들을 모아서 입력될 수 있다.
구체적으로, 도 11(a)는 개별 요소 블록에 입력해야 할 파라미터를 예시하고, (b)에서는 사용하는 요소 블록에 대해 입력을 한 곳에 모아 놓은 창을 예시하며, 파라미터 입력을 최소화하기 위해 공통된 파라미터를 표기하는 것을 예시하고 해당 파라미터를 입력할 수 있음을 예시한다. 필요에 따라서는 전체 파라미터 입력창에서 개별 요소 블록의 입력을 수행할 수 있다.
사용자 입력 편의를 위해 파라미터를 문서 등에서 촬영한 이미지등을 이용하여 직접 입력하지 않고 컴퓨터가 자동 인식하여 입력할 수 있다.
도 12는 본 발명의 일 실시예에 따른 도 10에 도시된 양자 통신 회로에 연관된 등가 회로 모델의 다른 예를 설명하는 데에 참조되는 도면이다.
도 12에서 요소 블록의 실제 소자의 datasheet 중 필요한 파라미터를 박스로 표기되었다. 박스를 정하는 것은 영상처리 또는 이미지 처리, 머신 러닝, AI 등을 이용하여 서버 장치(300)내 저장되있는 파라미터 들과 비교하여 선택할 수 있으며 구체적인 동작은 도 13과 같다.
도 13은 본 발명의 일 실시예에 따른 양자 통신 회로의 시뮬레이션 방법을 예시적으로 나타낸 순서도이다.
도 13을 참조하면, 영상인식부(214)를 통해 입력 받은 정보 중 파라미터명과 값을 인식한 뒤, 입력 처리부(241)에서 파라미터명의 유효성을 검증하기 위해 메모리부(230)에 관련 정보가 있는 지 확인하여, 값이 있다면 해당 파라미터 명이 유효한 것임을 확인하여 인식한 값을 요소 블록의 입력 파라미터명과 값으로 이용한다. 만약 메모리부에 관련 정보가 없다면 서버장치(300)로 해당 파라미터명과 값을 전송하여 서버 장치내 입력값 처리부(311)에서 수신 받은 정보를 처리한 후 처리된 결과를 저장 장치(330)에 저장 또는 사용자에게 처리된 정보를 전송한다. 처리된 결과에 의해 요소 블록의 적당한 입력 파라미터명과 값으로 사용할 수 있다.
만약 이전에 처리한 적이 없는 신규 파라미터라면 새로운 파라미터로 인식하고 사용자와 서버 메모리부 (230, 330)에 저장한 뒤 새로운 파라미터로써 요소 블록의 입력으로 사용한다.
이 때, 파라미터명과 값뿐만 아니라 요소블록을 구분하는 것 역시 이미지 처리를 통해 가능할 수 있다.
예를 들어, 요소 블록 명이 이미지에 포함되어 있거나 몇 가지 파라미터로 요소 블록을 특정할 수 있으면 파라미터명을 구분하는 것과 같이 도 13에 도시된 방법이 사용될 수 있다. 즉, S1301에서 영상인식부를 통해 요소 블록 명을 인식하거나, 파라미터명을 인식하여 S1302에서 유효성 검증을 통해 요소 블록을 특정할 수 있다. 이후 과정은 파라미터명을 인식하는 것과 유사하게 진행할 수 있다.
파라미터명이 없는 경우, 특성을 나타내는 이미지를 인식하여 파라미터명과 매핑하는 과정 역시 요소 블록명을 처리하는 과정과 유사하다. S1301에서 파라미터 값과 파라미터 값이 표기된 이미지를 인식하고, S1702에서 이미지에 맞는 파라미터명을 매핑한다. 이 때, S1303에서 매핑할 파라미터 명이 메모리에 있는지 확인하는 등 이후 절차는 유사하다.
양자 통신 회로의 모델링을 통한 시뮬레이션을 위한 시뮬레이터의 시뮬레이션 화면은 출력부를 통해서 사용자에게 문자, 이미지 등을 통해서 출력될 수 있다.
시뮬레이션 화면은 적어도 3개의 하위 영역으로 구획되며, 툴 박스(Toolbox), 메뉴 바(Menu bar), 작업 창(Workspace), Property, 및/또는 콘솔(Console)로 구성될 수 있다.
툴 박스는 양자 통신 회로의 모델링에 사용 가능한 복수의 소자 블록에 일대일 연관된 복수의 소자 항목이 표시되는 영역이다. 복수의 소자 항목은 트리 구조로 배열될 수 있고, 각 소자 항목은 다른 소자 항목과 구별되도록 고유의 명칭이나 아이콘의 형태로 표시될 수 있다.
메뉴 바는 양자 통신 회로의 모델링에 사용 가능한 복수의 블록 연결선에 일대일 연관된 복수의 연결선 항목이 표시되는 영역이다. 각 연결선 항목은 다른 연결선 항목과 구별되도록 고유의 명칭이나 아이콘의 형태로 표시될 수 있다.
작업 창은 툴 박스에서 선택된 소자 항목과 메뉴 바에서 선택된 블록 연결선이 배치되는 영역으로서, 양자 통신 회로의 가상적인 모델링 과정을 사용자에게 표시한다.
툴 박스에의 목록에 있는 양자 통신 회로의 모델링을 위한 요소 블록들은 드래그 앤 드롭(Drag & Drop) 방식을 통해서 작업 창으로 가져와서 메뉴 바에서 선택된 연결선(또는 케이블)을 통해서 연결될 수 있다. 이 경우, 요소 블록들을 통해 시스템을 생성하고, 시뮬레이션을 진행하면 동일한 요소 블록들이 시뮬레이션을 위한 모델의 여러 곳에서 사용되거나, 반복되어 동작해야 되는 경우가 발생한다.
이 경우, 이러한 요소 블록들을 이용하여 블록들을 그룹핑하여 모듈을 생성하고, 생성된 모듈을 하나의 블록처럼 사용하는 경우, 전체적인 시뮬레이션의 모델링을 간소화하여 효율적으로 시뮬레이션을 수행할 수 있다.
이러한 모듈은 동일한 요소 블록들뿐만 아니라, 유사한 기능을 수행하는 요소 블록들 및 다른 기능을 수행하는 요소 블록들간에도 그룹핑을 통해서 생성될 수 있다.
또한, 모듈은 타입에 따라 외부 블록 요소들과 연결되는 방식이 상이할 수 있다. 모듈은 특성에 따라 하나 이상의 설정 값이 설정될 수 있으며, 하나 이상의 설정 값은 모듈 이름, 및 모듈의 입력 파라미터 및/또는 출력 파라미터에 의한 모듈 타입을 포함할 수 있으며, 모듈은 모듈 타입, 입력 파라미터 및/또는 출력 파라미터에 기초하여 요소 블록 및/또는 다른 모듈과 연결될 수 있다.
도 14 및 도 15는 본 발명의 일 실시예에 따른 양자 통신 회로의 시뮬레이션을 위해서 하나 이상의 요소 블록으로 구성되는 모듈을 생성/등록하기 위한 일 예를 나타낸다.
도 14를 참조하면, 양자 통신 회로의 시뮬레이션을 위한 모델링을 위해 요소 블록들의 그룹핑을 통해서 모듈을 생성할 수 있다.
구체적으로, 모듈로 그룹핑(grouping)할 요소 블록 및 연결선(또는 케이블)을 선택할 수 있다(S1401). 즉, 모듈로 생성하고자 하는 대상(요소 블록 및 케이블)이 선택될 수 있다. 모듈로 생성하고자 하는 요소 블록 및/또는 케이블들을 마우스의 드래그를 통해 선택하거나, 모듈 생성 대상 블록 요소 및/또는 케이블들이 지정될 수 있다. 예를 들면, 도 15에 도시된 바와 같이 BS, BS1, 및 PM 요소 블록 및 이들 요소 블록을 연결하는 케이블을 모듈로 만들기 위해서 선택할 수 있다. 이때, 모듈을 구성하는 요소 블록 및/또는 케이블은 최소 1개 이상이다.
이후, 선택된 요소 블록 및 케이블에 대한 모듈 생성 명령어를 실행할 수 있다(S1402). 예를 들면, 선택된 요소 블록 및/또는 케이블에서 마우스 우 클릭 후 팝업되는 메뉴 중 선택하거나, 메뉴 바에서 모듈 생성 메뉴를 선택할 수 있다.
모듈 생성 명령어를 통해서 모듈이 생성되면, 모듈 특성이 설정될 수 있다(S1402). 즉, 모듈이 생성되면, 모듈의 특징을 나타내는 특성(예를 들면, 모듈 이름, 모듈 내 파라미터 입력에 대한 타입 등)이 설정될 수 있다(S1402).
모듈의 특성이 설정되면, 특성이 설정된 모듈은 툴 박스에 등록될 수 있다(S1404). 특성이 설정되어 생성된 모듈은 추후에 사용되기 위해서 툴 박스에 등록될 수 있다. 이때, 사용자가 입력 장치(또는, 입력 부)를 통해서 등록 여부를 선택하거나, 설정을 통해서 자동 등록이 설정된 경우, 사용자의 선택이 없더라도 자동으로 등록될 수 있다. 자동으로 생성된 모듈이 등록된 경우, 툴 박스의 모듈 폴더를 통해서 생성된 모듈을 확인할 수 있다.
이와 같은 방법을 통해서 복수 개의 요소 블록 및 복 개의 케이블로 구성되는 모듈이 생성되어 저장될 수 있다.
모듈은 생성된 이후, 단계 S1402에서 특성이 설정될 수 있다. 예를 들면, 모듈이 생성된 이후 첫 번째로 클릭(또는 더블 클릭)되는 경우, 모듈의 특성을 입력할 수 있는 창이 팝업될 수 있다.
모듈 특성을 입력하는 창에는 생성하려는 모듈의 이름, 모듈의 파라미터 출력 타입(Parameter export type)을 설정할 수 있는 창이 팝업될 수 있다. 모듈 특성을 입력하는 창은 이 외에도 모듈의 특성을 나타내기 위한 다양한 입력 항목이 존재할 수 있다. 모듈 특성은 모듈을 생성할 때뿐만 아니라, 모듈을 수정할 때에도 변경할 수 있다.
모듈의 파라미터 출력 타입은 모듈이 사용될 때 모듈이 외부 요소 블록과의 연결 방식에 따라 구별될 수 있다. 즉, 파라미터 출력 타입은 모듈을 사용하여 양자 통신 회로의 모델링을 설계할 때 모듈의 외부 요소 블록들과의 연결 가능한 모듈 내부의 입/출력 신호 정보 또는 파라미터 입력 방법 등을 나타낼 수 있다. 따라서, 모듈은 파라미터 출력 타입에 따라 입/출력 신호 정보 또는 파라미터 입력 방식 등이 다양하게 설정될 수 있다.
구체적으로, 모듈의 파라미터 출력 타입은 모듈이 복수 개의 요소 블록으로 구성될 때, 구성되는 복수 개의 요소 블록들과 외부 요소 블록간의 연결 방식이 모듈의 입/출력 신호만 연결되는지, 모듈의 입/출력 신호뿐만 아니라 모듈 내부의 일부 요소 블록들의 입/출력 신호도 외부 요소 블록들과 연결가능한지 또는 모듈의 입/출력 신호뿐만 아니라 모듈을 구성하는 모든 요소 블록들의 입/출력 신호와 외부 요소 블록이 연결 가능한지 여부에 따라 구별될 수 있다.
즉, 모듈이 구성되는 경우, 모듈의 내부를 구성하는 요소 블록들의 특성에 따라 모듈의 입력 신호와 출력 신호가 달라질 수 있다. 따라서, 모듈이 사용되는 경우, 모듈을 구성하는 요소 블록들 간의 내부 연결과는 상관 없이 모듈의 입력 신호와 출력 신호만 외부 요소 블록과 연결될 수 있는 타입(제1 타입), 모듈 내부를 구성하는 요소 블록들 중 일부 요소 블록의 입력 신호 또는 출력 신호가 모듈 외부 요소 블록과 연결될 수 있는 타입(제2 타입), 또는 모듈 내부를 구성하는 요소 블록들 중 모든 요소 블록의 입력 신호 또는 출력 신호가 모듈 외부의 외부 요소 블록들과 연결될 수 있는 타입(제 3 타입)이 존재할 수 있다.
아래는 각 타입에 따른 특징을 설명한다.
Only the first and last block types(제1 타입)
- 모듈을 구성하는 요소 블록들 중 모듈의 입력으로 사용되는 첫 번째 요소 블록의 입력 신호(input signal)와 모듈의 출력으로 사용되는 마지막 요소 블록의 출력 신호(output signal)만 외부 요소 블록들과 연결될 수 있음. 이때, 첫 번째 요소 블록과 마지막 요소 블록은 각각 복수 개일 수 있음. 또는 첫 번째 요소 블록의 입력 신호가 없거나 마지막 요소 블록의 출력 신호가 없을 수 있음. 이하, 다른 타입도 첫 번째 요소 블록 및/또는 마지막 요소 블록은 복수 개일 수 있으며, 입력 신호/출력 신호가 존재하지 않을 수 있음.
- 모듈에 입력되는 입력 신호 및/또는 출력되는 출력 신호는 최대한 단순화된 형태일 수 있으며, 모듈의 외부 요소 블록과의 연결만 고려되어 사용될 수 있음.
All blocks without linked Type(제2 타입)
- 제1 타입에서 모듈을 구성하는 내부의 요소 블록들에 사용자로부터 입력이 가능한 파라미터들이 모두 추가된 형태의 타입
- 모듈 내부를 구성하는 요소 블록들의 파라미터들 중 사용자가 입력 가능한 파라미터들을 사용자가 설정할 수 있음(즉, 요소 블록들의 파라미터들 중 일부 파라미터들이 사용자로부터 획득된 입력 값에 의해서 설정될 수 있음)
- 모듈 내부를 구성하는 요소 블록들의 입/출력 신호들 중 일부 입/출력 신호들과 외부 요소 블록들이 연결될 수 있음.
All blocks Type(제3 타입)
- 모듈 내부를 구성하는 요소 블록들의 모든 입/출력, 사용자 입력이 가능한 파라미터에 대한 신호등 모듈 내부 신호와 모듈 외부의 요소 블록들이 연결될 수 있다.
- 모듈 내부를 구성하는 요소 블록들의 사용자 입력이 가능한 파라미터들이 설정될 수 있다.
- 모듈 내부를 구성하는 요소 블록들의 모든 신호들이 출력부를 통해서 출력될 수 있으며(예를 들면, 텍스트, 이미지, 그래프 등을 통해서), 디버깅을 위해서 사용될 수 있음.
이때, 시뮬레이션의 모델링 및 모듈에 사용되는 첫 번째 요소 블록 및/또는 시뮬레이션의 결과 값이 출력되는 마지막 요소 블록은 한 개 이상일 수 있다. 만약, 첫 번째 요소 블록이 한 개 이상인 경우(예를 들면, 특정 요소 블록(레이저 블록 등등)이 복수 개 있는 경우), 한 개 이상의 첫 번째 요소 블록들에 입력된 신호가 만나는 지점에서 한 개 이상의 신호 중 특정 신호가 선택되거나, 한 개 이상의 신호가 중첩될 수 있다. 예를 들면, 한 개 이상의 첫 번째 요소 블록들에 입력된 신호들이 특정 지점에서 만나는 경우, 스위치 등을 통해서 한 개 이상의 첫 번째 요소 블록들에 입력된 신호들 중 특정 신호가 선택될 수 있다. 또는. 한 개 이상의 첫 번째 요소 블록들에 입력된 신호들이 특정 지점에서 만나는 경우, 입력된 신호들은 중첩되어(예를 들면, 신호들 간의 합산 또는 차감 등) 다음 요소 블록으로 전달될 수 있다. 예를 들면, 사용자로부터 입력 신호를 입력 받는 첫 번째 요소 블록이 요소 블록 A 및 요소 블록 B인 경우, 요소 블록 A와 B에 의해서 처리된 신호는 모델링된 회로의 어느 지점에서 만날 수 있다. 즉, 요소 블록 A 및 B에서 출력된 신호가 바로 만나거나 다른 요소 블록들을 거쳐서 만날 수 있다. 이 경우, 두 개의 신호가 만나는 지점의 스위치를 통해서 두 개의 신호 중 특정 신호가 선택되거나, 두 개의 신호가 만나는 지점의 특정 요소 블록(또는 연산자)를 통해서 두개의 신호가 중첩(합쳐지거나, 하나의 신호에서 나머지 신호가 차감됨)되어 하나의 신호로 변환될 수 있다.
마찬가지로, 한 개 이상의 마지막 요소 블록들에 입력된 신호가 만나는 지점에서 한 개 이상의 신호 중 특정 신호가 선택되거나, 한 개 이상의 신호가 중첩될 수 있다. 예를 들면, 한 개 이상의 마지막 요소 블록들에 입력된 신호들이 특정 지점에서 만나는 경우, 스위치 등을 통해서 한 개 이상의 마지막 요소 블록들에 입력된 신호들 중 특정 신호가 선택될 수 있다. 또는. 한 개 이상의 마지막 요소 블록들에 입력된 신호들이 특정 지점에서 만나는 경우, 입력된 신호들은 중첩되어(예를 들면, 신호들 간의 합산 또는 차감 등) 다음 요소 블록으로 전달되거나(모듈인 경우), 출력될 수 있다. 예를 들면, 시뮬레이션 모델링 또는 모듈의 마지막 요소 블록이 요소 블록 A 및 요소 블록 B인 경우, 요소 블록 A와 B에 의해서 처리된 신호는 모델링된 회로의 어느 지점에서 만날 수 있다. 이 경우, 두 개의 신호가 만나는 지점의 스위치를 통해서 두 개의 신호 중 특정 신호가 선택되거나, 두 개의 신호가 만나는 지점의 특정 요소 블록(또는 연산자)를 통해서 두개의 신호가 중첩(합쳐지거나, 하나의 신호에서 나머지 신호가 차감됨)되어 하나의 신호로 변환될 수 있다.
요소 블록들은 시뮬레이터에 의해서 사용자로부터 요소 블록의 동작을 위한 파라미터 값을 설정 받는 영역, 입/출력되는 신호들의 값을 확인할 수 있는 영역으로 구성되는 에디터 창이 제공될 수 있다. 에디터 창은 요소 블록 별로 위의 영역이 조합되어 표시될 수 있으며, 활성화 시키기 위한 명령(예를 들면, 마우스를 통한 더블 클릭)을 통해 활성화 시킬 수 있다. 에디터 창에는 현재 에디터 창이 열려 있는 요소 블록만 동작시키기 위한 동작(run) 버튼이 있는 영역이 존재할 수 있다. 동작 버튼을 통해서 요소 블록만 독립적으로 동작시켜 요소 블록의 입력 값에 대한 출력 값이 확인될 수 있다.
모듈은 모듈 생성시 모든 모듈에 제공되는 에디터 창이 존재할 수 있으며, 모듈의 에디터 창은 아래와 같은 영역으로 구성될 수 있다.
①사용자가 직접 모듈 전체 동작과 관련된 파라미터 값을 입력할 수 있는 영역으로 모듈 생성 타입과는 상관 없이 모든 모듈에 존재함. 해당 파라미터는 사용자가 입력할 수도 있고, 모듈과 연결된 요소 블록 또는 모듈에서 받아올 수도 있음. 예를 들어, 토글(toggle) 버튼이나 체크 박스 등을 이용하여 해당 파라미터를 사용자가 입력할 지, 다른 요소 블록 또는 모듈에서 받아올 지를 변경할 수 있음. 모듈 생성 시 사용자가 입력할 지, 다른 요소 블록 또는 모듈에서 받아올 지를 결정할 수도 있으며, 초기값으로 둘 중 하나를 지정할 수도 있음.
②모듈 내부 요소 블록들의 입력 신호들의 값을 확인할 수 있는 영역으로 모듈 생성 타입에 따라 확인 가능한 요소 블록과 신호가 다름.
③사용자가 직접 모듈내 요소 블록들의 동작을 위한 파라미터 값을 입력할 수 있는 영역으로 모듈 생성 타입에 따라 확인 가능한 요소 블록과 신호가 다름.
④모듈 내부 block들의 출력 신호들의 값을 확인 할 수 있는 영역으로 모듈 생성 type에 따라 확인 가능한 block과 신호가 다름.
모듈도 요소 블록과 마찬가지로 에디터 창에 에디터 창이 열려 있는 모듈만 동작시키기 위한 동작(run) 버튼이 있는 영역이 존재할 수 있다. 동작 버튼을 통해서 모듈만 독립적으로 동작시켜 요소 블록의 입력 값에 대한 출력 값이 확인될 수 있다.
모듈의 에디터 창은 위의 ①②③④ 영역의 조합으로 구성될 수 있다.
모듈의 에디터 창은 모듈의 타입(파라미터 출력 타입)에 따라 달라질 수 있다. 예를 들면, 제1 타입은 모듈을 구성하는 첫 번째 동작하는 요소 블록의 입력 신호와 마지막에 동작하는 요소 블록의 출력 신호만 에디터 창을 통해서 출력될 수 있다. 제1 타입의 모듈은 사용자 입력을 통해 설정 가능한 내부 요소 블록들의 파라미터들을 재설정할 수 없다. 하지만, 제2 타입 및 제3 타입의 모듈은 사용자로부터 입력된 설정 값에 기초하여 내부 요소 블록들의 파라미터들이 재 설정될 수 있다.
도 16은 본 발명의 일 실시예에 따른 모듈의 특정 타입의 일 예를 나타낸다.
도 16을 참조하면, 제2 타입의 모듈은 모듈을 구성하는 요소 블록들의 일부 입/출력 신호만 출력될 수 있다.
구체적으로, 제2 타입은 제1 타입과 같이 모듈을 구성하는 요소 블록들 간 연결되는 입력 신호/출력 신호는 출력되지 않는다. 하지만, 모듈을 구성하는 요소 블록의 연결되지 않는 입력 신호 및/또는 출력 신호, UI(User Interface)로 입력 가능한 파라미터들은 출력될 수 있다. 제2 타입의 경우, 사용자에 의한 설정에 따라 내부 요소 블록들 간 연결되어 있는 입력 신호 또는 출력 신호가 출력될 수 있다.
예를 들면, 도 16에 도시된 제2 타입의 모듈을 구성하는 PM 요소 블록의 입력 신호는 BS 요소 블록의 out_2 신호와 모듈 내부에서 연결되어 있지 때문에 모듈 또는 요소 블록의 에디터 창에서는 출력되지 않을 수 있다(① 영역). 또한, 도 16의 PM 요소 블록의 출력 신호도 BS1 요소 블록의 in_2 신호와 모듈 내부에서 연결되어 있기 때문에 모듈 또는 요소 블록의 에디터 창에 출력되지 않을 수 있다(② 영역).
생성된 모듈은 사용자에 의해서 또는 자동으로 시뮬레이터의 툴 박스 목록에 등록될 수 있으며, 자동으로 등록된 경우, 툴 박스 목록을 통해서 확인될 수 있다.
도 17은 본 발명의 일 실시예에 따른 모듈의 사용 방법의 일 예를 나타내는 순서도이다.
도 17을 참조하면, 생성된 모듈은 시뮬레이터의 작업 창에 배치되어 양자 통신 회로의 모델링을 위해서 사용될 수 있다.
구체적으로, 생성되거나 툴 박스에 저장된 모듈은 작업 창에 배치될 수 있다(S1701). 예를 들면, 생성된 모듈 또는 툴 박스에 등록된 모듈(또는 요소 블록)은 드래그 앤 드롭 방식을 통해서 작업 창에 배치될 수 있다.
이후, 배치된 모듈 및/또는 요소 블록들은 케이블을 통해서 연결될 수 있다(S1702). 케이블을 이용하여 모듈 및/또는 요소 블록들을 연결하는 경우, 모듈의 파라미터 출력 타입에 따라 모듈의 입력/출력 신호 외의 중간 결과의 신호와 외부 요소 블록들이 연결될 수 있다. 예를 들면, 제1 타입(only the first and last blocks Type)은 모듈 내부의 블록들 중 모듈의 입력으로 사용되는 첫 번째 요소 블록의 입력 신호와 모듈의 출력으로 사용되는 마지막 요소 블록의 출력 신호들만 외부 요소 블록들과 연결될 수 있다. 하지만, 제2 타입(All blocks without linked Type)의 경우, 모듈을 구성하는 내부 요소 블록들의 첫 번째 및 마지막 요소 블록 외의 나머지 요소 블록들의 일부 입/출력 신호와 외부 요소 블록이 연결될 수 있다. 제3 타입(All blocks type)의 경우, 모듈을 구성하는 모든 요소 블록들의 입/출력 신호와 모듈 외부의 요소 블록들이 케이블을 통해서 연결될 수 있다.
배치된 모듈 및/또는 요소 블록들은 앞에서 설명한 방법을 통해서 파라미터들이 설정될 수 있다(S1703).
모듈의 파라미터는 모듈을 구성하는 모든 요소 블록들에게 적용되는 공통 파라미터와 모듈이 생성될 때 설정되는 타입에 따라 설정 가능한 파라미터로 구별될 수 있으며, 사용자로부터 입력된 값에 의해서 설정될 수 있다.
모듈을 구성하는 모든 요소 블록들에게 적용되는 공통 파라미터는 사용자로부터 입력된 값에 기초하여 모든 요소 블록들에게 동일하게 설정될 수 있다. 공통 파라미터는 모듈을 생성할 때 설정되는 타입과 상관 없이 모든 모듈에 기본적으로 적용되는 파라미터일 수 있다. 예를 들면, "input size" 또는 "No. of Repeat"등의 파라미터들이 존재할 수 있다.
모듈의 타입에 따라 설정이 가능한 요소 블록 별 파라미터들이 존재할 수 있다. 해당 파라미터는 요소 블록 별로 사용자가 직접 입력할 수 있는 파라미터들일 수 있다. 예를 들면, 각 요소 블록의 특징에 대응되는 특정 파라미터들이 존재할 수 있다.
단계 S1702와 S1703의 순서는 변경되어 수행되어도 무방하다. 즉, 배치된 모듈 및/또는 요소 블록들의 파라미터가 설정된 이후에 케이블을 통해서 연결될 수 있다.
이후, 배치, 연결 및 파라미터가 연결된 모델을 실행시켜 시뮬레이션을 수행할 수 있다(S1704).
도 18은 본 발명의 일 실시예에 따른 모듈의 내부 요소 블록들의 파라미터 설정 방법의 일 예를 나타낸다.
도 18을 참조하면, 모듈의 파라미터는 모든 요소 블록에 공통적으로 적용되는 공통 파라미터와 모듈의 요소 블록별로 개별적으로 설정될 수 있는 개별 파라미터들로 구별될 수 있다.
구체적으로, 도 18에 도시된 바와 같이 일반적으로 모듈이 생성된 경우, 생성된 모듈을 더블클릭하면, 모듈을 구성하는 요소 블록들을 확인할 수 있으며, 확인된 요소 블록을 하나하나 선택하여 각 요소 블록들의 파라미터들을 각각 설정해야 된다.
하지만. 본 발명의 경우, 생성된 모듈을 더블클릭하면 모듈을 구성하는 모든 요소 블록들의 설정 가능한 파라미터들이 출력되어 전체 입력 신호, 출력 신호 및/또는 사용자 입력 등이 출력될 수 있다.
따라서, 모듈을 구성하는 요소 블록들의 개별적인 입력 창 또는 요소 블록의 에디터 창에 직접 입력하지 않고도 모듈을 구성하는 요소 블록들의 파라미터들을 수정할 수 있다.
이때, 모듈을 모든 요소 블록들의 설정 가능한 파라미터들은 모든 요소 블록들에 공통적으로 적용되는 공통 파라미터와 요소 블록의 특징에 따른 개별 파라미터들이 출력될 수 있다. 공통 파라미터들은 사용자로부터 입력된 값이 모든 요소 블록들에 공통적으로 적용되어 설정되고, 개별 파라미터의 값은 개별 파라미터 각각에 대응되는 요소 블록에 적용된다. 이때, 공통 파라미터를 일부 요소 블록만 다르게 설정하고 싶은 경우, 설정을 통해서 해당 요소 블록의 공통 파라미터만 별도 설정할 수 있는 입력 칸이 생성되거나, 개별 요소 블록을 클릭하여 개별적으로 설정하는 것도 가능하다.
모듈 및 요소 블록들을 통해서 모델링이 완성된 경우, 메뉴 바의 특정 명령을 통해서 모듈을 동작시킬 수 있다. 예를 들면, 메뉴 바의 "Run" 명령어를 통해서 모델링을 통한 시뮬레이션을 실행시킬 수 있다. "Run" 명령이 실행되는 경우, 전체 동작에 관여하는 컨트롤러 블록(Controller block)의 에디터 창이 팝업될 수 있다. 에디터 창을 통해서 시뮬레이션이 실행되기 위한 입력 파라미터(input parameter)들이 설정된 이후, 에디터 창의 하단의 "Run" 버튼이 클릭되면 시뮬레이션이 시작되게 된다.
도 19는 본 발명의 일 실시예에 따른 모듈을 수정하는 방법의 일 예를 나타내는 순서도이다.
도 19를 참조하면, 모듈이 생성된 이후, 파라미터 값 및/또는 요소 블록의 종류, 타입을 변경하고자 하는 경우, 모듈 수정 절차를 통해서 변경할 수 있다.
구체적으로, 모듈을 수정하는 경우, 수정할 모듈을 선택한다(S1901). 수정하고자 하는 모듈을 툴 박스에서 드래그 앤 드랍을 통해 작업 창에 옮기고 해당 모듈 더블 클릭하거나 마우스 우클릭 후 팝업 메뉴 중 모듈 수정 선택 또는 툴 박스 내에 위치한 모듈을 더블 클릭하거나 마우스 우클릭 후 팝업 메뉴 중 모듈 수정 선택할 수 있다.
이후, 모듈이 선택되면 모듈을 구성하는 블록 요소들이 출력될 수 있으며, 모듈에 포함된 요소 블록들 및/또는 케이블을 추가/삭제하여 새로운 시스템을 구성할 수 있다(S1902). 예를 들면, 선택된 모듈의 팝업 창 또는 디스플레이 등을 통해서 선택된 모듈의 구성요소(예를 들면, 모듈 내의 요소 블록의 연결도, 또는 요소 블록 배치도, 특성 나열, 요소 블록 구성 나열 등)가 출력될 수 있다. 모듈의 구성요소가 출력되면 모듈 내의 요소 블록 및/또는 케이블을 삭제/추가하여 새로운 시스템을 구축할 수 있다. 또한, 모듈 내의 요소 블록이나 케이블의 파라미터의 설정이 변경될 수 있다.
변경이 완료되면 "변경 완료" 버튼을 통해서 변경의 완료가 지시될 수 있다.
이후, 수정된 모듈 내의 모듈의 특징을 나타내는 특성을 유지하거나, 변경할 수 있으며, 파라미터 입력에 대한 타입(제1 타입, 제2 타입 또는 제 3타입)이 변경될 수 있다(S1903). 이때, 타입이 변경되면 모듈의 파라미터가 재 설정될 수 있다. 예를 들면, 제1 타입에서 제2 타입으로 변경되는 경우, 제1 타입일때는 입력되지 않았던 파라미터들이 제2 타입으로 변경됨으로써 입력될 수 있다. 모듈의 특성이 유지 또는 변경되는 경우, 사용자에게 이를 확인하는 단계가 추가될 수 있다.
수정된 모듈은 툴 박스에 재 등록될 수 있다(S1904). 수정된 모듈은 추후에 사용되기 위해서 툴 박스에 등록될 수 있으며, 모듈을 생성할 때와 동일하게 자동으로 등록되거나, 사용자가 직접 등록할 수 있다. 자동으로 수정된 모듈이 등록된 경우, 모듈 수정 이후 툴 박스 목록 중 모듈 폴더를 통해서 확인할 수 있다.
등록 기준에 따라 수정되지 않은 특성이 등록기준에 해당하는 경우 중복 등록이 될 수 있기 때문에 이를 방지하기 위해 동일 등록 기준에 대해서는 신규로 등록하지 않고 기존 등록을 대체할 수 있으며, 재등록 단계에서 사용자에 신규 등록 또는 기존 등록 대체를 확인하는 단계가 추가될 수 있다.
도 20 및 도 21은 본 발명의 일 실시예에 따른 모듈의 반복 실행 횟수를 설정하는 방법의 일 예를 나타낸다.
도 20 및 도 21을 참조하면, 모듈 및 요소 블록은 개별적으로 반복 수행 횟수가 설정될 수 있으며, 설정된 반복 횟수만큼 수행된 이후, 출력 신호가 연결된 다음 요소 블록 및/또는 모듈로 전송될 수 있다.
구체적으로, 특정 요소 블록이나 모듈만을 반복 실행하여 결과값을 누적 후 다음 요소 블록이나 모듈로 전달하기 위해 반복 실행 횟수를 다르게 설정할 수 있다.
구성된 요소 블록, 케이블, 모듈 등은 전체 과정(이하 시스템)을 반복해서 수행할 수 있다. 예를 들어, 몬테카를로 시뮬레이션 등 반복적인 수행이 필요한 경우가 존재할 수 있다. 또한 도 20에 도시된 바와 같이 실행 횟수(No. of Repeat) 파라미터는 시스템에 일괄 적용될 수도 있고, 도 21엣 도시된 바와 같이 개별 요소 블록, 모듈 등에 개별적으로 적용될 수도 있다. 또는, 일괄 적용 후, 필요에 따라 개별적으로 변경하여 적용될 수도 있다. 또는 개별적인 반복 횟수 적용 후 시스템 전체 일괄 적용에 대한 반복 횟수가 설정될 수 있다.
도 20에 도시된 바와 같이 컨트롤러의 No. of Repeat 파라미터를 통해서 반복 수행 횟수가 요소 블록 및 모듈에 전체적으로 일괄 적용되는 경우, 반복 수행 마다 결과를 출력 또는 저장될 수 있으며 반복 수행 종료 후 결과를 출력 또는 저장될 수 있다.
또는, 도 21에 도시된 바와 같이 개별 설정을 위해 개별 요소 블록 및/또는 모듈에 No. of Repeat 파라미터의 값이 개별적으로 설정될 수 있다.
이 때, 구현 복잡도를 고려하여 요소 블록들은 동일 반복 횟수를 사용하고 모듈만 반복 횟수가 다르게 설정될 수 있다. 일반적인 시뮬레이션은 화면 진행 순서에 맞게 Block1 -> Module -> Block2로 실행될 수 있다. 그러나, 반복 횟수가 도 21에 도시된 바와 같이 다른 경우 Block1 -> Module -> Block2 순서의 실행이 어려울 수 있다. 따라서, 실행 순서를 Block1 x 3회 -> Module x 10회 -> Block2 x 1회와 같이 반복 횟수만큼을 각 요소 블록 또는 모듈 등을 실행한 후 연결된 다음 요소 블록 또는 모듈을 실행할 수 있다.
이러한 방식을 통해 각 요소 블록 또는 모듈이 필요로 하는 만큼의 데이터를 모아서 처리하는 것이 가능해질 수 있다.
예를 들어, 도 21에서 Block1에서 길이가 5(input size:5)인 펄스가 발생한 경우, Block 1의 결과는 길이 15인 펄스가 되고, Module의 결과는 150 (=15 x 10)이 되어 Block2에서는 총 길이가 150인 펄스가 사용될 수 있다.
이 때, input size는 개별 수행 시의 input 길이를 나타낼 수 있으며, 또는 앞에 연결된 요소 블록의 결과의 길이로 나타낼 수도 있다. input size는 사용자가 개별 요소 블록에 직접 입력할 수 있으며 또는 컨트롤러 요소 블록과 같이 전체적으로 일괄 입력할 수 있다. 또는, 일부 요소 블록만 직접 입력이나 일괄 입력을 하고 나머지 요소 블록은 앞에 연결된 요소 블록의 결과를 받아서 input size를 정할 수 있다.
개별적인 반복 횟수 적용 후 시스템 전체 일괄 적용에 대한 반복 횟수를 설정하는 경우, 개별적인 반복 횟수 적용에 대한 몬테카를로 시뮬레이션 등이 수행될 수 있다.
상기에서 마우스 클릭을 설명의 편의를 위해 우클릭과 좌클릭으로 구분 설명하였으나, 구현 및 사용 편의에 의해 좌/우 클릭은 변경될 수 있다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
한편, 본 발명의 예시로 표현한 시뮬레이터 기술에 대해서는 본 출원인이 대한민국 특허출원 제10-2021-0124408호(출원일 2021.09.16), 제10-2022-0015162호(출원일 2022.02.06) "양자정보기술 시스템 설계/검증 및 사용자 이용 편의성 향상 처리 장치 및 방법"을 통하여 상세하게 기술하였으며, 본 발명이 위 특허출원의 시뮬레이터 구성 및 사용자 편의 제공 프로세스를 그대로 따르는 것은 아니지만 본 발명의 기술적 사항을 이해할 목적으로 활용될 수 있으며, 그에 따라 본 명세서에서는 이와 중복되는 내용은 생략하기로 한다.
이상 첨부된 도면을 참조하여 본 발명의 실시 예들을 설명하였지만, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
200: 사용자 장치
300: 서버 장치

Claims (17)

  1. 양자 통신 회로를 가상적으로 시뮬레이션하기 위한 장치에 있어서,
    사용자로부터 상기 양자 통신 회로의 모델링을 위한 입력 값을 입력 받는 입력 부,
    상기 양자 통신 회로의 모델링을 출력하기 위한 출력 부, 및
    상기 양자 통신 회로의 모델링을 시뮬레이션하기 위한 제어부를 포함하되,
    상기 제어부는,
    상기 입력 부를 통해서 입력된 신호에 기초하여 상기 양자 통신 회로의 모델링을 위한 복수 개의 요소 블록들을 배치하고,
    상기 복수 개의 요소 블록들 각각을 케이블을 통해서 연결하며,
    상기 복수 개의 요소 블록들의 및 상기 케이블의 복수 개의 파라미터 값들을 설정하고,
    상기 복수 개의 요소 블록들 중 적어도 하나의 첫 번째 블록으로 입력 값을 입력하고, 상기 복수 개의 블록들 중 적어도 하나의 마지막 블록을 통해서 출력되는 출력 값을 출력하되,
    상기 복수 개의 요소 블록들 중 둘 이상의 요소 블록들은 그룹핑되어 하나 이상의 모듈들 각각을 구성하고,
    상기 하나 이상의 모듈들 각각은 특성에 따라 하나 이상의 설정 값이 설정되며,
    상기 하나 이상의 설정 값은 모듈 이름, 및 모듈의 입력 파라미터 및/또는 출력 파라미터에 의한 모듈 타입을 포함하고,
    상기 하나 이상의 모듈들 각각은 상기 모듈 타입, 상기 입력 파라미터 및/또는 상기 출력 파라미터에 기초하여 요소 블록 및/또는 다른 모듈과 연결되는 장치.
  2. 제1 항에 있어서,
    상기 하나 이상의 모듈들 각각의 입력 값 및 출력 값은 모듈을 구성하는 상기 둘 이상의 요소 블록들의 특성에 따라 달라지는 장치.
  3. 제1 항에 있어서,
    상기 모듈 타입은 제1 타입, 제2 타입 또는 제3 타입 중 하나이며,
    상기 제1 타입, 상기 제2 타입 및 상기 제3 타입은 상기 하나 이상의 모듈들 각각이 외부 요소 블록과 연결되는 방식에 따라 구별되는 장치.
  4. 제3 항에 있어서,
    상기 제1 타입은 모듈을 구성하는 상기 둘 이상의 요소 블록 중 상기 모듈의 입력으로 사용되는 첫 번째 요소 블록의 입력 신호와 상기 둘 이상의 요소 블록 중 상기 모듈의 출력으로 사용되는 마지막 요소 블록의 출력 신호만 상기 외부 요소 블록과 연결되며,
  5. 제4 항에 있어서,
    상기 모듈의 입력으로 사용되는 상기 첫 번째 요소 블록 및/또는 상기 마지막 요소 블록은 적어도 하나의 요소 블록으로 구성되는 장치.
  6. 제3 항에 있어서,
    상기 제2 타입은 모듈을 구성하는 상기 둘 이상의 요소 블록 중 상기 둘 이상의 요소 블록들 간 연결되지 않은 입력 신호 및/또는 출력 신호가 상기 외부 요소 블록과 연결되며,
    상기 둘 이상의 요소 블록들의 파라미터들 중 일부 파라미터가 사용자로부터 입력되는 장치.
  7. 제3 항에 있어서,
    상기 제3 타입은 모듈을 구성하는 상기 둘 이상의 요소 블록들의 모든 입력 신호 및/또는 출력 신호가 상기 외부 요소 블록들과 연결되며,
    상기 둘 이상의 요소 블록들의 파라미터들 중 일부 파라미터가 사용자로부터 입력되는 장치.
  8. 제1 항에 있어서,
    상기 모듈을 독립적으로 동작하여 입력 신호에 대한 출력 신호를 출력하는 장치.
  9. 제1 항에 있어서,
    상기 모듈을 구성하는 상기 둘 이상의 요소 블록들의 파라미터들은 하나의 입력 창을 통해서 사용자로부터 입력받는 장치.
  10. 제1 항에 있어서,
    상기 하나 이상의 모듈들 및 상기 복수 개의 요소 블록들 중 상기 하나 이상의 모듈들을 구성하지 않는 나머지 블록들은 개별적으로 반복 실행되는 횟수가 설정되는 장치.
  11. 제1 항에 있어서,
    상기 복수 개의 파라미터들은 상기 복수 개의 요소 블록들 각각에서 개별적인 설정 창을 통해 입력된 값으로 개별적으로 설정되거나, 하나의 설정창을 통해서 설정되는 장치.
  12. 제11 항에 있어서,
    상기 복수 개의 파라미터들이 상기 하나의 설정창을 통해서 설정되는 경우, 상기 복수 개의 파라미터들 중 상기 복수 개의 요소 블록들에 공통적으로 적용되는 파라미터는 하나의 입력 값을 통해서 동일하게 설정되는 장치.
  13. 제1 항에 있어서,
    상기 복수 개의 요소 블록들 각각의 입력 값은 사용자에 의해서 설정된 방식으로 입력되는 장치.
  14. 제1 항에 있어서,
    상기 복수 개의 요소 블록들 중 상기 적어도 하나의 첫 번째 블록을 제외한 각 블록들은 각 블록들의 이전 블록과 관련된 적어도 하나의 정보에 기초하여 결정된 적어도 하나의 후보 요소 블록 중 선택된 요소 블록인 장치.
  15. 제14 항에 있어서,
    상기 적어도 하나의 정보는 상기 이전 블록의 파라미터, 입력 값 및 출력 값 중 적어도 하나를 포함하는 장치.
  16. 제1 항에 있어서, 상기 제어부는,
    상기 복수 개의 요소 블록들 중 상기 사용자에 의해서 선택된 요소 블록의 출력 값을 상기 출력부를 통해서 출력하는 장치.
  17. 양자 통신 회로를 가상적으로 시뮬레이션하기 위한 시스템에 있어서,
    사용자로부터 상기 양자 통신 회로의 모델링을 위한 입력 값을 입력 받는 입력 장치,
    상기 양자 통신 회로의 모델링을 출력하기 위한 출력 장치,
    상기 양자 통신 회로의 모델링을 시뮬레이션하기 위한 제어 장치; 및
    상기 양자 통신 회로의 모델링 및 상기 시뮬레이션의 출력 값을 저장하기 위한 서버를 포함하되,
    상기 제어 장치는,
    상기 입력 장치를 통해서 사용자로부터 입력된 신호를 획득하고,
    상기 획득된 신호에 기초하여 상기 양자 통신 회로의 모델링을 위한 복수 개의 요소 블록들을 배치하고, 상기 복수 개의 요소 블록들 각각을 케이블을 통해서 연결하며, 상기 복수 개의 요소 블록들의 및 상기 케이블의 복수 개의 파라미터 값들을 설정하고, 상기 복수 개의 요소 블록들 중 적어도 하나의 첫 번째 블록으로 입력 값을 입력하고, 상기 복수 개의 블록들 중 적어도 하나의 마지막 블록을 통해서 출력되는 출력 값을 출력하되,
    상기 복수 개의 요소 블록들 중 둘 이상의 요소 블록들은 그룹핑되어 하나 이상의 모듈들 각각을 구성하고,
    상기 하나 이상의 모듈들 각각은 특성에 따라 하나 이상의 설정 값이 설정되며,
    상기 하나 이상의 설정 값은 모듈 이름, 및 모듈의 입력 파라미터 및/또는 출력 파라미터에 의한 모듈 타입을 포함하고,
    상기 하나 이상의 모듈들 각각은 상기 모듈 타입, 상기 입력 파라미터 및/또는 상기 출력 파라미터에 기초하여 요소 블록 및/또는 다른 모듈과 연결되는 시스템.
KR1020230097176A 2022-07-27 2023-07-26 양자정보기술 시스템 설계/검증 및 사용자 이용 편의성향상 처리 장치 및 방법 KR20240015594A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2023/010802 WO2024025328A1 (ko) 2022-07-27 2023-07-26 양자정보기술 시스템 설계/검증 및 사용자 이용 편의성 향상 처리 장치 및 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20220093529 2022-07-27
KR1020220093529 2022-07-27

Publications (1)

Publication Number Publication Date
KR20240015594A true KR20240015594A (ko) 2024-02-05

Family

ID=89903971

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230097176A KR20240015594A (ko) 2022-07-27 2023-07-26 양자정보기술 시스템 설계/검증 및 사용자 이용 편의성향상 처리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20240015594A (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7797674B1 (en) 2004-12-28 2010-09-14 The Mathworks, Inc. Independent component-wide parameter specification for graphical languages
CN104536812A (zh) 2014-12-30 2015-04-22 北京无线电计量测试研究所 一种基于LabVIEW的动态链接库的调用方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7797674B1 (en) 2004-12-28 2010-09-14 The Mathworks, Inc. Independent component-wide parameter specification for graphical languages
CN104536812A (zh) 2014-12-30 2015-04-22 北京无线电计量测试研究所 一种基于LabVIEW的动态链接库的调用方法

Similar Documents

Publication Publication Date Title
US9754059B2 (en) Graphical design verification environment generator
CN109739766B (zh) 一种快速搭建fpga数字仿真模型的系统及方法
EP0869433A2 (en) A test development system and method for software with a graphical user interface
TW495687B (en) System and method for integrated circuit design
CN104572072B (zh) 一种对基于mvc模式的程序的语言转换方法与设备
US20150100946A1 (en) Using mock data to validate applications
CN101847169A (zh) 集成电路设计的原理图的交互式简化
US10719645B1 (en) Model structure analysis with integration of transformed slice
CN110286967A (zh) 交互式教程集成
US9557989B2 (en) Comparison and merging of IC design data
CN106021816A (zh) 一种基于行为树的分布式系统行为仿真分析工具的实现方法
JP2016105270A (ja) リーン製品モデリングシステム及び方法
CN113268227A (zh) 一种零代码可视化的软件开发平台及开发方法
US20060059444A1 (en) High level validation of designs and products
US20160275219A1 (en) Simulating an industrial system
CN114064028A (zh) 一种基于在线可视化编辑的空间分析建模方法
KR20240015594A (ko) 양자정보기술 시스템 설계/검증 및 사용자 이용 편의성향상 처리 장치 및 방법
US20160154627A1 (en) Representation, comparison, and troubleshooting of native data between environments
CN116719735A (zh) 一种测试用例生成方法及装置
Shatnawi et al. Generating a language-independent graphical user interfaces from UML models.
CN106527840A (zh) 一种控制分布式服务器的方法及装置
Safa The making of user-interface designer a proprietary DSM tool
US10706206B1 (en) Methods for layout driven synthesis of transmission line routes in integrated circuits
CN114238128A (zh) 测试用例生成方法、装置、电子设备及计算机可读介质
Brel et al. Reusing and Combining UI, Task and Software Component Models to Compose New Applications