Алексей Сорокин (Москва)
Рассмотрены защищённые компьютеры на базе трёх видов встраиваемых изделий – одноплатных компьютеров, COM- и стековых модулей, таких как PC/104 или StackPC, а также методы разработки защищённого оборудования на их основе. Кратко описаны спецификации PC/104 и StackPC.
Отечественные и иностранные производители компьютерного оборудования предлагают множество разнообразных решений для всех областей науки и техники. Существует огромный выбор электронных компонентов, модулей и готовых систем. Каждое изделие, будь то компонент модуля или компонент системы, характеризуется своей степенью завершённости и областью применения.
Когда перед разработчиком ставится задача интеграции нового решения во вновь разрабатываемую или модернизируемую систему, необходимо уделить значительное время подбору элементной базы, учитывая требования технического задания. Решение данной задачи, в большинстве случаев, можно свести к двум вариантам: разработке новой или модификации имеющейся системы. В итоге должна получиться система, адаптированная под конкретную задачу. В данном случае под адаптацией можно понимать разработку нового изделия с применением имеющейся элементной базы по отдельному техническому заданию либо модернизацию имеющегося решения под новые требования без существенной переработки изделия.
Основным отличием разработки новой системы от адаптации является степень универсальности получаемого изделия. При разработке нового изделия под конкретную задачу мы получаем специализированное изделие, возможно, с некоторым избыточным функционалом на будущее. Такое изделие может идеально вписаться в систему, поскольку в нём нет ничего лишнего и универсального, в широком смысле этого слова, а форм-фактор и расположение компонентов изделия определяются конкретной системой.
Рис. 1. Пример компьютеров со степенями защиты IP20 и IP65
Примером таких изделий являются ноутбуки. Для каждой модели производитель разрабатывает новую материнскую плату, систему охлаждения, корпус, клавиатуру и т.п. Стандартными узлами являются только модули памяти, дисковая подсистема, матрица дисплея и разъемы расширения, такие как miniPCI-express, для установки дополнительных модулей. Разрабатывая такое изделие, производитель несёт дополнительные издержки. Во первых, необходимо провести полноценные лабораторные, стендовые, определительные и приёмочные испытания, а также поставить изделие на производство. Во вторых, серийность такого изделия, а, возможно, и серийность его компонентов будет ниже, чем выпускаемых аналогов. Следовательно, стоимость разработки и выпуска новой модели всегда выше стоимости адаптации и производства модифицированного изделия. Поэтому новые изделия заметно дороже популярных серийных продуктов.
Рис. 2. Модули: одноплатный 3,5", COM-Express и стековый PC/104-plus
Но если изделие востребовано, его цена со временем заметно снижается. Заказчику, как всегда, требуется качественное изделие по возможно низкой цене, а производитель заботится о рентабельности: для него выгоднее заниматься разработкой удачных изделий и их модификаций. Поэтому адаптации уделяется всё больше внимания, и практически каждое новое изделие для открытого рынка содержит большой потенциал модификации без существенных затрат времени и сил Возможность адаптации изделия, на примере защищённых компьютеров, зависит от следующих факторов: стандартизации применяемых модулей, их технологичности, сложности разводки соединений внутри изделия и технологичности механических составляющих – корпуса, теплоотвода, крепления модулей и т.п. В зависимости от решаемых задач к изделию могут предъявляться дополнительные требования по надёжности – от электрических и механических характеристик до электромагнитной совместимости, наработки на отказ, степени защищённости корпуса, разъёмов и кабелей. Данные требования влияют на выбор элементной базы и конструкцию корпуса изделия. Например, такое понятие, как «защищённый», с применением общепринятой системы классификации IPxx (Ingress Protection Rating, Степень Защищённости от Проникновения), сложно распространить на модуль или набор модулей, не установленных в корпус. Но для системы, состоящей из набора модулей, корпуса или каркаса, защищённость является неотъемлемой характеристикой.
Если к системе предъявляются, например, требования IP65, то они будут распространяться и на интерфейсные разъёмы, и, как следствие, повлияют на способы вывода интерфейсов внутри корпуса. В итоге это приведёт к необходимости выбора изделий определённого форм-фактора. (В отсутствие требований IPxx можно использовать обычный одноплатный компьютер со стандартными разъёмами и установить его в негерметичный корпус.)
Рис. 3. Модуль COM-Express, установленный на плату-носитель
Требование IP65 обусловливает герметичные разъёмы и разводку интерфейсных кабелей внутри корпуса. Применение одноплатного компьютера со стандартными интерфейсными разъёмами приведёт к громоздкой разводке, поскольку ответные части стандартных разъёмов далеко не миниатюрные. Необходимо также позаботиться о кондуктивном теплоотводе из герметичного корпуса. Он не стандартизован для одноплатного компьютера, оснащённого, как правило, ребристым радиатором, а не пластиной, отводящей тепло на корпус. Поэтому требование IP65 к корпусу защищённого компьютера, скорее всего, приведёт к выбору модулей таких распространённых форм-факторов, как COM или ETX (с разработкой платы носителя), PC/104-plus или PC/104-express (с набором периферийных модулей) (см. рис.1). Безусловно, возможны и другие варианты, но они обойдутся дороже и поэтому менее популярны.
Рис. 4. Стековые модули PC/104-plus
Каждый производитель по своему решает вопросы степени соответствия модулей тем или иным стандартам и реализует обеспечение требований по защищённости разрабатываемой системы. Часто при работе с изделиями (модулями) одного стандарта разработчику приходится использовать различные методы построения похожих систем только потому, что аналогичные узлы у двух изделий, соответствующих одному стандарту, сделаны по разному. Это может быть вызвано отступлениями от стандарта или, наоборот, отсутствием требований в стандарте, например, по расположению основных компонентов и узлов.
Необходимо понимать, что любой стандарт может описывать только ключевые моменты, общие для всех модулей. Чем больше таких моментов выделено и описано в стандарте, тем лучше совместимость модулей от различных производителей. Однако излишняя детализация стандарта приведёт к ограничению производителей. Поэтому не существует единого подхода к реализации «универсальной защищённой системы», но есть решения конкретных задач, предлагаемые разными производителями.
Разновидности защищённых систем и способы их построения были описаны автором в статье «Промышленные компьютеры для встраиваемых систем», СТА № 1/2011. Фактически, в каждой сфере применения есть наиболее распространённые стандарты и типы систем, которые можно назвать ключевыми. Среди них можно выделить стековые форм-факторы, предназначенные для построения максимально защищённых и надёжных систем. В данной статье мы рассмотрим следующие методы построения защищённых систем:
Существуют три вида модулей, которые тесно связаны друг с другом – это одноплатные компьютеры (SBC, Single Board Computer) с возможностью функционального расширения, COM-модули (Computer on Module) и стековые модули (Stack modules). Хотя внешний вид этих модулей сильно отличается (см. рис. 2), они реализуют общий подход к построению систем, называемый стековым.
Рис. 5. Одноплатный компьютер CPC805 форм-фактора 3,5" с установленными модулями форм-факторов PC/104-Express и StackPC
Например, COM модуль стыкуется с платой носителем, к которой, в свою очередь, могут подключаться модули другого форм-фактора (см. рис. 3). Стековые модули семейства PC/104 стыкуются друг с другом без каких либо дополнительных объединительных плат, организуя легко конфигурируемую и в то же время жёсткую и стандартизированную конструкцию (см. рис. 4). Одноплатные компьютеры, по сути, представляют собой полностью самостоятельные модули стандартизованного или произвольного форм-фактора. Одноплатный компьютер может иметь стандартные интерфейсные разъёмы и, как правило, выпускается в одном из наиболее популярных форм-факторов – EPIC, EBX или 3,5". Причём, если мы говорим о расширяемом одноплатном компьютере, то подразумеваем стандартизованный способ – установку дополнительных стековых модулей – как наиболее подходящий для встраиваемых систем вариант (см. рис. 5).
Рис. 6. Системный блок BOX PC ROC335A на базе процессора Core i7 (Perfectron, Тайвань)
В последнее время функциональность компонентов расширяется, а габариты микросхем уменьшаются благодаря переходу на новые технологические процессы. Миниатюризация элементной базы позволяет увеличивать насыщенность модулей различными интерфейсами. Не так давно под процессорным модулем понимали только вычислитель, поскольку всю площадь платы занимали процессор и системная логика. Сегодня один процессорный модуль может заменить систему 10 летней давности. При разработке процессорного модуля на современной элементной базе стало сложнее найти место на печатной плате для установки необходимого количества разъёмов ввода вывода, нежели чем для системной логики, обеспечивающей широкий функциональный набор интерфейсов.
Рис. 7. Защищённый компьютер МК905 на базе процессора AMD Geode LX800 (Fastwel, Россия)
Практически любой современный процессорный модуль можно рассматривать как законченный одноплатный компьютер. Однако такой специализированный интерфейс, как CAN, встречается далеко не в каждом процессорном модуле. Именно для реализации таких интерфейсов используются шины расширения, а достаточное количество портов COM, USB, IDE, SATA и LAN присутствует практически в каждом современном процессорном модуле. Тем не менее, одноплатным компьютером по прежнему называют модули конкретных форм-факторов – ATX, EPIC, EBX или 3,5". Остальные модули имеют предопределённый форм-фактор, в рамках которого они были разработаны, а одноплатными компьютерами являются «по совместительству».
Рис. 8. Модули COM различных спецификаций: CОM-Express, ETX, COM-Express mini, FCOM
Одноплатный компьютер практически всегда оснащён интерфейсами или шинами расширения функционала посредством стековых периферийных модулей. Поэтому можно утверждать, что если система строится на базе одноплатных компьютеров, применяются стековые периферийные модули расширения для достижения требуемой функциональности. Сам по себе одноплатный компьютер часто является лишь платформой. Безусловно, можно установить в корпус только одноплатный компьютер, и для ряда задач этого будет достаточно. На рынке предлагается множество простых одноплатных ПК, в том числе и корпусированных – так называемые BOX PC и Panel PC (вариант с дисплеем), произведённые в Китае и Тайване (см. рис. 6). По функционалу они напоминают ноутбук без клавиатуры. Если у таких компьютеров появляются ответственное применение и специализированные интерфейсы, возможности установки модулей расширения, требования по защищённости и стойкости к воздействию внешних факторов, то, в подавляющем большинстве, они будут произведены в Европе, США и России (см. рис. 7).
Модули СОМ не применяются отдельно, для них разрабатываются платы носители (Carrier Board), которые часто содержат дополнительные интерфейсы и шины расширения, так же как и одноплатные компьютеры. COM модуль, установленный на плату носитель, фактически является одноплатным компьютером со сменным процессорным модулем, поскольку плата носитель и процессорный модуль представляют собой единую систему. Процессорный COM модуль должен обеспечивать не только механическую совместимость с платой носителем, но и поддерживать весь функционал этой платы. Поэтому программу BIOS для COM модуля производители дорабатывают под конкретную плату носитель или предоставляют рекомендованные решения для разработчиков плат носителей под конкретные COM модули.
Существует несколько типов COM-модулей – это изделия, выполненные по спецификациям COM-express (PICMG COM.0), ETX/nanoETX и COM-Express mini (Kontron). Остальные спецификации «COM подобных» решений, такие как CoreExpress, COMIT (SFFSIG), FCOM, StackPC (Fastwel), менее популярны (см. рис. 8).
Разработать плату носитель под COM-модуль намного проще, чем процессорный модуль. Печатные платы процессорных модулей могут иметь до 12 слоёв, и до 90% их площади занимают компоненты. Производитель процессорных модулей берёт на себя всю ответственность за проверку качества изготовления и сборки. Например, модули форм-факторов COM, PC/104 и CompactPCI достаточно компактны, однако требуют размещения на плате большого числа разнородных компонентов.
Рис. 9. Модульный компьютер MK1301 (Доломант, Россия) на базе модуля COM-Express Type II c кондуктивным теплоотводом на корпус. Применение платы-носителя даёт возможность расширения функционала
модулями форм-факторов PC/104-plus, miniPCI и Express CARD
Модуль CPC1301 (COM-express Type 2) торговой марки Fastwel содержит 1075 компонентов, его плата размером 125×95 мм состоит из 16 слоёв со слепыми отверстиями. Плата носитель KIB1280 для модуля CPC1301 (COM-express Type 2) с шиной расширения PC/104-plus содержит 687 компонентов и 6 слоёв в габаритах 244×305 мм. Однако на плате носителе подавляющее большинство компонентов – это штыревые соединители и интерфейсные разъёмы, фильтрующие конденсаторы, подтягивающие и ограничивающие резисторы, элементы схем цифровой логики и защиты интерфейсов CAN и SDVO (графические интерфейсы для поддержки двух дополнительных дисплеев LVDS). На процессорном модуле, помимо основных громоздких компонентов – процессора с системой охлаждения, системной логики и стабилизаторов питания, необходимо разместить ещё около тысячи пассивных компонентов, без которых работа процессорного модуля будет невозможна.
Это обусловливает существенное различие в технологичности печатных плат: на COM модуле для реализации заложенного функционала необходимо использовать большее количество слоёв с глухими отверстиями, а плата носитель представляет собой обычную 6 слойную печатную плату без особых требований к технологии производства и плотности размещения компонентов. Полный цикл разработки и постановка на производство процессорного COM-модуля занимает от 1 до 2 лет, в зависимости от новизны элементной базы и сложности размещения компонентов, объёма доработок системного и тестового ПО, а также содержания приёмочных и сертификационных испытаний. В свою очередь, разработка платы носителя занимает от 4 до 6 месяцев, а в случае адаптации – ускоряется почти до времени закупки компонентов и сборки первых образцов, как правило, от 1 до 3 месяцев. Поэтому преимущества использования COM модулей очевидны.
Модули COM оснащены стандартизованной системой теплоотвода в виде теплораспределительной пластины (heat spreader), что позволяет разрабатывать собственные платы носители и корпуса для любого типа COM модулей от любого производителя. Если модуль снимают с производства, его можно относительно безболезненно заменить аналогичным модулем, сохранив плату носитель, разработанный корпус, присоединительные разъёмы и т.п.
Рис. 10. Панельный компьютер БС01 (Fastwel, Россия)
Примером применения COM модулей в России является модульный компьютер MK1301 торговой марки Fastwel, разработанный для жёстких условий эксплуатации. В данном компьютере используются простые, но многофункциональные платы носители и высокотехнологичный процессорный модуль на базе мощного процессора Core 2 Duo или экономичного Core Solo. Преимуществом такого решения является лёгкая и быстрая адаптация под требования заказчика. Данный компьютер фактически является аппаратной платформой для защищённой вычислительной или управляющей системы (см. рис. 9).
Другим примером могут служить защищённые панельные компьютеры семейства БС всё той же торговой марки Fastwel. Данное изделие также является аппаратной платформой с возможностью быстрой адаптации под конкретные требования заказчика и использует в качестве основы стандартный и широко распространённый модуль CPB904 форм-фактора ETX и плату носитель. Таким образом, в каждом изделии применяется стандартный серийный процессорный модуль, надёжность которого проверена временем (см. рис. 10).
Существуют два основных типа расширяемых систем – магистрально модульные с применением объединительных плат и стековые, в которых модули сочленяются друг с другом. Любые другие способы являются комбинацией этих вариантов. Ярким примером магистрально модульных систем могут служить изделия форм-факторов CompactPCI, VME и MicroPC. Заметим, что слотовую систему, например обычные материнские платы форм-фактора ATX со слотами PCI и PCI-express, также можно назвать магистрально модульной, где в качестве объединительной платы выступает системная плата. В свою очередь, COM модули можно отнести к стековым, поскольку они стыкуются с платой носителем аналогично стековым модулям. Разница лишь в том, что COM модуль и плата носитель выполнены в разных форм-факторах. Наиболее распространённым стековым решением является PC/104.
В качестве шин расширения стековые модули используют проходные разъёмы, как в PC/104 и PC/104-plus, или два разнотипных разъёма с двух сторон платы, как в PC/104-express. Соединители подобраны так, чтобы при стыковке модулей сохранялась их взаимная ориентация. Данные разъёмы называют разъёмами шин расширения (Expansion Bus Connectors), различая верхний (TOP) и нижний (BOTTOM) соединители. Назначение контактов разъёмов описано в спецификации. В зависимости от типа заявленного производителем функционала используются те или иные сигнальные цепи, при этом спецификация описывает порядок их использования. Например, периферийный стековый модуль PC/104express обязан использовать первый канал PCI-express с разъёма расширения. Не допускается использование второго канала, если не используется первый, поскольку это приведёт к нарушению работы всей системы.
Рис. 11. Защищённые заказные компьютеры серии MK (Fastwel, Россия) на базе стека модулей PC/104 или StackPC с применением бюджетных корпусов фирмы Tri-M (Канада)
Существенное отличие между стековыми модулями, одноплатными компьютерами и COM модулями состоит в типе применяемых интерфейсных разъёмов и принципах использования этих интерфейсов. На стековых модулях в подавляющем большинстве используются только штыревые соединители для интерфейсных разъёмов и практически никогда не применяются стандартные для персональных компьютеров. Это обусловлено тем, что стековые модули являются сборочными единицами для различных систем, и вывод интерфейсов осуществляется через специализированные разъёмы, характерные для конкретного решения. Для одноплатных компьютеров применяется максимально возможное количество разъёмов стандартного типа, что обусловливает их область применения – негерметичные BOX PC. COM модули вообще не содержат интерфейсных разъёмов, поскольку их интерфейсы выведены на разъёмы шин расширения и рассчитаны на дальнейшее их использование на плате носителе.
Рис. 12. Защищённые заказные компьютеры на базе стеков модулей PC/104 с модульной конструкцией корпуса IDAN и HiDAN (RTD, США)
Стековые модули, благодаря компактной и жёсткой конструкции, часто используются в системах, к которым предъявляются повышенные требования по механическим воздействиям. Компактный форм-фактор и невысокие требования к теплоотводу позволяют разрабатывать относительно простые и технологичные корпуса для защищённых систем с возможностью адаптации под требования заказчиков. Примером массовых корпусов для широкого рынка стековых систем могут служить изделия канадской компании Tri M – CanTainer (см. рис. 11), а примером разрабатываемых и поддерживаемых типов корпусов – продукты IDAN и HiDAN американской компании RTD (см. рис. 12) и корпуса с кондуктивным теплоотводом для модулей PC/104 и StackPC российской компании ДОЛОМАНТ (см. рис. 13). Ограничения по кондуктивному теплоотводу для компактных форм-факторов накладывают ограничения по потребляемой мощности всей системы. Это приводит к тому, что изделия стековых форм-факторов, по сравнению с изделиями CompactPCI и COM-express, разрабатываются в основном для систем управления со средней или низкой производительностью.
Рис. 13. Защищённый заказной компьютер MK308 (Доломант, Россия). Корпус разработан для поддержки модулей PC/104 и StackPC, в том числе с оригинальной системой кондуктивного теплоотвода
Как уже отмечалось, наиболее распространённой стековой системой является семейство PC/104. Известны попытки организовать новые стековые форм-факторы, например SUMIT (SFFSIG) и StackPC (Fastwel). Однако SUMIT несовместим с PC/104-express.
Стандарты PC/104-express и StackPC будут подробно рассмотрены во второй части данной статьи. Однако, забегая вперёд, можно отметить, что далеко не все модули стандарта PC/104-express совместимы между собой, и данная спецификация не содержит рекомендаций для построения систем, в ней лишь приведены несколько общих примеров стыковки модулей между собой. Поэтому при работе с PC/104 постоянно возникают проблемы: как организовать стек из процессорного модуля, периферийных модулей, источника питания и, возможно, интерфейсного модуля с интерфейсными разъёмами; как эффективно организовать герметичную и защищённую систему с эффективным теплоотводом; как разместить интерфейсные кабели внутри корпуса и т.п. В результате анализа и проработки данных вопросов «в железе» появилась спецификация StackPC, которая призвана ответить на большинство перечисленных вопросов и разработана не только для описания изделий уровня модуля, но и системы в целом. Спецификация StackPC определяет три основных требования:
Первое и второе требования однозначно заявляют о механической и электрической совместимости различных модулей между собой. Третье требование по организации и построению систем описывает простой и в то же время функциональный подход – стек в одном направлении (Stack Up Only), что подразумевает подсоединение модулей расширения только сверху процессорного модуля. Это позволило сделать процессорные и периферийные модули проще и технологичнее по сравнению с PC/104-express. Спецификация также регламентирует единый подход к организации отвода тепла от процессорного модуля и стабилизаторов питания, аналогично COM-express.
Подход StackPC предполагает возможность уменьшения объёма кабельных соединений внутри стека благодаря более эффективному, чем в PC/104-express, использованию разъёма расширения – не только для шин PCI-express, которые можно наращивать путём установки мостов PCI-express, но и для ряда необходимых периферийных интерфейсов и служебных сигналов. В результате спецификация StackPC описывает новую возможность для стековых модулей – применение модулей StackPC, реализованных в формате PC/104, для COM-приложений, т.е. в качестве процессорных COM модулей. Раньше такое применение было неприемлемо для изделий форм-фактора PC/104.
Назначение контактов разъёмов StackPC продумано таким образом, чтобы при необходимости можно было обеспечить максимальную совместимость изделий StackPC с такими распространёнными стандартами, как PC/104plus и PC/104-express различных типов (1, 2, Universal и их сочетания). Такая возможность совместимости и/или переноса подхода StackPC на другие форм-факторы также описана в общих требованиях по адаптации. Например, можно сделать модуль StackPC в форм-факторе PC/104 и обеспечить совместимость с большинством изделий PC/104express, дополнив их новыми возможностями, которые предлагает подход StackPC. Можно разработать модуль формата 3,5" с шиной расширения StackPC и обеспечить дополнительную функциональность StackPC наряду с совместимостью с подавляющим большинством периферийных модулей PC/104-express. Все эти аспекты спецификации StackPC мы разберём во второй части статьи в сравнении со спецификацией PC/104-express.