При записи входное слово Х поступает на регистр слов (PC) и записывается в матрицу памяти по адресу, который в данный момент был установлен в УС. С небольшой задержкой после записи информации содержимое УС уменьшается на единицу, подготавливаясь к следующей записи, так что УС постоянно указывает на пустую ячейку.
При чтении МБУ сначала вырабатывает сигнал, увеличивающий содержимое УС на единицу, а затем - сигнал чтения информации из матрицы памяти. В результате на выходных цепях стека появится слово Х, которое было записано последним. Принцип работы стека может быть сформулирован как «последним записан – первым прочитан» (Last In First OUT - LIFO). Ввиду отсутствия в коде команд записи (чтения) адресного поля уменьшается разрядность этих команд и время их выполнения.
В МПС используются два вида стека: встроенный и автономный. Встроенный стек полностью размещается на кристалле МП. Емкость (глубина) стека здесь не может быть большой (обычно 16-32 слова). При организации автономного стека в качестве матрицы памяти используется внешнее по отношению к МП ОЗУ, а на кристалле располагается лишь УС с разрядностью, равной разрядности шины адреса; глубина стека может быть равна адресуемой емкости памяти (обычно 64 К). Для компенсации снижения быстродействия в некоторых МП с автономным стеком реализованы аппаратная запись и восстановление при прерываниях содержимого ПС, аккумулятора и регистра состояния.
Работа МПС сопровождается интенсивным обменом информацией между МП, ЗУ, УВВ. Эффективность решения задач МПС в значительной степени определяется организацией этого обмена и структурой связи между МП, памятью и УВВ. Для организации обмена между указанными устройствами вводится понятие интерфейса – это система шин, вспомогательной аппаратуры и алгоритмов, реализованных на этой аппаратуре. В функции интерфейса входят: дешифрация адреса устройств, синхронизация обмена информацией, согласование форматов слов, дешифрация кода команды, связанной с обращением к памяти или УВВ, электрическое согласование сигналов.
Сложность задач, возлагаемых на интерфейс, а также недостаточная мощность буферных схем, входящих в состав БИС МП, привели к распределению средств интерфейса между различными устройствами:
- устройством управления памятью и вводом-выводом, входящим в состав МП;
- непосредственно интерфейсным устройством, являющимся промежуточным звеном между МП, памятью и УВВ;
- специализированными устройствами управления (контроллерами) УВВ.
Различают следующие способы организации связи между МП и УВВ в МПС: программный обмен данными по командам условного перехода; обмен данными по сигналам прерывания; обмен данными в канале прямого доступа в память; подключение устройств ввода-вывода к МП.
При программном обмене данными по командам условного перехода МП программным путем должен определить, готово ли периферийное устройство к выполнению операций ввода-вывода до того, как начнется программная передача данных. Внешнее устройство должно иметь аппаратурные средства для выработки информации о внутреннем состоянии статусной информации. МП считывает эту информацию, передает ее во внутренний регистр-аккумулятор, анализирует и на основе результата анализа принимает решение о готовности устройства (рис.1.6).
МП может находиться в режиме программного ожидания (готовности) внешнего устройства, выполняя команды блоков 1 и 2. После обнаружения состояния готовности МП передает данные по командам блоку 3, а затем приступает к работе по продолжению основной программы.
Рис. 1.6. Алгоритм программного обмена
На рис. 1.7 приведен пример обмена данными по командам условного перехода. Аналого-цифровой преобразователь (АЦП) при передаче данных имеет трехуровневые выходные каскады, передача данных с которых осуществляется по сигналу “Разрешение выдачи” (РВ). По сигналу “Начало преобразования” (НП) АЦП начинает преобразования мгновенной амплитуды входного аналогового сигнала в восьмиразрядный код. По окончанию преобразования выдается управляющий сигнал “Конец преобразования” (КП).
Сигналы НП, КП и РВ считываются МП из байтового выходного регистра данных. Сигналы Д7 – Д0 имеют правильное значение, если соблюдена последовательность выдачи управляющих сигналов НП, КП и РВ согласно временной диаграмме. Сигнал с дешифратора адреса ДСА
Рис. 1.7. Схема подключения АЦП к МП при программном вводе данных
вместе с сигналом операции МП Чт/Зп по сигналу импульса синхронизации С определяет генерацию необходимого управляющего сигнала. По сигналам АНП =АРВ = 1 осуществляется запуск АЦП; по сигналам АРВ = АКП = 1 – считывание и ввод в МП значения сигнала КП. Этот сигнал через трехуровневый каскад вводится в МП по шине Д7. Поэтому команда “Условный переход по знаку результата” определит либо окончание преобразования (КП=1), либо необходимость перехода к новому циклу анализа (КП=0). При сигнале КП=1 командой “Прочитать данные по адресу АРВ” осуществляется ввод информации с АЦП в МП.
Для организации обмена данными по сигналам прерывания от внешних устройств в МП должны быть предусмотрены специальные аппаратурные средства анализа состояния внешних устройств. Если они обнаруживают готовность к обмену какого-либо внешнего устройства, то сигнализируют об этом блоку управления МП, который завершает текущую операцию, передает на хранение в память всю информацию внутренних регистров данных и управления и переходит к подпрограмме обслуживания прерывания. Основная часть этой подпрограммы – команды передачи данных между МП и конкретным внешним устройством. В конце нее имеются программы восстановления состояния МП, которое существовало к началу прерывания.
Если необходимо осуществить обмен между внешним устройством и памятью, то нет необходимости пересылать данные через МП, так как в противном случае затраты времени МП будут очень большими. Можно ввести в МПС контроллер прямого доступа в память, который берет на себя управление передачей. Построение канала ПДП является альтернативой программному обмену, поэтому и в данном случае справедливы общие закономерности балансировки программно-аппаратурных средств. Средства канала ПДП могут быть подключены параллельно процессору (рис.1.8, а), с передачей функции арбитража ОЗУ.
Рис. 1.8. Схема подключения КПД к ОЗУ в МПС
Однако при этом усложняются схемы управления ОЗУ, появляется второй информационный канал, состоящий из информационных МД и МА и управляющих сигналов МУ. Поэтому в МПС решается задача разделения единого информационного канала между МП и КПД в память посредством использования свойств трехуровневого состояния информационных подмагистралей. МП во время передачи информации по КПД переводит выходные схемы управления всех магистралей в высокоомное состояние и изолируется от остальной части системы, что аналогично обрыву его информационного канала (рис. 1.8, б).
Способы подключения внешних устройств к МП определяются возможностями его корпуса, аппаратурно-программных средств, количеством и особенностями устройств ввода-вывода. Запрос на простое прерывание привлекает внимание МП к внешней системе и требует анализа ее состояния.
Если несколько устройств ввода-вывода (УВВ) подключены к своим индивидуальным аппаратурным ресурсам (радиальный интерфейс) (см. рис.1.9, а), то внутри МП необходимо иметь мультиплексор для последовательного опроса всех УВВ. В случае подключения многих УВВ к одному уровню прерывания при простом прерывании требуется обзор всех причин прерывания и выделения активного УВВ.
Последовательное расположение подпрограмм анализа причин прерываний УВВ в программе может считаться приоритетным, если не задан другой алгоритм. Следовательно, первое активное устройство, обнаруженное программой прерывания, получает ресурс на обслуживание. Аппаратурно этот алгоритм реализуется в “цепочечной” схеме подключения УВВ (рис.1.9, б).
Рис.1.9. Схемы подключения УВВ к МП МПС
Векторное прерывание возникает в том случае, когда УВВ, выставившее запрос на прерывание, посылает после выполнения запроса адрес ячейки, где расположена программа прерывания данного УВВ (рис.1.9, в).
Многоуровневые групповые системы (рис.1.9, г) прерывания требуют наличия в МП несколько входов и могут быть векторными, приоритетными или обзорными.
Принципиальные отличия в организации структуры микропроцессора МПС от организации структуры процессора классической ЭВМ (наличие нескольких внутренних шин, РОН, стека и т.п.) приводят к особенностям функционирования МП при организации процессов обработки информации и управления этими процессами.
Процесс обработки информации осуществляется в МПС с помощью его центрального устройства - микропроцессора, типовая структура которого в самом общем случае состоит из АЛУ (см. рис. 1.10, а), набора регистров общего назначения (РОН), буферного регистра (БР) и регистра сдвига (Рсдв).
Представленная структура обладает очень широкими возможностями: содержимое любого РОН может быть передано на БР и на Рсдв, а стандартное четырехразрядное АЛУ (рис. 1.10, б) может выполнить 16 логических и 32 арифметических операции над содержимым обоих регистров; результат может быть записан в любой из РОН.
Рис. 1.10. Типовая структура МП
При подаче соответствующих управляющих сигналов в этой системе, например, возможны: