Снос зданий:
ecosnos.ru
Главная  Микроустройства: номенклатура изделий электронной промышленности 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 [ 84 ] 85 86 87 88 89 90 91 92 93 94 95

when free do x ; = 1; free : = false

else X > 0 do x : = x + 1

Процесс завершает выполнение утверждений when, если выполнит список утверждений х : == 1; free: = false или х: = х -Ь 1, иначе он вновь переводится в синхронизирующую фазу.

7.2. языки микропрограммирования

К языкам микропрограммирования низкого уровня относятся мнемоязыки, микроассемблеры и блочные языки [6, 33, 57, 60]. В мнемоязыках в полях микрокоманд размещаются мнемонические обозначения. Таким образом, переход от мнемоязыка к мнемокодам осуществляется путем простой замены мнемоники двоичными кодами [6, 33]. Микроассемблеры обрабатывают не только мнемонические микрокоманды, по и управляющие операторы редактирования и размещения. В процессе ассемблирования выполняется контроль ошибок и вывод листинга, диагностических сообщений и объектного микрокода. Наиболее известные микроассемблеры, используемые в системах автоматизации микропрограммирования ЭВМ Spectra 170/45 [63], Symens System 4004/35 [64], для МП LX-1 (язык ML) и др.

Блочные языки позволяют строить сети связанных между собой блоков. Каждый блок сети определяет микрокоманду, а связи между ними - возможные последовательности микрокоманд в микропрограмме [57, 58, 60].

Анализ производительности микропрограммирования показывает, что языки микропрограммирования высокого уровня (ЯМПВУ) позволяют выполнять разработку микропрограмм в 2-3 раза быстрее, по сравнению с микроассемблерами, и в 5-12 раз быстрее, по сравнению с микропрограммированием в двоичных кодах [52]. ЯМПВУ позволяют повысить общий логический уровень микропрограммирования и дают мощные средства не только для разработчиков МПС, но и для пользователей.

ЯМПВУ похожи на обычные языки программирования по таким характеристикам, как блочная структура, определение структур данных, составные управляющие структуры и т. д. Однако имеются и отличительные особенности, такие как средства описания структуры элементов ЭВМ, связей между эле.ментами, выполняемых микроопераций и взаимной синхронизации работы. Трансляция в ЯМПВУ обычно выполняется в несколько этапов [64, 65, 71]: с языка ЯМПВУ в язык микрокоманд, с языка микрокоманд в язык управляющих логических диаграмм, с языка управляющих логических диаграмм в микрокоды.

Для микропрограммирования используют языки описания оборудования ЭВМ и специальные ЯМПВУ. Языки описания оборудования обычно перекрывают несколько уровней описания ЭВМ. Основное их назначение - решение задач автоматизации проектирования и имитационного моделирования работы ЭВМ. В настоящее время разработаны метакомпиляторы с языков CDL, CASS-ANDRE, ISP, MPQS [64, 65, 71], которые по описанию структуры ЭВМ и порядку функционирования ее элементов вырабатывают микропрограммные модули. Однако практика показывает, что эксплуатация таких систем достаточно сложна, так как требует слиш-



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

Специальные ЯМПВУ делятся на машинно-зависимые и машинно-независимые [63].

Машинно-завнсимые ЯМПВУне содержат средств для описания структуры ЭВМ. К таким языкам относятся языки S1MPL , PUMPKIN, MPL [67]. Трансляторы машинно-зависнмых ЯМПВУ вырабатывают высокоэффективные микропрограммные модули, поскольку учитывают специфику конкретной аппаратуры. Вместе с тем в ЯМПВУ реализован высокий логический уровень. Например, язык SIMPL наследует синтаксис АЛГОЛа-60. В язык SIMPL введены элементы структурного программирования: отсутствует оператор GOTO, для обеспечения ветвлений использован оператор CASE, введены средства пересылки данных.

Машинно-независимые ЯМПВУ предоставляют пользователю и разработчику программируемых МП и микроЭВМ средства, независимые от аппаратуры, где будут использоваться микропрограммы. При разработке ЯМПВУ данного типа ориентируются на классы микроЭВМ и МП, которые имеют сходные характеристики. Это позволяет повысить эффективность выходных микропрограммных модулей, поскольку при реализации трансляторов фиксируются возможности аппаратуры данного класса. Примерами подобных языков, применяемых-для микропрограммирования ЭВМ с сильно кодированными МК, являются модификации языков БЕЙСИК, ФОРТРАН и ПЛ/М [63]. Развитие машинно-независимых ЯМПВУ не получило еще достаточно широкого распространения [52].

Глава 8

СРЕДСТВА ПРОЕКТИРОВАНИЯ

И ОТЛАДКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

8.1. ОБЩИЕ СВЕДЕНИЯ

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

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

Проектирование специализированных устройств, создаваемых на основе МП, называемых микропроцессорными контроллерами



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

При создании ПО с помощью кроссовых средств учитывают особенности использования памяти микроЭВМ. Так, программы и константы обычно размещают в ПЗУ или ППЗУ, а переменные параметры - в ОЗУ. Переменными параметрами являются данные, поступающие от объекта и к объекту управления, промежуточные результаты вычислений, а также та часть базы данных управляющей программы, которая динамически изменяется в процессе функционирования системы (списки задач, очереди запросов на ввод-вывод, различные флаги и семафоры синхронизации). Постоянными параметрами являются, например, исходная неизменяющаяся информация об объекте управления, адреса регистров данных и регистров состояний УВВ, имена задач, определенные в момент запуска системы, и т. д. Наиболее мощными кросс-системами являются системы на базе БЭСМ-6, ЕС ЭВМ, М-4030, Л1-220, М-6000, СМ-3, СМ-4 (для отечественных микроЭВМ Электроника С5 , Электроника НЦ , Электроника К , В7, СМ-1800 и МП К580ИК80). Среди резидентных систем наиболее известны: ПЛОС для микроЭВМ на базе МП К580ИК80, ПЛОС (резидентная САРП) для микроЭВМ Электроника С5 , резидентное ПО для микроЭВМ серии Электроника К [10]. Известными системами указанного применения за рубежом являются RMX-80, ISIS-II [66], FDS11 (система на гибких дисках) для МП RCA COSMAC 1800 иа микроЭВМ CDP18S805V2.

6.2. ОСНОВНЫЕ ЭТАПЫ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Выделяют следующие этапы проектирования управляющих систем, на основе микроЭВМ или МПК [52]: постановка задачи; выбор варианта системы; проектирование и автономная отладка программно-аппаратных средств; комплексная отладка, включающая испытания макета МПС, полунатурные и натурные испытания; оформление технической документации и приемо-сдаточные испытания. На этапе постановки задачи и выбора варианта системы задачи, решаемые по созданию аппаратных и программных средств, взаимосвязаны [52, 68]. На этапе проектирования и автономной отладки программно-аппаратных средств основные структурные решения уже приняты, и работы по созданию аппаратного и программного обеспечения могут вестись независимо. Это положение учитывается при создании средств проектирования систем на основе МПК. Типичным примером является описываемая ниже микропроцессорная лаборатория Tektronix 8002 [68].

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



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 [ 84 ] 85 86 87 88 89 90 91 92 93 94 95