근사컴퓨팅 회로 (Approximate Computing Circuit)

전기전자공학
한 줄 정의: 결과의 정확도를 의도적으로 일부 희생하는 대신 회로 면적, 지연시간, 소비전력을 줄이도록 설계된 컴퓨팅 회로입니다.
신호/전류가 소자를 거쳐 흐르는 회로 개념
여러 소자를 거쳐 신호나 전류가 흐르는 회로의 기본 개념을 나타냅니다.

쉽게 풀면

모든 계산이 항상 완벽하게 정확할 필요는 없습니다. 예를 들어 사람 눈으로 보는 이미지나 소리는 계산 결과가 조금 부정확해도 큰 차이를 느끼지 못하는 경우가 많습니다. 근사컴퓨팅 회로는 이런 특성을 이용해 덧셈기, 곱셈기 같은 연산 회로를 일부러 덜 정밀하게 설계하여 회로를 더 작고 빠르고 전력을 덜 쓰게 만듭니다. 정확도를 조금 낮추는 대신 자원을 크게 아끼는 절충 전략인 셈입니다.

왜 중요한가

이미지·음성 처리, 머신러닝 추론처럼 오차에 어느 정도 관대한 응용이 늘어나면서, 정확도와 자원 소비 사이의 균형을 최적화하는 근사컴퓨팅 연구가 저전력 하드웨어 설계 분야에서 활발히 진행되고 있습니다. 배터리 구동 기기나 대규모 병렬 연산 하드웨어의 에너지 효율을 높이는 실용적 접근으로 다뤄집니다.

핵심 정리

예시로 보기

8비트 두 수의 덧셈에서 하위 4비트만 근사하는 두 가지 방식을 입력 65,536쌍 전부(0~255 × 0~255)에 대해 프로그램으로 세어 본 값입니다. 교육용으로 직접 구현한 가상의 회로이며, 특정 논문의 설계가 아닙니다.

방식구성오차율(ER)평균 오차 거리(MED)최대 오차NMED(MED ÷ 510)
하위 4비트 절단하위 4비트를 버리고 상위 4비트만 정확히 더함99.6%15.0300.0294
하위 OR 가산(LOA형)하위 4비트는 OR, 상위 4비트는 정확한 덧셈, 하위 최상위 비트끼리의 AND를 상위 올림수로 사용68.4%2.87580.0056

두 지표가 말하는 바가 다릅니다. LOA형은 틀리는 입력이 68%나 되지만 틀려도 오차가 작아(최대 8) MED가 절단 방식의 약 1/5입니다. 오차율만 보고 “자주 틀리니 나쁘다”고 판단하면 오차의 크기를 놓칩니다. 입력이 균등분포라는 가정에서 나온 값이라, 실제 응용 데이터의 분포가 다르면 오차 특성도 달라집니다.

자주 하는 오해

오해바로잡기
근사 회로는 고장이나 불량 때문에 틀리는 회로이다.오차를 설계 단계에서 의도하고, 그 크기와 분포를 미리 특성화한 회로입니다. 고장·소프트 에러를 견디는 설계와는 목적이 다릅니다.
오차율이 낮은 근사 회로가 더 좋다.오차율은 틀리는 빈도일 뿐입니다. 상위 비트에서 틀리면 오차가 커지므로 MED·최대 오차와 함께 봐야 합니다.
면적·전력 절감률은 회로의 고유한 성질이다.공정, 셀 라이브러리, 합성 조건, 동작 주파수에 따라 달라집니다. 서로 다른 논문의 절감률은 같은 조건에서 비교한 것이 아니면 직접 견주기 어렵습니다.
오차를 허용하는 응용이면 어디에나 쓸 수 있다.오차가 누적되거나 한 번의 큰 오차가 치명적인 응용(금융 계산, 안전 필수 시스템)에는 맞지 않을 수 있습니다. 응용 수준의 품질 평가가 필요합니다.

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

실제 논문에서

이 용어를 직접 쓴 국내 논문 문장을 아직 수집하지 못했습니다. 수집되는 대로 출처와 함께 싣겠습니다.

예시 문장

아래는 용어의 쓰임을 보여 주려고 만든 예시로, 실제 논문에서 가져온 문장이 아닙니다.

"The approximate adder truncates lower-order bits to reduce critical path delay at the cost of a bounded error."

근사 덧셈기가 정해진 범위 내 오차를 감수하는 대신 하위 비트를 절단하여 임계 경로 지연을 줄였다는 내용입니다.

"Error-resilient applications such as image filtering tolerate the accuracy loss introduced by the approximate multiplier."

이미지 필터링과 같은 오차 허용 응용에서 근사 곱셈기가 유발하는 정확도 손실을 감내할 수 있다는 의미입니다.

조금 더 깊게 보면

근사컴퓨팅 기법은 회로 수준(비트 절단, 근사 논리게이트), 아키텍처 수준(정밀도 가변 연산 유닛), 소프트웨어 수준(루프 근사, 데이터 샘플링 축소) 등 다양한 계층에서 적용될 수 있습니다. 설계 시에는 오차율과 자원 절감 효과 사이의 관계를 정량적으로 분석하는 것이 중요하게 다뤄집니다.

주의할 점

근사컴퓨팅은 오차가 누적되거나 응용의 정확도 요구가 엄격한 경우(금융 계산, 안전 필수 시스템 등)에는 적합하지 않을 수 있으므로 적용 대상 선정이 중요합니다.

헷갈리기 쉬운 용어

이름이 비슷하지만 다른 층위의 개념입니다.

용어한 줄 설명다루는 대상
근사컴퓨팅 회로정확도를 의도적으로 낮춰 면적·전력·지연을 줄인 연산 회로하드웨어(회로)
근사 알고리즘최적해에 가까운 해를 빠르게 구하며 최적해 대비 보장 비율을 증명하는 알고리즘소프트웨어(알고리즘 이론)
저전력 설계 기법전압 조절, 클록 게이팅 등 계산 결과는 그대로 두고 전력을 줄이는 기법 전반설계 기법 전반(정확도 유지)

참고 문헌

  1. Han, J., & Orshansky, M. (2013). Approximate computing: An emerging paradigm for energy-efficient design. Proceedings of the 18th IEEE European Test Symposium (ETS).
  2. Mittal, S. (2016). A survey of techniques for approximate computing. ACM Computing Surveys, 48(4), Article 62.
  3. Mahdiani, H. R., Ahmadi, A., Fakhraie, S. M., & Lucas, C. (2010). Bio-inspired imprecise computational blocks for efficient VLSI implementation of soft-computing applications. IEEE Transactions on Circuits and Systems I: Regular Papers, 57(4), 850–862.
  4. Liang, J., Han, J., & Lombardi, F. (2013). New metrics for the reliability of approximate and probabilistic adders. IEEE Transactions on Computers, 62(9), 1760–1771.

표의 기준값은 위 문헌에 근거한 관례이며, 분야·학술지마다 다른 기준을 쓸 수 있습니다.