
- •Предисловие
- •Глава 1. Общие сведения о микропроцессорах
- •1.1 Классификация микропроцессоров
- •1.2 Характеристики микропроцессоров
- •1.2.1 Тактовая частота
- •1.2.2 Архитектура процессора
- •1.2.3 Технологический процесс производства
- •1.2.4 Частота системной шины
- •1.2.5 Размер кэша
- •1.3 Типы архитектур микропроцессоров
- •1.4 Структурная схема микропроцессоров
- •1.4.1 Микропроцессор Фон-Неймана
- •1.4.2 Конвейер
- •1.4.3 Зависимость между частотой и количеством ступеней конвейера
- •1.5 Представление информации в эвм
- •1.5.1 Двоичное представление целых чисел
- •1.5.2 Представление символьной информации
- •Глава 2. Архитектура микропроцессоров ia-32
- •2.1 Состав и функции регистров
- •2.1.1 Основные регистры
- •2.1.2 Регистры дополнительных функциональных модулей
- •2.2 Типы адресации
- •2.3 Система команд
- •2.3.1 Классификация команд
- •2.3.2 Формат команды
- •2.3.3 Однобайтовые команды
- •2.3.4 Непосредственно заданные операнды
- •2.3.5 Команды с регистровыми операндами
- •2.3.7 Команды с операндами, расположенными в памяти
- •Глава 3. Организация многоуровневой памяти
- •3.1 Принцип построения многоуровневой памяти
- •3.2 Организация кэш-памяти
- •3.3 Протоколы когерентности памяти микропроцессоров
- •3.4 Страничная организация памяти
- •Глава 4. Режимы работы процессоров ia-32
- •4.1 Обзор режимов работы
- •4.2 Реальный режим адресации
- •4.3 Защищённый режим
- •4.3.1 Дескрипторные таблицы
- •4.3.2 Дескрипторные регистры
- •4.3.3 Дескриптор
- •4.3.4 Односегментная модель памяти
- •4.3.5 Многосегментная модель памяти
- •Глава 5. Страничная организация памяти в процессорах ia‑32
- •5.1 Каталог страниц
- •5.2 Таблица страниц
- •5.3 Страничная переадресация
- •5.4 Диспетчер виртуальных машин системы Microsoft Windows
- •Глава 6. Архитектура процессоров с параллелизмом уровня команд
- •6.1 Подходы к использованию ресурса транзисторов в микропроцессорах
- •6.2 Суперскалярные процессоры и процессоры с длинным командным словом
- •6.3 Зависимости между командами, препятствующие их параллельному исполнению
- •6.4 Предварительная выборка команд и предсказание переходов
- •6.5 Условное выполнение команд в vliw-процессорах
- •6.6 Декодирование команд, переименование ресурсов и диспетчеризация
- •6.7 Исполнение команд
- •6.8 Завершение выполнения команды
- •6.9 Направления развития архитектуры процессоров с параллелизмом уровня команд
- •Глава 7. Мультитредовые микропроцессоры
- •7.1 Основы мультитредовой архитектуры
- •7.2 Выявление тредов
- •7.3 Мультитредовые процессоры с тредами, выявляемыми путем анализа потоков управления программы
- •7.3.1 Мультитредовая модель выполнения программы
- •7.3.2 Мультитредовые программы
- •7.3.3 Аппаратные средства мультитредовой архитектуры
- •7.3.4 Преимущества мультитредовой архитектуры
- •7.4 Мультитредовые процессоры с тредами, выявляемыми путем анализа потоков данных программы
- •7.5 Специфика мультитредовых моделей распараллеливания
- •Глава 8. Модуль обработки вещественных чисел
- •8.1 Представление чисел с плавающей запятой
- •8.2 Состав модуля fpu
- •Глава 9. Основы 64-разрядной архитектуры
- •9.1 Состав и назначение регистров микропроцессора ia-64
- •9.2 Особенности архитектуры epic
- •9.3 Архитектура x86-64
- •9.4 Структура одноядерного процессора
- •9.5 Многоядерные процессоры
- •9.6 Зачем нужны “лишние” разряды?
- •Глава 10. Современные 64-разрядные микропроцессоры корпораций Intel и amd
- •10.1 Архитектура Intel Core 2
- •10.1.1 Intel Wide Dynamic Execution
- •10.1.2 Intel Intelligent Power Capability
- •10.1.3 Intel Advanced Smart Cache
- •10.1.4 Intel Smart Memory Access
- •10.1.5 Intel Advanced Digital Media Boost
- •10.1.6 Логическая схема процессора
- •10.2 Архитектура Intel Core i7
- •10.2.1 Технология Hyper-Threading в архитектуре Nehalem
- •10.2.2 Иерархия кэш-памяти в архитектуре Nehalem
- •10.3 Хронология развития семейств микропроцессоров с архитектурой Nehalem
- •10.4 Архитектура amd Athlon 64
- •10.4.1 Ядро процессора
- •10.4.3 Контроллер памяти
- •10.4.4 Контроллер HyperTransport
- •10.5 Архитектура amd k10
- •10.4.1 Технология amd Memory Optimizer Technology
- •10.5.2 Ядро процессора
- •10.5.3 Предвыборка данных и инструкций
- •10.5.4 Выборка из кэша
- •10.5.5 Предсказание переходов и ветвлений
- •10.5.6 Процесс декодирования
- •10.5.7 Диспетчеризация и переупорядочение микроопераций
- •10.5.8 Выполнение микроопераций
- •10.5.9 Технологии энергосбережения
- •10.5.10 Шина HyperTransport 3.0
- •10.5.11 Семейство процессоров Barcelona
- •10.5.12 Семейство процессоров Phenom
- •Глава 11. Технологии, поддерживаемые современными микропроцессорами
- •11.1 Технологии тепловой защиты
- •11.1.1 Технология Thermal Monitor
- •11.1.2 Технология Thermal Monitor 2
- •11.1.3 Режим аварийного отключения
- •11.2 Технологии энергосбережения
- •11.2.1 Технология Enhanced Intel SpeedStep
- •11.2.2 Технология Cool'n'Quiet
- •11.3 Технология расширенной памяти
- •11.4 Технология антивирусной защиты
- •11.5 Технология виртуализации
- •11.6 Реализация технологий в современных микроархитектурах
- •11.6.2 Em64t – NetBurst
- •11.6.3 Intel Core
- •11.6.4 Intel Atom
- •11.6.5 Nehalem
- •11.6.6 Xeon
- •Глава 12. Графические микропроцессоры
- •12.1 Основные термины и определения
- •12.2 Технологии построения трёхмерного изображения
- •12.2.1 Технологии повышения реалистичности трехмерного изображения
- •12.3 Шейдерный процессор
- •12.4 Особенности современных графических процессоров
- •Глава 13. Однокристальные микроконтроллеры
- •13.1 Общая характеристика микроконтроллеров
- •13.2 Микроконтроллеры семейства avr
- •Почему именно avr?
- •13.3 Общие сведения об омк avr
- •13.4 Характеристики avr-микроконтроллеров
- •Глава 14. Технология производства микропроцессоров
- •14.1 Особенности производства процессоров
- •14.2 Новые технологические решения
- •14.3 Технология производства сверхбольших интегральных схем
- •I. Выращивание кристалла кремния
- •II. Создание проводящих областей
- •III. Тестирование
- •IV. Изготовление корпуса
- •V. Доставка
- •14.4 Перспективы производства сбис
- •Англо-русский словарь терминов и аббревиатур
- •Библиографический список
- •Интернет-ссылки
- •350072. Краснодар, ул. Московская, 2, кор. А.
12.4 Особенности современных графических процессоров
Несмотря на достаточно большое количество компаний, присутствующих на рынке видеокарт, их продукция различается совсем незначительно по своей производительности и функциональности. Это объясняется тем, что видеокарты построены на одних и тех же графических процессорах, которые выпускаются кампанией NVIDIA (процессоры GeForce и Quadro) и объединённой кампанией AMD/ATI (процессор Radeon).
Современные графические процессоры содержат до 1400 млн. транзисторов и работают на частотах свыше половины гигагерца. В их состав входят десятки текстурных модулей, сотни универсальных блоков (ALU), имеющих разрядность FP64. Современные GPU поддерживают на аппаратном уровне технологию высококачественной обработки HD-видео, что позволяет разгрузить центральный процессор при работе с дисками HD DVD/Blu-ray. Также они имеют программируемый модуль тесселяции. Тесселяция – способ динамического преобразования простых объектов в более сложные и обратно путём рекурсивного выполнения операций на сетке полигонов. Другими словами тесселяция – это способ изменения детализации объекта. По мере удаления объекта следует уменьшать количество полигонов, описывающих объект путём их укрупнения, так как на больших расстояниях мелкие детали не видны и для их прорисовки ресурсы GPU будут израсходованы впустую. По мере приближения объекта наоборот – надо увеличивать число полигонов, описывающих его, и уменьшения их размеров. В каком то смысле тесселяция напоминает MIP-уровни для текстур.
Вопросы для самопроверки
Какие основные характеристики графических процессоров?
Перечислите основные понятия, используемые при построении качественного трёхмерного изображения.
Что такое vertex?
Что такое текстурирование трёхмерных поверхностей?
Что такое рендеринг?
Какова роль Z-буфера?
Для чего применяется метод двойной буферизации?
Для чего применяется технология сглаживания?
Какова роль технологии MIP mapping?
Какие существуют типы фильтрации, поддерживаемые видеокартами?
Что такое шейдер?
Каковы функции шейдерного процессора?
Что такой тексель?
Что вычисляет геометрический шейдер?
Где располагается аппаратура современных графических процессоров в компьютерах с многоядерными процессорами?
Глава 13. Однокристальные микроконтроллеры
13.1 Общая характеристика микроконтроллеров
В настоящее время выпускается целый ряд однокристальных микроконтроллеров (ОМК). Их можно условно классифицировать:
по разрядности: на 4, 8, 16, 32-разрядные;
по типу архитектуры: на фон-неймановскую и гарвардскую архитектуры;
по назначению: на управляющие, сигнальные (в системах связи для реализации протоколов физического и канального уровня, осуществляют цифровую обработку сигналов (ЦОС) – фильтрацию, свёртку, корреляцию, автокорреляцию, быстрое преобразование Фурье БПФ), коммуникационные (в системах связи для реализации протоколов сетевого и транспортного уровня) и медийные (аппаратная реализация операций с новыми типами данных, характерными для видео и звуковой информации).
Росту популярности ОМК способствует постоянное расширение номенклатуры изделий, выпускаемых такими известными фирмами, как Intel (MCS), Atmel (AVR), Microchip (PIC), Motorola, Zilog и многими другими. Современные микроконтроллеры обладают, как правило, рядом отличительных признаков. Перечислим основные из них:
модульная организация, при которой на базе одного процессорного ядра (центрального процессора) проектируется ряд (линейка) ОМК, различающихся объемом и типом памяти программ, объемом памяти данных, набором периферийных модулей, частотой синхронизации;
использование закрытой архитектуры МК, которая характеризуется отсутствием магистралей адреса и данных на выводах корпуса ОМК. Таким образом, ОМК представляет собой законченную систему обработки данных, наращивание возможностей которой с использованием параллельных магистралей адреса и данных не предполагается;
использование типовых функциональных периферийных модулей (таймеры, процессоры событий, контроллеры последовательных интерфейсов, АЦП и др.), имеющих незначительные отличия в алгоритмах работы в ОМК различных производителей;
система команд ориентирована на выполнение задач управления и регулирования;
данные малой разрядности;
малая стоимость.
Микроконтроллеры являются ядром всех встраиваемых систем управления разнообразных устройств, приборов и механизмов. Самой главной особенностью ОМК с точки зрения конструктора-проектировщика является то, что с их помощью легче и зачастую гораздо дешевле реализовать различные схемы управления. На рис. 13.1 изображены периферийные устройства, подключаемые к модулям ОМК.
При модульном принципе построения все МК одного семейства содержат процессорное ядро, одинаковое для всех МК данного семейства, и изменяемый функциональный блок, который отличает МК разных моделей. Структура модульного МК приведена на рис.13.2. Процессорное ядро включает в себя:
центральный процессор;
внутреннюю контроллерную магистраль (ВКМ) в составе шин адреса, данных и управления;
схему синхронизации МК;
схему управления режимами работы МК, включая поддержку режимов пониженного энергопотребления, начального запуска (сброса) и т.д.
Однокристальный микроконтроллер (ОМК) представляет собой устройство, выполненное конструктивно в одном корпусе БИС, содержащем все компоненты микропроцессорной системы: процессор, память данных, память программ, программируемые интерфейсы. Однокристальным микроконтроллерам присущи следующие особенности:
система команд ориентирована на выполнение задач управления и регулирования;
алгоритмы, которые реализуются на ОМК, могут иметь много разветвлений в зависимости от внешних сигналов;
данные, с которыми оперируют ОМК, не должны иметь большую разрядность;
схемная реализация систем управления на базе ОМК является несложной и имеет невысокую стоимость;
универсальность и возможность расширения функций управления значительно ниже, чем в системах с однокристальными микропроцессорами (МП).
Однокристальные микроконтроллеры представляют собой удобный инструмент для создания современных встроенных устройств управления разнообразным оборудованием, автомобильной электроникой, бытовой техникой, мобильными телефонами и т.п.
CISC-контроллеры характеризуются довольно развитой системой команд, например, микроконтроллеры серии intel 80x51 имеют 111 команд. Анализ программ показал, что всего лишь 20% команд используются в 80% случаев. Выполненный на кристалле дешифратор команд, таким образом, используется не в полной мере, а занимает более 70% площади кристалла. Поэтому разработчики ОМК сократили количество команд, придали им единый формат и уменьшили площадь кристалла, т. е. реализовали RISC архитектуру.
Особенностью контроллеров, выполненных по RISC-архитектуре, является то, что все команды выполняются за один-три такта, тогда как в CISC-контроллерах – за один-три машинных цикла, каждый из которых состоит из нескольких тактов (например, для i 80x51 из 12 тактов). Поэтому RISC-контроллеры имеют значительно большее быстродействие. Но более полная система команд CISC-контроллеров в некоторых случаях приводит к экономии времени выполнения отдельных фрагментов программы и к экономии памяти программ.