소프트 에러, 우주에서 온 입자가 비트를 뒤집는 원리
장거리 비행기를 자주 타는 승무원은 지상에서 일하는 사람보다 우주 방사선에 더 많이 노출된다고 합니다. 높은 고도에서는 우주에서 날아온 입자를 막아 줄 대기층이 얇아지기 때문이죠. 그래서 항공사는 승무원의 방사선 노출량을 따로 관리하기도 합니다.
같은 입자가 반도체 칩에도 영향을 줍니다. 눈에 보이지 않는 입자 하나가 메모리 셀을 지나가며 저장된 0을 1로 바꿔 놓는 일이 실제로 일어나죠. 칩이 망가진 것도 아닌데 데이터만 틀어지는 이 현상이 소프트 에러입니다.
이 글에서는 어떤 입자가 어떤 원리로 비트를 뒤집는지, 발생 빈도가 사용 환경에 따라 어떻게 달라지는지 살펴봅니다. 그리고 입자를 막을 수 없을 때 오류를 고쳐 내는 방법까지 정리합니다.
소프트 에러란 무엇인가
소프트 에러(Soft Error)는 외부에서 들어온 입자 때문에 회로에 저장된 값이 일시적으로 바뀌는 오류입니다. 하나의 입자가 일으키는 사건이라는 뜻에서 SEU(Single Event Upset)라고도 부르죠. 소자 자체는 손상되지 않아서, 올바른 값을 다시 쓰면 정상으로 돌아옵니다.
이와 대비되는 개념이 하드 에러(Hard Error)입니다. 산화막이 파괴되거나 배선이 끊어지는 것처럼 소자가 물리적으로 망가져, 다시 써도 같은 오류가 반복되죠. 그래서 이런 일시적 오류는 수명이나 내구성이 아닌 데이터의 무결성 문제로 다루고, 신뢰성 지표도 따로 관리합니다.
비트를 뒤집는 세 가지 입자
패키지와 소재에서 나오는 알파 입자
칩 주변의 재료에는 우라늄이나 토륨 같은 방사성 불순물이 아주 미량 섞여 있을 수 있습니다. 이들이 붕괴하면서 알파 입자(Alpha Particle)를 내보내죠. 납을 포함한 솔더에서는 납의 방사성 동위원소가 알파 입자의 원인이 되기도 합니다.
알파 입자는 실리콘 안에서 수십 µm 정도밖에 날아가지 못하지만, 그 짧은 거리에서 많은 전하를 만들어 냅니다. 그래서 칩 바로 위의 범프, 솔더, 몰드 수지처럼 칩과 가까운 재료의 순도가 중요하죠. 1970년대 말 DRAM에서 알파 입자에 의한 오류가 보고된 것이 이 분야 연구의 출발점으로 널리 알려져 있습니다.
우주선이 만든 대기 중성자
우주에서 날아온 고에너지 입자인 우주선(Cosmic Ray)은 대기의 원자핵과 부딪히며 수많은 2차 입자를 만들어 냅니다. 지상까지 내려오는 것 가운데 칩에 가장 큰 영향을 주는 것이 고에너지 중성자죠. 현대 칩에서는 이 중성자가 이런 오류의 주된 원인으로 꼽힙니다.
중성자는 전하가 없어서 지나가는 것만으로는 전하를 만들지 않습니다. 대신 실리콘 원자핵과 부딪혀 핵반응을 일으키고, 그때 튀어나온 전하를 띤 파편이 전하를 만들어 내죠. 중성자는 투과력이 커서 패키지를 두껍게 만드는 정도로는 막기 어렵습니다.
열중성자와 붕소-10
에너지를 잃고 느려진 열중성자(Thermal Neutron)도 원인이 될 수 있습니다. 붕소의 동위원소인 붕소-10(B-10)은 열중성자를 잘 흡수하고, 흡수하면 알파 입자와 리튬 원자핵으로 쪼개지죠. 과거에 붕소를 넣은 절연막(BPSG)을 쓰던 칩에서 이 반응이 큰 문제가 되었습니다.
임계 전하로 보는 발생 원리
입자가 실리콘을 지나가면 그 경로를 따라 전자와 정공 쌍이 만들어집니다. 이 전하가 트랜지스터의 접합 근처에서 모이면 회로 노드에 순간적인 전류가 흐르죠. 메모리 셀이나 래치가 저장하던 전압이 이 전류로 흔들립니다.
회로 노드의 값을 뒤집는 데 필요한 최소 전하량을 임계 전하(Qcrit, Critical Charge)라고 합니다. 모인 전하가 임계 전하보다 작으면 회로가 원래 값을 회복하고, 크면 값이 뒤집히죠. 노드의 정전용량이 크고 전원 전압이 높을수록 임계 전하가 커져 잘 뒤집히지 않습니다.
그래서 미세 공정은 양면성을 가집니다. 소자가 작아지고 전압이 낮아지면 임계 전하가 줄어 한 셀이 더 쉽게 뒤집히지만, 셀 면적이 작아져 입자를 맞을 확률은 줄어들죠. 대신 셀이 촘촘해지면서 입자 하나가 여러 비트를 한꺼번에 뒤집는 다중 비트 오류가 늘어나는 경향이 있습니다.
SER과 고도의 관계
이런 오류가 얼마나 자주 생기는지는 SER(Soft Error Rate)로 나타냅니다. 단위로는 10억 소자·시간당 고장 수를 뜻하는 FIT(Failures In Time)를 쓰고, 메모리는 흔히 메가비트당 FIT로 표시하죠. 측정과 보고 방법은 JEDEC의 JESD89 계열 규격이 정하고 있습니다.
대기 중성자는 고도가 높을수록 많아집니다. 높은 산 위에 둔 시스템은 해수면보다 오류가 몇 배에서 열 배 가까이 많다고 알려져 있고, 비행 고도에서는 그 차이가 훨씬 커지죠. 반대로 지하 깊은 곳에서는 크게 줄고, 지구 자기장의 영향으로 위도에 따라서도 차이가 생깁니다.
실제 환경에서 오류가 생기기를 기다리면 너무 오래 걸리므로, 업계는 가속 시험을 함께 씁니다. 알파 입자 선원을 칩 가까이 두거나, 가속기에서 만든 중성자 빔을 쏘아 짧은 시간에 많은 사건을 일으키죠. 그 결과를 실제 환경의 입자 양에 맞춰 환산해 지상의 SER을 추정합니다.
소프트 에러를 줄이는 방법
소재와 공정에서 줄이기
알파 입자는 원천을 줄이는 것이 가장 확실합니다. 방사성 불순물을 극도로 줄인 저알파 솔더와 몰드 소재를 쓰고, 칩 위에 폴리이미드 같은 보호막을 두어 알파 입자의 에너지를 흡수하게 하죠. 붕소-10 문제는 BPSG를 쓰지 않거나 붕소-11 비율을 높인 붕소를 써서 해결해 왔습니다.
소자 구조로 줄이는 방법도 있습니다. SOI(Silicon On Insulator) 웨이퍼는 얇은 실리콘층 아래에 절연막이 있어, 입자가 만든 전하 중 회로가 모을 수 있는 양이 줄어들죠. 우주와 항공용 칩에서는 노드를 이중으로 저장하는 내방사선 셀처럼 회로 자체를 강하게 만드는 설계도 씁니다.
회로와 시스템에서 바로잡기
중성자는 막기 어려우므로, 결국 생긴 오류를 찾아 고치는 방법이 중요합니다. 대표적인 것이 ECC(Error Correcting Code)로, 데이터에 여분의 검사 비트를 붙여 한 비트 오류는 고치고 두 비트 오류는 찾아내는 방식이 널리 쓰이죠. 오류 검출만 하는 패리티는 캐시처럼 원본을 다시 읽어 올 수 있는 곳에 씁니다.
다중 비트 오류에는 인터리빙(Interleaving)이 효과적입니다. 물리적으로 이웃한 셀을 서로 다른 데이터 단어에 배치하면, 입자 하나가 이웃 셀 여러 개를 뒤집어도 각 단어에는 한 비트 오류만 남아 ECC로 고칠 수 있죠. 여기에 주기적으로 메모리를 읽어 오류를 미리 고쳐 두는 스크러빙, 중요한 논리 회로를 세 벌 두고 다수결로 정하는 삼중 모듈 중복을 더하기도 합니다.
흔히 소프트 에러는 메모리만의 문제라고 생각하지만, 플립플롭과 래치 같은 논리 회로에서도 일어납니다. 메모리는 ECC로 보호하기 쉬운 반면 논리 회로는 보호 비용이 커서, 자동차나 서버처럼 신뢰성이 중요한 칩에서는 논리 회로의 오류율도 따로 평가하죠.
소프트 에러와 하드 에러 비교 표
| 구분 | 소프트 에러 | 하드 에러 |
|---|---|---|
| 소자 손상 | 없음 | 물리적 손상 |
| 주요 원인 | 알파 입자, 대기 중성자, 열중성자 | 산화막 파괴, 전자이동, 크랙 |
| 복구 방법 | 값을 다시 쓰면 회복 | 교체나 수리 영역으로 대체 |
| 환경 의존성 | 고도와 위도, 주변 소재 | 온도, 전압, 사용 시간 |
| 대표 대책 | ECC, 인터리빙, 저알파 소재, SOI | 설계 여유, 공정 개선, 선별 시험 |
핵심 정리
소프트 에러는 알파 입자나 우주선이 만든 중성자가 실리콘에 전하를 남겨, 그 양이 임계 전하를 넘을 때 저장된 값이 뒤집히는 현상입니다. 소자는 멀쩡하지만 데이터가 틀어지므로, 저알파 소재와 SOI 같은 소재·구조 대책과 ECC, 인터리빙, 스크러빙 같은 회로·시스템 대책을 함께 씁니다.
승무원의 방사선 노출을 고도와 비행 시간으로 관리하듯, 칩의 SER도 사용 환경의 고도와 주변 소재로 크게 달라집니다. 입자를 완전히 막을 수 없다는 전제에서 출발해, 오류가 생겨도 고칠 수 있게 설계한다는 관점이 이 주제의 핵심입니다.
면접 대비 질문
면접 대비 질문공정이 미세해질수록 소프트 에러가 어떻게 달라지는지, 그리고 다중 비트 오류에 대응하는 방법을 설명해 보세요.
[답변 포인트] 소자가 작아지고 전원 전압이 낮아지면 노드의 정전용량과 전압이 줄어 임계 전하가 작아지므로 셀 하나가 뒤집히기 쉬워지지만, 셀 면적도 줄어 입자를 맞을 확률이 함께 줄어든다는 양면성을 설명합니다. 셀 간격이 좁아지면 입자 하나가 여러 비트를 뒤집는 다중 비트 오류가 늘어나므로, 이웃 셀을 다른 데이터 단어에 배치하는 인터리빙으로 오류를 단어마다 한 비트로 흩어 ECC가 고칠 수 있게 하고, 스크러빙으로 오류가 쌓이기 전에 고친다고 답합니다.









