ктичного блоку 1 процесора. Подібна структура створення псевдонімів формується і в ADSP-21061. (Див. карти пам'яті для процесорів ADSP-21061 і ADSP-21062). <В
Простір пам'яті багатопроцесорної системи
Простір пам'яті багатопроцесорної системи відображається у внутрішню пам'ять інших процесорів ADSP-2106x в багатопроцесорної системі. Це дозволяє кожному ADSP-2106x звертатися до внутрішньої пам'яті і до відображеним в карті пам'яті регістрів ЮР інших процесорів.
Коли поле адреси Е нульове, а поле М ненульове, то утворюється адресу простору пам'яті багатопроцесорної системи, як показано на рис.5.5. Значення поля М визначає ідентифікатор (Ш, о) того зовнішнього процесора ADSP-2106x, до якого буде здійснюватися обіг, і тільки цей процесор буде реагувати на цикли читання/запису. Якщо поле М = 111, то виконується широковещательная запис у всі процесори. Всі процесори реагую т на цю адресу, як якби використовувався ідентифікатор, дозволяючий запис в їх внутрішню пам'ять.
Замість прямого звернення до власної внутрішньої пам'яті ADSP-2106x може також звертатися до неї через простір пам'яті багатопроцесорної системи, використовуючи власний ID. У цьому випадку процесор просто зчитує з власної внутрішньої пам'яті або записує в неї і не робить спробу доступу по зовнішній системної шині, (зауважимо, що це звернення до власної внутрішньої пам'яті через простір пам'яті багатопроцесорної системи здійснюється тільки за адресою, згенеровані ядром процесора, а не за адресою, згенеровані контролером DMA).
Якщо обидва поля Е і М адреси на зовнішній шині нульові, тоді адреса буде ігноруватися. Виняток становить лише випадок, коли ID процесора також не дорівнює нулю, тобто М = Ш, 0 = 000. Адреси з М = Ш, 0 = 000 дозволені тільки в системах з одним процесором.
Якщо ADSP-2106x намагається звернутися за помилковою адресою в простір пам'яті багатопроцесорної системи, то запис даних буде проігнорована, а при зчитуванні будуть отримані неправильні дані.
Організація внутрішньої пам'яті і розмір слова У внутрішній SRAM розміщуються такі типи слів:
48-розрядні команди, 32-розрядні дані з плаваючою точкою, 16-розрядні короткі слова даних. p> 40-розрядні слова даних з плаваючою комою з високою точності розміщуються в 48-розрядних словах.40 біт вирівнюються по лівому краю (Біти 47-8). p> Якщо ядро ​​процесора звертається до своєї внутрішньої пам'яті, то розмір слова визначається згідно з такими правилами:
При вибірці команди завжди зчитується 48-розрядне слово;
При читанні/запису з використанням адресації нормальних слів проводяться операції з 32-розрядними або 48-розрядними словами в залежності від того, як блок пам'яті зконфігурований в регістрі SYSCON;
При читанні/запису з використанням адресації коротких слів завжди проводяться операції з 16-розрядними словами;
При читанні/запису регістра РХ по шині РМ (DAG 2) завжди проводяться операції з 48-розрядними словами (якщо не використовується адресація коротких слів); ​​
При читанні/запису регістра РХ по шині DM (DAG 1) завжди проводяться операції з 40-розрядними словами (якщо не використовується адресація коротких слів).
У програмі не повинно виконуватися звернення до однієї і тієї ж фізичної комірці пам'яті як до 32-розрядному слову і як до 48-розрядному слову. У внутрішній пам'яті використовується схема зворотного запису, в результаті чого виникають помилки, якщо відбувається такий вид звернення.
Обмеження при зверненні до простору пам'яті Три внутрішні шини (РМ, DM і I/O) можуть використовуватися для звернення до карти пам'яті процесора у відповідності зі такими правилами:
По шині пам'яті даних (DM) можна звертатися у всі простору пам'яті.
По шині пам'яті програми (РМ) можна звертатися тільки до простору внутрішньої пам'яті і молодшим 12 мегасловам простору зовнішньої пам'яті.
По шині вводу-виводу (I/O) можна звертатися у всі простору пам'яті, за винятком відображених в карті пам'яті регістрів ЮР (у просторі внутрішньої пам'яті).
Зауважимо, що у Версії кристала 1.0 (Silicon Revision 1.0) і раніше операція адресації з перед-модифікацією не повинна змінювати адресується простір пам'яті. Наприклад, перед-модифікація адреси в просторі внутрішньої пам'яті ADSP-2106x не повинна генерувати адресу в просторі зовнішньої пам'яті. Є одне виключення з цього правила: команда непрямого переходу (JUMP) або команда виклику (CALL) з перед-модифікацією адреси можуть викликати перехід з внутрішньої пам'яті в зовнішню. Версії кристала 2. x (Silicon Revision 2. x) і пізніше не мають цих обмежень.
Змішування 32-х і 48-розрядних слів в блоці пам'яті 32-розрядні дані і 48-розрядні команди можуть зберігатися в одному блоці пам'яті за умови, що адреси всіх команд молодше адрес ...