Шинная организация микропроцессорных систем- с одной шиной, с дв. Программа для эвм это упорядоченная последовательность команд, подлежащая обработке
Скачать 1.97 Mb.
|
44.Мультипрограммный режим работы микропроцессоров.Под задачейпонимается процесс обработки информации. В МП процесс обработки информации реализуется путем выполнения последовательности команд программы, т.е задаче соответствует выполняемая процессором программа, которая называется процессом. Многозадачностьюназывается такой способ организации работы системы, при котором в ее памяти одновременно содержатся программы и данные для выполнения нескольких задач. Параллельное (одновременное) выполнение нескольких процессов (задач) называется мультипрограммнымрежимом. Другими словами, мультипрограммный режим – это такой режим работы МП, в котором реализуется мультизадачность. Мультизадачность имеет несколько достоинств: лучшее использование МП. Мультизадачность повышает производительность системы, если каждая отдельная задача не захватывает МП полностью. Процессор может выбрать из ожидающих задач новую задачу, если выполнение текущей задачи заблокировано; обеспечение надежности. В системе могут быть автономные, не связанные друг с другом функции. Оформление этих функции в виде задач позволяет исключить нежелательные воздействия между ними за счет ограничения действия ошибок управляемой областью, которой является задача; упрощение отладки, разработки и сопровождение программ. Обеспечивается наличие четких границ (интерфейсов) между задачами в системе. Однозадачная архитектура поддерживает только один процесс, т.е. однопрограммный режим, так как процессор в каждый момент времени может выполнять команды только одной программы. При этом команды любой другой программы не выполняются. Мультизадачная архитектура фактически поддерживает несколько процессов, т.е. мультипрограммный режим. В этом режиме команды всех задач выполняются с использованием процессора в режиме разделения времени. При этом выполнение задачи может быть приостановлено на любой команде, поэтому необходимо обеспечить ее перезапуск. Каждой задаче отводится отдельная область памяти (рис. 69), в том числе и стек для хранения всех данных, используемых в задаче. Кроме того, в памяти предусмотрены ячейки для хранения содержимого программного счетчика, регистра состояния и регистров общего назначения процессора. Р исунок 69 – Распределение памяти между задачами Когда выполнение задачи приостанавливается, в эти ячейки помещаются значения содержимого этих регистров, в регистры загружаются значения, соответствующие новой задаче, после чего начинается выполнение задачи. При возобновлении выполнения задачи содержимое этих ячеек пересылается в программный счетчик, регистр состояния и РОН процессора, после чего выполнение задачи продолжается. Совокупность этих ячеек называется блокомуправлениязадачей. Обычно помимо содержимого указанных регистров в них может храниться и другая информация. Таким образом, мультипрограммный режим реализуется путем переключенияпроцессорасоднойзадачипадругую. Однако в любой момент времени процессор выполняет только одну задачу – она является активной, а все остальные задачи в системе пассивны. Возможные состояния задачи можно разделить в на два типа: пассивное и активное. Активное состояние подразделяется на состояния выполнения, готовности и ожидания. Эти состояния характеризуются следующими свойствами: пассивноесостояние. Запуск еще не производился или работа уже завершена; состояние выполнения(прогона). Выполняются команды программы; состояние готовности. Возможно выполнение любой команды (в ходе выполнения процессором команд другой задачи); состояние ожидания. Ожидается генерация некоторых условий, например возникновение прерывания. До генерации этого условия следующую команду выполнять нельзя. В ОС должны быть предусмотрены программа управления задачей, которая управляет переходом задачи из одного состояния в другое. Переход осуществляется по диаграмме, показанной на рис. 70 Рисунок 70 – Диаграмма изменения состояний задачи При запуске задачи с помощью системного вызова (СТАРТ) устанавливается состояние готовности. В большинстве задач в этом состоянии ожидается начало выполнения команд. Если в задаче, находящейся в состоянии выполнения, происходит обращение к команде, выполнение которой возможно после генерации некоторых условий, выполнение приостанавливается, и задача с помощью системного вызова (ОЖИДАНИЕ) переходит в состояние ожидания. Из состояния ожидания задача переходит в состояние готовности, если генерируется ожидаемое задачей условие. Когда выполнение команд полностью закончено, задача с помощью системного вызова (ОКОНЧАНИЕ) переходит в пассивное состояние. В обоих случаях, когда задача переходит из состояния выполнения в состояние ожидания или пассивное состяние, выбирается одна из задач, находящихся в состоянии готовности, и переводится в состояние выполнения. Выбор задачи зависит от стратегии планирования выполнения задач, реализуемой программой управления задачей. Существуют различные стратегии планирования выполнения задач. Широко используется метод, по которому первой выбирается задача, находившаяся в состоянии выполнения непосредственно перед последней выполненной задачей. Замена задачи в состоянии выполнения называется переключениемзадач. Имеются аппаратные и программные причины переключения задач. Необходимость переключения может возникнуть в результате внешнего сигнала прерывания или по требованию операционной системы, управляющей разделением времени МП. Задача, которая начинает выполняться в результате прерывания, называется планируемойаппаратно(или по прерыванию). Задача, которая начинает выполняться по требованию операционной системы, называется планируемойпрограммно. В мультизадачной системе обычно имеется оба типа планирования задач. Например, пользовательские задачи, разделяющие МП, планируются программно операционной системой. Некоторые системные задачи, например ввод с клавиатуры или другой ввод/вывод, обычно планируется прерыванием, чтобы обслужить периферийные устройства в реальном времени (в пределах гарантированного времени реакции). При переключении задач в блок управления выполняемой задачей необходимо переслать содержимое программного счетчика, регистра состояния и РОН, а из блока управления новой задачей считать содержимое этих регистров. Для реализации этих действий программными средствами требуется много времени. Кроме того, для управления задачей требуются различные системные вызовы, на выполнение которых также уходит много времени. Таким образом, реализация мультипрограммного режима сопровождается затратами времени, дополнительными по отношению ко времени, требуемому для выполнения основной работы. В целях сокращения времени основные операции по переключению задач желательно выполнять автоматически аппаратными средствами 45.Структурная организация однокристальных микроконтроллеров (на примере 8- разрядных микроконтроллеров): модульный принцип построения, типы процессорных ядер. Микроконтроллерыявляются специализированными микропроцессорами, которые ориентированы на реализацию устройств управления, встраиваемых в разнообразную аппаратуру. Характерной особенностью структуры микроконтроллеров является размещение на одном кристалле с центральным процессором внутренней памяти и большого набора периферийных устройств. В состав периферийных устройств обычно входят несколько параллельных портов ввода/вывода данных (от 1 до 8), один или два последовательных порта, таймерный блок, аналого- цифровой преобразователь. Кроме того, различные типы микроконтроллеров содержат дополнительные специализированные устройства, такие как блок формирования сигналов с широтно-импульсной модуляцией, контроллер жидкокристаллического дисплея и ряд других. Благодаря использованию внутренней памяти и периферийных устройств реализуемые на базе микроконтроллеров системы управления содержат минимальное количество дополнительных компонентов. Для удовлетворения запросов потребителей выпускается большая номенклатура микроконтроллеров, которые принято подразделять на 8-, 16- и 32-разрядные. 8-разрядныемикроконтроллерыпредставляют наиболее многочисленную группу этого класса микропроцессоров, которые имеют относительно низкую производительность, которая, однако, вполне достаточна для решения широкого круга задач управления различными объектами. Это простые и дешевые микроконтроллеры, ориентированные на использование в относительно несложных устройствах массового выпуска. Основными об¬ластями их применения являются бытовая и измерительная техника, промышленная автоматика, автомобильная электроника, теле-, видео- и аудиоаппаратура, средства связи. Структурную организацию однокристальных микроконтроллеров рассмотрим на примере 8-разрядных МК. Модульный принцип построения Микроконтроллеры представляют собой законченную микропроцессорную систему обработки информации, которая реализована в виде одной интегральной микросхемы. МК объединяет в пределах одного полупроводникового кристалла основные функциональные блоки микропроцессорной управляющей системы: центральный процессор, ПЗУ, ОЗУ, периферийные устройства для ввода и вывода информации. Особенностью структурной организации однокристальных МК является модульныйпринциппостроения. Модульный принцип построения обеспечивает широкое разнообразие моделей МК, а также возможность разработки и производства новых моделей МК в короткие сроки. При модульном принципе построения все МК одного семейства содержат в себе базовый функциональный блок, который одинаков для всех МК семейства, и изменяемый функциональный блок, который отличает МК разных моделей в пределах одного семейства (рис. 71). Рисунок 71 – Модульная структура микроконтроллера Базовый функциональный блок включает: центральный процессор; внутренние магистрали адреса, данных и управления; схему формирования многофазной импульсной последовательности для тактирования центрального процессора и межмодульных магистралей; устройство управления режимами работы МК (такими как активный режим, в котором МК выполняет прикладную программу, режимы пониженного энергопотребления, в один из которых МК переходит, если по условиям работы выполнение программы может быть приостановлено, состояния начального запуска/сброса и прерывания). Базовый функциональный блок принято называть процессорнымядромМК. Процессорное ядро обозначают именем семейства МК, основой которого оно является. Например, ядро НС11 – процессорное ядро семейства Motorola МС68НС11, ядро MCS-51 – ядро семейства МК Intel 8хС51, ядро PIC16 – процессорное ядро Microchip PIC16. Изменяемыйфункциональныйблоквключает модули памяти различных типов, модули периферийных устройств, модули генераторов синхронизации и некоторые дополнительные модули специальных режимов работы МК. Представленный на уровне схемы электрической принципиальной, каждый модуль имеет выводы для подключения его к магистралям процессорного ядра. Это позволяет на уровне функционального проектирования новой модели МК подсоединять те или иные модули к магистралям процессорного ядра, создавая, таким образом, разнообразные по структуре МК в пределах одного семейства. На уровне топологического проектирования ИС МК, объединенные в составе МК, модули размещают на одном полупроводниковом кристалле. Отсюда появилось выражение «интегрированные на кристалл» периферийные модули. Совокупность модулей, которые разработаны для определенного процессорного ядра, принято называть библиотекойпериферийныхмодулей. Библиотека каждого современного семейства МК включает модули пяти функциональных групп: модули памяти;модули периферийных устройств; модули встроенных генераторов синхронизации; модули контроля за напряжением питания и ходом выполнения программы; модули внутрисхемной отладки и программирования. Для 8-разрядных МК характерна, как правило, закрытаяархитектура, при которой линии внутренних магистралей адреса и данных отсутствуют на выводах корпуса МК. Как следствие, не предоставляется возможность использования внешних по отношению к МК ИС запоминающих устройств. Группа модулей периферийных устройств включает следующие основные типы: параллельные порты ввода/вывода; таймеры/счетчики событий, таймеры периодических прерываний, процессоры событий; контроллеры последовательного интерфейса связи нескольких типов (UART, SCI, SPI, I2C, USB); аналого-цифровые преобразователи (АЦП); цифроаналоговые преобразователи (ЦАП); контроллеры ЖК и светодиодных индикаторов. Возможны также некоторые другие типы модулей, например, модуль прямого доступа к памяти, модуль управления ключами силовых инверторов напряжения, модуль генератора DTMF для тонального набора номера в телефонии и т.п. Система синхронизации 8-разрядных МК функционально разделяется на собственно генератор синхронизации, который выделяется в отдельный модуль, и схему формирования многофазной последовательности импульсов для тактирования центрального процессора и межмодульных магистралей, которая является неотъемлемой частью процессорного ядра. Имеется возможность выбора внешнего времязадающего элемента: кварцевый или керамический резонатор, RC-цепь. Повышение производительности процессорного ядра МК связано с повышением частоты тактирования центрального процессора и межмодульных магистралей. Однако применение высокочастотных кварцевых резонаторов в качестве времязадающего элемента повышает уровень электромагнитного излучения, т.е. возрастает интенсивность генерации помех. Поэтому часто генераторы синхронизации имеют в своем составе умножитель частоты с программно настраиваемым коэффициентом умножения. Умножитель частоты выполняется по схеме синтезатора с контуром фазовой автоподстройки (PLL – Phase Loop Lock). Цепи синтезатора частоты и регистры специальных функций для управления режимами его работы включаются в один из модулей генератора синхронизации. Модули контроля за напряжением питания и ходом выполнения программы осуществляют диагностику некоторых подсистем МК и позволяют восстановить работоспособность устройства на основе МК при нарушениях программного характера, сбоях в системе синхронизации, снижении напряжения питания. Модули внутрисхемной отладки и программирования являются аппаратной основой режимов отладки и программирования, которые позволяют отлаживать прикладную программу и заносить коды программы в энергонезависимую память МК прямо на плате конечного изделия, без использования дополнительных аппаратных средств отладки и программирования. Типы процессорных ядер Процессорное ядро представляет собой неразрывное единство трех составляющих его технических решений: архитектуры центрального процессора с присущими ей набором регистров для хранения промежуточных данных, организацией памяти и способами адресации операндов в пространстве памяти, системой команд, определяющей набор возможных действий над операндами, организацией процесса выборки и исполнения команд; схемотехники воплощения архитектуры, которая определяет последовательность перемещения данных по внутренним магистралям МК между регистрами, арифметическо-логическим устройством и ячейками памяти в процессе выполнения каждой команды; технологии производства полупроводниковой ИС МК, которая позволяет разместить схему той или иной сложности на полупроводниковом кристалле, определяет допустимую частоту переключений в схеме и энергию потребления. Эти три составляющие неразрывно связаны друг с другом и, в конечном счете, определяют важнейший параметр процессорного ядра МК – его производительность |