06 марта 2012
О лаборатории специальных исследований
Часть 12
К вопросу оценки ПЭМИН цифровых сигналов (продолжение)
Перейдём к рассмотрению следующего класса устройств, весьма распространённых в составе типового набора офисной ПЭВМ – принтерам.
Прежде всего, обратим внимание читателя на то, что, как и при анализе других устройств ПЭВМ, принтер необходимо разделить на функционально отличающиеся узлы (блоки) и рассматривать каждый из них раздельно (со своими параметрами сигналов ПЭМИН).
В качестве таких узлов, a priori, можно назвать интерфейс связи с системным блоком (или локальной сетью), контроллер обработки сигналов самого принтера (включая внутреннюю память) и узел печати. Сегодня основными моделями принтеров являются принтеры струйные и лазерные (за весьма малыми исключениями). Распространённые ранее модели матричных принтеров уже неактуальны и рассматривать их не имеет смысла.
Упомянутые две основные линейки принтеров, с точки зрения механизма и особенностей их ПЭМИН в части интерфейсов связи и внутренней обработки информации не различаются. Разница существенна только в отношении построения узлов печати.
Рассмотрим кратко с нашей профессиональной точки зрения эти основные составляющие принтера.
Интерфейсы связи
На сегодняшний день, почти безраздельно, принтер подключается по интерфейсу USB. Ранние варианты с подключением по последовательному COM-интерфейсу или параллельному LPT уже настолько мало применяются, что часто на системных блоках просто отсутствуют соответствующие разъёмы. Поэтому рассматривать эти интерфейсы мы не будем, тем более, что сложного в них нет ничего.
Оставив, пока, за пределами рассмотрения интерфейс локальной сети (LAN) сосредоточимся на интерфейсе USB.
Этот интерфейс на сегодняшний момент эксплуатируется в четырёх вариантах протокола – 1.0; 1.1; 2.0 и последняя версия, пока ещё мало распространённая – 3.0. Версия 1.0 давно устарела и применяется только в самых низкоскоростных устройствах, например клавиатурах или манипуляторах «мышь».
USB версии 1.1 поддерживает две скорости – режим full speed 12 Mbits/s и режим low speed 1.5 Mbits/s. Режим 1.5 Mbits/s медленнее, и менее чуствителен к EMI (помехам), чем уменьшает стоимость кабелей и ферритовых фильтров на них, снижает требования к качеству компонентов. Например, кварцы могут быть заменены на дешевые резонаторы. USB 2.0, который в настоящее время господствует, в том числе и для подключения принтеров, поднимает планку до 480Mbits/s. Эти 480Mbits/s обозначены как режим High Speed, и по этому параметру он может конкурировать с последовательной шиной Firewire (IEEE 1394).
Подробное рассмотрение спецификации протокола, насчитывающее около 650 страниц, не входит в наши планы. Однако некоторые параметры нам необходимы. Важны, например, тактовые частоты интерфейса, устанавливаемые в секции 7.1.11 спецификации USB.
- High speed data тактируются 480.00Mb/s с допуском на скорость ± 500ppm.
- Full speed data тактируются 12.000Mb/s с допуском на скорость ±0.25% или 2,500ppm.
- Low speed data тактируются 1.50Mb/s с допуском на скорость ±1.5% или 15,000ppm.
Эти цифры дают нам информацию о том, вблизи каких именно частот ожидать ПЭМИН этого интерфейса и возможные отклонения от них.
У USB есть пакет start of frame (SOF), который строго периодично (каждые 1 мс для low speed и full speed) посылается на шину для поддержания её в активном состоянии. Это препятствует тому, чтобы шина стала неактивной (вошла режим приостановки) при отсутствии данных на шине.
- Шина high speed имеет микрофреймы, отсылаемые каждые 125.0 µs ±62.5 ns.
- Шина full speed отправляет фрейм каждые 1.000 ms ±500 ns.
- Шина low speed имеет keep alive EOP (End of Packet) каждые 1ms только в случае отсутствия любых low speed данных.
Для нас это означает, что должен существовать (может существовать) ПЭМИН с тактовой частотой 1 кГц (для USB 1.1 и 2.0) или 8 МГц (для USB 3/0) и он не относится к передаче данных, то есть – неинформативен. Причём эти частоты (этот ПЭМИН) должен проявляться, прежде всего, в периоды паузы в передаче данных (при типовом старт-стопном построении теста). Последняя частота имеет очень большой допуск по периоду, фактически ± 50%.
Рассматривая пакет данных (а пересылка по данному интерфейсу осуществляется только пакетами). Из 4-х типов пакетов, формируемых протоколом, нас интересуют только пакеты данных - пакеты data содержащие payload. Построение их несложно.
Имеется 2 типа пакетов данных, каждый из которых может передать до 1024 байта данных.
Data0
Data1
Режим High Speed задает два других data PID - DATA2 и MDATA.
Пакеты Data имеют следующий формат:
Рисунок 37 Формат пакета DATA
Максимальный размер полезной нагрузки (payload) для low-speed устройств составляет 8 байт. Максимальный размер полезной нагрузки для full-speed устройств составляет 1023 байт. Максимальный размер полезной нагрузки для high-speed устройств составляет 1024 байт. Из приведённых сведений следует, что только для варианта USB1.1 или 2.0 длина информационной части пакетов достаточно велика (порядка 1024 байт) по сравнению с служебной частью (заголовком пакета, Sync и PID в начале; CRC и EOP в конце пакета).
Возвращаясь мысленно к ранее изложенным принципам образования линейчатой структуры спектра таких сигналов, вспомним следующее. Предположим, реализован и ведутся СИ интерфейса USB 1.1 c тактовой частотой 12 МГц. Как показано выше, длина пакета данных 1024 байт. Поле SYNC имеет длину 8 бит на low speed и full speed или 32 бита на high speed. PID - 4 бита, однако чтобы обеспечить его правильный прием, 4 бита дополнены (complemented) и повторены, в результате получился 8-битный PID заголовка. В сумме это 12 бит (полтора байта).
В конце пакета поля CRC-контроль пакета и EOP занимают 14 байт плюс 2 бита.
Итого, длина пакета составляет 1024+16=1040 байт. Соответственно, это 1040*8=8320 бит. Считая, что в течении каждого периода тактовой частоты передаётся один бит, получим тактовую частоту следования пакетов, равную 12000/8320=1,442 МГц.
Рисунок 38 Ожидаемый идеализированный
(без учёта «скремблирования») спектр ПЭМИН интерфейса USB
Для нас это означает, что спектр должен иметь линейчатую структуру с «главными» составляющими через 12 МГц и справа и слева от них «боковые» с шагом, кратным 1,44МГц (разумеется, с должными допусками на точность кварцев контроллера).
Причём (и это принципиально важно), все частоты (составляющие спектра), меньшие нулевой гармоники на частоте 12 МГц будут связаны только с чередованием пакетов и, принципиально, неинформативны. Аналогично прикидка может быть проведена и для основной частоты передачи 480МГц.
Исследования интерфейса 2.0 усложняется ещё и тем, что он является адаптивным. В связи с чем, «не договорившись» с девайсом на скорости High speed хост перейдёт на более низкую скорость, вплоть до full speed, периодически возвращаясь к попытке работы на максимальной скорости. Для нас это означает наличие в ПЭМИН составляющих, соответствующих произвольным тактовым частотам. А, значит, на оператора (автоматика измерительных систем, пока, делать этого не умеет) ложится задача сортировки всех выявленных информативных («имеющих признаки информативности») составляющих по своим тактовым и расчёт их с разными параметрами.
Но это ещё не все сложности с этим интерфейсом. Данные (data) кодируются в физической линии методом NRZI (Non Return to Zero Invert – «без возврата к нулю с инверсией», рисунок 39). Кроме того, для исключения длительных периодов одного и того же направления тока применяется вставка бит (bit stuffing), чтобы обеспечить нужные изменения уровня в потоке данных.
Рисунок 39 Пример кодирования data в пакете данных интерфейса USB
Таким образом, крайне сложно (реально – невозможно) создать такое наполнение байтов в блоке данных, чтобы обеспечить постоянный период их следования как внутри пакета, так и от пакета к пакету. В подавляющем числе тест-программ для СИ этого интерфейса это и не пытаются реализовать, а применяют передаче случайных байтов. Как следствие – «скачущая», причём – нерегулярно, тактовая частота и, в полном соответствии с теорией – сплошной спектр ПЭМИН.
На практике это выглядит как участки спектра с наличием «окраски» (за счёт старт-стопного режима работы теста), с невыраженными или достаточно выраженными «краями» занимаемой частотной области. Типичные спектры приведены на рисунке 40.
Рисунок 40 Реальный спектр ПЭМИН интерфейса USB
Разумеется, приведённые сведения верны для любого интерфейса USB, а не только для подключения принтера. В заключение можно посоветовать только выбор для подключения принтера качественных кабелей высокотехнологичных производителей (обычно имеют обозначение «High speed»), с хорошим симметрированием и экранированием витой пары «data». Это затрудняет выявление и измерения ПЭМИН, но крайне благотворно сказывается на результатах оценки защищённости. Нелишнем будет напомнить, что физический кабель в данном случае является элементом интерфейса, во многом определяющим уровень защищённости. Посему кабель должен быть промаркирован и вписан в «Предписание на эксплуатацию». Его замена без дополнительных СИ должна быть исключена.
Узлы обработки информации принтера
К таковым следует отнести входные буферные регистры интерфейса, сигнальный процессор, знакогенератор и внутреннюю память.
Как правило, вся циркуляции информации в этих блоках осуществляется в параллельных кодах и с разрядностью, не менее 8 (16;32). Эту разрядность никто не мешает подтвердить изучением тех. документации на изделие, обращением в сервис-центр и т.д.). Все эти функции сосредоточены (за некоторыми исключениями в больших, дорогих, многофункциональных моделях) на одной плате. Соединительные линии короткие, неплохо согласованные.
Разумеется, если в составе принтера имеется SATA HDD, то это отдельное устройство с, принципиально, последовательным интерфейсом.
Если же Ваш принтер типовой HP или Stylus, то эти блоки просто исключаются из рассмотрения (читайте НМД!). Упомянув в Протоколе, на каком, собственно, основании.
Печатающие узлы
Вот тут начинаются различия. Чтобы обосновано рассуждать об именно этих узлах, придётся, хотя бы кратко, вспомнить о принципах печати, заложенных в струйные и лазерные принтеры.
Разумеется, здесь не место для подробного изложения принципов работы этих устройств. Необходимую информацию каждый легко найдёт в сети. Однако некоторый минимум надо осветить…
Итак, струйные принтеры «рисуют» элементы изображения на бумаге из микроскопических точек-капель красителей. При этом капли настолько малы, что в поперечном изображении вертикального элемента любой буквы их помещается несколько. Ниже приведён снимок 12-5, показывающий как это выглядит реально.
Рисунок 41 Микрокапли красителя струйного принтера на бумаге
Надо отметить, что для микросъёмки расстояние между каплями красителя было увеличено. При печати текста (то есть графически элементов текста) капли (на обычной бумаге) почти сливаются.
Продолжение следует