Популярные услуги

Все письменные КМ под ключ за 3 суток! (КМ-6 + КМ-7 + КМ-8 + КМ-9 + КМ-10)
КМ-6. Динамические массивы. Семинар - выполню любой вариант!
КМ-2. Разработка простейших консольных программ с использованием ООП + КМ-4. Более сложные элементы ООП - под ключ!
Любая задача на C/C++
Одно любое задание в mYsql
Сделаю ваше задание: Лабораторная работа на Pascal / Lazarus
Любой тест по базам данных максимально быстро на хорошую оценку - или верну деньги!
Любой реферат по объектно-ориентированному программированию (ООП)
Оба семинара по программированию под ключ! КМ-2. Разработка циклических алгоритмов + КМ-3. Функции и многофайловые программы в Си
Повышение уникальности твоей работе

Основные компоненты микропроцессора 3

2021-03-09СтудИзба

Лекция 8. Основные компоненты микропроцессора

1. Принципы построения схемного и микропрограммного устройств управления.

2. Особенности реализации арифметико-логического устройства компьютера.

3. Микропроцессорная память.

Принципы построения схемного и микропрограммного устройств управления

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

В общем случае устройство управления формирует управляющие сигналы для выполнения следующих основных процедур:

- выборки из регистра-счетчика микропроцессорной памяти адреса ячейки ОЗУ, где хранится очередная команда программы;

- выборки из ячеек ОЗУ кода очередной команды и приема считанной команды в регистр команд;

Рекомендуемые материалы

- расшифровки кода операции и признаков выбранной команды;

- считывания из соответствующих расшифрованному коду операции ячеек ПЗУ микропрограмм управляющих сигналов (импульсов), определяющих во всех блоках машины процедуры выполнения заданной операции, и пересылки управляющих сигналов в эти блоки;

- считывания из регистра команд и регистров микропроцессорной памяти отдельных составляющих адресов операндов (чисел), участвующих в вычислениях, и формирование полных адресов операндов;

- выборки операндов (по сформированным адресам) и выполнения заданной операции обработки этих операндов;

- записи результатов операции в память;

- формирования адреса следующей команды программы.

Устройства управления делятся на:

- УУ с жесткой или схемной логикой;

- УУ с программируемой логикой (микропрограммные УУ).

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

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

Схемное устройство управления

Устройство управления схемного типа (см. рисунок) состоит из:

- датчика сигналов, вырабатывающего последовательность импульсов, равномерно распределенную во времени по своим шинам (n – общее количество управляющих сигналов, необходимых для выполнения любой операции; m – количество тактов, за которое выполняется самая длинная операция);

- блока управления операциями, осуществляющего выработку управляющих сигналов, то есть коммутацию сигналов, поступивших с датчика сигналов, в соответствующем такте на нужную управляющую шину;

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

Датчик сигналов обычно реализуется на основе счетчика с дешифратором или на сдвиговом регистре.

Рисунок Функциональная схема схемного устройства управления

Микропрограммное устройство управления

Микропрограммное устройство управления представлено на рисунке.

Рисунок Функциональная схема микропрограммного устройства управления

На рисунке представлены:

- регистр команд – запоминающий регистр, в котором хранится код команды: код выполняемой операции и адреса операндов, участвующих в операции; регистр команд расположен в интерфейсной части микропроцессора, в блоке регистров команд;

- дешифратор операций – логический блок, выбирающий в соответствии с поступающим из регистра команд кодом операции один из множества имеющихся у него выходов;

- постоянное запоминающее устройство микропрограмм хранит в своих ячейках управляющие сигналы (импульсы), необходимые для выполнения в блоках ПК процедур операций обработки информации; импульс по выбранному дешифратором операций в соответствии с кодом операции проводу считывает из ПЗУ микропрограмм необходимую последовательность управляющих сигналов;

- узел формирования адреса (находится в интерфейсной части МП) – устройство, вычисляющее полный адрес ячейки памяти (регистра) по реквизитам, поступающим из регистра команд и регистров МПП;

