Проектирование автоматических систем на базе микропроцессоров. Курсовая работа: Проектирование микропроцессорной системы на основе микроконтроллера К1816ВЕ31 Вст скв метод проектирования микропроцессорных систем

1. Функционирование, проектирование и архитектура микропроцессорных устройств и систем

1.1. Общие сведения о микропроцессорной технике

Основные понятия и определения микропроцессорной техники

Микропроцессоры и микроЭВМ - массовая продукция электронной промышленности. Знания основ микропроцессорной техники необходимые инженерам любого профиля, в особенности инженерам-системотехникам, инженерам-конструкторам, инженерам-технологам вычислительных систем (ВС).

Микропроцессоры (МП) нашли широкое применение в современных ВС и радиоэлектронных устройствах (РЭУ), технологических системах контроля, гибких автоматизированных и других производствах. Использование МП положительно влияет на повышение производительности труда, способствует улучшению качества аппаратуры разного назначения. Благодаря применению МП и микроЭВМ в технических системах расширились функциональные возможности аппаратуры, повысились ее надежность и стабильность функционирования, улучшилось качество обработки информации .

Перспективы и возможности применения МП и микроЭВМ в вычислительных системах еще полностью не раскрыты. Постоянно совершенствуются технологии производства и архитектура МП. Так, разрядность современных однокристальных МП достигает 64 бит. При использовании МП и микроЭВМ разработчики должны уметь оценивать возможности их архитектуры и технические характеристики, а также владеть языками программирования разных уровней. Для создания системного программного обеспечения широко используется язык асемблера. В целях обеспечения высокой производительности труда программистов, задачи обработки данных решаются с помощью языков высокого уровня (например – С). Современным инженерам - специалистам в вычислительной технике необходимы знания в области как архитектуры МП, так и программирования электронных устройств на языках разных уровней.


Базовыми, в микропроцессорной технике, являются такие понятия, как: «микропроцессор», «ИС», «ИМС», «БИС», «СБИС», «микропроцессорный комплект БИС», «микропроцессорное устройство», «микропроцессорная система», «микропроцессорная техника», «микроЭВМ» (общего назначения и специализированные), «встроенная микроЭВМ», «компьютер персональный», «бытовой персональный компьютер», «профессиональный персональный компьютер», «микроконтролер» и др.

Кроме того, в микропроцессорной технике используются понятия, относящиеся к вычислительной технике, и в частности «магистраль», «шина», «интерфейс», «системный интерфейс», «периферийный интерфейс», «адаптер», «протоколы», «линия интерфейса» и др.

При изучении программных средств в микропроцессорной технике употребляются общие понятия, совпадающие по названию с понятиями описания программных средств в вычислительной технике, в частности «алгоритм», «программа», «программное обеспечение» и др.

Одним из главных, базовых понятий микропроцессорной техники, является «микропроцессор».

Микропроцессор - это сложное программно управляемое устройство, предназначенное для обработки цифровой информации и управления процессом этой обработки, выполненное в виде одной или нескольких интегральных микросхем повышенной степени интеграции (БИ С или СБИ С).

Интегральная микросхема (И МС) - это микроэлектронный прибор, который выполняет определенную функцию преобразования, обработки сигналов и (или) накопления информации, который имеет большую внутреннюю плотность упаковки электрически соединенных элементов (или элементов и компонентов) и (или) кристаллов и рассматривается в аспекте требований испытаний, поставки и эксплуатации изделий радиоэлектроники как единое целое.

Полупроводниковая ИМС - интегральная микросхема, все элементы и межэлементные соединения которой выполнены внутри и на поверхности полупроводника.

Цифровая ИМС - интегральная микросхема, предназначенная для преобразования и обработки сигналов, которые изменяются по закону дискретной функции.

Степень интеграции - показатель степени сложности ИМС, который характеризуется количеством элементов и компонентов, которые содержатся в ней. Степень интеграции определяется по формуле k = lgN , где k - коэффициент, который определяет степень интеграции, значения которого округляются к наибольшему целому числу; N - число элементов и компонентов ИМС.

Большая интегральная микросхема (БИ С) - интегральная микросхема, которая содержит 500 и больше элементов, изготовленных по биполярной технологии, или 1000 и больше элементов, изготовленных по МОП-технологии, сверхбольшая интегральная схема (СБИ С) содержит свышеэлементов.

Комплект БИС - совокупность типов БИС, которые выполняют разнообразные функции, совместимые по архитектуре, конструктивному исполнению, электрическим параметрам и обеспечивающих возможность их совместного использования при изготовлении микропроцессорной техники.

Микропроцессорный комплект (МПК) - совокупность микропроцессорных и других ИМС, совместимых по архитектуре, конструктивному исполнению и электрическим параметрам и обеспечивающих возможность их совместного использования.

Микропроцессор описывается многочисленными параметрами, присущими как электронным приборам (быстродействие, потребляемая мощность, габариты, масса, количество уровней питания, надежность, стоимость, тип корпуса, температурный диапазон и др.), так и вычислительным средствам (разрядность, цикл выполнения команды или микрокоманды, количество внутренних регистров, наличие мікропрограмного уровня, тип стековой памяти, состав программного обеспечения и др.).


Микропроцессорное устройство ( МПУ) - функционально и конструктивно законченное изделие, представляющее из себя схемно-конструктивное соединение нескольких микросхем, в том числе одного или нескольких микропроцессоров , предназначенное для выполнения одной или нескольких функций: получение , обработка, передача, преобразование информации и управления .

МПУ имеет унифицированные соединительные характеристики (интерфейс, конструкцию и др.) и функционирует в составе определенной технической системы.

Микропроцессорная система ( МПС) - это совокупность значительного количества функциональных устройств, одним из которых есть микропроцессор.

Микропроцессор является ядром этой системы и выполняет функции центрального устройства управления и устройства арифметическо-логического преобразования данных. Все устройства МПС имеют стандартный интерфейс и подключаются к единой информационной магистрали.

Микропроцессорная техника - это микропроцессоры и устройства вычислительной техники (ВТ) и автоматики, выполненные на их основе.

Это наиболее обобщенные понятия вычислительной техники. На сегодня почти вся ВТ строится на базе микропроцессорных устройств.

МикроЭВМ общего назначения - это микроЭВМ, которые имеют большие операционные ресурсы, приспособленные для обработки разнообразных числовых и текстовых данных и предназначенные для использования в вычислительных центрах.

Это наиболее распространенный класс микроЭВМ, являющийся базовым для персональных компьютеров

Специализированные ЭВМ - это ЭВМ, предназначенные для реализации определенного конкретного алгоритма: преобразования Фурье, вычисления корреляционных функций и др.

Они являются узкопрофильными ЭВМ с ограниченным количеством системных команд.

Встроенная микроЭВМ (микропроцессорное устройство) - блок обработки данных и управления, предназначенное для использования в бытовых приборах, системах технологического контроля или управления, периферийных устройствах ЭВМ, оргтехнике и др.

Наиболее массово эти ЭВМ используют в бытовой технике (телевизоры, магнитолы, стиральные машины и др.)

Компьютер персональный (персональная ЭВМ) - диалоговая система индивидуального пользования, реализованная на базе микропроцессорных средств, малогабаритных внешних запоминающих устройств и устройств регистрации данных, которые обеспечивают доступ ко всем ресурсам ЭВМ с помощью развитой системы программирования на языках высокого уровня.

Это небольшая по размерам и по стоимости универсальная микроЭВМ, предназначенная для индивидуального пользования. Бытовые персональные компьютеры выполняют функции домашнего информационного центра. Профессиональные персональные компьютеры предназначены для автоматизации разнообразных операций обработки больших объемов информации на рабочем месте специалиста.

Микроконтролер - управляемое устройство, выполненное на одном или нескольких кристаллах, функциями которого есть логический анализ и управление.

Классификация микропроцессоров и их основные параметры

По количеству БИС различают однокристальные, многокристальные и многокристальные секционированные МП.

Однокристальные МП реализуют все аппаратные средства процессора в виде одной БИС или СБИС. Однокристальний МП имеет фиксированную разрядность, набор команд и конструктивно выполнен в виде одной интегральной схемы (ИС). Все осуществляемые им операции определяются набором команд МП. Особенностью однокристального МП есть наличие внутренней магистрали для передачи внутренних информационных данных и управляющих сигналов. Возможности этих МП ограниченны аппаратурными ресурсами кристалла и корпуса, но с увеличением степени интеграции кристалла и количества выводов корпуса параметры МП непрерывно улучшаются.

В много кристальних МП логическая структура распределяется на функционально законченные части, которые реализуются в виде отдельных БИС и СБИС или отдельных кристаллов в одной СБИС.

Многокристальные секционированные МП состоят из набора микропроцессорных секций.

Микропроцессорная секция - это микропроцессорная интегральная схема, которая реализует часть МП и имеет средства простого функционального объединения с однотипными или другими микропроцессорными секциями для построения законченных МП, МПУ или микроЭВМ.

Управление секционированными МП осуществляется микропрограммными средствами. К секционированным МПК относятся БИС серий: К1800, КР1802, КМ1804 и др. Главное их назначения - создания высокопроизводительных многоразрядных МП и МПК, на базе которых реализуются разнообразные управляющие вычислительные системы.

Основу МПК БИС составляет базовый комплект ИМС одной серии. Он может состоять из ИС однокристального МП с фиксированными разрядностью и набором команд или комплекта БИС однокристального МП. Для расширения функциональных возможностей МП базовый МПК БИС дополняется другими типами БИС: ОЗУ, ПЗУ, ППЗУ, интерфейсными интегральными схемами, контролерами внешних устройств и др.

По типу обрабатываемых сигналов различают цифровые и аналоговые МП. В обоих типах МП обработка информации цифровая. В цифровых МП обрабатываются сугубо цифровые сигналы, а в аналоговых для обработки аналоговых сигналов встроено аналого-цифровое устройство (АЦП) и цифроаналоговий преобразователь (ЦАП). В них входные аналоговые сигналы передаются в МП через АЦП, обрабатываются в цифровой форме, превращаются в аналоговую форму в ЦАП и поступают на выход.

