────────────────────────────────────────
Speccy изнутри.
────────────────────────────────────────
(c) VTS'99
Меня тут попросили рассказать об уст-
ройстве и работе Спектрума. Хоть из меня
учитель хуже некуда, попробую-с. Вообще,
эта просьба была фактически первой реакци-
ей на цикл "Железо - начинающим". Эта об-
ратная связь нужна для того, чтобы я знал,
о чем нужно писать, потому как самому это
определить достаточно трудно (когда сам
все это знаешь ;)
Итак, набросаем блок-схему Speccy.
┌─────┐ ┌─────┐ ┌────┐
│ ПЗУ │ │ ОЗУ ├──┤ ВК ├───< TV-set
└──╥──┘ └──╥──┘ └────┘
┌───┐ ║ ║
│ │ ША (16 бит) ║ ║
│ ╞═════════════╗ ║ ║ внешние
│CPU│ ШД (8 бит) ║ ║ ║ устройства
│Z80╞═════════════╬════╝════╦═══╩═════════╦════ . . .
│ │ ШУ ║ ║ ║
│ ╞═════════════╝ ┌─────╨────┐ ║
└───┘ │ блок │ ║
┌────────────┬──┤управления├─┬──────║───────┐
│ │ └──────────┘ │ ║ │
┌─────┴─────┐ ┌───┴──────┐ ┌────┴────┐ ║ ┌─────┴──────┐
│клавиатура,│ │магнитофон│ │бипер, AY│ ║ │ порты │
│ джойстики │ └──────────┘ └─────────┘ ║ │конфигурации│
└───────────┘ ║ └────────────┘
║
┌─────────────╨──────────┐
дисководы >─────┼ Beta Disk │
│ (контроллер дисковода) │
└────────────────────────┘
Вообще говоря, Beta disk можно отнести
к внешним устройствам. Однако в некоторых
компьютерах он расположен прямо на плате,
и в настоящее время является фактически
системным устройтвом.
Архитектура Спектрума является класси-
ческой, т.е. наиболее простой и понятной.
В основе лежит центральный процессор (CPU
- Central Processor Unit) Z80. Этот про-
цессор был построен на основе i8080, одна-
ко более продуманная концепция и архитек-
тура Z80 позволили значительно упростить
схемотехнику Speccy.
Процессор имеет 8-битную (байтовую) ши-
ну данных (ШД), т.е. выборка данных из па-
мяти происходит последовательно. Отсутсву-
ют также всякого рода конвейеры и кэши, а
память для программ и данных совмещена,
т.е. Z80 - классический фон-неймоновский
процессор.
Отличительной особенностью Z80 является
также весьма насыщенная система команд,
что выделяет его как типичного представи-
теля семейства CISC-процессоров (в отличии
от RISC-семейства, имеющего очень скудную
систему команд, оптимизированную во време-
ни; предположительно, это семейство имеет
более высокую производительность). Это
свойство оказывается очень полезным в ряде
случаев, т.к. дает повышение плотности ко-
да (т.е. экономию памяти), повышение про-
изводительности и возможность программиро-
вания прямо на ассемблере без особых ос-
ложнений. Причем система команд насыщена в
разумных пределах, оптимальных для 8-бит-
ной шины данных (8-битного кода операции -
КОП'а).
Разрядность шины адресз (ША) - 16 бит
(2 байта), что позволяет одновременно ад-
ресовать 64 кб памяти. Для расширения па-
мяти используют специальные "окна", на ко-
торые проецируются различные "страницы"
расширенной памяти. Для управления расши-
рением памяти используются порты конфигу-
рации.
Через шину адреса процессор задает так-
же адрес порта (внешнего по отношению к
нему устройства), т.е. теоретически он мо-
жет обратиться к 65536 портам. На практике
такое их количество не нужно, и использу-
ются более простые (схемотехнически) меха-
низмы адресации портов.
Шина управления (ШУ) представляет из
себя совокупность сигналов управления, с
помощью которых процессор управляет систе-
мой (напр., обращение к памяти), а также
получает дополнительную информацию (напр.,
запрос на прерывание).
Описанные три шины являются необходимым
и достаточным минимумом для организации МП
(микропроцессорной) системы (т.н. "трех-
шинная архитектура") и в общем случае на-
зываются шиной процессора. К ней могут
быть подключены внешние устройства расши-
рения (модем, GS и т.д.).
Память процессор никак не разделяет,
однако физически она может быть постоянной
(ПЗУ - постоянное запоминающее устройство,
ROM - read only memory), информация в ко-
торой храниться независимо от наличия пи-
таюшего напряжения, и может оттуда только
читаться; и оперативной (ОЗУ - оперативное
запоминающее устройство, RAM - random ac-
cess memory), информация в которой хра-
ниться только при наличии питающего напря-
жения.
В ПЗУ хранится программа, запускающаяся
при включении (или сбросе) компьютера. В
Спектруме здесь хранятся интерпретатор
бейсика и TR-DOS.
В ОЗУ загружаются программы и данные
пользователя, которые работают и обрабаты-
ваются процессором.
Кроме того, есть еще один вид памяти -
внешняя (диски, кассеты...). Она использу-
ется для хранения и физического переноса
больших массивов информации, и может быть
очень разнообразной. Однако по отношению к
процессору она является внешним устройс-
твом и сопрягается с его шиной с помощью
контроллера (напр., Beta Disk). Непосредс-
твенно оперировать с нею процессор не мо-
жет, т.е. необходимая информация сначала
загружается в ОЗУ, а потом обрабатывается.
Для формирования изображения на экране
телевизора в ОЗУ отведена специальная об-
ласть памяти - экранная область. В нее
процессор записывает информацию, которая
затем отображается видеоконтроллером (ВК)
на экране TV. Принцип работы ВК основан на
построчном (синхронно с разверткой TV)
чтении информации из экранной области и
преобразовании ее в TV-сигнал, воспринима-
емый и отображаеный телевизором.
Блок управления (БУ) представляет собой
дешифраторы адреса, порты и схемы сопряже-
ния с системными устройствами, необходимы-
ми для его функционирования в минимальной
конфигурации.
Порты конфигурации необходимы для уп-
равления внутренними ресурсами компьютера,
напр., расширенной памятью, турбо-режимом
и т.д.
продолжение следует...
Ну вот, пока хватит. Далее будет более
подробно рассмотрен каждый блок компьютера
в отдельности.
А если кому что непонятно - черкните
пару строк... ;-)
Other articles: