русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Функции процессора


Дата добавления: 2013-12-23; просмотров: 8691; Нарушение авторских прав


Процессор (рис. 2.16) обычно представляет собой отдельную микросхе­му или же часть микросхемы (в случае микроконтроллера). В прежние годы процессор иногда выполнялся на комплектах из нескольких микросхем, но сейчас от такого подхода уже практически отказались.

Микросхема про­цессора обязательно имеет выводы трех шин: шины адреса, шины данных и шины управления. Иногда некоторые сигналы и шины мультиплексиру­ются, чтобы уменьшить количество выводов микросхемы процессора.

Важнейшие характеристики процессораэто количество разрядов его шины данных, количество разрядов его шины адреса и количество управляющих сигналов в шине управления. Разрядность шины данных опреде­ляет скорость работы системы. Разрядность шины адреса определяет до­пустимую сложность системы. Количество линий управления определяет |разнообразие режимов обмена и эффективность обмена процессора с другими устройствами системы.

Кроме выводов для сигналов трех основных шин процессор всегда имеет вывод (или два вывода) для подключения внешнего тактового сигнала или кварцевого резонатора (СLК), так как процессор всегда представляет собой тактируемое устройство. Чем больше тактовая частота процессора, тем он быстрее работает, то есть тем быстрее выполняет команды. Впрочем, пик быстродействие процессора определяется не только тактовой частотой, но и особенностями его структуры. Современные процессоры выполняют большинство команд за один такт и имеют средства для параллельного выполнения нескольких команд. Тактовая частота процессора не связана прямо и жестко со скоростью обмена по магистрали, так как скорость об­мена по магистрали ограничена задержками распространения сигналов и искажениями сигналов на магистрали. То есть тактовая частота процессо­ра определяет только его внутреннее быстродействие, а не внешнее. Иног­да тактовая частота процессора имеет нижний и верхний пределы. При пре­вышении верхнего предела частоты возможно перегревание процессора, а также сбои, причем, что самое неприятное, возникающие не всегда и нере­гулярно. Так что с изменением этой частоты надо быть очень осторожным.



Еще один важный сигнал, который имеется в каждом процессоре, — это сигнал начального сброса RЕSЕТ. При включении питания, при аварийной ситуации или зависании процессора подача этого сигнала приводит к ини­циализации процессора, заставляет его приступить к выполнению програм­мы начального запуска. Аварийная ситуация может быть вызвана помехами по цепям питания и «земли», сбоями в работе памяти, внешними ионизи­рующими излучениями и еще множеством причин. В результате процессор может потерять контроль над выполняемой программой и остановиться в каком-то адресе. Для выхода из этого состояния как раз и используется сигнал начального сброса. Этот же вход начального сброса может исполь­зоваться для оповещения процессора о том, что напряжение питания стало ниже установленного предела. В таком случае процессор переходит к вы­полнению программы сохранения важных данных. По сути, этот вход пред­ставляет собой особую разновидность радиального прерывания.

Иногда у микросхемы процессора имеется еще один-два входа ради­альных прерываний для обработки особых ситуаций (например, для пре­рывания от внешнего таймера).

Шина питания современного процессора обычно имеет одно напря­жение питания (+5В или +3,ЗВ) и общий провод («землю»). Первые про­цессоры нередко требовали нескольких напряжений питания. В некото­рых процессорах предусмотрен режим пониженного энергопотребления. Вообще, современные микросхемы процессоров, особенно с высокими тактовыми частотами, потребляют довольно большую мощность. В резуль­тате для поддержания нормальной рабочей температуры корпуса на них нередко приходится устанавливать радиаторы, вентиляторы или даже спе­циальные микрохолодильники.

Для подключения процессора к магистрали используются буферные микросхемы, обеспечивающие, если необходимо, демультиплексирова­ние сигналов и электрическое буферирование сигналов магистрали. Иногда протоколы обмена по системной магистрали и по шинам процессора не совпадают между собой, тогда буферные микросхемы еще и согласуют эти протоколы друг с другом. Иногда в микропроцессорной системе используется несколько магистралей (системных и локальных), тогда для каждой из магистралей применяется свой буферный узел. Такая структура характерна, например, для персональных компьютеров.

После включения питания процессор переходит в первый адрес про­граммы начального пуска и выполняет эту программу. Данная програм­ма предварительно записана в постоянную (энергонезависимую) память. После завершения программы начального пуска процессор начинает вы­полнять основную программу, находящуюся в постоянной или оперативной памяти, для чего выбирает по очереди все команды. От этой программы процессор могут отвлекать внешние прерывания или запросы на ПДП. Команды из памяти процессор выбирает с помощью циклов чтения по магистрали. При необходимости процессор записывает данные в память или в устройства ввода/вывода с помощью циклов записи или же читает данные из памяти или из устройств ввода/вывода с помощью циклов чтения.

