|
ZX Format
#06
29 июля 1997 |
|
Железо - Краткий рассказ о возможностях процессора Z-180.

Z-180.
music by Jaan _______________________________
Предлагаемое описание не претендует на
точность справочного материала. Это об-
суждение идеологи линии Z80/Z180 с пози-
ции проектирования компьютеров.
Вероятно для читателя наиболее удобным
будет представление в форме сравнения со
всем хорошо знакомым Spectrum'овским Z80
и описания ряда отличий, которые, собс-
твенно, задают линию развития семейства.
Архитектура любого компьютера,(в т.ч. и
Spectrum'a) тесно связана со структурой и
идеологией процессора. Развитие аппарату-
ры любой платформы тесно связано с разви-
тием этой идеологии. Исключения автору
неизвестны. Поэтому хотелось бы здесь об-
судить именно концептуальные особенности
CPU Z180 относительно Z80.
Немного истории. (если Вам не терпится -
прокрутите этот абзац прим.ред.) Компания
Zilog была основана бывшими сотрудниками
фирмы Intel (это обстоятельство привело в
последствии к судебной тяжбе). Общеприня-
тым является мнение, что они просто захо-
тели денег. Вместе с тем можно предполо-
жить, что это правда, но не вся. Не хо-
чется порождать очередной миф, и нижесле-
дующее следует рассматривать как попытку
реконструкции ВОЗМОЖНОГО варианта случив-
шегося.
I. Люди, работающие в святая святых кор-
порации, т.е. - обладающие реальным
"ноу-хау" и способные таким образом вли-
ять на концептуальные аспекты проектируе-
мых процессоров редко бывают обижены
деньгами.
- II. Уходит целая группа сотрудников экс-
тра-класса с намерением основать собс-
твенную фирму. Для такой грандиозной за-
дачи необходимы не только деньги и
"ноу-хау", но и наличие собственных кон-
цепций развития процессоров, т-к, в про-
тивном случае, невозможна конкуренция ни
с Intel, ни с Motorola. Чтобы лучще по-
нять ситуацию вспомним, что Intel и Moto-
rola выпускают процессоры, применяемые
соответственно в компьютерах семейства PC
и Macintosh. Вероятно концепция микропро-
цессоров фирмы Intel - узкоспециализиро-
ванные устройства, имеющие сосредоточеные
экстремальные характеристики (производи-
тельность, объем адресуемой памяти...) -
- оказалась неприемлемой для этой группы.
При таком подходе мощность компьютера
отождествляется с объемом памяти и произ-
водительнстью, т.е. - сугубо техническими
характеристиками, без связи с периферий-
ными проблемами, архитектурными требова-
ниями, процессом и трудоемкостью создания
ПО, сложностью пользовательского интер-
фейса.
Концепция Zilog: Умеренные быстродейс-
твие и объем адресуемой памяти. Специфич-
ным отличием является интеграция в чип
ядра архитектуры, понимаемого несколько
шире, нежели собственно процессор. Это
проявилось уже в Z80: механизм поддержки
процесса регенерации памяти (вывод RFSH),
автоматическое введение такта ожидания в
цикл ввода-вывода. Передовое, по тем вре-
менам, тактирование через одну CLOCK пос-
ледовательность. Расширенная система ко-
манд, приближающая ассемблер к языку вы-
сокого уровня. Блочные команды ввода-вы-
вода и пересылки эквивалентны макросам
процессоров других фирм. В Z180 эти тен-
денции углубляются.
1. Изменение механизма тактирования.
Предистория проблемы - вот что пишет Хор-
виц: "Например, для работы микропроцессо-
ра I8080 (прототип Z80, отечественный
аналог - 580ИК80) требуется три напряже-
ния питания и два поступающих извне так-
товых сигнала с уровнем 12в и точно вы-
держанной задержкой между ними. Возника-
щие в связи с этим неудобства часто заво-
дили работавших с микропроцессором 8080
конструкторов в такие ловушки, как прес-
ловутая "проблема тактов", которая со-
путствовала MITS и Altair 8800 (первона-
чально выпускавшаяся любительская ми-
ни-ЭВМ) и возникала в тех случаях, когда
жесткие требования, предъявляемые двумя
тактовыми входами микропроцессора, не
удовлетворялись достаточно скоро. Нес-
колько компаний (а не одна IBM) реклами-
ровали в любительских журналах специаль-
ные наборы, предназначенные для решения
"проблемы тактов". В те времена мы были
рады всему, что действовало. Однако конс-
труктора наших дней требуют (и добивают-
ся) несравненно большей простоты примене-
ния микропроцессоров".
В Z180 проблема тактирования решается в
более широком смысле, нежели чем просто
надежность и технологическая воспроизво-
димость схемотехнических решений. Приня-
тое в Z80 соглашение относительно отсчета
времен задержек от фронтов входного сиг-
нала (CLOCK) заменено на соглашение отс-
читывать времена от выходного сигнала
процессора Ф. Т.е., по сути, вся система
Spectrum'а имеет не внешнее, а внутреннее
тактирование - вся система тактируется
CPU. Это позволило выкинуть из циклов не-
избежные времена задержек и существенно
сжать машиный цикл по времени. С точки
зрения проектировщика Spectrum - архитек-
туры это означает полный отказ от тради-
ционных систем синхронизации компьютера в
целом. Кстати, имея умеренное быстродейс-
твие (например 14 Mhz) можно отказаться
от буферирования шины и получать исключи-
тельно простые, дешевые и технологичные
узлы на шине, т.к. допуски на "развал"
сигналов на шине по времени даже увеличи-
ваются. (Хотя, проектиуя систему синхро-
низации, приходится их пересчитывать.)
2. Изменение концепции машинного цикла.
Архитектура Z180 теперь не является жест-
ко заданной (как это было в Z80). Проек-
тировщик может программно, через систем-
ное ПО, менять архитектуру ядра. Если
учесть, что Z180, по существу, представ-
ляет собой архитектуру, а не собственно
процессор (концентрированную вычислитель-
ную мощность), можно говорить о расшире-
нии спектра возможностей и реконфигуриру-
емости. На практике это выглядит следую-
щим образом: В Z80 цикл регенерации жест-
ко "вделан" в цикл М1 (извлечение кода
операции). В Z180 цикл регенерации су-
ществует самостоятельно на уровне полноп-
равного машинного цикла. Частоту появле-
ния таких циклов можно варьировать в ши-
роких пределах, либо вовсе отменять. Это
позволило унифицировать все циклы шины по
длительности. (Т.н. "внутренние циклы",
не требующие обмена по шине, по длитель-
ности приравняны к такту.) В Z180 получи-
ла поддержку идея произвольно устанавли-
ваемой длины сигнала IORQ. (В KAY256 TUR-
BO Это пришлось делать с помощью специ-
альных внешних цепей.) В машинном цикле
появились дополнительные сигналы - инфор-
мационный и стробирования - их можно ис-
пользовать, например, для упрощения обме-
на с ОЗУ.
3. Расширение механизма прерывания.
Привычная всем Spectrum'истам группа пре-
рываний NMI/INT получила уровни приорите-
та 2-3. На уровне 1 находитса так называ-
емое "TRAP" прерывание - прерывание по
неправильному коду операции. Это именно
то место, куда будут вылетать программы с
недокументированными командами. Прерыва-
ние передает управление по 0-му вектору.
Имеется специальный бит, позволяющий про-
цессору отличить "холодный старт" (по RE-
SET) от "горячего" (по TRAP). Т.е. есть
возможность макроопределения (что эквива-
лентно макросу любого разумного размера)
"болванок" асов программирования Spect-
rum'a. Имеется еще две ноги, несущие обя-
занности "бдить" (дополнение к INT) -
INT1 и INT2 (4-5). Инеется также еще 7-м
штук прерываний, которые могут запраши-
вать встроенные в чип периферийные уст-
ройства (таймер, DMA, сериальные порты),
с самым низким приоритетом (6-12).
4. Расширение системы команд.
Команда SLP - спать.Процессор засыпает...
MLT - умножение двух восьмиразрядных ре-
гистров с результатом в рег. пару:
H*L -> результат - в HL. 17 тактов.
Три команды тестирования по аккумулятору
без разрушения его содержимого.
Семь специальных команд обращения к внут-
ренним устройствам Z180 (DMA и т.д.). Ко-
манды выставляют 00h в старшем байте ад-
реса порта.
Любопытной тонкостью является то, что
специалистами фирмы Zilog внутричипные
устройства называются регистрами, но по
сути дела - это те же порты, т.к. соот-
ветствующие циклы идентичны. Поэтому, ес-
ли в программе встречается традиционная
команда, по какой-либо причине выводящая
значение в порт с нулевым старшим байтом
адреса, она рискует попасть во внутричи-
повые порты, последствия чего бывают са-
мыми забавными...
Для программиста эти порты представляют
из себя "банку" длинной 40h, на отрезке
длинной 100h. (8-м младший бит адреса)
Банку можно поместить в одно из 4-х мест:
┌─ 00h ─┐
│ 0│ Предварительно следует устано-
0└─ 3Fh ─┘ вить текущее положеное банки.
┌─ 40h ─┐
│ 1│ По RESET банка ставится в "0"
└─ 7Fh ─┘
┌─ 80h ─┐ 5. Внутренние порты.
│ 2│ Их можно условно разделить на
1└─ BFh ─┘ группу служебных (обмен с вну-
1┌─ C0h ─┐ тренними устройствами ( тайме-
│ 3│ ры, DMA и проч. ) и группу
1└─ FFh ─┘ архитектурных,которыми задает-
ся собственно конфигурация ядра и особен-
ности взаимодеиствия чипа с внешним об-
рамлением на конструктивном аппаратном
плане. Имеются регистры, задающие частоту
тактирования,число WAIT'ов в IORQ,частоту
следования регенерации. Есть даже ре-
гистр, позволяющий изменять логику шины и
длительность выходных фронтов некоторых
сигналов. (Иначе, чем регистром "двойного
назначения" такую ячейку и назвать нель-
зя). С точки зрения программиста с по-
мощью такого регистра очень легко заста-
вить программу "глючить". Авторами же он
задумывался как энергосберегающий.
___
Приведенные сведения являются базовыми
для семейства Z180. Дальнейшее развитие -
- Z180->Z181->Z180 задается рекурентно.
Т.е. берем Z180, добавляем нечто - полу-
чаем Z181. Берем Z181 и что-то еще добав-
ляем - имеем Z182 и т.д. Для обслуживания
дополнений используются "пустоты" в банке
40h. (Ситуация аналогична недокументиро-
ванным командам - фирма оставляет себе
некий задел на будущее, не отраженный в
тех. документации, но открытый умельцами,
и однажды этот задел пускают в ход его
хозяева, ставя крест на творчестве "на-
родных умельцев".)
___
У читателей ZF появились первые вопросы
по TR-R'у. Некий читатель из Пскова ре-
шил, что (C) Nemo изобрела новый процес-
сор. К сожалению, такое эпохальное свер-
шение нам не под силу. Речь идет об се-
рийно выпускаемом чипе фирмы Zilog. Неко-
торые читатели решили, что TR-R не позже,
чем завтра выйдет в родажу. Это тоже не
так. Возможность реализации этой идеи
напрямую связана с развитием рынка Spect-
rum. Если удастся его демонополизировать,
создать эффективно работающие структуры
(клубы, сети), сделать рынок звонким и
прозрачным - тогда это станет возможным.
Основные усилия сейчас направлены именно
в этом направлении - в противном случае
такая архитектура просто повиснет в воз-
духе. Хотелось бы пожелать програмистам
поддерживать только устоявшиеся и общеп-
ринятые архитектурные компоненты - это
застрахует платформу от шараханья и рас-
пыления усилий и средств (и задаст ста-
бильный вектор развития), которых и так
осталось не так много; невозможным также
станет и ее раскол. На данный момент, по
мнению автора, такими архитектурными ком-
понентами является Turbo-режим и 256Kb
памяти. Машины с меньшей памятью и ско-
ростью (1.43 - равняемся на отстающих)
выпускатся больше не будут.
_______________________________
Другие статьи номера:
Похожие статьи:
В этот день... 6 ноября