Судя по комментариям к этому ответу , сколько банков памяти имеет Opportunity? Меня особенно интересует флэш-память, но любая другая информация также приветствуется.
Согласно этому пресс-релизу JPL , исправление банка памяти 7 оставило Opportunity с 6 пригодными для использования банками.
20 марта команда получила подтверждение от Mars об успешном завершении переформатирования. Ранее в этом месяце марсоход перешел на обновленное программное обеспечение , которое позволит избежать использования одного из семи банков встроенной флэш-памяти. Некоторые из проблем с флэш-памятью, которые побудили команду перейти на режим работы без флэш-памяти в конце 2014 года, были прослежены до банка 7. Оставшиеся шесть банков обеспечивают больший объем энергонезависимой памяти, чем марсоход использовал все, кроме нескольких дней с тех пор. приземление на Марсе в январе 2004 года .
Но любому специалисту по информатике это кажется немного подозрительным:
Вполне может быть, что они пропустили банк 0 по техническим причинам или что он ограничен каким-то конкретным использованием, поэтому они обычно не могут на него рассчитывать, но все это указывает на то, что кто-то из PR совершает понятную ошибку.
Как показано на рисунке ниже, имеется 8 банков флэш-памяти, из которых 7 используются для хранения данных, а банк 0 используется для полетного программного обеспечения (FSW) и входа, спуска и посадки (EDL).
Источник: Р. Сосланд, М. Зайберт, Э. Фергюсон, Р. Стил и К. Зиттл, «Возвращение в путь: переформатирование флэш-памяти на борту марсохода Opportunity», Аэрокосмическая конференция IEEE, 2015 г., Big Sky, МТ, 2015. С. 1-12. doi: 10.1109/AERO.2015.7119257
Гленн Ривз рассказывает об устранении неполадок с флэш-памятью и особо упоминает файловую систему флэш-памяти размером 224 МБ. При 7x32 МБ это действительно выглядит как 7 банков.
В более научной статье он подтверждает выделенные под файловую систему 224 МБ.
Я могу себе представить, что 8-й банк флешки содержит прошивку Spirit, а не файловую систему. В Spirit более 30 МБ кода, и его нужно где-то хранить. Альтернативным объяснением может быть то, что последние 32 МБ используются для выравнивания износа.
Это более широкий взгляд на компьютерное оборудование Opportunity и на то, как оно работает , поскольку я нашел кучу этих источников до того, как @wooooooooosh опубликовал правильный ответ. Жалко не выложить куда-нибудь.
В более ранней статье ( https://www.jpl.nasa.gov/news/news.php?feature=4406 ) также говорится 7:
Случаи, когда флэш-память Opportunity не принимала данные для хранения, произошли только в одном из семи банков микросхем флэш-памяти на борту .
Это согласуется с фразой « один из семи банков встроенной флэш-памяти » в цитируемой статье. К сожалению, оказывается, что это искажение фактов . Первый банк (банк 0) не является частью файловой системы 7x32 МБ, используемой для хранения научных данных, но он существует, и это также флэш-память NAND.
Вероятно, они думают об этом отдельно, потому что он содержит прошивку (~ 30 МБ): программный код, который работает на ЦП, и необходимые ему данные. Если оставить банк 0 доступным только для чтения (за исключением обновлений прошивки), это означает, что износ этих микросхем флэш-памяти из-за слишком большого количества циклов записи очень маловероятен. Плохие биты или другие сбои в банке 0 по другим причинам могут быть устранены путем загрузки из другого банка, если система может загружаться достаточно далеко, чтобы ее можно было перепрограммировать удаленно и обновить загрузчик.
Флэш-память NAND может считываться только большими блоками (например, 512 или 4096 байт). Я не знаю размер страницы флэш-памяти, используемой в Spirit/Opportunity, но, согласно одному источнику, они используют флэш-чипы производства AMD.
HW Spirit похож, но не идентичен Opportunity. Мне удалось откопать эти подробности об их аппаратном обеспечении, большая часть из которых непротиворечива :
EETimes: Неразбериха с флэш-памятью наносит вред марсоходу Spirit, заявляет НАСА :
Два марсохода состоят из одноплатного компьютера под названием RAD6000, который, как сообщается, построен компанией BAE Systems в Манассасе, штат Вирджиния. Микропроцессор в системе является старым, 25-МГц процессором, основанным на семействе PowerPC корпорации IBM. Это радиационно-стойкое устройство.
RAD6000 не использует жесткий диск для хранения. Вместо этого данные хранятся в 128-мегабайтной оперативной памяти, хотя неясно, какой поставщик поставляет эти части. Компьютер работает под управлением операционной системы реального времени от Wind River Systems Inc.
[... также специализированный кремний Intersil и Xilinx FPGA в контроллерах двигателей и т. д.]
ExtremeTech: идеальный удаленный администратор: НАСА переформатирует изворотливую флэш-память Opportunity с расстояния 125 миллионов миль
И Opportunity, и Spirit оснащены радиационно-стойким компьютером BAE RAD6000 с тактовой частотой 20 МГц, 128 МБ ОЗУ, 3 МБ EEPROM (прошивка) и 256 МБ флэш-памяти NAND . Операционная система (VxWorks) и важные подпрограммы хранятся в энергонезависимой EEPROM , в то время как флэш-память используется для хранения менее важных данных — в основном захваченных изображений и других научных данных — пока они ожидают загрузки в штаб-квартиру НАСА через Mars Global. Орбитальный аппарат Surveyor или наземная сеть дальнего космоса. Между прочим, Curiosity имеет практически идентичную настройку, но использует более быстрый процессор (132 МГц) и гораздо больше оперативной памяти и флэш-памяти. Curiosity также имеет идентичный резервный отказоустойчивый компьютер, который можно включить в случае возникновения неисправности — у более ранних марсоходов был только один компьютер.
Подтверждает наличие NAND-flash. И что ОС — это VxWorks от Wind River .
(Другой источник сообщил, что у Spirit нет EEPROM.) В статье есть изображение одноплатного компьютера BAE, похожего на тот, что есть в Opportunity.
Tom's IT Pro: NASA переформатировало SSD... на Марсе!
...и виновником, скорее всего, являются мертвые ячейки флэш-памяти NAND ...
Еще одно подтверждение использования всей флэш-памяти NAND, в отличие от флэш-памяти NOR с байтовой адресацией, которая позволяет выполнять из флэш-памяти. Итак, мы знаем, что он должен копировать код из NAND в RAM при загрузке.
Opportunity содержит 8 банков памяти по 4 модуля в каждом банке и по 4 флэш-чипа в каждом модуле, всего 256 МБ памяти производства AMD . Ровер также содержит 128 МБ ОЗУ, 3 МБ EEPROM и работает на процессоре с частотой 20 МГц.
ITworld: день, когда программная ошибка чуть не убила марсоход Spirit
Spirit запускал какое-то взломанное программное обеспечение, которое отражало файловую систему DOS (я полагаю, FAT16?) в ОЗУ, которое давало сбой, когда FS заполнялась до размера, превышающего объем ОЗУ.
недостаток дизайна библиотеки DOS, ошибка в некоторых сторонних программах и несколько ошибок конфигурации
Ой. Предположительно, Opportunity также использует FAT16 в качестве файловой системы флэш-памяти.
Процессоры RAD6000 имеют 8 КБ унифицированного кэша L1. PowerPC 601, на котором он основан, также использует унифицированный кэш, а не разделенный кэш инструкций/данных, как большинство конструкций ЦП.
Некоторые предыдущие догадки были бы маловероятными или невозможными конструкциями :
Теперь мы знаем, что банк 0 особенный.
Прежде чем мы узнали об этом, было предположение, что он использовался в качестве паритета для других 7 банков. Это был бы маловероятный дизайн: он получил бы в 7 раз больше операций записи, чем другие банки. (Распределенная четность в стиле RAID-5 теоретически возможна для распределения этого износа, но с учетом того, что блоки стирания флэш-памяти намного больше, чем блоки записи, на самом деле это не так. Например, блок стирания 256 КБ против блока записи 4 КБ. И, кроме того, это было бы одни и те же ячейки каждый раз получают дополнительные записи в каждой полосе.)
Я предположил, что, возможно, 8-й банк был оперативной памятью, и он находился на той же шине, что и флэш-память. Но это неправдоподобно для NAND-flash. Это не байтовая адресация; читается только целыми страницами через микросхему контроллера флэш-памяти, которая обрабатывает коды исправления ошибок с точностью до страницы. Подключать его к тем же адресным линиям, что и системную оперативную память, не имеет смысла.
Выполнение из флэш-памяти, также известное как выполнение на месте , выполняется только с флэш-памятью NOR, а не с NAND . Таким образом, ровер должен копировать копию + данные, которые ему нужны для любой задачи, которую он выполняет (например, вывод на орбиту, вход или перемещение по земле) из банка флэш-памяти 0 в ОЗУ. Предположительно, «режим без флэш-памяти» просто означал отсутствие записи данных во флэш-память, а не избегание чтения банка 0.
Флэш-память NAND может быть стерта только большими блоками , например, 256 КБ, и может быть записана только страницами (например, 4 КБ за один раз).
Сама ОС (VxWorks, встроенная операционная система реального времени), вероятно, запускается непосредственно из 3-мегабайтной EEPROM даже при нормальной работе. Это считается частью прошивки, даже если она хранится отдельно от кода и данных в банке флэш-памяти 0. Код может запускаться непосредственно из EEPROM; это байтовая адресация, как RAM. Вероятно, это включает в себя функции времени загрузки, которые загружают флэш-память в ОЗУ.
Я не знаю, изменяли ли когда-либо обновления с Земли содержимое EEPROM, но это правдоподобно, потому что EEPROM = электрически стираемое программируемое ПЗУ . Но это рискованно: любой сбой или повреждение могут вывести ровер из строя, точно так же, как обновление BIOS на материнской плате предупреждает вас не выключать питание и убедиться, что питание стабильно. Тем не менее, загрузка нового изображения в оперативную память марсохода, а затем его контрольная сумма сделают обновление довольно безопасным и не зависящим ни от чего внешнего после его запуска. Они, вероятно, будут делать это только в случае необходимости решить проблему, которую они не могут решить другим способом.
По-видимому, у Spirit нет отдельной EEPROM, она есть только у Opportunity. Итак, IDK, как загружается Spirit. Должно быть что- то , что позволит Spirit загрузиться, если только контроллер NAND-памяти автоматически не копирует часть флэш-памяти в ОЗУ или не поддерживает чтение из флэш-памяти с отображением памяти.
Больше ссылок
Встроенная память включает 128 мегабайт оперативной памяти, дополненной 256 мегабайтами флэш-памяти и меньшими объемами другой энергонезависимой памяти, что позволяет системе сохранять данные даже без питания.
разъем
Уве
Питер Кордес
Питер Кордес