멤리스터 크로스바 배열 (Memristor Crossbar Array)

전기전자공학
한 줄 정의: 저항 상태를 기억하는 멤리스터 소자를 격자(가로·세로) 배선의 교차점마다 배치해 행렬 연산이나 메모리 저장을 수행하는 회로 구조입니다.
고온측열 전달
열이 고온부에서 저온부로 이동하는 열전달 개념을 나타냅니다.

쉽게 풀면

멤리스터는 전류가 흐른 이력에 따라 저항값이 바뀌고, 전원을 꺼도 그 저항값을 기억하는 소자입니다. 이런 멤리스터를 바둑판처럼 가로줄과 세로줄이 교차하는 지점마다 하나씩 배치한 것이 크로스바 배열입니다. 각 교차점의 저항이 곱셈 계수처럼 작동해서, 가로줄에 전압을 넣으면 세로줄에서 곱셈과 덧셈이 동시에 이루어진 전류가 나옵니다. 이 때문에 별도의 연산기 없이도 배열 자체가 행렬 곱셈을 수행하는 하드웨어처럼 동작할 수 있습니다.

왜 중요한가

인공신경망의 핵심 연산인 행렬-벡터 곱셈을 저전력·고속으로 아날로그 방식으로 처리할 수 있어, 뉴로모픽 컴퓨팅과 인메모리 연산(in-memory computing) 연구에서 중요하게 다뤄집니다. 기존 메모리와 연산장치를 분리하는 폰노이만 구조의 데이터 이동 병목을 줄이는 대안으로 주목받고 있습니다.

논문에서는 이렇게 쓰입니다

"The memristor crossbar array performs vector-matrix multiplication in the analog domain for neural network inference."

멤리스터 크로스바 배열이 신경망 추론을 위해 벡터-행렬 곱셈을 아날로그 영역에서 수행한다는 내용입니다.

"Device-to-device variation in the crossbar array limits the achievable weight precision in in-memory computing."

크로스바 배열 내 소자 간 편차가 인메모리 컴퓨팅에서 얻을 수 있는 가중치 정밀도를 제한한다는 의미입니다.

조금 더 깊게 보면

크로스바 배열의 각 교차점 저항값은 신경망의 가중치(weight)에 대응하며, 옴의 법칙과 키르히호프 전류 법칙에 의해 배열 전체가 자연스럽게 행렬-벡터 곱을 계산하게 됩니다. 다만 실제 소자에서는 저항 편차, 누설 전류(스니크 패스), 쓰기 정밀도 등의 비이상적 요소가 존재해 이를 보정하는 회로·알고리즘 기법이 함께 연구됩니다.

주의할 점

멤리스터 크로스바는 이상적인 조건에서의 연산 효율을 가정하는 경우가 많으며, 실제 소자의 비선형성과 편차, 누설 경로 문제로 인해 이론적 성능과 실측 성능 사이에 차이가 있을 수 있습니다.

관련 용어