Выбор микропроцессорного комплекта

для проектирования вычислительных устройств и систем

Выбор МПК для конкретного вычислительного устройства или системы есть наиболее сложной задачей. Это связано с постоянным возрастанием количества МПК и БИС в них.

При выборе МПК аппаратура должна отвечать определенным требованиям: работа в режиме реального времени; повышенная надежность; помехоустойчивость; простота обслуживания; наличие фиксированного набора задач, которые решаются многократно на протяжении всего срока эксплуатации аппаратуры.

Выбор МПК осуществляют по трем основными критериями:

1) в аспекте разработки математического обеспечения нужно проанализировать разрядность, количество доступных для использования регистров общего назначения, набор команд и способы адресации, наличие и организацию стека;

2) относительно системного проектирования необходимо определить: тип архитектуры МП (секционированные или однокристальные), тип организации управления (микропрограммное или с жесткой логикой), наличие логически совместных БИС из других комплектов, быстродействие МП, возможность прерывания и прямого доступа к памяти, наличие системы автоматизированного проектирования;

3) с точки зрения разработки аппаратных средств МПС необходимо учитывать: электрическую совместимость БИС, количество источников питания и рассеиваемую мощность, размер и тип корпуса, количество выводов, диапазон рабочих температур и др.

Выбор МПК для конкретного применения часто осуществляют на основании данных о технологии, по которой он изготовлен.

Вопросы и задачи

1. Какими факторами обусловлено применение МП и микроЭВМ в производственных системах?

2. Чем отличаются однокристальные МП от многокристальных (несекциони-рованных и секционированных)?

3. Какими общими параметрами характеризуют МП, МПУ и МПС?

4. По каким признакам характеризуют МП?

5. Назовите основные параметры современных МП.

6. По каким критериям выбирают микропроцессорные комплек­ты при проектиро-вании вычислительных устройств и систем?

1.2. Общие вопросы организации и функционирования микропроцессорных устройств и систем

Структура микропроцессорных устройств и систем

Любая МПС состоит из МП, системы памяти, системы ввода-вывода информации и системы сопряжения с объектом управления или контроля.

Микропроцессор и грает роль центрального устройства управления и устройства арифметико-логических преобразований данных.

Память физически реализуется в виде системы, которая состоит из нескольких уровней.

Постоянные запоминающие устройства (ПЗУ) предназначены для долгосрочного сохранения предварительно записанных данных и используются только в режиме считывания. Они энергонезависимы.

Оперативные запоминающие устройства (ОЗП) работают в режимах оперативной записи и считывание данных с быстродействием, которое приближается к быстродействию процессора. Они энергозависимы.

Внешние запоминающие устройства (В ЗУ) выполняют функции сохранения больших объемов информации, содержат накопители на гибких и жестких магнитных дисках, компакт-дисках (лазерных) и др.

Устройства ввода данных (УВ) предназначены для передачи данных извне в регистры МП или в память. Среди них - клавиатура, разнообразные пульты управления, магнитные и лазерные диски и др.

Устройства вывода данных (УВыв) предназначены для восприятия данных, передаваемых из регистров МП или ячеек памяти. Это дисплеи, печатающие устройства, ВЗУ, пульты управления, графопостроители (плоттеры) и др.

Для сопряжения объекта управления или контроля с МПУ или МПС в состав оснащения должны входить датчики и исполняющие механизмы. Для их подключения к МПУ ли МПС используют блоки сопряжения, которые выполняют функции согласования интерфейсов. Иногда эти блоки называют устройствами связи с объектом (УСО).

Интерфейсы микропроцессорных устройств и систем

Архитектурные возможности МПС в значительной мере зависят от типа интерфейса.

Унифицированный интерфейс - это совокупность правил, которые устанавливают единые принципы взаимодействия устройств МПС.

В состав интерфейса входят аппаратные средства соединения устройств (соединители, связи), спецификация номенклатуры и характеристик связей, программные средства, описания характера сигналов интерфейса и их временные диаграммы, а также описание электрофизических параметров сигналов.

Основная задача интерфейса - на основе унификации обеспечить совместимость аппаратных, программных и конструктивных средств, которые предопределяют заданное качество автоматического взаимодействия разных функциональных элементов в едином процессе обработки информации в МПС на этапах сбора, преобразования, сохранения и выдачи результатов и управляющих действий.

Архитектура МПС определяется преимущественно тремя интерфейсными уровнями: системным, межмашинным и малым интерфейсом (интерфейсом периферийных устройств).

Системный интерфейс обеспечивает объединения основных модулей (блоков) МПС в единую систему на равные обмена информацией с процессором и ОЗП.

Системные интерфейсы разделяют на сосредоточенные (интерфейсы ПЭВМ), локально-сосредоточенные (Q-bus) и локальные (Unibus).

Межмашинный интерфейс обеспечивает построение мультипроцессорных систем и локальных и распределенных систем и сетей.

Малые интерфейсы учитывают отличие физических принципов работы групп периферийных устройств и ПЗУ. Контролеры малых интерфейсов обеспечивают выход на системный интерфейс. При этом контролеры периферийных устройств и ПЗУ выходят на соответствующий малый интерфейс.

Управление работой микропроцессорных устройств (систем)

Временное согласование информационных сигналов в МПУ осуществляется с помощью специальных сигналов, поступающих от устройства управления МП. МПУ или МПС функционирует синхронно с появлением тактовых сигналов. Простейшее действие, которое выполняется в МПУ (МПС), называется состоянием. Он охватывает один период сигнала тактирования - тактовый интервал или такт.

Определенное количество тактовых интервалов составляет машинный цикл. Для одного обращения к памяти или к устройству ввода/вывода необходим один машинный цикл. За один цикл осуществляется выборка команды или данных, а также кода адреса (возможно, байта команды или данных и байта кода адреса).

Машинный цикл - часть команды (иногда полностью команда). С началом каждого машинного цикла на выводе синхронизации МП возникает сигнал синхронизации. Он передается в запоминающее устройство (ЗУ) и(или) в устройство ввода/вывода (УВВ) и «извещает» о начале нового машинного цикла, в результате чего достигается согласование во времени действия этих устройств с работой МП.

Схема 1. Структура команды

Цикл команды - интервал времени, необходимое для выборки команды из памяти и его выполнения. Он состоит из одного или нескольких машинных циклов. их количество, как правило, равняется количеству обращений МП к памяти или к одному из УВВ. Структуру команды показан на схеме 1.

Управляющее устройство выполняет функции управления и синхронизации, то есть контролирует изменение состояний МП в необходимой последовательности, согласовывая их с сигналами тактового генератора. Он состоит из управляющего конечного автомата, предназначенного для управления процессами внутри МП, и схемы, которая, получая сигналы извне, вырабатывает сигналы, которые управляют системой.

Код команды дешифруется, превращаясь в двоичные сигналы, которые воздействуют на модули и блоки МП, принимающие участие в выполнении этой команды.

Цикл команды делится на две фазы: фаза выборки и фаза выполнения.

Фаза выборки - автомат задает начало очередного цикла, по которому число, находящееся в счетчике команд, передается в буферный регистр адреса. Оттуда через шину адреса код адреса команды направляется в память, где дешифруется. За сигналом «считывания» из ячейки памяти слово команды считывается и передается по шине данных в буферный регистр данных, из которого пересылается в регистр команд, а потом дешифруется.

Фаза выполнения - устройство управления генерирует последовательность сигналов, необходимую для выполнения команды. За это время данные счетчика увеличиваются на единицу. Этим формируется адрес следующей выполняемой команды.

Считывание или запись слова происходит на протяжении некоторого интервала времени, который называют временем доступа. Интервал времени, которое расходуется на обращение к памяти и получение от нее сигнала готовности, называется циклом ожидания готовности. Он составляет часть машинного цикла.

Обмен информацией между МП, ЗУ и УВВ реализуется преимущественно в трех режимах: программно управляемого обмена, обмена в режиме прерываний, обмена в режиме прямого доступа.

Программно управляемый обмен. В этом режиме МП определяет, готово ли ЗУ или периферийное устройство (ПУ) к выполнению операции ввода-вывода, к началу программной передачи данных. УВВ должны иметь аппаратные средства для выработки сигналов о внутреннем состоянии. МП считывает эту информацию и на основании анализа результата делает вывод о готовности устройства к обмену информацией. В дальнейшем в соответствии с протоколом интерфейса происходит обмен данными.

Режим прерывания. Используется при необходимости немедленной передачи данных между УВВ и МП (реакция на неожиданное возникновение внешних условий). При этом МП должен прервать работу основной программы и начать выполнять программу обслуживания внешнего устройства. Такой режим называют прерыванием. Прерывание МП возможны только тогда, когда МП разрешено реагировать на запросы прерывания.

После приема сигнала прерывания МП завершает текущую операцию, передает на сохранение в память всю информацию внутренних регистров данных и управления и переходит к подпрограмме обслуживания прерывания. После окончания обмена информацией по прерыванию восстанавливается состояние МП, которое существовало к началу прерывания.

Различают три вида прерываний: простое, векторное и приоритетное.

Простое прерывание извещает о том, что какое-то устройство ввода/вывода требует обслуживания МП.

Векторное прерывание делает возможным распознать тип (уровень) прерывания, требуемое периферийному устройству. В векторе указывается конкретный адрес устройства.

Приоритетное прерывание состоит в том, что, кроме распознавания прерывания, определяется приоритет в обслуживании прерывающих устройств.

Режим прямого доступа к памяти. Иногда возникает необходимость осуществить обмен информацией вн МП. Это связан с уменьшением затрат времени для обмена массивами данных. В таком случае в состав аппаратной части МПП ли МПС входит контролер прямого доступа к памяти, которая руководит передачей данных, освобождая от этих функций МП.

