/
Text
ИГРОВАЯ ПРИСТАВКА
SONY PLAYSTATION
История появления наиболее распространенной на сегодняшний день 32-
разрядной приставки SONY PLAYSTATION очень интересна. Все началось,
когда фирма NINTENDO занялась созданием новой игровой консоли с при-
водом CD-ROM, которая сейчас известна как NINTENDO 64. Однако затем
NINTENDO решила оставить привычные картриджи, и CD-ROM остался
у фирмы SONY. Рассудив, что перспективной разработке пропадать не
следует, и учтя опыт выпуска приставок под торговой маркой 3DO, фирма
SONY предложила собственную игровую систему, которая по числу про-
даж обогнала и 3DO и NINTENDO 64.
Основой устройства является процессор, использующий RISC-ядро
MIPS R3000 и функционирующий на частоте 33,9 МГц. Графический про-
цессор представляет собой специальную микросхему, формирующую
цветное изображение размером от 224x240 до 640x480 точек. Видеопро-
цессор способен работать с 15- или 24-разрядным кодированием цвета
и ориентирован на трехмерную полигональную графику.
Для звукового сопровождения применяется программируемый 24-ка-
нальный звуковой процессор CXD2925Q производства фирмы SONY.
В формировании выходного сигнала участвует и двухканальный 16-раз-
рядный дельта-сигма ЦАП, используемый при непосредственном вос-
произведении звуковых фрагментов с компакт-диска.
Программы для приставки хранятся на CD. Для чтения информации
с дисков установлен стандартный двухскоростной привод CD-ROM, кото-
рый управляется посредством отдельного блока, состоящего из контрол-
лера, устройства автоматической регулировки и декодера.
В ПЗУ записана многозадачная операционная система, применяемая
для воспроизведения звука с Audio CD, работы с файловой системой на
дисках с программами, реализации интерфейса с устройствами внешней
памяти типа memory card и управления микросхемами приставки.
В стандартный комплект приставки входят 14-кнопочные игровые пуль-
ты. Четыре кнопки образуют традиционную крестовину, остальные пред-
назначены для управления. Кроме пультов, существует множество допол-
нительных устройств, таких как рули для гонок, джойстики и специальные
приспособления с обратной связью (Force Feedback).
Архитектура и принцип работы. Структурная схема
MIPS R3000
32 бит
32 бит
33,9 МГц
2 Мб
512 Кб
1 Мб
полигональная
1 Мб
32 бит
до 640x480
32767 или 16 млн
4.1. Технические
характеристики
Центральный процессор
Тип
Разрядность шины данных
Разрядность шины адреса
Тактовая частота
Память
ОЗУ
ПЗУ
Видеопамять
Видеопроцессор
Тип графики
Адресное пространство
Разрядность шины данных
Разрешение
Количество цветов
4.2. Архитектура
и принцип работы
В этом разделе рассматривается архитектура игро- ’
вой приставки SONY PLAYSTATION и особеннос-
ти разработки программного обеспечения для нее.
Подробно рассказывается об архитектуре централь-
ного процессора, звукового сопроцессора и видео-
процессора. В каждом разделе описано назначение
внутренних регистров микросхем и их использова-
ние при программировании.
4.2.1. Структурная схема
Внутренняя архитектура приставки SONY PLAY-
STATION несколько сложнее представленных ранее
игровых систем. Главные отличия связаны с тем, что
в PLAYSTATION программы хранятся на CD-ROM,
для которого требуется схема управления. Другой
особенностью являются увеличенные объемы ОЗУ
и ПЗУ, установленных в системе. Структурная схе-
ма игровой приставки SONY PLAYSTATION при-
ведена на рис. 4.1.
Основой схемы является центральный процес-
сор (CPU), в качестве которого используется мик-
росхема CXD8606AQ производства фирмы SONY.
Она содержит ядро RlSC-riponeccopa MIPS R3000A
и два сопроцессора - управления системой (System
Control Coprocessor) и графических вычислений
(Graphics Transformation Engine). К центральному
процессору подсоединяется внутреннее ОЗУ игро-
вой приставки объемом 2 Мб и ПЗУ объемом 512 Кб
с записанной в него операционной системой. Также
имеется соединение с графическим процессором
приставки и декодером, преобразующим поступа-
ющие от CD-ROM сигналы в цифровые данные.
Отдельной задачей центрального процессора яв-
ляется взаимодействие с игровыми пультами и дру-
гими устройствами, подключаемыми к разъемам
JOYSTICK (CN102), SERIAL I/O (CN104) и PA-
RALLEL I/O (CN103). Тактовый генератор цен-
трального процессора стабилизируе гея внешним
резонатором XI частотой 67,73 МГц. Частота для
ядра процессора получается путем деления опор-
ной частоты генератора на 2.
Сопроцессор управления системой предназначен
для обработки сигналов, поступающих от различ-
ных блоков игровой приставки. Его основными
функциями являются обслуживание поступающих
запросов на прерывание, обработка возникающих
исключений и передача информации о них ядру
процессора, управление таймерами и контролле-
ром прямого доступа к памяти.
Сопроцессор графических вычислений занят
быстрым выполнением базовых операций трехмер-
ной графики над матрицами и векторами, чтобы
затем передать полученные данные видеопроцессо-
ру приставки, который в результате сформирует
изображение.
Для синхронизации работы программы в игро-
вой приставке SONY PLAYSTATION установлены
четыре таймера с различной опорной частотой, что
дает возможность жестко привязывать выполнение
требуемых действий к процессу развертки изобра-
жения или отмерять заданные промежутки времени.
С целью быстрого обмена данными между раз-
личными блоками игровой приставки предусмот-
рен контроллер прямого доступа к памяти, позво-
ляющий передавать большие блоки информации
без участия центрального процессора. Наиболее
часто контроллер ПДП применяется для приема
данных от CD-ROM и обмена ими с графическим
процессором.
В модуль видеопроцессора входят непосредствен-
но схема графического процессора, видеопамять
и ЦАП для генерации выходных сигналов основных
цветов. В видеопамяти приставки (объем 1 Мб) хра-
нится информация, необходимая для создания изоб-
ражения. Видеопроцессор получает эту информа-
цию и посылает 24-разрядный цифровой сигнал
цветности и сигналы развертки. Микросхема ЦАП
преобразует цифровой сигнал цветности в три ана-
логовых сигнала для основных цветовых составля-
ющих - R, G, В. Далее эти сигналы вместе с импуль-
сами синхронизации поступают на микросхему
формирователя полного видеосигнала, которая пре-
образует их в полный стандартный телевизионный
сигнал, передаваемый на выход приставки.
115
\ ИГТ! Wj—riW \ТГГГЖП1иШЩНМИМ1т'И1Я1‘МИММММ|М1'1ГГ -
Архитектура и принцип работы. Структурная схема
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
Рис. 4.1. Структурная схема игровой приставки SONY PLAYSTATION
В аудиосистему SONY PLAYSTATION входят
процессор, генерирующий 24-канальное звуковое
сопровождение, буферное ОЗУ и ЦАП. Цифровой
сигнал стереофонического звукового сопровождения
с выходов процессора поступает на входы цифро-ана-
логового преобразователя. Также на входы ЦАП мо-
жет подаваться сигнал от контроллера CD-ROM.
В качестве цифро-аналогового преобразователя ис-
пользуется последовательный однобитовый 16-раз-
рядный дельта-сигма ЦАП. Его задачей является
формирование полного стереофонического сигнала
из данных, приходящих от аудиопроцессора и CD-
ROM. Для хранения информации к звуковому про-
цессору подключено собственное ОЗУ объемом
116
Архитектура и принцип работы. Центральный процессор
512 Кб, которое позволяет ему работать независи-
мо от центрального процессора приставки. Выход-
ные сигналы ЦАП поступают на разъем для под-
ключения телевизора A/V OUT.
Система ввода/вывода игровой приставки SO-
NY PLAYSTATION реализована в микросхеме цен-
трального процессора. Контроллер ввода/выво-
да обрабатывает сигналы, поступающие с разъемов
JOYSTICK и SERIAL I/O. Данные от устройств,
подключаемых к этим разъемам, приходят в после-
довательном формате, бит за битом, и преобразу-
ются контроллером в параллельный код, который
доступен центральному процессору через соответ-
ствующие регистры. Аналогичным образом полу-
ченная от процессорного ядра информация преоб-
разуется в последовательный код, передаваемый
на разъем SERIAL I/O. Для быстродействующих
устройств предусмотрен параллельный двуна-
правленный порт PARALLEL I/O, обеспечиваю-
щий высокоскоростную передачу информации
в параллельном виде. Кроме сигналов шины дан-
ных и управляющих сигналов на разъем парал-
лельного порта выведен ряд тактовых сигналов для
синхронизации обмена.
Блок питания PLAYSTATION также сложнее,
чем линейные стабилизаторы более простых игро-
вых приставок. Он выполнен по схеме импульсно-
го преобразователя напряжения, что обеспечивает
высокую стабильность выходных напряжений и на-
дежную защиту от перегрузок, скачков напряжения
и коротких замыканий. Необходимость применения
такого источника питания связана с повышенным
энергопотреблением устройства, жесткими требо-
ваниями к стабильности питающих напряжений
и с необходимостью формировать несколько вы-
ходных напряжений разной величины.
4.2.2. Центральный процессор
В SONY PLAYSTATION в качестве центрального
процессора используется стандартное ядро RISC-
процессора MIPS R3000A. Основными особеннос-
тями RISC-процессоров являются сокращенный на-
бор команд, где предусмотрены только элементарные
операции, одинаковая длина и структура всех ко-
манд, минимизация числа обращений к памяти.
Кроме того, RISC-процессоры отличаются боль-
шим числом внутренних регистров, наличием кэш-
памяти для команд и данных, развитыми средства-
ми предсказания переходов (за дополнительной
информацией о RISC-процессорах можно обра-
титься к изданиям, указанным в конце книги). Так-
товая частота процессора приставки SONY PLAY-
STATION составляет 33,9 МГц.
Микропроцессор и другие устройства связаны
между собой 32-разрядной шиной адреса, 32-раз-
рядной шиной данных и шиной управления. Адрес-
ное пространство процессора достигает 256 Мб.
Регистры внешних устройств, как это обычно и де-
лается в игровых приставках, адресуются процессо-
ром аналогично ячейкам памяти и находятся в об-
щем адресном пространстве. Структурная схема
центрального процессора приставки SONY PLAY-
STATION приведена на рис. 4.2.
Как видно из рис. 4.2, процессор содержит ариф-
метико-логическое устройство, набор из 32 регис-
тров общего назначения, схему умножения и деле-
ния с собственным 64-разрядным регистром, схему
вычисления адреса и схему сдвига, кэш-память для
команд (объем 4 Кб) и кэш-память для данных
(объем 1 Кб). Взаимодействие блоков центрального
процессора происходит с помощью внутреннего
устройства управления. Следует отметить, что
Шина Шина Шина
адреса денных управления
Рис. 4.2. Структурная схема центрального процессора игровой приставки SONY PLAYSTATION
117
Архитектура и принцип работы. Центральный процессор
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
в центральном процессоре SONY PLAYSTATION
вместо сопроцессора для вычислений с плавающей
точкой есть два специализированных сопроцессо-
ра, созданных именно для данной системы. Сопро-
цессор управления системой (System Control Co-
processor) играет роль дополнительного блока
управления, обрабатывая поступающие сигналы
и формируя на их основе данные, которые исполь-
зуются центральным процессором для контроля
состояния отдельных модулей приставки. Сопро-
цессор графических вычислений (Graphics Trans-
formation Engine) предназначен для быстрого вы-
полнения операций над матрицами и векторами
трехмерной графики. Он не является стандартным
сопроцессором для вычислений с плавающей точкой
и, кроме того, не участвует в формировании выводи-
мого игровой приставкой изображения, а только вы-
полняет необходимые вычисления. Ниже сопроцес-
соры будут описаны более подробно.
Рассмотрим программную архитектуру процессо-
ра, внутренние регистры, систему команд и преры-
ваний. Более полную информацию по архитектуре
процессора MIPS R3000 и программированию мож-
но найти в печатных изданиях и на сайтах Internet,
перечисленных в конце книги.
Регистры процессора
Центральный процессор игровой приставки SONY
PLAYSTATION содержит 32 регистра общего назна-
чения, счетчик команд PC и 64-разрядный регистр
схемы умножеиия/деления, который доступен как
два 32-разрядных регистра с именами HI (старшая
половина) и LO (младшая половина). Список регис-
тров центрального процессора игровой приставки
SON)7 PLAYSTATION приведен в табл. 4.1.
Все регистры процессора идентичны. В качестве
имени регистра используется его номер. Приведен-
ные во второй и третьей, колонках таблицы имена
регистров и особенности их использования не яв-
ляются обязательными, однако их соблюдение об-
леигает другим людям чтение и понимание ваших
программ. Кроме того, если вы собираетесь пользо-
ваться подпрограммами внутреннего ПЗУ пристав-
ки, соблюдение приведенных рекомендаций упрос-
тит составление программ.
Регистры 0 и 31 являются исключением из пра-
вила. Регистр с номером 0 всегда содержит число 0 -
независимо от того, что вы в него записали. Регистр
31 применяется командой jal для сохранения ад-
реса возврата (указателя на команду, следующую за
jal). Команда jalr может использовать для этой
цели любой регистр процессора, однако по умолча-
нию выбирается 31.
Счетчик команд PC во время функционирова-
ния процессора служит для выборки команд. Фак-
тически данный регистр не является обычным,
поскольку изменение его содержимого происхо-
дит при работе процессора или при выполнении
команд перехода.
Умножение и деление осуществляется посред-
ством двух регистров (HI и LO), которые образуют
один 64-разрядный; в системе команд процессора
для него предусмотрены отдельные команды.
Способы адресации
Чтобы процессор работал корректно, в коде коман-
ды следует задать местоположение необходимых
данных при помощи различных методов адресации.
В отличие от рассмотренных ранее, набор методов
адресации RISC-процессора может показаться очень
небольшим.
Регистровая адресация. Наиболее часто исполь-
зуемый метод. В команде указывается регистр про-
цессора, где содержится нужная информация. На-
пример;
or t2,a2,v0 ; t2 = а2 OR vO.
Непосредственная адресация. В команде имеет-
ся непосредственная 16-разрядная константа, кото-
рая применяется в качестве операнда. Например:
addiu t4,t4,$08 ; t4 = t4 + 8.
Индексная адресация. Адрес вычисляется как
сумма содержимого определенного регистра и за-
данного в команде 16-разрядного смещения. На-
пример:
sb vl,txtU(tO) ; Запись
; младшего байта
; из регистра vl
; по адресу
; (tO + txtU) .
Относительная адресация. Этот метод использу-
ется в командах перехода. Атрес следующей выпол-
няемой команды равен сумме текущего значения
в регистре PC и смещения, указанного в команде.
Система команд
Центральный процессор игровой приставки SONY
PLAYSTATION может выполнять 120 различных
команд. Они делятся на следующие функциональ-
ные группы:
• команды пересылки данных: LB, LH, LW, SB, SH,
SW, LUI;
• команды арифметических операций: ADD,
ADDI, ADDU, SUB, SUBI, SUBU, MULT, DIV;
• команды логических операций: AND, OR, XOR, NOR;
• команды сдвига: SLL, SRL, SRA;
• команды сравнения: SLT, SLTU, SLTI, SLTIU;
• команды перехода: J, JR, BEQ, BNE, BGTZ,
BLTZ, BLEZ, BGEZ;
775
Архитектура и принцип работы. Центральный процессор
Таблица 4.1. Регистры центрального процессора игровой приставки SONY PLAYSTATION
Номер регистра Название Описание
0 zero Регистр всегда содержит константу 0
1 Ct Рабочий регистр для временного хранения данных
2 v0 Регистры служат для возврата данных из подпрограмм
3 vl
4 а0 Регистры применяются для передачи аргументов в подпрограмму
5 al
6 a2
7 a3
8 tO Регистры общего назначения, могут произвольно использоваться в программах
9 tl
10 t2
11 t3
12 t4
13 t5
14 t6
15 t7
16 sO Регистровые переменные. Если эти регистры требуются, подпрограмма должна сохранить их содержимое и восстановить его перед возвратом
17 si
18 s2
19 s3
20 s4
21 s5
22 s6
23 s7
24 t8 Регистры общего назначения, могут произвольно задействоваться в программах
25 t9
26 kO Регистры, используемые операционной системой
27 kl
28 9P Регистр применяется как указатель общего назночения
29 sp Регистр играет роль указателя стека
30 fp Регистр выполняет функции указателя кодра либо дополнительной регистровой переменной
31 ra В регистре сохраняется адрес возврата из подпрограммы
pc Счетчик команд
hi, Io Регистры схемы умножения/деления
• команды работы с подпрограммами: JAL, JALR,
BLTZAL, BGEZAL;
• команды управления процессором: МТС 0, MFC 0,
МТС1, MFC1, SYSCALL, BREAK, СОР2, RFE.
Полная информация о системе команд централь-
ного процессора игровой приставки SONY PLAY-
STATION приведена в приложении 1.
Сопроцессор управления системой
Сопроцессор управления системой SONY PLAY-
STATION выполняет функции управления и пред-
назначается для отладочных целей, разрешения
ситуаций при возникновении прерываний и ис-
ключений, а также для анализа сигналов, поступа-
ющих от других модулей.
С точки зрения программирования сопроцессор
управления системой представляет собой 16 регис-
тров с номерами от 0 до 15. Для работы с ними
в системе команд центрального процессора преду-
смотрены две специальные команды.
Команда mt с 0 г s, с 0 г копирует значение из ре-
гистра rs центрального процессора в регистр сОг
сопроцессора. Команда mf с0 rd,cOr пересылает
данные из регистра сопроцессора в регистр rd цен-
трального процессора системы.
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
119
Архитектура и принцип работы. Центральный процессор
Рассмотрим подробнее внутренние регистры со-
процессора управления системой и их использова-
ние при составлении программ.
Регистр О
Имя: INX.
Назначение разрядов.
Рабочий регистр сопроцессора.
Регистр 1
Имя: RAND.
Назначение разрядов.
Рабочий регистр сопроцессора.
Регистр 2
Имя: TLBLO.
Назначение разрядов.
Рабочий регистр процессора, используемый ко-
мандой TLB. Более подробную информацию можно
найти в документации на процессор MIPS R3000.
Регистр 3
Имя: ВРС.
Назначение разрядов.
В регистр записывается адрес точки останова. При
чтении команды, расположенной по указанному ад-
ресу, произойдет генерация исключения, и выполне-
ние программы прекратится.
Регистр 4
Имя: СТХТ.
Назначение разрядов.
Рабочий регистр сопроцессора.
Регистр 5
Имя: BDA.
Назначение разрядов.
В регистр записывается адрес точки останова
в области данных. При чтении или записи данных
по указанному адресу возникнет исключительная
ситуация и выполнение программы будет прервано.
Регистр 6
Имя: PIDMASK.
Назначение разрядов.
Рабочий регистр сопроцессора.
Регистр 7
Имя: DCIC.
Назначение разрядов.
Регистр управляет обработкой точек прерыва-
ния. Для этого в него записывается код со следую-
щими значениями разрядов:
D31, D30 - разряды должны быть равны 1.
D29 — разряд должен быть сброшен.
D28 - если разряд установлен в 1, то точка преры-
вания, заданная в регистре 5 (прерывание при обра-
щении к данным), будет срабатывать при записи.
D27 - если разряд равен 1, то точка прерыва-
ния, указанная в регистре 5, будет срабатывать
при чтении.
D26 - если разряд равен 1, то сопроцессору раз-
решено обслуживать точку прерывания, задаваемую
в регистре 5 (прерывание при обращении к дан-
ным); если разряд сброшен, точка прерывания иг-
норируется.
D25 - если разряд установлен в 1, сопроцессору
разрешено обрабатывать точку прерывания, зада-
ваемую в регистре 3 (прерывание при чтении ко-
манды); в противном случае точка прерывания иг-
норируется.
D24 — разряд должен быть равен 1.
D23 - DO - разряды должны быть сброшены.
Регистр 8
Имя: BADVADDR.
Назначение разрядов.
При возникновении исключения, связанного
с ошибкой адресации при обращении к памяти, здесь
сохраняется адрес, обращение к которому вызвало
ошибку. Регистр доступен только для чтения.
Регистр 9
Имя: BDAM.
Назначение разрядов.
Маска для точки прерывания при обращении
к данным. Когда центральный процессор считыва-
ет или записывает данные, выполняется логическая
операция И над значением адреса и маской, храня-
щейся в регистре, после чего результат сравнивает-
ся со значением из регистра 5. Использование мас-
ки позволяет ставить точку прерывания, которая
срабатывает при обращении к заданному диапазо-
ну адресов.
Регистр 10
Имя: TLBHI/PID.
Назначение разрядов.
Внутренний регистр сопроцессора, применяе-
мый при работе команды TLB. За дополнительной
информацией об этой команде следует обратиться
к документации на процессор MIPS R3000.
Регистр 11
Имя: ВСРМ.
Назначение разрядов.
Маска для точки прерывания при чтении ко-
манд. Регистр используется аналогично регистру 9
(BDAM). Задаваемая маска необходима при обраще-
нии процессора к памяти с целью чтения команды.
120
Архитектура и принцип работы. Центральный процессор
Регистр 12
Имя: SR.
Назначение разрядов.
Регистр состояния системы. Код, записываемый
сюда, определяет режим работы центрального про-
цессора. Назначение разрядов в слове состояния
следующее:
D31 - работа сопроцессора 3 запрещена, если
в этом разряде 0, и разрешена, если 1. В приставке
PLAYSTATION сопроцессор 3 отсутствует, так что
состояние разряда на работу системы не влияет.
D30 - регламентирует работу сопроцессора 2 -
сопроцессора графических вычислений (Graphics
Transformation Engine). Если в разряде 0, функцио-
нирование сопроцессора 2 запрещено, при .1 сопро-
цессор включен.
D29 - работа сопроцессора 1 запрещается при
записи в разряд 0 и разрешается при 1. Сопроцес-
сор 1 - это сопроцессор для вычислений с плаваю-
щей точкой, который отсутствует в игровой при-
ставке.
D28 - изменение разряда необходимо для вы-
полнения ряда привилегированных команд. На ре-
ализацию обычных команд его состояние не влияет.
Если в разряд записан 0, сопроцессор управления
системой (сопроцессор 0) работает в режиме ядра;
в противном случае он функционирует в пользова-
тельском режиме.
D27, D26 - не используются и должны быть
равны 0.
D25 - разряд определяет размещение многобайт-
ных данных в памяти. Если он равен 0, то младший
байт располагается по младшему адресу, если же
установлен в 1, данные записываются в обратном
порядке: старший байт по младшему адресу.
D24, D23 - не используются и равны 0.
D22 - если разряд сброшен, то векторы исключе-
ний хранятся в ОЗУ, в противном случае — в ПЗУ.
D21 - разряд устанавливается, если в программе
встретились две команды TLB подряд.
D20 - ошибка четности кэша.
D19 - разряд показывает результат последней
операции загрузки данных с изоляцией кэша дан-
ных. Установлен, если необходимая информация
содержалась в кэш-памяти.
D18 - когда разряд установлен, в бит контроля
четности кэша записывается 0.
D17 - режим обмена в кэш-памяти. Если бит ра-
вен 1, то кэш-память команд будет играть роль
кэша данных, а кэш данных - кэша команд.
D16 - кэш-память данных работает в обычном
режиме, если в разряде установлен 0, и изолирует-
ся от шин при 1. В обычном режиме все операции
чтения и записи адресуются к кэш-памяти данных,
а не напрямую к памяти приставки.
D15 - D8 - маска прерываний. Если какой-нибудь
разряд установлен, то при поступлении запроса на
прерывание с приоритетом, соответствующим этому
разряду, будет генерироваться исключение. Когда
разряд сброшен, запрос на прерывание игнорируется.
D7, D6 - не используются и равны 0.
D5 - при возникновении исключения здесь со-
храняется состояние разряда D3.
D4 - при возникновении исключения здесь со-
храняется состояние разряда D2.
D3 - при возникновении исключения в разряде
устанавливается 1. Команда г f е копирует сюда бит
из разряда D5.
D2 - при возникновении исключения разряд
сбрасывается. Команда rf е копирует в него бит из
разряда D4.
D1 - 0 - нормальный уровень привилегий; 1 -
уровень привилегий ядра. При возникновении ис-
ключения этот разряд копируется в разряд D3. Ко-
манда rfe помещает сюда бит из разряда D3.
D0 - 0 — прерывания разрешены; 1 - все преры-
вания запрещены. При возникновении исключения
состояние этого разряда сохраняется в разряде D2.
Команда rfe копирует сюда бит из разряда D2.
Регистр 13
Имя: CAUSE.
Назначение разрядов.
Регистр информации об исключении доступен
только для чтения и содержит информацию о по-
следнем возникшем исключении. Назначение раз-
рядов в регистре следующее:
D31 - если разряд установлен в 1, то последнее
исключение указывает на команду перехода, в этом
случае при возврате из процедуры обработки ис-
ключения надо пропустить четыре байта.
D30 - не используется и равен 0.
D29, D28 - номер сопроцессора, выполнение ко-
манды которого вызвало возникновение исключе-
ния, поскольку работа не была разрешена установ-
кой соответствующего разряда в регистре SR.
D27 - D16 - не используются и равны 0.
D15 - D8 - сигналы прерываний. Разряд уста-
навливается в 1, если поступил запрос на прерыва-
ние. Разряды D8 и D9 доступны также и для записи,
что позволяет генерировать запросы на прерывание
программным путем, записывая нужное значение
в регистр. Чтобы запрос был обработан процессо-
ром, необходимо установить соответствующий раз-
ряд в регистре SR.
D7 - не используется и равен 0.
D6 — D2 - код последнего исключения:
0 - запрос на прерывание;
1 - модификация tlb;
2 - загрузка tlb;
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
521
Архитектура и принцип работы. Центральный процессор
3 - запись tlb;
4 - ошибка адреса при чтении данных или
выборке команды;
5 - ошибка адреса при записи (выход за пре-
делы установленного сегмента или непра-
вильное выравнивание данных);
6 - сбой на шине при выборке команды;
7 - сбой на шине при чтении данных;
8 - выполнена команда SYSCALL;
9 - точка останова;
10 - зарезервированная команда;
11 — сопроцессор недоступен;
12 - арифметическое переполнение.
DI, D0 - не используются и сброшены в 0.
Регистр 14
Имя: ЕРС.
Назначение разрядов.
Регистр содержит адрес возврата из процедуры
обработки исключения. Если в регистре CAUSE
разряд D32 установлен, возврат выполняется по ад-
ресу ЕРС+4.
Регистр 15
Имя: PRID.
Назначение разрядов.
Регистр доступен только для чтения и содержит
идентификатор, определяющий тип и модель про-
цессора. Идентификатор процессора возвращается
в разрядах D15 - D8, а в разрядах D7 - D0 содер-
жится номер версии. Старшие разряды регистра не
используются и сброшены.
Регистр 16
Имя: ERREG.
Назначение.
Рабочий регистр сопроцессора управления сис-
темой.
Как видно из описания внутренних регистров со-
процессора управления системой, его функции в иг-
ровой приставке SONY PLAYSTATION аналогичны
функциям устройства управления микропроцессо-
ров, использующихся в других приставках.
Сопроцессор графических вычислений
Перейдем к рассмотрению второго сопроцессора,
называемого сопроцессором графических вычисле-
ний (Graphics Transformation Engine, GTE).
Он применяется при любых расчетах трехмер-
ной графики, таких как перспективная проекция,
вращение п масштабирование объектов, вычисле-
ние освещенности и др. Для действий над вектора-
ми и матрицами предназначен специальный набор
операций, которые сопроцессор выполняет гораздо
быстрее центрального процессора приставки. Со-
процессор подключен к центральному процессору
системы как СОР2 и не занимает адресов в про-
странстве CPU. Для работы с ним в системе команд
центрального процессора предусмотрены специ-
альные команды.
Знакомство с трехмерной графикой
Прежде чем говорить о принципах функциониро-
вания данного сопроцессора, системе команд и на-
значении внутренних регистров, напомним основ-
ные соотношения, используемые в трехмерной
графике. Конечно, здесь мы представим лишь базо-
вые понятия, дополнительную информацию можно
найти в соответствующей литературе.
Чтобы определить местоположение точки в трех-
мерном пространстве, обычно используют декартову
систему координат, изображенную на рис. 4.3. В этой
системе координат любая точка в пространстве может
быть определена набором из трех значений, отража-
ющих ее позицию вдоль каждой из осей. Обычно они
указываются в угловых скобках, например <1,2,3>.
Рис. 4.3. Декартова система координат
в трехмерном пространстве
Точка - это базовый примитив трехмерной графи-
ки, но строить изображение из точек слишком утоми-
тельно. Поэтому нам потребуются вершины и грани.
Вершины (vertices) представляют собой точки,
которые используются для задания положения та-
ких объектов, как грани и сети, в трехмерном про-
странстве. Вершины, подобно точкам, указывают
местонахождение, однако сами невидимы.
Грань (face) - это плоский многоугольник, зада-
ваемый своими вершинами. Каждая вершина уста-
навливает угол грани. Все вершины грани должны
находиться в одной и той же плоскости, формируя
плоскую грань. Грань, вершины которой принадле-
жат разным плоскостям, является неправильной,
и нарисовать ее нереально.
Простейшая грань определяется тремя вершина-
ми. Получившаяся треугольная грань удобна для
работы: во-первых, задать три вершины так, чтобы
они не принадлежали одной и той же плоскости,
невозможно, следовательно, грань всегда будет
правильной; во-вторых, графический процессор
использует именно треугольные грани, и, если вы
122
Архитектура и принцип работы. Центральный процессор
укажете более сложные грани, для вывода на экран
их все равно придется разделять на треугольники.
Сеть (mesh) - это набор соединенных граней, как
правило, описывающий один объект в сцене. Сеть
может иметь одну или много граней.
Попробуем смоделировать трехмерные объекты,
создавая грани и объединяя их в сеть. Для этого
нужно познакомиться с базовыми преобразования-
ми трехмерных объектов. Преобразования рассмат-
риваются применительно к отдельной точке. Если
вы захотите выполнить такие операции для грани
или сети, потребуется преобразовать каждую из
вершин объекта.
Вращение выполняют, умножая определяющий
точку вектор на матрицу вращения. Матрица вра-
щения - это матрица размером 3x3, которая состо-
ит из трех единичных векторов, ортогональных друг
к другу. Сведения о том, каким образом получают
матрицы и как выполняется умножение вектора на
матрицу, можно почерпнуть из учебника математи-
ки. Здесь мы приведем только конечный результат:
Вращение
на угол А
вокруг оси X
1 О О
О cos A -sin А
О sin A cos А
Вращение
на угол В
вокруг оси У
cosB 0 sinB
О 1 О
-sin В 0 cos В
Вращение на
угол С
вокруг оси Z
cosC -sinC О
sin С cos С О
О 0 1
Чтобы выполнить вращение вокруг нескольких
осей одновременно, следует перемножить соответ-
ствующие матрицы, причем результат зависит от
порядка множителей. К сожалению, сопроцессор
графических вычислений не в состоянии вычис-
лять тригонометрические функции - этим должен
заниматься центральный процессор системы.
Перемещение объекта осуществляется путем
сложения вектора, задающего вершину, с вектором,
определяющим направление и дальность передви-
жения. Еще раз напоминаем, что в операциях с мат-
рицами и векторами очень важен порядок их вы-
полнения. Изменив последовательность операндов,
вы получите совсем другой результат.
Теперь, ознакомившись с основными математи-
ческими понятиями, перейдем к рассмотрению их
реализации в сопроцессоре игровой приставки
SONY PLAYSTATION.
Регистры сопроцессора
графических вычислений
Сопроцессор графических вычислений игровой при-
ставки SONY PLAYSTATION имеет 64 внутренних
регистра (32 управляющих и 32 регистра данных),
которые используются при расчетах. Рассмотрим
сначала управляющие регистры, предназначенные
для хранения различных констант.
Регистр О
Имя: R11R12.
Назначение.
Элементы 11 и 12 матрицы вращения. Элемент 12
занимает разряды D32 - D16, а элемент И - разря-
ды D15 - DO. Числа хранятся в формате (1, 3, 12):
один знаковый разряд, три разряда для целой части
числа и 12 разрядов для дробной.
Регистр 1
Имя : R13R21.
Назначение.
Элементы 13 и 21 матрицы вращения. Эле-
мент 21 занимает разряды D32 - D16, а элемент
13 - разряды D15 - DO. Числа хранятся в форма-
те (1, 3, 12).
Регистр 2
Имя: R22R23.
Назначение.
Элементы 22 и 23 матрицы вращения. Элемент 23
занимает разряды D32 - D16, а элемент 22 - разря-
ды D15 - DO. Числа хранятся в формате (1, 3,12).
Регистр 3
Имя: R31R32.
Назначение.
Элементы 31 и 32 матрицы вращения. Эле-
мент 32 занимает разряды D32 - D16, а элемент
31 - разряды D15 - DO. Числа хранятся в форма-
те (1, 3, 12).
Регистр 4
Имя: R33.
Назначение.
Элемент 33 матрицы вращения. Занимает разря-
ды D15 - DO. Старшие 16 разрядов регистра не ис-
пользуются. Число хранится в формате (1, 3, 12).
Регистр 5
Имя: TRX.
Назначение.
Элемент X вектора перемещения. Число хранит-
ся в формате (1, 31, 0).
Регистр 6
Имя: TRY.
Назначение.
Элемент Y вектора перемещения. Число хранит-
ся в формате (1, 31, 0).
Регистр 7
Имя: TRZ.
Назначение.
Элемент Z вектора перемещения. Число хранит-
ся в формате (1, 31, 0).
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
123
Архитектура и принцип работы. Центральный процессор
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
Регистр 8
Имя: L11L12.
Назначение.
Элементы 11 и 12 матрицы освещения. Элемент 12
занимает разряды D32 - D16, а элемент 11 - разря-
ды D15 - DO. Числа хранятся в формате (1, 3, 12):
один знаковый разряд, три разряда для целой час-
ти числа и 12 разрядов для дробной.
Регистр 9
Имя: L13L21.
Назначение.
Элементы 13 и 21 матрицы освещения. Элемент 21
занимает разряды D32 - D16, а элемент 13 - разряды
D15 - DO. Числа хранятся в формате (1,3, 12).
Регистр 10
Имя: L22L23.
Назначение.
Элементы 22 и 23 матрицы освещения. Элемент 23
занимает разряды D32 - D16, а элемент 22 - разряды
D15 - D0. Числа хранятся в формате (1,3, 12).
Регистр 11
Имя: L31L32.
Назначение.
Элементы 31 и 32 матрицы освещения. Элемент 32
занимает разряды D32 - D16, а элемент 31 - разряды
D15 - D0. Числа хранятся в формате (1, 3, 12).
Регистр 12
Имя: L33.
Назначение.
Элемент 33 матрицы освещения. Занимает раз-
ряды D15 - D0. Старшие 16 разрядов регистра не
используются. Число хранится в формате (1,3,12).
Регистр 13
Имя: RBK.
Назначение.
Красная составляющая цвета фона. Число хра-
нится в формате (1, 19, 12).
Ретстр 14
Имя: GBK.
Назначение.
Зеленая составляющая цвета фона. Число хра-
нится в формате (1, 19, 12).
Ретстр 15
Имя: ВВК.
Назначение.
Синяя составляющая цвета фона. Число хранит-
ся в формате (1, 19, 12).
Регистр 16
Имя: LR1LR2.
Назначение.
Элементы 1 и 2 красной составляющей цветовой
матрицы освещения. Элемент 2 занимает разряды
D32 - D16, а элемент 1 - разряды D15 - D0. Числа
хранятся в формате (1, 3, 12): один знаковый раз-
ряд, три разряда для целой части числа и 12 разря-
дов для дробной.
Регистр 17
Имя: LR3LG1.
Назначение.
Элемент 3 красной составляющей и элемент 1 зе-
леной составляющей цветовой матрицы освещения.
Зеленая составляющая занимает разряды D32 -
D16, а красная - разряды D15 - D0. Числа хранят-
ся в формате (1, 3, 12).
Регистр 18
Имя: LG2LG3.
Назначение.
Элементы 2 и 3 зеленой составляющей цветовой
матрицы освещения. Элемент 3 занимает разряды
D32 - D16, а элемент 2 - разряды D15 - D0. Числа
хранятся в формате (1,3, 12).
Регистр 19
Имя: LB1LB2.
Назначение.
Элементы 1 и 2 синей составляющей цветовой
матрицы освещения. Элемент 2 занимает разряды
D32 - D16, а элемент 1 - разряды D15 - D0. Числа
хранятся в формате (1, 3, 12).
Регистр 20
Имя: LB3.
Назначение.
Элемент 3 синей составляющей цветовой матри-
цы освещения. Занимает разряды D15 - D0. Стар-
шие 16 разрядов регистра не используются. Число
хранится в формате (1, 3, 12).
Регистр 21
Имя: RFC.
Назначение.
Красная составляющая общей освещенности.
Число хранится в формате (1, 27, 4).
Регистр 22
Имя: GFC.
Назначение.
Зеленая составляющая общей освещенности.
Число хранится в формате (1, 27, 4).
124
Архитектура и принцип работы. Центральный процессор
Регистр 23
Имя: BFC.
Назначение.
Синяя составляющая общей освещенности. Чис-
ло хранится в формате (1, 27, 4).
Регистр 24
Имя: OFX.
Назначение.
Смещение экрана по оси X.
Регистр 25
Имя: OFY.
Назначение.
Смещение экрана по оси Y.
Регистр 26
Имя: FL
Назначение.
Расстояние до плоскости проекции. Число хра-
нится в разрядах D16 - DO в формате (0, 16, 0).
Регистр 27
Имя: DQA.
Назначение.
Параметр, задающий глубину сцены. Число хра-
нится в разрядах D16 - D0 в формате (0, 7, 8).
Регистр 28
Имя: DQB.
Назначение.
Параметр, задающий глубину сцены. Число хра-
нится в разрядах D16 - D0 в формате (0, 7, 8).
Регистр 29
Имя: ZSF3.
Назначение.
Множитель Z3, обычно равен 1/3. Число хранит-
ся в разрядах D16 - D0 в формате (1, 3, 12).
Регистр 30
Имя: ZSF4,
Назначение.
Множитель Z4, обычно равен 1/4. Число хранит-
ся в разрядах D16 - D0 в формате (1, 3, 12).
Регистр 31
Имя: FLAG.
Назначение.
Состояние отдельных разрядов регистра сообща-
ет о результате выполнения последней операции
сопроцессора и о возникновении ошибок.
Теперь рассмотрим назначение 32 регистров дан-
ных. Эти регистры служат для хранения данных,
'г предназначенных для обработки, и результатов.
Регистр 0
Имя: VXY0.
Назначение.
В регистре хранятся значения координат х и у
для первого вектора. Координата у записывается
в разряды D31 - D16, а координата х-в разряды
D15 - D0. Числа могут храниться в формате (1, 3,
12) или (1, 15, 0).
Регистр 1
Имя: VZ0.
Назначение.
В регистре хранится значение координаты z для
первого вектора. Координата записывается в разряды
D15 - D0 в формате (1, 3, 12) или (1, 15, 0). Стар-
шие 16 разрядов регистра не используются.
Регистр 2
Имя: VXY1.
Назначение.
В регистре хранятся значения координат х и у
для второго вектора. Координата у записывается
в разряды D31 - D16, а координата х-в разряды
D15 - D0. Числа могут храниться в формате (1, 3,
12) или (1, 15, 0).
Регистр 3
Имя: VZ1.
Назначение.
В регистре хранится значение координаты z для
второго вектора. Координата записывается в раз-
ряды D15 - D0 в формате (1, 3, 12) или (1, 15, 0).
Старшие 16 разрядов регистра не используются.
Регистр 4
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
Имя: VXY2.
Назначение.
В регистре хранятся значения координат х и у
для третьего вектора. Координата у записывается
в разряды D31 - D16, а координата х-в разряды
D15 - D0. Числа могут храниться в формате (1, 3,
12) или в формате (1, 15, 0).
Регистр 5
Имя: VZ2.
Назначение.
В регистре хранится значение координаты z для
третьего вектора. Координата записывается в раз-
ряды D15 - D0 в формате (1, 3, 12) или (1, 15, 0).
Старшие 16 разрядов регистра не используются.
125
Архитектура и принцип работы. Центральный процессор
Регистр 6
Имя: RGB.
Назначение.
В регистре хранится код цвета. Разряды D31 - D24
не используются, в разрядах D23 - D16 содержится
код для синей составляющей, в разрядах D15 - D8 -
для зеленой и в разрядах D7 - DO - для красной.
Регистр 7
Имя: OTZ.
Назначение.
В младших 16 разрядах регистра хранится сред-
нее значение z в формате (0, 15, 0). Регистр досту-
пен только для чтения.
Регистр 8
Имя: IR0.
Назначение.
Регистр для промежуточного результата. В стар-
ших 16 разрядах содержится копия знакового бита,
а в младших - число в формате (1,3, 12).
Регистр 9
Имя: IR1.
Назначение.
Регистр для промежуточного результата. В стар-
ших 16 разрядах содержится копия знакового бита,
а в младших - число в формате (1, 3, 12).
Регистр 10
Имя: IR2.
Назначение.
Регистр для промежуточного результата. В стар-
ших 16 разрядах содержится копия знакового бита,
а в младших — число в формате (1,3, 12).
Регистр 11
Имя: IR3.
Назначение.
Регистр для промежуточного результата. В стар-
ших 16 разрядах содержится копия знакового бита,
а в младших - число в формате (1, 3, 12).
Регистр 12
Имя: SXY0.
Назначение.
Элемент очереди для хранения экранных коорди-
нат х и у. Координата у хранится в разрядах D31 -
D16 в формате (1,15,0), а координата х — в разрядах
D15 - D0 в аналогичном формате. Очередь работает
по принципу FIFO, то есть сначала считывается пер-
вый записанный элемент.
Регистр 13
Имя: SXY1.
Назначение.
Элемент очереди для хранения экранных коор-
динат х и у.
Регистр 14
Имя: SXY2.
Назначение.
Элемент очереди для хранения экранных коор-
динат х и у.
Регистр 15
Имя: SXYP.
Назначение.
Элемент очереди для хранения экранных коор-
динат х и у.
Регистр 16
Имя: SZ0.
Назначение.
Элемент очереди для хранения экранной коорди-
наты z. Она хранится в разрядах D15 - D0 в форма-
те (0,16, 0) и всегда является положительной. Стар-
шие разряды регистра не используются.
Регистр 17
Имя: SZ1.
Назначение.
Элемент очереди для хранения экранной коор-
динаты z.
Регистр 18
Имя: SZ2.
Назначение.
Элемент очереди для хранения экранной коор-
динаты z.
Регистр 19
Имя: SZP.
Назначение.
Элемент очереди для хранения экранной коор-
динаты z.
Регистр 20
Имя: RGB0.
Назначение.
Элемент очереди для хранения цветовых кодов.
Формат хранения аналогичен используемому в ре-
гистре 6 (RGB).
Регистр 21
Имя: RGB1.
Назначение.
Элемент очереди для хранения цветовых кодов.
Формат хранения аналогичен используемому в ре-
гистре 6 (RGB).
Регистр 22
Имя: RGB2.
Назначение.
Элемент очереди для хранения цветовых кодов.
Формат хранения аналогичен используемому в ре-
гистре 6 (RGB).
126
Архитектура и принцип работы. Центральный процессор
- wiMiSjas^^JWs ияда-гт-,:™.® / . • iK«ae*s™wsiss<si^
Регистр 23
Имя: RES1.
Назначение.
Регистр не используется и недоступен для про-
грамм.
Регистр 24
Имя: МАСО.
Назначение.
Регистр хранения результата. Числа содержатся
в формате (1, 31, 0).
Регистр 25
Имя: МАС1.
Назначение.
Регистр хранения результата. Числа содержатся
в формате (1, 31, 0).
Регистр 26
Имя: МАС2.
Назначение.
Регистр хранения результата. Числа содержатся
в формате (1, 31, 0).
Регистр 27
Имя: МАСЗ.
Назначение.
Регистр хранения результата. Числа содержатся
в формате (1,31,0).
Регистр 28
Имя: IRGB.
Назначение.
Регистр ввода 15-разрядного кода цвета. В ре-
гистр записывается 15-разрядный код, при этом
значение синей составляющей определяется раз-
рядами D14 - D10, значение зеленой - разряда-
ми D9 - D5, а значение красной - разрядами D4 -
DO. Сразу после сохранения значения каждой со-
ставляющей цвета автоматически преобразуются
в формат (1, 11, 4) и помещаются во внутренние
регистры сопроцессора (IR1, IR2 и IR3). Регистр
доступен только для записи.
Регистр 29
Имя: ORGB.
Назначение.
Регистр чтения 15-разрядного кода цвета. При
чтении из этого регистра содержимое внутренних
регистров IR1, IR2 и IR3 автоматически преобра-
зуется в 5-разрядные коды для цветовых составля-
ющих, из которых получается значение в формате,
аналогичном используемому в регистре 28 (IRGB).
Регистр доступен только для чтения.
Регистр 30
Имя: LZCS. ,
Назначение.
Регистр данных для счетчика ведущих нулей.
Сюда записывается число в формате (1, 31, 0),
а результат возвращается в регистре 31 (LZCR). Ре-
гистр доступен только для записи.
Регистр 31
Имя: LZCR.
Назначение.
Счетчик ведущих нулей. При чтении из этого ре-
гистра возвращается 6-разрядное число, которое
указывает количество ведущих нулей в числе, запи-
санном в регистр 30 (LZCS). Если число в регис-
тре 30 отрицательно, то передается число ведущих
единиц. Регистр доступен только для чтения.
После приведенного описания регистров сопро-
цессора графических вычислений игровой пристав-
ки SONY PLAYSTATION следует дать несколько
пояснений. Во-первых, чтобы лучше разобраться
с форматами хранения данных, нужно обратиться
к рис. 4.4. Во-вторых, необходимо учитывать, что не-
которые регистры образуют очереди. Работа с этими
очередями ведется таким образом: когда вычисля-
ется очередное значение, оно помещается в по-
следний регистр очереди, а все элементы очереди
1 3 12
Зной Целая часть Дробная чость
15 14 12 11
Знак Целое число
3’ 30 О
Формот (1, 31. О)
1 27 4
Формот (1. 3. 12)
1 19 12
Знак Целая часто Дробная часть
31 30 12 11 0 Формот (1, 19. 12) 1 15 16
Знак Целая чость Дробная часть
31 30 16 15 О
Формот (1. 15. 16)
Знак Целая чость Дробная чость
31 30 4 3 0
Формот (1, 19. 12)
Целое
число
15 О
Формат (О. 16, О)
Рис. 4.4. Форматы данных для сопроцессора графических вычислений
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
127
Архитектура и принцип работы. Адресное пространство
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
сдвигаются на одну позицию к началу. Например,
новое значение координат х и у будет помещено
в регистр SXYP. Значение, которое здесь хранилось,
копируется в регистр SXY2, значение из регистра
SXY2 - в регистр SXY1 и значение из регистра
SXY1 - в регистр SXY0.
Работа с сопроцессором
графических вычислений
Ниже рассматриваются принципы взаимодействия
ядра центрального процессора игровой приставки
SONY PLAYSTATION и сопроцессора графических
вычислений. С этой целью в систему команд цен-
трального процессора введены шесть команд для об-
мена данными и одна команда для передачи сопро-
цессору кода выполняемой операции.
Команды LWC2 и SWC2 позволяют загружать дан-
ные из памяти в регистры данных сопроцессора и за-
писывать содержимое этих регистров в память. Ко-
манды МТС 2 и MFC 2 предназначены для передачи
чисел из регистров центрального процессора в регис-
тры данных сопроцессора и обратно.
Обмен информацией между управляющими ре-
гистрами сопроцессора графических вычислений
и регистрами центрального процессора осущест-
вляется с помощью команд СТС2 и CFC2.
Команда СОР2 служит для пересылки сопроцес-
сору команд, которые необходимо выполнить. Пос-
ле нее указывается 25-разрядный код команды со-
процессора графических вычислений.
Перед тем как центральный процессор обратит-
ся к сопроцессору графических вычислений, раз-
ряд 30 в регистре SR сопроцессора управления сис-
темой следует установить в 1, в противном случае
обращение к сопроцессору вызовет возникновение
исключения. Команды сопроцессора графических
вычислений нельзя использовать в процедурах об-
служивания исключений и запросов на прерывание.
Если очередная команда обращения к сопроцес-
сору будет выполнена центральным процессором
до того, как сопроцессор закончит обработку преды-
дущей команды, центральный процессор остановит-
ся, ожидая окончания работы сопроцессора.
Система команд сопроцессора
графических вычислений
Ниже мы расскажем о системе команд сопроцес-
сора. Знакомство начнем с формата команды, изоб-
раженного на рис. 4.5.
Любая команда представляет собой 25-разрядное
двоичное число. В этом числе выделяется несколько
полей, состояние разрядов в которых может влиять
на местоположение операндов команды и алгоритм
вычисления. Опишем поля более детально:
sf - 0 - вычисления; 1 - вычисления со значени-
ями из регистров IR;
шх - 00 - умножение на матрицу вращения; 01 -
умножение на матрицу освещенности; 10 -
умножение на матрицу цвета; 11 - не исполь-
зуется;
v - 00 - операнд в векторе 10; 01 - операнд в век-
торе II; 10 - операнд в векторе 12; И - опе-
ранд в регистре IR;
cv - 00 - прибавление вектора перемещения TR;
01 - прибавление вектора фонового цвета
ВК; 10 - прибавление вектора удаленного
освещения FAR (работает неправильно); 11 -
прибавление вектора отсутствует;
1m - 0 - нет ограничений на результат; 1 - резуль-
тат ограничен нулем.
Более подробные сведения о системе команд со-
процессора графических вычислений игровой при-
ставки SONY PLAYSTATION можно найти в In-
ternet.
4.2.3. Адресное пространство
В этом разделе описывается распределение памяти,
установленной в игровой приставке SONY PLAY-
STATION. Блоки, рассмотрению которых посвяще-
ны следующие разделы, например видеопамять, здесь
представлены очень кратко. ПЗУ, имеющееся в иг-
ровой приставке, и записанная в нем операционная
система анализируются более развернуто, посколь-
ку эти сведения необходимы для понимания функ-
ционирования основных узлов устройства.
Итак, в приставке SONY PLAYSTATION память
применяется центральным процессором, видеопро-
цессором, звуковым процессором и процессором
управления приводом CD-ROM.
К центральному процессору подключено ПЗУ,
в котором записана операционная система, и 2 Мб
оперативной памяти, которые используются про-
граммами. ПЗУ и ОЗУ вместе составляют основ-
ную память игровой приставки. Оперативная память
располагается в самом начале адресного простран-
ства (адреса 0000000Oh - 002 00 000h), однако
часто в программах можно увидеть адрес, начина-
ющийся с 8 Oh. Дело в том, что центральный процес-
сор преобразует логические 32-разрядные адреса
24 20 1918 1716 1514 1312 11 10 9
Код комонды SF MX V CV Im Код комондо
Рис. 4.5. Формат команды сопроцессора графических вычислений
128
Архитектура и принцип ра боты. Адресное .пространство
в физические адреса установленной памяти. При
этом адрес, начинающийся с 8 Oh, разрешает рабо-
ту кэш-памяти команд. Следовательно, память рас-
полагается и по адресам 8000000 Oh- 8020000Oh.
Первые 64 Кб задействуются ядром операционной
системы, так что первый доступный для размеще-
ния программы адрес - 8001000Oh.
Регистры различных контроллеров игровой при-
ставки включены в общее адресное пространство,
где для них имеется отдельная область. Эти регис-
тры не являются частью ОЗУ или ПЗУ, но при про-
граммировании работа с ними ничем не отличается
от работы с памятью.
Видеопроцессор для хранения информации
о формируемом изображении использует видео-
ОЗУ объемом 1 Мб. Оно не является частью обще-
го адресного пространства и доступно только через
регистры видеопроцессора или посредством кон-
троллера прямого доступа к памяти.
Звуковой процессор также применяет собствен-
ную память объемом 256 Кб, одна часть которой
зарезервирована для звуковых данных, поступаю-
щих с CD-ROM, а другая хранит данные, необхо-
димые внутренним схемам звукового процессора
при формировании аудиосигналов.
Еще одно ОЗУ объемом 256 Кб подключено
к контроллеру управления приводом CD-ROM.
Эта память играет роль буфера, ускоряющего обра-
щение к CD-ROM из программ.
Рассмотрим более подробно операционную сис-
тему, которая записана в ПЗУ, игровой приставки.
Операционная система SONY PLAYSTATION
Операционная система приставки SONY PLAY-
STATION представляет собой 32-разрядную много-
задачную операционную систему, предназначенную
для управления аппаратурой игровой приставки,
работы с файловой системой на компакт-диске
и осуществления межпоточного взаимодействия
в программах.
Вызовы функций операционной системы произ-
водятся через точку входа с адресом В Oh. Номер
функции передается через регистр 11 центрально-
го процессора. Таким образом, для обращения
к функции операционной системы необходимо за-
писать ее номер в регистр 11 и выполнить команду
jal $000000В0.
Функция openevent
Номер: 0 8h.
Параметры:
аО - класс события;
al - спецификатор события;
а2 — режим события;
аЗ - адрес функции, которая будет выпол-
няться при возникновении события.
Результат:
v0 - дескриптор события или -1, если про-
изошла ошибка.
Описание.
Данная функция создает структуру описателя собы-
тия и добавляет' ее в таблицу обрабатываемых собы-
тий. Параметры, помещаемые в регистры АО - А2, рас-
сматриваются ниже. Возвращаемый дескриптор
события в дальнейшем используется при обращении
к другим функциям.
Класс события определяет, какое устройство вы-
зывает возникновение данного события. Старший
байт задает группу событий:
FFh - события межпоточного взаимодействия;
F4h - события системы ввода/вывода;
F3h - пользовательские события;
F2h - счетчики;
F0h - события аппаратуры.
Младшие три байта позволяют более детально
охарактеризовать событие в зависимости от его
группы. Для событий, возникающих по сигналам от
аппаратуры, возможны следующие значения:
F0000001h- прерывание по кадровому синхро-
импульсу (VBLANK);
F0000002h- сигнал от видеопроцессора (GPU);
F0000003h- сигнал от дешифратора CD-ROM;
F0000004h - контроллер прямого доступа к па-
мяти;
F0000005h - RTC0;
F0000006h - RTC1;
F0000007h - RTC2;
F0000008h- игровой пульт;
F0000009h- звуковой процессор:
FOOOOOOAh - параллельный порт;
FOOOOOOBh - последовательный порт;
FOOOOOlOh- исключение;
FOOOOOllh- карта памяти (memory card);
F0000012h - карта памяти (memory card);
F0000013h - карта памяти (memory card).
Для событий таймера в старшем байте, как уже
упоминалось, содержится число F2h, а в младшем
байте — номер канала таймера от 0 до 3.
Система ввода/вывода использует события, вы-
зываемые картой памяти memory card с классом
F4 0 0 0 0 0lh и математической библиотекой с клас-
сом F4000002h.
Спецификатор служит для более точного опреде-
ления действия, вызвавшего возникновение события.
Наиболее часто применяются следующие специфи-
каторы:
0 0 0lh - счетчик равен нулю;
0002h - работа прервана;
0004h - конец ввода/вывода;
0008h - файл закрыт;
0010b - подтверждение приема команды;
002 Oh - выполнение команды завершено;
129
-32)
Архитектура и принцип работы. Адресное пространство
О04Oh - данные готовы;
0 0 8 Oh - конец данных;
010 Oh - время истекло;
020Oh - неизвестная команда;
040Oh - конец буфера чтения;
0800h - конец буфера записи;
lOOOh - прерывание;
2 0 0 Oh - новое устройство;
4000h - команда syscall;
03 01h - ошибка в библиотеке libmat'h;
03 02h - неправильный диапазон в библиотеке
libmath.
И наконец, режим события определяет тип вы-
зываемого обработчика. Если этот параметр равен
lOOOh, обслуживается запрос на прерывание или
исключение; если же параметр равен 200Oh, сразу
вызывается обработчик события.
Функция closeevent
Номер: 09h.
Параметры:
аО - дескриптор события.
Результат:
v0 - 1 при удаче, 0 при ошибке.
Описание.
Функция удаляет структуру описателя события
из таблицы обрабатываемых событий.
Функция enableevent
Номер: OCh.
Параметры:
аО - дескриптор события.
Результат:
v0 - 1 при удаче, 0 при ошибке.
Описание.
Функция разрешает обработку события из табли-
цы, определяемого заданным дескриптором. Чтобы
в программе могло обслуживаться какое-либо со-
бытие, необходимо с помощью функции open-
event сначала создать запись о нем, а затем по-
средством функции enableevent разрешить его
обработку.
Функция disableevent
Номер: ODh.
Параметры:
аО - дескриптор события.
Результат:
v0 - 1 при удаче, 0 при ошибке.
Описание.
Функция запрещает обслуживание события с ука-
занным дескриптором. Из таблицы событий запись
не удаляется, так что в дальнейшем можно снова
разрешить обработку этого события, вызвав функ-
цию enableevent, или удалить структуру описа-
ния события функцией closeevent.
Функция open
Номер: 32h.
Параметры:
аО - указатель на имя файла;
al - режим работы с файлом.
Результат:
v0 - дескриптор файла или -1 при ошибке.
Описание.
Функция открывает файл (на компакт-диске или
на устройстве memory card) для дальнейшей работы
с ним. Игровая приставка SONY PLAYSTATION мо-
жет использовать одновременно не более 16 файлов.
Режим задают следующие разряды:
DO - 1 для чтения.
D1 - 1 для записи.
D9 - 1 для создания нового файла.
D16 - D31 - число блоков в карте памяти (me-
mory card), резервируемое для нового файла.
Возвращаемый функцией дескриптор файла при-
меняется другими функциями.
Функция Iseek
Номер: 33h.
Параметры:
аО - дескриптор файла;
al - смещение;
а2 - база.
Описание.
Функция перемещает указатель, определяющий
текущую позицию доступа к файлу, на число бай-
тов, заданное в регистре al. Если в регистре а2 за-
писан 0, то смещение вычисляется относительно
начала файла, если 1 - относительно имеющейся
позиции указателя. Никаких проверок на выход за
границы файла не производится.
Функция read
Номер: 34h.
Параметры:
аО - дескриптор файла;
al - указатель на буфер для считанных дан-
ных;
al - число байтов, которые будут прочитаны.
Результат:
v0 - число реально прочитанных байтов
или -1 при ошибке.
Описание.
Функция читает данные из открытого файла
и записывает их в память по указанному адресу.
Функция write
Номер: 35h.
Параметры:
аО - дескриптор файла;
al - указатель на записываемые данные;
а2 - число записываемых байтов.
130
Архитектура и принцип работы. Внутренние контроллеры
Результат:
vO - число реально записанных байтов или
-1 при ошибке.
Описание.
Функция записывает данные в карту memory
card. При попытке сохранить информацию на CD-
ROM в качестве результата будет возвращен 0.
Функция close
Номер: 3 6h.
Параметры:
аО - дескриптор файла.
Результат:
vO - дескриптор файла или -1 при ошибке.
Описание.
Функция закрывает определяемый дескрипто-
ром файл.
Разумеется, функций в ПЗУ игровой приставки
гораздо больше, чем описано здесь. В разделе при-
веден только минимальный набор, который позво-
лит разобраться с излагаемым далее материалом,
а также понимать тексты программ.
4.2.4. Внутренние контроллеры
Внутренние контроллеры игровой приставки пере-
сылают данные, формируют запросы на прерыва-
ние и управляют состоянием аппаратуры. В отли-
чие от сопроцессоров, для работы с контроллерами
не предусмотрено специальных команд; с точки
зрения программирования они представляют собой
несколько ячеек в общем адресном пространстве
приставки.
Ниже мы рассмотрим программную архитекту-
ру таймера, контроллера прерываний и контролле-
ра прямого доступа к памяти.
Контроллер прерываний
Контроллер прерываний формирует запросы на об-
служивание прерываний, которые в дальнейшем
будут обрабатываться сопроцессором управления
системой. Контроллер использует два регистра
садресами lF801070hn lF801074h. Разряды ре-
гистров управляют следующими прерываниями:
D0 - прерывание по кадровому синхроимпульсу;
D1 - прерывание от графического процессора:
D2 - прерывание от контроллера CD-ROM;
D3 - прерывание от контроллера прямого досту-
па к памяти;
D4 - прерывание от канала 0 таймера;
D5 - прерывание от канала 1 таймера;
D6 - прерывание от канала 2 таймера;
D7 - прерывание от пульта;
D8 - прерывание от последовательного порта;
D9 - прерывание от звукового процессора;
D10 - прерывание от параллельного порта.
Если вы сравните приведенный перечень со спис-
ком классов событий, возникающих при работе с ап-
паратурой, то увидите, что каждому типу прерывании
соответствует определенный класс события.
Чтобы процессор мог обслуживать запросы на
прерывания, требуется разрешить формирование
сигнала, поместив соответствующий разряд в ре-
гистр lF801074h, и допустить обработку запросов
сопроцессором управления системой, для чего уста-
новить разряд D0 и один из разрядов D15 - D8, со-
ответствующий данному прерыванию в регистре
SR сопроцессора управления системой. После ини-
циализации аппаратной части посредством функции
openevent необходимо создать запись в таблице об-
рабатываемых событий с соответствующим классом
и, наконец, вызвать функцию enableevent, чтобы
разрешить обслуживание данного события.
Перед завершением программа обслуживания
прерывания должна передать контроллеру сигнал
о своем завершении. Для этого необходимо сбро-
сить соответствующий разряд в регистре подтверж-
дения прерывания с адресом lF801070h. В про-
тивном случае дальнейшая генерация запросов для
данного прерывания будет блокирована.
Таймер
Таймер обычно применяется для синхронизации
работы программы и различных блоков игровой
приставки, а также для измерения временных ин-
тервалов с целью привязки функционирования
процессора к реальному времени.
Всего в таймере предусмотрено три независимых
канала. Как отдельный таймер можно также ис-
пользовать запрос прерывания по кадровому син-
хроимпульсу.
На вход каждого из каналов таймера поступает
опорный сигнал с фиксированной частотой, кото-
рая задается следующим образом:
канал 0 - частота формирования точек на экране;
канал 1 - частота строчной синхронизации;
канал 2 - частота процессора, деленная на 8.
При поступлении тактового импульса показания
внутреннего 16-разрядного счетчика таймера уве-
личиваются на 1. Когда счетчик достигает значения
FFFFh или значения, записанного в управляющем
регистре, соответствующий канал таймера генери-
рует запрос на прерывание.
С точки зрения программирования канал тайме-
ра представляет собой три регистра, о которых по-
дробно рассказывается ниже.
Счетчик канала 0
Адрес: IFSOllOOh.
Назначение разрядов.
Текущее 16-разрядное значение внутреннего счет-
чика канала 0.
131
Архитектура и принцип работы. Внутренние контроллеры
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
Управляющий регистр канала О
Адрес: lF801104h.
Назначение разрядов:
DO - управление состоянием таймера:
О - таймер включен;
1 - таймер в режиме ожидания.
D3 - определение режима счета:
О - счет до FFFFh;
1 - счет до заданного значения.
D4, D6 - разряды должны быть равны 1, чтобы
таймер формировал запрос на прерывание.
D8, D9 - код опорной частоты:
00 - опорная частота 33,872 МГц;
01 - опорная частота равна частоте формиро-
вания точек изображения;
10, 11 - не используются.
Регистр граничного значения канала 0
Адрес: lF801108h.
Назначение разрядов.
Если разряд D3 в управляющем регистре установ-
лен, то счет ведется до значения, заданного в этом
регистре.
Счетчик канала 1
Адрес: lF801110h.
Назначение разрядов.
Текущее 16-разрядное значение внутреннего счет-
чика канала 1.
Управляющий регистр канала 1
Адрес: lF801114h.
Назначение разрядов:
D0 - управление состоянием таймера:
0 - таймер включен;
1 - таймер в режиме ожидания.
D3 - определение режима счета:
0 - счет до FFFFh;
1 - счет до заданного значения.
D4, D6 - разряды должны быть равны 1, чтобы
таймер формировал запрос на прерывание.
D8, D9 - код опорной частоты:
00 - опорная частота 33,872 МГц;
01 - опорная частота равна частоте строчной
развертки;
10, И - не используются.
Регистр граничного значения канала 1
Адрес: lF801118h.
Назначение разрядов.
Если разряд D3 в управляющем регистре уста-
новлен, счет ведется до значения, заданного в этом
регистре.
Счетчик канала 2
Адрес: lF80112 0h.
Назначение разрядов.
Текущее 16-разрядное значение внутреннего счет-
чика канала 2.
Управляющий регистр канала 2
Адрес: lF801124h.
Назначение разрядов:
D0 - управление состоянием таймера:
0 - таймер включен;
1 - таймер в режиме ожидания.
D3 - определение режима счета:
0 - счет до FFFFh;
1 - счет до заданного значения.
D4, D6 - разряды должны быть равны 1, чтобы
таймер формировал запрос на прерывание.
D8, D9 - код опорной частоты:
00 - опорная частота 33,872 МГц;
10 - 4,234 МГц;
01, И - не используются.
Регистр граничного значения канала 2
Адрес: lF80112 8h.
Назначение разрядов.
Если разряд D3 в управляющем регистре уста-
новлен, счет ведется до значения, заданного в этом
регистре.
Чтобы использовать таймер в ваших програм-
мах, потребуется выполнить следующие действия:
1. Инициализировать таймер, поместив О в регистр
счетчика и регистр режима.
2. Записать в регистр граничного значения необходи-
мый предел для счета, затем ввести код требуемо-
го режима в регистр управления.
3. Разрешить формирование запроса на прерывание,
установив соответствующие разряды в регистрах
контроллера прерываний (за прерывания от счет-
чиков отвечают разряды D4 - D6).
4. Создать запись в таблице событий, вызвав функцию
openevent. В качестве параметров указать класс
события F200 00 00h (если используется канал 0),
F2oooooih (для канала 1) или F2000002h (для ка-
нала 2),спецификаторсобытия о о о21т (прерывайие)
и режим ЮООЬ (обработка прерывания). В регис-
тре аЗ задать адрес функции, которая будет обслу-
живать данное прерывание.
5. Разрешить обработку только что созданного собы-
тия, вызвав Функцию enableevent.
6.Убедиться, что сопроцессор управления системой
будет принимать поступающие запросы на преры-
вание. Для этого разряды D10 и DO в регистре SR
должны быть установлены.
132
Архитектура и принцип работы. Внутренние контроллеры
Все необходимые действия выполнены. Ваш об-
работчик должен восстанавливать значения регис-
тров и завершаться командой j г га.
Контроллер прямого доступа к памяти
Контроллер прямого доступа к памяти позволяет
быстро передавать большие объемы данных между
различными блоками системы без участия цен-
трального процессора. Подобное устройство имеет-
ся практически в каждой игровой приставке и ис-
пользуется во всех программах.
Контроллер ПДП SONY PLAYSTATION может
обслуживать семь независимых каналов прямого
доступа к памяти, каждый из которых характеризу-
ется собственной функцией:
канал 0 - вход декодера MDEC;
канал 1 - выход декодера MDEC;
канал 2 - графический процессор;
канал 3 - CD-ROM;
канал 4 - звуковой процессор;
канал 5 - параллельный порт;
канал 6 - очистка очереди.
С точки зрения программирования контроллер
прямого доступа к памяти SONY PLAYSTATION
представляет собой два общих регистра управле-
ния и по три регистра для каждого из каналов. Об-
щие регистры управления располагаются по адресам
lF8010F0h и 1F8010F4L. Регистры канала 0 зани-
мают адреса 1F80108 Oh, lF801084hn lF801088h,
канала 1 - lF801090h, lF801094h иlF801098h,
канала 2 - lF8010A0h, lF8010A4h и lF8010A8h
и так далее до канала 6. Названные регистры аналогич-
ны, поэтому ниже мы опишем их только для канала 0.
Регистр разрешения работы каналов
Адрес: IFSOlOFOh.
Назначение разрядов.
Разряды регистра разрешают или запрещают рабо-
ту отдельных каналов прямого доступа к памяти. Что-
бы канал можно было использовать, надлежащий
разряд нужно установить в 1. Соответствие разря-
дов регистра номерам каналов следующее:
D3 - канал 0;
D7 - канал 1;
D11 - канал 2;
D15 - канал 3;
D19 - канал 4;
D23 - канал 5;
D27 - канал 6;
Регистр управления прерываниями
Адрес: lF8010F4h.
Назначение разрядов.
Разряды регистра управляют генерацией запро-
сов на прерывание от контроллера ПДП. Чтобы для
выбранного канала прямого доступа к памяти фор-
мировался запрос на прерывание, здесь нужно уста-
новить определенный разряд: D16 для канала 0, D17
для канала 1, D18 для канала 2 и т.д. После обслу-
живания запроса программа должна установить бит
подтверждения обработки: D24 для канала 0, D25
для канала 1, D26 для канала 2 и т.д. Это необходи-
мо, чтобы запрос на прерывание мог генерироваться
повторно. Разряды D23 и D31 всегда должны быть
равны 1.
Далее рассматриваются регистры, предназначен-
ные для управления отдельным каналом прямого
доступа к памяти. Вместо х следует подставлять со-
ответствующую цифру базового адреса (8 для кана-
ла 0; 9 для канала 1; А для канала 2 и т.д.).
Регистр базового адреса
Адрес: lF8010x0h.
Назначение разрядов.
В регистр записывается начальный адрес блока,
который будет передаваться или приниматься по-
средством прямого доступа к памяти.
Регистр размера блока
Адрес: lF8010x4h.
Назначение разрядов.
В разряды D15 - D0 регистра записывается раз-
мер передаваемого блока в словах, а в разряды D31 -
D16- количество таких блоков. Убедитесь, что
устройство, которому пересылаются данные, способ-
но принять блоки заданной величины. Например,
графический и звуковой процессоры игровой при-
ставки могут получать блоки размером не более 16
слов.
Регистр управления каналом
Адрес: lF8010x8h.
Назначение разрядов.
Регистр предназначен для управления отдель-
ным каналом прямого доступа к памяти.
D24 - канал свободен, если разряд сброшен. Пе-
редача данных начнется, когда сюда будет записа-
на 1. Разряд автоматически сбрасывается после за-
вершения пересылки данных.
D10 - если разряд установлен, передается свя-
занный список данных. Этот режим возможен толь-
ко при работе с графическим процессором.
D9 - если разряд установлен в 1, передается по-
следовательный поток данных.
D0 - если разряд сброшен, данные принимаются
от устройства и записываются в память; если уста-
новлен - считываются из памяти и передаются
устройству.
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
133
Архитектура и принцип работы. Видеопроцессор
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
4.2.5. Видеопроцессор
Графический процессор игровой приставки SONY
PLAYSTATION (Graphics Picture Unit, GPU) яв-
ляется основным устройством, отвечающим за
формирование картинки на экране. Для хранения
данных об изображении графический процессор
использует 1 Мб быстродействующей видеопамя-
ти и 2 Кб кэш-памяти текстур. Процессор ориен-
тирован на трехмерную полигональную графику,
но может также работать с двумерной графикой
и спрайтами. Для быстрой передачи данных от
центрального процессора к графическому приме-
няется канал прямого доступа к памяти.
Видеопамять
Знакомство с работой видеопроцессора мы начнем
с описания различных областей памяти, которые
используются при формировании изображения.
К таким областям относятся буфер кадра, память
текстур и цветовая таблица.
В памяти кадра хранятся все графические дан-
ные, которые видеопроцессор применяет для по-
строения очередного кадра. Для центрального про-
цессора эта область памяти доступна только через
регистры графического процессора, поэтому рабо-
та с ней имеет определенную специфику. С точки
зрения программирования память кадра представ-
ляет собой массив точек: 1024 по горизонтали
и 512 по вертикали. Каждая точка в памяти зани-
мает одно слово (16 разрядов) и хранится в фор-
мате, изображенном на рис. 4.6а. Доступ к точке
осуществляется по ее координатам, а не по адре-
су в видеопамяти. Верхнему левому углу соответ-
ствуют координаты (0, 0), а правому нижнему —
(1023, 511).
Когда графический процессор выводит рисунок
на экран, из памяти кадра выбирается отображаемая
область, на основе данных которой формируется
выходной сигнал. Размеры показываемого фрагмен-
та определяются путем записи координат его верх-
него левого угла и размеров в регистры графичес-
кого процессора.
Кроме 15-разрядного, игровая приставка SONY
PLAYSTATION может использовать 24-разрядный
цвет. В таком случае две точки, выводимые на эк-
ран, представляются тремя точками в памяти кад-
ра. Применяемый при этом формат хранения дан-
ных показан на рис. 4.66.
Другой областью видеопамяти является память
текстур. Текстурой называется двумерное изобра-
жение, накладываемое при выводе на полигон или
спрайт.
Шаблоны текстур представляют собой изобра-
жения фиксированного размера. В качестве места
хранения текстур в SONY PLAYSTATION задей-
ствуется часть памяти кадра. Создаваемые текстуры
могут быть 15-,. 8- или 4-разрядными. Разрядность
текстуры определяет число битов, выделяемых для
размещения информации о точке, и, следовательно,
максимальное количество цветов, которые можно
использовать для текстуры. Форматы хранения
текстур представлены на рис. 4.6, ниже приведено
их краткое описание.
В 15-разрядных текстурах каждой точке соот-
ветствует одно слово (два байта), где располагают-
ся 15-разрядный код цвета (в разрядах DO - D14)
и бит признака прозрачности (в разряде D15). О ре-
ализации эффекта прозрачности речь пойдет чуть
позже. Таким образом, 15-разрядные текстуры об-
ладают самой большой палитрой - до 32768 цветов,
но также превосходят остальные и по объему зани-
маемой памяти.
В 8-разрядных текстурах применен несколько
иной формат хранения. В этом случае каждый байт
содержит индекс цвета. Одно слово задает две точ-
ки, а в текстуре имеется 256 цветов. Графический
процессор приставки получает индекс и считывает
цвет с данным индексом из таблицы. Таблица пред-
ставляет собой отдельную область памяти, в которой
хранятся полные 15-разрядиые коды цвета. Струк-
тура таблицы цветов и принципы работы с нею бу-
дут описаны ниже. Число таблиц не ограничивает-
ся ничем, кроме объема памяти, но текстура может
использовать только одну таблицу.
4-разрядные текстуры очень похожи на 8-раз-
рядные, но для каждого цвета здесь требуется
4 бита. Соответственно такие текстуры являются
16-цветными. Для них также необходима таблица
цветов.
Синий компонент Зеленой компонент Кроений компонент
/
Флаг
15 87 О 15 87 О 15 87 О
Зеленой для точки 0 Красной для точки 0 Красной для точки 1 Синий для точки 0 Синий для точки 1 Зеленый для точки 1
Рис. 4.6. Формат графических данных в экранной памяти
134
Архитектура и принцип работы. Видеопроцессор
Текстуры хранятся в специальной области памяти,
называемой страницей текстур, которая является
частью памяти кадра и имеет размер 256x256 точек
независимо от установленного цветового режима.
Точки в странице текстур адресуются относитель-
но начала этой страницы, а не относительно начала
памяти кадра. Таким образом, координаты верхне-
го левого угла страницы текстур всегда будут рав-
ны (0, 0), а координаты правого нижнего - (255,
255). В случае необходимости разрешается создать
несколько страниц текстур.
Графическому процессору при формировании
изображения приходится производить чтение тек-
стуры из памяти для каждого использующего ее
примитива. Чтобы эти действия не приводили
к большим потерям времени, в графическом про-
цессоре установлена кэш-память текстур. Размер
изображения, которое может храниться в кэше, за-
висит от применяемого формата текстуры и состав-
ляет 64x64 точки для 4-разрядных текстур, 64x32
точки для 8-разрядных и 32x32 точки для 15-раз-
рядных. Для максимально быстрого исполнения
программ следует использовать текстуры указан-
ного размера.
Таблица цветов
Таблица цветов требуется при работе графическо-
го процессора с текстурами и представляет собой
часть памяти кадра. Она содержит 256 слов для
256-цветного режима или 16 слов для 16-цветного.
В каждом слове хранится код одного цвета в стан-
дартном 15-разрядном формате, характерном и для
приставки SONY PLAYSTATION. Цветовых таб-
лиц может быть несколько, как и областей текстур,
но каждый примитив способен использовать толь-
ко одну таблицу цветов и одну страницу текстур.
Возможности графического процессора
Ознакомившись с областями памяти, применяе-
мыми при формировании изображения, перейдем
к рассмотрению возможностей графического про-
цессора.
Рисунок на экране строится из примитивов. При-
митивы - это базовые графические элементы, ис-
пользуемые графическим процессором для создания
изображений. Более сложные фигуры должны раз-
деляться на составляющие их примитивы. Набор
примитивов характерен для трехмерной графики.
Точка - простейший элемент изображения, опре-
деляющий единственную точку и ее цвет. Факти-
чески он обрабатывается графическим процессо-
ром как прямоугольник с размерами 1x1.
Линия - несколько более сложный элемент, зада-
ющий прямую линию (совокупность точек) между
двумя точками с указанными координатами. При
рисовании линии можно использовать затенение
Гуро. Полилиния характеризует ломаную линию,
состоящую из нескольких отрезков.
Прямоугольник - примитив, который представ-
ляет собой прямоугольную область экрана, специ-
фицируемую координатами верхнего левого угла,
высотой и шириной. При отображении такого эле-
мента на экран выводится прямоугольник, закра-
шенный выбранным цветом.
Спрайт - прямоугольник с текстурой, опреде-
ляемый так же, как и любой прямоугольник, но
имеющий в качестве дополнительного параметра
расположение нужной текстуры. Хотя этот элемент
и назван спрайтом, его возможности несколько мень-
ше, чем в игровых приставках, ориентированных на
спрайтовую графику.
Полигон - выпуклый многоугольник, из набо-
ра которых строится изображение на экране. Гра-
фический процессор игровой приставки SONY
PLAYSTATION способен рисовать полигонами
с тремя и четырьмя вершинами, причем четырех-
угольник обрабатывается процессором как два тре-
угольника. Каждый многоугольник описывается
координатами своих вершин. При рисовании мож-
но использовать затенение Гуро. Работа с полиго-
нами осуществляется медленнее, чем вывод прямо-
угольников, и их назначение также различно:
прямоугольники необходимы для изображения
плоских объектов, а полигоны - для трехмерных.
Полигон с текстурой - это полигон, который по-
казывается вместе с выбранной текстурой. Текстура
играет роль обоев, наклеиваемых на объект с целью
нанесения сложного рисунка на его поверхность.
Полигон с текстурой создается аналогично обычно-
му полигону, но требует в качестве дополнительно-
го параметра адрес используемой текстуры.
Вид выводимых на экран примитивов опреде-
ляют три параметра: прозрачность, освещенность
и маскирование.
Когда при формировании изображения исполь-
зуется режим прозрачности, цвет точки, которая
будет показана на экране, вычисляется на основе
цвета точки, уже записанной на этом месте в памя-
ти кадра, и точки, которая рисуется. В зависимости
от выбранного режима расчета прозрачности при-
годна одна из следующих формул:
0,5В + 0.5F;
1,0В + l,0F;
1,0В - l,0F;
1,0В + 0,25F,
где В - цвет точки из памяти кадра, a F - цвет ри-
суемой точки.
Режим прозрачности разрешается задать для лю-
бого изображаемого примитива. Если примитив не
использует текстуру, прозрачность применяется ко
135
Архитектура и принцип работы. Видеопроцессор
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
всему объекту. Если рисуется полигон с текстурой,
возможны следующие варианты:
• в случае 15-разрядных текстур режим задает-
ся индивидуально для каждой точки текстуры
посредством флага, расположенного в стар-
шем разряде;
• в случае 8- или 4-разрядных текстур прозрач-
ность указывается для каждого цвета. С этой
целью в таблице цветов устанавливается стар-
ший разряд данных соответствующего оттенка.
Применение такого режима замедляет работу
графического процессора, поскольку для рисова-
ния точки на экране требуются две операции чте-
ния и расчет значения цвета.
Освещенность позволяет изменять цвет объекта
в зависимости от положения источников света. В иг-
ровой приставке SONY PLAYSTATION имеется ре-
жим равномерной освещенности и освещенности по
алгоритму Гуро. В первом случае для любого прими-
тива используется одно значение, определяющее его
яркость; во втором отдельные значения яркости ука-
зываются для каждой вершины примитива, а конеч-
ное значение вычисляется путем их интерполяции.
Режим маскирования разрешает задавать в па-
мяти кадра области отсечения, ограничивающие
рисуемое изображение.
Ниже мы рассмотрим основные принципы зада-
ния параметров, определяющих вид выводимого
изображения. Более подробную информацию мож-
но найти в разделе, посвященном командам графи-
ческого процессора.
Сначала надо указать размер экрана, которое будет
использоваться в программе. Экран может быть 256,
320, 384, 512 или 640 точек шириной и 240 или 480
точек высотой. Этот параметр также определяет раз-
мер отображаемой области памяти в буфере кадра.
Затем требуется определить, будет ли использо-
ваться чересстрочный режим. Дело в том, что боль-
шинство телевизионных приемников не в состоянии
показывать картинку с разрешением 480 точек по
вертикали. В этом случае включается чересстроч-
ный режим формирования изображения, когда на
экран сначала выводятся четные строки, а затем
нечетные. Для зрителя чередующиеся полукадры
сливаются в один.
Следующий шаг - выбор числа цветов: 15- или
24-ра.зрядное кодирование цвета.
Кроме того, нужно задать формат выходного сиг-
нала. Игровая приставка SONY PLAYSTATION мо-
жет формировать выходной сигнал, используя сис-
тему кодирования цветовой информации PAL или
NTSC. Выбор системы осуществляется программ-
ным путем.
Работа с графическим процессором
Вся работа с графическим процессором игровой
приставки ведется с применением двух 32-разряд-
ных регистров: данных и управления. Для передачи
данных графическому процессору часто использует-
ся контроллер ПДП. Особенности прямого доступа
к памяти будут рассмотрены чуть позднее.
Регистр данных графического процессора
Адрес: 1F801810L.
Назначение разрядов.
Через регистр осуществляется обмен данными
между центральным и графическим процессорами
приставки.
Регистр состояния графического процессора
Адрес; 1F801814L.
Назначение разрядов.
Регистр применяется при управлении функцио-
нированием графического процессора и для полу-
чения информации о текущем режиме. Назначение
разрядов различно при чтении и записи, поэтому
работу с данным регистром мы рассмотрим отдель-
но для каждого режима.
При чтении из регистра программа получает сло-
во состояния графического процессора. Назначе-
ние разрядов этого слова следующее:
D31 - состояние разряда используется только
при работе в чересстрочном режиме. Если разряд
сброшен, то видеопроцессор в данный момент фор-
мирует кадр с четными строками, если установлен
в 1 - с нечетными строками.
D29, D30 - состояние разрядов зависит от теку-
щего режима работы контроллера прямого доступа
к памяти. Возможны следующие комбинации:
0 0 - контроллер ПДП не применяется;
0 1 - неиспользуемая комбинация;
10 - данные передаются от центрального процес-
сора к графическому;
И - данные передаются от графического процес-
сора к центральному.
D28 - если разряд сброшен, графический про-
цессор не готов к приему команды.
D27 - если разряд сброшен, графический про-
цессор не готов к пересылке изображения.
D26 - если разряд сброшен, графический про-
цессор занят рисованием примитива. Если разряд
равен 1, графический процессор простаивает.
D25, D24 - не используются.
D23 - если разряд сброшен, графический процес-
сор формирует изображение на экране, если уста-
новлен в 1 — графический процессор отключен,
и изображение на экране отсутствует.
136
Архитектура и принцип работы. Видеопроцессор
D22 - если разряд установлен в 1, графический
процессор работает в чересстрочном режиме.
D21 - если разряд сброшен, используется 15-раз-
рядное кодирование цвета; если установлен в 1 -
24-разрядное.
D20 - если разряд установлен в 1, видеопроцес-
сор формирует сигнал изображения в системе PAL,
в противном случае - в формате NTSC.
D19 - определяет размер изображения по верти-
кали:
О - 240 точек;
1 - 480 точек.
D18-D16 - указывают размер изображения по
горизонтали:
ООО - 256 точек;
001 - 384 точки;
010 - 320 точек;
100 - 512 точек;
110-640 точек.
D15 - D13 - не используются.
D12 - если разряд установлен в 1, точки, у кото-
рых установлен бит маскирования (самый старший
разряд), не отображаются.
DI 1 - если разряд установлен в 1, активизирует-
ся режим маскирования; иначе данный режим вы-
ключен.
D10 - управление рисованием в области экрана:
если разряд установлен, рисование разрешено, если
сброшен - запрещено.
D9 - включение режима смешивания цветов.
D8, D7 - задание разрядности цвета текстур:
00 - 4-разрядных текстур;
01 - для 8-разрядных;
10 - для 15-разрядных;
11 - не применяется.
D6, D5 - код, помещаемый в эти разряды, опре-
деляет формулу для работы с прозрачными тексту-
рами. Соответствие кодов и формул следующее:
00 0,5В + 0.5F;
01 1,0В + l,0F;
10 1,0В - l,0F;
И 1,0В + 0.25F,
где В - цвет точки, уже записанной в памяти кадра,
a F - цвет рисуемой точки прозрачной текстуры.
D4 - определение вертикальной координаты на-
чала страницы текстур. Если разряд сброшен, она
равна 0, в противном случае - 256.
D3 - D0 - задание горизонтальной координаты
начала страницы текстур. Она равна значению, за-
писанному в этих разрядах, умноженному на 64, то
есть может принимать значения 0,64,128,192 и т.д.
При работе с графическим процессором в регистр
управления помещаются команды для процессора,
при этом код команды заключается в разрядах
D31 - D24, а оставшиеся разряды применяются
для передачи параметров. Рассмотрим некоторые
наиболее часто используемые команды графичес-
кого процессора.
Сброс графического процессора
Код команды: 00h.
Параметры: 0 0 0 0 0 Oh.
Назначение.
Команда используется для инициализации гра-
фического процессора, а в некоторых случаях - для
прекращения формирования изображения. После
ее выполнения в слове состояния графического
процессора устанавливается комбинация флагов
14802000b.
Сброс буфера команд
Код команды: 0 lh.
Параметры: 0 0 0 0 0 0h.
Назначение.
Команда очищает буфер команд графического
процессора.
Сброс IRQ
Код команды: 02h.
Параметры: OOOOOOh.
Назначение.
Команда принудительно сбрасывает формируе-
мый графическим процессором сигнал запроса на
прерывание.
Включение экрана
Код команды: 03 b.
Параметры:
OOOOOOh - разрешить формирование изображе-
ния на экране;
0 0 0 0 0 lh - запретить.
Назначение.
Команда служит для управления формировани-
ем изображения на экране. В выключенном состоя-
нии графический процессор не формирует выход-
ных сигналов и не обращается к видеопамяти.
Установка прямого доступа к памяти
Код команды: 04h.
Параметры:
OOOOOOh - прямой доступ к памяти отключен;
000002h — данные передаются от центрального
процессора к графическому;
000003h- данные передаются от графического
процессора к центральному.
Назначение.
Команда указывает направление пересылки дан-
ных при использовании прямого доступа к памяти.
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
)21
137
Архитектура и принцип работы. Видеопроцессор
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
Установка начала экрана
Код команды: 0 5h.
Параметры: в разрядах DO - D9 задается коор-
дината по горизонтали (0 -1023), в разрядах D10 -
D18 - координата по вертикали (0-512).
Назначение.
Команда применяется для определения левого
верхнего угла области видеопамяти, которая содер-
жит выводимое на экран изображение.
Задание режима отображения
Подкоманды: 08h.
Параметры: число, состояние разрядов которо-
го характеризует включаемый режим. Назначение
отдельных разрядов следующее:
D6 - если разряд установлен, а разряды 0 и 1
сброшены, то размер экрана по горизонтали равен
384 точкам. Во всех остальных случаях этот разряд
должен быть сброшен.
D5 - если разряд установлен, включается черес-
строчный режим формирования изображения.
D4 - если в разряд записана 1, будет использо-
ваться 24-разрядный цвет; в противном случае -
15-разрядный.
D3 - видеорежим:
0 - PAL;
1 - NTSC.
D2 - размер изображения по вертикали:
0 - 240 точек;
1 - 480 точек.
DI, D0 - размер изображения по горизонтали:
00 - 256 точек;
01 - 320 точек;
10-512 точек;
11 - 640 точек.
Получение параметров графического процессора
Код команды: 10h.
Параметры: номер требуемого параметра графи-
ческого процессора.
Назначение.
Данная команда позволяет прочитать нужный
параметр графического процессора из регистра дан-
ных. Например, если в качестве параметра команды
передать код 000007b, то в регистре данных будет
возвращен кодовый номер модели установленного
графического процессора (для стандартной микро-
схемы, используемой в SONY PLAYSTATION, этот
номер равен 2).
Командные пакеты графического процессора
Для того чтобы графический процессор создал
изображение на экране, ему должны быть переда-
ны все сведения о параметрах изображения (размер
по вертикали и горизонтали, положение выводимо-
го фрагмента в видеопамяти, разрядность цвета
и т.д.), а также сведения о каждом из графических
примитивов, составляющих картинку.
Все данные относительно рисунка и его парамет-
ров передаются графическому процессору в виде
пакетов команд. Каждый пакет сообщает об одном
примитиве либо устанавливает какой-либо параметр
изображения. Следует различать параметры изоб-
ражения и дисплея: первые передаются как пакеты
команд и характеризуют создаваемую картинку;
вторые влияют на генерируемый графическим про-
цессором видеосигнал и задаются через команды,
записываемые в регистр управления графическо-
го процессора. Чтобы графический процессор пра-
вильно сформировал изображение, требуется ука-
зать как параметры дисплея, так и параметры
изображения.
Командные пакеты составляются работающей
программой, после чего передаются пословно через
порт данных графического процессора. Более пред-
почтительной из-за скорости и затрат времени цен-
трального процессора является пересылка пакетов
на основе прямого доступа к памяти. Чтобы упрос-
тить управление обменом большого числа пакетов,
в игровой приставке SONY PLAYSTATION преду-
смотрен специальный режим прямого доступа к па-
мяти, когда все передаваемые графическому про-
цессору пакеты объединяются в связанный список,
каждый элемент которого содержит сведения о его
размере, адрес следующего элемента и собственно
пакет данных. Отдельные части связанного списка
не обязательно должны располагаться в памяти по
порядку. Эта технология объясняется на рис. 4.7.
Рис. 4.7. Связанный список пакетов команд для графического процессора
138
Архитектура и принцип работы. Видеопроцессор
Графический процессор обрабатывает пакеты
в порядке их пересылки, следовательно, передан-
ные ранее примитивы при рисовании будут пере-
крываться теми, которые получены позже. Если
в список необходимо внести еще несколько пакетов
команд, достаточно найти место, куда они будут по-
мещены, заменить указатель найденного элемента
списка на адрес добавляемого пакета, а в сам пакет
вставить ссылку на следующий элемент списка.
Чтобы в связанном списке легче было найти мес-
та для вставки новых пакетов, в игровой приставке
SONY PLAYSTATION введена функция сортировки
пакетов команд. С этой целью сначала строится пу-
стой связанный список, который содержит только
заголовки данных без самих пакетов. Теперь, если
в список нужно добавить какой-либо пакет, доста-
точно выбрать его по индексу.
Поскольку при формировании трехмерного изоб-
ражения требуется, чтобы расположенные ближе
к наблюдателю объекты рисовались позже тех, ко-
торые находятся дальше, в качестве индекса часто
используется координата z отображаемого объекта.
После того как программа создала все пакеты ко-
манд, которые будут передаваться графическому
процессору, следует указать адрес первого элемен-
та в списке и переслать все данные, используя кон-
троллер прямого доступа к памяти.
Отдельный канал контроллера ПДП может со-
здавать такие отсортированные таблицы пакетов,
что значительно упрощает программирование гра-
фического процессора.
Рассмотрим структуру элемента связанного спис-
ка более подробно (рис. 4.8).
В первом 32-разрядном слове содержится заго-
ловок элемента списка, включающий в себя размер
следующего за заголовком пакета команд в словах
(старший байт) и указатель на следующий элемент
(остальные байты). Для последнего элемента спис-
ка указатель должен быть равен FFFFFFh.
Со второго слова начинается пакет команд. В са-
мом старшем байте хранится код, определяющий
тип пакета, а затем записаны параметры, количество
которых зависит от типа пакета. Пакет команд все-
гда занимает целое число 32-разрядных слов.
Работа с использованием
прямого доступа к памяти
Графический процессор игровой приставки SONY
PLAYSTATION использует два канала прямого до-
ступа к памяти. Канал 2 применяется для пересылки
связанных списков, содержащих пакеты команд, от
центрального процессора к графическому, а также для
передачи изображения в буфер или обратно. Канал 6
предназначен для создания пустых связанных спис-
ков, назначение которых описывалось выше.
Более подробно работа с контроллером прямого
доступа к памяти и необходимые регистры были
рассмотрены в соответствующем разделе.
Основные приемы программирования
графического процессора
Теперь, изучив основные функции и команды гра-
фического процессора SONY PLAYSTATION, мы
можем проанализировать основные алгоритмы, ис-
пользуемые в программах для него.
Работа всегда начинается с инициализации гра-
фического процессора игровой приставки, которая
выполняется по следующему алгоритму:
1. Передать графическому процессору команду сбро-
са (код о Oh).
2. Установить размеры изображения по горизонтали
и вертикали, передав в регистр управления графи-
ческого процессора команды с кодом 06h и 07h.
3. Задать режим дисплея командой 08h.
4. Указать координаты начала экранной области ко-
мандой 05h.
5. Сформировать в памяти пакеты с кодами Elh (режим
изображения), E3h, E4h (размеры изображения),
E5h (координаты изображения) и последовательно
передать их графическому процессору через порт
данных или канал прямого доступа к памяти.
6. Разрешить генерацию изображения.
Далее программа создает связанный список па-
кетов команд, содержащих информацию об изоб-
ражении. Чтобы передать этот список графическо-
му процессору, необходимо выполнить следующие
действия:
1. Подождать, пока графический процессор подгото-
вится к приему команд. Об этом сигнализирует
установка разряда D28 в регистре состояния графи-
ческого процессора.
2. Разрешить работу второго канала контроллера пря-
мого доступа к памяти.
3. Установить режим пересылки данных от централь-
ного процессора к графическому.
4. Записать в регистр D2_MADR адрес начала списка
пакетов команд.
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
139
Архитектура и принцип работы. Звуковой процессор
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
5. Поместить в регистр D2_BCR 0.
6.Указать в регистре D2_CHCR число 010 00401h.
Этот набор флагов запускает передачу связанного
списка из памяти в порт графического процессора
на основе прямого доступа в память.
Рассмотренные алгоритмы представляют собой
лишь основы программирования графики для иг-
ровой приставки SONY PLAYSTATION. Пример
реализации изложенных в этом разделе принци-
пов приведен в приложении 2, где представлена
учебная программа для игровой приставки, рисую-
щая изображение путем передачи данных через
порт графического процессора и с использованием
прямого доступа в память.
4.2.6. Звуковой процессор
Звуковой процессор приставки SONY PLAYSTA-
TION служит для формирования звукового сопро-
вождения, освобождая тем самым ресурсы цен-
трального процессора для других целей. Отличие
данного модуля от рассмотренных выше заключа-
ется в том, что, помимо обычной программной ге-
нерации различных звуков, игровая приставка
SONY PLAYSTATION позволяет воспроизводить
аудиофайлы с компакт-дисков в формате Audio CD.
В этом разделе приводится краткое описание архи-
тектуры звукового процессора и его регистров.
Микросхема звукового процессора игровой при-
ставки SONY PLAYSTATION поддерживает рабо-
ту 24 независимых аудиоканалов, дает возмож-
ность генерировать стереофоническое звучание
и микшировать его с аудиосигналом, получаемым
с CD-ROM. Привод CD-ROM управляется через
операционную систему приставки (данная тема
в настоящей книге не рассматривается из-за боль-
шого объема материала). Чтобы ускорить работу
звукового процессора, применяется ОЗУ объемом
512 Кб, предназначенное для хранения звуковых
данных.
ОЗУ звукового процессора
В документации ОЗУ звукового процессора называ-
ется звуковым буфером (Sound Buffer), мы в даль-
нейшем также будем использовать этот термин.
Данные в ОЗУ хранятся в виде компрессиро-
ванных блоков, за каждым из которых закрепле-
но 16 байт. Два байта здесь занимает заголовок,
содержащий служебную информацию, а осталь-
ные 14 байт отводятся под сведения о формируе-
мом аудиосигнале. При декомпрессии блока эти
14 байт преобразуются в 28 байт, передаваемых
звуковому процессору.
Первые 4 Кб памяти играют роль буфера для хра-
нения декодированных звуковых данных, поступа-
ющих от CD-ROM, а также данных каналов 1 и 3,
воспроизводимых звуковым процессором. Инфор-
мация в этих областях хранится в виде 16-разряд-
ных чисел, по одному числу на такт воспроизведе-
ния. Тактовая частота формирования звукового
сигнала в игровой приставке составляет 44,1 кГц.
Следующие 4104 байт зарезервированы систе-
мой и используются звуковым процессором в соб-
ственных целях.
С адреса 1008h начинается область аудиодан-
ных, а за ней находится область обработки спецэф-
фектов. Размеры этих областей меняются в зависи-
мости от того, задействован ли блок спецэффектов
и какие именно спецэффекты применяются.
Распределение адресного пространства звуково-
го процессора игровой приставки SONY PLAY-
STATION показано на рис. 4.9.
OOOOh
03FFh
0400h
07FFh
0800h
OBFFh
OCOOh
OFFFh
lOOOh
1007h
1008h
Донные левого ханола
для Audio CD
Данные правого канала
для Audio CD
Донные для канала 1
Синтезатора -
Донные для канола 3
синтеза тора
Зарезервировано системой
Области зВукобых
данных
Области донных
для э<р<ректоВ
XXXXh
7FFFFh
Рис. 4.9. Карта памяти звукового процессора
Формирование звукового сигнала
Как уже упоминалось, звуковой процессор игровой
приставки имеет 24 независимых канала. Любой из
них может создавать звуковой сигнал, генерировать
шум или частоту модуляции для другого канала.
Кроме того, каждый канал включает программируе-
мый ADSR-фильтр огибающей. Работа ADSR-филь-
тра поясняется на рис. 4.10.
Процесс формирования звукового сигнала делит-
ся на несколько фаз:
1. Нарастание сигнала (А). Сигнал нарастает от нуле-
вого значения до максимума.
2. Понижение уровня (D). Уровень звукового сигнала
понижается до основного уровня.
140
Архитектура и принцип работы. Звуковой процессор
Рис 4.10. ADSR-фильтр огибающей звукового сигнала
3. Основное звучание (S). В течение заданного време-
ни генерируется сигнал, уровень которого может
понижаться или повышаться.
4. 3атухание (R). Уровень сигнала снижается до нуля.
Регистры звукового процессора
С точки зрения программирования звуковой про-
цессор игровой приставки SONY PLAYSTATION
представляет собой набор регистров, занимаю-
щих в адресном пространстве приставки диапа-
зон lF801C00h - lF801DFFh. Все регистры звуко-
вого процессора являются 16-разрядными.
Сначала идут 24 группы по восемь 16-разрядных
регистров, каждая из таких групп предназначена для
управления одним каналом. Поскольку все группы
аналогичны, мы рассмотрим только одну из них.
Регистр громкости левого канала
Адрес: !F801xx0h.
Назначение разрядов.
Регистр используется для установки громкости
и настройки генератора. Назначение разрядов в этих
режимах различно и описывается ниже.
В режиме настройки громкости:
D15 - выбор режима, должен быть равен 0.
D14 - фаза сигнала:
0 - нормальная;
1 - инверсная.
D13 - DO - громкость сигнала.
В режиме настройки генератора:
D15 - выбор режима, должен быть равен 1.
D14 - режим изменения сигнала:
0 - линейное изменение;
1 - экспоненциальное изменение.
D13 - направление изменения уровня сигнала:
0 - увеличение;
1 - уменьшение.
D12 - фаза сигнала:
0 - нормальная;
1 - инверсная.
Указанная здесь фаза должна совпадать с фазой,
заданной при настройке громкости.
Dll - D7 - не используются.
D6 - D0 - приращение уровня сигнала.
Регистр громкости правого канала
Адрес: lF801xx2h.
Назначение разрядов.
Регистр аналогичен регистру громкости левого
канала.
Регистр высоты звука
Адрес: lF801xx4h.
Назначение разрядов.
В разряды D13 — D0 регистра записывается зна-
чение, определяющее высоту генерируемого звука.
Разряды D15 и D14 не используются.
Регистр адреса звуковых данных
Адрес: !F801xx6h.
Назначение разрядов.
В регистр записывается адрес начала воспроиз-
водимых данных в ОЗУ звукового процессора, де-
ленный на 8.
Регистр 1 настройки огибающей
Адрес: lF801xx8h.
Назначение разрядов.
Регистр используется для настройки огибающей
формируемого аудиосигнала, изображенной на
рис. 4.22.
D15 - режим нарастания:
0 - линейный;
1 - экспоненциальный.
D14 - D8 - код, задающий время нарастания
сигнала (Аг на рис. 4.22).
D7 - D4 - код, определяющий время понижения
уровня (Dr на рис. 4.22). Понижение уровня всегда
происходит в экспоненциальном режиме.
D3 - D0 - код уровня сигнала основного звуча-
ния (S1 на рис. 4.22).
Регистр 2 настройки огибающей
Адрес: lF801xxAh.
Назначение разрядов.
Регистр применяется для настройки огибающей
формируемого аудиосигнала, изображенной на
рис. 4.22.
D15 - режим изменения основного звучания:
О - линейный;
1 - экспоненциальный.
D13 - направление изменения сигнала основно-
го звучания:
0 - нарастание;
1 - затухание.
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
141
Архитектура и принцип работы. Звуковой процессор
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
D12 - не используется.
Dll - D6 — код, задающий время основного зву-
чания (Sr на рис. 4.22).
D5 - режим затухания:
О - линейное;
1 - экспоненциальное.
D4 - DO - код, указывающий время затухания
сигнала (Rr на рис. 4.22).
Регистр текущего уровня огибающей
Адрес: lF801xxCh.
Назначение разрядов.
При чтении из регистра программа получает ин-
формацию о текущем уровне огибающей сигнала
данного канала.
Регистр адреса повтора
Адрес: IFSOlxxEh.
Назначение разрядов.
В регистр помещается деленный на 8 адрес, с ко-
торого следует начать повторное воспроизведение
звуковых данных. Адрес нужно записывать во вре-
мя проигрывания звука, поскольку при запуске ге-
нератора в регистре будет 0.
Далее идет группа регистров, предназначенная
для управления звуковым процессором игровой
приставки в целом.
Регистр уровня сигнала левого канала
Адрес: lF801D80h.
Назначение разрядов.
Код, записываемый в регистр, определяет уро-
вень выходного сигнала для левого канала. Выход-
ной сигнал получается после микширования сигна-
лов всех левых каналов звукового процессора.
Регистр уровня сигнала правого канала
Адрес: lF801D82h.
Назначение разрядов.
Код, записываемый в регистр, определяет уро-
вень выходного сигнала для правого канала. Вы-
ходной сигнал получается после микширования
сигналов всех правых каналов звукового процес-
сора.
Регистр глубины реверберации левого канала
Адрес: lF801D84h.
Назначение разрядов.
Код, записываемый в регистр, определяет пара-
метры реверберации сигнала для левого канала.
D15 - фаза сигнала:
0 - нормальная;
1 - инверсная.
D14 - D0 - громкость эффекта.
Регистр глубины реверберации правого канала
Адрес: lF801D86h.
Назначение разрядов.
Код, записываемый в регистр, определяет пара-
метры реверберации сигнала для правого канала.
D15 - фаза сигнала:
0 - нормальная;
1 — инверсная.
D14 - D0 - громкость эффекта.
Далее следуют группы по два 16-разрядных ре-
гистра, которые предназначены для управления
отдельными каналами звукового процессора Каж-
дый разряд записываемого сюда значения управля-
ет отдельным стереофоническим каналом. Так, на-
пример, для контроля канала 0 используется разряд
D0 первого регистра в паре, каналом 1 управляет
разряд D1, каналом 2 - разряд D2 и так далее до ка-
нала 15, которому соответствует разряд D15. Кана-
лами 16-23 управляют, устанавливая или сбрасывая
разряды второго регистра в паре. При этом для ка-
нала 16 применяется разряд D0, для канала 17 - раз-
ряд Din т.д. Старшие восемь разрядов второго ре-
гистра не используются и должны быть равны 0.
Регистры включения каналов звукового процес-
сора
Адрес: lF801D88h, 1F801D8AK.
Назначение разрядов.
Установка в 1 какого-либо разряда в этих
регистрах приведет к включению соответствую-
щего аудиоканала.
Регистры выключения каналов звукового процес-
сора
Адрес: lF801D8Ch, 1F801D8EK.
Назначение разрядов.
Установка в 1 какого-либо разряда в этих регис-
трах приведет к выключению соответствующего
аудиоканала.
Регистры включения режима частотной модуляции
Адрес: lF801D90h, lF801D92h.
Назначение разрядов.
Чтобы канал звукового сопровождения работал
в режиме частотной модуляции, необходимо уста-
новить в 1 соответствующий разряд. В качестве
частоты модуляции используется выходной сигнал
предыдущего канала.
Регистры включения генератора шума
Адрес: lF801D94h, lF801D96h.
Назначение разрядов.
Установкой 1 в соответствующем разряде этих
регистров канал звукового сопровождения можно
перевести в режим генератора шума.
742
Принципиальная схема. Модуль центрального процессора
Регистры включения режима реверберации
Адрес: lF801D98h, 1F801D9AE.
Назначение разрядов.
Установкой 1 в соответствующем разряде канал
звукового сопровождения можно перевести в ре-
жим реверберации.
Регистры контроля работы каналов
Адрес: lF801D9Ch, 1F801D9EE.
Назначение разрядов.
Регистры доступны для чтения и используются
для контроля работы каналов звукового процессора.
Когда канал занят формированием аудиосигнала,
соответствующий ему разряд установлен в 1. Если
же канал находится в режиме ожидания, разряд
равен 0.
4.3. Принципиальная схема
Итак, мы познакомились с программной архитек-
турой игровой приставки SONY PLAYSTATION,
которая, как и ожидалось, гораздо сложнее, чем
у остальных описанных в книге устройств. Дан-
ный раздел посвящен описанию аппаратной части
и принципов работы SONY PLAYSTATION.
Конструктивно приставка SONY PLAYSTATION
выполнена на трех платах. На первой плате распо-
ложена собственно игровая приставка, схема которой
разделена на следующие функционально закончен-
ные блоки: модуль центрального процессора, модуль
графического процессора, модуль звукового про-
цессора и модуль контроллера привода CD-ROM.
К плате центрального процессора подключается вто-
рая плата - модуль адаптации, предназначенный для
работы с компакт-дисками различных производите-
лей. На третьей плате выполнен импульсный блок
питания.
4.3.1. Модуль
центрального процессора
Рассмотрение схемы игровой приставки мы начнем
с модуля центрального процессора. Его принципи-
альная схема изображена на рис. 4.11.
Основой процессорного модуля SONY PLAYSTA-
TION является микросхема IC103 (CXD8606AQ),
объединяющая RISC-ядро центрального процессора
и контроллер ввода/вывода. Микросхема выполне-
на в корпусе для поверхностного монтажа с 208-вы-
водами.
Работа центрального процессора синхронизирует-
ся внутренним тактовым генератором, частота кото-
рого стабилизирована кварцевым резонатором Х101
(67,73 МГц), подключенным к входу CRYSTALP (вы-
вод IC103/4). Тактовая частота около 33,9 МГц для
работы RISC-ядра процессора формируется внутрен-
ним делителем.
Посредством шины данных DD0 - DD31 (выво-
ды IC 103/42-40,37-28,25-16,23-31), шины адреса
DAO - DA11 (выводы IC103/68,67,64-55) и шины
управления, образованной цепями передачи сигна-
лов DWE (вывод IC103/43), DRAS0 (вывод 1С103/
45) nDCASO - DCAS3 (выводы IC103/49-46),
к центральному процессору подключено динами-
ческое ОЗУ приставки объемом 2 Мб. ОЗУ выпол-
нено на четырех микросхемах динамической па-
мяти IC106 - IC109 (KM4BVC14BJ-6) объемом
512 Кб каждая. В некоторых моделях используется
одна микросхема динамического ОЗУ IC106 типа
А65844 или А67871, выполненная в 70-выводном
корпусе. Для подсоединения этой микросхемы ис-
пользуются те же выводы центрального процессо-
ра. Обратите внимание: на шине адреса динамичес-
кого ОЗУ центрального процессора разряды DA8
(вывод IC103/58) и DA10 (вывод IC103/56) не при-
меняются, а разряды адреса DA9 (вывод 1С103/
57) hDAII (вывод IC103/55) подключены не-
стандартным способом. На выходе DAl 1 форми-
руется разряд адреса СРМА8, а на линии DA9 -
разряд СРМА9. Это обусловлено внутренней
структурой процессора и картой распределения
адресного пространства, выбранной фирмой-про-
изводителем.
Работа центрального процессора с динамическим
ОЗУ происходит обычным образом. Сначала на
шину адреса подаются девять младших разрядов
адреса, сопровождаемые сигналом низкого уровня
на выходе DRAS0, а затем девять старших разрядов
адреса ячейки памяти, и на выходах DCAS0 - DCAS3
формируется сигнал низкого уровня. Одновремен-
но происходит запись или считывание информа-
ции из динамического ОЗУ. Выполняемое действие
(запись или чтение) определяется уровнем сигнала
на выходе DWE центрального процессора. Низкий
логический уровень соответствует записи, высо-
кий - чтению данных.
Как в любом динамическом ОЗУ, микросхемы,
используемые в игровой приставке, требуют посто-
янной регенерации хранящейся в них информации.
Во время регенерации центральный процессор уста-
навливает на шине адреса динамического ОЗУ ад-
рес регенерации и генерирует на выходе DRAS0
сигнал низкого логического уровня. Поскольку
в течение этого сигнала на все выходы CAS микро-
схем динамического ОЗУ поступает напряжение
высокого логического уровня, происходит регене-
рация ОЗУ, а не чтение или запись.
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
143
Принципиальная схема. Модуль центрального процессора
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
DIG_+3,3B DIG_GND ^>- - — —— ———
CPMDO C113 ,,0.1
IC гСX A 04AM A — AO A10A00 A'JA 01л'7' A* A^ Y“* Л ° х-ч 1 .У x—/4 V У V У\ YY / x. 7 I rts и KM4BVS14BJ- Vcc^Vss© IDO 107© ID1 106© ID2 ID5© ID3 ID4© NC CAS© WE > DE© RAS ° NC@ A9 A8© АО A7© Al A6© A2 A5© АЗ A4 © Vcc Vss(15r DI 1 4 ,,0.1 -6 CPMD7
CPMD1 CPMD6
CPMD2 CPMD5
CPMD3 CPMD4
CPMA9 — CPMA8
k. CPMAO CPMA7
CPMA1 CPMA6
CPMA2 CPMA5
CPMA3 CPMA4 CPMD15
CPMD8
IC 107 О © © © © © © © © © © © II KM4BVS14BJ- Vcc'' ^Vss (28^ 100 ID7© ID1 ID6© 102 ID5© ID3 ID4© NC CAS© WE >• DE© RAS ° NC© A9 A8© АО A7© Al A6© A2 A5© A3 A4© Vcc Vss(l5j :iis ,,o.i -6
CPMD9 CPMD14
CPMD10 CPMD13
CPMD11 CPMD12
CPMA8 CPMD23
—r CPMA9 —
CPMAO CPMA7
CPMA1 CPMA6
CPMA2 CPMA5
CPMA3 CPMA4
CPMD16
IC 10E © © в © © © © © © © © © ( 11 KM4BVS14BJ- Vcc Vss(28, IDO ID7© 101 ID6© ID2 ID5© ID3 ID4© INC CAS© WE > DE© RAS ° NC© A9 A8© AO A7@ Al A6© A2 A5© АЗ A4© Vcc Vssu5. 31 16 ,, 0,1 -6
CPMD17 CPMD22
CPMD18 CPMD21
CPMD19 CPMD20
CPMA8 CPMD31
CPMA9 —
CPMAO CPMA7
CPMA1 CPMA6
CPMA2 CPMA5
CPMA3 CPMA4
CPMD24
IC 109 © © © © © © © © © © © © 11 KM4BVS14BJ- Vcc Vss(28) IDO ID7© ID1 ID6© 102 ID5© ID3 ID4© NC CAS© WE DE© RAS ° NC© A9 A8© АО A7© А1 А6И8) A2 A5© АЗ A4 © Vcc Vss (l5i -6
CPMD25 CPMD30
CPMD26 CPMD29
CPMD27 CPMD28,
CPMA8
CPMA9 —I
CPMAO CPMA7
CPMA1 CPMA6
CPMA2 CPMA5
CPMA3 CPMA4
k
Разъем для
подключения
пультов
SCKO ©
+ 3.3B (9)
TXD (8)
GND RXD О (©
° ° DTROA О
+ 8B (4)
DTROB ©
DSR (2)
INT б Л
(-52/-62)
I-------1
R169 О
FL112
CL199
ЕХТ_+8В >
DIG-+3.3B >
сюо
ЮООпФ
в
(-52/62)
D110 RD3.95B \
t-43
FL111 D109
RD3.95B
L106 1 мкГ н
FL119
R140
470
— CTR_3,3B
fjH’ D12Q RO^95B]
0107
FL109_________
RD3.95B
FL108
—_FL107
FL173
Разъем DlG_GND>-o-
последовательного
интерфейса
L105 1мкГн
(-52/62)
R139 470
R138
47,
КЗ-* D108 RD3.95B
L104 1мкГн
D106
RD3.95B
D112 RD3.95B
(-52/62)
0111 RD3.95B
R142 470
R141
470 KJ37
R150 47
± 47
DIG_ + 3,3B
L102 1
CL526
О'
R143 22
£5}
R144 22
R145 22
^-43—0101 RD3.95B fLW2
R146
1К
R146
1К
С135
ЮООпФ
В
D105 RD3.95B
D104 RD3.95B
0103 RD3.95B^LU)4
D102 RD3.95B£!JO3
0102
DTC114ЕХ
0104
DTC114ЕХ
Q101
DTC114ЕХ
0103
DTC114ЕХ
SIO_FG (©
SIO_FG (©
SIO_+3.3B (3)-
RXD (©
TXD
DSR ( б\
0 0
DTR л <л ©
о
CTS (©-
RTS (9/
SIO_GND ©
SIO_FG ©>
SIO_FG ©- -
CL527
CL528
CL529 L
CL530
CL531 L
CL532
CL533 L
,.1„. .................. IJ .ill
Рис. 4.11. Принципиальная схема модуля центрального процессора игровой приставки SONY PLAYSTATION (1 из 3)
144
Принципиальная схема. Модуль центрального процессора
0,1 F
ю ©
ЮООпФ
Vdd
С104
2
Vdd
CRYSTALN
3
CRYSTALP
CPMD31
DD31
5
CPMD30
DD30
6
CPMD29
DD29
CPMD28
D28
CPMD27
D27
CPMD26
10)D26
CPMD25
D25
CPMD24
12
D24
CPMD23
D23
13
Vdd
Vss
°CPMD22
DD22
1 6
CPMD21
DD21
17
CPMD20
DD20
18
CPMD19
DD19
CPMD18
DD18
20
CPMD17
DD17
С157
0,01
ЮООпФ
В
тПт
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
V CS7 VRD VWR со о со
со о о UJ
со СУ'
0~ Q СО т
(/)
Q (/)
CPMD15
CPMD16
7
8
9
1
4
1 5
21
DD16
22
DD15
CPMD14
<24
DD14
m
ю e
CPMD13
25
DD13
26
Vdd
IC ЮЗ
CXD8606Q
Центральный процессор
CXD8606Q
21
С155
0.01
27) Vss
12
CPMD11 (Zti) DU1 2 (29)DD11 (ЗО) DD10 Ш) DD9 б|) DD8 (33) DD7 (34) DD6 (35) DD5 (Зб) DD4 (37) DD3 Я Vdd (39) Vss j40) DD2
CPMD10
CPMD9
CPMD8
CPMD7
CPMD6
CPMD5
CPMD4
CPMD3
CPMD2
CPMD1
CPMDO
~{42) DDO
R128 22
DWI
DRAS1
R129 22
DRASO
R124 22
DCAS3
R125 22
DC AS 2
R126 22
DCAS1
R127 22
DCASO
Vdd
co
(/)
Vss
LiJ
CO
Vss
С312
ЮООпФ
L1J
СО
Ш
О
о
44
45
46
48
49
50
52
Г 71
86
92
93
95
62
66
69
72
75
76
77
78
82
83
85
87
88
90
55
63
64
67
70
84
C125...C128 ЮОпФ
C128 C127
47
0 СП оо со ю
< <
о о о о 0
56) (57) (58) (59) (60) <61
С136
0,01
Рис. 4.11. Принципиальная схема модуля центрального процессора игровой приставки SONY PLAYSTATION (2 из 3)
145
Принципиальная схема. Модуль центрального процессора
C145
ЮООпФ
VSS
156
155
Vss
SYSCLK1
154
VA2
SA23
SA. 23
152
SA. 2 2
151
SA.21
50
SA. 20
149
SA. 19
148
SA. 18
147
SA. 17
146
SA.1 6
45
Vdd
144
Vss
143
SA. 15
SA. 14
141
SA. 13
140
SA. 12
139
SA.1 1
138
SA. 10
137
SA.9
36
SA.8
135
SA. 7
34
SA.6
133
SA.5
132
Vdd
13
Vss
130
SA. 4
129
SA.3
128
SA. 2
127
SA 1
126
R104
SAOO
SA.O
125
22
SD15
SD15
24
SD14
SD14
123
SD13
SD13
122
SD12
SD12
121
SD1 1
SD1 1
120
SD10
SD10
119
Vdd
18
Vss
I 17
SD09
SD9
116
SD08
SD8
SD07
SD7
114
SD06
SD6
13
SD05
SD5
112
SD04
SD4
11
SD03
SD3
110
SD02
SD2
109
SD1
IC103
CXD8606Q
SAO 5
С1 10
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
z
С1 1 1
—ЮООпФ
CPUA2
SA22
SA21
SA20
SA19
SAI 8
SA17
SA16
R152 22
SA15
SA14
SA 13
SA12
SA1 1
SA10
SA09
SA08
SA07
SA06
л R102
22 FB102
SYSCLK1
FL142 120 CL103
FL141 150 CL104
FB104
150
SD2
SD4
150
SD8
SD10
SD12
SD14
SA04
SAG
SA03
FL 130 120 CL1 15
SA2
SA02
SA01
SD6 RB112
SDO RB111
DIG_+3,3B
EXT_+8B
SA4
RB1 13
CL101
CL102
CL 105
I CL107
CL108
I CL109
CL1 10
I CL111
CL1 12
| CL1 13
tzrJ си 14
FL129 150 CL1 16
С1 1 1 1 мкГн
C1 1 0 1 мкГн
CL1 19
I CL121
150
SA6
SAS
SA10 RB114
SA12 150 I I—(
SA14
SA16
SA18 < — 1—I
CL122
I CL123
I CL125
CL126
I CL127
SA20
SA22
CL124
108
SDO
Ю
Vdd (106
Ю
ю
IC1
'(Л
Ю
Vdd
97
99
101
96
100
102
SD01
SDOO
CPUINT
FL1 18 150 CL129
FL117 150 CL130
SYSCLK1
EXTBCK
FL116 120CL131
CL 132
FB105
120 CL133
FL113 150
R113 22
R112 22
98
С1 10
ЮООпФ
В
SRD
R111 22
R155
ЮК
ЮК
ЮК
R130
R131
С138
0,01 В
С139
0,01 В
С109
ЮООпФ В
SA16
SA15
SA12
SA7
SA6
SA5
SA4
SA3
SA2
SA1
SDO
SD1
SD2
IC1O2 NT/PAL
MSM334031C
2
3
4
5
6
7
8
9
10
12
1 3
4
15
16
I
NC Vcc (32,
А1 6 A18i
А15 A1 71 (30
А12 A14I
А7 Al 31
А6 A8 О
А5 A9l S
А4 A1 11 S
АЗ DEi @
А2 Al Oi
А1 CEi (Ц
SO D7i @
DO D6I (20
D1 D5I
D2 D4I
Vss D3I (iZ
SA18
SA17
SA14
SA13
SA8
SA9
SA1 1
SA10
SD7
SD6
SD5
SD4
SD3
шина адреса
o
Системная
шина данных
CL1 17
BCK
CN103
GND
RESET
DREQ
CSO
NC
SDO
SD2
SD4
SD6
SD8
SD10
SD12
SD14
SAO
SA2
NC
+ 3.3B
NC
SA4
SA6
SAS
SA10
SA12
SA14
SA16
SA18
SA20
SA22
SRD
NC
о
о
E
co
о
E
о
о
<L>
SYSCLK1
68Р
GND
DACK
IRQ
SWR1
NC
SD1
SD3
SD5
SD7
SD9
SD1 1
SD13
SD15
SA1
SA3
NC
+ 3.3B
+ 8B
NC
SA5
SA7
SA9
SA1 1
SA 13
SA15
SA17
SA19
SA21
SA23
SWR0
NC
LRCK
DATA
GND
CL134
GND
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66F
67
CL137 FL172 150
CL138 FL171 150
CL139 FL170 120
CL142
CL143 I
I RB116
CL144
CL145 |
CL146
CL147 |
CL 148 LvZT-J
150
CL149 FL160 150
CL 150 FL1 19 150
CL153
CL155 ।
CL156
CL157 I
CL158 ---
CL159 I
CL160
CL161 |
RB1 17
I 150
I RB118
150
SD1
SD3
SDo
SD7
SD9
SD1 1
SD13
SD15
SA1
SA3
SA5 ,
SA7
SA9
SAI 1
SA13
SA1 5
SA17
SA19
SA21
CL163 FL148 150
CL164 FL147 150
CL165 FL146 120
CL 166
CL167 FL144 150
FL143 150
SA23
SWRO
EXTLRCK
EXTDATA
68F-
R109
100
R108
D119 МА8120 D118 MAS
< SPUCS
SPUINT
SPUOREO
SPUDACK
RES3.3
4ZZE—< CDRDCS
100
------< CDRDINT
C1 17
20 !
0,01 В
Рис. 4.11. Принципиальная схема модуля центрального процессора игровой приставки SONY PLAYSTATION (3 из 3)
146
Принципиальная схема. Модуль центрального процессора
Рассмотренные выше шины адреса, данных
и управления предназначены только для подклю-
чения к центральному процессору динамического
ОЗУ.
Для подсоединения внешних устройств и обмена
информацией с другими блоками игровой приставки
используются 16-разрядная системная шина данных
SD0 - SD15 (выводы 10103/107-116,119-124) и 23-
разрядная системная шина адреса SA0 - SA23 (выво-
ды IC103/125-129,132-142,145-152).
Поскольку графическая система игровой пристав-
ки особенно требовательна к скорости передачи дан-
ных, обмен информацией между центральным и гра-
фическим процессорами в SONY PLAYSTATION
осуществляется по отдельной 32-разрядной шине
VD0 - VD31 (выводы 10103/161-169,172-181,184-
194,197,198).
Внутреннее ПЗУ приставки IC102 (MSM334031C)
объемом 512 Кб, в котором записана операционная
система, необходимая для работы системы, под-
ключено к системной шине адреса и восьми млад-
шим разрядам системной шины данных. При обра-
щении к ПЗУ центральный процессор формирует
сигнал низкого логического уровня на выходе SRD
(вывод IC103/101) и на линии выборки ПЗУ CS2
(вывод IC103/97). Сигнал CS2 подается на вход вы-
бора кристалла микросхемы ПЗУ (вывод 1С102/
22). Сигнал чтения поступает на вход разрешения
чтения ОЕ (вывод IC102/24).
Микросхема центрального процессора IC103
дополнительно генерирует управляющие сигна-
лы, контролирующие обмен информацией с други-
ми модулями игровой приставки.
В модуль графического процессора передаются
тактовые сигналы DBLCLK (вывод IC103/206)
и SYSCLK0 (вывод IC103/154), предназначенные
для синхронизации работы двух процессоров. По-
средством сигнала разрешения передачи информа-
ции GPUCS (вывод IC103/205), сигнала разре-
шения записи данных в графический процессор
GPUWR (вывод IC103/203) и сигнала разрешения
чтения данных из регистров графического процес-
сора GPURD (вывод IC103/204) центральный
процессор приставки управляет обменом инфор-
мацией с графическим процессором. Для этого
в зависимости от выполняемой операции (запись
или чтение) должен быть установлен низкий логи-
ческий уровень на выходе GPUCS и на одном из
выходов GPURD или GPUWR. Регистр графичес-
кого процессора, с которым производится обмен,
определяется уровнем сигнала на выходе GPUA2
центрального процессора (вывод IC103/153). Низ-
кий логический уровень соответствует регистру
данных, высокий - регистру управления.
Когда для передачи данных используется кон-
троллер прямого доступа к памяти, графический
процессор посылает сигнал запроса на захват шины,
устанавливая низкий логический уровень на шине
GPUDREQ, подключенной к выводу 200 централь-
ного процессора IC103. Получив такой запрос, про-
цессор освобождает шины, извещая об этом уста-
новкой низкого логического уровня на выходе
GPUDACK (вывод IC103/202).
От графического процессора на входы центрально-
го поступают тактовый сигнал РСК (вывод 1С103/
160) частотой 13,3 МГц (опорная частота формиро-
вания изображения, деленная на 4), сигнал строч-
ной синхронизации HBLANK (вывод IC103/159)
и сигнал кадровой синхронизации VBLANK (вывод
IC103/199). На вход INTIN1 (вывод IC103/102)
подается сигнал GPUINT, низкий уровень которо-
го свидетельствует о том, что графический процес-
сор запрашивает обработку прерывания.
Сигнал начальной установки поступает на вход
EXT RESET (вывод IC103/76). Он формируется
в блоке питания при включении или при нажатии
кнопки RESET. Кратковременный импульс низкого
логического уровня приводит к сбросу микропроцес-
сора и остальных контроллеров игровой приставки.
Для управления звуковым процессором цен-
тральный процессор вырабатывает четыре сигнала.
Звуковой процессор обменивается данными с цен-
тральным по сигналу разрешения низкого уровня
на выходе SPUCS (вывод IC103/96). Информация
при этом передается по системной шине данных,
а адрес регистра звукового процессора - по систем-
ной шине адреса. Тип операции (запись или чте-
ние) определяется сигналами на выходах SRD (вы-
вод IC103/101) и SWR0 (вывод IC103/100).
Сформированный звуковым процессором сигнал
запроса на прерывание SPUINT поступает на вход
INTIN9 (вывод IC103/90). Сигналы SPUDREQ
(вывод IC103/88) и SPUDACK (вывод 1С103/87)
предназначены для запроса прямого доступа к па-
мяти: звуковой процессор запрашивает прямой до-
ступ путем установки на выходе SPUDREQ сигнала
низкого уровня, после чего центральный процессор
освобождает шины и сигнализирует об этом низким
уровнем на выходе SPUDACK.
Сигналы CDRDCS и CDRDINT управляют де-
кодером информации, поступающей от CD-ROM.
Когда центральный процессор обращается к регис-
трам декодера для чтения или записи данных, он
устанавливает низкий логический уровень на шине
CDRDCS (вывод IC103/95). По шине CSRDINT
запрос на прерывание передается от декодера на
вход INTIN2 центрального процессора (вывод
IC103/94).
Отдельной задачей микросхемы центрального
процессора является координация взаимодействия
процессорного модуля с различными устройства-
ми, подключаемыми к разъему параллельного
147
Принципиальная схема. Модуль графического процессора
интерфейса CN103, разъему последовательного ин-
терфейса CN104 и разъему игрового пульта CN102.
На разъем параллельного интерфейса выведены
сигналы системной шины данных (контакты CN103/
6-13,40-47) и системной шины адреса (контакты
CN103/14,15,20-29,48,49,54-63). На контакт 2 этого
разъема подается сигнал сброса, служащий для на-
чальной инициализации подсоединенного устрой-
ства. Также в распоряжение внешнего устройства,
подключаемого к разъему параллельного интер-
фейса, предоставляется один канал прямого досту-
па к памяти и один запрос на прерывание. Восполь-
зоваться прямым доступом к памяти можно, подав
сигнал низкого уровня на контакт 3 разъема. Ког-
да центральный процессор освобождает шины, он
сигнализирует об этом установкой низкого уров-
ня на выходе DACK (контакт CN103/36). Чтобы
отправить центральному процессору запрос на пре-
рывание, внешнее устройство должно установить
низкий уровень на линии IRQ (контакт CN103/37).
Регистры внешнего устройства отображаются на
память центрального процессора, то есть для работы
с ними применяются те же команды процессора, что
и для ячеек памяти. При обращении к выделенной
для этих целей области памяти процессор формиру-
ет сигнал низкого уровня на выходе CS0 (вывод
IC103/98), подключенном к контакту CN103/4. До-
полнительную информацию о выбранном регистре
(если их несколько) получают, дешифруя данные на
шине адреса. Если процессор осуществляет чтение
из регистра внешнего устройства, на линии SRD
(контакт CN103/30) вырабатывается сигнал низко-
го логического уровня. В случае записи в регистры
на SWR0 (контакт CN103/64) и SWR1 (контакт
CN103/38) формируется сигнал низкого уровня.
Для синхронизации допускается использовать так-
товый сигнал SYSCLK1, с вывода IC103/154 посту-
пающий на контакт CN103/32.
Кроме того, на разъем параллельного интерфей-
са выведены напряжения питания +3,3 В (контак-
ты CN103/17.51) и +8 В (контакты CN103/18,52).
Для соединения двух игровых приставок в режи-
ме сетевой игры чаще всего применяется разъем по-
следовательного интерфейса CN104. На его контак-
ты поступает напряжение +3,3 В (контакт CN 104/3)
и пары сигналов RXD-TXD, DSR-DTR и CTS-
RTS, стандартные для последовательных интерфей-
сов. При связи двух приставок необходимо на вход
TXD одной из них подать сигнал с выхода RXD
другой и наоборот (на вход TXD - с выхода RXD)
н сделать такие же совмещения для оставшихся
двух пар (DSR-DTR и CTS-RTS). Иные контакты
разъемов соединяются в соответствии со своими
номерами (1 к 1, 10 к 10 и т.д.). Данные передают-
ся по цепи TXD (контакт CN103/5), а принима-
ются по цепи RXD (контакт CN103/4). Эти сигналы
поступают непосредственно с выводов процессора
IC103/74 и IC103/75. Управляющие сигналы, пере-
сылаемые по цепям DSR (контакт CN104/6), DTR
(контакт CN104/7), CTS (контакт CN104/8) и RTS
(контакт CN104/9) проходят через буферные уси-
лители на транзисторах Q101 - Q104. Диоды
D101 - D105, D114 и ВЧ дроссели FL101 - FL106
используются для защиты от бросков напряжения
и сглаживания возникающих помех в последова-
тельном интерфейсе. Дроссели L101 и L102 уста-
новлены на шинах питания.
Пульты игровой приставки подключаются к разъ-
емам коммутационной платы, которая в свою оче-
редь соединена с разъемом CN102 процессорного
модуля.
От центрального процессора на разъемы для под-
ключения пультов поступают сигналы выбора пульта
DTR0A (контакт CN102/5) и DTR0B (контакт
CN102/3), сигнал тактовой частоты SCK0 (контакт
CN102/10) и данные, передаваемые на пульт (кон-
такт CN102/8). Центральный процессор получает от
пульта запросы на прерывание INT (контакт CN102/
1), DSR (контакт CN102/2) и пакет с информацией
о нажатых на пульте кнопках по цепи RXD (контакт
CN102/6). Кроме того, на разъем выведены напря-
жения питания +8 В (контакт CN102/4) и +3,3 В
(контакт CN102/9). Для защиты от перегрузок и по-
мех, как и в последовательном интерфейсе, исполь-
зуются диоды и ВЧ дроссели в цепях питания.
4.3.2. Модуль
графического процессора
Рассмотрим модуль графического процессора игро-
вой приставки SONY PLAYSTATION, формирую-
щий видеосигнал. Его принципиальная схема при-
ведена на рис. 4.12.
Обработкой графической информации в пристав-
ке SONY PLAYSTATION занимается микросхема
графического процессора IC203 (CXD8561Q). Как
и в большинстве игровых приставок, видеопроцессор
является заказной микросхемой и не имеет аналогов.
Данные, необходимые при формировании изображе-
ния, хранятся в видеопамяти, в качестве которой при-
меняется микросхема 32-разрядного динамического
ОЗУ типа SGRAM IC201 (KM4132G2710) объемом
1 Мб. Вместо указанной могут использоваться мик-
росхемы pPD481850GF-A12 или цРВ481850-А10.
Микросхема IC202 (TDA8771AH) представляет со-
бой трехканальный ЦАП, преобразующий 24-разряд-
ный цифровой код от графического процессора в три
аналоговых сигнала основных цветов.
Обмен данными между графическим и централь-
ным процессорами приставки происходит по 32-раз-
рядной шине данных GPUD, подключенной к вы-
водам IC203/24-28,31-36,39-42,45-50,53-59,62-65.
148
Принципиальная схема. Модуль графического процессора
VIDC-+5B
VID_GND
VDACB
VDACG
VDACR
25
27
26
24
23
co
m
CD
m
B6
B7
GO
G1
G2
G3
G4
G5
G6
G7
RO
TDAB771AH
22
21
2
SG3
SG4
SG5
7
16
19
4
SG7
3
15
SG6
20
(5501/5502)
SGO
SG2
SG1
(5500)
DIG_+3,3B
FSC
CSYNC
SBO
SB1
SB2
SB3
SB4
SB5
SB6
SB7
SGO
SG1
SG2
SG3
Г
C206
0,1 F
G
X201
R2O2
CL202
* X201
Модель 5500/5501: 53,69МГц
Модель 5502: 53,20МГц
R204
220
NTPL
—VSYNC <Д
158
59
60
SBO
SB1
16
SB2
162
157
РСК >
DBLCLK >
GPUCS >
GPUA2 >
GPURO >
GPURW >
GPUDACK >
RES3.3G >
SYSCLKO >
GPUDREQ >
GPUINT >
HBLANK >
VBLANK >
Шина данных
графического
процессора
-HSYNC
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
SB3
164
Vss
Vdd
166
SB4
167
SB5
168
SB6
169
SB7
170
SGO
<• 4165
С21 1
ЮООпФ* || ,
SG4
SG5
SG6
SG7
SRO
SR1
SR2
SR3
SR4
SR5
SR6
SR7
SG3
Vss
Vdd
SG4
SG5
SG6
SG7
SRO
SR1
SR2
SR3
Vss
Vdd
SR4
SR5
SR6
SR7
Vss
Vdd
VCKN-A
. || <
Vdd
Vss
Vdd
VCKP-A
Vdd
Vss
PCK
Vss
Vdd
DMASK
DDE2
Vss
Vdd
—DSYSCK
Vss
Vdd
171) SG1
-(172) SG2
173
174
175
76
177
178
179
180
181
82
183
184
186
187
188
89
90
4 4191
192
4193
194
195
196
198
199
200
• 4201
202
203
204
-4205
206
207
T
C244
< 4185
C210
0,1 F
O,1°F 1 И И19?
R2O6 22
C209
0,1 F
II f4208
Рис. 4.12. Принципиальная схема модуля графического процессора
игровой приставки SONY PLAYSTATION (1 из 3)
Принципиальная схема: Модуль графического процессора
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
^•ssasitisW-'^*
FD13
FD15
99
98
96
Vss
1
T
3
FD1 1
FD12
FD14
FD16
Vdd
FD1 7
FD18
FD19
FD20
FD21
FD22
FD23
Vss
Vdd
FD24
FD25
FD26
FD27
FD28
Vss
Vdd
FD29
FD30
FD31
Vss
Vdd
TESTO
TEST1
TEST2
TEST3
PCKSLO
PCKSL1
PCKSL2
Vdd
Vss
DO
D1
D2
D3
Vdd
Vss
D4
D5
D6
D7
D8
D9
00
m
m
D10
14X15X16X17
GO
09
09
09
09
09
09
00
IC203
CXDB561Q
Г росрический
процессор
I
FD 10(104''
103
102
01
100
97
95
94
93
92
9
9C
89
88
87
86
85
84
83
82
81
8C
77
76
75
74
73
72
71
7C
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
22
24
25
2C
23
26
27
3C
38
42
45
Рис. 4.12. Принципиальная схема модуля графического процессора
игровой приставки SONY PLAYSTATION (2 из 3)
150
Принципиальная схема. Модуль графического процессора
GPUDO
GPUD1
LA9
LA7
LA б
LA5
LA4
LA3
LA2
LA1
LAO
LA9
C227
0,1 F
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
C240
0,01 В
FD17
FD18
FD19
FD20
FD21
FD22
FD23
FD17 FD18 ...
FD19
FD20
FD21 FD22 -
FD23
_|| FD24
FD25
FD26
FD27
FD28
FD29
FD30
FD31
C220
0,1
00 Q FD19
С224
0.1 F
GPUD2
GPUD3
GPUD4
GPUD5
GPUD6
GPUD7
GPUD8
GPUD9
GPUD1O
Рис. 4.12. Принципиальная схема модуля графического процессора
игровой приставки SONY PLAYSTATION (3 из 3)
151
Принципиальная схема. Формирователь аудио- и видеосигналов
-’-WStSSRS;-;-
AUD_GND
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
R443
0
AUD_+5B
AUD_GND>f
RES3.3>
SPCLK>
SPBCK>
SPDATA >
SPLRCK>
SPMUTE>
ill L IL .
C404
ЮООпФ
В
(5501/5502)
R445 - 220
C457
0,1 F
C445
0,01
В
R446
2700
C444
=7 0,01
L401
1 ОмкГ h
C407 J+
10 16B"j“
R444
10
C42
10 16B
CL401
R426
1K
R424 П
100K Ц
оо
v
R430
100
tn
RD3.95B
_ D406
2\ RD3.95B
RD
4
RST
5
6
CKS
7
DCK
8
SO
9
0
NC
1
12
NC
DVss
C443 +
22
6,3B
IC403 АК4309
1 )TST1
2 )DVdd
MCLK
XRSCK
2 7
VrefL
26
VrefH
NC
25
NC
24
23
AVss
22
AVdd
VCOM
21
20
AOUTL
AOUTR
NC
18
NC
C408 C406
0,1 F 10 16B
Q401
DTC144EKA
19
D401 г---,
BAP202U । r
-------—-4 a
ю oo
D409
RD3.95B
2\
D408
RD3.95B
C423
10 16B
R425
1K
R429
100
FB401
* FB401, FB402
5500: FERRITE BEAD
5501/5502: CONDUCTOR CHIP
FB402 *
cr T_
Q402 '
DTA144EKA
FB501
FB502
C529
ЮОпФ CH
C530
ЮОпФ CH
CN502
CL501
CL502
CL503
CL504
CL505
CL506
CL507
CL.508
CL509
CL510
CL51 1
CL512
M_R
M_G
M_B
M...DCOUT
M_C
M_YCGND
M_Y
M „VIDEO
M._VIGND
M_AUR
M_AUGND
M_AUL
I
7
C524 D501 37
QI [7 MAS 120
D502 _
MA8120A
ESC
R501-L C501
2,2K T 5пФ CH
R522
Cr)22 D503 J/
220 4B MA8120
C522
CSYNC >
75
R521
-pil—D504
C528 MA812O2\
220 4B
VID2_+5B
VDACR
R503...R505
5500: 390
5501/5502: 150
VDACG >
R541...R543
5500: 390
5501/5502: 0
VDACB
VIU_GND
VID2_ + 5B
NTPL >
C506
0.1 F
R502 2.2K
C502 47пФ CH
R505!
R54 1
4
5
0503 2SA1037AK
R542
C504
0.1 F
R504
0502 2SA1037AK
R543
Q501 2SA1037AK
R503
4
C505
0,1 F
IH
C508
47
6
7
8
9
0
12
6,3B
C509
0,1 F
-И
IC501 CXA1645M
GND1 GND2 (28/
RIN ROUT (27)
GIN GOUT i (26/
BIN BOUT - (25)
NC CVOUT ।
SCIN Vcc2l (23}
NPIN FOi (22)
BFOUT YTRAPI C21)
YCLPC YOUTl (20}
SYNC1 COUTI C19>
NC Vref I
Vcc 1 Iref I fl7>
R520 75
C518 D5°5 V
220 4 В MA8120
—Til—1 D506 ,
C527 МА8120Ф
C518
220 4B
R519 75
R516 *
C51 1
10 16B
L507
C523 ЗЗмкГн
R518 75
R517 75
0505
2SC1623-L5L6
C507
0.1 В
R515
47K
C510
Hh
0,1 F
R528
1K
R527
18K
R525
5600
R530
3.3
0504
2SB624
D507
MA8120
’ C523
5500/5501: 62пФ
5502: 59пФ
*
* R516
5500/5501: 20K
5502: 18K
Рис. 4.13. Принципиальная схема формирователя аудио- и видеосигналов
игровой приставки SONY PLAYSTATION
152
Принципиальная схема. Модуль графического процессора
Регистр графического процессора, с которым произ-
водится обмен, выбирается в зависимости от уровня
сигнала на шипе адреса GPUA2 (вывод IC203/2).
Также от центрального процессора поступают такто-
вые сигналы DBLCLK (вывод IC203/206), SYSCLK0
(вывод IC203/9) и управляющие сигналы GPUCS
(вывод IC203/1), GPURD (вывод IC203/3),
GPUWR (вывод IC203/4), RES (вывод IC203/6)
и GPUDACK (вывод IC201/5). Назначение этих
сигналов было описано в предыдущем разделе.
От графического процессора к центральному пере-
даются сигнал тактовой частоты 13,3 МГц РСК (вы-
вод IC203/199), сигналы кадровой VBLANK (вывод
IC203/17) и строчной HBLANK (вывод IC203/14)
разверток, сигнал запроса на прерывание GPUINT
(вывод IC203/13) и сигнал запроса на захват шин
GPUDREQ (вывод IC203/12).
Работа внутренних схем графического процессо-
ра, отвечающих за формирование выходных сигна-
лов развертки, тактируется внутренним генерато-
ром, частота которого стабилизирована кварцевым
резонатором Х201 (53,69 МГц).
Видеопамять обменивается информацией с графи-
ческим процессором игровой приставки посредством
32-разрядпой шипы данных FDD - FD31,9-разряд-
пой шипы данных LAO - LA9 и сигналов управле-
ния RAS (вывод IC201/27), CAS (вывод IC201/26),
WE (вывод IC201/25) и CS (вывод IC201/28). Сиг-
нал низкого уровня па входе CS разрешает обмен
данными с видеопамятью. При этом производимая
операция определяется уровнем сигнала на входе
WE (низкий логический уровень соответствует за-
писи). Адрес передается от графического процессо-
ра к видеопамяти в мультиплексном режиме, обыч-
ном для динамических ОЗУ. Сначала по шине
адреса пересылаются младшие девять разрядов ад-
реса, сопровождаемые сигналом RAS низкого логи-
ческого уровня, затем старшие девять разрядов,
которые запоминаются по спаду сигнала CAS. Ре-
генерация памяти происходит автоматически и за-
нимает 1024 цикла (16 мс).
Микросхема видеопамяти позволяет максималь-
но быстро изменять сохраненные данные. Для этого
в ней предусмотрены регистры цвета, маски и управ-
ления. Помещая определенные команды в регистр
управления, можно постранично записывать и счи-
тывать данные, производить ускоренную очистку
памяти и другие действия над содержимым видео-
памяти.
Микросхема IC202 представляет собой трехка-
пальный ЦАП, задачей которого является преобра-
зование получаемых от графического процессора
8-разрядпых кодов в аналоговые значения трех ос-
новных цветовых составляющих. Данные от графи-
ческого процессора передаются по трем 8-разряд-
пым шипам: SBO - SB7 (для кода синего цвета),
SG0 - SG7 (для кода зеленого цвета) и SR0 - SR7
(для кода красного цвета). Микросхема трансфор-
мирует полученные коды в аналоговые значения на-
пряжения на выходах OUTB (вывод IC202/36),
OUTG (вывод IC202/40) и OUTR (вывод 1С202/
44). Напряжения здесь изменяются от 0,2 В (когда
па все входы соответствующего капала ЦАП посту-
пают сигналы низкого логического уровня) до 3,2 В
(когда па все входы канала подается сигнал высоко-
го логического уровня). Работа цифро-аналогового
преобразователя тактируется сигналом РСК, снима-
емым с выхода IC203/199 графического процессора.
На рис. 4.13 приведена принципиальная схема
формирователя аудио- и видеосигналов, преобра-
зующего получаемые данные в сигналы на выход-
ном разъеме приставки. Формирователь звуковых
сигналов описывается в следующем разделе, а сей-
час мы рассмотрим только ту часть схемы, которая
генерирует полный видеосигнал.
Формирование низкочастотного телевизионного
сигнала игровой приставки SONY PLAYSTATION
происходит в микросхеме IC501 (СХА1645М). Сиг-
налы с выходов ЦАП IC202 поступают па входы
формирователя IC501 (выводы IC501/2-4) через
эмиттерные повторители па транзисторах Q501 -
Q503. Они предназначены для согласования уров-
ня выходных сигналов ЦАП (находящихся в пре-
делах 0,2-3,2 В) с входными уровнями микросхемы
1С501 (0-1 В). Кроме того, от графического процес-
сора приходят сигналы тактовой частоты 4,443 МГц
(вывод IC501/6), смесь кадровых и строчных син-
хроимпульсов CSYNC (вывод IC501/10) и логи-
ческий сигнал NTPL (вывод IC501/7), определяю-
щий кодировку формируемого видеосигнала (NTSC
пли PAL). В некоторых моделях сигнал NTPL не ис-
пользуется и вывод IC501/7 соединен через кон-
денсатор с общим проводом.
С выходов формирователя IC501 снимается шесть
сигналов, подающихся на выходной разъем CN502
видеоприставки. Сигнал M_VIDEO (вывод 1С501/
24) - это низкочастотный полный телевизионный
сигнал стандарта PAL пли NTSC амплитудой около
1,5 В. С выходов COUT (вывод IC501/19) и YOUT
(вывод IC501/20) снимаются раздельные цвето-
вая п яркостная составляющие видеосигнала. Так-
же микросхема генерирует выходные сигналы трех
цветовых составляющих ROUT (вывод IC501/27),
GOUT (вывод IC501/26) и BOUT (вывод IC501/25).
Сигналы поступают на контакты выходного разъема
CN501 через согласующие резисторы R517 - R521
(75 Ом). Видеосигнал проходит через раздели-
тельные конденсаторы С518, С527, яркостная со-
ставляющая - через конденсаторы С522, С528,
а цветовая составляющая — через конденсатор С524.
Стабилитроны D501 - D511 (МА8120) установлены
для защиты выходных цепей приставки от скачков
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
153
Принципиальная схема. Модуль контроллера привода CD-ROM
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
напряжения и статического электричества. Вместо
них можно использовать любые стабилитроны на
напряжение 4,7 В.
4.3.3. Модуль декодера
и звукового процессора
Модуль декодера осуществляет преобразование ин-
формации, полученной от контроллера CD-ROM,
в цифровые данные, передаваемые затем централь-
ному процессору. Звуковой процессор применяется
программами при формировании различных аудио-
эффектов. Принципиальная схема модуля, содержа-
щего декодер и звуковой процессор, представлена на
рис. 4.14.
Данные, считанные с компакт-диска, поступают
на вход декодера IC305 (CXD1815), работающего
совместно с процессором IC304 (SC430929PB). Эти
две микросхемы преобразуют параллельный поток
данных и корректируют возможные ошибки.
Для хранения данных декодер использует мик-
росхему буферного ОЗУ IC303 емкостью 32 Кб
с организацией 32Кх8.
К микросхеме звукового процессора CXD2925Q
(IC308) подключено звуковое ОЗУ IC309 (М5М
44260CJ) объемом 512 Кб с организацией 256Кх16.
В нем хранятся данные, необходимые при генера-
ции звукового сопровождения. Подробно об этой
области памяти рассказывалось в разделе, посвя-
щенном программной архитектуре звукового про-
цессора приставки.
Возможности музыкального процессора позволя-
ют использовать приставку SONY PLAYSTATION
как бытовой проигрыватель музыкальных компакт-
дисков. Для этого к выходу приставки рекомендует-
ся подключить стационарный усилитель либо сте-
реонаушники.
Цифровые аудиоданные последовательно пере-
даются от звукового процессора на вход формиро-
вателя аудиосигнала IC402 (см. рис. 4.13). Эта мик-
росхема представляет собой специализированный
двухканальный 16-разрядньш дельта-сигма ЦАП и ра-
ботает с частотой дискретизации 44,1 кГц, что вполне
достаточно для обеспечения качественного звучания.
Информация на ЦАП поступает по трем входам.
На вход SDATA (вывод IC402/9) последовательно,
бит за битом, приходят звуковые данные. Процесс
передачи синхронизируется сигналом на входе
BICK (вывод IC402/8). Уровень сигнала на входе
LRCK (вывод IC402/10) определяет канал, для ко-
торого пересылаются данные (если на этом входе
высокий уровень - передаются данные левого ка-
нала, если низкий - правого).
Работа формирователя аудиосигнала синхрони-
зируется поступающим на вход MCLK (вывод
IC402/6) тактовым сигналом частотой 16,9344 МГц.
Выходные сигналы левого и правого каналов
звукового сопровождения снимаются с выходов
микросхемы IC402 (выводы IC402/15,16) и посту-
пают на выходной разъем CN502. Транзисторные
ключи Q403 и Q404 используются для блокиров-
ки звука при нажатии кнопки RESET или при на-
личии сигнала высокого логического уровня на
выводе IC308/37.
4.3.4. Модуль контроллера
привода CD-ROM
На рис. 4.15 изображена принципиальная схема
модуля контроллера CD-ROM и цепей его сопря-
жения с процессорной платой.
Три идентичных усилительных канала микросхе-
мы IC702 (BA6392FP фирмы ROHM), специально
предназначенной для проигрывателей CD и приво-
дов CD-ROM, управляют сервоприводом объектива
(LI, L2) и двигателем привода СГ (М2), а дифферен-
циальный четвертый - двигателем вращения диска
(Ml). Основные параметры BA6392FP таковы: на-
пряжение питания 6 16 В, ток покоя 8-18 мА, мощ-
ность рассеивания 1,7 Вт, сопротивление нагрузок
8-20 Ом, выходное напряжение 1,3-5,2 В, коэффи-
циент усиления канала вращения диска 8-13 дБ.
В исходном состоянии, когда двигатели остановлены,
напряжения на всех выходах BA6392FP одинаковы
и близки к 3,5 В. В зависимости от разности напря-
жений на соответствующих выходах двигатели вра-
щаются по часовой или против часовой стрелки.
Двигатель Ml контролируется комбинирован-
ным способом: грубо - изменением постоянной со-
ставляющей, точно - пачками разнополярных им-
пульсов. Рабочее направление вращения диска - по
часовой стрелке (при положительной разности на-
пряжений на выводах 27 и 26 IC702). Открывание
крышки привода CD-ROM вызывает экстренное
торможение путем подачи на двигатель Ml напря-
жения обратной полярности.
Управление шаговым двигателем М2, перемеща-
ющим считывающую головку, только импульсное.
Контакты выключателя S1 замыкаются, когда каретка
СГ упирается в ограничитель. Система позициониро-
вания считывающей головки получает сигнал, запре-
щающий дальнейшее передвижение СГ.
Коммутационные помехи подавляются фильтра-
ми FB701 - FB704, а выбросы напряжения ограни-
чиваются стабилитронами VD1 - VD4 с напряже-
нием стабилизации 4,7 В.
Сервопривод объектива действует подобно ди-
намической головке громкоговорителя, в которой
звуковая катушка, находящаяся в поле постоянно-
го магнита, движется под действием протекающего
тока. Обмотки L1 и L2 сервопривода перемещают
объектив во взаимно перпендикулярных плоскостях.
154
Принципиальная схема. Блок питания
Излучающий диод лазера А1 включен в коллек-
торную цепь транзистора Q701. Номинальная сила
тока составляет 60-80 мА. Подстройка осущест-
вляется резистором R1, входящим в цепь обратной
связи CAP-МЛ. Он расположен на гибком печат-
ном ленточном кабеле, соединяющем СГ с вилкой
CN702. При уменьшении сопротивления R1 сила
тока и мощность излучения лазера увеличиваются.
Сигналы, снимаемые с матрицы фототранзисторов
А2, поступают на микросхему IC703 (A1791N) че-
рез разделительные конденсаторы СЗ — С6. Чув-
ствительность устройства регулируется подстроеч-
ным резистором RV703.
4.3.5. Модуль адаптации
Назначение этого модуля — обеспечивать работу
приставки с компакт-дисками как фирменного, так
и нефирменного производства с маркировками
«NTSC U/С» (США/Канада), «NTSC J» (Япония),
«PAL» (Европа, Азия). Здесь применен 8-разрядный
микроконтроллер Z86E0208PSC фирмы ZILOG
с масочным ПЗУ объемом 512 байт (IC801), в кото-
рое при изготовлении заносится программа, пред-
ставленная заказчиком. Тактовая частота 4,433 МГц
равна частоте цветовой поднесущей в системе PAL
и задается кварцевым резонатором Х801.
Принципиальная схема устройства показана на
рис. 4.16.
В блоке использованы всего два выхода микро-
контроллера. На первом из них (Q1) формируется
синхропоследовательность для интерфейса CD-
ROM, на втором (Q2) при включении питания ге-
нерируется импульс высокого логического уровня
длительностью около 1 с.
Все элементы блока адаптации установлены на
отдельной печатной плате, приклеенной к обратной
стороне процессорной платы приставки и соеди-
ненной с ней проводами. В некоторых моделях
PLAYSTATION вместо Z86E0208PSC применяется
микроконтроллер 12С508/Р фирмы MICROCHIP
TECHNOLOGY.
4.3.6. Игровой пульт
Принципиальная схема стандартного игрового пуль-
та, поставляемого в комплекте с игровой приставкой
SOW PLAYSTATION, приведена на рис. 4.17.
Основой игрового пульта является микросхема
IC1 (23-0271 А), производящая опрос всех кнопок
и формирование пакетов импульсов, передаваемых
центральному процессору приставки. Процессор
опрашивает состояния кнопок 50 раз в секунду во
время обратного хода кадровой развертки. Для этого
генерируются сигналы PEI, РЕ2, SYN1 и SYN2,
представляющие собой пачки импульсов с периодом
повторения 20 мс. Микросхема пульта вырабатывает на
выходе OUT1 последовательность синхроимпульсов,
а на выходе OUT2 - последовательность импульсов,
зависящую от состояния кнопок пульта. Нажатым
кнопкам соответствуют импульсы отрицательной
полярности.
Работа микросхемы IC1 синхронизируется внут-
ренним генератором, частота которого стабилизи-
рована кварцевым резонатором XI (4 МГц).
4.3.7. Блок питания
В SONY PLAYSTATION имеется импульсный стаби-
лизатор, обеспечивающий высокую экономичность
и стабильность выходных напряжений при колебани-
ях напряжения в сети и изменении токов нагрузки.
Игровая приставка потребляет ток до 0,8 А по цепи
+8 В и до 0,5 А по цепи +3,3 В. Принципиальная схе-
ма блока питания приведена на рис. 4.18.
Через помехоподавляющий фильтр С001, L001
и С002 сетевое напряжение поступает на выпрями-
тель (диодный мост D001 - D004) и далее на пре-
образователь напряжения. Конденсатор С003 сгла-
живает пульсации. Конденсаторы СОЮ, СОИ, для
повышения надежности соединенные последова-
тельно, цепью GND связывают выпрямитель с об-
щим проводом приставки, что ослабляет влияние
на нее помех, проникающих по сети. По правилам
электробезопасности суммарная емкость этих кон-
денсаторов не должна превышать 6600 пФ.
Однотактный преобразователь напряжения со-
бран по схеме блокинг-генератора с обратным
включением диода. Его работа основана на накопле-
нии энергии в магнитном поле трансформатора
Т001 во время открытого состояния ключа и после-
дующей передаче ее в нагрузку. «Самозащищенный»
ключ на транзисторах Q001 и Q002 устроен таким
образом, что при перегрузках и переходных процес-
сах ток, протекающий через него, ограничивается,
не достигая опасных значений. Датчик тока состо-
ит из резистора R009 и диода D008. Напряжение
с него поступает на базу транзистора Q002, откры-
вая его при резком нарастании тока эмиттера тран-
зистора Q001. В результате базовая цепь последнего
шунтируется, что и приводит к ограничению тока.
При начальном запуске ключ открывается то-
ком, протекающим через резистор R003. Напряже-
ние обратной связи, необходимое для самовоз-
буждения блокинг-генератора, подается на базу
транзистора Q001 с обмотки II трансформатора
TOOL Конденсатор С004 вместе с емкостью коллек-
торного перехода транзистора Q001 и индуктивно-
стью рассеивания трансформатора Т001 образуют
последовательный колебательный контур, который
настроен на частоту, близкую к частоте преобразо-
вания. В результате напряжение на коллекторе
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
755
Принципиальная схема. Модуль декодера и аудиопроцессора
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
< SUBO
< SENS
< SYSCLK
< CDLRCK
< CDDATA
< CDBCK
< C2P0
< EMPH
L303
1 ОмкГн
L304
1 ОмкГ н
CDLRCK
CDDATA
CDBCK
C2P0
EMPH
30
25
22
29
28
26
23
20
24
<л
SDO
SD1
HD1
PMP
87
C2P0
CDBCK
86
BCLK
CDDATA
85
DATA
CDLRCK
84
LRCK
83
RMCK
88
R302
C301 ЮК
ЮООпФ
43
CDMA1
CDMA2
44
32
33
SD3
37
SD7
35
SD5
SD6
DIG_GND
DIG_+3,3B
RES3.3
SPUREQ
SPUINI
SPUDACK
SRD
SWRD
SPUCS
CDRDCS
CDRDINT
(5500: -31/-41
/5501/5502)
DIG_+3,3B
DIG_GND
SER_GND
DIG_+5B
L..J
/ ХсЛ apYx / ТxрУxpixлYxxYxoYx 1 YxrYоqYopYo / U
MOD 6 _____ MCD7 (40)DECD6 (4j) DECD7 . О ОIO / АЭ О/J ОJLЭ H АЭ ОА-J Z А О I /О U A Z J _J ОТ О О О a Q Я n 5 о Z bJ о Ш о о о о О О > о X (X Ld bJ UJ bJ UJ Lj? UJ {/) > (Г Q_ Q О О Q ° О 0^1^ az ''
ro CN О
о о о (/J) ( )
bJ UJ bJ bJ bJ
Q Q о Q о
Y CY (Y) fY (ю
31)HDO
SD2
HD2
HD3
SD4
HD4
HD5
HD6
HD7
HOP
GND
HDRQ
XHAC
CDMAO
MAO
MA1
MA2
TD1
TD2
MA3
MA4
MA5
R301
ЮК
IC305
CXD1815Q
CDMA3
CDMA4
CDMA5
34
38
39
40
41
42
45
46
47
CKSL
HCLK
72
52
53
54
55
56
59
57
58
60
62
63
65
66
68
69
/6
79
64
67
70
73
78
80
28
27
26
25
24
23
22
20
1 5
7
12
13
tn
48
49
50
36
R.34.Q2< D
R341 22? у, ™
И2Ж CLKO
--------< SCON
--------<-SQCK
--------< MRSW
TD3(1OO)
TD4(99)
TD5(98)
TD6(97)
TD7 (96)
MUTE (95)
BCK0(94}
WCKO(93)
LRCO(92)
dato(sh)
GND(90}
XRST (89)
C307 0,1 F
< МСЕК
< RES3.3
< XRST
< EDON
,Г L C327 1 J Ц1
R304 1K
R303 1K
R339 EMPH
1K C2P0
82)- ♦
81
R343
4700
(5500: -11/-21)
Рис. 4.14. Принципиальная схема модуля декодера и аудиопроцессора игровой приставки SONY PLAYSTATION (1 из 2)
156
Принципиальная схема. Блок питания
Q001 приобретает почти синусоидальную форму
Демпфирующая цепь С005, R002 и D005 защищает
транзистор Q001 от перегрузки.
Напряжения вторичных обмоток III и IV транс-
форматора Т001 выпрямляются диодами с барьером
Шоттки D101, D102. Их отличает малое прямое па-
дение напряжения, что улучшает энергетические
R330
10K
C310
0,1 Г
C324
I 10E
19
20
23
24
25
26
27
28
29
30
EXTLRCK>n
100
XCS(31b
WCKO
99
SPDATA>
DATO
LRCO
XWRI33,
SPLRCK>*
97
DACK(34}—
SPPBCK>-*-
BCKO
1K
96
XIRQ(35>
EXTDATA>
DTI В
DREQ (36
LRIB
MUTE(37P
—CSPMUTE
BOB
DTIA
XRST (38}
LRIA
BOA
Vss(40
Vss
SYSCK 41}
XCK
Vss
XDEI
TEST 44
SPMD15
86
XWEI
MD1 5(45}
SPMD14
MD 1 4 (46
SPMD13
MD 13(47}-
SPMD12
R329
10K
EXTBCK>—i
Vss(42)—
TEST (43)
98
SPMD11
SPMD10
R324 1K
XDEO
XWEO
MAO
SPMAO
—(82) MA1
SPMA1
81) MA2
00
01
R320
75
R323
1K
IC308
CXD2925Q
(CPU-C)
CL301
SPCLK>f * H
R325
MD12 48)-
MD1 1 49}
MD10
79
78
77
75
74
65
56
76
73
72
70
69
67
66
64
63
59
55
54
53
52
57
COLRCK
37
38
40
36
39
R335
22
95
94
93
92
9
90
89
88
87
85
84
83
(5501/5502)
R332
0
ГЛ1 R322
LTJ (5500)
характеристики источника питания. Резисторы R101,
R102 - балластные: они создают нагрузку, необхо-
димую для устойчивого функционирования пре-
образователя при различных режимах работы
приставки. Стабилитрон D103 с напряжением ста-
билизации 10 В ограничивает возможные при пере-
ходных процессах всплески напряжения. Пройдя
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
Рис. 4.14. Принципиальная схема модуля декодера и аудиопроцессора игровой приставки SONY PLAYSTATION (2 из 2)
Принципиальная схема. Модуль контроллера CD-ROM
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
LDON >
i
* R706
>:
C756
22 6.3B
C701
0.1 F
SER_+3,5B
SER_GND
C715
0,047=Ь
10K
HI-
5500: -1 1/-21: 1M r74.
5500: —31/—41 Ь , T
/5501/5502:470K 0,1
С714 0,0047 В
тт R710
e
(51)GT0Rzj
(52) XUGF
(53) XPLCK
(54) GFS
RFO(25)
ADICH24
57) XRADF
AVS2(23
IGEN122
CL772 O-(60) MNT1
AVD2(21H
CL773 O—(61) MNTO
VCKK20
VPC0I19
SYSCLK
<62)XTA1
PD0(18
T63)XTAO
TES3117
(64) XTSL
TES2116H- f
(65) DVss
(66 FST1
IC701
CXD25450
CL7710-459) MNT2
CL770 0-458) MNT3
(55) RECK
---(56)С2РО
CDLRCK
CDLRCK
CDDATA
CDDATA
CDBCLK
CDBCLK
C2PO
C2PO
EMPH
EMPH
H67 ESTO
MCLK
VC (30}
FE 29b
SE(28
ТЕ (27}
RFDC(26}
C716 _L
0,1 F ""
R732
15K
6 R717
2? ioo
DVss(15
TEST (1 4
-----О CL760
R723
33K |
R727
15K
R733
100K
VCOI 13
468) FSOF
VCOO(12
<69)C16M
FFON(11
MD2
FRDR(10
DOUT
EMPH
FRON(9
FFDRf 8
WFCK
SCDR
TFON( 7 )
SCOR
TRDR 6 }
SBSO
EXCK
TRON(5
SUBQ
TFDR(4 У-
SUBQ
SFON(3 )
SOCK
SRDR(2
KSRON( 1
SENS
(/)
100
(5500)
CS
XRST
SCLK
DATO
XLTC
CLKO
R780 0
(5501/5502)
CL733
ЕМРН
70
77
(5500)
2
7
3
6
4
5
16
2
15
3DC705
3
4
C719 R728 3300 0,5%
R708 47K
4
U)
5
12
R721
6
7
8
Г
t
C725
0,1 В
C708
1500пФ В
2200пФ
В
R777 0
_Юйк
LHCJ
(5501/5502)
C707 R716
0,022 В О
_______1500
2200пФ 0,5%
В
C713
2200пФ
В
C712
C723
2200пФ
В
С722
13
7
CL774 0-473
78)SOCK
79) MUTE
80) SENS
'СО (X СК v —1 о сл со 1 1— 1— 3 v о о о 'О р ск ОС р 5 о Q. О со о V о о а. ।— (Л
X а со а а X о о о Q р —1 03
ш) (82) (83) (84) (85) (86) (87) (88) (89) (90) (7?) (92) (93) (94) (95) (96) (97) (98) (99
R778 0 ! Л!
(5501/5502)0
~](5500)
C755 0,1 F
R709 220K my
3DC704
C745 10 16B
R702
15K
SPEED
MOT_+8B
MOT_GND
CG
R719
470K
R725
75K
C71 1 2,2 6,3В
C716 0,1 F
II ----
C748 0,1 F
0,04 7 В
Рис. 4.15. Принципиальная схема модуля контроллера CD-ROM
игровой приставки SONY PLAYSTATION (1 из 3)
158
Принципиальная схема. Блок питания
Q CL707
-4—----
“7------Г"
CL712 CL706
С741 22 4В
----II-
С740 22 4В
-НИ-—т
CN702 16Р
CL775
CL776
CL777
CL778
CL779
• -
R749
9К
CL780
CL781
CL783
-— • -
LD
Vcc
VC
F-
NC
PD2
PD1
E-
Ml
VR
GND
LS
FSC+
TRK +
TRK-
FCS-
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
(5501/5502)
JZ и
[ D7035 I l D701 I I 5 \ L Z D704 J ID701...D704 । MA8120 \ D702 ’
L ’ J
* FB702 . . - - . _
CL785 * FB701 '
e у * FB703 ' . .
* FB704 " X
* FB701...FB704
5500: -11/—21: CONDUCTOR CHIP
5500: —31/—41 /5501/5502: FERRITE BEAD
CN701 4P
CL784
• SP-
/з) SP +
CL786 >-<
• — (2) SL+
CL787
—_ Ф — CD SL-
RV705
47K
—♦
6
CL751
Рис. 4.15. Принципиальная схема модуля контроллера CD-ROM
игровой приставки SONY PLAYSTATION (2 из 3)
сглаживающие фильтры (С101, L101, С103 и С102,
L102, С104), выпрямленные напряжения через вы-
ключатель5\У101 и разъем CN101 поступают на про-
цессорную плату
После замыкания контактов выключателя SW101
при наличии обоих питающих напряжений загора-
ется зеленый светодиод PD101, включенный в кол-
лекторную цепь транзистора Q101. Он состоит из
159
Принципиальная схема. Блок питания
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
1
1
Рис. 4.15. Принципиальная схема модуля контроллера CD-ROM игровой приставки SONY PLAYSTATION (3 из 3)
IC801
Z86E0208PSC
OSC1 OSC2 CPU Q1 02
Vcc GND
С1 20
СП Z801 4,433МГц
т
— ♦ --------------
*► К Выводу
► К Выводу
*► 4-5В
сз
0,047мк
IC705/1
IC705/7
С2
20
PCLK
-----► К Выводу
IC501/6
Рис. 4.16. Принципиальная схема модуля адаптации
игровой приставки SONY PLAYSTATION
обычного транзистора и резистивного делителя
в цени базы. Вход последнего можно соединять не-
посредственно с выходом цифровой ТТЛ или
КМОП мн к рос хсм ы.
Вы ход 11 ые н ап ряже] и ш преобразователя стабил п-
зированы. Регулирование происходит с помощью
микросхемы IC101, на вход которой через делитель
из резисторов R106, R107 поступает напряжение,
пропорциональное выходному в цепи +3,3 В, а на
другой вход - опорное напряжение. Выход IC101
через резисторы R103, R104 и светодиод оптрона
РС001 подключается к цепи +8 В. При повышении
любого из выходных напряжений ток через светоди-
од увеличивается. В результате изменяется сопротив-
ление участка коллектор-эмиттер фототранзистора
оптрона в цени обратной связи блокинг-генератора.
Этот процесс вызывает такое изменение частоты
и длительности генерируемых импульсов, что выход-
ные напряжения возвращаются к установившимся
значениям. Например, при увеличении нагрузки
в 1,5 раза частота преобразования снижается со 160
до 120 кГц с одновременным увеличением относи-
тельной длительности открытого состояния транзис-
тора Q001 (то есть времени накопления энергии).
Цени R010, С008 и R105, С105 придают системе ав-
томатического регулирования iiai[ряже!]i1я динами-
ческую устойчивость. Коэффициент стабилизации
довольно высок: напряжение в цепи +3,3 В изменяет-
ся всего на 0,5% при увеличении тока нагрузки
с 0,035 до 1 А. Для напряжения +8 В этот показатель
хуже: 11% при изменении тока нагрузки от 0,075 до
1 А. При коротком замыкании любого из вы ходов
преобразователь переходит в режим стабилизации
тока. После устранения замыкания нормальная ра-
бота восстанавливается автоматы чески.
Как уже говорилось, преобразователь функцио-
нирует все время, пока сетевая вилка вставлена
в розетку, даже если контакты выключателя SW101
«POWER» разомкнуты. Открывая игровую при-
ставку для ремонта, ire забыванте о высоком напря-
жении на этой плате (до 300 В).
На плате питания находится таймер IC102, фор-
мирующий сигнал сброса для процессорной платы.
В момент включения приставки кнопкой SW101,
а также при нажатии и отпускании кнопки SW102
на выходе таймера появляется импульс низкого ло-
гического уровня длительностью 500 мс. Времяза-
дающим элементом является конденсатор С106.
Цепь D105, Rill, R112, D106 обеспечивает генера-
цию сигнала сброса при кратковременном уменьше-
нии напряжения в цепи +8 В. В результате после так
160
Характерные неисправности
^*Я*ЭД«'<ч'Й»«й
Рис. 4.17. Принципиальная схема стандартного игрового пульта для приставки SONY PLAYSTATION
называемых просадок сетевого напряжения цен-
тральный процессор автоматически перезапуска-
ется. Напряжение стабилизации D105 составляет
5,1 В.
Транзистор Q101 при необходимости можно заме-
нить обычным маломощным п-р-п транзистором,
включив последовательно в его базовую цепь резис-
тор со противлением -10 кОм. В качестве IC101 до-
пустимо использовать TLP431CLP, TL1431 (TEXAS
INSTRUMENTS), НА174 (HITACHI), КР142ЕН19.
В последнем случае нужно иметь в виду, что
встречаются приборы с нестандартным расположе-
нием выводов. Оптрон TLP621 (РС001) можно за-
менить на TLP521 или NEC256.
Для повышения надежности платы питания
и уменьшения помех другим электронным приборам,
создаваемых ею в момент подключения к сети, в раз-
рыв одного из сетевых проводов (например, последо-
вательно с плавкой вставкой F001) рекомендуется
добавить резистор сопротивлением 10-100 Ом и но-
минальной мощностью не менее 2 Вт.
4.4. Характерные
неисправности
Казалось бы, усложнение принципиальной схемы
приставки должно привести к увеличению списка
возможных неисправностей и способов их устране-
ния. Однако па самом деле ремонт игровой при-
ставки SONY PLAYSTATION зачастую сводится
к замене всей процессорной платы. Это связано как
с трудностью перепайки микросхем, так и с тем, что
сами микросхемы являются специализированными
и отсутствуют в продаже. Поэтому ниже рассмат-
риваются только те поломки, которые можно ис-
править, нс заменяя процессорную плату и исполь-
зуя доступные радиодетали.
Приставка не включается
Возможные причины: неисправность источника пи-
тания; короткое замыкание или обрыв цепей пита-
ния; неисправность процессорного модуля.
Алгоритм поиска неисправности:
1. Проверить выходные напряжения импульсного
стабилизатора. В случае их отсутствия убедиться
в исправности предохранителя F001. Если предо -
хранитель неисправен, а новый предохранитель
при замене сразу перегорает, проверить диодный
мост D001 - D004 и транзистор Q001.
2. При выходе напряжений за пределы 7,6-8,2 и 3,2-
3,4 В осмотреть выходные цепи блока питания (ди-
оды D101 - D104, конденсаторы С101 - С104 и мик-
росхему IC101).
3. Проверить блоки приставки на отсутствие коротких
замыканий. При возникновении замыкания часто
происходит обрыв одного из печатных проводников
в цепи питания, поэтому следует тщательно осмотреть
платы и удостовериться в целостности проводников.
4. Если короткого замыкания нет, проверить внутрен-
ний стабилизатор игровой приставки. Напряжения
на выходе стабилизатора должны быть в пределах
5±0,1 и 8±0,25 В. Если напряжение выходит за ука-
занные границы, в стабилизаторе следует прове-
рить диоды D2, D3 и микросхему IC501.
5. После проверки цепей питания необходимо прове-
рить формирование сигнала RESET. При нажатии
на кнопку RESET на контакте разъема CN101/5 дол-
жен появиться кратковременный импульс низкого
уровня. Наличие на этом контакте постоянного низ-
кого уровня или отсутствие импульса при нажатии
кнопки позволяет сделать вывод о неисправности
кнопки SW102 или микросхемы IC102.
Приставка работает нестабильно
Возможные причины: неисправность импульсного
стабилизатора или внутреннего стабилизатора;
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
161
Принципиальная схема. Блок питания игровой приставки SONY PLAYSTATION
СО О Ю О Z*
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
R109 13,ЗК R1 10 ЮК
С104 180 16В
<~] С103 180 16В
’ RIO?4”3 1,1 К (ADJ)|
г
г
I
□
м
о
О
о
о
<=;
О
Е
О
Е
СГ
I
ф
£
о
ГО
ф
D
X
ф
J
о
т
m
о
ю
о
S
Е
ф
ф
«ч
(Т>
Рис. 4.18а. Принципиальная схема блока питания игровой приставки SONY PLAYSTATION
162
Характерные неисправности
Рис. 4.186. Принципиальная схема блока питания игровой приставки SONY PLAYSTATION
ИГРОВАЯ ПРИСТАВКА SONY PLAYSTATION
загрязнение контактов разъема для подключения
картриджа.
Алгоритм поиска неисправности:
1. Проверить выходное напряжение импульсного ста-
билизатора. Сбой возникает из-за малой нагрузоч-
ной способности стабилизатора. Часто эта пробле-
ма вызвана неисправностью микросхемы IC101.
2. Проверить надежность контактных соединений
в разъемах приставки, при необходимости проте-
реть контакты разъемов спиртом.
3. Проверить внутренний стабилизатор игровой при-
ставки. Особое внимание следует обратить на уро-
вень пульсаций выходного напряжения. Они не
должны превышать 100 мВ.
4. Возможным способом решения проблемы явля-
ется установка в цепи питания дополнительных
конденсаторов номиналом 100 мкФ х 16 В и 0,01 мкФ
на каждой плате приставки и в картридже.
Не работают некоторые кнопки пульта
Возможные причины: загрязнение1 пульта или неис-
правность м 11 кросхем ы.
Алгоритм поиска неисправности:
1. Протереть спиртом плату пульта и резиновую про-
кладку с токопроводящими площадками.
2. Если неисправны токопроводящие площадки на ре-
зиновой прокладке, то можно восстановить их, на-
клеив кусочки фольги. Удобнее использовать фоль-
гу от сигаретных пачек: она имеет бумажную основу,
что обеспечивает лучшее приклеивание к резине.
3. Токопроводящее покрытие на плате воссоздается
с помощью очищенного монтажного провода.