АРИФМЕТИЧЕСКО-ЛОГИЧЕСКОЕ УСТРОЙСТВО




 

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

Арифметическо-логическое устройство имеет собственный регистр временного хранения T. Он позволяет избежать возникновения “гонок”, когда какой-либо из общих регистров используется в одной операции и в качестве регистра-операнда, и в качестве регистра-результата.

Арифметическо-логическое устройство непосредственно связано с регистром признаков, в соответствующих разрядах которого фиксируются особенности выполнения каждой операции: нулевой результат в аккумуляторе - Z, перенос из старшего разряда - CY, знак результата - S, паритет - P и вспомогательный перенос из младшего полубайта - AC. Наличие в МП регистра признаков упрощает осуществление программных переходов в зависимости от состояния одного или более триггеров признаков. АЛУ позволяет в процессе межрегистровых “пересылок с перекосом” выполнять операции сдвига на один разряд вправо или влево. Многократный сдвиг реализуется последовательностью одноразрядных сдвигов, т.е. последовательно расположенными в программе командами сдвига.

В состав АЛУ входит комбинированная схема десятичного корректора ДК, назначение которого состоит в том, чтобы под воздействием специальной команды интерпретировать результат выполнения двоичной операции как результат операции десятичной арифметики. Для этого к старшей тетраде в схеме ДК прибавляется число 6, кроме тех случаев, когда либо не возникал перенос ни из одной тетрады и содержимое старшей и младшей тетрад находится в пределах 0-9 (или 0-8 и A-F) соответственно, либо не было переноса из старшей тетрады, содержащей число 0-9 и был перенос из младшей. К младшей тетраде одновременно также прибавляется число 6, кроме случая отсутствия переноса из младшей тетрады, содержащей число 0-9. Межтетрадные связи при этом не разрываются.

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

 

 

ШИНЫМИКРОПРОЦЕССОРА

Адресная шина.

Совокупность 16 выходов А15 - А0 составляет адресную шину (рис.2.1). Синхронизация работы микропроцессора осуществляется подачей двух синхронизирующих последовательностей j1 и j2 от внешнего генератора тактовых импульсов. Время выполнения одной команды занимает от одного до трех машинных циклов, каждый из которых состоит из нескольких машинных тактов (от трех до пяти). Длительность машинного такта равна периоду следования синхронизирующих импульсов j1 и j2. Все входные и выходные сигналы микропроцессора совместимы по уровням с ТТЛ-интегральными микросхемами. Для уменьшения мощности, рассеиваемой кристаллом микропроцессора, его выходные токи ограничены так, что к одному выходному контакту можно подключить не более одного входа ТТЛ-интегральной микросхемы. Поэтому для увеличения нагрузочной способности адресной шины микропроцессора применяют специальные буферные регистры или формирователи.

Шина данных.

 

Она содержит восемь разрядов D7 - DO и в отличие от адресной шины является двунаправленной. В за­висимости от типа выполняемых операций информация может считываться с шины данных в процессор или поступать из про­цессора для подачи на входы запоминающих устройств и устройств ввода - вывода. Помимо этого, на шине данных в момент при­хода импульса фазы j1 в такте Т2 (рис.2.1) присутствует информация о текущем состоянии процессора и о тех действиях, которые он будет выполнять в последующие машинные такты. Зафиксировав эту информацию в регистре и расшифровав ее с помощью логи­ческих схем, можно выработать сигналы записи/чтения в память и устройства ввода - вывода. Эти функции, а также буферизация шины данных возложены на системный контроллер КР580ВК28 /6, стр. 32/.

Шина управления.

 

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

RESET - сигнал сброса процессора в исходное состояние (по этому сигналу адресный счетчик устанавливается в ноль; после сигнала RESET микропроцессор первой выполняет команду чтения ячейки памяти по нулевому адресу);

HOLD - сигнал запроса шины (поступление этого сигнала свидетельствует о запросе внешнего устройства на доступ к шинам адреса, данных и управления);

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

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

INTE - сигнал разрешения прерывания (наличие выходного напряжения высокого логического уровня свидетельствует о раз­решении прерывания; когда прерывание принято, триггер раз­решения прерывания автоматически сбрасывается, запрещая даль­нейшие прерывания; он также сбрасывается по сигналу RESET)-,

DBIN - сигнал ввода с шины данных (наличие этого сигнала свидетельствует о приеме микропроцессором байта информации с шины данных);

WR - сигнал записи (свидетельствует о выдаче микропро­цессором байта данных на шину данных);

SYNC - сигнал синхронизации (указывает на начало каж­дого машинного цикла);

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

WAIT - сигнал ожидания (подтверждает, что процессор на­ходится в состоянии ожидания).

 

СТЕК

 

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

В микропроцессорном устройстве на МПК КР580 стек организуется следующим образом. В оперативной памяти (ОЗУ) команды размеща­ются в ячейках с младшими, последовательно нарастающими адресами. Стек использует ячейки со старшими адресами и по мере заполнения стека занимаются ячейки с адресами, последовательно убывающими. Таким образом, адреса этих двух частей памяти изменяются навстре­чу друг другу (рис. 2.3).

SP N-2 N-1 N
Рис.2.3  
Ячейки стека
Ячейки команд
. . .
. .
Стек

Особенность организации стека состоит в следующем. Указатель стека SP содержит так называемый адрес входа в стек; при чтении из стека производится выборка содержимого ячейки по адресу входа в стек (по адресу, хранящемуся в SP); при записи в стек вводимое в стек число помещается в ячейку с адресом, на единицу меньшим содержимого SP; одновременно с записью и чтением изменяется содержимое SP: при записи уменьшается, а при чтении увеличивается на единицу. Обмен со стеком производится двухбайтовыми словами, занимаю­щими две ячейки памяти. Пусть указатель стека хранит адрес А (рис. 2.4).

 

А-2 А-1 А
А-1 А
Запись данных в стек

                           
     
   
     
Запись старшего байта слова
 
     
 
 
 
 
 
   
Рис. 2.4


При вводе нового слова его байты должны быть помещены в пару сосед­них со входом в стек ячеек, имеющих адреса А-1 и А-2. Таким обра­зом, ввод в стек сводится к следующей последовательности действий: содержимое уменьшается на единицу и по образующемуся в адресу помещается старший байт вводимого двухбайтового слова. затем содержимое SP вновь уменьшается на единицу и по образующему­ся в нем адресу помещается младший байт вводимого слова. Мы видим, что каждый раз указывает адрес последней ячейки, занятой под стек - так называемый вход в стек.

Вывод данных из стека производится также двухбайтовыми слова­ми. При этом каждый раз доступна для чтения лишь ячейка, адрес ко­торой содержится в . Если указатель стека хранит адрес А, то бай­ты выводимого из стека слова выбираются из ячеек памяти, имеющих адреса А и А+1. Таким образом, выбор слова из стека сводится к такой последовательности действий: чтение младшего байта выводи­мого слова из ячейки, адресом которой служит содержимое SP, и увеличение содержимого SP на единицу; затем чтение старшего байта выводимого слова по хранящемуся в SP адресу и увеличение содержимого SP на единицу.

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

Таким образом, в рассматриваемом МП используется «перевернутый» стек, т. е. при передаче в стек слова значение SP (адрес вершины стека) уменьша­ется, а при извлечении слова из стека - увеличивается.

Непосредственно в МП К580 из оборудования стековой памяти содержится только регистр-указатель стека и соответствующие цепи управления. Сам стек реализуется в виде группы последовательных ячеек оперативной памяти.

 

 

БУФЕРНЫЕ СХЕМЫ

 

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

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

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

Во время выполнения операций в МП, не связанных с процедура­ми обмена с внешними по отношению к МП устройствами системы, буферная схема отключается от шины ШД, т. е. переходит в высокоимпедансное состояние «не нуль, не один», которое принято называть «плавающим» состоянием.

Буферная схема шины адреса БА - однонаправленная, обеспечивает передачу адресов команд и данных, а также номеров периферийных устройств от МП в систему. Выход буфера адреса, точно так же как и буфера данных, может переходить в отключенное состояние. Подоб­ный режим необходимо иметь в МП-системе, в которой к памяти могут обращаться по системной шине адреса не только МП, но и некоторые из периферийных устройств (например, пульт оператора, контроллер прямого доступа к памяти и др.).

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



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-08-20 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: