GC SPECS. На русском и с дополнениями. Всего существет много версий железа куба: Marlin, Arthur, HW1 - но это всё платформы для разработчиков. На практике при разработке игр используется только железо спецификации HW2 - Dolphin, о которой речь пойдет ниже. Спецификации Nintendo GAMECUBE (retail HW2 production board). Архитектура : на материнской плате расположены: CPU Gekko, ASIC Flipper, два чипа оперативки (RAM) по 12 мб каждый, а также дополнительная память (ARAM) размером 16 мб (всего системной памяти - 40 мб). Внутри Flipper'а находится всё железо, кроме tv-out видеосистемы, которая расположена на задней стороне материнской платы. Характеристики шины : 32 разряда на адресную, 64 разряда на шину данных. Частота шины : 162 мгц (1/3 от частоты CPU). Пропускная способность 1.3 гига в секунду. Дополнительная память (ARAM) имеет 8-разрядную шину, работает на 81 мгц (1/2 от системной шины). Пропускная способность ARAM - 80 мегабайт в секунду. Доступ к ARAM осуществляется через DMA-канал. Микропроцессор (CPU) : модифицированный IBM PowerPC 750. Кодовое имя "Gekko". Характеристики : 0.18 медь (рассеиваемая мощность всего 5 вт), размер кристалла ~40 мм2, 21 млн. транзисторов. Тактовая частота 486 мгц (а не 485, как написано в официальной спецификации). Указанная производительность 1125 mips/10.5 gflops, на самом деле сравним с 900-1000 мгц Pentium. Кэш L1: 32 KB инструкции, 32 KB данные, L2: 256 KB данные. Отличительные особенности : - Расширенный набор инструкций SIMD - аналог MMX/SSE. У Gekko они называются Paired Single. В этом режиме один 64-разрядный FPU регистр (double) используется как две 32-разрядные половинки (single). - L1 кэш данных может работать в режиме блокировки (locked cache). В этом режиме одна половина (16 KB) используется как scratch-буфер, к которому CPU может обращаться напрямую. Переключение из режима в режим занимает 50 мкс (не очень быстро). - Буфер подкачки (write gather buffer). Представляет собой мини-кэш (4 линейки по 32 байт), который "собирает" записи в память по одному и тому-же адресу, а когда их набирается достаточно, он "выплевывает" их в оперативку. - Большой L2 кэш данных (как уже говорилось). Видеосистема (TV-Out) : поддержка видеорежимов PAL, NTSC, M-PAL (Бразилия), PAL60 (европейский Scart). Развертка : interlaced, double-strike, progressive. Поддержка DTV, стерео-разделения кадра (для "3D"-очков), светового пистолета. Полноэкранный антиалиасинг конфигурируемый tap-фильтрами. Формат видеобуфера Y1UY2V (две RGB-точки (6 байт) пакуются в одну "спаренную" YUV (4 байт), за счёт этого сохраняется полоса пропускания). Видеобуфер (для tv-out) распологается в оперативной памяти (RAM). Далее характеристики железа, которые входят в состав Flipper'а : Носитель данных : 3" DVD, разработанный по технологии Matsushita. Защищён от копирования нестандартными bar-кодами и кроме того данные секторов зашифрованы. Емкость диска 1,459,978,240 байт. Диск вращается с постоянной скоростью (CAV). Секторы режутся как на виниле - от края к центру, плотность записи постоянная. Скорость чтения 2-3 мб в секунду (сравним с 13X CDROM). Есть поддержка потокового DVD-Audio в формате ADPCM, 48 кгц. Привод является интеллектуальным устройством - общение с железом на уровне команд. Звуковая система : один DMA канал, переключаемая частота звука - 32/48 кгц. Максимальный размер аудио-буфера - 1 MB. Аудио-буфер распологается в оперативной памяти (RAM). Также в состав Flipper входит сигнальный процессор (DSP), для обработки звука. Этот процессор позволяет смешивать до 64 (и более) звуковых каналов (причем в 3D) с эффектами эхо, реверберации, ADSR, для каждого канала. С помощью аудио-библиотек можно использовать любые мыслимые аудио-эффекты. При этом DSP работает параллельно графическому и центральному процессору, за счет чего не происходит падения в производительности. Архитектура DSP неизвестна (кроме объема памяти: 8 KB Data RAM (DRAM), 4 KB Data ROM (DROM), 8 KB Instruction RAM (IRAM), 8 KB Instruction ROM (IROM) и тактовой частоты DSP - 81 мгц). Синхронизация между CPU и DSP, а также передача команд осуществляется путем посылки "сообщений". Графический процессор : разработка компании ArtX во главе с Dr. Wei Yen'ом. Позднее ArtX была куплена ATI. Вклад ATI - красный стикер на приставке. Графический процессор можно условно разделить на 3 части : командный процессор, геометрический процессор и растеризатор. Командный процессор : аппаратный FIFO-буфер для параллельного выполнения графических команд (пока CPU передает команды, графический процессор рисует сцену). Кэш для вершин. Дисплейные списки (вложенность не допускается). Массивы вершин (координаты вершин не передаются через FIFO, а находятся в оперативке), причем формат вершин может быть разным - не только вещественные числа, но и числа с фиксированной точкой. Геометрия : геометрические вычисления производятся числами с фиксированной точкой :( Как утверждается, это не позволило ArtX реализовать технологию шейдеров. 8 аппаратных RGBA-источников света с диффузной и бликовой светимостью. (diffuse/specular lights). Изменение яркости по углу и расстоянию (angle/distance attenuation). Toon shading, bump mapping. Растеризатор : 24 разрядный цвет (RGB), глубина Z-буфера 24-бит. Встроенный графический видеобуфер - 2 MB, отсюда следует разрешение встроенного буфера - 640x528 пикселей. Вся отрисовка ведется во встроенный видеобуфер, затем копируется во внешний видеобуфер, для TV-Out, который распологается в оперативке. Память для текстур - 2 MB. Кэш для текстур. Форматы текстур : индексные TLUT, RGB565, RGB5A3, RGBA, IA4/8, S3TC (сжатие). Альфа-канал. Трёхмерные текстуры. Мультитекстурирование (до 16 текстур, 8 оригинальных). Текстурирование по текстуре (indirect texturing). MIP-mapping, билинейная/трилинейная фильтрация, анизотропная фильтрация (max=4). Максимальный размер текстуры 1024x1024. Несколько типов тумана, blending. Gamma-коррекция. Короче говоря в графическом процессоре куба есть всё, кроме шейдеров. Указанная производительность - 6-12 млн полигонов в секунду (100-200 тыс. треугольников в кадре), учитывая все игровые условия (освещение, текстуры, звук и пр.). Устройства ввода : 4 аналоговых контроллера с авто-калибровкой и моторчиками. Две аналоговые ручки, два аналоговых триггера, 6 кнопок, крестовина. Существуют множество вариации стандартного контроллера, в том числе и беспроводные. Контроллер является интеллектуальным устройством - общение с железом на уровне команд. Периферия : параллельный порт (для сетевого адаптера (BBA)), 2 последовательных порта (для, например, модема), Gameboy Advance, который подключается вместо контроллеров и используется как "гаджет" (прибамбас). Два слота для карт памяти. Всем этим заправляет контроллер Macronix EXI (аналог USB). EXI является интеллектуальным устройством. Часы : системный таймер на батарейках, считает секунды с начала 2000 года. Гарантия на батарейку - до 2006 года. Bootrom : Содержит программу инициализации GAMECUBE и графическое меню. Размер 2 MB. Зашифрован неизвестным способом (скорее всего комбинация LFSR и XOR). Также в состав Bootrom входят системные шрифты для всех языков мира (там есть и русский алфавит :)). Питание : AC Adapter DC12V x 3.5A Размеры : 4.3" (в) x 5.9" (ш) x 6.3" (д) не совсем куб :)