Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Автоматизация проектирования радиоэлектронных устройств связи..pdf
Скачиваний:
12
Добавлен:
15.11.2022
Размер:
5.53 Mб
Скачать

3.3.2. Стратегии проектирования

Пакет MAX+PLUS II позволяет реализовать как стратегию восходя­ щего проектирования, так и нисходящего. И та и другая стратегии подра­ зумевают использование поведенческих и структурных описаний модулей. При структурном описании модуль представляется в виде совокупности взаимосвязанных компонентов более низкого уровня в иерархии описаний. При поведенческом же описании задается алгоритм работы модуля.

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

При этом разработчик решает следующие задачи:

-создание функциональных аналогов элементов, использованных в заданном структурном описании;

-отладка созданных компонентов;

-сборка созданных компонентов в единый модуль;

-моделирование и отладка устройств в целом.

Таким образом, в процессе проектирования разработчик сначала соз­ дает модули нижнего уровня в иерархии описаний, а затем модуль верхне­ го уровня. Отсюда и название стратегии проектирования.

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

Упрощенно, ориентируясь на возможности пакета MAX+PLUS II, процедура нисходящего проектирования выглядит следующим образом:

-разрабатывается архитектура СБИС. Исходное поведенческое описа­ ние преобразуется в структурное, элементами которого являются архитектурные блоки;

-архитектурные блоки либо описываются на поведенческом уровне (например с помощью языка VHDL), либо осуществляется их струк­ турная декомпозиция и создается структурное описание, элементами которого являются функциональные модули;

-далее Процедура итерационно повторяется до тех пор, пока все функциональные модули не будут описаны на поведенческом уров­ не;

-после этого осуществляется функциональное моделирование моду­ лей, имеющих поведенческие описания;

-далее - функциональное моделирование модулей, имеющих струк­ турное описание (модули, имеющие поведенческое описание, входят в них как компоненты);

-далее - моделирование и отладка устройства в целом.

Таким образом, в процессе проектирования разработчик опускается с верхнего уровня иерархии описаний, уровня СБИС, к нижним уровням. Отсюда и название стратегии проектирования.

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

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

4. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

Рассмотрим основные понятия, определения и принципы, связанные с объектом проектирования.

4.1. Система передачи данных

Структурно на высшем уровне абстракции любую систему передачи данных (СПД) можно разбить на ряд блоков (рис. 4.1):

-ИИ - источник информации генерирует сообщения;

-Прд - передатчик, который преобразует информационные сообще­ ния в сигнал, пригодный для передачи на расстояние в конкретной физической среде;

-КС - канал связи, т.е. физическая среда, в которой передается сиг­ нал. В канале связи присутствуют различные помехи, искажающие передаваемый сигнал;

-Прм - приемник, который принимает сигнал из канала связи и рас­ познает переданное сообщение;

-ПИ - получатель (потребитель) информации (регистрирующее уст­ ройство, абонент, и т.д.).

Рис. 4.1. Структурная схема СПД

Блоки, осуществляющие непосредственно передачу сообщений от источника к потребителю (Прд, КС и Прм), принято выделять в отдельную подсистему - канал передачи данных (КПД).

4.1.1. Система телеизмерений (ТИ) и телесигнализации (ТС)

Рассмотрим в общем виде типовую систему телеизмерения и телесигнализации (рис. 4.2). На контролируемом пункте (КП) имеется удален­ ный объект управления, на котором установлены датчики (Д), измеряющие

ОУ -► д .

|

КП 0Ш)

Рис. 4.2. Система ТИ и ТС как СПД

значения ряда физических параметров объекта или сигнализирующие об авариях и других событиях. Измерители выдают цифровой код (отсчеты), а датчики сигнализации - биты информации («авария» = «1», «норма» = = «0»), которые также группируются в сообщения. Датчики опрашиваются с заданной частотой, и отсчеты посредством КПД передаются в пункт управления (ПУ), где распределяются и поступают на соответствующие устройства индикации (И) и регистрации (Р). В данном случае КП можно рассматривать как многоканальный источник информации, а ПУ - как многоканальный потребитель информации.

4.1.2. КПД системы ТИ и ТС

Рис. 4.3. Структура КПД системы ТИ и ТС

Рассмотрим подробнее структуру КПД многоканальной системы ТИ и ТС.

Передатчик содержит:

-подсистему сбора информации (ПССИ) - оборудование группообразования, которое производит опрос датчиков (отдельных источников информации) согласно установленной дисциплине обслуживания и формирует групповой сигнал;

-кодер помехоустойчивого кода (КПК), который добавляет к переда­ ваемым сообщениям избыточные символы для обеспечения помехо­ устойчивой передачи;

-канальный кодер (КК), который производит логическое и физиче­

ское кодирование, преобразующее цифровой сигнал в сигнал, пере­ даваемый в канале связи.

Приемник содержит:

-канальный декодер (КДК), преобразующий принятый сигнал из ка­ нала связи в цифровую последовательность;

