Процессор Z-80. Краткое описание - QubStore

Процессор Z-80. Краткое описание

Когда-то, очень давно, у меня был ZX-Spectrum, затем его аналог Magic 06. Это действительно замечательный компьютер для своего времени. Сейчас интерес к созданию компьютера из набора микросхем в обнимку с паяльником снова актуален для любительских проектов и не только. Но когда я стал искать информацию о процессорах Z80, то не смог найти корректную информацию по краткому описанию и возможностям процессора, а также «распиновке» процессора и его маркировке. Поэтому данная статья и последующие будут постепенно раскрывать этот пробел.

Данная статья рассматривает процессор  Zilog Z84C008PEC (Z80) с точки зрения описания основных функций, маркировки, а также «распиновки». Данный процессор был куплен в Китае, для меня было удивительно, что данные процессоры не просто еще используются, но и даже производятся в поднебесной, хотя официальное производство свернуто. Внимание, данный процессор производится и применяется с 1976 года, уже почти 50 лет. Оказывается, его применяют в промышленной автоматике по сей день, в любительских бытовых компьютерах, в компьютерах управляющих автоматикой на производстве, в том числе в «кустарной» автоматике.

Лично для себя я приобрел этот процессор, чтобы собрать ZX-Spectrum на макетной плате.

Итак, о процессоре.

Тактовая частота процессора Z80 с маркировкой линейки Z84C…PEC напрямую зависят от цифр, которые идут сразу после «Z84C00».

Если указанно «04», то тактовая частота 4 МГц, если указано «08», то тактовая частота 8 МГц. Но самое интересное в другом маркере, а именно в букве «С» идущей сразу после «Z84». Эта буква говорит о том, что рабочая частота может быть от 0 МГц до значения указанного выше («04» – 4 Мгц, «08» — 8 МГц).

Пример ниже в таблице 1.

Таблица 1. Соответствие маркировки и тактовой частоты.

Z84C0004PEC

4 МГц

Z84C0006PEC

6 МГц

Z84C0008PEC

8 МГц

Z84C0010PEC

10 МГц

Z84C0020PEC

20 МГц

Расшифровка маркировки «PEC»

  • P – тип корпуса: PDIP (пластиковый двухрядный, 40 контактов).

  • E – температурный диапазон: Extended (расширенный, от −40 °C до +100 °C или +85 °C).

  • C – экологический стандарт: Conformant (стандартная пайка свинцовым припоем; версии без свинца маркируются как PEG / PEG)

Самое интересное в том, что в качестве тактового генератора для Zilog Z84C008PEC можно использовать кнопку и свой палец :). Генерируем тактовый сигнал по нажатию на кнопку. Такой подход позволит посмотреть глазами, как проходит процесс обработки данных.

Описание контактов процессора.

На рисунке 1 показана схема «распиновки» процессора в реальности, на физическом корпусе и логическая «распиновка». Физическая слева на картинке, логическая справа.

Рисунок 1. Расположение контактов микросхемы Z80

A0-A15 – это шина адреса, позволяет в обычном режиме адресовать 64 Килобайта памяти.

D0-D7 – это шина данных, обработка только одного байта за один раз.

RFSH –  Refresh, Регенерация. Выдает сигнал, разрешающий обновление памяти.

M1 – Machine Cycle 1, машинный цикл 1. Процессор считывает следующую инструкцию из памяти.

RESET – Reset/Сброс. Используется для сброса процессора.

BUSRQ – Bun Request, запрос доступа к шине. Используется внешними устройствами для запроса управления

WAIT – Halt, запрос ожидания. Заставляет процессор ждать во время операции чтения или записи.

BUSAK –  Bus Acknowledge, предоставление доступа к шине. Предоставление доступа к шине сигнализирует о готовности процессора передать управление.

WR – Write, запись, сигнализирует об операции записи в память или ввода-вывода.

RD – Read, чтение, сигнализирует об операции чтения из памяти или ввода-вывода.

INT – Interrupt Bequest, запрос прерывания, произошло аппаратное прерывание.

NMI – Non Maskable Interrupt, немаскируемое прерывание (более высокий приоритет, чем INT).

HALT – Halt State, состояние останова. Процессор находится в остановленном состоянии.

MREQ – Memory Request, запрос памяти. Процессор хочет получить доступ к памяти.

IORQ – Input/Output Request, запрос ввода-вывода. Процессор хочет получить доступ к точке ввода-вывода.

Краткое описание регистров

Описание 8-битных регистров

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

  • F – FlagRegister, регистр флагов, хранит признаки результатов операций (знак, нуль, перенос, четность)

  • B, C, D, E, H, L – универсальные 8-битные регистры. Могут объединятся в пары BC, DE, HL для 16-битных операций.

  • Альтернативные регистры (A’, F’, B’, C’, D’, E’, H’, L’) – точный дубликат основного набора. Необходим для ускорения обработки прерываний и подпрограмм.

Описание 16-битных регистров и специальных регистров

  • HL – основной указатель памяти (адрес косвенной регистровой адресации)

  • BC – счетчик или указатель, часто используется в операциях с портами ввода-вывода

  • DE – указатель данных, применяется при пересылке блоков памяти

  • PC — Program Counter, счетчик команд

  • IX, IY – IndexRegisters, индексные регистры для работы с отступом от базового адреса

  • SP – Stack Pointer, указатель стека, хранит адрес вершины стека в оперативной памяти

  • I – Interruptveotor, регистр вектора прерывания. Регистр прерывания, хранит старший байт адреса таблицы векторов прерываний

  • R – RefreshRegister, регистр регенерации памяти. Регистр обновления памяти, динамический счетчик регенерации памяти

Дополнительный комплект микросхем

Для процессора Z 80 существует несколько микросхем поддержки:

  • Z80PIO (Parallel Input Output) — интерфейс параллельного ввода-вывода, два независимых двухсторонних канала, корпуса DIP40, PLCC44 и PQFP44.

  • Z80CTC (Counter Timer Circuit) — Z0843004, Z0843006, Z84C3006, Z84C3008, Z84C3010 — счётчик/таймер, четыре независимых канала, корпуса DIP28, PLCC44 и PQFP44.

  • Z80SIO (Serial Input Output) — USART интерфейс последовательного ввода-вывода, двухканальный, многофункциональный, поддерживает как синхронный/асинхронный байт-ориентированный протокол IBM Bisync, так и бит-ориентированные синхронные HDLC и IBM SDLC; поддерживается CRC-контроль; корпуса DIP40, PLCC44 и PQFP44.

  • Z80DMA (Direct Memory Access) — контроллер прямого доступа к памяти, одноканальный, корпуса DIP40, PLCC44 и PQFP44

  • Z80DART (Dual Asynchronous Receiver/Transmitter) — UART двухканальный асинхронный приёмопередатчик.

Полезные ссылки:

  1. Процессор Z80 https://speccy.info/Zilog_Z80

  2. Ассемблер Z80 https://ru.wikibooks.org/wiki/Ассемблер_Z80

  3. Микроконтроллер на основе микропроцессора Z80 https://imlab.narod.ru/Electron/Z80_08/Z80_08.htm

Ссылка на основную публикацию