Устройства прямого доступа к памяти подключаются параллельно процессору. Разделение этих каналов осуществляется с использованием тристабильной логики управления состоянием шин МПС. МП во время прямого доступа к памяти переводит свои исходные схемы в высокоимпедансное состояние и изолируется от системы, что аналогично разрыву информационного канала. Состояние внутренних регистров сохраняется таким, как на момент запроса канала прямого доступа.

Существует несколько способов реализации прямого доступа к памяти. Все они обеспечивают высшую скорость обмена данными сравнительно с режимом программно управляемого обмена. Чаще всего режим прямого доступа к памяти реализуется с остановкой МП и увеличением (удлинением во времени) цикла МП.

Метод остановки основан на том, что в этом состоянии МП отключается от системных шин на время передачи данных. Перед переходом в состояние остановки МП завершает выполнения текущей команды и задерживается в этом состоянии на несколько тактов, до момента, когда шины освободятся. По такой схеме прямого доступа к памяти МП, будучи отключенным от шин, не реагирует на прерывания, что в некоторых случаях может быть неприемлемым для МПС.

Метод захвата состоит в последовательном обмене данными. Быстродействующие УВВ обмениваются только одним словом; их запрос на обслуживание удовлетворяется путем задержки выполнения текущей команды на один машинный цикл, когда МП находится в состоянии перехода от одного машинного цикла к другому. В этом режиме прямого доступа к памяти, МП приостанавливается только на один машинный цикл для передачи каждого слова данных, после чего управления возвращается МП.

Адресное пространство. Механизм и способы адресации

Адресное пространство МПУ (МПС) - множество адресов оперативной памяти и ПЗУ, которое доступно для программ, выполняемых МП.

Размер адресного пространства оперативной памяти МП - одна из величин, существенно влияющих на производительность МПС в целом.

Размер адресного пространства - величина, которое определяется максимальным размером адреса и выражается в единицах минимального количества элементов памяти, которые адресуются - в байтах, или в больших единицах (Кбайт, Мбайт, Гбайт).

Если адрес в МПУ формируется в виде 16-разрядного слова, то адресное пространство равняется 64 Кбайт, 20-разрядного - 1Мбайт и т. д. Иногда для упрощения информационных связей между компонентами МПУ и облегчения программирования процедур ввода/вывода в адресном пространстве размещают адреса регистров МП и УВВ. При этом команды ввода/вывода, как таковые, отсутствуют. Обращения к регистрам МП и УВВ осуществляется идентично обращению к ячейкам памяти.

При образовании слова, 2-байтного адреса, байт с четным (меньшим) адресом называют младшим, а байт с нечетным адресом - старшим.

Часто адресное пространство МПУ представляют в виде диаграммы, на которой указывают общий диапазон адресов. Этот диапазон может быть разделен на поддиапазоны, которые отвечают стандартным размерам конструктивных модулей, чи-пов, разным типам памяти (ОЗУ, ПЗУ и т. п.) или определенному их назначению.

В системе команд МП значительное место занимают адресные команды.

Адресная команда - команда, в которой один или оба ее операнда находятся в оперативной памяти.

Одной из причин такой организации команды есть то, что в одном операнде команды непосредственно нельзя записать полный физический адрес из-за ограничений на длину инструкции. Поэтому, в операнде размещают только определенную величину, с помощью которой вычисляется фактический адрес команды.

Вообще, механизм адресации в значительной мере определяется возможностями МПУ (МПС) эффективно осуществлять обработку информации с минимальным количеством обращений к оперативной памяти. В МПУ (МПС) часто используют команды из двух или нескольких слов.

Для ограничения длины адресного слова применяют разнообразные способы адресации, которые дают возможность:

1) определить полный адрес ячейки памяти меньшим количеством бит, чем сокращается длина команды;

2) обращаться к ячейкам памяти, адреса которых вычисляются во время обработки, чем обеспечивается доступ к устройствам расширения памяти;

3) вычислять адреса данных относительно позиции (текущего адреса) команды так, чтобы программу можно было загружать в любой участок памяти без изменения адреса в программе.

Все режимы адресации можно поделить на две группы:

1) режимы, в которых исполнительный адрес определяется одним значениям кода в команде;

2) команды, которые используют содержимое адресной части команды и одного или нескольких регистров для формирования исполнительного адреса.

К первой группе относят прямую, прямую регистровую, косвенную, косвенную регистровую, непосредственную, автоинкрементную и автодекрементную адресации, а ко второй - базовую, относительную, стековую, виртуальную адресации.

Прямая адресация. Операнды выбираются из памяти (регистров) по адресу, записанному в команде. Однако, указание прямого адреса требует много бит для описания в команде большого адреса. Для его уменьшения некоторые микроЭВМ используют короткую прямую адресацию, обеспечивая доступ к ограниченной части адресного пространства. Если в команде адреса не символические (задаваемые ссылками), а абсолютные, то такую прямую адресацию называют абсолютной.

Прямая регистровая адресация. В коде команды сохраняется имя регистра, в котором находится операнд. Прямая адресации недостаточно гибкая, поскольку не дает возможности выполнить процедуру модификации адреса, необходимую для обеспечения перемещения программ в памяти и удобства работы с массивами.

Косвенная адресация. Операнд из памяти выбирается косвенным способом - через ячейку памяти. В коде команды находится указатель адреса, размещенного в памяти. При выполнении команд с такой адресацией обращения к памяти осуществляется дважды: сначала выбирается адрес, а потом - операнд. Таким образом, без изменения кода команды, можно изменить адрес, сохраняемый в области памяти, на которую указывает поле кода команды.

Косвенная регистровая адресация. По быстродействию приближается к прямой адресации, так как косвенный адрес выбирается из внутреннего регистра процессора и не требует дополнительного цикла памяти. По этой схеме адресации регистр или регистровая пара содержит исполнительный адрес операнда. Загрузка регистров осуществляется с использованием команд с непосредственной адресацией. Применение режима косвенной регистровой адресации делает возможным вычислять адрес памяти во время выполнения программы, что бывает необходимо в процедурах передачи данных, при просмотре элементов массива и т. п.

Непосредственная адресация. Операнд находится в коде команды. Команды в таком случае могут состоять из двух или трех слов.

Автоинкрементна и автодекрементна адресации. Исполнительный адрес вычисляется так же, как и при косвенной регистровой адресации, а потом содержимое регистра увеличивается. В микроЭВМ с байтовой адресацией содержимое регистра необходимо увеличить на 1 для указания следующего байта, и на 2 - для указания адреса следующего слова, при этом размер операнда определяется кодом операции. В автодекрементном режиме адрес операнда формируется вычитанием 1 или 2 из регистра адреса. Отличие от автоинкрементной адресации состоит в том, что вычитание осуществляется до использования содержимого регистра как исполнительного адреса. Комбинация автоинкрементного и автодекрементного режимов обеспечивает эффективное использование любого регистра как указателя стека. Такая адресация применяется также при организации циклов и в операциях со строковыми переменными.

Базовая адресация. Программы, которые содержат команды с абсолютными адресами, невозможно перемещать в памяти без модификации адресов. Обеспечить перемещение программ в памяти можно, применяя базовую адресацию, с помощью которой адрес операнда вычисляется сложением содержимого базового регистра - положительного или отрицательного смещения и адреса, размещенной в коде команды.

Относительная адресация. Исполнительный адрес формируется добавлением базового адреса к адресному полю команды. Как базовый адрес, используют содержимое программного счетчика. Использование относительной адресации дает возможность строить программы, которые независимо перемещаются в памяти за счет того, что в них всегда указанно смещение относительно содержимого программного счетчика. Смещения интерпретируется как знаковое целое число, представленное в дополнительном коде, которое обеспечивает переход в любом направлении.

Стековая адресация. Косвенная регистровая адресация с автоувеличением или автоуменьшением (автоинкрементна или автодекрементна), при которой регистр с указателем адреса операнда задается неявно (существуют такие команды, где местонахождения операндов и результата фиксировано, - неявная адресация). Ячейку памяти, на которую указывает содержимое неявно заданного регистра (указателя стека), называют вершиной стека. С помощью стековой адресации реализуется специальный доступ к участку памяти, называемого стеком, в основу которого положен принцип «последний пришел - первый вышел». Для доступа к стеку используют команды, которые записывают информацию в стек и изымают ее из него. Если команды, которые записывают информацию в стек, декрементируют содержимое указателя стека, а команды, которые изымают из стека, - инкрементируют, то говорят, что стек работает на уменьшение, в противном случае - на увеличение.

Виртуальная адресация. Каждый пользователь памяти (операционная система или человек), решая прикладную задачу, манипулирует с виртуальными адресами, благодаря чему создается иллюзия памяти неограниченной емкости, хотя реальная оперативная память системы имеет ограниченную емкость. Иллюзия создается за счет механизма виртуальной адресации, основой которой есть динамическое перераспределение страниц памяти между основной памятью системы (ОЗП) и внешней.

Каждому пользователю операционная система создает таблицу соответствия виртуальных и физических страниц. Если осуществляется обращения к физической странице, которой нет в основной памяти, то она изымается из внешней памяти и загружается в основную, а ненужная страница «прячется» во внешней памяти. Виртуальную память, или просто память системы, можно поделить на сегменты, в которых информация сохраняется по функциональным признакам. Например, в одном сегменте - команды, во втором - данные, в третьем - участок стека. Или, в одном сегменте, в котором запрещена запись, - ядро операционной системы, а во втором, в котором разрешена запись и считывание, - программы пользователя. Таким образом, с помощью механизма сегментации решаются задачи защите памяти.

Сегментация была реализована в МП К1810ВМ86, а виртуальная адресация - в МП ІАРХ286 (Intel) и 68010 (Motorola).

Система команд. Под командой в общем случае понимают единичный шаг работы исполнительного устройства в виде распоряжения на машинном языке. Команда определяет операцию, которая должна быть выполнена, и ее атрибуты: тип операции, выполняемой в данном цикле работы; адрес, одного или двух операндів, участвующих в операции; местонахождения результата операции; адрес расположения следующей команды. Вследствие маленькой разрядности МП такую информацию тяжело, а иногда и невозможно, указать в одном машинном слове. Поэтому команда может состоять из нескольких машинных слов.

