8.1 Встраиваемые устройства для управления в реальном времени
==163
Встраиваемые системы - вычислительные устройства, смонтированные внутри сложного оборудования: автомобилей, самолётов, компьютерных периферийных устройств и т.д., которые сами по себе компьютерами не считаются.
8.1.1 Требования к управлению в реальном времени
Часто сам факт присутствия компьютера в системе, например, в антиблокировочной системе торможения остаётся неизвестным пользователю. В других случаях факт присутствия вычислительного устройства очевиден, например, в авиационном автопилоте. Часто процессор используется для замены громоздких и дорогих компонентов с одновременным увеличением функциональности и снижением цены. Так или иначе, компьютер является лишь частью более крупного устройства.
Большинство систем накладывают жёсткие ограничения на размер, вес, стоимость, потребляемую мощность, надёжность и условия работы процессора. Это происходит, потому что встраиваемые вычислительные устройства - лишь часть большего изделия, которое, в свою очередь, имеет собственные эксплуатационные требования и проектные ограничения.
==164
В то же самое время процессор должен показывать максимально возможную производительность, чтобы реагировать на события реального времени. Обычно это внешние воздействия, которые требуют, чтобы реакция на них укладывалась во временной промежуток, измеряемый милли- и микросекундами. Например, некоторые реактивные самолёты изначально аэродинамически неустойчивы и летают только благодаря компьютерному управлению. Бортовой авиационный вычислитель должен быть лёгким и компактным и не требовать чрезмерной мощности и охлаждения. В то же самое время он не должен отвлекаться от поддержания полётного режима. На сверхзвуке летательный аппарат перемещается более чем на 330 метров каждую секунду. На такой скорости несколько миллисекунд отделяют жизнь от смерти.
8.1.2 Как стековые машины удовлетворяют этим требованиям
Производители описанных в книге процессоров учитывали возможность их использования в приложениях реального времени. Рассмотрим факты, которые делают стековые машины привлекательными для такого использования.
Размер и вес
Как мы уже видели, вычислительные ядра стековых компьютеров достаточно просты, но размер и вес системы определяется не количеством логических элементов внутри процессора, а сложностью системы. Корпуса микросхем с большим числом выводов занимают больше места на дорогой печатной плате. Ещё больше места требуется микросхемам кэш памяти и кэш-контроллерам. Что уж говорить и о системах, программное обеспечение которых столь ресурсоёмко, что нуждается в виртуальной памяти и жёстком диске для её обслуживания. Ключом к решению проблем с размером и весом является сохранение малого числа компонентов. Это хорошо получается у стековых архитектур с их простой аппаратной частью и скромными требованиями к программной памяти. Кроме того, чем проще конструкция, тем она надёжнее.
Потребляемая мощность и охлаждение
На потребляемую мощность влияет сложность процессора. Она соотносится с числом транзисторов и количеством выводов корпуса. Кристаллы, которые для увеличения быстродействия выполнены с использованием необычных технологий, очень часто являются ненасытными пожирателями энергии. В ограничения по мощности могут не влезать и модели, требующие большого объёма быстрой и от того много потребляющей памяти.
В общем случае у стековых машин скромные требования к питанию. Потребление сильно зависит от технологии производства и для современного КМОП процесса пренебрежимо мало по сравнению с биполярной или n-МОП технологиями. Почти вся мощность выделяется в виде тепла и поэтому прямо влияет на требования к охлаждению. Слабый разогрев уменьшает число отказов, способствуя росту надёжности изделий.
==165
Условия работы
Встраиваемые устройства, особенно мобильного и военного назначения, знамениты высокими требованиями к условиям эксплуатации и должны выдерживать вибрацию, удары, перегрев и переохлаждение, а, возможно, и радиацию. Космическая и подводная бортовая аппаратура, работающая в недоступных местах, должна функционировать без технического обслуживания. Общее правило: для избежания проблем, вызываемых условиями эксплуатации, следует всемерно уменьшать число компонентов и выводов. Высокая степень интеграции стековых машин и небольшая сложность итоговой вычислительной системы позволяет получать хорошие результаты при работе в экстремальных условиях.
Цена
Стоимость собственно процессора имеет немаловажное значение для систем малой и средней производительности. Цена кристалла прямо зависит от числа транзисторов и выводов корпуса, а стековые процессоры имеют преимущество по этим параметрам.
В высокопроизводительных системах стоимость процессора может перекрываться расходами на многослойную печатную плату, микросхемы окружения и памяти. В таких случаях дополнительным преимуществом стековых машин становится конструктивная простота.
Вычислительная мощность
Производительность при управлении в режиме реального времени не ограничивается скоростью выполнения инструкций. Кроме этой характеристики большое значение имеют и другие факторы. В их числе быстрота реакции на прерывание и накладные расходы на переключение контекста. Кроме того, желательна высокая скорость работы в программах, насыщенных процедурами в качестве средства снижения объёма кода. [* Это свойство программ, написанных в стековом стиле, т.е. для CISC и RISC машин такое требование если и есть, то существенно ослаблено ] . Дело в том, что хотя стоимость микросхем программной памяти особого значения не имеет, недостаток пространства и располагаемой площади печатной платы могут потребовать уместить программу в памяти меньшего размера. Предыдущее обсуждение характеристик стековых машин показало, что в этой области они очень хороши.
==165