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

Нв4(18) 2008

Е.В. Бурькова

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

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

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

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

ются вычисления и программное обеспечение.

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

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

N94(16)2008

ностное моделирование, которому посвящены исследования таких ученых, как О. И. Авен, И.Н. Альянах, Н.Н. Гурин, Я.А. Коган, В.Н.Тарасов [1; 2; 3]. Различают физическое и математическое моделирование. При физическом — модель воспроизводит изучаемый процесс с сохранением его физической природы. Под математическим моделированием понимают способ исследования различных процессов путем изучения явлений, имеющих различное физическое содержание, но описываемых одинаковыми математическими соотношениями. Под моделью системы понимают такое ее представление, которое состоит из определенного объема организованной информации о ней и построено с целью ее изучения. Кон-§ цептуальные (математические) модели игра-<3 ют фундаментальную роль в оценке произво-£ дительности и надежности сложных систем.

Математическое моделирование является § современным средством оценки качества проектных решений для сложных систем, в том числе для уже существующих систем ^ в процессе их эксплуатации. ! Наличие в микропроцессорной системе | как аппаратных, так и программных средств | обусловливает ряд специфических особен-& ностей, присущих процессу ее создания. § Он существенно отличается от проектиро-& вания традиционных электронных устройств, <| не предполагающих программного обеспе-^ чения. В отличие от традиционного подхода, | когда все функции, возлагаемые на устрой-| ство, достигаются чисто аппаратными средствами и другой альтернативы просто не су-¡2 ществует, при аппаратно-программной реаЛ лизации выполняемые функции оптимально | располагаются между программными и ап-| паратными средствами микропроцессор-I ной системы.

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

модель дает возможность оценивать соот-78

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

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

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

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

Специальная схема, реализующая интерфейс с микроконтроллером в реальном масштабе времени, называется схемным эмулятором (In-Circuit Emulator — ICE). Эмулятор использует микросхему микроконтроллера, подключенную не к ПЗУ, а к ОЗУ

Нв4(18) 2008

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

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

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

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

Симулятор — это программное средство, которое способно имитировать работу микроконтроллера и его памяти. Как правило, симулятор содержит:

• компилятор;

• модель ЦПУ и памяти;

• модели встроенных периферийных устройств (таймеры, порты, АЦП) и системы прерываний;

• отладчик.

Симулятор должен уметь загружать § файлы программ во всех популярных форматах, максимально полно отображать ин- § формацию о состоянии ресурсов симули- оо руемого микроконтроллера, а также предоставлять возможность симуляции выполнения загруженной программы в различных режимах. В процессе отладки модель «выполняет» программу, и на экране компьютера отображается текущее состояние модели. Загрузив программу в симулятор, пользователь может запускать ее в пошаговом или непрерывном режиме, задавать условные или безусловные точки останова, контролировать и свободно модифицировать содержимое ячеек памяти и регистров симулируемого микропроцессора. С помощью симулятора можно быстро проверить логику выполнения программы, правильность выполнения арифметических операций. Чтобы имитировать внешние условия и ситуации, обычно используется специальный файл входных воздействий. Этот файл задает последовательность входных сигналов, поступающих на моделируемое устройство. Для понимания того, как работают микроконтроллер и программа в определенных ситуациях, наилучшим является использование симулятора и файла входных воздействий. В большинстве случаев симуляцию следует использовать перед сборкой и включением реальной схемы. Если модель устройства не работает ожидаемым образом, следует изменить файл входных воздействий и попытаться понять, в чем состоит проблема, используя для этого симулятор, который позволяет наблюдать за процессом выполнения программы, в отличие от реальной аппаратуры, где можно увидеть только конечные результаты.

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

N94(16)2008

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

Возможности отладчика-симулятора проиллюстрируем на примере PDS-PIC (про-§ граммное средство для написания и отлад-<3 ки программ, ориентированных на микро-£ контроллеры PIC-Micro).

I Симулятор PDS-PIC имеет: §

• встроенный многооконный редактор для написания исходных текстов программ. ^ Редактор поддерживает операции с блока! ми текста, цветовое выделение синтаксиче-| ских конструкций языка ассемблера; ! • встроенный менеджер проектов, под-|| держивающий автоматическую компиляцию § программ, написанных для макроассембле-& ра pasm-pic фирмы «Фитон» и для макроас-<| семблера mpasm фирмы Microchip; ^ • возможность отладки программ: от-| слеживание выполнения программы по ис-| ходному тексту, просмотр и изменение значений любых переменных, встроенный ана-¡5 лизатор эффективности программного ко-i да, точки останова по условию и доступу | к ячейкам памяти, просмотр стека вызовов | подпрограмм, встроенный ассемблер, точ-I ный подсчет интервалов времени; | • возможность выполнения программы й «назад» на большое количество шагов,

п

^ а также в непрерывном режиме. При этом « состояние модели микроконтроллера пол-§ ностью восстанавливается; ^ • точную модель поведения микроконтроллеров. Симулируется работа всех встро-

80

енных в микроконтроллер периферийных устройств (таймеров, АЦП, системы прерываний, портов и т. д.);

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

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

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

• систему контекстной помощи.

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

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

Нв4(18) 2008

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

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

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

Избежать большого объема рутины и значительно повысить эффективность процесса разработки и отладки позволяют быстро завоевывающие популярность интегрированные среды разработки (Integrated Development Environment, IDE).

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

Работая в интегрированной среде, программист имеет возможность:

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

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

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

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

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

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

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

минимальными ограничениями на объем

81

№>4(16)2008

программного кода и наибольшей скоростью выполнения программы. В настоящее время существует целый ряд интегрированных сред разработки для микроконтроллерных систем. Наиболее известными и используемыми являются среды: MPLAB IDE, UMPS, MCStudio, PROTEUS и др.

Universal Microprocessor Program Simulator (UMPS) — интегрированная среда разработки приложений на базе микроконтроллеров 8051. UMPS обладает двумя интересными особенностями. Во-первых, она способна выполнять программный код для широкого набора микроконтроллеров, т.е. достаточно иметь одно средство программирования для работы со множеством различных микроконтроллеров. Во-вторых, s UMPS использует уникальный метод симу-у ляции приложений. Вместо разработки спе-£ циального тестового файла UMPS позволяет создать виртуальную схему, с которой § взаимодействует приложение. Помимо про-

I Л

i

IS

s

СО

0

1

0 &

1

а

i

s

СО

0

1

£

I

£2

граммирования, компиляции и отладки программы, UMPS предоставляет возможность подключения к микроконтроллеру виртуальных ресурсов (светодиоды, кнопки, се-мисегментные индикаторы, LCD-дисплей и др.). Недостатки UMPS: ограничения на объем программного кода, дороговизна интегрированной среды. Достоинство: возможность визуализировать процесс пошаговой отладки программ за счет вывода на рабочий стол окна регистров и окна ресурсов. На рис. 1 приведено изображение рабочего стола среды UMPS.

MPLAB IDE — интегрированная среда разработки для микроконтроллеров PIC-Micro. Она объединяет все необходимые инструментальные средства, позволяя минимизировать время изучения нового интерфейса. В состав MPLAB IDE входят:

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

• организатор проекта;

Рис. 1. Рабочий стол программы UMPS

82

Ne4(16)2008

£ CQ Uj

Рис. 2. Рабочий стол среды MPLAB

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

• программный симулятор микроконтроллеров;

• внутрисхемный эмулятор;

• программатор.

Программное обеспечение MPLAB IDE предназначено для разработки программного обеспечения 8-разрядных микроконтроллеров PIC-Micro, работающего под управлением операционной системы Windows.

MPLAB IDE позволяет:

• редактировать исходные файлы, написанные на языке ассемблера или Си;

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

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

• поддерживать до 4 эмуляторов на одном РС;

• выполнять программу в режиме реального времени или по шагам.

Благодаря однотипной работе инструментальных модулей интегрированной среды проектирования MPLAB IDE можно легко перейти от программного симулятора MPLAB SIM к использованию полнофункционального эмулятора. Как недостаток следует отметить отсутствие возможно-

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

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

Интегрированная среда MCStudio состоит из следующих программных компонентов:

• подсистема администрирования проектов (менеджер проектов);

• специализированный многооконный текстовый редактор;

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

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

• компилятор с поддержкой макросов и перемещаемых сегментов с языка Ас-семблер-51 в исполнимый код однокри-

83

N94(16)2008

стальных микроконтроллеров семейства MCS-51;

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

• подсистема тестирования прикладных программ, которая симулирует выполнение программы для микроконтроллера на ПЭВМ; симулятор выполнения прикладной программы отображает состояние аппаратных ресурсов микроконтроллера на основе его программной модели; дополнительные функ-

