Главная » Просмотр файлов » Лекции. Системы реального времени (2015) (all in one)

Лекции. Системы реального времени (2015) (all in one) (1185224), страница 6

Файл №1185224 Лекции. Системы реального времени (2015) (all in one) (Лекции 2015-2016) 6 страницаЛекции. Системы реального времени (2015) (all in one) (1185224) страница 62020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 6)

вытеснение задач) должны бытьпредсказуемымиЧто делать:• Сбрасывать кэши при старте задач• Размещать данные по фиксированным адресам• Избегать сложного вычисления адресов53Константные длительности операцийпроцессора•Все операции процессора должны быть реализованы так, чтобывыполняться за константное время, независимо от значений операндов(пример: целочисленный сумматор всегда отрабатывает за 1 такт)•В частности, предикатные команды должны выполняться за константноевремя. Если предикат ложен, команда выполняется, но её результатыотбрасываются и не изменяют состояние процессора.•У циклически выполняемых команд в коде должны быть константныезначения числа итераций.54Производительность линейногокодаВремена выполнения ветвей, выбираемых в зависимости от входныхданных, суммируются в связи с линеаризацией. Время выполнения линейного кода довольно велико (посравнению с оригинальным), если путь выполнения оригинальногокода существенно зависит от входных данных55Производительность линейного кода(2)Процессоры с длинными конвейерами тратят многотактов на перезаполнение конвейера при ошибочномпредсказании ветвления. Предикатное выполнение может быть «дешевле»ветвления Современные компиляторы и процессоры могутиспользовать предикатное выполнение для улучшенияпроизводительности56Пример: ускорение за счет ifпреобразованияПредикатный кодВетвящийся кодВыполнение в трёхступенчатом конвейере:5 тактов6 тактов4 такта57Свойства процедуры линеаризации кода• Полнота: любой участок кода с ограниченным WCETможет быть линеаризован• В линеаризованном коде путь выполнения –единственный• Анализ WCET тривиален: запустить код и измеритьвремя (при «наихудшем» начальном состояниисистемы)• Код выполняется заметно дольше ветвящегося кода58Времена выполненияВремена выполнениядо и послелинеаризации59Оптимизация WCET на этапекомпиляции6162Наихудший путь• Внимание: в результате оптимизации другой путьможет стать наихудшим63Наихудший путь• Внимание: новый наихудший путь может выполнятьсядольше, чем первоначальный64Или всё-таки замерять?Почему нельзя просто измеритьWCET? Замер времени выполнения на всех путях выполненияреалистичной программы – на практике невозможен При определении тестовой выборки могут быть упущены редкиесценарии выполнения (обработка ошибочных ситуаций и т.п.) Выбранные тестовые данные могут не породить самую длинную(по времени) трассу выполнения Внутреннее состояние процессора на момент старта измеренийможет не быть наихудшимПростые замеры могут послужить источником первоначальной(грубой) нижней оценки WCET66С другой стороны…Не во всех случаях строго необходима безопасная (не заниженная) оценкаWCET• Системы мягкого реального времени (например, мультимедиа)• Системы, устойчивые к редким превышениям директивных сроковДля новой аппаратной платформы быстрее всего можно начать именно замерывремени выполнения (а статические методы анализа аппаратных задержекадаптировать долго)Низкие затраты на аннотирование кода => быстрое получение грубой оценки временивыполненияЗамеры дополняют статический анализ, предоставляя реальные значения задержекЗамеры могут использоваться для уточнения результатов статического анализа WCET• Моделировать некоторые современные процессоры действительно сложно• Для некоторых задач зависимость времени выполнения от входных данных понастоящему сложна (вещественные числа, массивы и т.п.)• Люди из промышленности требуют подтверждения теоретических оценок WCETданными «из жизни»67Оценка WCET с помощью измерений• Информация о таймингах получаетсяпутём измерения времени выполнениякода на реальной целевой аппаратуре• Точки инструментирования кодаформируют наблюдаемые извнесобытия, используемые для старта иТрассазавершения измерений• Трасса выполнения содержитсобираемую совместно информацию опутях в программе и временах ихвыполнения (путь = последовательностьлинейных участков)ВходныеданныеСостояниеКод +аппаратураСостояниеВыходныеданные 68••Необходимо СБРОСИТЬ состояние процессора (кэш, конвейер и т.п.) перед каждым прогономНО: для измерения WCET конкретного пути необходимо специфическое начальное состояниекэша (например, если путь входит в состав второй или более поздней итерации цикла, команды69должны находиться в кэше)Методы инструментирования• Чисто аппаратноеинструментирование• Внешние замерывремени выполненияпри помощипрограммноформируемыхсигналов вовне• Чисто программное(внутреннее)инструментирование70Важные соображения по замерамКак измерить именно то, что нужно:• Инструментирование кода не должно изменять путьвыполнения или время выполнения программынепредсказуемым или неизвестным способом.

