Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет psergant ([info]psergant)
@ 2007-02-21 01:25:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Закладки в микросхемах
Вот к этому.
Как бы это могло быть сделано.

Наверное, к такой закладке можно предъявить следующие требования:
- безупречность с точки зрения входного контроля микросхем;
- безупречное функционирование микросхем на стадиях приемки изделий;
- надежный способ извещения микросхемы о наступлении der Tag - времени срабатывания закладки.
Этого пока хватит, основные функции перечислены.
Сделаем некоторые допущения:
- рассматриваем только бортовую аппаратуру;
- аппаратура полностью автономна после старта.
Очевидно, первичным требованием является принцип извещения закладки об активации. Существует множество способов активировать какое-либо устройство, что и используют всякие там подрывники и военные - это - внешнее воздействие, время и место. Все это реализовано в ударных взрывателях, радиоуправляемых минах (привет коху!) часовых механизмах и в GPS навигации томагавков. Внешнее воздействие не годится для активации закладок - ни механическое - аппаратура проходит весьма суровые механические испытания, ни радиосигнальные - аппаратура жестко экранирована на предмет атомной войны. Время. Для активации по таймеру необходимо, что бы микросхема с закладкой имела доступ к реальному времени - что предполагает заранее спланированный час "Ч". Тем более, что такой доступ предполагает установку микросхемы в системе навигации - только там есть это самое реальное время. Что, в свою очередь, подразумевает знание алгоритмов обработки навигационной информации. В этом нет ничего невозможного, единчственным минусом такого рода механизма активации является точно заданный день "Ч". Что выразится в массе побочных признаков подготовки к нему. Можно, конечно, использовать нечто другое, связанное со временем - ограничение ресурса микросхем. Допустим, счетчик, который считает время функционирования микросхемы, т.е. время, когда на микросхему подается напряжение питания. Но выход из строя таких микросхем не может быть одновременным во всех изделиях, хотя, конечно, вполне способен ограничить возможности всего парка данного оружия. Кроме того, массовый выход изделий из строя станет поводом для всякого рода расследований и, возможно, выяснения причины. К тому же, информация об срабатывании подобного рода закладок может не дойти до заинтересованных господ. Остается только место. И место не простое, а именно - координаты цели. В мирное время испытательные пуски проводятся по полигонам, ни один из которых не находится на территории вероятного противника. и перед пуском в ракету вводят полетное задание, которое содержит координаты. Таким образом, закладка в микросхеме должна иметь доступ к навигационной информации и доступ к коду программы. Таких микросхем, которые отвечают данным условиям, всего один тип - это процессор навигационного устройства. Он одновременно имеет доступ и к алгоритму управления полетом, содержащимся в ПЗУ, и данным о цели полета, содержащимся в ОЗУ. Насчет ОЗУ - это предположение, на самом деле, информация о всех целях может быть в таблице ПЗУ, а навигационному блоку будет сообщен только номер этой цели в таблице, но это не важно. Важно то, что через процессор проходит вся информация, необходимая для управления полетом. И вот эти-то данные о конечной цели полета и могут быть тем пусковым механизмом для закладки.
Для того, что бы реализовать такого рода закладку, много не надо. Надо иметь только подавляющее превосходство в технологии. Поясню. Один из самых продвинутых отечественных процессоров конца 80-х это архитектурная копия I8086 и выполнен по тезнологии 3 мкм. Не самая продвинутая технология запада имеет нормы 0,18 мкм. Таким образом, плотность элементов может превышать отечественную в 270 раз. Представим себе микросхему процессора, того же I8086, выполненную по технологии 0,18 мкм, нос некоторыми извращениями. Все основные узлы процессора выполнены по 0,18 мкм, но их габариты соответствуют габаритам технологии 3 мкм. А в зоне допусков, где располагается технологическая "грязь", вызванная несовершенством технологии 3 мкм, располагается совсем другая аппаратура. Например, еще один процессор, работающий параллельно с основным, и его пзу программ. Задачей данного процессора будет распознавание серии определенных чисел, поступающих в навигационный алгоритм. Чисел, которые определяют траекторию полета к территории вероятного противника. Правда, для осуществления подобного рода злодейства необходимы некоторые условия - стандартизованная структура данных и известный алгоритм управления полетом. Но эти условия выполняютя - структура данных определяется архитектурой основного, целевого, процессора, либо - языком программирования высокого уровня, который так же адаптирован под архитектуру. Не думаю, чтобы сейчас кто-то писал навигационные программы на ассемблере и заморачивался изобретением экзотических структур данных. С алгоритмом тоже не так сложно, потому что полет ракеты определяется физическими законами, а не магией, и полет и на участке разгона, и по баллистической кривой описывается известными уравнениями. К тому же, электронная аппаратура такого класса - это всегда плод кооперации, и велика вероятность, что данные от аппаратуры определения текущих параметров полета ( текущие координаты, первая и вторая производные) поступает в виде реальных числовых значений. Таким образом, "вспомогательный "процессор может получить полную информацию о конечной точке и принять пацифистское решение.
Конечно, такую ситуацию вполне можно отловить на стендах, где будут имитироваться полеты к реальным целям, с имитацией реального потока данных. Уф, аж полегчало. Кстати, а что там с "Булавой"? Что-то с управлением?

