3. Закон Амдала
3
• Предположим, что доля a в
вычислениях может быть
выполнена только
последовательно. Тогда для p
процессоров ускорение составит
4. Классификация параллельных архитектур
по Симе и Фонтейну
Параллельные
архитектуры
Параллелизм
уровня данных
Векторная
SIMD
Систолическая
Параллелизм
уровня функций
Параллелизм
уровня инструкций
VLIW
Суперскалярная
Параллелизм
уровня потоков
Параллелизм
уровня процессов
С распределенной
памятью
(мультикомпьютер)
С общей памятью
(мультипроцессор)
4
6. Основные характеристики процессора
• по организации доступа к памяти: гарвардская или фоннеймановская архитектура, где гарвардская
архитектура подразумевает физически раздельные память инструкций и память данных, а в
архитектуре фон Неймана инструкции и данные хранятся в одном устройстве;
• разрядность данных, обрабатываемых в АЛУ;
• тактовая частота ( т.е. частота перемещения данных между компонентами процессора); эта частота в
общем случае не эквивалентна частоте преобразования данных;
• регистровая модель процессора – число и назначение регистров, их разрядность;
• система команд процессора – набор поддерживаемых инструкций, возможные операнды для них;
• показатель CPI (Cycles Per Instruction) – количество тактов для исполнения инструкций (обычно этот
параметр имеет индивидуальные значения для инструкций или их групп).
6
11. Модуль Nvidia Jetson для встраиваемых
применений
• CUDA (Compute Unified Device
Architecture) позволяет
переносить часть вычислений
на GPU
11
12. Процессоры цифровой обработки сигналов
• Также «сигнальные процессор», DSP (Digital Signal Processor)
• Основная черта – наличие команды «умножение с накоплением»
(MAC, Multiply and Accumulate)
• TI C5000, C6000
• Analog Devices ADSP21xx, TigerSharc, BlackFin
12
17. Микроконтроллеры
• МК (MCU) содержат в одном корпусе ядро
процессора, память и периферию
• Широкие диапазоны характеристик
• 8 бит, 4-8 МГц (Attiny, 8051)
• 32 бит, 24-200 МГц (Cortex-M)
• Встроенные модули АЦП, USB, UART, SPI
• Реже – контроллеры внешней памяти
• Накристальная память содержит flash для
программ и ОЗУ для данных
17
18. Пример средств разработки для МК
• Настройка аппаратного обеспечения
МК с помощью конфигуратора создает
наборы библиотек (C headers) с
константами, описывающими
периферийные устройства и базовым
набором функций для доступа к ним
• Разработка программного обеспечения
производится на базе IDE при условии
подключения созданных программных
компонентов
• Разработка программного обеспечения
существенно зависит от настройки
аппаратного обеспечения
18
19. Платформа Arduino
• Arduino не является процессором
или микроконтроллером
• Основа платформы –
управляющий модуль и
дополнительные платы
расширения (shield)
• Программирование на базе языка
Си, однако существенно
упрощена настройка
периферийных устройств
19
20. Пример периферийных устройств
• Набор датчиков с интерфейсом PMOD
• PMOD – 2 ряда по 6 выводов (2 вывода
питания, 2 вывода земли, 8 сигнальных
выводов)
• Нет универсального интерфейса, с
помощью форм-фактора PMOD могут
быть подключены различные варианты
устройств
20
21. Платформы на базе ПЛИС
• Zedboard – отладочная
плата на базе ПЛИС Zynq-
7000
• Alveo – ускоритель на базе
высокопроизводительной
FPGA Xilinx
• Модуль «Плеяда» (Россия)
на базе FPGA Xilinx
21
22. Многоядерные процессоры
• SW26010
• Тенденции:
• Кластерная организация
• Специализация
процессорных ядер
(требуется анализ
программного
обеспечения)
• Управляющие ядра ARM
22
23. Гетерогенные вычислительные системы.
• Гетерогенные («разнородные») системы предназначены для
задач с различными типами вычислительной нагрузки для
отдельных подзадач
• Пример: CPU + GPU – процессор общего назначения и
графический ускоритель для построения трехмерной графики
• Разновидности вспомогательных подсистем:
• DSP (сигнальный процессор)
• FPGA
• Сетевой процессор
23
24. Облачные и туманные вычисления
• Облачные вычисления (cloud computing) – передача данных на
сервер («в облако») для последующей обработки
• Туманные вычисления (fog computing) – предварительная
обработка собранных данных с целью уменьшения сетевого
трафика и обеспечения автономной реакции
24
25. Интернет вещей
• Internet of Things (IoT)
• Распределенные системы датчиков
(возможно, исполнительных устройств)
• Обязателен беспроводной интерфейс
• Интерфейсы с высокой скоростью и дальностью
передачи имеют высокое потребление энергии
• Может использоваться многозвенная
архитектура: маломощный беспроводной
интерфейс → концентратор → ПК (сеть)
25
26. Системы сбора данных.
• Интернет вещей может рассматриваться как подкласс систем сбора
данных
• Распределенные датчики (например, промышленная автоматика)
подключаются по беспроводным (см. IoT) или проводным
интерфейсам, образуя иерархию устройств
• Подсистема датчиков автомобиля (совокупности близко находящихся
автомобилей)
• Подсистема датчиков станка (цеха, предприятия)
• Подсистема датчиков «умного дома»
• Реализация – микроконтроллер с низким энергопотреблением
• Предварительная статистическая обработка, фильтрация данных, мониторинг
состояния
26
27. Выводы:
• Аппаратная архитектура вычислительного устройства находится в
тесной взаимосвязи с особенностями решаемых задач
• Различные классы задач требуют различных архитектур
вычислительных устройств
• Перспективными являются гетерогенные вычислительные
системы и разработка методов их проектирования
27