Встроенная системная шина AMBA
Под приборами класса "система-на-кристалле", в общем случае, подразумеваются приборы на едином кристалле которых интегрированы процессор (процессоры, в том числе специализированные), некоторый объем памяти, ряд периферийных устройств и интерфейсов - т.е. максимум того, что необходимо для решения задач, поставленных перед системой. Фирмой ARM, кроме уже упоминавшихся ядер семейств ARM7 и ARM7TDMI и ряда семейств, которые будут рассматриваться ниже, разработан набор макроячеек периферийных компонентов, которые фирма на основе лицензионных соглашений предоставляет заказчикам. Периферийные компоненты фирмы ARM, библиотека которых получила наименование PrimeCell, представляют собой готовые к применению отработанные программные макроячейки, при разработке которых обращалось внимание на возможность многократного их использования, и применяя PrimeCell периферию разработчик существенно экономит время и стоимость разработки за счет концентрации усилий на создании именно системы на кристалле, а не на разработке сначала необходимой периферии и лишь затем системы. В настоящее время в библиотеку входят: UART, контроллеры SDRAM, синхронные последовательные интерфейсы, часы реального времени, аудио кодеки, средства I/O общего назначения, интерфейсы смарт карт, контроллеры цветных LCD. Ведутся работы по дальнейшему расширению библиотеки.
Производительность приборов класса "система-на-кристалле" в значительной мере зависит от эффективности взаимодействия всех встроенных компонентов и от эффективности их взаимодействия с внешним, относительно прибора, миром. В первую очередь это связано с различием в быстродействии встроенных компонентов, в особенностях организации интерфейсов.
При рассмотрении макроядер ARM710T, ARM720T и ARM740T была упомянута шина AMBA (Advanced Microcontroller Bus Architecture) - шина разработанная фирмой ARM для организации эффективного взаимодействия компонентов приборов, построенных на базе ядер фирмы. Шина AMBA - стандартная встроенная ASIC шина обеспечивающая быстрое модульное проектирование систем при упрощении многократного использования схемотехники и тестов. ARM также обеспечивает возможность использования библиотеки PrimeCell периферии, которая соответствует AMBA стандарту и обеспечивают простую разработку ASIC и ASSP. При использовании AMBA с синтезируемыми версиями периферийных устройств, аппаратные средства системы и программное обеспечение могут быть разработаны на начальном этапе проектирования и, следовательно, может быть снижен риск ошибок проектирования конечной системы.
Блок-схема шины AMBA в прибора типа персонального информационного устройства (PDA), реализованного на основе ядра ARM, макроячеек библиотеки PrimeCell и шины AMBA, представлен на Рис. 1.
Рис. 1. Пример прибора класса "система-на-кристалле", использующего шину AMBA
Типовая шина AMBA содержит системную шину (в данном случае AHB) и шину периферии (APB).
Системная шина соединяет встраиваемые процессоры, такие как ARM ядра, с высокопроизводительной периферией, контроллерами DMA, встроенными памятью и интерфейсами. Это высокоскоростная, с широкой полосой пропускания шина, поддерживающая, для обеспечения максимальной производительности, управление c большим количеством ведущих устройств (Multi-master bus management).
Шина периферии - работает с упрощенным протоколом и разработана для организации интерфейса с периферийными устройствами общего назначения или дополнительными периферийными устройствами. С cистемной шиной она соединяется через мост (bridge), способствующий снижению потребления системы.
В спецификации шины AMBA определена методология тестирования, обеспечивающая быстрое тестирование модулей и кэш.