Встроенные системы управления Лекция 5 Аппаратное обеспечение информационно-управляющих систем встраиваемого класса А. Астапкович Государственный университет аэрокосмического приборостроения, СПб, 2012 Введение В Париже в 1900 году на Международном математическом конгрессе Давид Гильберт сформулировал проблему доказательства непротиворечивости системы аксиом обычной арифметики Уточненная формулировка проблемы заключалась в постановке задачи нахождения общего метода, который позволил бы определить, выполнимо ли данное в высказывание на языке формальной логики, т.е. установить его истинность. Алан Тьюринг в 1936 года получил ответ: проблема Гильберта оказалась неразрешимой. В работе 1937 было введено четкое определение понятия метод Отталкиваясь от интуитивного представления о методе, как о некоем алгоритме, т. е. процедуре, которая может быть выполнена механически без творческого вмешательства, Тьюринг теоретически показал, как эту идею можно воплотить в виде подробной модели вычислительного процесса. Машина Тьюринга Предложенная Тьюрингом модель вычислений, в которой каждый алгоритм разбивался на последовательность простых, элементарных шагов, и была логической конструкцией, названной впоследствии машиной Тьюринга Последовательность операций, представляющая собой описание алгоритма, упорядочена и размещается в памяти программ. Используемые данные также упорядочены и размещаются в памяти данных. Выполнение команд осуществляется последовательно и приводят к изменению состояния памяти данных АрифметическоЛогическое Устройство ( ALU) Блок управления Устройство ввода-вывода Память данных Гарвардская архитектура Память программ Блок управления обеспечивает синхронизацию процесса обработки команд Архитектура фон Неймана (принстонская) Эта архитектура более универсальна и обеспечивает возможность решения двух, в некотором смысле, полярных классов задач: “ много данных – простой алгоритм ” и “ мало данных – сложный алгоритм ”. Устройства ВводаВывода Cистемная шина( bus) тактирование адрес: команды, данные Центральный процессор (CPU) Блок Управления АрифметическоЛогическое Устройство ( ALU) Память данных Память программ При разработке программы позволяет произвольным образом разделить память на память программ и память данных в зависимости от специфики решаемой задачи. Обмен между блоками и общей памятью осуществляется по одному каналу. Принципы реализации СPU (ALU) имеет сложную структуру, обеспечивающую “разборку ” инструкции ( команды) и изменения состояния памяти данных в соответствии с ее содержимым Включает в себя ряд служебных регистров с фиксированными адресами PC++ код команды Адрес операнда 1 Адрес операнда 2 Адрес результата Примеры написания команды на ассемблере MPASM (Microchip): Синтаксис: ADDLW k //Прибавление константы Операция: [W]+k - > [W] //Результат команды сохраняется в W PC –> PC+1 //Инкрементирование счетчика команд Операнды: k [0-255], рабочий регистр с фиксированным адресом W Влияет на биты C, DC, Z регистра STATUS Синтаксис: GOTO A1 Операция: PC –> A1 Синтаксис: NOP Операция: PC –> PC+1 //Передача управления на команду с адресом A1 // Изменения значения счетчика команд //Пустая команда //Инкрементирование счетчика команд Номер текущей выполняемой команды хранится в регистре счетчике команд PC (Program Counter), который инкрементируется схемой управления, с частотой пропорциональной тактовой частоте Архитектура вычислительной системы Представляет собой описание общей логической организации вычислительной системы, согласованной со способом представления данных и операций с ними Описание операции представляет собой описание конкретного типа арифметической или логической операции, описание адреса данных, которые должны быть использованы при выполнении данной операции и адрес, куда должен быть помещен результат. Совокупность операций называется набором команд (instruction set). Набор команд является характерной особенностью конкретного варианта реализации вычислительной структуры. Архитектура ядра процессора, определяет общие принципы реализации набора команд аппаратными компонентами ядра процессора и информационного обмена между ними Микропроцессор (microprocessor) Специализированная микросхема, которая обеспечивает возможность выполнения сложной обработки данных по алгоритмам, представляемых как последовательность действий, описываемых с помощью набора команд Для вычислительных и управляющих систем, реализуемых на микропроцессорах, данные и описание программы их обработки хранятся в отдельной (ных) микросхемах памяти Эта информация представляется в двоичном виде и хранится в упорядоченном виде. Для работы с ней (чтение, запись) требуется использование адреса. Адресная информация и данные в процессе обработки представляются в двоичном виде и хранятся в регистрах микропроцессора Регистр представляют собой цифровую электронную схему, служащую для хранения двоичных чисел, разрядность которых зависит от принятых архитектурных решений. Концепция микропроцессора Intel 4004 Появление микропроцессоров относят к четвертому поколения средств вычислительной техники До этого при производстве систем обработки информации использовались так называемые микропроцессорные комплекты, представлявшие собой набор микросхем совместимый по логической и аппаратной реализации На базе этих комплектов производились вычислительные системы, интегрируемые в единое целое на печатных платах Революционным было совсем не очевидное с точки зрения бизнеса решение INTEL разработать вместо них одну интегральную схему, которая и была названа микропроцессор Магистрально-модульная структура Базовый принцип построения информационно-управляющих систем Модуль 1 Модуль K Параллельная шина управления Параллельная шина адреса Подключаемый Подключаемый модуль 1 модуль i ……. ……. ……. ……. ……. ……. ……. ……. ……. ……. ……. ……. ……. ……. ……. ……. Параллельная шина данных Питание Магистраль Слоты расширения Обмен информацией между модулями осуществляется по системе параллельных проводников Совокупность физической структуры магистрали и логической структуры информационного обмена данных меду модулями называется шиной (bus). Арбитраж шины. Совокупность аппаратно- программных решений, обеспечивающих бесконфликтные обмен информации между устройствами, соединенными шиной Наиболее распространены шины с временным разделением и случайным доступом В шинах с временным разделением разграничение доступа к шине осуществляет мастер-устройство (master), соответственно, остальные устройства называются слэйв-устройствами (slave). В русскоязычной литературе для этого употребляются термины ведущее и ведомое устройства Случайный доступ широко используется в сетевых (распределенных) информационных системах. В таких сетях все устройства равноправны. Архитектура микропроцессор Intel 4004 4 битная двунаправленная шина D0-D3 Буфер шины данных Внутренняя 4 битная шина данных Временный Регистр Регистр аккумулятор Регистр флагов ALU Сигналы управления памятью программ и данных Регистр команд (Instruction regiser) Декодер команд (Instruction decoder) Блок тактирования и управления Сигнал тактирования (Clock) Мультиплексор (Multiplexer) Счетчик команд и стэк (program counter PC and stack) Сигнал рестарта (Reset, I/O ports) Спецификация Intel 4004 Параметры и особенности архитектуры микропроцессора Intel 4004: • 2250 транзисторов, реализованных с применением 10 микр. технологии • рабочая частота 92-200 кГц • 8 битная структура с 4 битная реализация внутренней шины, по которой передавались 12 битные адреса, 8 битные команды, 4 битные данные • 46 команд ,команда выполнялась за восемь тактов (60 000 операций /сек) • трехуровневый стек (максимальная вложенность подпрограмм -3) • 16 ножек в корпусе DIP16 Архитектура IBM PC Микропроцессор от 8086 до Pentium Сопропроцессор от 8087 до 80387 Системная память программ(ROM) Память данных (DRAM) Системная шина для передачи адреса, данных, сигналов управления и т.п. BIOS Управление прерываниями Контроллер Платы расширения: прямого - видеокарта, доступа - жесткий диск, к памяти (DMA ) - последовательные порты и т.д. Клавиатура Звук Сигнальные микропроцессоры Появление микропроцессоров обеспечило возможность разработки управляющих компьютеров ориентированных на использование в многоканальных системах управления Первые бортовые компьютеры были специализированными и разрабатывались под конкретный вид управляемого источника. Компьютеры этого типа называют бортовыми (onboard computer) и их относят к классу компьютеров для встраиваемых применений (embedded solutions) Архитектура встраиваемых компьютеры первых поколений выбиралась из необходимости реализации цифровой обработки входных воздействий и сложных алгоритмов управления по нескольким каналам управления в заданном временном темпе и, как правило, была гарвардской и включала в себя набор специализированных модулей обработки сигналов (проблемно-ориентированная) архитектура Проблемно-ориентированная архитектура Реализация обработки данных специализированным блоком представляет собой вызов соответствующей команды, параметры которого определяют вариант конкретной реализации. Например, аппаратная реализация команды DO цикла. Специализированную команду DSP можно трактовать как аппаратную реализацию подпрограммы, фактические параметры которой задаются в виде параметров команды. По завершении обработки конкретных данных генерируется сигнал прерываний, обработка которого осуществляется ядром микропроцессора. Как правило, сигнальные процессоры обеспечивают возможность аппаратной (быстрой) реализации операций с плавающей запятой, операции умножения, сложения, умножения с накоплением в блоке MAC (multiply and accumulate) суммирования с накоплением, работу с кольцевыми буферами. Контроллер прерываний Для синхронизации процесса параллельной обработки специализированными модулями используется система управления прерываниями, иногда называемая контроллером прерываний Механизм организации параллельной работы устройств : выполняемая программа передает по системной шине данные, требующие обработки, на соответствующий модуль; специализированные модули, имеют адреса и регистры для приема данных и имеют логику, реализующую доступ к шине; ядро микропроцессора, передав данные или команды по соответствующему адресу, освобождается от работы с конкретным модулем и продолжает выполнение программы; после выполнения требуемых действий с данными, специализированный модуль вырабатывает сигнал завершения, который обрабатывается контроллером прерываний. Контроллер прерываний S-II 5 S-I 4 H-0 3 S-0 H-1 3 1 1 1 2 H-2 3 t1 t2 t3 t4 t5 t6 t7 t8 Время 1- выполнение команд основной программы ; 2,3- работа аппаратных модулей периферии; 3 – работа аппаратной компоненты системы прерываний; 4,5 – выполнение команд Контроллер прямого доступа к памяти Контроллер прямого доступа к памяти (Direct Memory Access -DMA) обеспечивает возможность копирования массивов данных из одной области памяти данных в другую, минуя CPU Аппаратная реализация этого специализированного блока требует начального адреса копируемой области и длину массива; начального адреса области в которую требуется скопировать данные; счетчика числа скопированных элементов на время выполнения операций копирования В современных сигнальных микропроцессорах используют многоканальные контроллеры DMA. TigerSHARC ( Analog Device) имеет DMA controller, обеспечивающий работу до 14 DMA каналов Архитектура OMAP-L138 (Texas Instruments) Закон Мура К-во транзисторов 109 Duel Core 108 Itanium 2 107 106 Intel Pentium II Intel 486 105 105 286 104 4004 103 1970 1980 1990 2000 2010 Технический директор Intel Gordon Moore в 70—x годах прошлого столетия сделал прогноз, что количество транзисторов в интегральных схемах будет возрастать вдвое, каждые 24 месяца Современная версия закона Мура гласит, что количество транзисторов на кристалле удваивается каждые восемнадцать месяцев Современные тенденции С появлением Itanium 2 Montecito (двуядерную архитектуру, пониженное энергопотребление в развитии микропроцессоров закончилась эпоха архитектур “System on Chip” и началась новая эра архитектур “Claster on Chip”, знаменующая переход к началу широкого применения параллельных вычислений и сетевых технологий внутри одного кристалла Закон Амдала Многоядерный микропроцессор – это вычислительная система, реализованная на одном кристалле и обеспечивающая скорость обработки данных за счет распараллеливания Пусть в системе с N ядрами решается некоторая вычислительная задача. При естественном предположении, что доля f от общего объема вычислений не может быть, в принципе, распараллелена, имеем оценку сверху на производительность S≤ 1/ (f+(1-f)/N) < 1/f . Технология Tri-Gate Такие решения предлагал сам Гордон Мур, а также профессор Стэндфордского университета Том Ли Опытные образцы транзисторов с трёхмерным затвором были получены в научно-исследовательских лабораториях Intel ещё в 2002 году, который считается годом изобретения технологии Tri-Gate Новую технологию в сочетании с 22-нм техпроцессом планируется внедрить до конца 2011 года и уже на её основе выпускать новые многоядерные процессоры под кодовым названием Ive Bridge Трёхмерные транзисторы Tri-Gate, изготовленные на базе 22-нм техпроцесса и работающие на низком напряжении, обеспечивают до 37 процентов более высокую производительность по сравнению с обычными транзисторами, изготовленными на базе 32-нм технологии Одноплатные компьютеры Одноплатный компьютер ( Single Board Computer - SBC) представляет собой серийно выпускаемый, готовый к применению компьютерный модуль, имеющий на одной плате микропроцессор, оперативную и постоянную память, устройства ввода-вывода Основное назначение SBC можно сформулировать следующим образом: это универсальное стандартизованное решение для вычислительного ядра встраиваемой системы управления, адаптируемое для решения конкретной задачи за счет добавления специализированных аппаратных модулей, обеспечивающих сопряжение с датчиками и устройствами сопряжения с объектом управления Одноплатные компьютеры делят на два основных класса: компьютеры с поддержкой возможности модификации архитектуры за счет использования предустановленных разъемов (слотов) расширения и компьютеры без возможности модификации Стандарт PC/104 Название стандарта PC/104 состоит из двух частей, первая из которых подчеркивает IBM PC совместимость, а вторая сообщает количество контактов шины. Впервые платы РС/104 появились на рынке в 1987 году, и уже через пять лет в 1992 году была выпущена первая открытая редакция соответствующих спецификаций. Модульные системы на базе PC/104 Стандарт обеспечивает наращивание возможностей аппаратной составляющей системы управления за счет использования модулей Линейные размеры стандартной платы составляют 90*96 мм. Платы модулей объединяются в единое целое по принципу этажерки с шагом по высоте 15 мм. Крепление элементов этажерки осуществляется четырьмя угловыми монтажными стойками Шина РС/104 электрически и логически соответствует спецификации шины ISA со скоростью передачи данных 8 Мбит/с. Модификация шины PCI, поддерживаемая стандартом РС/104+, обеспечивает обмен данными на скоростях до 133 Мбайт/с Одноплатный компьютер Tiger . Обеспечивает работу операционных систем Windows, Windows Embedded, Linux, VxWorks, QNX. Ориентировочная стоимость одноплатного компьютера Tiger составляет 725 дол. В мае 2011 фирма VersaLogic( CША) объявила о начале поставок одноплатного компьютера в форм-факторе стандарта PС-104+. частота 1.33 Ггц температурный диапазоне -40/+85 С не требует вентилятора. гигабитный порт Ethernet, семь портов USB 2.0, четыре последовательных порта, аудиоканал видеоканалы высокого разрешения Выполняет требования стандарта MIL-STD-202G по вибростойкости и ударным воздействиям. Гарантийный срок 5 лет. Для начальной загрузки использует Embedded BIOS фирмы Phoenix , работает под Windows Embedded, Linux, VxWorks, QNX. Модуль сигнальной обработки Модуль обработки сигналов фирмы Versa Logic (США)реализован в форм-факторе стандарта PC-104 Обеспечивает возможность аналого-цифрового преобразования 16 каналов с разрешением 16 битов Для одного канала обеспечивается частотой преобразования 100 кГц. При обработке всех каналов частота преобразования составляет 67 кГц. Имеет два выходных аналоговых сигнала с 12- битными цифро-аналоговыми преобразователями Как входные, так и выходные каналы могут быть откалиброваны через программируемый цифровой порт. Калибровочные константы могут быть сохранены в памяти EEPROM Имеет два 8-битных конфигурируемых (вход-выход) цифровых порта Автономный вертолеты R-50 и R-MAX Автономные вертолеты нагрузку в 15 и 30 кг R-50 и R-MAX (масса 40 и 83 кг) несут полезную Обслуживание аппаратов очень простое, запуск двигателя осуществляется встроенным электростартером, а взлетать и садиться они могут на любой горизонтальной площадке размером 3х3 м. Топливо - автомобильный бензин А-95, максимальное полетное время - полтора часа. Система управления вертолетом R-50 обеспечивает возможность полета как по командам оператора, так и автономно по программе, обеспечивая автоматический возврат в точку запуска и посадку при возникновении любых неполадок (полного расхода горючего, потере связи с землей и др.) На борту вертолеты Yamaha несут три цветных видеокамеры, включая одну поворотную. R-MAX благодаря системе GPS может автоматически позиционировать себя в пространстве с точностью до 1 м по всем трем координатам. Автономный вертолет Yamaha R-MAX Структура системы управления Yamaha R-MAX Диагностический контроллер Контроллер Центральный каналов связи компьютер Контроллер исполнительных механизмов Резервный компьютер Контроллер датчиков Структура системы управления Yamaha R-MAX Система на модуле SOM OMAP-L138 Фирма Logic PD с являющейся дочерней компанией Texas Instrument. и специализируется на поставке малогабаритных одноплатных компьютеров, реализуемых на базе микропроцессоров фирмы Texas Instruments Модуль OMAP-L138 это COTS решение представляющее собой одноплатный компьютер размера 30*40*4.5 мм, предназначенный для встраиваемых применений и коммуникационных систем. Весит этот модуль 7 грамм Модуль снабжен тремя малогабаритными 100-ножечными разъемами, для подключения к плате под специализированное применение Ядро OMAP-L138 Периферия OMAP-L138 Параметры семейства Параметры модулей SOM на базе микропроцессоров Тип SOM фирмы Texas Instruments Процессор Послед. DDR (частота память, флэш-память, 375 Мгц.) Mбит Мбит Темп. диапазон, С SOMOMAP-L138 10-1602AHCR OMAP-L138 128 8 0-70 SOMOMAP-L138 10-1502AHCR OMAP-L138 64 8 0-70 SOMOMAP-L138 10-1602QHIR OMAP-L138 128 8 -40-85 SOMC6748 10-1602AHCR TMS320C6748 128 8 0-70 Особенности применения Требуются высоконадежные компактные источники питающего напряжения с уровнями 1.5, 3, 5 В. Разработка не возможна без операционной системы ( Linux) и пакета драйверов устройств под нее (Board Support Package – BSP). Печатная плата 8-10 слоев и требуются современные технологические линии для производства аппаратного компонента системы