UPD: Имеется ввиду, что ВЕСЬ чип сделан по нормам 0,18 мкм. Никакого смешения технологий. Но главное не в этом. Главное в принципе активации. Хотя, это лишь гипотеза.


(Добавить комментарий)


[info]tim_o_fay@lj
2007-02-21 01:58 (ссылка)
Дело не в закладках, на мой взгляд.
Гораздо опаснее ориентироваться в военной промышленности на импортные компоненты, как в первую мировую войну (авиамоторы, радиостанции и вообще весь тогдашний хайтек). К чему это приводит - видели. Или история учит, что она ничему не учит?

(Ответить) (Ветвь дискуссии)


[info]psergant@lj
2007-02-21 02:25 (ссылка)
Это само собой. Только проблема - современная отечественная элементная база почти полностью отсутствует.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]tim_o_fay@lj
2007-02-21 02:30 (ссылка)
У Батьки еще производство работает. Но я только по поводу дискретников в курсе, как с микросхемами - не знаю. А что, Зеленоград совсем кердык?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]psergant@lj
2007-02-21 05:18 (ссылка)
Зеленоград, когда интересовался в последний раз, располагал только 1,3 мкм. Правда, я сталкивался только с одним предприятием. Но можно посмотреть на сайте ангстрема - номенклатура советских времен.

(Ответить) (Уровень выше)


[info]arvi@lj
2007-02-21 11:02 (ссылка)
   Зеленоград жив. Но время от времени пиндосы пытаются взять его под контроль. И поддержка общественности не мешала бы.

   Опять же, при предательстве на верхах что может один завод сделать?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]tim_o_fay@lj
2007-02-21 11:15 (ссылка)
Вопрос риторический (про верха и завод).
А если у Вас есть связи с людьми с Зеленограда, то передайте им пожалуйста, что если у них есть иллюзии по поводу добрых иностранцев - то пусть не тешат себя. Скупка акций иностранцами означает всего-навсего, что доходы будут уходить теперь не нашим кровососам, а забугорным. Зарплаты НЕ повышаются (подачки в пределах 5-10% не рассматриваем), в производство деньги вкладываются настолько, чтобы обеспечить отбивку вложенных в покупку акций средств. Намеренно не касаюсь всех прочих аспектов перехода предприятия под контроль зарубежных "инвесторов". Специально выбрал самые шкурные стороны, чтоб проще дошло.
Я уже не раз наблюдал такие дела в реале.

(Ответить) (Уровень выше)


[info]ex_ex_darth@lj
2007-02-21 13:56 (ссылка)
Ты процессор.
Тебе поступают на вход команды по перемещению чисел между память (сколько её там? Несколько десятков килобайт?) и регистрами (штук 8, мы же не Cell). А так-же логические и арифметические операции. Ничего другого нет.
Вопрос: как ты восстановишь алгоритм?

(Ответить) (Ветвь дискуссии)


[info]psergant@lj
2007-02-21 15:26 (ссылка)
Сам ты процессор:)
Эта задача - один из вариантов задачи распознавания образов.
Регистры. Даже для произведения простейшей операции - сложения, допустим, чисел типа Integer, существует совершенно определенная последовательность команд, завязанная на архитектуру. Ее реализуют и компилятор, и даже человек на ассемблере - она максимально эффективна. так же с более сложными алгоритмами - они состоят из последовательностей простых. Мне еще лет 10 тому попадались программы, которые из кода восстанавливали текст ЯВУ.
Алгоритм восстанавливать нет нужды - поскольку уравнения известны, то практически известен и алгоритм. Нам нужно только распознать данные, которыми он пользуется. И сопоставить их с нужными.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]ex_ex_darth@lj
2007-02-21 15:44 (ссылка)
Человек - может, если напряжется. А изображения распознает с пол-пинка. Машина распознавать изображения "вообще" не умеет.
А ты предлагаешь анализировать код и восстанавливать алгоритм в real-time да еще на "скрытом процессоре" с явно незапредельной скоростью (упремся, например. в питание и наводки) К тому-же такой процессор будет ограничен памятью на собственном чипе - иначе засекут по левым операциям доступа к памяти.
А насчет анализа кода - вот что это делает:

