Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Бродин В.Б., Калинин А.Б. Схемы на микроконтроллерах и БИС программируемой логики, 2002

.pdf
Скачиваний:
265
Добавлен:
11.03.2016
Размер:
9.1 Mб
Скачать

ГЛАВА 1

РАЗРАБОТКА СИСТЕМ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

1.1. Предпосылки нового подхода к проектированию

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

Системы управления на основе микропроцессоров и микроконтролле­ ров быстро получили массовое применение, поскольку были сформулиро­ ваны ясные правила их проектирования. Создание аппаратной компоненты велось на основе магистрально-модульной структуры, прикладные про­ граммы вначале были несложными и разрабатывались известными метода­ ми. В качестве метода комплексной отладки аппаратуры и программного обеспечения фирмой Intel уже в середине 70-х годов был предложен метод внутрисхемной эмуляции. Идея совместной работы нескольких микропро­ цессорных БИС на одну магистраль в области систем управления не полу­ чила развития. При необходимости увеличить производительность системы разработчики шли по пути увеличения разрядности - переходили от 8- к 16или 32-разрядной микропроцессорной БИС. До середины 90-х годов увеличение разрядности означало, кроме прямого результата, переход в

10

СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

другой класс качества микропроцессорных БИС. «Серьезные» 16- и 32разрядные микропроцессорные БИС имели передовые архитектурные и структурные решения, которых в дешевых 8-разрядных изделиях быть не могло. Заметным явлением в конце 80-х годов стало использование во вновь разрабатываемых 8- и 16-разрядных системах управления преиму­ щественно микроконтроллеров. Микропроцессоры соответствующей раз­ рядности продолжают выпускаться для поддержки серийных изделий. Ос­ новной областью применения микропроцессоров стала 32-разрядная обра­ ботка данных в компьютерах, сигнальных и коммуникационных процессо­ рах.

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

Во второй половине 90-х годов ситуация существенно изменилась. Прежде всего, изменилась топология микропроцессорных систем управле­ ния. В прежней магистрально-модульной структуре схемы обслуживания отдельных узлов и оконечных устройств были драйверами без интеллекта. Они выполняли функции преобразования протоколов, служили усилите­ лями мощности, но не имели возможности обрабатывать свою информа­ цию. Функцию обработки выполнял ведущий микроконтроллер, к которо­ му от периферийных схем тянулись жгуты проводов. В литературе [4] приводятся данные, что автомобили на этом этапе содержали до трех миль проводов весом более 90 кг. Быстрое удешевление микроконтроллеров привело к целесообразности замены ими некоторых периферийных схем. Появилась возможность предобработки локальных данных и пересылки ведущему микроконтроллеру только результатов, да и то в случае необхо­ димости. Это привело к широкому внедрению существовавших последова­ тельных интерфейсов (RS-232, I2C, SPI) и разработке новых (CAN, MicroLan). Топология развитых систем управления приобрела характер сети локальных ведомых микроконтроллеров, связанных между собой и с ве­ дущим микроконтроллером через последовательные интерфейсы. В на­ стоящее время используются последовательные каналы как радиального, так и магистрального типов, синхронные и асинхронные.

ГЛАВА 1. РАЗРАБОТКА СИСТЕМ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

11

Значительное улучшение характеристик собственно микроконтролле­ ров, достигнутое в это время, связано с внедрением RISC-архитектур, flash-памяти программ и EEPROM-памяти данных, прецизионных блоков АЦП и ЦАП. Гарвардская архитектура микроконтроллеров (с раздельны­ ми матрицами памяти программ и данных) позволила оптимизировать формат команд и обеспечить выборку и выполнение большинства из них за один машинный такт. Производительность, например, микроконтролле­ ров AVR фирмы Atmel достигла значения 10 MIPS на частоте 10 МГц.

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

Совершенствование микроэлектронной технологии позволило фирме Analog Devices объединить на одном кристалле ядро микроконтроллеров MCS-51 с прецизионными 12-разрядными модулями АЦП и ЦАП. Микро­ конвертер ADp.812, по существу, является первой измерительноуправляющей микропроцессорной системой на кристалле.

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

Качественные изменения в области применения БИС программируе­ мой логики наступили, когда в качестве средств описания проектов стали применяться языки высокого уровня типа HDL (Hardware Description Language). В это время ведущие мировые производители ПЛИС путем постепенного согласованного усложнения элементной базы и средств про­ ектирования решили задачу автоматического синтеза устройства на основе текстового описания. Таким образом, появилась возможность значительно сократить сроки разработки проектов на ПЛИС и сделать процесс проек­ тирования доступным широкому кругу инженеров. В настоящее время ПЛИС имеют степень интеграции до нескольких миллионов эквивалент­ ных вентилей, а их быстродействие (ввода/вывода) достигло рубежа 400 МГц. Из наиболее известных производителей ПЛИС следует отметить фирму Altera. Ее микросхемы и системы проектирования дают возмож­ ность быстро реализовать нужную функцию на кристалле, используя ав­ томатическую компиляцию графического или текстового описания проекта. Качество и стоимость такого метода проектирования вполне соответствуют требованиям интеграции разрабатываемой схемы в структуру системы управления на основе микроконтроллеров.

