Моделирование опасности одиночных сбоев от космических частиц
для памяти с коррекцией ошибок
М. В. Подзолко
Научно-исследовательский институт ядерной физики имени Д. В. Скобельцына (НИИЯФ МГУ). Россия, 119991, Москва, Ленинские горы, д. 1, стр. 2.
E-mail: [email protected]
Статья поступила 23.06.2017, подписана в печать 04.09.2017.
В настоящей работе моделируется опасность одиночных сбоев от космических частиц для компьютерной памяти с коррекцией ошибок на борту космических аппаратов. Дано краткое описание существующих механизмов обнаружения и коррекции ошибок в памяти. Приведены формулы для расчета вероятности возникновения более одной, двух и т. д. ошибок хотя бы в одном блоке памяти. Рассчитаны значения вероятности «неисправляемых» сбоев для некоторых микросхем для конкретных условий полета КА.
Ключевые слова: одиночные сбои, микросхемы памяти, коррекция ошибок, тяжелые заряженные частицы, протоны, солнечная вспышка, радиационные пояса Земли.
УДК: 523.4, 523.62, 629.78, 519.724, 004.052. PACS: 94.20.wq, 94.30.Xy, 02.50.Cw.
Введение
При эксплуатации на космических аппаратах (КА) микросхемы памяти подвергаются опасности одиночных сбоев (SEU, single event upsets), т.е. изменения состояния 1 бита памяти, вызванного попаданием энергичной частицы космического происхождения, или вторичных частиц, генерируемых первичными частицами в материалах КА. Главную опасность при толщине защиты КА <5 г/см2 представляют потоки энергичных протонов и ионов от мощных солнечных вспышек, а также протонов радиационных поясов.
В то же время существует технология коррекции ошибок (ECC, error checking and correction), позволяющая обнаруживать и исправлять ошибки в 1 или более битах в блоке памяти, за счет хранения для каждого блока данных добавочных «контрольных» битов. Технология достаточно стандартная для наземных устройств: для оперативной памяти (ОЗУ) применяется в серверах и промышленных компьютерах; для постоянной памяти (ПЗУ) на жестких или оптических дисках или NAND-флеш-памяти — во всех пользовательских устройствах. Также эта технология используется и в космосе.
При использовании коррекции ошибок на КА в качестве характеристики стойкости памяти к сбоям следует рассматривать не частоту сбоев как таковых, а вероятность сбоя, который не сможет быть исправлен или обнаружен за счет использования ECC, т. е. появления > 1, 2 и т. д. ошибок хотя бы в одном блоке памяти за заданное время.
В настоящей работе рассчитаны формулы для этой вероятности, а также значения вероятности «неисправляемых» сбоев для конкретных условий полета КА для некоторых микросхем ОЗУ.
1. Одиночные сбои в микросхемах от энергичных частиц
Одиночный сбой в микросхеме происходит в результате прохождения тяжелой заряженной частицы (ТЗЧ; ионы с зарядовым числом г ^ 2) через чувствительный объем одного из элементов микросхемы. При этом часть энергии частицы расходуется на ионизацию кремния. Импульс тока, вызванный рекомбинацией индуцированных ионом дырок и электронов, при превышении некоторой критической величины может привести к изменению логического состояния элемента памяти: 1 меняется на 0 или наоборот («мягкая ошибка»; жесткие ошибки, происходящие значительно реже, в этой работе не рассматриваются).
Протоны и нейтроны имеют значительно более низкое энерговыделение. Однако при пролете высокоэнергичного протона/нейтрона в результате ядерных взаимодействий с веществом микросхемы могут генерироваться вторичные ТЗЧ, которые в свою очередь могут приводить к одиночным сбоям.
Характеристикой чувствительности микросхемы к одиночным сбоям от ТЗЧ и протонов/нейтронов является «сечение сбоев»:
^юП
CTion (L, в, ф) = a„(E, в, ф) =
F(L) ■ cos в'
F(E) ■ cos в'
Здесь v — число инверсий ячеек памяти в единицу времени [с-1], E — энергия протонов, L — линейная передача энергии (ЛПЭ) ТЗЧ, F — поток частиц [смс-1], в, ф — зенитный и азимутальный углы между направлением потока и поверхностью микросхемы.
Сечение сбоев для конкретной микросхемы определяется экспериментально в ходе наземных испытаний на ускорителях частиц, на каждом этапе которых микросхема подвергается облучению моно-
v
энергетическим и мононаправленным пучком частиц заданного сорта. В качестве примера на рис. 1 показано сечение сбоев от ТЗЧ для микросхемы ОЗУ SDRAM (synchronous dynamic random access memory — синхронная динамическая память с произвольным доступом) Micron MT48LC16M8A2 объемом 128 Мбит, полученное по результатам испытаний в разных лабораториях [1, 2].
10 20 30 40 ЛПЭ, МэВ/(мг/см2)
Рис. 1. Экспериментальное сечение сбоев от ТЗЧ (точки) для микросхемы SDRAM Micron MT48LC16M8A2 128 Мбит и его аппроксимация двухпараметрической функцией
Для использования таких экспериментальных данных в модельных расчетах применяют аналитические аппроксимации. Как правило, для этих целей используется 4-параметрическая функция Вей-булла [3]
o(L) = aSat • (l - exp ())•
Для наших расчетов использовалась более простая функция, предложенная в [4]:
m ( 10Lo)
a(L) = CTSat exp I--— I,
которая имеет только два параметра: «сечение насыщения» CTsat = a(L ^ то) и «пороговое» значение ЛПЭ L0. Аппроксимация экспериментально полученного сечения сбоев для микросхемы SDRAM Micron MT48LC16M8A2 такой функцией также показана на рис. 1.
Модельные расчеты числа инверсий ячеек в памяти на борту КА за заданное время полета при воздействии всенаправленных потоков ТЗЧ и протонов проводятся по формуле
v(t) =
CTion(L, Q) • f (L, Q, t) dLdQ dt +
t Q Lm
+
a„(E, Q) • F(E, Q, t) dE dQ dt,
t Q Em
где /(!) — дифференциальный ЛПЭ-спектр ТЗЧ и Р (Е) — дифференциальный энергетический спектр протонов за защитой КА, П — простран-
ственный угол между направлением потока и поверхностью микросхемы. При этом спектры ТЗЧ и протонов за защитой рассчитываются для заданной орбиты КА при помощи существующих моделей потоков энергичных частиц в космическом пространстве и их прохождения через материал защиты. Результаты таких расчетов и их сравнение с реально зафиксированной частотой одиночных сбоев на КА приводятся, например, в работах [5-7].
2. Механизмы коррекции ошибок в памяти
Компьютерная память разделена на большое число «блоков» определенного размера. В настоящее время типичный размер «блока» для ОЗУ составляет 64 бит, для ПЗУ на жестких и оптических дисках или флеш-памяти ^ 2048—4096 бит. Общая идея обнаружения и коррекции ошибок в памяти заключается в хранении для каждого блока данных дополнительной «контрольной» информации. При записи блока в контрольные биты записываются значения, вычисляемые как некоторая функция от данных. При последующем чтении блока эти значения вычисляются заново и сравниваются с сохраненными ранее. Ниже дано краткое описание наиболее простых методов обнаружения и коррекции ошибок.
Простейший метод, позволяющий обнаружить (но не исправить) ошибку в 1 бите в блоке памяти, состоит в добавлении к блоку одного контрольного бита («бит четности»), в который записывается сумма по модулю 2 значений всех битов данных (табл. 1, а). При чтении контрольная сумма вычисляется заново и сравнивается с сохраненным значением. Если с момента последней записи ошибки в данных или контрольном бите не возникли, вычисленное и сохраненное значения совпадут; в случае появления ошибки в 1 бите — будут различаться. Ошибку в 2 битах этот метод не обнаруживает.
Но как можно использовать информацию о наличие ошибки в блоке памяти? Если ошибка произошла в процессорном кеше со сквозной записью, можно загрузить неповрежденную копию данных из ОЗУ. Но если ошибка произошла в ОЗУ, вариантов действий немного: перезагрузить компьютер или, возможно, перезапустить программу, в пространстве памяти которой произошла ошибка.
Метод Хэмминга [8] позволяет исправить ошибку в 1 бите в блоке памяти. В табл. 1, б этот метод проиллюстрирован на примере блока, содержащего 8 битов данных. К блоку добавляются несколько контрольных битов, в которые записываются значения разных контрольных сумм. Как видно из таблицы, разные биты данных входят в разные наборы контрольных сумм, соответствующие положению 1 в двоичной записи натуральных чисел, исключая степени двойки: 11, 101, 110 и т.д.. Как следствие, для п = 2Ч битов данных (ц ^ 2) требуется £ = ц + 1 контрольных битов (более общая формула:
Таблица 1
Различные методы обнаружения и коррекции ошибок
а. «Бит четности»: обнаружение 1 ошибки
d1 d2 dn с
с = di ф d2 ф ... Ф dn б. Код Хэмминга: исправление 1 ошибки
d1 d2 d-3 d4 d5 d6 d7 d8 C1 C2 сз C4
Биты, входящие в контрольные суммы
d1 d2 d3 d4 d5 d6 d7 d8
с4 0 0 0 0 1 1 1 1
с3 0 1 1 1 0 0 0 1
с2 1 0 1 1 0 1 1 0
с1 1 1 0 1 1 0 1 0
Биты, входящие в проверочные значения
d 1 d2 d3 d4 d5 d6 d 7 d8 с1 с2 с3 с4
Р4 0 0 0 0 1 1 1 1 0 0 01
Р3 0 1 1 1 0 0 0 1 0 0 10
Р2 1 0 1 1 0 1 1 0 0 1 00
Р1 1 1 0 1 1 0 1 0 1 0 00
Определение номера i ошибочного бита
Р4 Р3 Р2 Р1 i Р4 Р3 Р2 Р1 i
0 0 0 0 — 0 0 1 1 d1
0 0 0 1 с1 0 1 0 1 d2
0 0 1 0 с2 0 1 1 0 d-з
0 1 0 0 с3 0 1 1 1 d4
1 0 0 0 с4 1 0 0 1 d5
1 0 1 0 d6
1 0 1 1 d7
1 1 0 0 d8
в. Код Хэмминга + обнаружение 2 ошибок
d1 d2 dn С1 Ck с*
с* = d1 Ф d2 Ф . . . ф dn ф С1 ф . . ф Ck
Р* = d1 Ф d2 Ф ... ф dn ф С1 ф . . ф Ck ф с*
Определение ошибочных битов
Число ошибок
0
2
1, в бите с*
1, в бите di или с,;
( находится, как выше
2£ — £ — 1 ^ п). При чтении несовпадение рассчитанных заново и сохраненных значений набора контрольных сумм указывает на ошибку в одном соответствующем бите данных; несовпадение значений только одной контрольной суммы — на ошибку контрольном бите. Значение найденного ошибочного бита будет изменено и заново записано в память, без нарушения работы системы.
Вариант кода Хэмминга, проиллюстрированный в табл. 1, в, позволяет исправить ошибку в 1 бите и обнаружить ошибки в 2 битах в блоке памяти (SEC-DED, single-error correction, double-error detection). Для этого к битам данных и описанным выше контрольным битам добавляется еще один контрольный бит, в который записывается сумма по модулю 2 всех остальных битов. Таким образом, для n = 2q битов данных (q ^ 2) требуется k = q + 2 контрольных битов. Например, для блока, содержащего 8 битов данных, нужно 5 контрольных битов, для 64 битов данных — 8 контрольных битов.
Последний метод является наиболее распространенным для обнаружения и коррекции ошибок в ОЗУ в наземных серверах и промышленных компьютерах. При этом вычисления производятся аппаратно контроллером памяти; снижение быстродействия памяти при использовании SEC-DED не превышает нескольких процентов. Также при этом может использоваться периодическое фоновое «сканирование», т. е. чтение всей памяти, в ходе которого одиночные ошибки во всех блоках памяти исправляются.
Также для обнаружения и коррекции ошибок применяются более сложные коды Боуза-Чоудху-ри-Хоквингема (BCH) [9, 10] и Рида-Соломона (RS) [11], позволяющие исправлять ошибки в нескольких битах или нескольких «словах» длиной несколько битов, соответственно, в блоке памяти. Например, современные контроллеры ПЗУ на NAND-флеш-памяти, в которых реализован код BCH, могут исправлять 4-8 ошибочных битов в «защищаемом» блоке памяти, содержащем 4096 битов данных. Надо отметить, что коды BCH и RS требуют больше контрольных битов и вычислительных ресурсов.
Для физической реализации коррекции ошибок в статической и динамической оперативной памяти для хранения контрольных битов используются дополнительные микросхемы, тогда как, например, в NAND-флеш-памяти дополнительные биты хранятся в самой микросхеме в каждом физическом блоке.
Для примера в верхней части рис. 2 схематически показаны коммерческие модули памяти SDRAM, использующие микросхемы памяти разрядностью 8 бит, с поддержкой и без поддержки ECC (SEC-DED). Как видим, модуль с поддержкой ECC отличается наличием добавочной 9-й микросхемы. При этом 64 бита данных каждого блока памяти распределяются между 8 микросхемам, а 8 контрольных битов хранятся в 9-й микросхеме.
В нижней части рис. 2 схематически показан одноплатный компьютер RAD750-3U производства BAE Systems, предназначенный для применения на космических аппаратах, основанный на радиацион-но-стойком процессоре RAD750 архитектуры PowerPC 750 [12]. Компьютер имеет 128 Мбайт SDRAM
Р
ЕСС
Без ЕСС
О
Q
m
EEPROM
и
RAD750
потребует для 64-битного блока данных хранить 24 контрольных бита [13].
3. Вероятность > 1 ошибки хотя бы в одном блоке памяти
Пусть память состоит из т блоков, в которых имеется х ошибок (можно считать, что 1 С х С т). Считаем, что ошибки независимы и имеют равномерное распределение, т. е. каждая следующая ошибка может с равной вероятностью попасть в любой из блоков памяти.
Рассчитаем вероятность наличия > 1 ошибки хотя бы в одном блоке памяти. Для этого из общего числа вариантов распределения ошибок вычтем число таких, при которых в любом блоке может быть < 1 ошибки. Число таких вариантов
мт« 1) = Ахт = т • (т - 1) • • • (т - (х - 1)),
Ахт — «число размещений из т по х». Тогда вероятность наличия > 1 ошибки хотя бы в одном блоке памяти равна Р(> 1) = 1 - М(< 1)/тх:
Ax
pm(>1) = 1 -X •
(i)
Можно найти более простую аппроксимацию этой формулы:
Рис. 2. Вверху — коммерческие модули памяти SDRAM с поддержкой и без поддержки ECC. Внизу — компьютер BAE RAD750-3U для космических применений с поддержкой ECC
ОЗУ с поддержкой ECC (5 микросхем, точнее, «сборок» из 4 микросхем разрядностью 4 бит) и 256 КБ ПЗУ EEPROM (electrically erasable programmable read-only memory) с поддержкой ECC для хранения кода начальной загрузки (3 микросхемы разрядностью 8 бит). Компьютеры серии BAE RAD750 представлены в 2001 г., впервые применены на КА «Deep Impact», запущенном в 2005 г. для изучения кометы Темпеля 1, также используются на Mars Reconnaissance Orbiter (2005), Lunar Reconnaissance Orbiter (2009), марсоходе Curiosity (2011), миссии Juno к Юпитеру (2011) и др.
ОЗУ данного компьютера поддерживает два разных алгоритма коррекции ошибок: SEC-DED, и более сложный SNC-DND (single-nibble error correction, double-nibble error detection), использующий код Рида-Соломона и способный исправлять ошибку в 1 и обнаруживать ошибки в 2 «словах» длиной 4 бит в блоке памяти. Для этого для 64 бит блока данных требуется хранить 14 контрольных битов. Алгоритм позволяет исправлять многобитовые одиночные сбои и сохранять работоспособность при выходе из строя одной микросхемы памяти. При использовании микросхем разрядностью 8 бит аналогичный код Рида-Соломона, способный исправлять ошибку в 1 и обнаруживать в 2 словах длиной 8 бит,
px
(>,) =, - (, - !).(, - !)...(, - xmi )
У m/y m J \ m J
1 - e
- 1/m
-2/m . . . e~(x-1)/m _ 1 _ i
m
x(x-1)/(2m)
или окончательно
Pm (>1) « 1 - exp --
(- - ) V 2m)'
(1a)
Эти формулы известны в литературе как «проблема дней рождения» («Birthday problem»): вероятность совпадения дней рождения хотя бы у 2 людей в группе [14].
Рассчитаем теперь вероятность наличия > 2 ошибок хотя бы в одном блоке памяти. Для этого из общего числа вариантов распределения ошибок вычтем число таких, при которых в любом блоке может быть <2 ошибок. А именно в j = 0,1,2,..., \_x/2\ различных блоках имеется ровно по 2 ошибки, а в остальных — < 1.
Можно показать, что число вариантов размещения j различных пар из x ошибок в m блоках для конкретного значения j равно
sm (2, j)=ax
С2 -С—- ••Cx2-2(j-1)_ Aim A
р. 2>р. '
где С% = х • (х - 1) • • • (х - (у - 1))/у. — «число сочетаний из х по у». Тогда число вариантов распределения ошибок в памяти, при которых в любом блоке может быть < 2 ошибок, равно
Lx/2J
2)=у; j-K-f « 1)=Lg A
Lx/2J nx-j a2-
j=0
2-j !
j=0
2-j!
e
и окончательно вероятность наличия > 2 ошибок хотя бы в одном блоке памяти равна Р(> 2) = 1 - N« 2)/тх:
, L*/2J
^ (>2) =1 - ^Е
j=0
Ax-' • A2' s^m лх
2j '
(2)
Для этой вероятности можно также найти более простую аппроксимацию. Число всевозможных троек из х ошибок равно Сх3 = х • (х- 1)(х—2)/3! « х3/3!. Вероятность, что в данной тройке все 3 ошибки оказались в одном блоке, т. е. 2-я и 3-я ошибки попали в тот же блок, что и 1-я, равна 1/т2. Следовательно, вероятность, что в данной тройке не все ошибки попали в один блок, равна 1 — 1/т2. Тогда вероятность того, что никакая тройка ошибок не попала целиком в 1 блок, равна
/ 1 \ x3/3! / x3 \
I1 - m) ™exp (- шу
(2a)
Lx/3J
Pm(>3) =1 - ^'¡nt^f«2)
j=0
(3!)''!
Pm (> 3) « 1 - exp -
(-—) V 4!m3J'
(3)
(3a)
На рис. 3 показана зависимость вероятности наличия > 1, > 2 и > 3 ошибок хотя бы в одном блоке памяти от числа ошибок для числа блоков памяти т = 224.
Число ошибок
Рис. 3. Зависимость вероятности наличия >1, >2 и > 3 ошибок хотя бы в одном блоке памяти от числа ошибок для количества блоков памяти т = 224
Если коррекция ошибок типа SEC-DED применяется с фоновым сканированием памяти с периодом tscan, то в ходе сканирования все одиночные ошибки исправляются, а двойные ошибки в ОЗУ вызывают перезагрузку компьютера или перезапуск программ, т.е. также перезапись памяти. В этом случае вероятность появления > 1 и > 2 ошибок хотя бы в одном блоке памяти за все рассматриваемое время t равна вероятности появления таких ошибок хотя бы в одном интервале времени между 2 последовательными сканированиями памяти. Если при этом накопление ошибок происходит приблизительно равномерно, т.е. x(t) « x(tscan) • t/tscan, то вероятность появления >1 и > 2 ошибок хотя бы в одном блоке памяти за время t равна P(t) « 1 - (1 - P(tgcan))t/tscan , или
x(t) ' tscan/t
рт«2) « ^ — ^ « ехр (—. Окончательно можно записать
рт (>2)«1—ехр (— ¿).
Произведение вероятностей выше является не совсем корректным, так как не все тройки ошибок независимы. Тем не менее численное сравнение «точной» формулы и ее аппроксимации дает очень хорошее соответствие.
Аналогичным образом получаются формулы вероятности наличия > 3 ошибок хотя бы в одном блоке памяти:
Pm(>1, t) « 1 - exp (-Pm (> 2, t) « 1 - exp (-
2m
x(t)3 • (tscan/t)2
3!m2
.
4. Расчет вероятности неисправляемых ошибок в оперативной памяти от космических частиц
Выполнен расчет вероятности появления > 1 и > 2 ошибок хотя бы в одном блоке памяти на борту КА на орбите Земли от ТЗЧ и протонов за время мощной солнечной вспышки и от протонов радиационных поясов Земли для разных значений толщины защиты.
Энергетические спектры суммарных потоков (флюенсов) протонов и ТЗЧ за время солнечной вспышки рассчитаны по модели Р. А. Ным-мика [15]; вероятность, с которой рассчитанные флюенсы могут быть превышены, бралась равной 0.01. Из рис. 4, а видно, что расчетные значения флюенсов протонов близки к измеренным на КА GOES-6 за время солнечного протонного события 19-22 октября 1989 г. (первого, наиболее значительного из 3 возрастаний потоков подряд), одного из наиболее мощных с начала спутниковых измерений. События такой величины происходят не чаще нескольких раз за 11-летний цикл солнечной активности. Основная доля флюенса во время таких событий накапливается в течение « 1-2 суток. При расчете вероятности появления неисправляемых ошибок принималось, что весь флюенс накапливается приблизительно равномерно в течение 1 суток. Геомагнитное обрезание не учитывалось; но для низких орбит с низким и средним наклонением оно очень значительно.
Потоки протонов радиационных поясов Земли, также показанные на рис. 4, а, рассчитаны по модели AP8 [16] для орбиты высотой 1400 км и наклонением 52°, на которой расположены коммуникационные спутники Globalstar (на орбите с той же высотой, но большим наклонением 82.5° также находится группировка российских коммуникационных спутников «Гонец»). Эта орбита частично проходит
Энергия, МэВ/нуклон
Защита, г/см2
Рис. 4. а — Интегральные потоки, б — число ошибок в памяти от протонов (сплошная линия), ТЗЧ (пунктирная) и суммарное (жирная) от мощной солнечной вспышки и от протонов радиационных поясов (штрихпунктирная). Точками показаны флюенсы протонов в солнечном событии 19-22 октября 1989 г. по измерениям GOES-6
вблизи максимума пояса протонов с энергиями больше нескольких десятков МэВ.
Расчет энергетических и ЛПЭ-спектров частиц за защитой и числа сбоев проведен с помощью программы COSRAD [7], разработанной в НИИЯФ МГУ. Она, в частности, использует описанную выше двухпараметрическую аппроксимацию зависимости сечения сбоев. Бралась сферическая конфигурация защиты.
Расчет выполнен для оперативной памяти объемом 128 Мбайт и разрядностью 64+8 бит, составленной, как на рис. 2, из 8 + 1 микросхем SDRAM объемом 128 Мбит (16 Мбайт) и разрядностью 8 бит с коррекцией ошибок типа SEC-DED: исправление одиночных и обнаружение двойных ошибок в блоке памяти. Количество блоков m = 224 = 16 777 216. Параметры чувствительности микросхем к одиночным сбоям от ТЗЧ взяты соответствующими рассмотренным выше коммерческим микросхемам SDRAM Micron MT48LC16M8A2, произведенным по достаточно давно освоенному 0.21 мкм технологическому процессу: сечение насыщения <7i0n,sat = 1.5 • 10-8 см2/бит = 2 см2/микросхему, пороговая ЛПЭ L0 = 2 МэВ/(мг/см2). Для сравнения в работах [17, 18] при тестировании
других коммерческих микросхем SDRAM производства Samsung, IBM и Hitachi объемом 128 и 256 Мбит, произведенных по технологическим нормам 0.20 и 0.16 мкм, получены значения <7ion,sat в диапазоне «3 • 10~9 — 3 • 10~8 см2/бит. Сечение одиночных сбоев от протонов бралось близкое к худшему для указанных микросхем: <7P,sat ~ 5 • 10-7 см2/микросхему, E0 « 10 МэВ.
Рассчитанное число ошибок во всей памяти за 1 сутки показано на рис. 4, б. Как видно из графика, за время мощной солнечной вспышки защитами толщиной 0.5—2 г/см2 Al число ошибок во всей памяти достигает нескольких тысяч. За защитами < 1 г/см2 основным источником одиночных сбоев являются ТЗЧ солнечных космических лучей, за защитами > 1.5 г/см2 — солнечные протоны. Частота одиночных сбоев от протонов радиационных поясов на орбите высотой 1400 км на порядок меньше; но, в отличие от солнечных космических лучей, их потоки присутствуют постоянно.
Стоит отметить, что во время тестирования микросхем на чувствительность к сбоям их корпус удаляется. На борту КА микросхемы, естественно, работают в корпусах. При расчетах ниже учитывалось наличие дополнительной защиты в виде корпуса микросхемы: для SDRAM «0.25-0.5 мм эпоксидного материала с верхней и нижней сторон кристалла.
При расчете учитывалось периодическое фоновое сканирование памяти. Для памяти SDRAM с частотой 100 МГц и разрядностью 64 бит пиковая пропускная способность составляет « 750 Мбайт/с, средняя « 200 Мбайт/с. Поэтому сканирование с периодом в несколько десятков минут не окажет сколь-нибудь заметного влияния на быстродействие. Например, в компьютерах BAE RAD750-3U на борту КА «Deep Impact» использовалось фоновое сканирование с периодом 4can = 20 мин [19]. В настоящих расчетах бралось значение периода 4can = 2 ч.
Рассчитанные значения вероятности появления > 1 и > 2 ошибок хотя бы в одном блоке памяти за время мощной солнечной вспышки и за 1 месяц от протонов радиационных поясов Земли на орбите высотой 1400 км и наклонением 52° для разных значений толщины защиты КА приведены в табл. 2.
Как видно из табл. 2, для памяти с рассмотренными параметрами на борту КА за защитой, эквивалентной нескольким мм Al, за время мощной солнечной вспышки и при полете в радиационных поясах Земли, несмотря на большое число ошибок, вероятность появления более чем одно- или двукратной ошибки хотя бы в одном блоке памяти, которая не сможет быть исправлена или обнаружена механизмом коррекции ошибок SEC-DED, достаточно мала.
При расчетах выше полагалось, что все ошибки независимы. Но при многобитовых одиночных сбоях, которые могут вызываться ТЗЧ с ЛПЭ
Таблица 2 Частота одиночных ошибок и вероятность наличия > 1 и > 2 ошибок хотя бы в одном блоке памяти за время мощной солнечной вспышки, и за 1 месяц от протонов радиационных поясов
Защита КА Ошибок в сутки P(>1) P(> 2)
г/см2 мм Al
Мощная солнечная вспышка, 1 сутки
0.54 2 10000 0.2 4•10~6
1 3.7 4500 0.05 4• 10~7
1.5 5.5 3000 0.02 1•10~7
Протоны радиационных поясов, 1 месяц
<2 <7.4 250 0.005 2•10~9
свыше « 10 МэВ/(мг/см2), ошибки могут возникнуть в нескольких соседних битах в одной строке микросхемы памяти, следовательно, в одном блоке памяти. Такие ошибки не могут быть исправлены или обнаружены простым кодом Хэмминга типа SEC-DED. Для исправления таких ошибок в ОЗУ существует несколько решений: 1) чередование битов, при котором соседние биты в строке памяти принадлежат к разным блокам, как в технологии IBM Chipkill; 2) использование кода Рида-Соломона, позволяющего исправлять ошибку в 1 слове и обнаруживать ошибки в 2 словах длиной 4 или 8 бит при использовании микросхем ОЗУ разрядностью 4 или 8 бит, равной разрядности используемых микросхзем ОЗУ, аналогичного применяемому в компьютерах BAE RAD750 или Maxwell SCS750. При этом вероятности появления ошибок в >1 и >2 битах или словах хотя бы в одном блоке памяти будут равны или меньше значений, рассчитанных выше.
В настоящей работе не рассматривались одиночные отказы функционирования (SEFI, single event functional interrupt), тиристорный эффект (SEL, single event latch-up), накопленная доза и другие радиационные эффекты.
Заключение
Проанализирована проблема опасности одиночных сбоев от космических частиц для компьютерной памяти с коррекции ошибок на борту космических аппаратов. Приведены формулы вероятности возникновения > 1, 2 и т. д. ошибок хотя бы в одном блоке памяти. Выполнено моделирование опасности одиночных сбоев в оперативной памяти с коррекцией ошибок на борту КА за время достаточно мощной солнечной вспышки и при полете в радиационных поясах Земли. Показано, что за защитой, эквивалентной нескольким миллиметрам алюминия, технология коррекции ошибок может обеспечить существенный уровень защиты от одиночных сбоев
в ОЗУ даже при использовании коммерческих микросхем памяти SDRAM.
Автор благодарит Н. В. Кузнецова и других коллег из НИИЯФ МГУ за полезное обсуждение и идеи.
Статья подготовлена по результатам прикладных научных исследований (уникальный идентификатор № RFMEFI60414X0127) при финансовой поддержке Минобрнауки РФ.
Список литературы
1. Harboe-Sorensen R. An overview of radiation single event effects testing of advanced memory components // Proc. of the European Space Components Conference ESCCON. Toulouse, France, 24-27 September, 2002. P. 239.
2. Harboe-Sorensen R., Guerre F.-X., Loquet J.-G., Tizon C. // IEEE Trans. Nucl. Sci. 2003. 50, N 6. P. 2322.
3. Petersen E. // IEEE Trans. Nucl. Sci. 1996. 43, N 6. P. 2805.
4. Кузнецов Н.В. // Вопросы атомной науки и техники. Сер. Физика радиационного воздействия на радиоэлектронную аппаратуру. 2001. № 1-2. С. 9.
5. Adams J.H. Jr., Beliaev A.A., Kuznetsov N.V. et al. // Radiat. Measur. 1996. 26, N 3. P. 509.
6. Bashkirov V.F., Kuznetsov N.V., Nymmik R.A. // Radiat. Measur. 1999. 30, N 3. P. 427.
7. Кузнецов Н.В., Малышкин Ю.М., Николаева Н.И. и др. // Вопросы атомной науки и техники. Сер. Физика радиационного воздействия на радиоэлектронную аппаратуру. 2011. № 2,. С. 72.
8. Hamming R. W. // Bell System Techn. J. 1950. 29, N 2. P. 147.
9. Hocquenghem A. // Chiffres. 1959. 2. P. 147.
10. Bose R.C., Ray-Chaudhuri D.K. // Information and Control. 1960. 3, N 1. P. 68.
11. Reed I. S., Solomon G. // J. Soc. for Indust. and Appl. Math. 1960. 8, N 2. P. 300.
12. Berger R., Artz D, Kapcio P. RAD750 Radiation Hardened PowerPC Microprocessor // Lockheed Martin Space Electronics & Communications. 2000.
13. Chen C. L, Hsiao M. Y. // IBM J. of Research and Development. 1984. 2, N 2. P. 124.
14. Von Mises R. // Revue de la Faculté des Sciences de L'Universite d'Istanbul. 1939. 4. P. 145. (Reprinted in: Selected Papers of Richard von Mises. V. 2 / Eds. P. Frank et al. Providence, RI: American Mathematical Society, 1964, P. 313.)
15. Ныммик Р.А. // Космич. исслед. 1993. 31, № 6. С. 51.
16. Sawyer D.M., Vette J.I. AP-8 trapped proton environment for solar maximum and solar minimum // NSSDC/WDC-A-R&S. 76-06. 1979.
17. Koga R, Crain S.H., Yu P., Crawford K.B. // Proc. IEEE Radiation Effects Data Workshop. Vancouver, Canada, 16-20 July 2001. P. 182.
18. Layton P., Williamson G., Logden L. SEE Radiation Test Report. Doc. No. 1003857. San Diego, CA, USA: Maxwell Technologies, 2003.
19. Clark D. RAD750 on Deep Impact // RAD750 Flight Computer Industry Wide Workshop. Pasadena, CA, USA, June 7-8, 2005.
Modeling of the risk of single event upsets from cosmic particles for memory with error correction M. V. Podzolko
Skobeltsyn Institute of Nuclear Physics, Lomonosov Moscow State University. Moscow 119991, Russia. E-mail: [email protected].
In this study a risk of single event upsets from cosmic particles for computer memory with error correction onboard spacecraft is modeled. A brief description of existing mechanisms of the detection and correction of errors in memory is given. Formulas for calculating the probability of occurring of >1, 2 and so on errors in at least one memory block are presented. Values of the probability of uncorrectable errors for the concrete conditions of spacecraft flight are computed for certain microchips.
Keywords: single event upsets, memory microchips, error correction, ions, protons, solar flare, Earth's radiation belts.
PACS: 94.20.wq, 94.30.Xy, 02.50.Cw.
Received 23 June 2017.
English version: Moscow University Physics Bulletin. 2017. 72, No. 6. Pp. 601-608.
Сведения об авторе
Подзолко Михаил Владимирович — науч. сотрудник; тел.: (495) 939-52-33, e-mail: [email protected].