Точкиинструментирования должны располагаться вфиксированных местах кода.• Нужна уверенность в том, что запуски для замероввсегда стартуют с известного требуемого состоянияпроцессора (кэш, конвейер, предсказание ветвлений ит.п.)71Промышленный подход• Пример промышленного процессаразработки:ПроектированиеТестированиеВнедрениеПлаты-прототипыАппаратура целевой системыАппаратура целевойсистемы72Промышленный подход – массивы входныхданных73Промышленный подход – случайныеданные74Поиск «наихудших» входных данных –оптимизационная задача• Массивы входных данных ограниченный перебор• Случайные входные данные случайный поиск• Как насчёт «умной» оптимизации?7576Схема эволюционного алгоритма• Отбор: выживание наиболееприспособленных. Отборрандомизирован и выполняетсяс учётом значения целевойфункции.• Скрещивание: обмен генами,например одно- или n-точечноескрещивание• Мутация: рандомизированноеизменение генов77Оценка WCET эволюционнымиалгоритмами• Ген = значение входной или внутреннейпеременной• Целевая функция = измеренное времявыполнения (больше значение => особьлучше)• Результат = «наилучшая особь» = особь(набор данных) с наибольшим временемвыполнения программы• Даёт хорошую, но небезопасную оценку WCET78Оценка WCET эволюционными алгоритмами• Старт– [0] x = 0, y = 0 -> ET: 40– [1] x = 1, y = 1 -> ET: 40• Скрещивание:– [2] x = 0, y = 1 -> ET: 50– [3] x = 1, y = 0 -> ET: 30Алгоритм завершается, еслизначение целевой функции неулучшается на протяжениизаданного числа итераций79Результат применения эволюционного алгоритмаЗавышеннаяПрограммаЗаниженнаяНетрезультатаТочность - ?80Выводы• Оценка WCET – сложная задача, разрешимая(безопасно и с приемлемой точностью) только длянекоторых типов процессоров и программ• На практике для оценки WCET применяется сочетаниеформальных методов и измерений• Система реального времени должна быть устойчива котдельным/локальным превышениям имеющихсяоценок WCET– сторожевые таймеры для обнаружения превышения WCET– устойчивость к сбросу задачи-нарушителя (и пропускуитерации её выполнения)– «растяжимые» периоды выполнения задач длядинамической регулировки загрузки процессора81Спасибо за внимание!82ИНФОРМАЦИОННО-УПРАВЛЯЮЩИЕ СИСТЕМЫРЕАЛЬНОГО ВРЕМЕНИЛекция 7:Архитектура вычислительныхблоков ИУС РВКафедра АСВК,Лаборатория Вычислительных КомплексовБалашов В.В.ПланИНТЕГРАЦИЯ• Однопроцессорные вычислительныеблоки• Распределённые системы изоднопроцессорных блоков• Многомодульные вычислительныеблоки• Архитектура интегрированноймодульной авионики2Необходимый минимализм:однопроцессорные блоки• Технологические ограничения:– вынужденное применение «грубого»технологического процесса– жёсткие ограничения по размерам иэнергопотреблению• Откуда берутся ограничения– требование к устойчивости к внешнимвоздействиям (излучение и т.п.)– неразвитость технологических процессовпроизводства микросхем– общий лимит на размеры иэнергопотребление ИУС РВ3Аппараты с жёсткимиограничениями на ИУС РВ4Центральные ЭВМ марсоходовАппаратCPURAMFlashEEPROMОСSojourner(1997)Intel 80C85, 2 МГц, 5128-разрядный,Кбайт6000 транзисторов(аналог Intel 80801974 г.

разработки)176КбайтНетОднозадачная,жёсткийпорядоквыполнениязадачMarsExplorationRover(2004)IBM/BAE RAD6000,20 МГц,32-разрядный,1.1 млнтранзисторов128Мбайт256Мбайт3 МбайтVxWorks,многозадачнаяMarsScientificLaboratory(2011)BAE RAD750,132 МГц,10.4 млнтранзисторов256Мбайт2Гбайт256КбайтVxWorks,многозадачная5RAD7506Расширение одноплатногокомпьютера: карта-мезонин•••На одноплатном компьютере – локальная шина (например, PCI)К локальной шине присоединяется карта расширения (например,адаптер канала)Карта расширения не зависит от «основного» разъёма, черезкоторый компьютер подключается к управляемой системе7RAD750: внедрения• Deep Impact (полёт к комете)• Mars Reconnaissance Orbiter (спутникМарса)• Lunar Reconnaissance Orbiter (спутникЛуны)• WorldView-1 (спутник оптической съёмки)• Fermi Gamma-ray Space Telescope(орбитальный телескоп)• Kepler space telescope (орбитальныйтелескоп)• Wide-field Infrared Survey Explorer(орбитальный телескоп)• Mars Scientific Laboratory (марсоход)8Слабая интеграция: однопроцессорныеблоки на медленной шинеДатчикиИндикаторыОрганыуправленияСистемауправлениядвижениемРадиолокаторШина MIL STD-1553BОбщаяпамятьШина MIL STD-1553B:порядка 100 Кбайт/с9Назначение блоков• С-1:Прямой каналк радаруОбщая память– контроль состояния бортовых систем– выбор режима работы ИУС РВ– управление обменом по шине (контроллер канала)• С-2:– вычисление управляющих параметров полёта для передачив систему управления движением– подготовка данных для индикаторов• С-3:– вычисление параметров движения самолёта на основепоказаний датчиков– обеспечение движения самолёта по маршруту– управление датчиками• С-4:– управление полётом на малой высоте по показаниям радара10Тесная интеграция: шина VME• Параллельная шина с арбитражем• Реализует прямой доступ к памятимодулей• Объединяет модули в блок (крейт)• Разрядность шины данных:32 или 64 бита• Пропускная способность:– 40 Мбайт/с (VME32)– 80 Мбайт/с (VME64)– до 320 Мбайт/с (VME64 в блочномрежиме, на одну передачу адреса –несколько передач данных)11Структура шины VME••••Адресная шинаШина данныхШина арбитража (для управления доступом)Шина прерыванийЭто похоже напроцессорную шину!Это она и есть(процессор Motorola68000)12Роли модулей на шине VME– Ведущий (Master)• Может инициировать передачу данных– Подчинённый (Slave)• Отвечает на запросы от ведущего– Источник прерывания (Interrupter)• Модуль, способный формировать прерывание (обычно –подчинённый)– Обработчик прерывания (Interrupt handler)• Модуль, способный обрабатывать прерывания (какправило, одноплатный компьютер)– Арбитр (Arbiter)• Модуль, управляющий доступом к шине и осуществляющиймониторинг обмена по шине.

Характеристики

Тип файла
PDF-файл
Размер
45,54 Mb
Материал
Тип материала
Высшее учебное заведение

Список файлов лекций

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6374
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее