Содержание к диссертации
Введение
Глава 1 Выбор системы трассировки печатных плат для использования в Web-техногии проектирования 13
1.1 Характеристика широко используемых систем топологического проектирования печатных плат 13
1.1.1 Особенности трассировщика Specctra 14
1.1.2 Особенности трассировщика Expedition PCB 15
1.1.3 Трассировщик PADS 16
1.1.4 Особенности трассирощикаAltium Designer 17
1.1.5 Особенности трассировщика Topological Router (TopoR) 18
1.2 Математическое обоснование выбора трассировщика ПП 20
1.2.1 Определение приоритетов критериев для сравниваемых систем трассировки ПП 26
1.2.2 Определение векторов приоритетов систем трассировки по критерию “процент неразведенных трасс” 30
1.2.3 Определение векторов приоритетов систем трассировки по другим критериям оценки 32
1.2.4 Выявление наиболее эффективной системы трассировки ПП 32
1.3 Выводы 39
Глава 2 Экспериментальное сравнение системы TopoR c другими системами трассировки ПП 40
2.1 Сравнение с результатами трассировки ПП, выполненной в системе Expedision PCB 40
2.2 Сравнение с результатами трассировки ПП, выполненной в системе Specctra 44
2.3 Сравнение ПП, выполненных программами фирмы Altium, и перетрассированными в системе TopoR v.6.2 47
2.4 Сравнительные результатами трассировки ПП схем большого размера в различных системах проектирования РЭА и ЭВА 53
2.5 Сравнительные результаты анализа перекрестных помех 56
2.6 Выводы 57
Глава 3 Организация программного обеспечения интернет-ориентированных топологических САПР 59
3.1 Построение распределенной web-ориентированной версии топологической САПР 60
3.2 Использование облачных технологий для построения топологической САПР 69
3.3 Развертывание топологической САПР “TopoR” на основе платформы VMware ESX Server 74
3.4 Развертывание топологической САПР “TopoR” на основе платформы MSHyper-V 79
3.5 Выводы 84
Глава 4 Организация информационного обеспечения интернет-ориентированной версии САПР “TopoR” 86
4.1 Информационное обеспечение топологической САПР “TopoR” 86
4.2 Построение ИО системы “TopoR” на основе технологий баз данных 92
4.3 Модели данных для БД проектов топологической САПР “TopoR” 94
4.4 Реализация базы данных проектов топологической САПР “TopoR”с использованием облачных технологий 98
4.5 Пример применения БДПР DB Project 110
4.6 Выводы 113
Заключение 115
Список сокращений и условных обозначений 117
Словарь терминов 118
Список литературы 120
Приложение А 127
Приложение Б 148
- Определение приоритетов критериев для сравниваемых систем трассировки ПП
- Сравнение ПП, выполненных программами фирмы Altium, и перетрассированными в системе TopoR v.6.2
- Развертывание топологической САПР “TopoR” на основе платформы VMware ESX Server
- Реализация базы данных проектов топологической САПР “TopoR”с использованием облачных технологий
Определение приоритетов критериев для сравниваемых систем трассировки ПП
Учитывая относительно большое количество критериев (9), выбранных для оценки систем трассировки ПП, прежде чем приступить к определению количественных параметров их приоритетных значений, целесообразно упорядочить эти критерии по важности. Такое упорядочение критериев позволяет существенно упростить процесс их сравнительной оценки при определении соответствующих баллов и заполнения соответствующей таблицы весомости, так как в этой таблице их можно в таком случае записывать по убыванию важности.
При составлении верхней половины таблицы оценки весомости критериев, определяющих качество трассировки ПП, будем принимать во внимание, что:
1) критерий “процент неразведенных трасс” имеет:
не намного важное значение, чем число нарушений проектных норм. В связи с этим принимаем для него коэффициент 2;
незначительное предпочтение перед суммарной длиной всех соединений (коэффициент 3);
предпочтение, компромиссное между незначительным и существенным перед критерием количество дополнительных переходных отверстий (в этой связи для него устанавливаем коэффициент 4);
существенное значение по сравнению с оценкой уровня перекрестных электромагнитных помех (принимаем коэффициент равным пяти);
компромиссное предпочтение между существенным и очевидным перед критерием времени разводки (берется коэффициент 6);
очевидное предпочтение перед обеспечением возможности функции переназначения эквивалентных контактов и групп (принимаем коэффициент отношения равным 7);
компромиссное предпочтение между очевидным и абсолютным по сравнению с критерием “наличием в системе средств автоматического размещения компонентов на печатной плате” (считаем коэффициент равным 8);
абсолютное предпочтение по отношению к удобству пользования системой трассировки (коэффициент равен 9);
2) критерий “число нарушений проектных норм” имеет:
компромиссное значение между равным значением и незначительным предпочтение перед суммарной длиной всех соединений (коэффициент 2);
незначительное предпочтение перед критерием “количество дополнительных переходных отверстий” (3);
предпочтение, компромиссное между незначительным и существенным перед критерием, учитывающим уровень перекрестных электромагнитных помех (4);
существенное значение по сравнению с оценкой времени трассировки (5);
компромиссное предпочтение между существенным и очевидным перед критерием, учитывающим возможность переназначения функционально эквивалентных контактов и групп (6);
очевидное предпочтение перед обеспечением возможности автоматического размещения компонентов на печатной плате (коэффициент 7);
компромиссное предпочтение между очевидным и абсолютным по сравнению с критерием “удобство пользования системой трассировки” (балл по шкале критериев 8);
3) критерий “суммарная длина всех соединений” имеет:
компромиссное значение между равным и незначительным предпочтение перед критерием “число дополнительных переходных отверстий” (коэффициент 2);
незначительное предпочтение перед критерием, учитывающим уровень перекрестных электромагнитных помех (3);
предпочтение, компромиссное между незначительным и существенным перед критерием оценки времени трассировки (балл 4); и т.д. Очевидно, что при использовании предложенной начальной упорядоченности критериев по важности заполнение верхней половины табл. 5 коэффициентами сравнения весомости позволяет продолжить этот процесс без особых затруднений. Нижняя половина таблицы, расположенная под диагональю матрицы, заполняется, как указывалось ранее, обратными значениями для установленных над диагональю целыми значениями баллов.
После попарной оценки критериев рассчитывается произведение значений их оценки по строкам, а затем из полученного значения извлекается корень девятой степени, определяемый количеством оцениваемых критериев (среднее геометрическое). Весомость критерия (нормализованное значение критерия) определяется делением значения, полученного извлечением корня, на сумму этих значений по всем критериям (см. табл. 3). В результате сумма весомости всех факторов должна быть равна единице (см. табл. 5).
Для контроля правильности сравнения критериев рассчитывается показатель согласованности (ПС) как сумма произведений суммы значений оценки каждого фактора в строке и в столбце в соответствии с выражением (1.1):
ПС = 2,826 x 0,3007 + 4,715 x 0,2181 + 7,59 x 0,15321 + 11,447 x 0,10580 + 16,28 x 0,07251 + 22,08 x 0,06419 +28,83 x 0,04788 + 35,5 x 0,02408 + + 45 x 0,01352 = 9,6934746
После этого рассчитывается индекс согласованности (ИС) как частное от деления разности ПС и количества факторов на разность количества факторов и единицы в соответствии с выражением (1.2):
ИС = (9,6934746 – 9) / (9 – 1) = 0,086684325
Далее рассчитывается отношение согласованности (ОС) как частное от деления индекса согласованности (ИС) на значение случайного индекса (СИ). Случайный индекс зависит от количества используемых критериев (9) и выбирается из табл. 4. В нашем случае он считается равным 1,45.
Таким образом, отношение согласованности будет:
ОС = 0,086684325 / 1,45 = 0,0 5978, что меньше 0,1 и говорит о правильности задания сравнительных оценок используемых критериев.
Сравнение ПП, выполненных программами фирмы Altium, и перетрассированными в системе TopoR v.6.2
Продукты фирмы Altium (P-CAD, Protel, Altium Designer) уже давно и широко используются для проектирования ПП на многих предприятиях Российской Федерации. Даже сейчас по ряду сложившихся причин на некоторых предприятиях все еще в работе применяются устаревшие начальные версии системы. Поэтому было решено выполнить сравнение вариантов плат, разведенных в разное время с использованием различных версий этих трассировщиков с трассировкой этих же схем в системе TopoR.
Вначале рассматривается результаты сравнения с трассировкой выполненной в старой версии (в системе PCAD), который осуществляет разведение плат без использования ShapeBase технологии, т.е. поле платы разбивается ортогональной сеткой с малым дискретом. В этой связи для обеспечения такой работы требуется повышенный объем памяти и соответственно расходуется большое время для поиска положения ортогональных трасс. Поиск расположения каждой трассы осуществляется последовательно и ее положение на плате сразу же фиксируется в памяти системы. Поэтому ранее проведенные трассы могут создавать препятствия для проведения предыдущих, что приводит к необходимости введения дополнительных переходных отверстий для перевода трассы на другой слой.
Особенностью рассматриваемой электронной схемы, для которой проектировалась печатная плата (рис. 2.6), является то, что в ней использованы компоненты, установленные с одной стороны, только со штыревыми контактами. Однако доступ проводников ко всем компонентам схемы на ПП за счет сквозных отверстий установки обеспечивается с обеих сторон платы. Это позволяет существенно уменьшить общее число дополнительных переходных отверстий, но их все равно оказывается довольно большое количество (138 отверстий). Вместе с тем нарушений технологических требований в разведенной топологии нет.
Результаты трассировки этой же схемы в системе TopoR представлены на рис. 2.7. Они получены на 5,51 мин режима автоматической трассировки. В плате использован только 1 дополнительный переход, а суммарная длина трасс при этом равна 4402,43 мм. Полученные данные существенно превосходят параметры платы-прототипа. Однако их можно еще улучшить (рис. 2.8), если предварительно использовать предоставляемый системой TopoR режим автоматического размещения компонентов схемы. Этот режим позволяет иногда разместить компоненты с обеспечением минимизации межконтактных соединений. Время на выполнение авторазмещения компонентов потребовалось менее 2 мин, а в результате автоматической трассировки и редактирования в стиле FreeStyle (без автоматизированного редактирования, так как нарушений технологических требований не зафиксировано) была получено описание платы, представленной на рис. 2.8. Здесь не используется дополнительных переходных отверстий, а общая длина соединений уменьшилась до 3338,76 мм, что по сравнению с исходной платой, трассировка которой была выполнена в программе PCAD, стала почти в 1,5 раза короче.
Второй пример схемы, приведенный на рис. 2.9, трассировался современной версией системой Altium Designer с использованием прогрессивной технологии Shape Base. Здесь при определении каждого очередного сегмента трассируемой цепи площадь платы разбивают на относительно большие прямоугольные свободные области, в одной из которых и задается положение текущего сегмента трассы. Для реализации такой технологии требуется отводить существенно меньше оперативной памяти и соответственно алгоритмы работают быстрее по сравнению с обычной сеточной моделью представления площади ПП. Однако трассы и дополнительные переходные отверстия фиксируются по мере определения положения составляющих сегментов цепи и располагаются вдоль осей или под фиксированным углом в 45 градусов. Очевидно, что такая трассировка приводит к увеличению занимаемой ею площади платы. Изображение разведенной таким образом схемы Z80_routed представлено на рис. 2.9. схема содержит компоненты только со штырьковыми контактами. При этом все компоненты установлены с одной стороны платы. Из представленного рисунка видно, что система:
не смогла развести две цепи и их надо будет разводить вручную, что потребует значительной работы и временных затрат по редактированию схемы;
обеспечила суммарную длину разведенных цепей 7749,15 мм;
поставила 20 дополнительных переходных отверстия;
все проведенные трассы сформировала без нарушений технологии.
Результаты трассировки этой же схемы системой Topological Router с использованием платы такого же размера и с сохранением положения на ней всех компонентов, а также первоначально установленных в системе Altium Desiner топологических ограничений представлены на рис. 2.10.
Эта система осуществила полную трассировку всех электронных цепей без использования дополнительных переходных отверстий и без нарушения заданных технологических параметров. При этом суммарная длина всех проводников была
Развертывание топологической САПР “TopoR” на основе платформы VMware ESX Server
В качестве инструмента виртуализации при построении корпоративного облака САПР трассировки ПП был использован VMware ESX Server, который является встроенным гипервизором и работает непосредственно на платформе серверов, не требуя дополнительной операционной системы [29].
Для управления виртуальными машинами используется клиент VMware VSphere, который устанавливается на клиентском компьютере. С помощью клиента VSphere можно открывать консоль на рабочем столе управляемых виртуальных машин. С консоли можно изменять настройки операционной системы, запускать приложения, просматривать файловую систему, контролировать производительность системы и т.п., как если бы работа выполнялась с физической системой. Можно также использовать копии текущего состояния всей виртуальной машины. Чтобы работать только с виртуальными машинами и физическими ресурсами сервера ESX/ESXi, необходимо подключить клиент VSphere непосредственно к этому серверу. Для управления физическими ресурсами нескольких серверов необходимо использовать сервер vCenter.
Основные факторы, которые повлияли на выбор средств виртуализации фирмы VMware: . VMware ESX/ESXi 5.0
обеспечивает самую компактную систему и занимает всего 70 МБ дискового пространства;
. масштабируемая инфраструктура поддерживает 255 Гб оперативной памяти для виртуальных машин и до 1 Тб оперативной памяти для крупномасштабных проектов консолидации серверов и аварийного восстановления данных;
. каждый VMware ESX/ESXi поддерживает до 256 включенных виртуальных машин;
система хранения данных добавляет и расширяет виртуальные диски без прерывания работы виртуальной машины для наращивания имеющихся ресурсов.
Функции управления хранением данных клиента vSphere предоставляет настраиваемые отчеты и топологические карты;
. для обеспечения высокой готовности и аварийного восстановления VMware ESX предоставляет API защиты данных vStorage - прокси-сервер резервного копирования, который снимает нагрузку с установок VMware ESX/ESXi и выполняет полное и инкрементное резервное копирование на уровне файлов;
. функции обеспечения высокой готовности и отказоустойчивости VMware исключают простои, потери данных и гарантируют непрерывную доступность при отказах физического сервера с помощью VMware Fault Tolerance;
vCenter Server в составе VMware служит центром управления виртуализацией и представляет собой масштабируемый и наращиваемый сервер управления для администрирования инфраструктуры и прикладных сервисов с глубоким обзором всех аспектов виртуальной инфраструктуры. vCenter Server поддерживает предупредительные сигналы, графики производительности, и один vCenter Server может администрировать до 300 хостов и 3000 виртуальных машин. Кроме того, в режиме Linked Mode можно администрировать до 10000 виртуальных машин с одной консоли. Несколько систем vCenter Server можно объединить в группу vCenter Server Connected, чтобы управлять ими через один канал VSphere Client.
С помощью менеджера ВМ vSphere Client можно:
редактировать параметры настройки запуска и останова виртуальных машин;
открывать консоль виртуальной машины;
добавлять и удалять виртуальные машины;
использовать копии текущего состояния для управления виртуальными машинами;
управлять существующими копиями текущего состояния;
восстанавливать копии текущего состояния;
преобразовывать "тонкие" виртуальные диски в "толстые";
просматривать существующую конфигурацию оборудования и вызывать мастер Add Hardware для добавления или удаления оборудования;
просматривать и настраивать свойства виртуальных машин, такие как управление питанием, взаимодействие между гостевой операционной системой и виртуальной машиной и параметры настройки VMware Tools;
настраивать процессоры, ресурсы Hyperhreading процессоров, память и диски.
Таким образом, облачная платформа на основе гипервизора ESX Server образует уровень виртуализации между аппаратной частью системы и виртуальными машинами, превращая оборудование системы в пул логических вычислительных ресурсов, которые можно динамически выделять любой гостевой операционной системе. Операционные системы, работающие в виртуальных машинах, взаимодействуют с виртуальными ресурсами, как если бы это были физические ресурсы.
На рис. 3.3 приведена архитектура облачной платформы для топологической САПР Торог, предложенная автором [12, 57] . В качестве аппаратной платформы был использован серверNecs 3.Intel Xeon Q X5450A с 4 Гб оперативной памяти. Непосредственно на сервере было установлено программное обеспечение VMware ESXi 5.5. Установка VMware vSphere Client 5.5 на клиентской машине обеспечивает соединение с сервером, создание и управление виртуальными машинами. В тестовом режиме на сервере было создано две виртуальные машины с гостевой ОС Windows XP и установленной топологической САПР “TopoR”. Кроме того, для централизованного хранения проектных данных на сервере была развернута виртуальная машина Server projects (Сервер проектов) с ОС Windows Server 2008 R2. Проблемы организации проектных данных для облачной версии САПР подробно рассматриваются в 4 главе диссертации.
На рис. 3.4 приведено рабочее окно гипервизора VMware ESXi 5.5 с деревом виртуальных машин. Доступ к виртуальным машинам с клиентского компьютера был организован с помощью VMwarevSphereClient 5.5. После удаленного запуска виртуальной машины и загрузки гостевой ОС возможно подключение рабочего стола и вызов САПР “TopoR”.
На рис. 3.5 представлено рабочее окно тестируемой виртуальной машины топологической САПР трассировки ПП “TopoR” с открытым проектом печатной платы.
Тестовый вариант корпоративного облака, разработанного автором на основе платформы VMware показал возможность использования облачных технологий для организации режимов коллективного использования топологической САПР. Однако для развертывания полнофункционального варианта корпоративного облака и обеспечения режима доступа к виртуальной машине САПР через web-интерфейс необходима установка дополнительного сервера VMwarev CenterServer 5.5.
Реализация базы данных проектов топологической САПР “TopoR”с использованием облачных технологий
Этап реализации базы данных проекта должен начинаться с выбора универсальной СУБД и среды программирования. В настоящее время основными конкурирующими продуктами на рынке промышленных СУБД являются Microsoft SQLServer и Oracle. В статье [64] дается сравнение основных характеристик, данных СУБД и обсуждается их функциональные возможности. На основе анализа характеристик и основных показателей в работе [64] показано, что SQL Server 2008 имеет значительные преимущества перед Oracle 11g в применении для создания прикладных баз данных в различных областях. Поэтому для создания БДПР был выбран MS SQL Server 2008.
Для реализации приложения БДПР была выбрана наиболее распространенная среда для разработки прикладных программных систем высокой степени сложности Microsoft Visual Studio 2013 [40,44,50,56], которая упрощает создание, отладку и развертывание Web-приложений
Особого внимания заслуживает ASP.NETMVC 5 - Инфраструктура ASP.NET MVC 5 представляет собой последнюю версию веб-платформы ASP.NET от Microsoft. Она предлагает высокопродуктивную модель программирования, которая способствует построению более чистой кодовой архитектуры, обеспечивает разработку через тестирование и поддерживает повсеместную расширяемость в комбинации со всеми преимуществами ASP.NET.У инфраструктуры ASP.NET MVC есть множество преимуществ, по сравнению с классической платформой веб-разработки ASP.NET Web Forms. Ее встроенные вспомогательные методы HTML генерируют ясный и соответствующий стандартам код разметки, она предлагает мощную систему маршрутизации URL (теперь доступна и в ASP.NET Web Forms 4.5) которая позволяет создавать удобочитаемые URL-адреса. Компоненты ASP.NET MVC поддерживают расширяемость, а сама платформа поддерживает гибкую тестируемость в виде модульных и интеграционных тестов при добавлении и удалении объектов для каждого класса.
Entity Frame work представляет особую объектно-ориентированную технологию на базе фреймворка .NET для работы с данными. Если традиционные средства ADO.NET позволяют создавать подключения, команды и другие объекты для взаимодействия с базами данных, то Entity Frame work представляет собой наиболее высокий уровень абстракции, позволяющий абстрагироваться от самой базы данных и работать с данными независимо от типа хранилища. В случае если на физическом уровне мы оперируем с таблицами, индексами, первичными и внешними ключами, то на концептуальном уровне, который предлагает Entity Frame work, мы уже работает с объектами[60].
Основной концепцией Entity Frame work является понятие сущности (entity). Сущность предполагает набор данных, ассоциированных с конкретным объектом. Поэтому эта технология подразумевает работу не с таблицами, а с объектами и их наборами.
Любая сущность, равно как и любой объект из реального мира, обладает рядом качеств. Например, если сущность описывает человека, то мы можем отметить такие свойства, как имя, фамилия, рост, возраст, вес. Свойства необязательно представляют элементарные данные типа int, но и могут представлять наиболее комплексные структуры данных. При этом у каждой сущности может быть одно или ряд свойств, которые отличают данную сущность от остальных и уникально определяют эту сущность. В связи с этим такие свойства называют ключами [62].
При этом сущности могут быть связаны ассоциативной связью один-ко-многим, один-ко-одному и многие-ко-многим, подобно тому, как в реальной базе данных происходит связь через внешние ключи.
Отличительной особенностью Entity Frame work считается применение запросов LINQ с целью выборки данных из БД. При помощи LINQ можно не только получать определенные строки, хранящие объекты, из БД, но и получать информацию об объектах, связанных друг с другом разными ассоциативными связями [60].
Другим ключевым понятием считается Entity Data Model. Данная модель сравнивает классы сущностей с реальными таблицами в БД. Entity Data Model состоит из трех уровней: концептуального, уровня хранилища и уровня сопоставления (mapping – маппинга). На концептуальном уровне происходит определение классов сущностей, применяемых в приложении. Уровень хранилища устанавливает таблицы, столбцы и отношения между таблицами и типами данных, с которыми сопоставляется используемая база данных.
Уровень сопоставления (маппинга) выполняет роль посредника между двумя классами сущностей, устанавливая сопоставление между свойствами класса сущности и столбцами таблиц.
Таким образом, мы можем через классы, определенные в приложении, взаимодействовать с таблицами из базы данных.
Способы взаимодействия с БД:
Entity Frame work предполагает три возможных способа взаимодействия с базой данных:
Database first: Entity Frame work формирует набор классов, которые отражают модель конкретной базы данных;
Model first: сначала разработчик создает модель базы данных, по которой затем Entity Frame work формирует реальную базу данных на сервере;
Code first: разработчик создает класс модели данных, которые будут храниться в базе данных, а затем Entity Frame work по этой модели генерирует БД и ее таблицы.
При создании приложения был выбран второй подход Model first, который поддерживает как генерацию сущностных классов из существующей базы данных, так и создание базы данных из созданной вручную модели объектов C#.
Скрипты по созданию всех таблиц базы данных DBProject на языке SQL приведены ниже:
Developers (разработчики) - таблица, предназначена для хранения ин формации о зарегистрированных пользователях, имеющих право на вход в систему
В SQL-Server создается база данных проектов DB_Project со всеми таблицами имена, которых совпадают с названиями классов моделей. После создания классов моделей в VisualStudio2013 в проект добавляется библиотека EntityFramework для взаимодействии с базой данных. Последним шагом является создание файла web.configсо строкой подключения к базе данных
Таким образом, настраивается доступ ко всем таблицам с помощью классов Entityframework. Все реализованные интерфейсы, классы и методы обеспечивают эффективное взаимодействие с данными в базе данных при добавлении, удалении, редактировании и извлечении информации.