Отличительная черта аналоговых микропроцессоров
способность к переработке большого
объема числовых данных, то есть к выполнению
операций сложения и умножения с
большой скоростью при необходимости
даже за счет отказа от операций прерываний
и переходов. Аналоговый сигнал, преобразованный
в цифровую форму, обрабатывается в реальном
масштабе времени и передается на выход
обычно в аналоговой форме через цифро-аналоговый
преобразователь. При этом согласно теореме
Котельникова частота квантования аналогового
сигнала должна вдвое превышать верхнюю
частоту сигнала.
Сравнение цифровых микропроцессоров
производится сопоставлением времени
выполнения ими списков операций.
Сравнение же аналоговых микропроцессоров
производится по количеству эквивалентных
звеньев аналого-цифровых фильтров рекурсивных
фильтров второго порядка. Производительность
аналогового микропроцессора определяется
его способностью быстро выполнять операции
умножения: чем быстрее осуществляется
умножение, тем больше эквивалентное количество
звеньев фильтра в аналоговом преобразователе
и тем более сложный алгоритм преобразования
цифровых сигналов можно задавать в микропроцессоре.
Одним из направлений дальнейшего
совершенствования аналоговых микропроцессоров
является повышение их универсальности
и гибкости. Поэтому вместе с повышением
скорости обработки большого объема цифровых
данных будут развиваться средства обеспечения
развитых вычислительных процессов обработки
цифровой информации за счет реализации
аппаратных блоков прерывания программ
и программных переходов.
4. По характеру временной организации
работы микропроцессоры делят
на синхронные и асинхронные.
Синхронные микропроцессоры - микропроцессоры,
в которых начало и конец выполнения
операций задаются устройством управления
(время выполнения операций в этом
случае не зависит от вида выполняемых
команд и величин операндов).
Асинхронные микропроцессоры позволяют
начало выполнения каждой следующей
операции определить по сигналу фактического
окончания выполнения предыдущей операции.
Для более эффективного использования
каждого устройства микропроцессорной
системы в состав асинхронно работающих
устройств вводят электронные цепи, обеспечивающие
автономное функционирование устройств.
Закончив работу над какой-либо операцией,
устройство вырабатывает сигнал запроса,
означающий его готовность к выполнению
следующей операции. При этом роль естественного
распределителя работ принимает на себя
память, которая в соответствии с заранее
установленным приоритетом выполняет
запросы остальных устройств по обеспечению
их командной информацией и данными.
5. По организации структуры микропроцессорных
систем различают микроЭВМ одно-
и многомагистральные.
В одномагистральных микроЭВМ все
устройства имеют одинаковый интерфейс
и подключены к единой информационной
магистрали, по которой передаются коды
данных, адресов и управляющих сигналов.
В многомагистральных микроЭВМ устройства
группами подключаются к своей информационной
магистрали. Это позволяет осуществить
одновременную передачу информационных
сигналов по нескольким (или всем)
магистралям. Такая организация систем
усложняет их конструкцию, однако увеличивает
производительность.
6. По количеству выполняемых
программ различают одно- и многопрограммные
микропроцессоры.
В однопрограммных микропроцессорах
выполняется только одна программа. Переход
к выполнению другой программы происходит
после завершения текущей программы.
В много- или мультипрограммных
микропроцессорах одновременно выполняется
несколько (обычно несколько десятков)
программ. Организация мультипрограммной
работы микропроцессорных управляющих
систем позволяет осуществить контроль
за состоянием и управлением большим числом
источников или приемников информации.
[ 2 ]
В данной главе была рассмотрена
классификация микропроцессоров.
Таким образом все микропроцессоры
можно классифицировать по следующим
признакам:
- по количество БИС;
- по виду обрабатываемых сигналов;
- по назначению;
- по характеру временной организации;
- по организации структуры;
- по количеству выполняемых программ.
4 Структура микропроцессора
4.1 Физическая структура микропроцессора
Структура микропроцессора состоит
из следующих компонентов:
- Устройство управления (УУ). Осуществляет координацию работы всех остальных устройств, выполняет функции управления устройствами, управляет вычислениями в компьютере.
- Арифметико-логическое устройство (АЛУ). Так называется устройство для целочисленных операций. Арифметические операции, такие как сложение, умножение и деление, а также логические операции (OR, AND, ASL, ROL и др.) обрабатываются при помощи АЛУ. Эти
операции составляют подавляющее большинство
программного кода в большинстве программ.
Все операции в АЛУ производятся в регистрах
- специально отведенных ячейках АЛУ.
В процессоре может быть несколько АЛУ.
Каждое способно исполнять арифметические
или логические операции независимо от
других, что позволяет выполнять несколько
операций одновременно. Арифметико-логическое
устройство выполняет арифметические и логические
действия. Логические операции делятся
на две простые операции: "Да" и "Нет"
("1" и "0").
- Устройство генерации адресов (AGU - Address Generation Unit). Оно отвечает за
корректную адресацию при загрузке или
сохранении данных. Абсолютная адресация
в программах используется только в редких
исключениях. Как только берутся массивы
данных, в программном коде используется
косвенная адресация, заставляющая работать
AGU.
- Математический сопроцессор (FPU). Процессор может содержать несколько
математических сопроцессоров. Каждый
из них способен выполнять, по меньшей
мере, одну операцию с плавающей точкой
независимо от того, что делают другие
АЛУ. Метод конвейерной обработки данных
позволяет одному математическому сопроцессору
выполнять несколько операций одновременно.
Сопроцессор поддерживает высокоточные
вычисления как целочисленные, так и с
плавающей точкой и, кроме того, содержит
набор полезных констант, ускоряющих вычисления.
Сопроцессор работает параллельно с центральным
процессором, обеспечивая, таким образом,
высокую производительность. Система
выполняет команды сопроцессора в том
порядке, в котором они появляются в потоке.
Математический сопроцессор персонального
компьютера IBM PC позволяет ему выполнять
скоростные арифметические и логарифмические
операции, а также тригонометрические
функции с высокой точностью.
- Дешифратор инструкций (команд). Анализирует инструкции в целях
выделения операндов и адресов, по которым
размещаются результаты. Затем следует
сообщение другому независимому устройству
о том, что необходимо сделать для выполнения
инструкции. Дешифратор допускает выполнение
нескольких инструкций одновременно для
загрузки всех исполняющих устройств.
- Кэш-память. Особая высокоскоростная память процессора. Кэш используется в качестве буфера для ускорения обмена данными между процессором и оперативной памятью, а также для хранения копий инструкций
и данных, которые недавно использовались
процессором. Значения из кэш-памяти извлекаются
напрямую, без обращения к основной памяти.
При изучении особенностей работы программ
было обнаружено, что они обращаются к
тем или иным областям памяти с различной
частотой, а именно: ячейки памяти, к которым
программа обращалась недавно, скорее
всего, будут использованы вновь. Предположим,
что микропроцессор способен хранить
копии этих инструкций в своей локальной
памяти. В этом случае процессор сможет
каждый раз использовать копию этих инструкций
на протяжении всего цикла. Доступ к памяти
понадобиться в самом начале. Для хранения
этих инструкций необходим совсем небольшой
объём памяти. Если инструкции в процессор
поступают достаточно быстро, то микропроцессор
не будет тратить время на ожидание. Таким
образом экономиться время на выполнение
инструкций. Но для самых быстродействующих
микропроцессоров этого недостаточно.
Решение данной проблемы заключается
в улучшении организации памяти. Память
внутри микропроцессора может работать
со скоростью самого процессора
- Кэш первого уровня (L1 cache). Кэш-память, находящаяся внутри процессора. Она быстрее всех остальных типов памяти, но меньше по объёму. Хранит совсем недавно использованную информацию, которая может быть использована
при выполнении коротких программных
циклов.
- Кэш второго уровня (L2 cache). Также находится внутри процессора.
Информация, хранящаяся в ней, используется
реже, чем информация, хранящаяся в кэш-памяти
первого уровня, но зато по объёму памяти
он больше. Также в настоящее время в процессорах
используется кэш третьего уровня.
Многоуровневая кэш-память позволяет
снизить требования наиболее производительных
микропроцессоров к быстродействию
основной динамической памяти. Так, если
сократить время доступа к основной памяти
на 30%, то производительность хорошо сконструированной
кэш-памяти повыситься только на 10-15%. Кэш-память,
как известно, может достаточно сильно
влиять на производительность процессора
в зависимости от типа исполняемых операций,
однако ее увеличение вовсе не обязательно
принесет увеличение общей производительности
работы процессора. Все зависит от того,
насколько приложение оптимизировано
под данную структуру и использует кэш,
а также от того, помещаются ли различные
сегменты программы в кэш целиком или
кусками.
Кэш-память не только повышает быстродействие
микропроцессора при операции чтения
из памяти, но в ней также могут
храниться значения, записываемые процессором
в основную память; записать эти
значения можно будет позже, когда
основная память будет не занята. Такая
кэш-память называется кэшем с обратной
записью (write back cache). Её возможности и принципы
работы заметно отличаются от характеристик
кэша со сквозной записью (write through cache),
который участвует только в операции чтения
из памяти.
- Основная память. Намного больше по объёму, чем кэш-память, и значительно менее быстродействующая.
- Шина - это канал пересылки данных, используемый совместно различными блоками системы. Шина может представлять собой набор проводящих линий в печатной
плате, провода, припаянные к выводам разъемов,
в которые вставляются печатные платы,
либо плоский кабель. Информация передается
по шине в виде групп битов. В состав шины
для каждого бита слова может быть предусмотрена
отдельная линия (параллельная шина), или
все биты слова могут последовательно
во времени использовать одну линию (последовательная
шина). К шине может быть подключено
много приемных устройств - получателей.
Обычно данные на шине предназначаются
только для одного из них. Сочетание управляющих
и адресных сигналов, определяет для кого
именно. Управляющая логика возбуждает
специальные стробирующие сигналы,
чтобы указать получателю, когда ему следует
принимать данные. Получатели и отправители
могут быть однонаправленными (то есть
осуществлять только либо передачу, либо
прием) и двунаправленными (осуществлять
и то и другое). Однако самая быстрая
процессорная шина не сильно поможет,
если память не сможет доставлять данные
с соответствующей скоростью.
Типы шин:
- Шина данных (ШД). Служит для пересылки данных между процессором и памятью или процессором и устройствами ввода-вывода. Эти данные могут представлять собой как команды микропроцессора, так и информацию, которую он посылает в порты ввода-вывода или принимает оттуда.
- Шина адресов (ША). Используется ЦП для выбора требуемой ячейки памяти или устройства ввода-вывода путем установки на шине конкретного адреса, соответствующего одной из ячеек памяти или одного из элементов ввода-вывода, входящих в систему.
- Шина управления (ШУ). По ней передаются
управляющие сигналы, предназначенные
памяти и устройствам ввода-вывода. Эти
сигналы указывают направление передачи
данных (в процессор или из него).
- Буфер целей ветвления (BTB - Branch Target Buffer).
В этой таблице находятся все адреса, куда
будет или может быть сделан переход.
- Регистры - это внутренняя память процессора. Представляют собой ряд специализированных дополнительных ячеек памяти, а также внутренние носители информации микропроцессора. Регистр является устройством временного хранения данных,
числа или команды и используется с целью
облегчения арифметических, логических
и пересылочных операций. Над содержимым
некоторых регистров специальные электронные
схемы могут выполнять некоторые манипуляции.
Например, вырезать отдельные части команды
для последующего их использования или
выполнять определенные арифметические
операции над числами. Основным элементом
регистра является электронная схема,
называемая триггером, которая способна хранить одну двоичную
цифру (разряд). Регистр представляет
собой совокупность триггеров, связанных
друг с другом определённым образом общей
системой управления. Существует несколько
типов регистров, отличающихся видом выполняемых
операций.
Некоторые важные регистры имеют свои
названия, например:
- сумматор - регистр АЛУ, участвующий в выполнении каждой операции.
- счетчик команд - регистр УУ, содержимое которого соответствует адресу очередной выполняемой команды; служит для автоматической выборки программы из последовательных ячеек памяти.
- регистр команд - регистр УУ для хранения кода команды на период времени, необходимый для ее выполнения. Часть его разрядов используется для хранения кода операции, остальные - для хранения кодов адресов операндов.[
5 ]
4.2 Логическая структура микропроцессора
Логическая структура микропроцессора,
то есть конфигурация составляющих микропроцессора
логических схем и связей между ними,
определяется функциональным назначением.
Именно структура задает состав логических
блоков микропроцессора и то, как
эти блоки должны быть связаны между
собой, чтобы полностью отвечать архитектурным
требованиям. Срабатывание электронных
блоков микропроцессора в определенной
последовательности приводит к выполнению
заданных архитектурой микропроцессора
функций, то есть к реализации вычислительных
алгоритмов. Одни и те же функции можно
выполнить в микропроцессорах со структурой,
отличающейся набором, количеством и порядком
срабатывания логических блоков. Различные
структуры микропроцессоров, как правило,
обеспечивают их различные возможности,
в том числе и различную скорость обработки
данных. Логические блоки микропроцессора
с развитой архитектурой показаны на Рисунке
2.
Рисунок 2
I - управляющая часть, II - операционная
часть;
БУПК - блок управления последовательностью
команд;
БУВОп - блок управления выполнением
операций;
БУФКА - блок управления формированием
кодов адресов;
БУВП - блок управления виртуальной
памятью;
БЗП - блок защиты памяти;
БУПРПр - блок управления прерыванием
работы процессора;
БУВВ - блок управления вводом/выводом;
РгСОЗУ - регистровое сверхоперативное
запоминающее устройство;
АЛБ - арифметико-логический блок;
БДА - блок дополнительной арифметики;
БС - блок синхронизации.
При проектировании логической структуры
микропроцессоров необходимо рассмотреть:
- номенклатуру электронных блоков, необходимую и достаточную для реализации архитектурных требований;
- способы и средства реализации связей между электронными блоками;
- методы отбора если не оптимальных, то наиболее рациональных вариантов логических структур из возможного числа структур
с отличающимся составом блоков и конфигурацией
связей между ними.
При проектировании микропроцессора
приводятся в соответствие внутренняя
сложность кристалла и количество
выводов корпуса. Относительный
рост числа элементов по мере развития
микроэлектронной технологии во много
раз превышает относительное увеличение
числа выводов корпуса, поэтому проектирование
БИС в виде конечного автомата, а не в виде
набора схем, реализующих некоторый набор
логических переключательных функций
и схем памяти, дает возможность получить
функционально законченные блоки и устройства
ЭВМ.
Использование микропроцессорных
комплектов БИС позволяет создать
микроЭВМ для широких областей применения
вследствие программной адаптации
микропроцессора к конкретной
области применения: изменяя программу
работы микропроцессора, изменяют функции
информационно-управляющей системы. Поэтому
за счет составления программы работы
микропроцессоров в конкретных условиях
работы определенной системы можно получить
оптимальные характеристики последней.
Если уровень только программной
«настройки» микропроцессоров не позволит
получить эффективную систему, доступен
следующий уровень проектирования
- микропрограммный. За счет изменения
содержимого ПЗУ или программируемой
логической матрицы (ПЛМ) можно "настроиться"
на более специфичные черты системы обработки
информации. В этом случае частично за
счет изменения микропрограмм затрагивается
аппаратный уровень системы. Технико-экономические
последствия здесь связаны лишь с ограниченным
вмешательством в технологию изготовления
управляющих блоков микроЭВМ.