Проектирование микропроцессоров. Проектирование автоматических систем на базе микропроцессоров. Разработка программного обеспечения

Процесс проектирования микропроцессорных систем включает три этапа (рис. 1.1): 1) системный; 2) функционально– схемотехнический; 3) отладка и оценка характеристик.

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

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

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

Важным моментом системного этапа проектирования является выбор элементной базы, базового МПК, т.е. типа микропроцессорного семейства, и других БИС. На основе этого этапа составляется техническое задание (ТЗ).

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

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

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

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

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

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

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

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

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

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

Дальнейшие стадии проектирования выполняются обычно в виде опытно-конструкторских работ и требуют привлечения большого числа исполнителей.

Качественные и количественные изменения элементной базы средств ВТ привели к

изменению сложившихся принципов их проектирования (таких, как жесткая

структура, последовательное центральное управление, линейная организация

памяти и отсутствие возможности адаптации структуры ЭВМ к особенностям

решаемой задачи).

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

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

аппаратная реализация функций программного обеспечения. Поэтому в настоящее

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

применение так называемый принцип «3М»: модульность, магистральность,

микропрограммируемость.

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

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

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

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

подход при проектировании микроЭВМ и систем позволяет (при реализации как

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

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

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

затрат на проектирование, а также упрощает наращивание мощности и

реконфигурацию систем, отодвигает время морального старения вычислительных

Магистральный способ обмена информацией в отличие от способа организации

произвольных связей (по принципу «каждый с каждым») позволяет упорядочить и

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

функциональными и конструктивными модулями различного уровня с помощью

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

трех- и многомагистральные связи. Необходимо отметить взаимосвязь

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

данного способа обмена в виде создания специальных двунаправленных буферных

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

мультиплексирования каналов обмена.

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

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

МПС, а также использовать в них макрооперации, что эффективнее использования


стандартных подпрограмм. Кроме этого, передача управляемых слов в виде

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

числа выводов СБИС и сокращению числа межсоединений в модулях.

Кроме перечисленных выше основных особенностей проектирования МПС, следует

отметить принцип регулярности, который предполагает закономерную

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

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

на кристалле, сократить время топологического и схемотехнического

проектирования БИС и СБИС, уменьшить число пересечений и типов функциональных

и конструктивных элементов.

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

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

позиций учета интересов пользователя при ее построении и организации

вычислительного процесса в ней;

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

микропрограммных средств;

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

информации;

Провести анализ функциональной структуры и особенности физической

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

микропрограммных и аппаратурных средств.

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

На начальной стадии проектирования МПС может быть описана на одном из

следующих концептуальных уровней: “черный ящик”, структурный, программный,

логический, схемный.

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

перечисляются внешние характеристики.

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

Структурный уровень создается аппаратными компонентами МПС, которая

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

потоками.

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

языковый) и МПС интерпретируется как последовательность операторов или

команд, вызывающих то или иное действие над некоторой структурой данных.

Логический уровень присущ исключительно дискретным системам и разделяется на

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

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

части: информационную и управляющую: первая образуется регистрами,

операторами и путями передачи данных, вторая обеспечивает зависящие от

времени сигналы, инициирующие пересылку данных между регистрами.

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

В жизненном цикле МПС, как и любой дискретной системы, выделяются три стадии:

проектирование, изготовление и эксплуатация.

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

Субъективные неисправности делят на проектные и интерактивные. Проектные

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

реализации исходного задания. Интерактивные неисправности возникают в

процессе работы по вине обслуживающего персонала (оператора). Результатом

проявления неисправности является ошибка, причем одна неисправность может

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

множеством неисправностей.

Существует также понятие дефекта - физическое изменение параметров

компонентов системы, выходящих за допустимые пределы. Дефекты называют

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

Дефект не может быть обнаружен до тех пор, пока не будут созданы условия для

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

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

неисправность наблюдаемой.

Диагностика неисправности – процесс определения причины появления ошибки по

результатам тестирования.

Отладка – процесс обнаружения ошибок и определения

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

