М МС68НС705С8
МнемокодОпераціяКомандаДействіе АЛУADDАС? (АС) + (М) Додавання вмісту комірки пам'яті з аккумуляторомСложеніе вмісту М і вмісту АС і розміщення в АСADCAC? (AC) + (M) + (C) Додавання комірки пам'яті з акумулятором і прапором переносаСложеніе вмісту біта С і суми вмісту М і АС і розміщення в АСSUBАС? (АС) - (М) ВичітаніеСложеніе вмісту біта С і суми М і АС і розміщення в АСSBCАС? (АС) - (М) - (С) Віднімання вмісту комірки пам'яті з акумулятора з прапором заема.Вичітаніе вмісту М з АС та розміщення результату в АС.ANDАС? (АС) * (М) Операція І вмісту комірки пам'яті і аккумулятора.Логіческое множення акумулятора і М результат записується в АСORAАС? (АС) + (М) Операція АБО вмісту комірки пам'яті і аккумулятораЛогіческое додавання М і результат записується в АС.CMP (АС) - (М) Арифметичне порівнювання акумулятора і осередки памяті.Сравнівается вміст М і АС і встановлюються біти в регістрі прізнаков.INCАС? (АС ) + $ 1Інкремент на 1 Додавання одиниці до вмісту аккумулятора.DECАС? (АС) - $ 1Декремент на 1Вичітает одиницю з вмісту акумулятора
АЛУ процесора ADSP - 21XX фірми «Analog devices» забезпечує виконання стандартного набору арифметичних і логічних операцій. До перших відносяться додавання, віднімання, інвертування (заперечення), інкремент, декремент і знаходження АБСОЛЮТИСТ значення. Ці операції доповнені двома примітивами поділу, за допомогою яких операція ділення може виконуватися за кілька циклів. До логічних операцій відносяться логічне І (AND), АБО (OR), виключає АБО (XOR) і НЕ (NOT), повний список стандартних функцій наведено в таблиці 1.4.
Блок-схема АЛУ представлена ??на малюнку 1.3. АЛУ розрядністю 16 біт має два 16-бітових порту введення - X і Y, і один порт виводу - R. АЛУ приймає сигнал перенесення (С1), який є бітом перенесення з арифметичного регістра стану (ASTAT). В АЛП генерується 6 сигналів стану: стан-нуль (AZ), заперечення (AN), перенесення (АС), переповнення (AV), введення знаку через порт X (AS) і стан приватного (AQ). Усі сигнали арифметичного стану фіксуються в арифметичному регістрі станів (ASTAT) наприкінці циклу.
Таблиця 1.4 - Список стандартних функцій АЛУ
ФункціяНазначеніеR=X + YСложеніе операндів X і YR=X + Y + CIСложеніе операндів X і Y і біта коррекцііR=X-YВичітаніе операндів X з YR=X-Y + CI - 1Вичітаніе операндів X з Y з заемомR=-XІнверсія XR=-YІнверсія YR=X + 1Інкремент XR=Y + 1Інкремент YR=X - 1Декремент XR=Y - 1Декремент YR=PASS XОперанд X не змінює результатаR=PASS YОперанд Y не змінює результатаR=0Очістка результатаR=ABS XМодуль XR=X AND YЛогіческое множення операндів X і YR=X OR YЛогіческое додавання опреандов X і YR=X XOR YІсключающее АБО операндів X і YR=NOT XОтріцаніе XR=NOT YОтріценіе Y
Порт введення X AЛУ може приймати дані з двох джерел: регістрів АХ або шини результатів (Р-шина). Р-шина з'єднує регістри виведення всіх обчислювальних пристроїв, дозволяючи використовувати їх як операнди введення. Порт введення Y АЛУ також може приймати дані з двох джерел: регістрів AY і регістра зворотного зв'язку AF АЛП.
Вихідні дані АЛУ завантажуються або у регістр зворотного зв'язку АЛУ (AF), або у регістр результатів АЛУ (AR). Регістр AF є внутрішнім регістромАЛУ і дозволяє використовувати результат АЛУ прямо в якості вхідного значеніядля порту Y АЛП. Регістр AR може передавати дані як на шину ДПД. так і нашіну результатів. Цей регістр може прямо завантажуватися з шини ДПД.
У кожній із регістрів, пов'язаних з АЛУ, може проводитися запис/зчитування протягом одного і того ж циклу. Зчитування з регістрів проводиться на початку циклу, а запис у регістри - наприкінці циклу. Отже, при зчитуванні з регістра зчитується значення, завантажене в цей регістр в кінці передував циклу. Нове значення, записаний у регістр, не може бути лічено до початку наступного циклу. Це дозволяє регістрів введення АЛУ забезпечувати АЛУ операндом на початку циклу і оновлюватися наступним операндом з пам'яті в кінці того ж циклу. Це також дозволяє зберігати вміст регістра результатів в пам'яті і оновлювати цей регістр новим значенням результату протягом одного і того ж циклу.
В АЛП міститься подвійний ряд регістрів, які показані на малюнок 1.2 за основними регістрами. Насправді є два набору регістрів AR, AF, АХ і AY. У будь-якій певний момент часу доступним є тільки один ряд регістрів. Додатковий ряд регістрів може бути активізований для надзвичайно швидкого контекстного перемикання (наприклад, під час підпрограми обслуговування переривання). У такому випадку нове завдання (тобто обслуговування переривання в прикладі) може бути виконана без передачі поточних станів в ЗУ. Вибір основного або альтернативного ряду регістрів управляється бітом 0 в регістрі стану режиму процесора (MSTAT). Якщо цей біт приймає значення 0, вибирається ос...