Языки проектирования. Их классификация и особенности. Сравнение применения языков проектирования и языков программирования в задачах анализа вычислительных систем.
Языки проектирования
Стандартные языки программирования мало пригодны для описания объектов и задач проектирования, так как в них отсутствуют такие понятия как "тип объекта", "связи объекта", "параметры объекта". Не предусмотрены в них также описания типовых процедур проектирования, обычно учитывающих специфику объекта проектирования. Необходимость специальных конструкций и выражений языка для описания этих понятий приводит к созданию предметно-ориентированных языков, называемых входными языками или языками проектирования.
Языки проектирования можно разделить на три группы – описательные, моделирующие и диалоговые. Их называют также иногда соответственно языками структурного, процедурного и директивного типов.
Язык описания обычно состоит из трех частей – описания объекта, описания задачи и описания директив проектирования.
В описание объекта входят описания отдельных элементов, каждое из которых
– тип элемента;
– тип модели элемента;
– параметры модели элемента;
– технологические связи элемента.
Способ описания технологических связей элементов зависит от типа элемента – направленного, т. е. ориентированного и ненаправленного. В частности, резистор – ненаправленный элемент, поэтому порядок указания узлов его включения в схему безразличен. Логический элемент, наоборот, является направленным, поэтому порядок перечисления его выводов имеет значение.
Язык описания задачи включает обычно следующую информацию:
– описание рассчитываемых выходных параметров (тип параметра, уровни отсчета, условия отсчета);
– описание условий анализа параметров. Сюда входит, в частности, тип варьируемых внутренних параметров, шаг и диапазон варьирования;
– описание условий оптимизации параметров (сведения о варьируемых параметрах, выходных оптимизируемых параметрах, ограничениях, критериях оптимизации);
– описание алгоритмов расчета, анализа и оптимизации. Это типы алгоритмов и параметры, определяющие их скорость, точность и надежность;
– описание задания на вывод результатов проектирования, т. е. что выводить и в каком виде – таблица, график, чертеж, а также параметры выходного документа – шаг печати, масштаб, диапазон и т. д.
Язык описания директив на проектирование в простейшем случае состоит из перечисления режимов, в которых должна последовательно работать САПР. В системе PCAD – это PCCAPS и т. д.
Несмотря на то, что каждая директива вызывает определенные действия, однако непосредственно в самих директивах никаких операторов действия нет. Поэтому язык сохраняет описательный характер.
Языки моделирования, т. е. процедурные языки, описывают не только структуру и параметры объекта проектирования, но и алгоритм, процедуру его функционирования, например, процесс передачи и преобразования сигнала от блока к блоку.
Часто язык моделирования строится на базе какого-либо языка программирования, к которому добавляются новые конструкции, необходимые для моделирования в заданной предметной области. Такой моделирующий язык называется расширением языка программирования.
Если язык моделирования основан на самостоятельных конструкциях, то он называется автономным.
Как правило, языки моделирования применяются только на верхних уровнях проектирования – структурном и функциональном, когда алгоритмы моделирования доступны для описания на языке моделирования.