Средствами отладки являются приборы, комплексы и программы. Иногда под

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

отладки зависит от того, как спроектирована система, предусмотрены ли

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

для отладки.

Для проведения отладки проектируемая МПС должна обладать

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

Управляемость – свойство системы, при котором ее поведение поддается

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

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

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

системы, за сменой ее внутренних состояний.

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

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

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

эксплуатационными параметрами, объемом программных средств, типом

микропроцессорного набора и т.д. В связи с этим процесс проектирования может

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

Процесс проектирования – итерационный процесс. Неисправности, обнаруженные на этапе приемосдаточных испытаний, могут привести к коррекции спецификации, а

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

неисправности необходимо как можно раньше; для этого надо контролировать

корректность проекта на каждом этапе разработки. Существуют следующие методы

контроля правильности проектирования: верификация (формальные методы

доказательства корректности проекта); моделирование; тестирование.

В последнее время появилось много работ по верификации программного

обеспечения, микропрограмм, аппаратуры. Однако эти работы пока носят

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

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

представления системы.

На этапе формализации требований к системе контроль корректности проекта

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

не могут быть формализованы в принципе. Функциональная спецификация может

анализироваться коллективом экспертов или моделироваться и проверяться в

опытном порядке для выявления достижения желаемых целей. После утверждения

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

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

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

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

реализации системы, которая объявляется способной выполнять функции,

оговоренные в спецификации. Этот способ – полная противоположность другим,

где тесты строятся применительно к конкретным реализациям. Однако на практике

разработке тестов часто присваивают более низкий приоритет по сравнению с

проектом, поэтому тестовые программы появляются значительно позже его

Министерство науки и образования Республики Казахстан

Многопрофильный колледж

Северо-Казахстанского государственного университета

имени академика М. Козыбаева

Пояснительная записка

к курсовому проекту

по дисциплине: «Цифровые устройства и микропроцессорные системы»

на тему: «Проектирование микропроцессорной системы на основе микропроцессора I 8086 »

Вариант № 16

Выполнил: студент гр. РЭС-к-09

Сафронов С.В

Проверил: преподаватель

Михайлова А.Н

Петропавловск 2010

1. Введение

2. Общая структура МПС

3. 16-разрядный микропроцессор i8086

3.1 Система команд

4.Внутренняя структура

5. Устройства памяти

6. ОЗУ. Принципы построения

7.Постоянные запоминающие устройства (ПЗУ)

8.Цифро-аналоговые преобразователи (ЦАП)

9.Разработка функциональной схемы модуля ввода/вывода

10 Заключение

Список литературы

Приложение А

1. Введение

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

Компактная микроэлектронная “память” широко применяется в современной электронной аппаратуре самого различного назначения. В ПК память определяют как функциональную часть, предназначенную для записи, хранения и выдачи команд и обрабатываемых данных. Комплекс технических средств, реализующих функцию памяти, называют запоминающим устройством (ЗУ). Для обеспечения работы процессора (микропроцессора) необходимы программа, т. е. последовательность команд, и данные, над которыми процессор производит предписываемые командами операции. Команды и данные поступают в основную память ЭВМ через устройство ввода, на выходе которого они получают цифровую форму представления, т. е. форму кодовых комбинаций О и 1. Основная память, как правило, состоит из ЗУ двух видов оперативного (ОЗУ) и постоянного (ПЗУ).

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

Данной курсовая работа посвящена изучению блока памяти. А именно, задача состоит в построении пространства памяти заданного объема и конфигурации.

2. Общая структура МПС

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

В любой МПС можно выделить следующие основные части (подсистемы):

    процессорный модуль;

  • внешние устройства (внешние ЗУ + устройства ввода/вывода);

    подсистему прерываний;

    подсистему прямого доступа в память.

Рисунок 1 – Структура МПС с интерфейсом "Общая шина"

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

