×
Traktatov.net » Справочное пособие по цифровой электронике » Читать онлайн
Страница 18 из 64 Настройки

5.1. Внутренняя архитектура

Главными внутренними элементами микропроцессора являются:

• регистры для временного хранения команд, данных и адресов;

• арифметико-логическое устройство (АЛУ), которое реализует множество арифметических и логических функций;

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

Конечно, внутреннее устройство (или архитектура) микропроцессоров разных семейств различно, но в них имеется и много общих элементов. Например, в основных микропроцессорных семействах заметна тенденция сохранить «совместимость вверх» в части их внутренней архитектуры и системы команд, что, безусловно, делает новые приборы более привлекательными для потребителей.

Внутренние регистры — это просто наборы триггеров-защелок (см. гл. 3), в которые при обработке помещаются двоичные данные. Некоторые из регистров доступны программисту (т. е. он может записать в них или считать их содержимое), а другие не доступны. Регистры подразделяются на специализированные (т. е. имеющие конкретное назначение, например указание ячейки памяти или хранения результата операции АЛУ) и общего назначения.

Особенно важную роль в микропроцессоре играют следующие регистры.

Программный счетчик или указатель команды. Программный счетчик PC или указатель команды IP в 8-битном микропроцессоре — это 16-битный регистр, содержащий адрес следующего командного байта. При выборке каждого командного байта производится автоматический инкремент программного счетчика.

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

Регистр флажков F (или регистр состояния SR, регистр кода условия CCR) содержит информацию о внутреннем состоянии микропроцессора, в частности об особенностях результата последней операции АЛУ. Подчеркнем, что регистр флажков не является регистром в обычном смысле, а представляет собой просто набор триггер-защелок, состояния которых зависят от результата операции АЛУ. Можно считать, что выход каждого триггера действует как флажок. Обычно имеются флажки нуля Z, переполнения V, отрицательного результата N и переноса С.

Указатель стека. В большинстве микропроцессоров требуется доступ к такой области внешнего ЗУПВ, которая предназначена для временного хранения данных. Эта область называется стеком и занимает от 16 до 256 байт. (Заметим, однако, что стек — это динамическая структура и его размер изменяется в процессе обработки).

Стек работает по принципу «последний пришел — первый ушел» (LIFO). Данные включаются («проталкиваются») в стек, а затем извлекаются («выталкиваются») из него. Указатель стека SP следит за положением стека, т. е. содержит адрес последней использованной ячейки стека. В некоторых микропроцессорах, например в микропроцессоре 6809, имеются два независимых указателя стека —