Arm946e-s

ARM946E-S, що входить в сімейство ARM9E являє собою 32-розрядний RISC-процесор з енергоспоживанням менше 1 Вт. ARM946E-S може працювати на частоті до 250 МГц.

  • Розмір кешу (Ком./Дан.): Змінний
  • Щільно пов'язана пам'ять: Так
  • Управління пам'яттю: MPU
  • АНВ шинний інтерфейс: Так
  • Thumb: Так
  • DSP: Да
  • Jazelle: Немає

Підтримувані платформи — Linux, Palm OS, Windows CE і Symbian OS.

ARM946E-S — це синтезований макроелемент, що поєднує процесорне ядро ARM9E-S з кешем інструкцій та даних, тісно пов'язану SRAM-пам'ять інструкцій та даних із блоками захисту, буфер запису та інтерфейс AMBA (Advanced Microprocessor Bus Architecture) AHB (Advanced High-performance Bus). Він є членом сімейства високопродуктивних 32-бітних системних (SoC) процесорів ARM9E-S Thumb і добре підходить для широкого спектра вбудованих застосувань. Розмір кешу інструкцій та даних, а також SRAM інструкцій та даних можна налаштувати індивідуально, що дозволяє адаптувати апаратне забезпечення до вбудованого застосування. ARM946E-S пропонує комплексне високопродуктивне процесорне рішення, що забезпечує значну економію в складності та площі чіпа, проектуванні системи чіпів, енергоспоживанні та часі виходу на ринок.[1]

Застосування

  • Вбудовані застосунки під керуванням RTOS
  • Масові накопичувачі - HDD та DVD
  • Кодери мовлення
  • Мережеві застосунки - G.723.1 для передачі голосу через IP
  • Автомобільне керування
  • Круїз-контроль, ABS тощо
  • Інтерфейси гучного зв'язку
  • Модеми та програмні модеми
  • Декодування аудіо
  • Dolby AC3 digital
  • MPEG MP3 аудіо
  • Розпізнавання та синтез мовлення.[1]

Переваги

Система на чіпі готова до швидкої інтеграції з коротким часом виходу на ринок ARM946E-S забезпечує рішення на основі цифрового сигнального процесора (DSP) та мікроконтролера на одному кристалі Зменшений розмір кристала та складність кристала Швидка реакція на переривання Зменшена складність програмування - немає потреби розділяти DSP та код керування Відсутність дублювання у вбудованій системі пам'яті, ресурсах шини, налагодження та трасування.[1]

Сумісний з ARM7 та StrongARM

Процесор ARM946E-S зворотно сумісний з сімейством процесорів ARM7 Thumb та сімействами процесорів StrongARM, що надає розробникам програмносумісні процесори з діапазоном співвідношення ціни та продуктивності від 60 MIPS до 400 MIPS. Підтримка архітектури ARM сьогодні включає:[1]

  • EPOC, JavaOS
  • Операційні системи Linux та WindowsCE
  • Понад 40 операційних систем реального часу
  • Інструменти спільного моделювання від провідних постачальників EDA
  • Інструменти розробки програмного забезпечення сторонніх виробників, що підтримуються галуззю.[1]

Покращення цифрової обробки сигналів (DSP)

Ядро процесора ARM946E-S пропонує всі переваги покращених можливостей DSP ядра процесора ARM9E-S. Ядро процесора ARM9E-S виконує розширений набір інструкцій ARM5vT, який включає нові функції множення та насичення. Інструкції множення обробляються швидше завдяки одноцикловій реалізації 32x16. Існують інструкції множення 32x16 та 16x16, а конвеєр дозволяє запускати кожен цикл одним множенням. Нова арифметика насичення підвищує ефективність, автоматично вибираючи поведінку насичення під час виконання. Арифметика насичення використовується для встановлення обмежень на обчислення обробки сигналів, щоб мінімізувати вплив шуму або помилок сигналу. Усі ці інструкції корисні для алгоритмів, таких як ті, що реалізують протоколи GSM, швидке перетворення Фур'є (FFT) та керування сервоприводом простору станів для жорстких дисків.[1]

Процесор ARM946E-S

