Файл: 1. Основные параметры и характеристики логических элементов.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 22.11.2023
Просмотров: 298
Скачиваний: 3
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
– не меньше и не равно/больше (>), команда JNLE.
Отметим, что для предварительной установки необходимых признаков могут использоваться также команды тестирования и битовых операций.
Команда организации программных циклов осуществляют условный переход в зависимости от значения содержимого заданного регистра, который используется как счетчик циклов. Например, в процессорах Pentium для организации циклов используется команда LOOP и регистр ECX. Команда LOOP уменьшает содержимое ECX на 1 (декремент) и проверяет полученное значение. Если содержимое ECX = 1, то выполняется переход к команде, адрес которой определяется с помощью относительной адресации (смещение задано в команде LOOP). Если ECX = 0, то выполняется следующая команда программы. Команда LOOP обычно ставится в конце цикла, обеспечивая его выполнение n раз, где n задается начальным значением ECX. Команды LOOPZ, LOOPNZ аналогичны команде LOOP, но используют дополнительные условия для выхода из цикла. Команда LOOPZ обеспечивает выход из цикла до выполнения заданного числа циклов n при получении ненулевого результата, т.е. при установке признака Z=0. Если в каждом цикле реализуется нулевой результат, то выполняется n циклов, как в команде LOOP. Команда LOOPNZ прекращает выполнение циклов при получении нулевого результата, т.е. при установке Z=1.
Команды прерываний INT обеспечивают переход к одной из подпрограмм обслуживания исключений и прерываний. При этом текущее содержимое PC и регистра состояния заносится в стек. Каждая из подпрограмм обработки соответствует определенному типу исключения или прерывания. Например, в процессорах Pentium выбор программы обработки определяется 8-разрядным операндом, задаваемым во втором байте команды INT. Вызов соответствующей программы обслуживания производится с помощью таблицы, в которой содержатся векторы исключений (прерываний) – адреса первых команд программ обслуживания. Каждый вектор задает необходимое содержимое PC, загрузка которого обеспечивает переход к выполнению первой команды программы обслуживания. Команда IRET обеспечивает возврат из подпрограммы обслуживания прерывания путем извлечения из стека и восстановления содержимого программного счетчика и регистра состояния, соответствующих прерванной процедуре.
Команды управления признаками обеспечивают запись-чтение содержимого регистра состояния, в котором хранятся признаки, а также изменение значений отдельных признаков. Например, в процессорах Pentium реализуются команды LAHF и SAHF, которые выполняют загрузку младшего байта, где содержатся признаки, из регистра состояния EFLAGS в младший байт регистра EAX и заполнение младшего байта EFLAGS из регистра EAX. Команды CLC, STC осуществляют установку значений признака переноса C = 0, C = 1, а команда CMC вызывает инвертирование этого признака. Так как признаки определяют ход выполнения программы при условных переходах, то команды изменения признаков обычно используются для управления программой.
Команды управления процессором. К этой группе относятся команды останова, отсутствия операции и ряд команд, определяющих режим работы процессора или его отдельных блоков. Команда HLT прекращает выполнение программы и переводит процессор в состояние останова, выход из которого происходит при поступлении сигналов прерывания или перезапуска (RESET). Команда NOP («пустая» команда), которая не вызывает выполнения каких-либо операций, служит для реализации программных задержек или заполнения пропусков, образовавших в программе.
Специальные команды CLI, STI запрещают и разрешают обслуживание запросов прерывания, устанавливая соответствующее значение бита управления I в регистре состояния процессора. В процессорах Pentium для этого используется бит управления (флаг) IF в регистре EFLAGS.
Многие современные микропроцессоры выполняют команду идентификации, которая позволяет пользователю или другим устройствам получить информацию о типе процессора, используемого в данной системе. В процессорах Pentium для этого служит команда CPUID, при выполнении которой необходимые данные о процессоре поступают в регистры EAX, EBX, ECX, EDX и могут затем считываться пользователем или операционной системой.
В процессорах, которые имеют внутреннюю кэш-память, реализуются специальные команды, управляющие ее работой. При поступлении этих команд производится очистка (аннулирование содержимого) кэш-памяти, обеспечивается запись в ОЗУ определенных строк кэш-памяти и некоторые другие операции.
В данном разделе описаны только основные группы команд и приведены некоторые примеры типовых команд, выполняемых в наиболее распространенных моделях процессоров. В зависимости от реализуемых процессором режимов работы и заданных типов обрабатываемых данных, набор выполняемых команд может существенно расширяться.
Некоторые процессоры производят арифметические операции с двоично-десятичными числами или выполняют специальные команды коррекции результата при обработке таких чисел. В состав многих высокопроизводительных процессоров входит FPU – блок обработки чисел с «плавающей точкой». Соответственно такие процессоры выполняют большую группу команд, реализующих операции с этими числами и управляющих работой блока FPU.
В ряде современных процессоров реализована групповая обработка нескольких целых чисел или чисел с «плавающей» точкой с помощью одной команды по принципу SIMD («Single Instruction-Multiple Data») – «Одна команда – Множество данных». Одновременное выполнение операций над несколькими операндами существенно повышает производительность процессора при работе с видео- и аудиоданными. Такие операции широко используются для обработки изображений, звуковых сигналов и в других приложениях. Для выполнения этих операций в состав процессоров введены специальные блоки, реализующие соответствующие наборы команд, которые в различных типах процессоров (Pentium, Athlon) получили название MMX («Multi-Media Extension») – Мультимедийное расширение, SSE («Streaming SIMD Extension») – Потоковое SIMD-расширение, «3D-Extension» – Трехмерное расширение.
96. Структурная схема, физический интерфейс и условное графическое изображение однокристального микроконтроллера (МК) К1816ВЕ48
Микросхема КМ1816ВЕ48 (рис. 9) конструктивно выполнена в 40-выводном металлокерамическом корпусе 2123.40-6 с прозрачной для УФ-стирания крышкой [3, 4]. Остальные БИС семейства ВЕ48 конструктивно выполнены в 40-выводных пластмассовых корпусах 2123.40-2. Все выводы электрически совместимы с элементами ТТЛ.
Рис. 9. Условное графическое обозначение ВЕ48
Приведем состав физического интерфейса ВЕ48 (таблица 7).
Таблица 7
Обозначения выводов микроконтроллера ВЕ48
Вывод | Номер вывода | Описание |
| 20 | Общий |
| 26 | Напряжение питания +5 В или +21 В в режиме программирования УСППЗУ |
| 40 | Напряжение питания +5 В |
| 27–34 | Псевдодвунаправленный 8-разрядный порт ВВ |
| 21–24, 35–38 | Псевдодвунаправленный 8-разрядный порт ВВ, младшая тетрада которого P20–P23 используется для вывода старшей части адреса при обращении к внешней памяти программ или как канал связи с расширителем ВВ |
| 12–19 | Двунаправленный 8-разрядный канал ВВ данных либо синхронно со стробами , , либо асинхронно. При обращении к внешней памяти программ используется для выдачи младшего байта адреса синхронно с и приема очередного байта программной последовательности синхронно с . При обращении к внешней памяти данных служит для выдачи младшего байта адреса памяти синхронно с и передачи данных в соответствии со стробами , . |
| 25 | Выходной строб для расширителя ВВ или программирующий импульс +18 В в режиме программирования УСППЗУ |
| 11 | Строб приема адреса. Генерируется в начале каждого машинного цикла и может быть применен для синхронизации внешних цепей |
| 8 | Строб чтения данных. Генерируется в циклах чтения шины BUS. Используется как строб чтения внешней памяти данных. |
| 10 | Строб выдачи данных. Генерируется в циклах вывода информации через шину BUS. Применяется как строб записи данных во внешнюю память |
| 4 | Вход начальной установки. Используется в режимах программирования УСППЗУ. |
| 9 | Строб чтения внешней памяти программ |
| 7 | Разрешение доступа к внешней памяти. Применяется для запрета внутреннего ПЗУ в режимах эмуляции и отладки. Подача на вход напряжения +18 В переводит прибор в режим программирования УСППЗУ |
| 5 | Пошаговый режим. Используется совместно с ALE для организации пошагового исполнения команд |
| 2, 3 | Вход и выход для подключения кварцевого резонатора, а также вход для внешнего ГТИ |
| 1 | Тестовый вход или выход для выдачи импульсов CLK, формируемых внутри микроконтроллера |
| 39 | Тестовый вход, а также вход для приема импульсов счета |
| 6 | Тестовый вход, а также вход для приема внешнего запроса на прерывание с низким уровнем активности |
97. Структурная организация центрального процессора МК К1816ВЕ48
Представленная на рис. 1 структурная схема однокристальной вычислительной системы ВЕ48/ВЕ49/ВЕ50 содержит 8-разрядный центральный процессор (ЦП8), управляющее ПЗУ, внутреннее ОЗУ, 24 линии прямого ввода-вывода (ВВ), представленные в виде трех встроенных 8-разрядных портов (P1, P2, BUS), три тестируемых входа , , , 8-разрядный таймер/счетчик T и логику одноуровневой системы прерываний с двумя источниками запросов [3, 4]. Благодаря предусмотренным в схеме средствам внешнего расширения возможны вынос за пределы кристалла и (или) прямое увеличение размеров управляющей памяти до 4Кбайт, добавление дополнительного блока внешнего ОЗУ данных в 256 байт и 16 линий ВВ (4 внешних 4-разрядных двунаправленных портов, адресуемых независимо друг от друга). Полученная в итоге система называется расширенной.
Гарвардский принцип организации вычислительной среды предусматривает разделение памяти для хранения программ и данных. Память программ допускает только операцию считывания, память данных доступна и для записи, и для считывания.
команд, дешифратор и регистр команд, регистр слова состояния программы и схема условных переходов.
Десятичный корректор обеспечивает коррекцию результата при выполнении операции сложения двухразрядных десятичных чисел.
Счетчик команд PC предназначен для формирования текущего адреса местонахождения команды в памяти программ и содержит 12 разрядов. Старший разряд PC изменяется только программно.
Дешифратор команд представляет собой программируемую логическую матрицу, на вход которой поступает код команды с регистра команд, в котором осуществляется запись и хранение кода команды. С выхода дешифратора команд снимаются управляющие сигналы, осуществляющие выполнение этой команды.
Для выполнения условных переходов предусмотрена возможность использования ряда признаков. Некоторые из этих признаков записываются в триггерах регистра слова состояния программы PSW. Формат слова состояния программы приведен на рис. 2. Назначение разрядов следующее: разряды 0…2 – разряды указателя стека; разряд 3 не используется (при чтении всегда равен 1); разряд 4 – разряд, указывающий используемый банк рабочих регистров общего назначения (BS); разряд 5 – флаг пользователя (F0) (используется в командах условного перехода); разряд 6 – признак переноса AC из младшей тетрады в старшую (используется в команде десятичной коррекции); разряд 7 – признак переноса C, указывающий на переполнение аккумулятора после предыдущей операции.