mov ecx, DWORD PTR
push ebx
push ebp
push edi
push eax
push ecx
mov ebx, OFFSET
mov ebp, OFFSET
call
mov ecx, DWORD PTR [esi]
test ecx, ecx
mov DWORD PTR [esi], eax
je SHORT $LN18
mov edx, DWORD PTR [ecx]
mov eax, DWORD PTR [edx]
push 1
call eax
mov edx, DWORD PTR [esi]
test edx, edx
je SHORT $LN1@Open@4
sub esp, 16 ; 00000010H
mov eax, esp
mov DWORD PTR [eax], ebp
mov ecx, OFFSET
mov DWORD PTR [eax+4], ecx
mov DWORD PTR [eax+8], ebx
mov ecx, OFFSET
lea edi, DWORD PTR [esi+24]
mov DWORD PTR [eax+12], ecx
push edx
mov eax, edi
call _
add esp, 20 ; 00000014H
test eax, eax
jne SHORT $LN1@Open@4
cmp DWORD PTR [edi+4], eax
je SHORT $LN31@Open@4
cmp DWORD PTR [edi+64], 3
jl SHORT $LN31@Open@4
mov eax, DWORD PTR [edi+72]
shl eax, 5
add eax, DWORD PTR [edi+48]
jmp SHORT $LN24@Open@4
mov eax, DWORD PTR [edi+48]
mov ecx, DWORD PTR [eax+8]
mov DWORD PTR [esi+8], ecx
mov eax, DWORD PTR [eax+4]
xor edx, edx
cmp eax, 1
setne dl
push -1
push edi
mov DWORD PTR [esi+4], eax
lea edx, DWORD PTR [edx+edx+2]
mov DWORD PTR [esi+12], edx
call _
mov DWORD PTR [esi+16], eax
add esp, 8
mov al, 1
pop edi
pop ebp
pop ebx
ret 0
$LN1@Open@4:
pop edi
pop ebp
xor al, al
pop ebx
ret 0

Здесь даже подсказки есть, имена вызываемых функция я убрал. И, самое главное, как это впихнуть автоматическое распознавание алгоритма в достаточно медленный процессор с дикими ограничениями по памяти?
И как распознаешь данные? А вдруг это записанное в ogg сообщение "Сортир занят"?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]ex_ex_darth@lj
2007-02-21 15:54 (ссылка)
да, я понял, что вы имеете ввиду под распознаванием структур данных. Это сработает в определенных слчаях (совсем ленивые программисты), если используется AoS схема. А если процессор векторный (чтобы в real-time считать траекторию) и мы используем SoA?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]psergant@lj
2007-02-21 16:46 (ссылка)
А поцессор не векторный, а совсем скалярный, и скорее - полный аналог DEC, Texas или Intel. Других, насколько помню, в Союзе не копировали. Братские народи осваивали моторолу - 6805. И даже с 90-% вероятностью скажу, что именно 8086, Киевского завода. С софтом для него попроще было. Мы, в свое время, так и делали - 8086, кусочек ДОС-а и программы на турбопаскале. Двадцать лет уже пашет.

(Ответить) (Уровень выше)


[info]ex_ex_darth@lj
2007-02-21 14:00 (ссылка)
Еще есть вопрос с питанием и охлаждением: для очень тонких схем питание нужно регулировать куда точнее. Скачек, который проигнорирует основная часть спалит микрочасть.
ПРЕВЕД!

(Ответить) (Ветвь дискуссии)


[info]psergant@lj
2007-02-21 15:30 (ссылка)
Эта задача давно решена.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]ex_ex_darth@lj
2007-02-21 15:46 (ссылка)
О_О!
И как? Вот подскажи - я хоть охлаждение бесшумное сделаю.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]psergant@lj
2007-02-21 16:38 (ссылка)
Вопрос был о точности регулировки питания. Эта задача - решена. О тепловыделении. 8086 жрет около 1 Вт. Если будем отбирать 10% (это в допуске) - 100мВт это около 30 МИПС для процессора аналогичного класса, но по 0,18. Корпус рассеивает 5 Вт. У 86 - 03 МИПС.

(Ответить) (Уровень выше)