Микроконтроллеры и ПЛИС настолько удачно дополняют друг друга, что несколько фирм приступили к выпуску БИС, интегрирующих на од­

СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

12

ном кристалле и в одном корпусе как микроконтроллер, так и матрицу программируемой логики. В качестве примера можно привести семейство БИС серии Е5 фирмы Triscend. Старшая модель семейства объединяет на кристалле ядро микроконтроллера 8051, ОЗУ объемом до 64 Кбайт и мат­ рицу программируемой логики объемом до 3200 ячеек.

Другим примером может служить семейство FPSLIC фирмы Atmel. БИС этого семейства включают ядро RISC-микроконтроллера AVR, стати­ ческую память SRAM и матрицу FPGA типа АТ40К. Память разделена на ОЗУ программ, память данных и память общего назначения. Поскольку микроконтроллер выбирает команды из быстродействующего ОЗУ, его производительность достигает значения 40 MIPS на частоте 40 МГц. Кро­ ме того, к ядру AVR-микроконтроллера добавлен 8-разрядный умножи­ тель. С конфигурационной EEPROM AVR-микроконтроллер общается че­ рез интерфейс 12С. Матрица FPGA программируется таким образом, что разработанное устройство доступно в общем адресном пространстве мик­ роконтроллера.

1.2. Технология разработки микропроцессорных контроллеров

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

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

ГЛАВА 1. РАЗРАБОТКА СИСТЕМ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

13

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

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

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

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

Предпосылкой к использованию ФТП модулей является принцип ма­ гистрально-модульного построения систем на основе микропроцессоров и микроконтроллеров (рис. 1.1).

14

СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

Объекты управления (датчики, исполнительные устройства)

Рис. 1.1. Магистрально-модульная организация микропроцессорных систем

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

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

ГЛАВА 1. РАЗРАБОТКА СИСТЕМ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

15

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

Особенностью микропроцессорных контроллеров является то, что они сами интегрируются в некоторый объект (embedded controllers). Это пред­ полагает, что перед разработчиком микропроцессорной системы такого ро­ да стоит задача полного цикла проектирования, начиная от разработки алгоритма функционирования и заканчивая комплексными испытаниями в составе изделия, а возможно и сопровождением при производстве. Основ­ ные этапы цикла разработки микропроцессорного контроллера отображе­ ны на рис. 1.2.

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

Этап разработки алгоритма управления является наиболее ответст­ венным, поскольку ошибки этого этапа обнаруживаются при испытаниях законченного изделия и приводят к дорогостоящей переработке всей сис­ темы управления. Прорабатывается несколько вариантов алгоритма, обес­ печивающих выполнение технических требований с использованием нара­ ботанных ранее функционально-топологических модулей. Основные вари­ анты отличаются соотношением объема программного обеспечения и аппа­ ратуры. Критерием выбора является максимальное увеличение программы и уменьшение аппаратуры при обеспечении заданных показателей быстро­ действия и надежности в полном диапазоне эксплуатационных воздейст­ вий. Часто определяющим требованием является возможность размещения кода управляющей программы во внутренней памяти микроконтроллера, что позволяет обеспечить ее защиту. На этом этапе окончательно опреде­ ляется тип микропроцессорной БИС и важнейших схем обрамления (flashпамяти, ПЛИС, программируемых интерфейсов, АЦП и т.п.).

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

16

СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

 

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

Рис. 1.2. Основные этапы разработки микропроцессорного контроллера

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

ГЛАВА 1. РАЗРАБОТКА СИСТЕМ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

17

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

Другой внутренний цикл, выполняемый параллельно, составляют эта­ пы создания аппаратуры: разработка общей прнципиальной схемы и раз­ водка топологии плат, монтаж макета и его автономная отладка. Эти эта­ пы можно считать завершенными после того, как «оживает» магистраль микропроцессорной системы и через нее можно обратиться к памяти и блокам ввода/вывода. Время выполнения этих этапов зависит от имеюще­ гося набора опробованных функционально-топологических модулей и ква­ лификации разработчика. Распространенными системами проектирования, используемыми на этапе ввода принципиальной схемы и разработки топо­ логии являются ACCEL EDA и OrCad. Эффективность их использования значительно зависит от имеющегося у разработчика объема библиотек ис­ пользуемых элементов.

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

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

18

СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

 

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

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

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]