- шины данных, адреса и управления – часть внутренней интерфейсной шины микропроцессора.

Особенности реализации арифметико-логического устройства компьютера

Арифметико-логическое устройство предназначено для выполнения арифметических и логических операций преобразования информации. Функционально АЛУ (см. рисунок) обычно состоит из двух регистров, сумматора и схем управления (местного устройства управления).

Рисунок Функциональная схема АЛУ

Сумматор – вычислительная схема, выполняющая процедуру сложения поступающих на ее вход двоичных кодов; имеет разрядность двойного машинного слова.

Регистры – быстродействующие ячейки памяти различной длины: регистр 1 имеет разрядность двойного слова, а регистр 2 – разрядность одного слова; при выполнении операций в регистр 1 помещается первое число, участвующее в операции, а по завершении операции – результат; в регистр 2 – второе число, участвующее в операции (по завершении операции информация в нем не изменяется); регистр 1 может и принимать информацию с кодовых шин данных, и выдавать информацию на них; регистр 2 только получает информацию с этих шин.

Схемы управления принимают по кодовым шинам управления управляющие сигналы от устройства управления и преобразуют их в сигналы для управления работой регистров и сумматора АЛУ.

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

Рассмотрим в качестве примера выполнение команды умножения. Пусть перемножаются числа 1101 и 1011. Множимое находится в регистре 1, имеющем удвоенную по отношению к регистру 2 разрядность; множитель находится в регистре 2. операция умножения требует для своего выполнения нескольких тактов. В каждом такте число из регистра 1 проходит в сумматор (имеющий также удвоенную разрядность) только в том случае, если в младшем разряде регистра 2 находится 1. В данном примере в первом такте число 1101 пройдет в сумматор, и в этом же первом такте число в регистре 1 сдвигается на один разряд влево, а число в регистре 2 на один разряд вправо. В конце татка после сдвигов в регистре 1 будет находиться число 11010, а в регистре 2 – число 101. Во втором такте число из регистра 1 пройдет в сумматор, так как младший разряд в регистре 2 равен 1; в конце такта числа в регистрах опять будут сдвинуты влево и вправо, так что в регистре 1 окажется число 110100, а в регистре 2 – число 10. В третьем такте число из регистра 1 не пройдет в сумматор, так как младший разряд в регистре 2 равен 0; в конце такта числа в регистрах будут сдвинуты влево и вправо, так что в регистре 1 окажется число 1101000, а в регистре 2 – число 1. В четвертом такте число из регистра 1 пройдет в сумматор, так как младший разряд в регистре 2 равен 1; в конце такта числа в регистрах будут сдвинуты влево и вправо, так что в регистре 1 окажется число 11010000, а в регистре 2 – число 0. Так как множитель в регистре 2 стал равным нулю, операция умножения заканчивается. В результате в сумматор последовательно поступят и будут сложены числа: 1101, 11010, 1101000; их сумма 10001111 и будет равна произведению чисел 1101´1011.

Микропроцессорная память

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

- универсальные регистры: AX, BX, CX, DX;

- сегментные регистры: CS, DS, SS, ES;

- регистры смещения: IP, SP, BP, SI, DI;

- регистр флагов FL.

Каждый из универсальных регистров (или регистров общего назначения) может использоваться для временного хранения любых данных, при этом можно работать с каждым регистром целиком, а можно отдельно с каждой его половиной (регистры AH, BH, CH, DH – старшие байты, а регистры AL, BL, CL, DL – младшие байты соответствующих 2-байтовых регистров). Но каждый из универсальных регистров может использоваться и как специальный при выполнении некоторых конкретных команд программы. В частности:

- регистр AX – регистр-аккумулятор, через его порты осуществляется ввод-вывод данных в микропроцессор, а при выполнении операций умножения и деления AX используется для хранения первого числа, участвующего в операции (произведения, частного) после ее завершения;

- регистр BX часто используется для хранения адреса базы в сегменте данных и начального адреса поля памяти при работе с массивами;

