6.Однокристальные микро–ЭВМ

 

6.1.Эволюция микропроцессора INTEL 8080A

6.1.1.Микропроцессор Z-80

6.1.2.Микропроцессор INTEL 8085A

6.2.Однокристальные микро–ЭВМ. Общие сведения

6.3.Архитектура однокристальной микро–ЭВМ

6.4.Организация памяти однокристальной микро – ЭВМ

6.5.Особенности системы команд микро–ЭВМ

6.6.Особенности команд передачи управления однокристальной микро–ЭВМ

 

6.1.Эволюция микропроцессора INTEL 8080A

 

6.1.1.Микропроцессор Z-80

 

Микропроцессор Z-80 (Z-80-CPU фирмы ZILOG, имеется отечественный аналог КР1858BM1) является развитием микропроцессора INTEL 8080A. Этот микропроцессор практически совместим снизу вверх с INTEL 8080A на уровне машинного кода. Z-80 отличается от своего предшественника тем, что имеет:

  1. одно напряжение питания +5В (у INTEL 8080A три напряжения питания);

  2. повышенное быстродействие (тактовая частота увеличена частота до 4…6 МГц против 2,5 МГц у INTEL 8080A);

  3. встроенный системный контроллер;

  4. вход немаскируемого прерывания;

  5. двойной комплект регистров A, F,B,C,D,E,H,L;

  6. возможность программной установки вектора прерывания с помощью специального регистра I;

  7. встроенный контроллер регенерации динамического ОЗУ;

  8. дополнительные индексные регистры IX и IY и основанные на их использовании индексную адресацию операндов в командах;

  9. значительное количество дополнительных команд (696 кодов операций против 244 у КР580ВМ80А).

Фирм ZILOG выпустила и периферийные интерфейсные микросхемы, предназначенные для работы с микропроцессором Z-80-CPU. Это:

Z-80-PIO – программируемый параллельный интерфейс;

Z-80-SIO – программируемый последовательный интерфейс;

Z-80-CTC – программируемый 4х канальный таймер – счетчик;

Z-80-DART – сдвоенный программируемый последовательный интерфейс.

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

 

6.1.2.Микропроцессор INTEL 8085A

 

Микропроцессор INTEL 8085A (отечественный аналог КР1821BM85A) также является усовершенствованным вариантом микропроцессора INTEL 8080A. Эти микропроцессоры программно совместимы как на уровне машинного кода, так и на уровне языка ассемблера.

INTEL 8085A отличается от своего предшественника тем, что имеет:

  1. одно напряжение питания +5В;

  2. повышенное быстродействие (тактовая частота до 3 МГц);

  3. встроенный тактовый генератор;

  4. встроенный системный контроллер;

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

  6. две дополнительные команды установки (SIM) и чтения (RIM) маски системы прерываний;

  7. совмещенную (мультиплексированную) шину данных и младшего байта адреса.

Стандартная трехшинная архитектура микропроцессорной системы (MICROBUS) получается при таком мультиплексировании с помощью дополнительного регистра памяти. В этом регистре специальным выходным сигналом микропроцессора ALE фиксируется младший байт адреса. Формирование шины адреса в этом случае поясняет рис.6.1.

Рис.6.1.Формирование шины адреса в микро-ЭВМ на основе микропроцессора INTEL 8085A

Специально для микропроцессора INTEL 8085A были выпущены два типа периферийных интерфейсных микросхем, предназначенных для работы с мультиплексированной шиной адреса/данных. Это:

INTEL 8156 (КР1821РУ55) – ОЗУ с организацией 258 х 8 байт, два восьмибитовых и один 6-ти битовый порт ввода-вывода, 14-битовый программируемый таймер;

INTEL 8755 (КР573РФ10) – перепрограммируемое ПЗУ со стиранием информации ультрафиолетовым излучением емкостью 2К и два восьмиразрядных порта ввода — вывода.

Использование этих микросхем позволяло строить на основе микропроцессора INTEL 8085A очень компактные микро-ЭВМ.

Следующим очевидным шагом эволюции оказалось объединение микропроцессора, постоянной и оперативной памяти, портов ввода-вывода в одном кристалле. Так появились однокристальные микро-ЭВМ.

 

6.2.Однокристальные микро–ЭВМ. Общие сведения

 

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

Основной архитектурной особенностью однокристальных микро–ЭВМ является использование раздельной памяти программ (ПЗУ) и данных (ОЗУ). Такое разделение позволяет упростить выполнение большинства команд и повысить быстродействие микро–ЭВМ.