-декодер помехоустойчивого кода (КДПК), который обеспечивает обнаружение и (или) исправление ошибок в принятом сообщении, возникших из-за помехи в канале связи;

-подсистему распределения информации (ПСРИ) - оборудование группообразования, которое выделяет из принятого группового циф­ рового сигнала сообщения отдельных источников и направляет их к соответствующим потребителям информации.

Таким образом, КПД системы ТИ и ТС содержит цифровое оборудо­ вание, которое не зависит от конкретной среды передачи, и оборудование, согласующее передаваемый сигнал с каналом связи.

В приведенной структуре выделим цифровой передатчик (ЦПрд), цифровой приемник (ЦПрм) и цифровой канал связи (ЦКС), что позволяет в дальнейшем рассматривать приемник и передатчик как объекты проек­ тирования, не привязываясь к конкретной среде передачи и ограничиться цифровой схемотехникой на базе ПЛИС.

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

4.1.3. Технические характеристики КПД системы ТИ и ТС

Основными техническими характеристиками КПД системы ТИ и ТС являются:

-скорость передачи информации (бит/с) - количество бит полезной информации, передаваемой в единицу времени. Рассчитывается со­ гласно теореме Котельникова для восстановления измеренного сиг­ нала на приемной стороне;

-скорость передачи в канале связи (бит/с) - скорость изменения ма­ нипулированного параметра сигнала в канале связи. Ограничивается сверху полосой пропускания канала, снизу - минимальной допусти­ мой частотой опроса источников информации. Скорость передачи информации и скорость в канале связи могут не совпадать из-за до­ бавления избыточных символов при помехоустойчивом кодирова­ нии, применения многоуровневых кодов при цифровой передаче, и т.д.;

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

Величина синтаксической избыточности сообщения определяется как Лабе = Уд - Уол, где Уд - длина передаваемого закодированного сообще­ ния, Уод - минимально необходимая длина сообщения для передачи задан­ ного количества информации.

Для системы ТИ и ТС Лабс определяется используемым помехоустой­ чивым кодом, позволяющим обнаруживать и исправлять битовые ошибки определенной кратности для обеспечения заданной вероятности правиль­ ной передачи сообщения при данной вероятности ошибки на символ из-за помехи в канале связи.

4.2. Помехоустойчивое кодирование в КПД системы ТИ и ТС

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

4.2.1.Циклические систематические коды (ЦСК)

Воснове циклических кодов лежит двоичная алгебра полиномов, для которой определены арифметические операции сложения, вычитания, ум­ ножения, деления и сравнения по модулю, например:

Сложение (по модулю два):

1 + 1=0; х' + х' =*'(1 + 1) = х1• 0 = 0;

(1 + х + х3) + (1 + х + х1) = 1 + 1 + х + х + х2 + х3= х2+ хг

Вычитание:

х ! - x J = х 1+ х ; (0 -1) = х; + х у(1 + 1-1) = х/ + х у

Умножение:

(1 + х)(1 + х + х2) = 1 + х + х2 + х + х2 + х3 = I + *3

Деление:

X 5 + X 2 + 1 X3 + X 2 + 1

х 5 + х 4 + х 2 х2 + Х + 1

х 4 +1

X4 + X3 + X

X3 + X + 1

Сравнение:

1 + x2 + x 5 sjc + x2(mod(l + x2 + x3)), где (x + x2) - вычет (остаток), (14x2 + x3) - модуль; />(х)(х"-1) = 0(mod(x2 -l));

1 + 1=0.

Пусть Уц - циклическое двоичное векторное пространство, замкну­ тое относительно операции суммы по модулю два и циклического сдвига

(Т):

 

V = (а ^а и ...,ап_2,ап_{) е Уц о

TV = (al9a2,...9an_l9a0)€ Vu, T V E Vu;

VJ^ G V ^ V ^ V ^ V , .

Эквивалентна запись:

 

v = (a0,a......a„_,) о

V(x) = a0+ a,x +...+ an_xx n~x

Так как xn - 1 s 0(mod(x'1-

1), то в алгебре полиномов A(mod(xn -

- 1), 2) операция циклического сдвига имеет вид

TV о K(x)x = a0x + a1x2 + ... + a„_2хл"1+ а„_1(хЛ-1 + 1) =

= а„-\ +а0х + а1х 2 + ... + аЛ_2хп“1, T'V<=>F(x)x'

Рассмотрим сравнение:

 

Q(x) = P(x)g(x) + r(x) <=> £?(х) = r(x)modg(x),

где g(x) = g0 +... + gkx k, r(x) = r0 +... + ^_,х*-1

Пусть полином g(x) таков, что

хи - l = g (x )/i(x )o x " -1 = 0(modg(x)), h(x) = h0 + ... + /7mxm, n = m + к,

тогда вектором циклического кода длины п в алгебре A(mod(xn - 1),2) бу­ дет являться полином, разложенный в базисе {0,g(x),xg(x),...,xm_1g(x)}, т.е. полином степени меньше п, делящийся без остатка Hag(x):

с/неч = 2s +1 - минимальное кодовое расстояние. Для кодов, исправляю­ щих и обнаруживающих ошибки: d4tr = s + r + l = 2s*+2.

Первая теорема БЧХ: для любых натуральных чисел А и s существу­ ет циклический код длины n = 2h -1 , причем на каждый исправляемый символ приходится как минимум Л избыточных символов, т.е. к < sA, где к = п - т - общее число избыточных символов. Таким образом:

п - к ^ ти => 2h - I - sh> ти

или

*min = Л + 1, ^ = 2А- ‘ - 1, 5тах = 2А- 2 - 1,

задачу решают подбором.

Вторая теорема БЧХ: все полиномы циклического кода делятся без остатка на полином g(x) и имеют с ним s общих корней из ряда {ос,а3,...,а25"1}. Каждому корню соответствует минимальный многочлен степени не больше А:

£(*) = П*и2/-1(*)=>* i=i

В случае четного минимального кодового расстояния (режим ис­ правления и обнаружения ошибок) необходимо перейти от циклического

кода (п = -1, /я, с/неч = 2s +1) к псевдоциклическому коду (п = - 1,

т - 1, d4CT = 2s + 2), преобразовав порождающий полином: g'(jc) = = g(*)(l + х), к' = к +1.

Если т > mHi то целесообразно перейти к укороченному коду:

(n,m,d)—f~w~wH >(я _ / >ти = m - i, d ) .

В этом случае к = const и порождающий полином остается прежним.

4.2.1.2. Построение кодеров ЦСК по g(x) с предварительным умножением на х к

При кодировании избыточные символы находятся как остаток от де­ ления, согласно выражению

Гк(*) = U(x)-х" (mod g(x)).

Делитель организуется на основе регистра с линейными логическими обратными связями (РЛЛОС) со встроенными сумматорами.

Рассмотрим пример.

Задание: закодировать сообщение длиной тн = 8. Обеспечить ис­ правление s 1 и обнаружение г = 2 ошибок.

Решение. В случае исправления и обнаружения ошибок: d4eT = s + r+ \= z \ + 2 + \ = 4 = 2s + 2\

/z = 3 => 23 - 1 - 1 - 3 = 4 < 8 - недостаточно; А = 4 =>24- 1- 1- 4 =11 >8 =>(15, 11,3).

Переходим к четному минимальному кодовому расстоянию: (15,10,4).

Укорачиваем код: (15,10,4)— 1=2 >(13,8,4).

Из таблицы минимальных многочленов (приложение 18) для А= 4 находим:

g(x) = т{ (х) = х 4 + х +1 = (11001),

g ’(x) = (х4 + х + 1)(лг +1) = х 5 + х 4 + х 2 +1 = (101011).

Закодируем вектор U = (0101010101) (неукороченный код):

lOlOlOlOlOOOOOOl П0101

110101 1101101000

1 1 1 1 1 1

110101

101001

110101

111000

110101

110100

110101

01000 = г(х)

V(х) = r(x) + U(х) ■X s = (0001010101010101).

В случае укороченного кода U = (01010101).

1010101000000

110101

110101

п о п о ю

111111

110101

101000

110101

111010

110101

111100

110101

10010 = r(x)

V(x) = r(x) + U(x) • *5 = (0100110 10 10 101).

Аналогично получаем множество тестовых кодовых векторов (табл. 4.1).

Таблица 4.1 Кодовые векторы (13, 8, 4)

Рис. 4.4. Структурная схема кодера (15, 10,4) по #(*) с предварительным умножением налг

Во время кодирования Y = 1 первые т тактов и У= 0 на (т+1) л-м тактах.

Кодер строится на базе РЛЛОС с вынесенными сумматорами (рис. 4.7).

Рис. 4.7. Структурная схема кодера (15,10,4) по h(x)

Пример. Для кода (15,10,4) проверочный полином:

h(x) = (х15 -1 ) / g '(х) = х 10+ х9 + X s + х 6+ х 5+ х 24-1.

* ,5 - 1

x s + x * + x 2 + l

х , ! + / п ,2 + /

х 10 + х 9 + дг8 + х 6 + X s + д:2 + 1

*,4+ *12+;с10+1

д;13 + дс12 + дсп + *10 +х9+1

Х" + Х” +Х">+Х'

JC11+х9+ДС8 +1

д:10 +дг9 + дгб +1

х ]0 +х9 +х7 +х5

д:7 + дсб + дг5 +1

х1+ дг6 +д:4 +дг2

д:5 Н- л:4 + дг2 +1

0

Во время кодирования Y = 0 первые т тактов (загрузка сдвигового регистра) и Y= 1 последующие п тактов (непосредственно кодирование).

На рис. 4.8 приведена временная диаграмма моделирования работы кодера (15, 10, 4) при U=(1010101010).