별 상관 없을 것 같지만 생각보다 친한 사이
저는 물리학과에서 물리학을 공부하였습니다.
물리학을 배우는 과정에서 제가 관심을 갖게 된 분야는 바로 "컴퓨터와 관련이 있는 분야"였습니다.
총 세 번의 글에 걸쳐서, 현대의 컴퓨터가 어떤 원리로 동작하고 있는지, 이 기계를 현실에서 어떻게 구현한 것인지, 좀더 나은 구현법은 없는지를 살펴보았습니다.
현대의 컴퓨터는 '튜링머신'을 원조로 하여, 인간이 내리는 명령을 처리하는 기계입니다. 그런데 이 기계가 알아듣기 위한 명령어는 인간의 언어가 아닌 이진법 체계로 되어있습니다. 이진법은 다들 아시다시피 0과 1만으로 구성되어 있습니다.
현대 컴퓨터는 반도체 소자를 주 부품으로 이용하고 있으며, 반도체 소자는 0과 1을 '전류'가 통하느냐/통하지 않느냐로 구분합니다. 전류는 전자의 이동입니다. 상용화된 컴퓨터의 대다수는 이처럼 반도체 트랜지스터로 이진법을 구현하지만, 실리콘 기반의 반도체 소자는 어느덧 발전 한계에 다다랐습니다.
물리학/재료공학/전자공학 등의 분야에서는 보다 나은 성능의 컴퓨터를 개발하기 위해 다양한 방법을 모색 중입니다. 기존 실리콘 기반의 물질을 2D(그래핀 등) 물질로 바꾸어 처리 속도를 향상시킨다든지, 아예 비트(이진법)을 전류가 아닌 다른 방식으로 구현하기도 합니다. 대표적으로 물질의 상변화를 기준으로 0과 1을 구분하는 상전이메모리(PRAM), 물질 내부의 전자 '스핀'(자성)을 이용한 스핀트로닉스(Spintronics) 등이 있습니다.
이외에도 위상물질, 반금속(Semimetal), 다강체(Multiferroic) 등의 다양한 후보군이 상용화를 기다리고 있습니다. 이들은 모두 고체/광학 물리학의 분야에 속해 있으니 컴퓨터와 밀접한 관련이 있다고 할 수 있겠습니다.
지금까지는 컴퓨터의 정보처리 과정에서 당연히 이진법이 주로 사용됨을 전제로 글을 썼습니다. 사실 ON-OFF의 스위치 쳬계만큼 구현하기 편리한 것도 없습니다. 인간에게 익숙하지는 않지만 이진법의 스위치 수학은 논리적으로도 매우 간단하기까지 합니다. 그러나, 가능만 하다면 하나의 소자에서 0과 1만이 아닌 여러 정보를 저장하게 하는 것이 유리할겁니다. 면적당 정보처리라든가, 전류 효율 등의 이유에서 말입니다.
실제로 2017년 한국의 물리학 연구진이 4진법 소자 구현 가능성을 보이는 물질을 발견했습니다. 이전 글에서 언급했던 '위상 물질'의 일종인데요. 이 위상물질에서는 물리학적으로 신기한 현상들이 많이 관측됩니다. 4진법 소자 구현 가능성의 주인공은 위상 물질 안의 '카이럴 솔리톤'(Chiral Soliton)이라고 합니다.
위상물질은 워낙 어렵고 첨단의 분야라 저도 잘 몰라서 자세히 전달하기는 어렵지만, 물리학적으로 신기한 특성을 많이 가지고 있습니다. 이를테면 우리는 일상에서 사람을 구분하기 위해서 성-이름-생년-월일 등을 기준을 사용합니다. 물리학에서도 어떤 현상이나 신호(입자)를 구분하기 위한 기준이 있는데요. 전하(양전하, 음전하), 자성(=스핀: N극, S극) 등이 바로 그것입니다.
그런데 위상물질에서는 상식적으로 이해하기 쉬운 기준들 외에도, 위상적 혹은 양자역학적인 기준들이 추가됩니다. 그 중에 하나가 카이럴 솔리톤(Chiral Soliton)에 나타난 거울 대칭성(Chirality)입니다. 복잡한 얘기는 제껴두고, 이러한 새로운 기준이 추가됨으로서 4진법 소자의 응용가능성이 있다는 것을 체크해볼 수 있습니다. 기준에 따라 둘로 구분되는 것을 '이진법'에 사용할 수 있다면, 기준에 따라 넷으로 구분되는 것을 '4진법'에 사용할 수 있기 때문입니다.
지금까지 저희가 살펴본 내용은 크게 두 가지 였습니다. 1. 현대의 컴퓨터가 이해할 수 있는 언어인 이진법의 0과 1을 구현하기 위한 방법입니다. 반도체 소자의 전류, 스핀트로닉스, PRAM 등이 있었습니다. 2. 아예 이진법이 아니라 4진법 표현 가능성을 지닌 소자였습니다. 그리고 물리학적으로 이것들이 어떻게 연구되는지를 살펴봤는데요.
이번에는 수많은 0과 1을 '확률적으로' 처리함으로써, 단순 이진법 비트의 한계를 넘는 컴퓨터입니다. 그 유명한 양자컴퓨터입니다.
양자컴퓨터의 소자는 '큐비트' 단위로 구성됩니다. 고전적 컴퓨터의 트랜지스터는 비트 단위로 구성되어있습니다. 한 트랜지스터는 반드시 0 혹은 1의 한 상태에만 존재할 수 있습니다. Yes인 동시에 No일 수는 없으니까요. 그런데 양자컴퓨터의 소자는 그렇지 않습니다. 큐비트는 0인 동시에 1인 상태를 의미합니다. Yes 인 동시에 No 인 이상한 상황인데요. Yes일 확률과 No일 확률이 함께 존재하기 때문입니다. 이를 중첩이라고 부릅니다.
따라서 고전적인 컴퓨터의 트랜지스터가 한 개의 상태만을 구현할 수 있을 때, 큐비트는 두 상태에 한번에 존재하게 됩니다. 양자컴퓨터는 소자가 많으면 많아질 수록 '동시에 존재할수 있는 경우의 수'가 많아지기 때문에 훨씬 많은 정보를 표현할 수 있게 됩니다.
그렇다면 '확률로 존재하는 형태의 정보'를 실제 연산으로 어떻게 처리할까요? 양자얽힘이라는 원리를 이용합니다. 양자얽힘은 간단하게 이런 현상입니다. A와 B라는 큐비트가 있을 때, A와 B가 양자역학적으로 얽혀있다면, A의 정보를 관측함으로써 B의 정보가 결정됩니다. 관측 이전에는 확률 중첩의 상태로 수 많은 경우의 수로만 기능하던 A와 B가, 하나가 결정됨으로 인해 다른 하나까지도 동시에 결정됩니다. 심지어 이 양자얽힘으로 인해 결정되는 정보 전달의 속도는 빠르다는 개념 자체가 없습니다. 진짜 말 그대로 '동시에' 결정되기 때문입니다.
(기민한 독자분들이시라면, 현대 정보통신의 전달속도는 빛의 속도를 넘을 수 없다는 점을 상기하시고 찝찝하실텐데요. 양자얽힘에 대한 재미있는 실험결과가 많지만 분량상 생략하게 되었습니다. 확실한 것은 양자얽힘의 정보 전달은 빠르게 전달되는 것이 아니라 말 그대로 '동시에' 결정됩니다.)
즉, 큐비트는 수많은 정보(경우)가 미결정의 상태로 존재하다가, 양자얽힘의 원리로 인해서 순식간에 하나의 상태로 결정되면서 정보를 처리하는 방식입니다. 마치 판타지 소설에 나올법 한 이야기 같습니다. 현재의 내가 선택할 수 있는 미래의 수많은 가능성 중에서, 하나를 고르면, 바로 그 미래에 해당하는 세상으로 변해버리는..(????) 상당히 상식과는 동떨어진 이야기인데 양자역학이 원래 그렇습니다. 다행히 우리가 사는 크기의 세상에서는 양자역학이 지배적이지 않고, 매우 작은 세상에 해당하는 이야기입니다.
중첩과 양자얽힘을 이용할 수 있는 이 신개념 소자는, 아직 대중화까지는 아니라도 상용화가 가까워 보입니다. 실제로 기사를 보면 인텔, IBM, 구글 등에서는 양자컴퓨터를 이미 개발했다고 합니다. 2019년에는 무려 상용화된 50 큐비트의 양자컴퓨터를 IBM에서 개발했다고 하는데요. 물론 PC로 사용하는 것은 아니고, 복잡한 연산을 처리하는 슈퍼컴퓨터의 일종으로 사용하고 있다고 합니다.
IBM에서 개발한 이 양자컴퓨터는 초전도체를 사용하고, 고전적인 컴퓨터의 전자회로와 함께 결합되어 있는 형태라고 합니다. 극저온에서 작동하고, 이동할 수 없습니다. 머신러닝, 금융, 최적화 등의 복잡한 계산을 수행하는 역할을 하고 있다고 합니다.
그런데 이처럼 개발되는 양자컴퓨터에서 큐비트를 어떻게 구현한다는 것일까요?
앞서 IBM의 슈퍼컴퓨터는 초전도체를 사용한다고 말씀드렸는데요. 금속이 극저온(그러니까, 섭씨 -270도 정도..)에 가까워지면, 상온에서와는 다른 특성들을 보여줍니다. 금속 내의 전자가 꼭 쌍을 이루어 다닌다거나, 통상 지나갈 수 없는 절연체 사이를 전압을 걸어주지도 않는데 전자가 그냥 지나간다든가...등의 여튼 특이한 현상들이 많습니다. 양자역학적으로 설명이 가능한 것들도 있고, 아직 원인을 명확히 알 수 없는 현상들도 있구요.
극저온인 초전도체에서 거동하는 전자 쌍을 큐비트로 이용하는 경우입니다. 큐비트에 사용되는 0과 1, 그리고 얽힘은 전자의 스핀을 이용한다고 하네요. 간단히 요약하면, 전자의 스핀인 N극과 S극이 초전도체 내에서는 양자역학적으로 중첩된 상태에 있게되고, 얽혀있음으로 인해서 큐비트가 되는 것 같습니다.
이외에도 단일 광자라고 해서, 빛 알갱이 하나를 양자역학적으로 얽히게 하는 방법 등이 연구중이라고 합니다. 비교적 최신의 주제들이라 상당히 놀랍습니다.
물리와 컴퓨터는 생각보다 관련이 없는 것 같지만 또 관련이 많이 있다고 많이 느낍니다. 고전적으로는 하드웨어적인 부분에 많이 관계가 있습니다. 아직 전자공학이라는 분야가 태동하기도 전에 초기 트랜지스터는 물리학자들이 개발에 참여했기 때문입니다. 최근에는 소프트웨어적인 부분과도 많이 관계가 되는 것 같습니다. 물리학 연구라는 것이 컴퓨터와 이제는 분리될 수 없기 때문입니다. 머신러닝, 몬테카를로 등의 알고리즘을 사용하기도 하고 통계 물리학의 접근 방식이 알고리즘에 응용되기도 하면서요.