ARM9

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

ARM9 — ядро архітектури ARM, розвиток ARM7TDMI і сумісний з ним на рівні вихідних кодів. Підтримується два набори команд, 32-бітний і 16-бітний Thumb (є підмножиною набору ARM). У ряді програм використання набору команд Thumb призводить до зменшення розміру коду і більш швидкого його виконання. На відміну від мікросхем ARM7, контролери на ядрі ARM9, як правило, мають на кристалі кеш-пам'ять команд та даних, що підвищує загальну продуктивність процесора.

Мікросхеми мають роздільне живлення ядра (1,3 або 1,8 В) і периферійних модулів - 3,3 В. Причому, напруга живлення ядра можна варіювати в діапазоні 1,65 ... 1,95 В (1,08 ... 1,32 В), керуючи споживаною потужністю і максимальною тактовою частотою ядра контролера. Таке поєднання параметрів дозволяє застосовувати МК ARM9 в самих різних додатках, в тому числі для побудови низькоспоживаючих систем, що працюють у реальному часі. Для налагодження програм використовується внутрішньосхемний емулятор АТ91SAM-ICE, той же, що і для мікроконтролерів AT91SAM7, або Wiggler-сумісний гальванічно розв'язаний емулятор AS-JTAG.

Всі мікроконтролери Atmel сімейства ARM9 містять модуль управління пам'яттю (MMU, блок керування пам'яттю). Цей модуль необхідний для повноцінної роботи операційних систем класу Linux або Windows.

Відмінна особливість мікроконтролерів корпорації Atmel (це стосується практично будь-якого сімейства) — наявність на кристалі великої периферії. Фірмова риса атмеловскіх МК - добре продумана технологія обміну даними між ядром і портами введення / виводу. Обмін відбувається під управлінням багатоканального периферійного контролера прямого доступу до пам'яті (PDC - Периферійні DMA контролер), який безпосередньо здійснює обмін даними між периферійними пристроями, внутрішніми регістрами і зовнішньою пам'яттю. Як правило, периферійний модуль МК АТ91 має два виділених каналу PDC, один для прийому даних, інший - для передачі. Кожен канал периферійного контролера PDC містить 32-бітний регістр-покажчик адреси, 16-бітний регістр-лічильник пересилань, 32-бітний регістр для покажчика наступного адреси пам'яті і 16-бітний регістр-лічильник для наступних пересилань. Периферійні модулі перемикають потоки даних PDC, використовуючи сигнали прийому-передачі. Після закінчення пересилання першої програмної блоку даних відповідний периферійний модуль генерує переривання закінчення пересилання. Автоматично починається пересилання другого блоку даних, а обробка даних першого блоку може виконуватися паралельно процесором ARM, тим самим обходячись без «повільних» переривань в режимі реального часу, що уповільнюють оновлення регістрів-покажчиків в процесорі. Таким чином забезпечується високошвидкісна пересилання даних у периферійний контролер. PDC має виділені регістри стану, що вказують для кожного каналу можливість або неможливість пересилання. У будь-який момент часу можна вважати з пам'яті адреса розміщення черговий пересилання і кількість залишилися пересилань.

Родоначальником сімейства ARM9 у ATMEL є AT91RM9200, створений на ядрі ARM920TDMI. Цей МК випускається вже кілька років, та вироби на його основі виробляють багато російських компаній. Відзначимо, значне число в МК вбудованих послідовних інтерфейсів - USB Host Full Speed, USB пристрою Full Speed, 100 Мбіт Ethernet, а також «стандартні» інтерфейси - UART /USART/SPI/MCI/SSC/TWI (ПК). Мікросхема має на кристалі масочном ПЗУ (ROM) об'ємом 128 Кбайт, в якому зберігаються утиліти, що забезпечують роботу в термінальному режимі, а також підтримують обмін по інтерфейсу Ethernet. Саме приклад роботи з мікросхемою докладно AT91RM9200 розглядається нижче. Як апаратна платформа використана плата AS-9200 виробництва інженерного центру Аргуссофт.

Наступні мікросхеми сімейства ARM9 побудовані на досконалішому ядрі ARM926EJ-S з підтримкою DSP-команд і оснащеному JAVA-акселератором. Вони мають назву Smart ARM9 або SAM9. Таку назву має на увазі, що нові мікросхеми наділені додатковими функціями, що розширюють можливості і, одночасно, спрощують роботу з контролерами. Зокрема, ці мікросхеми мають можливість завантаження зовнішньої флеш-пам'яті прямо через мікроконтролер, використовуючи його як програматор. Для завантаження використовується програма SAM-BA (Smart допомоги Boot ARM). Програма також дозволяє переглядати вміст оперативної пам'яті.

Наступна мікросхема - AT91SAM9260. У неї число внутрішніх шин збільшено до шести, при цьому пікова швидкість обміну даними становить 19,2 Гбіт / с. На кристалі розміщений модуль відеоінтерфейсу ISI (датчик зображення Interface), що працює з кольоровою CMOS-матрицею. Основні технічні параметри AT91SAM9260 наведені нижче.

Ядро - ARM926EJ-S ™ ARM ® Thumb[ред.ред. код]