Все сигналы интерфейса делятся на три основные группы – данных, адреса и управления. Многочисленные разновидности интерфейсов "Общая шина" обеспечивают передачу по раздельным или мультиплексированным линиям (шинам). Например, интерфейс Microbus, с которым работают большинство 8-разрядных МПС на базе i8080, передает адрес и данные по раздельным шинам, но некоторые управляющие сигналы передаются по шине данных. Интерфейс Q-bus, используемый в микро-ЭВМ фирмы DEC (отечественный аналог – микропроцессоры серии К1801) имеет мультиплексированную шину адреса/данных, по которой эта информация передается с разделением во времени. Естественно, что при наличии мультиплексированной шины в состав линий управления необходимо включать специальный сигнал, идентифицирующий тип информации на шине. Обмен информацией по интерфейсу производится между двумя устройствами, одно из которых является активным, а другое – пассивным. Активное устройство формирует адреса пассивных устройств и управляющие сигналы. Активным устройством выступает, как правило, процессор, а пассивным – всегда память и некоторые ВУ.

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

3.16-разрядный микропроцессор i8086

Первый 16-разрядный процессор i8086 фирма Intel выпустила в 1978 году. Частота - 5 Мгц, производительность - 0,33 MIPS для инструкций с 16-битными операндами (позже появились процессоры 8 и 10 МГц). Технология 3 мкм, 29 000 транзисторов. Адресуемая память 1 Мбайт. Через год появился i8088 - тот же процессор, но с 8-разрядной шиной данных. С него началась история IBM PC, неразрывно связанная со всем дальнейшим развитием процессоров Intel, Массовое распространение и открытость архитектуры IBM PC привели к лавинообразным темпам появления нового программного обеспечения, разрабатываемого крупными, средними и мелкими фирмами, а также энтузиастами-одиночками. Технический прогресс тогда и сейчас был бы немыслим без развития процессоров, но, с учетом огромного объема уже существующего программного обеспечения для PC, уже тогда возник принцип обратной программной совместимости - старые программы должны работать на новых процессорах. Таким образом, все нововведения в архитектуре последующих процессоров должны были пристраиваться к существующему ядру.

16-разрядный МП i8086 явился дальнейшим развитием линии однокристальных МП, начатой i8080. Наряду с увеличением разрядности в i8086 реализован ряд новых архитектурных решений:

расширена система команд (по набору операций и способам адресации);

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

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

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

введена новая (по сравнению с i8080) организация памяти, которая далее использовалась во всех старших моделях семейства INTEL - сегментация памяти. Для сохранения преемственности модели с i8080 в i8086 предусмотрено два режима работы - "минимальный" и "максимальный", причем в минимальном режиме i8086 работает просто как достаточно быстрый 16-разрядный i8080 с расширенной системой команд (архитектура МПС на базе i8086-min напоминает архитектуру на базе i8080).

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

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

3.1 Система команд

В системе команд микропроцессора 8086 насчитывалось 98 инструкций: 19 команд передачи данных, 38 команд обработки данных, 24 команды различных условных и безусловных переходов и 17 команд управления ЦПУ.

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

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

1 Команды передачи данных: MOV, XCHG, PUSH, POP, PUSHF, POPF, LEA, LDS, LES, LAHF, SAHF, XLAT, IN.

2 Арифметические команды: ADD, ADC, INC, AAA, DAA, SUB, SBB, DEC, NEG, CMP, AAS, DAS, MUL, IMUL, DIV, IDIV, AAM, AAD.

3 Логические команды: NOT,SHL / SAL,SHR,SAR,ROL,ROR,RCL,RCR,

AND, TEST,OR,XOR.

4 Команды манипуляции цепочками: CMPS, LODS, MOVS, REP, SCAS, STOS.

5 Команды передачи управления: JMP, CALL, RET, LOOP/LOOPE, LOOPZ, LOOPNE/LOOPNZ, JCXZ, JE/JZ, JNE/JNZ, JL/JNGE, JLE/JNG, JB/JNAE, JBE/JNA, JP/JPE, JNP/JPO, JO, JNO, JS, JNS, JG/JNLE, JGE/JNL, JA/JNBE, JAE/JNB.

6 Команды управления процессором: CLC, CMC, STC, CDL, STD, CLI, HLT WAIT, ESC , LOCK

4.Внутренняя структура

Структурная схема МП i8086 представлена на рис. МП включает в себя три основных устройства:

УОД - устройство обработки данных;

УСМ - устройство связи с магистралью;

УУС - устройство управления и синхронизации.

УОД предназначено для выполнения команд и включает в себя 16-разрядное АЛУ, системные регистры и другие вспомогательные схемы; блок регистров (РОН, базовые и индексные) и блок микропрограммного управления.

УСМ обеспечивает формирование 20-разрядного физического адреса памяти и 16-разрядного адреса ВУ, выбор команд из памяти, обмен данными с ЗУ, ВУ, другими процессорами по магистрали. УСМ включает в себя сумматор адреса, блок регистров очереди команд и блок сегментных регистров.

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

МП может работать в одном из двух режимов - "минимальном" (min) и "максимальном" (max). Минимальный режим предназначен для реализации однопроцессорной конфигурации МПС с организацией, подобной МПС на базе i8080, но с увеличенным адресным пространством, более высоким быстродействием и значительно расширенной системой команд. Максимальная конфигурация предполагает наличие в системе нескольких МП и специального блока арбитра магистрали (используется интерфейс Multibus).

На внешних выводах МП i8086 широко используется принцип мультиплексирования сигналов - передача разных сигналов по общим линиям с разделением во времени. Кроме того, одни и те же выводы могут использоваться для передачи разных сигналов в зависимости от режима (min - max).проектирование аппаратной части... курсовом проекте реализована микропроцессорная система на базе микроконтроллера - ... работы устройства На основе функций устройства...

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

    Другое >> Информатика, программирование

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

  • Микропроцессорные системы

    Отчет по практике >> Информатика

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

  • Аппаратно-программные средства периферийных устройств системы сбора показаний счетчиков тепловой

    Реферат >> Информатика

    Сравнимых с 16-разрядными микропроцессорами и микроконтроллерами по производительности и... вычислительной техники Для проектирования на основе вычислительных машин на­дежных... пайки способ построения микропроцессорной системы на основе AVR - это приобретение...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Рисунок 1. Этапы проектирования

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

    Типичные этапы проектирования микропроцессорных систем включают:

    1. Формализация различных требований к системе. Необходимо составить внешние спецификаций, техническое задание (ТЗ) на систему, заметки образа системы разработчиком в документации, перечисляются функции системы.
    2. Разработка структуры и архитектуры элементов системы. Необходимо определить взаимодействие между аппаратными и программными средствами, функции периферии и программных оболочек, выбрать микропроцессорные решения, на базе которых будет реализована система, определить временные характеристики.
    3. Разработка и изготовление аппаратной части и программного обеспечения системы. Необходимо разработать структуру и принципиальные схемы, изготовить прототип, отладить в условиях базовых режимов работы. Разработка программного обеспечения должна состоять из алгоритмов, написания текста исходных программ, трансляции исходных программ в объектные программы, программной отладки и симуляции.
    4. Общая отладка и приемосдаточные испытания в рабочих условиях.

    Человеческий фактор допускает неисправности и принятие неверных проектных решений. Также существуют аппаратурные дефекты в устройствах. Например, возможны следующие источники ошибок на этапах:

    Этап 1. Логическая несогласованность требований, упущения, неточности алгоритма.

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

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

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

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

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

    Основными методами контроля правильности проектирования являются: верификация, моделирование и тестирование.

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

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

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

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

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

    Список литературы:

    1. СибГУТИ [Электронный ресурс] / Проектирование микропроцессора на ПЛИС – Режим доступа: http://ict.sibsutis.ru/sites/csc.sibsutis.ru/files/courses/mps/mp.pdf–свободный. – загл. с экрана. – яз. рус. (дата обращения 22.12.2017).
    2. Зотов В. Embedded Development Kit - система проектирования встраиваемых микропроцессорных систем на основе ПЛИС серий FPGA фирмы Xilinx. 2004. № 3.
    Понравилось? Лайкни нас на Facebook