Таким образом, основные функции любого процессора следующие:

• выборка (чтение) выполняемых команд;

• ввод (чтение) данных из памяти или устройства ввода/вывода;

• вывод (запись) данных в память или в устройства ввода/вывода;

• обработка данных (операндов), в том числе арифметические операции над ними;

• адресация памяти, то есть задание адреса памяти, с которым будет
производиться обмен;

• обработка прерываний и режима прямого доступа.

Упрощённо структуру микропроцессора можно представить в следующем виде (рис. 2.17).

Рис.2.17. Внутренняя структура микропроцессора.

Основные функции показанных узлов следующие.

Схема управления выборкой командвыполняет чтение команд из памяти и их дешифрацию. В первых микропроцессорах было невозможно одно­временное выполнение предыдущей команды и выборка следующей коман­ды, так как процессор не мог совмещать эти операции. Но уже в 16-разрядных процессорах появляется так называемый конвейер (очередь) команд, позволяющий выбирать несколько следующих команд, пока вы­полняется предыдущая. Два процесса идут параллельно, что ускоряет рабо­ту процессора. Конвейер представляет собой небольшую внутреннюю па­мять процессора, в которую при малейшей возможности (при освобождении внешней шины) записывается несколько команд, следующих за исполняе­мой. Читаются эти команды процессором в том же порядке, что и записы­ваются в конвейер (это память типа F1FО, First In - First Out, первый вошел — первый вышел). Правда, если выполняемая команда предполагает переход не на следующую ячейку памяти, а на удаленную (с меньшим или большим адресом), конвейер не помогает, и его приходится сбрасывать. Но такие команды встречаются в программах сравнительно редко.

Развитием идеи конвейера стало использование внутренней кэш-па­мяти процессора, которая заполняется командами, пока процессор занят выполнением предыдущих команд. Чем больше объем кэш-памяти, тем меньше вероятность того, что ее содержимое придется сбросить при команде перехода. Понятно, что обрабатывать команды, находящиеся во внутренней памяти, процессор может гораздо быстрее, чем те, которые расположены во внешней памяти. В кэш-памяти могут храниться и дан­ные, которые обрабатываются в данный момент, это также ускоряет ра­боту. Для большего ускорения выборки команд в современных процессорах применяют совмещение выборки и дешифрации, одновременную дешифрацию нескольких команд, несколько параллельных конвейеров команд, предсказание команд переходов и некоторые другие методы.

 

 

Арифметико-логическое устройство (или АЛУ, АLU)предназначено для обработки информации в соответствии с полученной процессором коман­дой. Примерами обработки могут служить логические операции (типа ло­гического «И», «ИЛИ», «Исключающего ИЛИ» и т.д.) то есть побитные операции над операндами, а также арифметические операции (типа сло­жения, вычитания, умножения, деления и т.д.). Над какими кодами про­изводится операция, куда помещается ее результат — определяется вы­полняемой командой. Если команда сводится всего лишь к пересылке данных без их обработки, то АЛУ не участвует в ее выполнении.

Быстродействие АЛУ во многом определяет производительность процес­сора. Причем важна не только частота тактового сигнала, которым тактиру­ется АЛУ, но и количество тактов, необходимое для выполнения той или иной команды. Для повышения производительности разработчики стремят­ся довести время выполнения команды до одного такта, а также обеспечить работу АЛУ на возможно более высокой частоте. Один из путей решения этой задачи состоит в уменьшении количества выполняемых АЛУ команд, создание процессоров с уменьшенным набором команд (так называемые R1SС-процессоры). Другой путь повышения производительности процессора — использование нескольких параллельно работающих АЛУ.

Что касается операций над числами с плавающей точкой и других спе­циальных сложных операций, то в системах на базе первых процессоров их реализовывали последовательностью более простых команд, специальными подпрограммами, однако затем были разработаны специальные вычислители-математические сопроцессоры, которые заменяли основной процессор на время выполнения таких команд. В современных микропроцессорах математические сопроцессоры входят в структуру как составная часть.

Регистры процессорапредставляют собой по сути ячейки очень быстрой памяти и служат для временного хранения различных кодов: данных, адресов, служебных кодов. Операции с этими кодами выполняются предельно быстро, поэтому, в общем случае, чем больше внутренних регистров,
тем лучше. Кроме того, на быстродействие процессора сильно влияет разрядность регистров. Именно разрядность регистров и АЛУ называется внутренней разрядностью процессора, которая может не совпадать с внеш­ней разрядностью.



<== предыдущая лекция | следующая лекция ==>
Функции устройств магистрали. | По отношению к назначению внутренних регистров существует два основных подхода.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.