Введение
Чип RAM – это общепринятое название интегрированной оперативной памяти, используемой в компьютерах Amiga производства Commodore. Чип RAM используется как центральным процессором (CPU), так и специализированным чипсетом Amiga (отсюда и название). Её также, весьма ошибочно, называли "графической памятью".
Прямой доступ к памяти
В архитектуре Amiga контроллер прямого доступа к памяти (DMA) интегрирован в чип Agnus (Alice на моделях AGA). И процессор, и другие компоненты чипсета должны согласовывать доступ к общей оперативной памяти через Agnus. Это позволяет специализированным чипам выполнять видео-, аудио- или другие DMA-операции независимо от процессора. Поскольку процессор 68000, используемый в ранних системах Amiga, обычно обращается к памяти только на каждом втором цикле памяти, Agnus работает по системе, в которой "нечётный" такт выделяется для критически важных операций специализированных чипов, а "чётный" – для процессора. Таким образом, при умеренном спросе на DMA процессор обычно не блокируется при доступе к памяти и может работать без прерываний. Однако некоторые DMA-операции чипсета, такие как графика высокого разрешения с расширенной цветовой палитрой, операции Copper или blitter, могут использовать любые свободные такты, фактически лишая процессор циклов. В таких ситуациях циклы процессора блокируются только при доступе к общей оперативной памяти, но никогда – при доступе к быстрой (только для процессора) оперативной памяти (если она присутствует) или к ROM. Однако программный эмулятор UAE может эмулировать систему Amiga с ограничением до 8 Мбайт Chip RAM.
Быстрая оперативная память
Системы Amiga также могут быть расширены с помощью Fast RAM, которая доступна исключительно для процессора. Это повышает скорость выполнения, поскольку циклы процессора никогда не блокируются, даже когда специализированный чипсет одновременно обращается к Chip RAM. Добавление Fast RAM в системы с 32-битными процессорами примерно удваивает скорость выполнения инструкций, так как более продвинутые процессоры 68020, '030 и '040 могут использовать больше циклов памяти, чем более ранний 68000. Примечательно, что система может иметь несколько различных типов и скоростей Fast RAM. Например, Amiga 3000 может одновременно содержать 16-битную расширенную память Zorro II, 32-битную расширенную память Zorro III, 32-битную память материнской платы и 32-битную память карты процессора (в порядке возрастания скорости). Автоматически настроенная память имеет приоритет в системе, поэтому сначала используется самая быстрая память. Ранние версии Amiga 2000B и наиболее распространенная конфигурация Amiga 500 с "расширенной памятью через слот" содержат 512 КиБ псевдобыстрой RAM ("медленной RAM"), управляемой Agnus с теми же ограничениями, что и Chip RAM, но не пригодной для использования в качестве таковой из-за ограничений регистров. Многочисленные бюджетные расширения для 500 расширили эту концепцию "без контроллера" до 1,8 МБ медленной RAM (для адресации требуется адаптер Gary).