- регистр CX – регистр-счетчик, используется как счетчик числа повторений при циклических операциях;

- регистр DX используется как расширение регистра-аккумулятора при работе с 32-разрядными числами и при выполнении операций умножения и деления, используется для хранения номера порта при операциях ввода-вывода и т.д.

Сегментные регистры используются для хранения начальных адресов полей памяти (сегментов), отведенных в программах для хранения:

- команд программы (сегмент кода – CS);

- данных (сегмент данных – DS);

- стековой области памяти (сегмент стека – SS);

- дополнительной области памяти данных при межсегментных пересылках (расширенный сегмент – ES), поскольку размер сегмента в реальном режиме работы микропроцессора ограничен величиной 64 Кбайт.

Регистры смещений используются для хранения относительных адресов ячеек памяти внутри сегментов (смещений относительно начала сегментов):

- регистр IP (Instruction Pointer) хранит смещение адреса текущей команды программы;

- регистр SP (Stack Pointer) – смещение вершины стека (текущего адреса стека);

- регистр BP (Base Pointer) – смещение начального адреса поля памяти, непосредственно отведенного под стек;

- регистры SI, DI (Source Index и Destination Index соответственно) предназначены для хранения адресов индекса источника и приемника данных при операциях над строками и им подобных.

Регистр флагов FL содержит условные одноразрядные признаки-маски или флаги, управляющие прохождением программы в ПК. Флаги работают независимо друг от друга и лишь для удобства они помещены в единый регистр. Всего в регистре содержится 9 флагов: 6 их них статусные, отражают результаты операций, выполненных в компьютере (их значения используются, например, при выполнении условной передачи управления – команд ветвления программы), а три других – управляющие, непосредственно определяют режим исполнения программы.

Статусные флаги:

- CF (Carry Flag) – флаг переноса; содержит значение «переносов» (0 или 1) из старшего разряда при арифметических операциях и некоторых операциях сдвига и циклического сдвига;

- PF (Parity Flag) – флаг четности; проверяет младшие 8 битов результатов операций над данными; нечетное число единичных битов приводит к установке этого флага в 0, а четное – в 1;

- AF (Auxiliary Carry Flag) – флаг логического переноса при двоично-десятичной арифметике; вспомогательный флаг переноса устанавливается в 1, если арифметическая операция приводит к переносу или заему четвертого справа бита однобайтового операнда; этот флаг используется при арифметических операциях над двоично-десятичными кодами и кодами ASCII;

- ZF (Zero Flag) – флаг нуля; устанавливается в 1, если результат операции равен нулю; если результат не равен нулю, то флаг обнуляется;

- SF (Sign Flag) – флаг знака; устанавливается в соответствии со знаком результата после арифметических операций: положительный результат устанавливает флаг в 0, отрицательный – в 1;

- OF (Overflow Flag) – флаг переполнения; устанавливается в 1 при арифметическом переполнении: если возник перенос в знаковый разряд при выполнении знаковых арифметических операций, если частное от деления слишком велико и переполняет регистр результата и т.д.

Управляющие флаги:

- TF (Trap Flag) – флаг системного прерывания (трассировки); единичное состояние этого флага переводит процессор в режим пошагового выполнения программы (режим трассировки);

Рекомендуем посмотреть лекцию "26 - Биофизика органов слуха".

- IF (Interrupt Flag) – флаг прерываний; при нулевом состоянии этого флага прерывания запрещены, при единичном – разрешены;

- DF (Direction Flag) – флаг направления; используется в строковых операциях для задания направления обработки данных; при нулевом состоянии флага команда увеличивает содержимое регистров SI и DI на 1, обуславливая обработку строки «слева направо», при единичном – «справа налево».

Вопросы для самопроверки:

1. Поясните назначение, основные функции и структуру арифметико-логического устройства.

2. Поясните назначение, основные функции и структуру устройства управления.

3. Назовите регистры МПП и дайте им краткую характеристику.

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