Процесор ARM946E-S використовує синтезовану макрокомірку ARM9E-S. Ця макрокомірка поєднує ядро процесора ARM9 з потужними функціями та розширеннями набору інструкцій, які допомагають застосуванням цифрової обробки сигналів (DSP). Архітектура ядра процесора або цілочисельного блоку детальніше описана в ARM9E-S.[1]

Системний контролер

Системний контролер контролює взаємодію між кешем інструкцій, оперативною пам'яттю інструкцій, кешем даних, оперативною пам'яттю даних та блоком інтерфейсу шини. Він контролює внутрішній арбітраж між блоками та зупиняє відповідні блоки, коли це необхідно.[1]

Системний контролер здійснює арбітраж між доступом до інструкцій та даних, щоб планувати окремі або одночасні запити до контролерів кешу та блоку інтерфейсу шини. Системний контролер отримує підтвердження від кожного ресурсу, щоб дозволити продовження виконання.[1]

Співпроцесор керування (CP15)

CP15 дозволяє налаштовувати як кеші, так і тісно пов'язані SRAM, буфер запису та інші функції ARM946E-S.[1]

Кілька регістрів у CP15 доступні для керування програмою, що забезпечує доступ до таких функцій, як:[1]

  • операція з прямим або прямим порядком байтів;
  • стан низького енергоспоживання;
  • розбиття та захист пам'яті;
  • повна пам'ять BIST (вбудоване самотестування).[1]

Блок захисту

Блок захисту дозволяє розділяти пам'ять та встановлювати окремі атрибути для кожної області захисту. Адресний простір інструкцій та даних можна розділити на вісім областей змінного розміру.[1]

Атрибути захисту для кожної області можуть визначати властивості кешування, буферизації, доступу користувача, доступу супервізора тощо. Блок захисту програмується з регістрів CP15.[1]

Кеш

Реалізовано два кеша, один для інструкцій, інший для даних, обидва з розміром рядка вісім слів. Кожен кеш побудовано з SRAM. Кеші підключаються до ядра процесора ARM9E-S через 32-бітні шини, що дозволяє передавати одну інструкцію в блок попередньої вибірки інструкцій за кожен цикл, а також завантажувати та зберігати кілька інструкцій для передачі одного регістра за кожен цикл.[1]

Блокування кешу

Блокування кешу передбачено для того, щоб заблокувати критичні послідовності коду в кеші та забезпечити передбачуваність коду реального часу. Алгоритм заміни кешу може бути обраний операційною системою як псевдовипадковий або циклічний. Обидва кеша є чотиристоронніми асоціативними. Блокування працює для кожного набору слів.[1]

Функції кешу

Розміри кешу інструкцій та даних ARM946E-S можна вибирати незалежно з наступного діапазону розмірів кешу:[1]

  • 0 КБ
  • 4 КБ
  • 8 КБ
  • 16 КБ
  • 32 КБ
  • 64 КБ
  • 128 КБ
  • 256 КБ
  • 512 КБ
  • 1 МБ.

Кеші є чотиристоронніми асоціативними, з довжиною рядка кешу вісім слів. Записи кешу розподіляються на основі пропущених читань.[1]

Буфер запису

ARM946E-S також містить буфер запису на 16 записів, щоб уникнути зупинки процесора під час запису в зовнішню пам'ять.[1]

Тісно зв'язана пам'ять

ARM946E-S підтримує SRAM для щільно зв'язаної пам'яті (TCM).[1]

Мінімальний розмір, коли присутній TCM, становить 4 КБ зі збільшенням у степенях 2 (наприклад, 8 КБ, 16 КБ) до 1 МБ. Таким чином, SRAM-пам'ять для інструкцій та даних може мати унікальний розмір від 0 КБ до 1 МБ.[1]

Пам'ять здатна повертати дані до ядра ARM9E-S за один цикл.[1]

Детальний опис від розробника(datasheet), можна знайти тут [2]

Інший різновид сімейства ARM9E (ARM926EJ-S) підтримує технологію ARM Jazelle, яка дає широкі можливості розробникам платформ виконувати Java додатка спільно з встановленими ОС, проміжними програмами та кодами застосування на одному процесорі.

Примітка

  1. а б в г д е ж и к л м н п р с т у ф х ц ш щ Documentation – Arm Developer. developer.arm.com. Процитовано 7 серпня 2025.
  2. alldatasheet.com. ARM946E-S PDF. www.alldatasheet.com (англ.). Процитовано 7 серпня 2025.