──────────────────────────────────────── 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-сигнал, воспринима- емый и отображаеный телевизором. Блок управления (БУ) представляет собой дешифраторы адреса, порты и схемы сопряже- ния с системными устройствами, необходимы- ми для его функционирования в минимальной конфигурации. Порты конфигурации необходимы для уп- равления внутренними ресурсами компьютера, напр., расширенной памятью, турбо-режимом и т.д. продолжение следует... Ну вот, пока хватит. Далее будет более подробно рассмотрен каждый блок компьютера в отдельности. А если кому что непонятно - черкните пару строк... ;-)