Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Алгоритмы трассировки

Тип Реферат
Предмет Коммуникации и связь
Просмотров
1439
Размер файла
35 б
Поделиться

Ознакомительный фрагмент работы:

Алгоритмы трассировки

РЕФЕРАТ
на тему: "Алгоритмы трассировки "

Введение

В настоящее время используются различные варианты волнового алгоритма, в частности, лучевой и маршрутные.

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

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

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

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

1. Маршрутный алгоритм трассировки

Каждый слой платы представлен в памяти ЭВМ булевой матрицей, элементы которой имеют значение 0, если соответствующий элемент свободен для прокладки пути, и имеют значение 1, если соответствующий элемент занят. Все элементы матрицы, которые принадлежат исходным препятствиям, задаются единичным значением.

Алгоритм реализует следующие последовательно выполняемые этапы:

1) построение пути до встречи с препятствием;

2) обход препятствий;

3) минимизация построенного пути.

Этап 1. Пусть требуется проложить путь между элементами da, булевой матрицы, описывающей модель платы. При отсутствии препятствий между элементами можно проложить конечное множество путей, имеющих минимальную длину в выбранной геометрии. Процесс построения Р-пути (Н-пути) сводится к тому, чтобы определить такую последовательность элементов L=<da, da+1,…, dk,…, db>, что любой элемент dkпринадлежит Р-окрестности (Н-окрестности) элемента dk-1.

Если будем рассматривать Н-окрестность, то вектор перехода Zk от элемента dkк элементу dк+1 возможен только в направлениях, параллельных координатным осям. Для случая Р-окрестности вектор перехода может иметь диагональные направления.

На каждом шаге построения пути направление вектора перехода Zk от элемента dk к элементу dк+1 определяется функциями sgn(xb-xk), sgn(yb-yk), где xb, yb - координаты элемента db пути, xk, yk - координаты элемента dk.

Правило выбора направления построения пути до встречи с препятствием в наилучшем направлении приведено в таблице 1.

Таблица 1.

Функция Zk
01234567
sgn(xb-xk)110-1-1-101
sgn(yb-yk)01111-1-1-1

Наименование направлений приведено на рисунке 1.

321
4A0
567

Рисунок 1. Наименование направлений вектора перемещения Zk.

После каждого шага построения пути необходимо по вектору перехода Zk определить состояние очередного элемента dk (свободный или занятый) булево матрицы. Рассмотрим построение Н-пути.

Для описания дискретного пространства, в котором строим путь, используем булеву матрицу С размером m´n. Кроме того, для сокращения вычислений введем усеченную матрицу А размером m´l. Число строк в матрице А определяется шириной прокладываемого проводника в дискретах. При прокладке проводников шириной в один дискрет матрица А будет матрицой-строкой, только один элемент которой принимает единичное значение. Номер этого элемента определяется координатой xk анализируемого элемента dk.

Состояние элементов описывается через булеву функцию

,

где ci,j – элемент матрицы С; ai - элемент матрицы-сторки А.

Здесь через индекс j обозначается номер строки матрицы С, который определяется координатой yk элемента dk.

Если V=1, то элемент dk занят, и построение пути прекращается. Дальнейшее построение осуществляется путем обхода препятствий, начиная с элемента dk-1, который будем называть элементом встречи с препятствием.

При построении Р-пути распознавание состояния элемента выполняется в два этапа. На первом этапе определяем, принадлежит ли элемент dk какому-либо объекту, записанному в матрице С. Если элемент dk не принадлежит никакому объекту, то переходим к выполнению второго этапа, суть которого сводится к следующему: определяем состояние элементов, которые принадлежат одновременно Н-окрестностям элементов dk, dk-1. Таких элементов может быть только два, причем они расположены диагонально. Если оба элемента заняты, то построение пути из элемента dk-1 в dk запрещено.

При построении пути в диагональных направлениях состояния элементов описывается булевой функцией

