Последовательность выборки-исполнения

      Комментарии к записи Последовательность выборки-исполнения отключены

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

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

памяти.

Как показано далее, полная последовательность событий может быть значительно шире:

¦ микропроцессор помещает на шину адреса адрес следующей ячейки памяти;

¦ в тот же самый момент на шину команд выдается сигнал чтения памяти;

¦ информация из адресуемой ячейки памяти устанавливается на шину данных;

¦ информация с шины данных на некоторое время сохраняется в микропроцессоре;

¦ команда декодируется, в микропроцессоре внутренними схемами логики в последовательность микрокоманд:

¦ теперь реализуется фаза «выполнения». Это может быть такая простая операция, как сложение двух чисел внутри микропроцессора, или операция может потребовать выдачи данных

на какой-либо порт. В последнем случае адрес порта будет помещен на шину адреса, на шине команд будет сгенерирован сигнал«запись».

Фазы выборки и декодирования требуют одинакового времени для всех команд, но длительность выполнения команды будет в большой степени зависеть от самой команды. Фактическое время

исполнения команды зависит от се сложности и тактовой частоты микропроцессора.

Типовой микропроцессор

На рис. 2.41 показана архитектура упрошенного микропроцессора, которая содержит пить регистров, блок управлений и арифметико-логическое устройство (arithmetic logic unit — ALU).

Регистр кода операции (operation code register — OSR) используется для сохранения команды (кода операции), выполняемой в текущий момент. Блок управления использует содержимое OSR. Чтобы определить требуемые действия.

Регистр временного адреса (temporary address register

—TAR) используется для сохранения операнда команды, если таковой должен быть обработан как адрес. Он выдает содержимое на шину адреса.

Регистр храпения данных (temporary address register — TDR) используется для хранения информации, которая должна быть обработана арифметическим устройством, поэтому выход регистра

является входом в ALU.

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

Аккумулятор (АС) —это тоже регистр, который доступен программисту и используется для удержания такой информации, как результат текущей операции.

Регистр указателя команд (instruction pointer — IР, счетчик команд) выведен на шину адреса, чтобы его содержимое можно было использовать для адресации команд программы в основной памяти. Он является инкрементным регистром, то есть его

содержимое может быть увеличено на единицу непосредственно

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

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

Процесс выполнения команды состоит в следующем:

1. Блок управления получает синхроимпульс.

2. Блок управления выдает команды.

3. Соответствующее устройство выполняет команду.

4. Блок управления получает синхроимпульс.

5. Блок управления выдаст команду.

6. Соответствующее устройство выполняет команду,

и т.д.

Ниже дана типичная последовательность команд для сложения одного числа с другим, уже находящимся в аккумуляторе:

1. Содержимое регистра IP помещается на шину

адреса.

2. Считывается информация из основной памяти

и помешается на шину данных.

3. Информация на шине данных копируется в

регистр кода операции OSR.

4. Содержимое регистра 1Р увеличивается на 1.

5. Содержимое регистра IP помешается на шину

адреса.

6. Информация из основной памяти помешается

на шину данных.

7. Информация на шине данных копируется в

регистр данных TDR.

8. Арифметическое устройство складывает содержимое

регистров TDR и АС и помещает

результат на шину данных.

9. Информация на шине данных колируется в

регистр аккумулятора АС.

10. Содержимое IР увеличивается на I.

Теперь аккумулятор хранит результат текущей операции. Шаги с 1 по 4 представляют последовательность выборки, а шаги с 5 по 10 – последовательность выполнения. Если последовательность

выборки-выполнения, описанная выше, была повторена, скажем, раз 9, это было бы эквивалентно умножению числа в аккумуляторе на 10! Это наглядный пример того, на каком базовом уровне осуществляются операции внутри компьютера.

Теперь предстоит совершить огромный шаг вперед. Можно проследить, как микропроцессор в устройстве управления двигателем сравниваем значение, расположенное в ячейке оперативной памяти RAM, со значением в ячейке постоянной памяти ROM. Например, результат сравнения мгновенной скорости вращения двигателя в RAM с таблицей данных в ROM может использоваться для изменения момента зажигания в соответствии с заданной в «прошивке» зависимостью.

Микроконтроллеры

По мере развития интегральных технологий становится возможным построить полный компьютер на одном кристалле ИС. Такой компьютер называют микроконтроллером. Микроконтроллер

должен содержать микропроцессор, память (RAM/или ROM), входные и выходные порты. В некоторых случаях в состав микроконтроллера входит и тактовый генератор.

Типичное семейство микроконтроллеров — это серия ИС Intel 8051. ИС этой серии были выпушены впервые в 1980 л, но до сих пор популярны среди конструкторов. Наиболее современный представитель этого семейства — микроконтроллер 87С528, который имеет память EPROM объемом 32 Кб, 512 байт оперативной памяти, три 16-разрядных таймера. 4 порта ввода-вывода и встроенный последовательный интерфейс.

Есть и такие микроконтроллеры, которые могут включать программируемую память ROM. Они обычно делаются под заказ и поставляются только заказчику. На рис. 2.42 показана упрощенная

блок-схема микроконтроллера Я051.

Статьи к прочтению:

Лекция 3: Последовательность исполнения. Упорядоченность и атомарность


Похожие статьи:

  • Диаграмма последовательности

    Для моделирования взаимодействия объектов во времени в языке UMLиспользуются диаграммы последовательности. Пример приведен на рисунке 12. Рисунок 12….

  • Создание последовательности ключевых кадров

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