양자 명령어 구조와 큐비트 매핑: 하드웨어 제약을 다루는 컴파일 전략

QISA의 계층과 OpenQASM·Quil·cQASM을 살피고, 물리적 연결성 제약 아래 큐비트 매핑과 SWAP 최적화 방식을 정리한다.

2026-08-14 · 최초 발행 2026-01-25

양자 회로가 하드웨어 명령이 되기까지

양자 컴퓨터는 중첩과 얽힘을 활용하는 큐비트로 계산한다. 그러나 양자 알고리즘의 논리적 회로를 물리 장비에서 바로 실행할 수는 없다. 양자 게이트를 하드웨어 제어 명령으로 연결하는 Quantum Instruction Set Architecture(QISA)와, 논리 큐비트를 실제 물리 큐비트에 배치하는 Qubit Mapping이 그 사이를 맡는다.

QISA는 고전 ISA의 x86, ARM처럼 소프트웨어와 하드웨어 계층의 인터페이스가 된다. 양자 알고리즘을 실행 가능한 명령으로 바꾸고, 큐비트 제어·측정·에러 정정 같은 연산을 추상화한다.

양자 알고리즘고수준 양자 프로그래밍 언어QISA 명령어양자 제어 펄스물리적 큐비트 조작단일 큐비트 게이트다중 큐비트 게이트측정 명령조건부 연산

명령은 논리 계층에서 Hadamard, CNOT, T-gate 같은 추상 게이트로 표현된다. 중간 표현 계층은 OpenQASM이나 Quil처럼 회로 최적화를 위한 언어를 제공하며, 물리 계층에서는 마이크로파 펄스나 레이저 제어 같은 하드웨어 특화 명령으로 내려간다. 양자 오류 정정 코드(QECC)를 구현하는 명령도 별도 계층으로 다뤄진다.

서로 다른 양자 어셈블리 언어

OpenQASM은 IBM이 주도하는 오픈소스 양자 어셈블리 언어다. 양자 회로를 텍스트로 기술하는 저수준 언어이며, 버전 3.0부터 고전-양자 하이브리드 연산을 지원한다. Qiskit을 비롯한 주요 양자 프레임워크에서 표준으로 채택한다.

양자 하드웨어회로 최적화기QASM 컴파일러사용자 코드양자 하드웨어회로 최적화기QASM 컴파일러사용자 코드QASM 코드 제출중간 표현 생성게이트 최적화하드웨어 명령 생성큐비트 매핑측정 결과 반환

Quil은 Rigetti Computing이 개발한 양자 명령어 언어다. 고전 메모리와 양자 메모리를 명시적으로 나누며, 양자-고전 하이브리드 알고리즘에 맞춘 구조를 갖는다. Forest SDK와 통합해 시뮬레이션과 실행을 지원한다.

cQASM은 QuTech(델프트 공과대학)가 개발했다. 하드웨어 독립적인 명령어 집합을 제공하고 여러 양자 프로세서 백엔드를 지원한다. 시뮬레이터와 실제 하드웨어 사이의 이식성을 강화하는 것이 목적이다.

연결되지 않은 큐비트를 다루는 매핑

Qubit Mapping은 논리 큐비트를 물리 큐비트에 할당하는 과정이다. 회로에서 요구하는 상호작용과 하드웨어 토폴로지를 함께 고려하며, 필요하면 SWAP 게이트를 넣어 큐비트 간 상호작용을 가능하게 한다. 목표는 회로 깊이와 게이트 수를 줄이는 데 있다.

연결성 제약연결성 제약직접 연결 불가논리 큐비트 Q0물리 큐비트 P2논리 큐비트 Q1물리 큐비트 P5논리 큐비트 Q2물리 큐비트 P7

물리 장비에서는 모든 큐비트 쌍이 직접 상호작용할 수 없다. 코히어런스 시간은 상태 유지 시간을 제한하고, 2-큐비트 게이트의 충실도도 고려 대상이다. 인접 큐비트 간 간섭인 크로스토크 역시 배치와 실행 순서에 영향을 준다.

초기 배치는 회로에서 큐비트가 상호작용하는 빈도를 분석하는 휴리스틱으로 정할 수 있다. 최대 가중치 매칭(Maximum Weight Matching) 같은 그래프 이론 접근도 쓰이며, 강화학습으로 최적 배치를 학습하는 방식도 있다. 상호작용이 잦은 큐비트를 인접하게 두는 것이 연결성 우선 배치의 핵심이다.

실행 중 필요한 CNOT 게이트가 비인접 큐비트를 요구하면 동적 재배치가 필요하다.

인접 큐비트비인접 큐비트아니오회로 실행CNOT 게이트실행 가능?직접 실행SWAP 게이트 삽입큐비트 위치 교환CNOT 게이트 실행다음 게이트로회로 종료?최종 측정

SWAP 경로를 고를 때는 이후의 게이트 연산까지 보는 Look-ahead 알고리즘, 양방향 탐색으로 경로를 찾는 SABRE(SWAP-based Bidirectional Heuristic Search), 하드웨어 배치 구조를 활용하는 토폴로지 인식 매핑을 사용할 수 있다. SWAP 비용과 회로 깊이 사이의 균형을 비용 함수로 다루는 방식도 있다.

컴파일 단계에서 만나는 QISA와 매핑

양자 컴파일러는 알고리즘을 고수준 중간 표현으로 변환한 뒤 게이트 융합과 취소로 회로를 최적화한다. 이어서 Qubit Mapping과 SWAP 삽입을 수행하고, 결과를 QISA 명령 및 하드웨어 제어 펄스로 변환한다.

양자 알고리즘(Python, Q# 등)고수준 중간 표현회로 최적화(게이트 융합, 취소)Qubit MappingSWAP 삽입 최적화QISA 명령어 생성하드웨어 제어 펄스물리적 큐비트 실행

하드웨어의 형태에 따라 매핑 전략도 달라진다. 초전도 큐비트를 사용하는 IBM과 Google 장비에서는 2D 격자 토폴로지를 최적화 대상으로 삼는다. IonQ와 Honeywell의 이온 트랩은 All-to-all 연결성을 활용할 수 있다. 실리콘 스핀 큐비트에서는 선형 배열 제약을, Pasqal과 QuEra의 중성 원자에서는 동적으로 재구성 가능한 배치를 고려한다.

회로 품질을 평가하는 기준

매핑 결과는 SWAP 삽입 후의 총 게이트 레이어 수인 회로 깊이(Circuit Depth), 추가된 SWAP 게이트 비율인 게이트 오버헤드, 이상적 출력과 실제 출력의 유사도인 충실도(Fidelity), 매핑 알고리즘의 실행 시간인 컴파일 시간으로 평가한다.

QFT(Quantum Fourier Transform), VQE(Variational Quantum Eigensolver), QAOA(Quantum Approximate Optimization Algorithm), 그로버 알고리즘(Grover's Algorithm)은 매핑 성능을 비교하는 벤치마크 회로로 활용된다.

QFT(Quantum FourierTransform)매핑 성능 평가VQE(Variational QuantumEigensolver)QAOA(Quantum ApproximateOptimization Algorithm)그로버 알고리즘(Grover's Algorithm)

매핑 최적화가 향하는 방향

에러 인식 매핑은 큐비트별 게이트 충실도 차이를 배치에 반영한다. 중요 연산을 에러율이 낮은 큐비트에 할당하고, 동적 캘리브레이션 데이터를 사용하며, 양자 에러 정정 코드와 통합하는 방식이다.

양자-고전 하이브리드 환경에서는 변분 양자 알고리즘의 효율적 매핑, 고전 최적화 루프와 양자 회로의 동기화, 파라미터화된 회로의 동적 재컴파일, 실시간 피드백 기반 매핑 조정이 다뤄진다.

대규모 시스템에서는 수백~수천 큐비트를 대상으로 하는 스케일러블 알고리즘이 필요하다. 로컬-글로벌 최적화를 결합한 계층적 매핑, 분산 양자 컴퓨팅 환경의 큐비트 배치, 양자 메모리와 연산 큐비트의 분리가 주요 과제다.

Qiskit의 Transpiler은 StochasticSwap, SabreSwap 등 여러 매핑 알고리즘과 백엔드별 최적화 패스를 제공하며, 커스텀 매핑 전략도 구현할 수 있다. Google의 Cirq는 GreedySequenceSearchStrategy 등의 라우팅 알고리즘, Sycamore 프로세서 토폴로지 최적화, 시뮬레이션 기반 매핑 검증을 지원한다. Quantinuum(구 Cambridge Quantum Computing)의 tket 컴파일러는 하드웨어 중립적 중간 표현과 고급 회로 최적화 기술을 제공하고 IBM, Google, IonQ 등 다양한 백엔드를 지원한다.

양자 컴퓨팅QISA큐비트 매핑양자 컴파일회로 최적화