В общем случае различают такие типы команд:

1) пересылка - однонаправленные (регистр - регистр, память - регистр, регистр-память, память-память), обмена (регистр-регистр, память-регистр, память-память), команды ввода/вывода;

2) арифметические;

3) логические;

4) обработки бит;

5) те, что изменяют последовательность вычислений, - переходы (безусловные, условные), вызовы подпрограмм, возврата из подпрограмм, программные прерывания.

Вопросы для самопроверки

1. Опишите обобщенную структуру МП и МПС.

2. По каким признакам классифицируют интерфейсы МПУ и МПС?

3. Какие функции выполняет МП при обработке команды (инструкции) во время фазы выборки, фазы выполнения?

4. При каких обстоятельствах обмен информацией между МП и запоминающими устройствами осуществляется в режиме прерывания или прямого доступа к памяти?

5. От каких параметров МП зависит величина адресного пространства?

6. Пользуясь прибавлением 1, приведите примеры адресных команд с прямой, косвенной, непосредственной, базовой, относительной, автоинкрементной, стековой и виртуальной адресациями.

7. Какую информацию несет в себе код команды в системе команд МП?

1.3. Формализация процесса проектирования микропроцессорных устройств и систем

Аспекты и уровни проектирования

При проектировании МПУ и МПС в многих случаях применяют блочно-иерархический подход, при котором проектируемую систему, делят на иерархические уровни. На высшем уровне используется наиболее недетализированное представление, где отображаются только общие черты и особенности проектируемой системы. На следующих уровнях степень детализации возрастает. При этом МПС рассматривается как совокупность отдельных блоков. На каждом уровне формулируются и решаются задачи определенной сложности, которые реализуются с помощью средств проектирования, имеющихся на этом уровне. Распределение на блоки должно быть таким, чтобы документация на каждый отдельный блок была понятной для одного проектанта.

Итак, блочно-иерархический подход дает возможность распределять сложные задачи проектирования МПС большого объема на группы задач небольшого объема, причем внутри группы разные задачи могут решаться параллельно.

В соответствии с ЕСКД при проектировании устройств и систем используются структурные, функциональные и принципиальные схемы.

Условно можно выделить в моделируемой схеме проектирования горизонтальные и вертикальные уровни (табл. 1). Вертикальные уровни называют аспектами. Различают такие аспекты проектирования МПУ и МПС: функциональный, алгоритмический, конструкторский и технологический.

Функциональный аспект состоит из трех горизонтальных уровней (2-го, 3-го и 4-го): системного (структурного), функционально-логического и схемотехнично-компонентного. На системном уровне проектируют структурную схему МПУ или, МПС, на функционально-логическом - функциональные и принципиальные схемы МПУ или всех устройств, которые входят в состав МПС.

На схемотехническом подуровне схемотехнично-компонентного уровня проектируют принципиальные электрические схемы интегральных схем или фрагментов БИС (СБИС). Элементами в этом случае являются компоненты электронных схем : резисторы, конденсаторы, диоды, транзисторы и др. На компонентном подуровне разрабатывают отдельные компоненты ИС, которые состоят из элементов-участков полупроводникового кристалла.

Алгоритмический аспект содержит также три горизонтальных уровня (1-й, 2-й и 3-й): уровень разработки схемы функционирования МПУ или МПС, архитектурный уровень и микропрограммный уровень. На 1-ом уровне разрабатывают схемы функционирования МПУ или МПС, определяют задачи, которые будут решаться микропроцессорной частью МПС, планируют программные системы и разрабатывают блок-схемы алгоритмов. В дальнейшем разрабатывают программные модули.

Главной задачей 2-го (архитектурного) уровня является выбор архитектуры микропроцессорной части МПС. Иногда его рассматривают как одну из задач системного уровня, то есть объединяют архитектурный и системный уровни в один аспект функционального проектирования.

Таблица 1. Горизонтальные и вертикальные у ровни проектирования

Горизон-тальный уровень

Аспекты (вертикальные уровни)

Функцио-нальный

Алгоритми-ческий

Конструкторский

Технологический

Разработка законов функционирования МПУ (МПС); проектирования алгоритмов; программирования модулей

Системный (структурный)

Архитектурный (машинный)

Стояк, па-нель

Разработка принципиальной схемы технологического процесса

Функционально-логический

Микро-программный

ТЭЗ, мо-дуль

Разработка маршрутов технологического процесса

Схемотех-нично-компонент-ный

Кристаллы ИС

Проектирования технологических операций

3-й (микропрограммный) уровень предназначен для проектирования микропрограмм операций и процедур, которые выполняются в микропроцессоре МПУ ли МПС аппаратным способом.

Конструкторский аспект содержит горизонтальные иерархические уровни проектирования стояков, панелей, ТЕЗів, модулей и кристаллов (чіпів) ІС (2-й, 3-й, 4-й равные).

Технологический аспект состоит из трех горизонтальных уровней - 2-го, 3-го и 4-го. На 2-ом уровне разрабатывается схема технологического процесса изготовления МПУ или МПС, то есть определяют состав и последовательность этапов изготовления МПУ (МПС). На 3-м уровне разрабатывают маршруты технологического процесса изготовления МПУ (МПС), то есть определяют состав и последовательность операций по изготовлению изделия, осуществляют выбор видов и групп технологического оснащения . На 4-м уровне проектируют технологические операции изготовления составных частей МПУ (МПС).

Основные задачи уровней проектирования

Системный и архитектурный у ровни проектирования:

1) определение принципов организации МПУ (МПС);

2) разработка структурной схемы, то есть определение состава устройства или системы и способа взаимодействия составных частей в процессе функционирования аппаратуры;

3) выбор микропроцессорного (микропроцессорных) комплекта БИС (СБИС);

4) определение требований к параметрам устройства или системы и формирования технической задачи (ТЗ) на разработку отдельных устройств МПС.

ТЗ на разработку отдельных устройств МПС содержит: перечисления всех функций, выполняемых каждым устройством; условия работы устройства; требования к его входным и выходным параметрам; данные о содержании и форме информации, обмениваемой с другими устройствами аппаратуры; элементную базу для создания устройства.

Функционально-логический и микропрограммный у ровни проектирования :

1) детализация функций каждого устройства;

2) алгоритмическая реализация функций, которые выполняются программным способом, и представление алгоритмов на одном из принятых алгоритмических языков;

3) выбор принципов организации МПУ (МПС) и разработка его принципиальной схемы;

4) разработка микропрограмм, которые служит основой для каждой команды или совокупности микрокоманд и последовательности их выполнения;

5) синтез функциональных и принципиальных схем цифровых устройств, которые входят в состав МПС;

6) синтез контролирующих и диагностических тестов для МПП ли МПС;

7) формулирования ТЗ для схемотехнического уровня проектирования.

Главные критерии проектирования сложных МПП и МПС:

1) качество проектирования;

2) стоимость проектирования;

3) сроки разработки;

4) количество занятых специалистов-разработчиков.

По возможностям формализации процесса проектирования и его итеративного характера предпочтение отдают выбору автоматизированного проектирования МПП ли МПС. На сегодня из-за большой сложности МПП и МПС полная разработка микропроцессорной части вообще невозможная без использования методов автоматизированного проектирования.

Вопрос. Задача

1. Объясните сущность блочно-иерархического подхода к проектированию МПП и МПС.

2. Что отображают аспекты в моделированной схеме проектирования МПП?

3. На каком из горизонтальных уровней МПП проектируется в виде ТЭЗа и какой аспект соответствует этому?

4. Назовите основные задачи системного уровня проектирования МПП.

5. Какие особенности архитектурного уровня проектирования МПП?

6. В чем сущность функционально-логического уровня проектирован­ия МПП и МПС?

7. Какие основные задачи решаются на микропрограммном уровне МПП?

1.4. Архитектура микропроцессорных устройств и систем

Сущность архитектуры и принципы

разработки микропроцессорных устройств и систем

Сущность архитектуры МПУ и МПС.

Архитектура микропроцессора отражается в функциональных возможностях составляющих его электронных компонентов, используемых для представления данных, машинных операций, описания алгоритмов и процессов вычислений .

Архитектура объединяет аппаратные, микропрограммные и программные средства вычислительной техники и дает возможность четко выделить то, что при создании конкретной МПС должно быть реализовано пользователем программным способом и дополнительными аппаратными средствами.

Иначе, архитектура МП - это его логическая организация, обусловленная возможностями МП относительно аппаратной или программной реализации функций, которые возлагаются на проектируемые МПУ или МПС. Она отображает структуру МП, способы представления и форматы данных, набор команд, форматы управляющих слов, способы обращения ко всем доступным для пользователя элементам структуры, реакцию МП на внешние сигналы.

Архитектуру МП можно рассматривать как совокупность его свойств и характеристик с позиции пользователя. Она описывает методологию оптимального объединения совокупности аппаратных, программных и микропрограммных средств МПУ или МПС относительно свойств, которые используются разработчиками и программистами-пользователями.

При разработке архитектуры МПУ , как и для МП, определяются форматы данных и команд, система команд и методы адресации, обосновываются виды адресации, требования к интерфейсам. Правильный выбор архитектуры делает возможным оптимизировать вычислительный процесс, реализующий алгоритмы функционирования МПУ.

Архитектура микроЭВМ - абстрактное понятие микроЭВМ в терминах функциональных узлов, основных модулей ЭВМ, структур данных. Архитектура конкретно не определяет особенности аппаратной части, время выполнения команд, степень параллелизма при реализации программы и других аналогичных характеристик. Она отображает аспекты структуры микроЭВМ, в частности: систему команд, режимы адресации, форматы данных, набор доступных для пользователя регистров. Термин «архитектура» используется для описания возможностей, которые предоставляет микроЭВМ, а термин «организация» определяет, как эти возможности реализуются.

Описание архитектуры является моделью микроЭВМ, понимание которой важно не только для программиста. Она может быть использована как исходная база для потенциального разработчика новой микроЭВМ: этом случае разработчик трансформирует элементы архитектуры, представляющие определенную логическую схему, набор необходимых, связанных между собой, компонентов.

Все микроЭВМ содержат функциональные блоки, имеющие свою внутреннюю микро-архитектуру: 1) процессор, состоит из арифметико-логического устройства и устройства управления; 2) память – это набор запоминающих элементов (ячеек) и блок управления; 3) устройства ввода и вывода информации также сложные устройства, имеющие в своем составе механические и электронные модули. Эти функциональные блоки объединяются с помощью системы шин: шины данных, по которой осуществляется обмен информацией между блоками микроЭВМ; шины адреса, которая используется для передачи адресов к программно управляемым устройствам, и шины управления для передачи управляющих слов.

Определение архитектуры компьютера, как универсальной микроЭВМ, по смыслу не отличается от определения архитектуры микроЭВМ вообще.

Архитектура компьютера , с точки зрения программиста, абстрактное представление (или определение) вычислительной системы как совокупности комплекса аппаратных и программных средств. В сущности, архитектура - это информация о функциональной (логической) организации компьютера.

Архитектура МПС - определение функций, реализуемых системой на отдельных ее уровнях, и точное определение границ между этими уровнями. Она определяет принципы организации МПС и функции составляющих ее компонентов, в частности процессора, памяти и др. Архитектура МПС не отображает конструктивные особенности логических структур и модулей и технологию их производства.

Принципы разработки МПУ и МПС

С самого начала при разработке и развитии микроЭВМ использовались преимущественно такие основные принципы: модульность, магистральность, микропрограммируемость и регулярность структуры.

Принцип модульной организации предусматривает построение микроЭВМ и МПС на основе набора модулей.

Модуль - конструктивно, функционально и э лектрически законченное устройство, которое делает возможным самостоятельно или в совокупности с другими модулями решать вычислительные задачи или задачи управления заданного класса.

Различают функциональные и конструктивные модули. Модульный подход дает возможность стандартизировать элементы высших уровней и сокращает затраты на проектирование МПУ и МПС, упрощает наращивания мощности и реконфигурацию систем.

Связь модулей и их элементов между собою осуществляется преимущественно по двум принципам: а) принцип произвольных связей, который реализует правило «каждый с каждым», и б) принцип упорядоченных связей - магистральный, дающий возможность минимизировать количество связей. Они обеспечивают обмен информацией между функциональными и конструктивными модулями разных уровней с помощью магистралей, соединяющих входные и выходные шины.

Большинство микроЭВМ и МПС имеют многоуровневую организацию программного управления.

Принцип микропрограммного управления обеспечивает наибольшую гибкость при организации многофункциональных микропроцессорных модулей и путем определенной комбинации микрокоманд дает возможность осуществить проблемную ориентацию микроЭВМ. Благодаря этому принципу есть возможность использовать макрооперации в МПС и эффективнее выполнять команды и программы, чем при использовании подпрограмм.

Микропрограммное управление обеспечивает:

Большую гибкость устройств за счет возможности изменения микропрограмм,

Увеличивает регулярность структуры устройств за счет широкого использования матричных структур типа памяти,

Обеспечивает параллельное решение задач рассредоточенного управления и распределенной памяти,

Повышает надежность устройств за счет использования чипов памяти,

Упрощает контроль функционирования устройств, так как контроль блока микропрограммного управления сводится к контролю содержимого запоминающего устройства.

Принцип регулярности предопределяет повторяемость элементов структуры и связей между ними.

Регулярность системы, как правило, рассматривается на разных уровнях ее организации. Основными способами увеличения регулярности структуры МПП и МПС являются:

1) широкое использование устройств типа памяти;

2) отказ от закрепления определенных микроопераций за регистрами;

3) использование регистровых структур;

4) изготовление регистров общего назначения и других регистров в виде ячеек памяти;

5) применение магистрального способа обмена информацией;

7) использование принципа микропрограммного управления;

8) развитие параллельных МПС.

Классификация архитектур микропроцессорных устройств и систем

Существует несколько классификаций архитектур МПУ и МПС, которые преимущественно совпадают с описаниями обобщенной архитектуры ЭВМ.

Классификация М. Флина. Это одна из удачных классификаций, где показаны архитектурные различия между ЭВМ. Архитектурные особенности ЭВМ описаны с точки зрения потока команд (инструкций) и потока данных. Такой подход дает возможность относить архитектуры компьютеров к одному из определенных классов (табл. 2, схема 2).

Таблица 2 Классификация компьютерных архитектур по Флину

Поток команд

Единичный поток данных

Множественный поток данных (МД)

Единичный (ОК)

ОКОД (SISD) (однопроцессорные компьютеры)

ОКМД (SIMD) (компьютеры с параллельными или ассоциативными процессорами)

Множественный (МК)

МКОД (MISD) (конвейерные магистральные компьютеры)

МКМД (MIMD) (многопроцессорные или многомашинные комплексы)

Классификация осуществлена в аспекте не структуры машин, а в аспекте того, как в компьютере его машинные команды взаимодействуют с данными. Тем не менее классификация Флина весьма общая, то есть она относит все параллельные компьютеры, кроме мультипроцессорных, к одному классу и не указывает никакого отличия между конвейерным компьютером и матрицей МП.

Используются и другие классификации архитектур, в частности систематика Ф. Шара, структурная систематика Р. Хокни и К. Джесхоупа, которая использует специальные структурные нотации.

Структурная систематика Р. Хокни и К. Джессхоупа . На первом уровне все вычислительные системы разделяют по принципу множественности (количества) на однокомпьютерные и многокомпьютерные. Вычислительные системы с одним компьютером, в свою очередь, делятся на ЭВМ с одним конвейерным МП и многими МП.

Первые из них являются традиционными последовательными компьютерами, а вторые образовывают класс параллельных компьютеров, которые разделяют на конвейерные, неконвейерные и микропроцессорные матрицы.

Схема 2. Иллюстрация классификации компьютерных архитектур по Флину

Примером одной из первых неконвейерных вычислительных машин с параллелизмом может быть компьютер CDC-6600, построенный на основе нескольких скалярных процессоров.

Конвейерные ЭВМ делятся на выполняющие только скалярные команды, например компьютеры CDC-7800, FPC AP-120B, и те, которые выполняют векторные команды. Компьютеры, которые используют векторные команды, разделяются, в свою очередь, на компьютеры со специализированным конвейером, например CRAY-1, и с универсальным конвейером - компьютер CYBER 205.

Компьютеры класса машин с матрицей процессоров классифицируются по связанности процессоров в матрице, по разрядности и т. п. Первыми машинами такого типа были ILLIAC-IV, BSP, STA-RAN, ICL DAP, OMEN и др.

По назначению компьютеры подразделяются на две основные группы: универсальные и специализированные .

Архитектура фон Неймана

Универсальные компьютеры имеют традиционную «фон-неймановскую» архитектуру (или скалярную архитектуру).

Основные принципы построения программно-управляемых ЭВМ.

В 1946 г. известный американский математик Дж. фон Нейман впервые сформулировал основные принципы построения программно-управляемых ЭВМ, которые с течением времени дополнялись и уточнялись:

1) принцип программного управления состоит в том, что ЭВМ может автоматически преобразовывать исходные данные в соответствии с заданной программой;

2) принцип условного перехода предоставляет гибкость и универсальность программам, обеспечивая возможность в процессе решения задачи осуществлять переход на определенный участок программы в зависимости от результатов промежуточных вычислений или исходных данных;

3) принцип сохраняемости (защищенности) программы состоит в том, что программу размещают в запоминающем устройстве ЭВМ;

4) принцип произвольного доступа к элементам памяти;

5) принцип использования двоичной системы счисления;

6) принцип многоуровневой (иерархической) памяти.

Эти принципы актуальные и для современных ЭВМ, но с созданием новых поколений и семейств машин они дополнялись и уточнялись.

В ЭВМ, начиная из третьего поколения, кроме того, применяются такие принципы:

- мультипрограммирование - совместное выполнение разных команд одной и той же или разных, независимых одна от одной, программ, которые сохраняются в оперативной памяти;

- информационная и программная совместимость - дает возможность выполнять имеющиеся программы на разных моделях семейства;

Высокий уровень технической стандартизации - единая для всех машин номенклатура внешних и других устройств;

Возможность организации многоэтапной работы по созданию и усовершенствованию ЭВМ.

Машины четвертого поколения строятся по принципам:

- многопроцессорности - коммутации нескольких процессоров при работе с общей памятью;

Организации виртуальной памяти - обеспечивающей практически неограниченный объем адресного пространства ОЗУ;

Широкого использования БИ С и СБИС и макромодульной структуры, в основе которой лежит идея построения из больших стандартизированных блоков (макромодулей) функционально гибких вычислительных систем;

Использования внутренних языков высокого уровня .

Машины пятого поколения отличаются:

Значительным повышением интеллектуального уровня процессоров;

Дальнейшим развитием функции ввода-вывода графики, изображений, документов, языков программирования;

Возможностью диалоговой обработки информации с помощью естественного языка;

Способностью к самообучению, к ассоциативным построениям и получению выводов.

Языки программирования в процессе формирования программ могут реализовывать естественный интерфейс между человеком и машиной. Языки сверхвысокого уровня, обеспечивают:

Высокий уровень интеллектуальности взаимодействия пользователей с вычислительной системой на разных уровнях доступа к базам данных для выбора нужной информации и к базам знаний для получения новых представлений, необходимых для решения незнакомых задач;

Использование существующих программных фондов, ориентированных на традиционную архитектуру ЭВМ.

Специализированные компьютеры предназначены для значительного повышения производительности при решении отдельных видов задач . Это достигали на первых порах за счет применения параллельных вычислений. Со временем появились машины, которые базировались на параллельном выполнении разнообразных функций или на дублировании арифметических устройств, в частности процессорных матриц.

Параллельные архитектуры

Параллельность развивалась по двум направлениями:

1) усовершенствование структуры компьютера за счет уменьшения различий между скоростью работы процессора и скоростью доступа к оперативной памяти;

2) повторение однотипных устройств компьютера, объединенных по определенной топологии.

Параллелизм применялся на нескольких иерархических уровнях, в частности:

1) уровень задач - между задачами, которые выполняются на компьютере, или между фазами задачи;

2) программный уровень - между частями программы (например, в границах циклов);

3) командный уровень - между фазами выполнения команды (инструкциями процессора);

4) арифметический и разрядный уровни - между элементами векторной операции внутри логических схем арифметического устройства.

Принципиальные способы введения параллелизма в архитектуру компьютера можно разделить на такие группы:

- функциональная обработка - предоставление нескольким устройствам возможности выполнения разных функций, в частности операций логики, сложения, умножения и др.

- конвейерная обработка - использование принципа конвейера с целью повышения эффективности процессорного устройства;

- матричная обработка - использование матрицы одинаковых процессорных элементов с общей системой управления, где все элементы выполняют одну и ту же операцию, но с разными данными;

- мультипроцессорная обработка - осуществляется несколькими процессорами, каждый из которых выполняет собственные команды, и все они взаимодействуют через общую оперативную память.

Сигнальные и м едийные микропроцессоры

Сигнальные матричные процессоры - процессоры, в основу которых положен принцип управления, осуществляемого самим потоком данных.

Команды начинают выполняться, как только их операнды становятся доступными. При этом поступление данных из соседних процессоров интерпретируется как изменение состояния и инициирует определенное действие.

Сигнальные процессоры напоминают своей работой процесс распространения сигнала. Они являются распределенной глобальной асинхронной матричной системой вычислений.

Медийная система - сеть процессоров, которые выполняют ритмические вычисления и передачу данных системой.

Каждый процессор регулярно перекачивает данные в каждый момент времени, выполняя определенные короткие вычисления так, что в сети регулярно сохраняется поток данных. Каждый из этих процессоров ориентированный только на один класс задач и потому принадлежит к классу специализированных вычислительных машин.

На аппаратном уровне этим компьютерам присуща глобальная синхронизация, которая предопределяет возникновение таких проблем, как синхронизация тактовых сигналов, повышение потребляемой мощности, снижение надежности работы и др.

Для универсальных потоковых многопроцессорных систем существенными являются проблемы конфликтов, которые связаны с использованием общей памяти и взаимодействия процессоров. Эти проблемы решались путем замены поточных систем модульными и локальными (что реализовано в сигнальных матричных процессорах).

Во многих специализированных компьютерах применяется «гарвардская архитектура» , сущность которой состоит в том, что пространство памяти команд отделено от пространства памяти данных для того, чтобы одновременно выполнять выборку команд и данных.

RISC-архитектура компьютеров

Такую архитектуру имеют компьютеры с сокращенным набором инструкций/команд (RISC - reduced instruction set computer ).

Основные свойства компьютеров с RISC -архитектурой :

1) использования команд фиксированной длины с малым количеством типов форматов;

2) регулярность, которая дает возможность благодаря простоте команд использовать одни и те же аппаратные устройства для выполнения почти всех команд;

3) выполнение большинства команд за один машинный цикл (такт);

4) ориентированность на регистры - все операции с данными выполняют в регистрах, кроме команд загрузки и записи, осуществление которых связано с обращением к памяти.

Преимущества RISC -архитектуры:

1) сопоставимая простота аппаратной реализации;

2) быстрая дешифровка команд;

3) короткая продолжительность такта и соответственно быстрое выполнение команд;

4) возможность создания эффективного конвейера команд.

Недостатки RISC -архитектуры:

1) сравнительно малая скорость обмена операндами и ячейками оперативной памяти;

2) дополнительные требования к программному обеспечению.

Производительность современных матричных и параллельных компьютеров довольно большая и достигает миллиардов операций за секунду над 64-разрядными операндами при выполнении операций с плавающей запятой. При решении прикладных задач их производительность значительно снижается и приближается к производительности современных универсальных компьютеров.

Среди современных конвейерных и матричных МПС следует назвать такие суперкомпьютеры, как Cray MP и др.

Вопрос. Задача

1. Что отображает архитектура МПУ (микроЭВМ) и в чем ее отличие от архитектуры МП?

2. Объясните сущность принципов модульности, магистральности, микро программируемости и регулярности структуры, которые применяются при разработке МПУ, микроЭВМ и МПС.

3. По каким признакам классифицируют компьютерные архитектуры?

4. В чем сущность компьютерной архитектуры фон Неймана?

5. В чем сущность компьютерной Гарвардской архитектуры?

6. Перечислите способы введения параллелизма в архитектуру компьютера.

7. Объясните сущность мультипрограммирования компьютеров.

8. Какой принцип действия медийной сети МП и сигнальных матричных МП, в чем их отличия?

9. В чем сущность RISC-архитектуры компьютеров, какие она имеет преимущества и недостатки сравнительно с предварительно рассмотренными архитектурами?

Литература.

1. Мікропроцесори та мікроЕОМ у виробничих системах: Посібник.- К.: Видавничий центр “Академія”, 2002. – 368 с. (Альма-матер).

2. Корнеев вычислительные системы.- М.: «Нолидж», 199с.

3. , Киселев микропроцессоры.- М.: «Нолидж», 199с.

Основные этапы разработки. МПС на основе МК используются чаще всего в качестве встроенных систем для решения задач управления некоторым объектом. Важной особенностью данного применения является работа в реальном времени, т.е. обеспечение реакции на внешние события в течение определенного временного интервала. Такие устройства получили название контроллеров.

Технология проектирования контроллеров на базе МК полностью соответствует принципу неразрывного проектирования и отладки аппаратных и программных средств , принятому в микропроцессорной технике. Это означает, что перед разработчиком такого рода МПС стоит задача реализации полного цикла проектирования, начиная от разработки алгоритма функционирования и заканчивая комплексными испытаниями в составе изделия, а, возможно, и сопровождением при производстве. Сложившаяся к настоящему времени методология проектирования контроллеров может быть представлена так, как показано на Рисунок 6.1.

Рисунок 6.1 - Основные этапы разработки контроллера

В техническом задании формулируются требования к контроллеру с точки зрения реализации определенной функции управления. Техническое задание включает в себя набор требований, который определяет, что пользователь хочет от контроллера и что разрабатываемый прибор должен делать. Техническое задание может иметь вид текстового описания, не свободного в общем случае от внутренних противоречий.

На основании требований пользователя составляется функциональная спецификация, которая определяет функции, выполняемые контроллером для пользователя после завершения проектирования, уточняя тем самым, насколько устройство соответствует предъявляемым требованиям. Она включает в себя описания форматов данных, как на входе, так и на выходе, а также внешние условия, управляющие действиями контроллера.

Функциональная спецификация и требования пользователя являются критериями оценки функционирования контролера после завершения проектирования. Может потребоваться проведение нескольких итераций, включающих обсуждение требований и функциональной спецификации с потенциальными пользователями контроллера, и соответствующую коррекцию требований и спецификации. Требования к типу используемого МК формулируются на данном этапе чаще всего в неявном виде.

Этап разработки алгоритма управления является наиболее ответственным, поскольку ошибки данного этапа обычно обнаруживаются только при испытаниях законченного изделия и приводят к необходимости дорогостоящей переработки всего устройства. Разработка алгоритма обычно сводится к выбору одного из нескольких возможных вариантов алгоритмов, отличающихся соотношением объема программного обеспечения и аппаратных средств .

При этом необходимо исходить из того, что максимальное использование аппаратных средств упрощает разработку и обеспечивает высокое быстродействие контроллера в целом, но сопровождается, как правило, увеличением стоимости и потребляемой мощности. Связано это с тем, что увеличение доли аппаратных средств достигается либо путем выбора более сложного МК, либо путем использования специализированных интерфейсных схем. И то, и другое приводит к росту стоимости и энергопотребления. Увеличение удельного веса программного обеспечения позволяет сократить число элементов контроллера и стоимость аппаратных средств , но это приводит к снижению быстродействия, увеличению необходимого объема внутренней памяти МК, увеличению сроков разработки и отладки программного обеспечения. Критерием выбора здесь и далее является возможность максимальной реализации заданных функций программными средствами при минимальных аппаратных затратах и при условии обеспечения заданных показателей быстродействия и надежности в полном диапазоне условий эксплуатации. Часто определяющими требованиями являются возможность защиты информации (программного кода) контроллера, необходимость обеспечения максимальной продолжительности работы в автономном режиме и другие. В результате выполнения этого этапа окончательно формулируются требования к параметрам используемого МК.

При выборе типа МК учитываются следующие основные характеристики:

  • - разрядность;
  • - быстродействие;
  • - набор команд и способов адресации;
  • - требования к источнику питания и потребляемая мощность в различных режимах;
  • - объем ПЗУ программ и ОЗУ данных;
  • - возможности расширения памяти программ и данных;
  • - наличие и возможности периферийных устройств, включая средства поддержки работы в реальном времени (таймеры, процессоры событий и т.п.);
  • - возможность перепрограммирования в составе устройства;
  • - наличие и надежность средств защиты внутренней информации;
  • - возможность поставки в различных вариантах конструктивного исполнения;
  • - стоимость в различных вариантах исполнения;
  • - наличие полной документации;
  • - наличие и доступность эффективных средств программирования и отладки МК;
  • - количество и доступность каналов поставки, возможность замены изделиями других фирм.

Список этот не является исчерпывающим, поскольку специфика проектируемого устройства может перенести акцент требований на другие параметры МК. Определяющими могут оказаться, например, требования к точности внутреннего компаратора напряжений или наличие большого числа выходных каналов ШИМ.

Номенклатура выпускаемых в настоящее время МК исчисляется тысячами типов изделий различных фирм. Современная стратегия модульного проектирования обеспечивает потребителя разнообразием моделей МК с одним и тем же процессорным ядром. Такое структурное разнообразие открывает перед разработчиком возможность выбора оптимального МК, не имеющего функциональной избыточности, что минимизирует стоимость комплектующих элементов.

Однако для реализации на практике возможности выбора оптимального МК необходима достаточно глубокая проработка алгоритма управления, оценка объема исполняемой программы и числа линий сопряжения с объектом на этапе выбора МК. Допущенные на данном этапе просчеты могут впоследствии привести к необходимости смены модели МК и повторной разводки печатной платы макета контроллера. В таких условиях целесообразно выполнять предварительное моделирование основных элементов прикладной программы с использованием программно-логической модели выбранного МК.

При отсутствии МК, обеспечивающего требуемые по ТЗ характеристики проектируемого контроллера, необходим возврат к этапу разработки алгоритма управления и пересмотр выбранного соотношения между объемом программного обеспечения и аппаратных средств . Отсутствие подходящего МК чаще всего означает, что для реализации необходимого объема вычислений (алгоритмов управления) за отведенное время нужна дополнительная аппаратная поддержка. Отрицательный результат поиска МК с требуемыми характеристиками может быть связан также с необходимостью обслуживания большого числа объектов управления. В этом случае возможно использование внешних схем обрамления МК.

На этапе разработки структуры контроллера окончательно определяется состав имеющихся и подлежащих разработке аппаратных модулей, протоколы обмена между модулями, типы разъемов. Выполняется предварительная проработка конструкции контроллера. В части программного обеспечения определяются состав и связи программных модулей, язык программирования. На этом же этапе осуществляется выбор средств проектирования и отладки .

Возможность перераспределения функций между аппаратными и программными средствами на данном этапе существует, но она ограничена характеристиками уже выбранного МК. При этом необходимо иметь в виду, что современные МК выпускаются, как правило, сериями (семействами) контроллеров, совместимых программно и конструктивно, но различающихся по своим возможностям (объем памяти, набор периферийных устройств и т.д.). Это дает возможность выбора структуры контроллера с целью поиска наиболее оптимального варианта реализации.

Нельзя не упомянуть здесь о новой идеологии разработки устройств на базе МК, предложенной фирмой «Scenix». Она основана на использовании высокоскоростных RISC-микроконтроллеров серии SX с тактовой частотой до 100 МГц. Эти МК имеют минимальный набор встроенной периферии, а все более сложные периферийные модули эмулируются программными средствами . Такие модули программного обеспечения называются «виртуальными периферийными устройствами», они обеспечивают уменьшение числа элементов контроллера, времени разработки , увеличивают гибкость исполнения. К настоящему времени разработаны целые библиотеки виртуальных устройств, содержащие отлаженные программные модули таких устройств как модули ШИМ и ФАПЧ, последовательные интерфейсы, генераторы и измерители частоты, контроллеры прерываний и многие другие.

Проектирование микропроцессорной системы

Структура

Структурная схема системы представлена на рисунке 3.2.

Рисунок 3.2 - Структурная схема МПС

МП является центральным блоком МПС. Он управляет всеми микросхемами и производит обработку данных.

МП формирует адрес на США и осуществляет обмен с СШД.

ОЗУ предназначено для хранения промежуточных данных.

ПЗУ предназначена для хранения кода программы и различных констант.

ППИ предназначен для подключения внешних устройств. К ППИ подключены АЦП, дискретные сигналы и ПП.

АЦП предназначен для преобразования аналогового сигнала с датчиков в цифровой код.

ПП предназначен для организации обмена по последовательному каналу между диспетчерским пунктом и МП.

Проектирование принципиальной схемы

К МПС должна обеспечивать:

  • - опрос 7 аналоговых датчиков;
  • - сбор 8 дискретных сигналов;
  • - формирование 4 дискретных управляющих воздействий.

Расчет необходимого объема памяти данных производится по формуле

где и - количество аналоговых и дискретных входных сигналов соответственно; и - разрядность аналогового и дискретного сигналов.

В нашем случае и.

В итоге для хранения данных опроса датчиков необходимо

В качестве центрального блока системы выбран микроконтроллер КМ1816ВЕ51. Его основными преимуществами являются:

  • - наличие резидентной памяти программ и данных;
  • - наличие встроенного ПП;
  • - 4 порта;
  • - низкое энергопотребление;
  • - встроенные таймеры-счетчики.

Для хранения данных используется встроенные 128 байт памяти программ МК. Программа будет храниться в резидентной памяти программ.

Для опроса аналоговых датчиков используется микросхема К572ПВ4. К преимуществам микросхемы относятся:

  • - наличие встроенного мультиплексора;
  • - автоматический опрос датчиков без участи микропроцессора;
  • - хранение результатов преобразования по каждому каналу во встроенной статической памяти.

Так как у МК нет выходов генератора, для формирования тактового сигнала используется микросхема генератора К531ГГ1.


Для организации обмена информации с диспетчерским пунктом используется встроенный в МК приемопередатчик. Однако ПП КМ1816ВЕ51 передает данные с помощью пятивольтовых логических сигналов: единица представляется уровнем напряжения от 2,4 В до 5 В, а нуль - от 0 до 0, 8 В. При передаче по каналу RS-232 нуль и единица кодируются одинаковыми по величине (от 5 до 12 В), но разными по знаку сигналами.

Поскольку для передачи по RS-232 пятивольтовые логические сигналы должны быть преобразованы в сигналы другого уровня, в МПС используется микросхема MAX202E от Maxim. Она содержат преобразователь напряжения из +5 В в ±10 В и каскады, осуществляющие преобразование логических сигналов стандартного пятивольтного уровня по стандарту RS-232. Она содержит преобразователи логического уровня для двух приемников и двух передатчиков, из которых используется только один приемопередающий канал.

Принципиальная схема МПС приведена в приложении В.

К выводам XTAL1 и XTAL2 микроконтроллера DD1 подключается кварцевый резонатор ZQ1 на 12 МГц. Для более стабильного запуска выводы кварцевого резонатора соединены с общим проводом через конденсаторы С1 и С2 емкостью 21 пФ.

При подаче напряжения питания на микроконтроллер обязателен сброс микроконтроллера. С этой целью вход RST соединен с шиной питания через конденсатор С3 емкостью 6 мкФ и с общим проводом - через резистор R1 сопротивлением 100 кОм. В момент включения питания конденсатор разряжен, и вход сброса оказывается под потенциалом, близким к напряжению питания. Несмотря на снижение этого потенциала вследствие заряда С3, в течение десятка миллисекунд уровень сигнала на входе сброса остается единичным, и осуществляется корректный запуск микроконтроллера.

На вход подается логическая единица, т.к. микроконтроллер будет выполнять программу из резидентной памяти .

К линиям порта P0 МК DD1 подключены дискретные входные сигналы DDAT1-DDAT8. К линиям порта P1 подключена АЦС DA1. На линиях P1.0-P1.3 формируются дискретные управляющие воздействия DOUT1-DOUT4.

Так как аналоговые датчики, подключаемые к АЦС DA1 должны иметь выходным параметром напряжение, находящееся в диапазоне от 0В до 2,5В. Для преобразования токовых сигналов датчиков в сигнал напряжения используются резисторы R2-R13 .

Спецификация элементов представлена в приложении Г.

Разработка алгоритма работы МПС

МПС работает в следующей последовательности:

  • а) инициализация системы;
  • б) опрос датчиков;
  • в) управление насосным агрегатом;
  • г) обмен данными с диспетчерским пунктом;
  • д) переход к шагу б.

Блок-схемы алгоритмов программы работы МПС представлены в приложении Д, фрагмент кода программы - в приложении Е.

Расчет потребляемой мощности

Мощность, потребляемая всей системой, определяется как сумма мощностей, которые потребляют все части системы.

Расчет мощности сведен в таблицу 3.4.

Таблица 3.1 - Расчет потребляемой мощности

Система потребляет мощность.

Устройство передачи данных

Для обеспечения обмена с диспетчерским пунктом используется преобразователь интерфейса MI 486. Он позволяет осуществлять прием/передачу данных через сеть Ethernet с компьютера со скоростью до 112 кбод.

Преобразователь интерфейса показан на рисунке 3.3.

Рисунок 3.3 - Преобразователь интерфейса MI 486

Технические характеристики:

  • - выходной интерфейс: RS-232;
  • - макс. скорость - до 112 кбод;
  • - входной интерфейс Ethernet 10BaseT/100BaseT;
  • - разъем RJ45.

Качественные и количественные изменения элементной базы средств ВТ привели к изменению сложившихся принципов их проектирования (таких, как жесткая структура, последовательное центральное управление, линейная организация памяти и отсутствие возможности адаптации структуры ЭВМ к особенностям решаемой задачи).

На смену классическим фоннеймановским принципам организации вычислительных систем пришли идеи проблемной ориентации МПС, параллельной и конвейерной обработки информации, использование табличных методов обработки данных, принципы регулярности и однородности структур МПС; становится реальной возможностью идея создания адаптивно-перестраиваемых систем, а также аппаратная реализация функций программного обеспечения. Поэтому в настоящее время при проектировании вычислительных систем на основе МПС получил применение так называемый принцип «3М»: модульность, магистральность, микропрограммируемость.

Принцип модульной организации предполагает построение вычислительных и управляющих МПС на основе набора модулей: конструктивно, функционально и электрически законченных вычислительных устройств, позволяющих самостоятельно или в совокупности с другими модулями решать задачи данного класса. Модульный подход при проектировании микроЭВМ и систем позволяет (при реализации как универсальных, так и специализированных модулей) обеспечить создание семейств (рядов) МПС, отличающихся функциональными возможностями и характеристиками, перекрывающими значительный диапазон применений, способствует сокращению затрат на проектирование, а также упрощает наращивание мощности и реконфигурацию систем, отодвигает время морального старения вычислительных средств.

Магистральный способ обмена информацией в отличие от способа организации произвольных связей (по принципу «каждый с каждым») позволяет упорядочить и минимизировать число связей в МПС. Он обеспечивает обмен информацией между функциональными и конструктивными модулями различного уровня с помощью магистралей, объединяющих входные и выходные шины. Различают одно-, двух-, трех- и многомагистральные связи. Необходимо отметить взаимосвязь схемотехнических и структурных решений, которые проявляются при реализации данного способа обмена в виде создания специальных двунаправленных буферных каскадов с тремя устойчивыми состояниями и использовании временного мультиплексирования каналов обмена.

Микропрограммное управление обеспечивает наибольшую гибкость при организации многофункциональных модулей и позволяет осуществить проблемную ориентацию МПС, а также использовать в них макрооперации, что эффективнее использования стандартных подпрограмм. Кроме этого, передача управляемых слов в виде зашифрованных кодовых последовательностей соответствует условиям минимизации числа выводов СБИС и сокращению числа межсоединений в модулях.

Кроме перечисленных выше основных особенностей проектирования МПС, следует отметить принцип регулярности, который предполагает закономерную повторяемость элементов структуры МПС и связей между ними. Применение данного принципа позволяет увеличить интегральную плотность, уменьшить длину связей на кристалле, сократить время топологического и схемотехнического проектирования БИС и СБИС, уменьшить число пересечений и типов функциональных и конструктивных элементов.

При разработке архитектуры МПС (системный этап) необходимо решить следующие задачи:

Дать описание концептуальной структуры функционального поведения системы с позиций учета интересов пользователя при ее построении и организации вычислительного процесса в ней;

Определить структуру, номенклатуру и особенности построения программных и микропрограммных средств;

Описать характеристики внутренней организации потоков данных и управляющей информации;

Провести анализ функциональной структуры и особенности физической реализации устройств системы с позиции сбалансированности программных, микропрограммных и аппаратурных средств.

Основные этапы проектирования МПС приведены на рис. 3.1.

На начальной стадии проектирования МПС может быть описана на одном из следующих концептуальных уровней: “черный ящик”, структурный, программный, логический, схемный.

На уровне “черного ящика” МПС описывается внешними спецификациями, где перечисляются внешние характеристики.

Рис. 3.1. Этапы проектирования МПС

Структурный уровень создается аппаратными компонентами МПС, которая описывается функциями отдельных устройств, их взаимосвязью и информационными потоками.

Программный уровень разделяется на два подуровня (команд процессора и языковый) и МПС интерпретируется как последовательность операторов или команд, вызывающих то или иное действие над некоторой структурой данных.

Логический уровень присущ исключительно дискретным системам и разделяется на два подуровня: переключательных схем и регистровых пересылок. Первый подуровень образуется вентилями (комбинационные схемы и элементы памяти) и построенными на их основе операторами обработки данных. Второй подуровень характеризуется более высокой степенью абстрагирования и представляет собой описание регистров и передачу данных между ними. Он включает в себя две части: информационную и управляющую: первая образуется регистрами, операторами и путями передачи данных, вторая обеспечивает зависящие от времени сигналы, инициирующие пересылку данных между регистрами.

Схемный уровень базируется на описании работы элементов дискретных устройств.

В жизненном цикле МПС, как и любой дискретной системы, выделяются три стадии: проектирование, изготовление и эксплуатация. Каждая из стадий подразделяется на несколько фаз, для которых существуют вероятности возникновения конструктивных или физических неисправностей. Неисправности классифицируют в соответствии с их причинами: физическая, если причиной ее служат дефекты элементов, и субъективная, если ее причиной служат ошибки проектирования.

Субъективные неисправности делят на проектные и интерактивные. Проектные неисправности вызваны недостатками, вносимыми в систему на различных стадиях реализации исходного задания. Интерактивные неисправности возникают в процессе работы по вине обслуживающего персонала (оператора). Результатом проявления неисправности является ошибка, причем одна неисправность может служить причиной целого ряда ошибок, а одна и та же ошибка может быть вызвана множеством неисправностей.

Существует также понятие дефекта - физическое изменение параметров компонентов системы, выходящих за допустимые пределы. Дефекты называют сбоями, если они носят временный характер, и отказами, если они постоянны. Дефект не может быть обнаружен до тех пор, пока не будут созданы условия для возникновения из-за него неисправности, результат которой должен быть, в свою очередь, передан на выход исследуемого объекта для того, чтобы сделать неисправность наблюдаемой.

Диагностика неисправности – процесс определения причины появления ошибки по результатам тестирования. Отладка – процесс обнаружения ошибок и определения источников их появления по результатам тестирования при проектировании МПС. Средствами отладки являются приборы, комплексы и программы. Иногда под отладкой понимают обнаружение, локализацию и устранения неисправности. Успех отладки зависит от того, как спроектирована система, предусмотрены ли свойства, делающие ее удобной для отладки, а также от средств, используемых для отладки. Для проведения отладки проектируемая МПС должна обладать свойствами управляемости, наблюдаемости и предсказуемости.

Управляемость – свойство системы, при котором ее поведение поддается управлению, т.е. имеется возможность остановить функционирование системы в определенном состоянии и заново запустить систему.

Наблюдаемость – свойство системы, позволяющее проследить за поведением системы, за сменой ее внутренних состояний.

Предсказуемость – свойство системы, позволяющее установить систему в состояние, из которого все последующие состояния могут быть предсказуемы.

МПС по своей сложности, требованиям и функциям могут значительно отличаться эксплуатационными параметрами, объемом программных средств, типом микропроцессорного набора и т.д. В связи с этим процесс проектирования может видоизменяться в зависимости от требований, предъявляемых к системе. Например, процесс проектирования МПС, отличающихся одна от другой содержанием ПЗУ, будет состоять из разработки программ и изготовления ПЗУ. При проектировании многопроцессорных МПС, содержащих несколько типов МПК, необходимо решать вопросы организации памяти, взаимодействия с процессорами, организации обмена между устройствами системы и внешней средой и т.п.

Наиболее типичными этапами проектирования и разработки МПС являются: формализация требований к системе; разработка структуры и архитектуры МПС; разработка и изготовление аппаратурных средств и программного обеспечения системы; комплексная отладка и приемосдаточные испытания.

Процесс проектирования – итерационный процесс. Неисправности, обнаруженные на этапе приемосдаточных испытаний, могут привести к коррекции спецификации, а следовательно, к началу проектирования всей системы. Обнаруживать неисправности необходимо как можно раньше; для этого надо контролировать корректность проекта на каждом этапе разработки. Существуют следующие методы контроля правильности проектирования: верификация (формальные методы доказательства корректности проекта); моделирование; тестирование.

В последнее время появилось много работ по верификации программного обеспечения, микропрограмм, аппаратуры. Однако эти работы пока носят теоретический характер. Поэтому на практике чаще используют моделирование поведения объекта и тестирование на различных уровнях абстрактного представления системы.

На этапе формализации требований к системе контроль корректности проекта особо необходим, поскольку многие цели проектирования не формализуются или не могут быть формализованы в принципе. Функциональная спецификация может анализироваться коллективом экспертов или моделироваться и проверяться в опытном порядке для выявления достижения желаемых целей. После утверждения функциональной спецификации начинается разработка тестовых программ, предназначенных для установления правильности работы системы в соответствии с ее спецификацией. В идеальном случае разрабатываются тесты, целиком основанные на этой спецификации и дающие возможность проверки любой реализации системы, которая объявляется способной выполнять функции, оговоренные в спецификации. Этот способ – полная противоположность другим, где тесты строятся применительно к конкретным реализациям. Однако на практике разработке тестов часто присваивают более низкий приоритет по сравнению с проектом, поэтому тестовые программы появляются значительно позже его завершения.

Контрольные вопросы

1. Поясните понятия модульности, магистральности и микропрограммируемости МПС при проектировании.

2. Перечислите задачи, решаемые разработчиками при проектировании МПС.

3. Перечислите основные этапы проектирования МПС.

4. Назовите концептуальные уровни описания МПС при проектировании и разработке.

5. Перечислить основные методы контроля правильности проектирования МПС.

6. Какими свойствами должна обладать проектируемая МПС для выполнения этапа ее отладки?

7. Перечислите виды неисправности при проектировании МПС.

8. Назовите причины физической и субъективной неисправностей МПС.

9. Поясните понятия: диагностика неисправности, отладка.

Микропроцессорная системы сбора данных должна удовлетворять следующим требованиям: обеспечивать высокое быстродействие и быть простой в исполнении, должна обеспечивать устойчивую и безотказную работу, быть сравнительно дешевой и потреблять небольшие ресурсы. Для выполнения поставленных задач и в соответствии с предъявляемыми основными требованиями подходит микроконтроллер серии К1816ВЕ51.

Рисунок 3 - Структурная схема микропроцессорной системы сбора данных.

микропроцессорный программа алгоритм микросхема

Микропроцессорная система (МПС) состоит из следующих блоков: микроконтроллера (МК), оперативного запоминающего устройства (ОЗУ), постоянного запоминающего устройства (ПЗУ), программируемого таймера (ПТ), параллельного программируемого интерфейса (ППИ), аналого-цифрового преобразователя (АЦП), цифро-аналогового преобразователя (ЦАП), мультиплексора (MUX), программируемого контроллера прерываний (ПКП).

МК формирует шину адреса (ША), шину данных (ШД) и шину управления (ШУ). Блоки ОЗУ, ПЗУ, ПТ, ППИ, ПКП подключены к шинам.

ОЗУ предназначено для хранения данных опроса датчиков, а также промежуточные данные. ПЗУ предназначена для хранения кода программы и различных констант.

ПТ предназначен для отсчета интервала времени, которое потребуется для выполнения команд МК. Перед выполнением операции ПТ запускается. При удачном выполнении операции МК сбрасывает ПТ. Если от МК не поступает команды сброса счета (произошло зависание), ПТ по окончании отсчета интервала времени вырабатывает сигнал сброса МК.

ППИ предназначено для подключения внешних устройств. К ППИ подключены АЦП, дискретный мультиплексор и ЦАП.

АЦП предназначен для преобразования аналогового сигнала с датчиков и цифровой код, который через ППИ подается в МК. Аналоговые датчики подключаются к АЦП через аналоговый мультиплексор.

Через дискретный мультиплексор поступают данные с дискретных датчиков.

ЦАП предназначен для формирования управляющего воздействия.

ПКП предназначен для обслуживания внешних прерываний.