§ ции определенных моделей микроконтрол-<3 леров пользователь может реализовать в ви-£ де DLL и подключить к системе MCStudio | (технология plug-in);

§ • симулятор работы аппаратуры внешнего окружения микроконтроллера, который в процессе симуляции выполнения при-^ кладной программы имитирует функциони-! рование определенных элементов реаль-| ной аппаратуры (в частности, переключате-§ лей, генераторов, индикаторов); || • подсистема формирования исполни-| мых файлов в стандартных форматах (BIN,

t= HEX) или в произвольных форматах, опи-ч

санных пользователем посредством «пла-^ гинов»;

| • дизассемблер для восстановления | текста прикладной программы на основе BIN-, HEX- или произвольного формата ¡5 исполнимых файлов для микроконтрол-Л лера;

| • подсистема загрузки программы в фи-| зический микроконтроллер, которая реа-I лизует эти действия в соответствии с типо-| выми или заданными пользователем прото-S колами, опираясь на использование «пла-^ гинов»;

« • автономная программная система § MCSVisiData, которая позволяет сформиро-ч вать структуру пакетов для двустороннего обмена данными между ПЭВМ и микрокон-

84

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

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

Интегрированная среда проектирования PROTEUS VSM позволяет достоверно моделировать и отлаживать достаточно сложные устройства, содержащие несколько микроконтроллеров разных семейств в одном устройстве. В этой среде предоставляется возможность размещать элементы на печатной плате и разрабатывать конструктивные параметры системы. PROTEUS содержит огромную библиотеку электронных компонентов. При просмотре библиотек показываются основные параметры компонента и площадка на плате. Имеются модели электромеханических устройств, интерактивных кнопок, переключателей, ламп, светодиодов, индикаторов, дисплеев и т. д. PROTEUS позволяет программировать контроллер на языке как ассемблера, так и Си. Отличительной особенностью этой среды от рассмотренных выше является широкие возможности разработки конструктивных элементов микроконтроллерных систем. Однако в состав среды не входят редактор и компилятор, чаще всего используется среда Vision, которая включает полнофункциональный текстовый редактор, менеджер проектов и встроенную утилиту Make. На рис. 4 приведено изображение рабочего стола среды PROTEUS.

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

Hb4(16)2008

<0 s

i LQ

Рис. 3. Рабочий стол среды MCStudio

Рис. 4. Рабочий стол среды PROTEUS

85

N94(16)2008

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

Интегрированные среды и симуляторы используются как для профессиональной разработки и тестирования программ для указанного класса однокристальных микроконтроллеров, так и в учебном процессе в вузах при изучении дисциплин, связанных с микропроцессорной техникой и цифровыми системами управления. Актуальной задачей профессионального образования яв-§ ляется подготовка компетентных специалист стов в области вычислительной техники, £ способных решать сложные задачи с применением современных информационных § технологий, а для этого необходимо обучить их методам моделирования вычислительных систем в различных инструмен-^ тальных автоматизированных средах. Рас! сматривая различные интегрированные | среды проектирования приложений для | микроконтроллеров, мы проанализировали & возможность применения их для организа-§ ции учебного процесса по курсу «Микро-& процессорные системы». В этом контексте <| необходим несколько другой подход при ^ выборе той или иной программной среды. | С одной стороны, автоматизация учеб-Ев ных работ профессионального характера создает предпосылки для более глубокого ¡2 познания свойств изучаемых объектов Л и процессов на математических моделях, | для проведения параметрических исследо-| ваний и оптимизации. С другой стороны, ос-I мысленное применение моделирующих | программ и сред требует достаточно высо-§ кой квалификации, которой учащиеся еще ^ не обладают. Нередко они успешно овладе-« вают лишь аппаратными и программными § компонентами автоматизированных сис-^ тем. Профессиональная же квалификация в предметной области, связанная с по-

86

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

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

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

1. Авен О.И. Оценка качества и оптимизация вычислительных систем / О. И. Авен, Н. Н. Гурин. М.: Наука, 1982.

2. Альянах И.Н. Моделирование вычислительных систем/ И.Н. Альянах. М.: Машиностроение, 1988.

3. Бурькова Е.В. Микропроцессорные системы на микроконтроллерах: электронное гиперссылочное учебное пособие. Свидетельство № 2008611254 РОСПАТЕНТ. Москва. 13.03.2008 г.

4. Тарасов В.Н. Вероятностное компьютерное моделирование сложных систем / В.Н. Тарасов. Самара: Изд-во СНЦ РАН, 2002.