Однокристальные микро–ЭВМ выпускается обычно в нескольких вариантах:

  1. без ПЗУ. Этот вариант предназначен для макетирования микропроцессорных систем разработчиками;

  2. с масочным ПЗУ. Этот вариант обеспечивает массовый выпуск каких–либо типовых микропроцессорных устройств;

  3. с однократно программируемым ПЗУ Предназначены для комплектации малых серий микропроцессорных устройств, для которых невыгоден выпуск микро–ЭВМ с масочными ПЗУ;

  4. с перепрограммируемыми ПЗУ со стиранием информации как ультрафиолетовым облучением, так и электрическим сигналом. Используется при макетировании и как альтернатива варианту 3.

 

6.3.Архитектура однокристальной микро–ЭВМ

 

Простейшим примером восьмиразрядной однокристальной микро–ЭВМ является микросхема INTEL 8748 (отечественный аналог КР1816ВЕ48). Построение этой микро–ЭВМ иллюстрирует рис.6.2.

Рис.6.2.Архитектура однокристальной микро-ЭВМ

 

На одном кристалле здесь реализована восьмиразрядная микропроцессорная система с тактовой частотой 2МГц. Кроме обычных элементов микропроцессора (аккумулятор, АЛУ, регистр адреса РА, счетчик команд СК и так далее) схема содержит перепрограммируемое ПЗУ с ультрафиолетовым стиранием емкостью 1К, ОЗУ емкостью 64 байта, три восьмиразрядных порта ввода–вывода и счетчик/таймер.

Для работы микросхемы необходим внешний кварцевый резонатор, подключаемый к выводам Х1 Х2 устройства управления. На это же устройство поступают как типовые внешние сигналы сброса и запроса прерывания , так и сигналы внешних программно проверяемых флагов Т1 и Т0. Разрядность счетчика команд позволяет адресовать 4К ПЗУ. Недостающий объем ПЗУ может быть дополнен внешней микросхемой. К микро–ЭВМ может быть также подключено внешнее ОЗУ емкостью до 256 байт. Для сопряжения внешних кристаллов памяти с микро–ЭВМ устройство управления имеет ряд дополнительных, не показанных на схеме выводов.

 

6.4.Организация памяти однокристальной микро – ЭВМ

 

Память микро–ЭВМ, доступную пользователю, составляют аккумулятор А, регистр слова состояния программы PSW, ОЗУ и ПЗУ. Организация аккумулятора особенностей не имеет. Внутренняя оперативная память микро–ЭВМ имеет 64 восьмиразрядных ячейки с адресами от 00H до 3FH. Половина этих ячеек с младшими адресами имеет двойное назначение. Часть из них одновременно выполняет роль регистров СОЗУ, другая – стековой памяти. Организацию ОЗУ иллюстрирует рис.6.3.

Рис.6.3.Организация ОЗУ однокристальной микро-ЭВМ

Регистры СОЗУ сгруппированы в два банка по 8 регистров. Банки регистров могут переключаться с помощью специальной команды. Положение стека в ОЗУ фиксировано. В отличие от INTEL 8080A стек здесь растет в сторону больших адресов. Емкость стека ограничена восемью шестнадцатиразрядными словами. При попытке записи девятого слова, оно вновь запишется с адреса 08Н.

Младшие байты шестнадцатиразрядных слов хранятся в ОЗУ по младшему адресу, старшие – по старшему.

Дополнительное внешнее ОЗУ, подключаемое к микро–ЭВМ, имеет свое собственное адресное пространство, никак не связанное с адресным пространством внутреннего ОЗУ. Напротив, внутреннее и внешнее ПЗУ микро–ЭВМ имеют общее адресное пространство. Это пространство разделено на два банка (MB0 и MB1) по 2К, а каждый из банков на 8 страниц по 256 байт. Такую организацию ПЗУ иллюстрирует рис.6.4.

Рис.6.4.Организация ПЗУ однокристальной микро-ЭВМ

 

Разбиение ПЗУ на страницы не нарушает естественный порядок выборки и исполнения команд. Говорят, что границы этих страниц «прозрачны» для выборки. Напротив, граница между банками ПЗУ MB0 и MB1 непрозрачна. За адресом 7FFH при естественном порядке выборки здесь последует адрес 000Н. Банки ПЗУ переключаются только программно. При работе без внешнего ПЗУ всегда используется банк MB0. Три ячейки памяти на странице 0 ПЗУ имеют специальные функции. Ячейка 000Н ПЗУ является стартовой. На нее передается управление после подачи сигнала сброса RESET. Ячейка 0003Н является точкой входа программы обслуживания внешнего прерывания по входу INT. Ячейка 0007Н является точкой входа программы прерывания от счетчика/таймера.

Формат регистра слова состояния программы PSW представлен на рис.6.5. Кроме признаков, вошедших в PSW, пользователю программно доступны еще три:

MB – селектор банков ПЗУ;

F1 – признак пользователя;

TF – переполнение таймера.

Рис.6.5.Формат регистра PSW однокристальной микро-ЭВМ

 

6.5.Особенности системы команд микро–ЭВМ

 

В целом, система команд микро–ЭВМ INTEL 8748 напоминает систему команд микропроцессора INTEL 8080А, имея, естественно, другие мнемоники и коды операций.

Команды могут иметь два формата – однобайтовый и двухбайтовый. Однобайтовые команды состоят только из кода операций. Двухбайтовые команды имеют дополнительный байт, который в зависимости от конкретного содержания команды может рассматриваться либо как байт данных (data), либо как восьмиразрядный адрес (adr 8). Ряд команд работает с 11-разрядным адресом (adr 11). Эти команды имеют по 8 модификаций кода операций, который и содержит информацию о трех старших разрядах адреса.

В командах пересылки и арифметико–логической обработки микро–ЭВМ не используется прямой метод адресации. Обратиться к ячейке ОЗУ или ПЗУ здесь можно только с помощью косвенной адресации. Регистрами косвенной адресации, хранящими адрес операнда в ОЗУ, могут быть регистры R0,R1 (R0’,R1’). Регистром косвенной адресации, хранящим адрес операнда в ПЗУ, может быть только аккумулятор А. При этом операнд может быть выбран только из текущей страницы ПЗУ либо из страницы 3. Непосредственный и косвенный методы адресации отмечаются во мнемониках команд микро–ЭВМ специальными указателями # и @ соответственно. Так, например, команда MOV R3,#data загружает байт данных data в регистр R3, а команда MOV A,@R1 загружает аккумулятор из ячейки ОЗУ, адрес которой содержится в регистре R1.

Большинство команд микро–ЭВМ не меняют значения признаков результата. Исключение составляют специальные команды установки или инверсии конкретных признаков, сдвига аккумулятора через признак С, арифметического сложения и десятичной коррекции аккумулятора, а так же команды:

MOV PSW,A – восстановить PSW из аккумулятора;

RET R – возврат из прерывания;

JTF – условный переход по переполнению счетчика/таймера.

Выполнение команд микро–ЭВМ организовано по машинным циклам. Длительность машинного цикла фиксирована и составляет пять машинных тактов. При тактовой частоте 2 МГц длительность машинного цикла равна 2,5 мксек. В первом машинном цикле М1 всегда считывается код операции из ПЗУ, после чего инкрементируется счетчик команд. Число машинных циклов большинства команд численно равно формату команды. Однако существует ряд однобитных команд, выполняющихся за 2 машинных цикла. Это:

  1. все команды ввода/вывода;

  2. команды возврата из подпрограммы RET и возврата из прерывания RETR;

  3. все команды работающие с внешним ОЗУ;

  4. все команды, использующие аккумулятор, как регистр косвенной адресации ячеек ПЗУ (@A).

 

6.6.Особенности команд передачи управления однокристальной микро–ЭВМ

 

Команды передачи управления однокристальной микро – ЭВМ отличает как большое разнообразие, так и специфика выполнения, связанная с фрагментацией ПЗУ, то есть его делением на страницы и банки.

Наиболее многочисленны команды условной передачи управления, имеющие обобщенную мнемонику J — CON adr8. Использование в этих командах восьмиразрядного адреса дает возможность перехода лишь в пределах текущей страницы ПЗУ. В качестве условий перехода –CON выступают:

C – наличие переноса;

NC – отсутствие переноса;

Z – нулевое содержимое аккумулятора;

NZ – не нулевое содержимое аккумулятора;

T0 – внешний признак T0=1;

NТ0 – внешний признак T0=0;

T1 – внешний признак T1=1;

NT1 – внешний признак T1=0;

F0 – флаг F0 установлен;

F1 – флаг F1 установлен;

TF – флаг TF установлен;

Вв – бит в = 0,,,7 аккумулятора установлен

NI – наличие низкого уровня.

Передачу управления в пределах банка осуществляет команда JMP adr11. При выполнении этой команды код adr11 переписывается в младшие 11 разрядов счетчика команд СК. В старший (двенадцатый) разряд этого счетчика копируется признак MB. Поэтому команда JMP adr11 может передать управление и за пределы текущего банка, если предварительно установить нужное значение МВ командами SEL MB0 или SEL MB1.

Команда вызова подпрограммы CALL adr11 передает управление подпрограмме точно так же как и команда JMP adr11. Однако перед передачей управления она записывает в стек 16 разрядное слово формат, формат которого представлен на рис.6.6.

Рис.6.6.Формат слова, записываемого в стек командой JMP adr11

 

При обработке прерываний микро–ЭВМ выполняет команду CALL adr11 (adr11= 3 или adr11= 7) автоматически, без участия программы.

Возврат из подпрограммы осуществляется командой RET. По этой команде в счетчик команд передается адрес возврата.

Возврат из программы обработки прерываний осуществляют командой RETR. По этой команде дополнительно восстанавливается из стека старшая тетрада слова состояния программы PSW.

Рейтинг@Mail.ru