좀 긴 글입니다. 원문을 보시는걸 추천드리고요. 1월 9일 에릭 엥하임 선생님의 글입니다. 내용이 약간 다릅니다.
(https://miriam-english.org/files/fluidics/FluidControlDevices.html) 이거 또한 참조해 보시기 바랍니다.
CPU와 그걸 구성하는 논리 회로는 존재하는 모든 방식으로 만들 수 있습니다. 현재는 트랜지스터 조합을 주로 쓰지만, 이게 유일한 방법은 아니죠. 그리고 그 중에는 공기(유체)도 있습니다.
(유체 AND 게이트)
(유체 OR 게이트)
찰스 배비지가 생각하던 해석기관은 현재 컴퓨터의 컨셉으로 여겨지지만 사실 기계장치의 집합이었습니다. 그것을 전기적으로 바꿔서 하고 있는게 현재의 컴퓨터죠. 에이다 러브레이스가 거기서 돌아가는 첫번째 프로그램을 만들었고 버그가 있었다란 이야기는 익히 알려진 이야기입니다. 하지만 현재 쓰는 2진법이 아니라 10진법 컴퓨터였고, 일반적인 논리회로를 쓰지 않았습니다.
10진수가 아닌 2진수의 사용이란 더 쉽게 논리 회로를 만들 수 있다는 것을 의미합니다. 콘라드 추제(1910-1995)는 세계 최초의 튜링 완전한 컴퓨터(Z3)를 만들어냈으며, 배비지가 만들려고 했던 거대한, 당시 대영제국 예산의 1/4를 사용해야 했던 괴물을 100년만에 그냥 자기 돈으로 만들 수 있게 되었죠. 물론 같은 기계는 아니지만, 그가 사용한 방법 역시 기계식 컴퓨터였습니다. 배비지가 들이려고 했던 예산을 생각해보면 100년에 극복해냈다기 보다는 그만큼 2진법 사용이 좋았다는 것이 되겠습니다. 뭐, 배비지가 2진법을 썼다면 그도 또한 만들 수 있다 라는 억지 추론도 가능하게 되죠.
2진법의 사용을 통한 해석기관이 생겨난 대체역사를 말할 수도 있습니다. 하지만 그보다 더 간단한, 애초에 1800년대 당시에 배비지가 사용 가능한 기술이 있었다면 어떻게 될까요? 바로 유체역학입니다.
(일반적인 유체 회로. 왼쪽에 3개 오른쪽의 2개의 5쌍 10개의 논리회로가 존재합니다. 각 회로마다 2개의 입/출력, 8개의 제어제트, 8개의 개방 통풍구가 있습니다.)
보통 유체 회로라 그러면 뭔가 기계적인 무언가가 작동하는 회로나 전기로 유체 흐름을 제어하는 건지 싶겠지만, 이 유체 회로는 전자도, 기계도 아닙니다. 움직이는 피스톤과 밸브 등의 기계장치를 기반으로 한 것이 아니라 유체 자체(biscosity 등)만이 간섭을 하죠.
1920년대 ~ 40년대 유체의 제트 흐름을 조절하는 방법을 연구하면서 (특히 제트 비행기와 그 엔진을 연구하면서) 정밀하게 제어된 제트는 흐름을 편향시키거나 증폭하거나 연산 자체도 가능하다는 것을 발견해 냅니다. 물론 이미 1800년대 와트가 증기기관을 만든 이후 증기 흐름을 제어하는데 이미 쓰이고 있었던 사실들이었죠.
물론 전자회로의 경우에도 2차 세계대전 당시 이미 전자-기계식 컴퓨터가 개발되어 사용중이었습니다. (위에 언급한 Z3나 콜로서스 같은) 당시 전자제어보다 유체제어는 확실하게 느렸지만, 진공관이 엄청나게 비쌌으므로 두 기술이 공존하는 형태가 1960년대까지 이어졌습니다.
1960년대까지 사용한 공압 전송 시스템이나 공압 처리 시스템은 현대의 것과 매우 비슷한 역할을 했습니다.
물론 이 공존은 1940년대 말 트랜지스터가 등장하고 1950년대부터 상용화되기 시작하면서 서서히 사라지게 됩니다. 생산성을 엄청나게 높인 MOSFET가 여기에 기름을 부은건 당연한 일이겠죠. 더욱이 유체가 다루기 까다롭기 때문에 생기는 문제점들도 사장에 한몫 거들었습니다.
그렇다고 유체 회로가 회로로만 남은 것은 아니고, 이를 이용한 컴퓨터가 만들어지기도 했었습니다. FLODAC이라는 유체 컴퓨터가 1964년에 있었죠. 250개의 nor 게이트로 구성되어 있었습니다. 1970년대 초의 인텔 4004가 2250개 트랜지스터를 사용하고 있었고, 1개 로직 게이트에 대충 2개라고 생각해도 꽤 많죠. 이 컴퓨터는 10Hz의 속도로 움직였지만, 100khz도 가능했을 것이라고 하는군요. 4004가 750khz 였고, 현대는 3Ghz니까 아무리 쳐도 부족한 성능이라고 보여지기도 합니다.
하지만 뇌가 30hz로 동작하고 있으니까요. 추론컨대 인간의 뇌는 약 6Pflops의 연산능력을 갖고 있습니다.
대충 2011년 경 세계 최고 성능의 슈퍼컴퓨터가 10 페타플롭이었다는걸 생각하면 hz가 그렇게 큰 차이가 날까 싶긴 하네요. (현재 최고기록은 후가쿠, 415.5 페타플롭입니다)
인간 뇌처럼 유체 컴퓨팅 또한 마찬가지로, 그렇게까지 전기 기반 기술의 우위가 높지 않습니다.
다만 역시 작동 환경을 상온 (-50도에서 150도 사이) 및 저방사선 상태로 만드는 것이 더 간단한 경우에 전자회로가 너무나도 값싸고 성능이 좋기 때문에 1960년대 이후 이는 사장된 기술이었습니다.
현재는 일반 용도 보다는 의료용(코로나19를 위한 압력만 있으면 되는 비상 인공호흡기, 부품 없는 밸브, 비말노출 없는 압력계 등) 이나 특수상황을 위한 컴퓨팅 (여기에는 놀랍게도 제트엔진과 로켓엔진의 설계가 들어갑니다)으로 쓰이고 있습니다. 예를 들어, 2gf 정도의 추력으로 분당 400kgf의 추력을 제어할 수 있다면 엄청 경제적인 셈이죠.
2005년 경 MIT와 미 해군 HDL의 연구자들은 유체 증폭 및 유체연산에 대한 응용이 가능하다는 사실을 재발견해냈고, 전자제어보다 간단하고 열이나 전리 방사선에 영향을 받지 않으며 크게 만들수도 있고 매우 저렴하다는 점을 알아냈죠. 그리고 유체를 뭘 사용하냐에 따라 생각보다 많이 높은 밀도로 만들 수 있음 또한 알아냈고요. 고열, 고압, 고방사능 등의 특수한 환경 하에서는 일반적인 전기 회로 보다는 유체 회로가 무조건 좋은 성능을 갖게 되는 것이죠.
https://vimeo.com/95586316#at=33
특히 3D 프린터와 CNC를 이용한 에칭으로도 바로 생산할 수 있다는걸 고려하면 나중에는 (특히 우주공간 중에서) 훌륭한 현재 컴퓨터의 대체재가 될 수도 있을 것입니다. 나중에는 오히려 터질까 무서워서 전기로 어떻게 컴퓨터를 쓰냐고 할지도 모르죠.
뭐, 가지 않은 길이라고 붙이긴 했지만 가지 않은 길은 아니고 가다 만 길 되겠습니다. 언젠가 다시 가야할 길이 될 수도 있고요. 근데 물리적 한계에 도달했다고 10몇년째 외치고 있는 전자회로를 보면... 음.... 언제쯤 써볼지 궁금하네요.