Для систем, управляемых микроЭВМ и микроконтроллерами
Разработка программ управления является одной из наиболее ответственных и трудоемких операций в цикле проектирования систем управления с микроЭВМ. Стоимость создания программного обеспечения микроЭВМ составляет 60-90% общих затрат на создание системы управления. В связи с этим исключительно актуальным является разработка и широкое использование САПР встроенных систем управления. Как правило, существующие САПР позволяют автоматизировать создание программного обеспечения в комплексе с разработкой аппаратного обеспечения.
Разработка систем автоматического управления с микроЭВМ (встроенных систем) производится в следующем порядке. В начале составляется спецификация системы, включающая перечень требований и основных тактико-технических данных разрабатываемой встроенной системы. Спецификацию системы можно в определенной степени отождествить с техническим заданием (ТЗ) на разработку. Затем на ее основе разрабатывается функциональная схема и выделяются отдельные функциональные блоки на основании анализа алгоритмов решаемых задач. Выделенные функциональные блоки могут быть реализованы как аппаратно, так и программными средствами.
Разработка аппаратных средств связана с детальной проработкой структуры, конструкции функциональных блоков, вопросов их взаимодействия. Разработка программных средств в общем случае осуществляется параллельно с разработкой аппаратных средств встроенной системы. После разработки аппаратных и программных средств осуществляется настройка и отладка всей системы в целом. При необходимости в систему вносятся изменения. Обычно разработка встроенной системы завершается разработкой документации, изготовлением опытной партии и началом серийного производства.
Автоматизация проектирования программных средств может осуществляться как с помощью простейших средств, каковым является специальный пульт оператора, так и с помощью САПР, реализуемых обычно на больших и малых ЭВМ. Наиболее простым путем автоматизации проектирования программного обеспечения (ПО) является использование пульта оператора, являющегося чисто аппаратным средством доступа к внутренним шинам микропроцессора. Пульт снабжается техническими средствами для занесения программы в память (ПЗУ) в кодах конкретного микропроцессора. Пульты отладки очень просты и удобны в эксплуатации, но обладают ограниченными возможностями.
Другой путь автоматизации проектирования программного обеспечения связан с использованием кроссовых САПР, которые предназначены для создания, моделирования и отладки прикладных программ, а также для моделирования и оценки эффективности алгоритмов управления в процессе разработки и эксплуатации встроенной системы управления на базе микро-ЭВМ. Кроссовые САПР обычно реализуются на больших и малых ЭВМ, выполненных на микропроцессорах, отличающихся от микропроцессоров, для которых разрабатываются на этих ЭВМ программные и аппаратные средства.
Кросс-средства представляют собой комплекс программ, позволяющий отладить прикладные программы встроенных микропроцессорных систем на универсальных ЭВМ до проектирования или параллельно с проектированием аппаратных средств. В состав кросс-средств обычно входят программы: кросс-компилятор; кросс-ассемблер; эмулятор. Могут входить также программы: кросс-диз-ассемблер; интерпретатор.
Кросс-компилятор - это программа, позволяющая преобразовать исходную программу, написанную на языке высокого уровня, в объектную программу, представленную в машинных одах проектируемой встроенной системы, т.е. в кодах выбранного микропроцессора.
Кросс-ассемблер обеспечивает перевод прикладной программы, написанной на Ассемблере, в объектную программу кодах проектируемой системы.
Эмулятор (моделирующие программы) - это программы, которые позволяют воспроизвести процесс обработки информации, который должен быть реализован в встроенной системе, а ЭВМ другого типа, но примерно так же, как это делает встроенная система.
Таким образом, кросс-компилятор и кросс-ассемблер обеспечивают генерацию объектных программ в кодах встроенных систем, а эмулятор позволяет произвести их отладку. И кросс-компилятор, и кросс-ассемблер - это обычно сложные программы. Так, программа кросс-ассемблер на ЭВМ ЕС-1033 для микропроцессора КР580 содержит около 1700 операторов языка Л/1, а объем памяти ЭВМ для хранения кросс-ассемблера -10 Кбайт.
В эмуляторах все регистры микропроцессоров встроенной системы представляются ячейками памяти и программа моделированная имитирует выполнение каждой команды объектной программы с соответствующим преобразованием содержимого этих ячеек. Эти программы также достаточно сложны. Так, разработанная для ЕС-1033 программа моделирования содержит примерно 800 операторов и занимает около 77 Кбайтов памяти. Эта программа моделирует один такт работы микропроцессора КР580 за 10 мкс.
После завершения моделирования и отладки объектной программы готовый загрузочный модуль записывается в ПЗУ «троенной системы, т.е. переносится на кристалл ПЗУ с помощью специального устройства и программы, программирующей ПЗУ. Широкие возможности универсальных ЭВМ, на которых реализуются кроссовые САПР, позволяют создавать прикладные программы на языках высокого уровня.
Кроссовые САПР снижают стоимость и время разработок программного обеспечения. Однако для этого должны быть разработаны соответствующие САПР, обеспечивающие моделирование вычислительной среды, в которой работает встроенная микропроцессорная система, а также отладку аппаратной части (строенной системы. Последнее реализовать не просто.
В резидентных САПР, определяющих третий возможный путь автоматизации проектирования встроенных систем управления, программное обеспечение САПР реализуется на микро-ЭВМ тех же типов, которые используются в проектируемых встроенных системах. Таким образом, прикладное программное обеспечение разрабатывается в реальных или близких к реальным условиях.
В комбинированных САПР объединяются системные возможности кроссовых САПР и возможности отладки аппаратной части встроенных систем с помощью резидентных САПР.