Розширення DSP Інструкція:

  • - 6-шарова шинна матриця (32-розряду х 6);
  • - Продуктивність 230 MIPS на частоті 210 МГц;
  • - 8 Кбайт кеш даних, 8 Кбайт кеш-команд, буфер запису;
  • - Інтерфейс внутрішньосхемного емулятора (JTAG);
  • - Debug UART;
  • - Швидкодіюча пам'ять;
  • - 8 Кбайт оперативної пам'яті, 32 Кбайт маскової постійної пам'яті;
  • - Зовнішня інтерфейсна шина (EBI);
  • - Підтримка пам'яті SDRAM, вибух Flash, CompactFlash ®, SmartMedia ™ і NAND;
  • - Системна периферія;
  • - Розширений тактовий генератор і контролер управління енергоспоживанням;
  • - Два вбудованих осцилятора з ФАПЧ;
  • - Чотири програмованих джерела тактирования.

Таймери[ред.ред. код]

  • - Таймер годин реального часу з окремим перериванням;
  • - Інтервальний таймер (20 +12 розрядів);
  • - Два трьохканальних 16-бітових таймера / лічильника;
  • - Сторожовий таймер. Контролер переривань:
  • - 8 рівнів маскуються переривань з пріоритетом;
  • - 7 зовнішніх джерел переривання і 1 «швидкісний» джерело переривання;
  • - Чотири 32-розрядних контролера вводу / виводу з 122 програмованими введення лініями / виводу;
  • - 22-канальний периферійний контролер даних (DMA).
  • -Модуль Ethernet MAC 10/100 Base-T;
  • - Режим MII або RMII;
  • - Буфер FIFO на 28 байт і виділені канали DMA на прийом і передачу HOST-порт USB 2.0 (12 Мбіт / с);
  • - Буфер FIFO і виділені канали DMA.

Пристрій-порт USB 2.0 (12 Мбіт / с)[ред.ред. код]

  • - Буфер FIFO 2 Кбайт.

Інтерфейс мультимедіа карт (MCI)[ред.ред. код]

Інтерфейси:

  • - Автоматичне управління протоколом;
  • - Сумісність з ММС, SD / SDIO-картами пам'яті, підтримка двох карт SD-пам'яті;
  • - 10-розрядний 4-канальний АЦП *.

Відзначимо також[ред.ред. код]

Неповний перелік особливостей:

  • - 3 синхронних послідовних контролера (SSC), підтримка інтерфейсу I2S;
  • - 6 універсальних синхронно-асинхронних інтерфейсу USART;
  • - Асинхронний інтерфейс UART, який також можна використовувати для налагодження;
  • - Двопровідний інтерфейс TWI, (сумісний з I2C), підтримка режиму провідному режимі;
  • - 2 послідовних інтерфейсу SPI (Master / Slave режим);
  • - Інтерфейс ISI (інтерфейс датчика зображення) МСЕ-R 601/656 для підключення джерела відеосигналу;
  • - Корпус TQFP208, BGA217.

На основі мікросхеми AT91SAM9260 розроблені мікроконтролери AT91SAMXE, що містять на кристалі флеш-ПЗУ обсягом від 128 до 512 Кбайт. Цікаво, що за типом корпусу (TQFP208 і BGA217) і цоколевке вони збігаються з AT91SAM9260, тобто AT91SAMXE можна розпаювати на ту ж друковану плату. Кристал AT91SAM9XE відрізняється від AT91SAM9260 тільки наявністю модуля флеш-ПЗУ.

У 2008 році випущені мікросхеми AT91SAM9260A. Індекс А означає, що кристал виготовляється за технологічними нормами 90 нм. У мікросхемі AT91SAM9261 кількість шин даних - п'ять, що дозволяє збільшити пропускну здатність до вражаючих 14,4 Гбіт / с. Ця мікросхемі цікава тим, що на кристалі розміщений контролер РК-дисплея, що підтримує роботу як з пасивною (STN) так і з активною (TFT) матрицями. Максимальна роздільна здатність - 2048 х 2048 точок, глибина кольору - до 24 біт на точку. Мікросхема містить на кристалі статичну оперативну пам'ять об'ємом 160 Кбайт, що працює на частоті шини. Якщо як вихідний пристрій використовувати матрицю з роздільною здатністю 320х240 крапок при глибині кольору 16 біт, можна як відеопам'ять використовувати внутрішню пам'ять контролера.

Найбільш високоінтегрованою мікросхемою в сімействі SAM9 є контролер AT91SAM9263. Тут присутня практично вся периферія, яка в різних комбінаціях використана в мікросхемах SAM9 - всі типи портів (причому для високошвидкісного обміну можна використовувати два паралельних 32-розрядних порту), два типи оперативної пам'яті в додаток до кеш-пам'яті команд і даних, контролер РК- матриці з 2В-прискорювачем, контролер CMOS-сенсора.

Для організації передачі потоків даних усередині кристала використана матриця з 9 шин даних. Природним для настільки насиченою мікросхеми є застосування двох паралельних 32-розрядних шин з частотою 100 Мгц. Тип корпусу цієї мікросхеми BGA324.

Посилання[ред.ред. код]