, i=1, 3, 5, 7. (1)

Булевы функции Vi, Vi-1, Vi+1 определяются при просмотре
Р-окрестности элемента dk. Если функция (1) равна нулю, то выбранный элемент свободный; в противном случае – занятый.

Если очередной элемент dk булевой матрицы С, через который должен пройти путь занят, то из элемента dk-1, который назовем элементом встречи с препятствием (на рисунке 2 это элемент 1), начинается обход препятствия.

Этап 2. Переход от элемента встречи с препятствием к следующему свободному элементу пути выполняются согласно правилу первого шага.

Правило первого шага. Этап обхода препятствия начинается с элемента dk встречи с препятствием в направлении Zk, двоичный код которого определяется путем сложения кода предшествующего направления (Z’)k-1 с кодом 001 по модулю 8 при отрицательном направлении обхода препятствий, а при положительном обходе – с кодом 111.

Если выбранное направление запрещено, то принимаем первое возможное направление.

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

При построении Н-пути для обхода препятствий используется алгоритм Н-слежения, а при построении Р-пути – Р-слежение.

При отрицательном направлении Р-слежения двоичный код приоритетного направления опреднляется соотношением

,

а при положительном

.

Если направление с высшим приоритетом запрещено, то выбирается первое возможное направление с низшим приоритетом. Определяемое соотношением

,

где n – двоичный код чисел из последовательности 1, 2, …,8.

Суммирование по модулю 8 выполняется при отрицательном направлении слежения, вычитание – при положительном.

Важным моментом является определение элемента, в котором заканчивается обход препятствий и начинается построение пути в оптимальном направлении (по прямой к элементу db). Если в нужный момент не прекратить обход препятствий, то неизбежно зацикливание пути вокруг препятствий. Элемент пути, в котором прекращается обход препятствий, назовем элементом спуска. На рисунке 2 элементом спуска является элемент 19. Здесь приведен путь в лабиринте, построенный согласно этой методике от элемента daк элементу db. От элемента da до элемента 1, который является элементом встречи, выполняется построение пути согласно этапу 1. Обход препятствий начинается от элемента встречи 1 в отрицательном направлении (этап 2) и заканчивается элементом спуска 19. От элемента спуска 19 до конечного элемента пути выполняется
этап 1.

Для определения элемента спуска пути предлагается следующий алгоритм:

a) определяем двоичный код угла поворота вектора перехода относительно вектора Z’ из соотношения

;

причем суммирование выполняется при отрицательном направлении обхода препятствий, вычитание – при положительном.

b) В каждом элементе излома проверяем значение двоичного кода ak и направление построения пути в наилучшем направлении. Если ak³0 и направление обхода препятствий совпадает с наилучшим направлением построения пути, то элемент dk будет элементом спуска. В противном случае dk не является элементом спуска.

Этап 3. Минимизация длинны пути сводится к построению выпуклого контура, описанного вокруг первоначального пути. Если нет возможности получить выпуклый контур из-за наличия препятствий, то строится сглаженный контур, т.е. контур, имеющий меньшую длину, чем первоначальный.

Находим все элементы спуска первоначального пути и разбиваем его на отдельные участки, разграниченные элементами спуска. Последовательно минимизируем все участки пути.

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

2) Построенный вновь подпуть Lн(da, dj) сравнивается по длине с путем L(da, dj), и если новый путь меньше, то L(da, dj) заменяется на Lн(da, dj).

3) Минимизация повторяется для следующего элемента излома, самого близкого к dj, и до тех пор, пока на Lн(da, dj) или L(da, dj) останется один элемент излома.

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

2. Волновой алгоритм трассировки.

Дискретное поле платы разбивают на три множества, описываемых с помощью булевых матриц:

С – множество элементов поля, требующих соединения между собой (на рисунке 4 множество , где i=0, 1, 2, 3);

Р – множество элементов поля, запрещенных для трассировки (на рисунке 4,а(б) это множество закрашено черным);

S – множество свободных элементов поля платы.

Требуется, используя элементы множества S, соединить элементы множества С в одну цепь, не пересекающую Р.

Процесс нахождения минимального пути состоит из двух этапов:

- Распространение волны от источника до встречи с одним из приемников;

- Определение пути от источника к приемнику.

В качестве источника выбирается один из элементов множества С, все остальные элементы являются приемниками. Обозначим через Rk множество элементов волны на шаге k и назовем его k-фронтом волны, тогда Rk+1 принадлежит Н-окрестности Rk.

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

Для построения волны используются матрицы распространения волн в горизонтальном (Rk’), и вертикальном (Rk) направлении и матрицы точек поворота с вертикального направления на горизонтальное (Mk) и с горизонтального направления на вертикальное (Mk’), где

;

;

.

На рисунке 5, а - г приведены соответственно матрицы Rk, Rk’, Mk, Mk’, построенные для k=12. Источником является фрагмент С0. Для наглядности в клетках, занятых волной, указывается номер шага, на котором достигнута эта точка.

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

Направление чередуется таким образом до тех пор, пока не будет достигнут элемент источника.

На рисунке 5, д показан пример построения пути от приемника С1 к источнику С0. Стрелками показано направление движения. В дальнейшем процесс распространения волны повторяется с учетом построенного пути. Такой выбор источника обеспечивает ветвление цепи в любой ее точке.

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


Нет нужной работы в каталоге?

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

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

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

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156450
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
63 457 оценок star star star star star
среднее 4.9 из 5
Филиал государственного бюджетного образовательного учреждения высшего образования Московской област
Спасибо Елизавете за оперативность. Так как это было важно для нас! Замечаний особых не бы...
star star star star star
РУТ
Огромное спасибо за уважительное отношение к заказчикам, быстроту и качество работы
star star star star star
ТГПУ
спасибо за помощь, работа сделана в срок и без замечаний, в полном объеме!
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

решить 6 практических

Решение задач, Спортивные сооружения

Срок сдачи к 17 дек.

только что

Задание в microsoft project

Лабораторная, Программирование

Срок сдачи к 14 дек.

только что

Решить две задачи №13 и №23

Решение задач, Теоретические основы электротехники

Срок сдачи к 15 дек.

только что

Решить 4задачи

Решение задач, Прикладная механика

Срок сдачи к 31 дек.

только что

Выполнить 2 задачи

Контрольная, Конституционное право

Срок сдачи к 12 дек.

2 минуты назад

6 заданий

Контрольная, Ветеринарная вирусология и иммунология

Срок сдачи к 6 дек.

4 минуты назад

Требуется разобрать ст. 135 Налогового кодекса по составу напогового...

Решение задач, Налоговое право

Срок сдачи к 5 дек.

4 минуты назад

ТЭД, теории кислот и оснований

Решение задач, Химия

Срок сдачи к 5 дек.

5 минут назад

Решить задание в эксель

Решение задач, Эконометрика

Срок сдачи к 6 дек.

5 минут назад

Нужно проходить тесты на сайте

Тест дистанционно, Детская психология

Срок сдачи к 31 янв.

6 минут назад

Решить 7 лабораторных

Решение задач, визуализация данных в экономике

Срок сдачи к 6 дек.

7 минут назад

Вариационные ряды

Другое, Статистика

Срок сдачи к 9 дек.

8 минут назад

Школьный кабинет химии и его роль в химико-образовательном процессе

Курсовая, Методика преподавания химии

Срок сдачи к 26 дек.

8 минут назад

Вариант 9

Решение задач, Теоретическая механика

Срок сдачи к 7 дек.

8 минут назад

9 задач по тех меху ,к 16:20

Решение задач, Техническая механика

Срок сдачи к 5 дек.

9 минут назад
9 минут назад
10 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

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

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно