Главная страница
Навигация по странице:

  • Рекомендуемая литература

  • Практическое занятие 2 Тема. Кодирование информации Цель занятия: Изучить принципы кодирования информации Изучаемые вопросы

  • 4.2 Сообщения, сигналы и помехи Практическое занятие 3 (объем 1ч.)

  • Программа дисциплины (силлабус) 9 3 Краткий курс лекций 30 1


    Скачать 4.39 Mb.
    НазваниеПрограмма дисциплины (силлабус) 9 3 Краткий курс лекций 30 1
    Дата21.11.2019
    Размер4.39 Mb.
    Формат файлаdoc
    Имя файлаumkd tes dunaev p.a..doc
    ТипПрограмма дисциплины
    #96299
    страница12 из 20
    1   ...   8   9   10   11   12   13   14   15   ...   20
    Тема. Системы исчисления

    Цель занятия: освоить системы исчислений, применяемых в цифровой технике.

    Изучаемые вопросы

    - двоичное исчисление;

    - метод удвоения;

    - преобразование чисел;

    - основные логические схемы.
    Рекомендуемая литература

    1 Прокис Дж. Цифровая связь. Пер. с англ./ Под ред. Д. Д. Кловского.-М.: Радио и связь. 2000.

    2 Й. Янсен. Курс цифровой электроники. Т.1. Пер. с голландского- М.: МИР, 1987.

    Краткое содержание

    В цифровой и вычислительной технике для обработки информации используется двоичная система счисления [1,2].

    При вводе и выводе данных буквенно-цифровые символы кодируются группами двоичных цифр, которые интерпретируются в системе обработки данных. В двоичной системе счисления основанием является число 2, а в качестве коэффициентов используются 0 и 1.

    Такие “двоичные цифры” называются битами (binary digit) [2].

    Двоичная система счисления построена по аналогии с известной нам десятичной системой, в которой число определяется суммой коэффициентов, умноженных на 10 в степени с целыми показателями (число 10 является основанием). Например, число 2346, в котором местоположение коэффициентов дает показатель степени (2 ∙ 103; 3∙102; 4∙101; 6∙100). Двоичное число, например 11012, при переходе к десятичному, дает сумму:

    1∙23 + 1∙22+ 0∙21+1∙20 = 1∙8+1∙4+0∙2+1∙1= 13.

    Таким обоазом, в двоичной системе так же как и в десятичной, младшая цифра (коэффициент) с меньшим показателем степени основания находится в крайней правой позиции (младший разряд-бит).

    Приведенный выше пересчет называется степенным методом [2].

    Еще один метод, при котором не требуется знание степени числа 2, имеет название – метод удвоения.

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

    Произведем пересчет вышерассмотренного примера, согласно алгоритму метода удвоения: 1*1012= 1∙2= 2+1=3∙2=6+0=6∙2=12+1=13

    Преобразование десятичного числа в двоичную систему выполняется делением его на два.

    61 : 2 = 30 + остаток 1
    30 : 2 = 15 + остаток 0
    15 : 2 = 7 + остаток 1
    7 : 2 = 3 + остаток 1
    3 : 2 = 1 + остаток 1
    1 : 2 = 0 + остаток 1


    1 1 1 1 0 1

    Рисунок 4.1.1 - Схема перехода из десятичной системы счисления в двоичную систему.

    Как видно из схемы перехода последний остаток от деления является старшим разрядом.

    Проверим, правильно ли выполнен переход: 1111012= 1∙25+1∙24+1∙23+1∙22+0∙21+1∙20= 1∙32+1∙16+1∙8+1∙4+0∙2+1∙1=61

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

    При выполнении операций с двоичными числами на ЭВМ есть свои особенности, более подробную информацию можно получить в соответствующей литературе, в частности [2].

    Напомним, вкратце, действия с двоичными числами. Правила сложения:
    Пример: 61+13=74

    0+0=0;

    0+1=1; 111101

    1+0=1; + 1101

    1+1=0 (1 уходит в старший разряд). _________________

    10010102


    Правила вычитания: Пример:

    0-0=0; 74 = 61 = 13;

    0-1=1; (занято из левого бита); 1001010

    1-0=1; - 1101

    1-1=0 ______________

    11012

    При умножении двоичных чисел используются такие же правила, как и для десятичных чисел: 0∙0 = 0; 0∙1= 0; 1∙0 = 0; 1∙1=1;
    1012 – 5

    1102 – 6

    000 30

    101 .

    101 . .

    11110

    Деление двоичных чисел это тоже, что и вычитание (30:5=6 ), действия начинаются со значащих бит [2]:

    011110 0101

    101 110

    101

    101

    000
    Для выполнения определенных действий в двоичной системе счисления используется набор логических схем, выполняющих требуемые функции [2].

    Рассмотрим, для примера, положительную логику, т.е. принимаем уровень напряжения + 5 В за 1, а нулевой уровень напряжения за 0 (в реальных схемах напряжения высокого уровня Н не равно UВ, а низкого уровня L не равно точно 0; для анализа цифровых схем введено понятие помехоустойчивости).

    Кроме того, замкнутое состояние ключа соответствует 1, а разомкнутое – 0 [2].

    Тогда, схему И (по отношению к единицам на входе функция И, по отношению к 0 на входе – ИЛИ) можно представить в виде рис. 4.2.
    б)
    Рисунок 4.1.2 - а) схема И; б) условное обозначение.

    Схема ИЛИ для единиц на входе

    Рисунок 4.1.3 - а) схема ИЛИ; б) условное обозначение.

    Рисунок 4.1.4 - а) схема НЕ; б) условное обозначение.
    Кроме вышеприведенных основных схем существуют различные их комбинации, выполняющие определенные функции. Данные схемы приведены в простом виде для понимания логики процесса. Реальные схемы выполняются на современной элементной базе, в определенном наборе и могут выполнять достаточно сложные задачи [1, 2].

    Для закрепления изучаемого материала, согласно варианту (2х или 3х - значный номер зачетной книжки) или по заданию преподавателя,

    необходимо выполнить:

    - пересчет десятичного числа в двоичную систему;

    - проверить правильность переcчета степенным методом и методом удвоения;

    - выполнить все действия с двоичными числами;

    - построить функциональную схему на базе элементов И, ИЛИ, НЕ с тремя входами (х1, х2, х3 – взять из пункта 1 задания);

    - разработать принципиальную схему с использованием реальных микросхем (например – К 155).

    Практическое занятие 2

    Тема. Кодирование информации

    Цель занятия: Изучить принципы кодирования информации

    Изучаемые вопросы

    -оптимизация структуры цифровых схем;

    -кодирование информации;

    -коды;

    -расчет кодера.

    Рекомендуемая литература

    1 Прокис Дж. Цифровая связь. Пер. с англ./Под ред. Д.Д. Кловского.- М.: Радио и связь. 2000 г.

    2 Панфилов Н.П., Дырда В.Е. Теория электрической связи-М: Радио и связь. 1990г.

    3 Й.Янсен Курс цифровой электроники. T1.Пер. с голланд.-M.: Mup, 1987 г.

    Краткое содержание

    При рассмотрении основных логических схем(пр.1) мы выяснили, что они выполняют функции И,ИЛИ,НЕ (функции Буля), при помощи которых можно получить другие комбинаторные функции, используя теорему Де Моргана.

    Алгебра Буля применялась для анализа релейных схем. В настоящее время, система обозначений булевой алгебры используется для оптимизации цифровых схем [3].

    Функция И (конъюнкция): F=ABC. В качестве знака умножения могут использоваться другие символы: F=A^ B ^ C; F = A&B&C.

    Функция ИЛИ (дизъюнкция): F=A+B+C или F = ABC.

    Функция НЕ (инверсия или отрицание):

    F = ;

    при объединении функций И-НЕ выходной сигнал F =;

    Для функции ИЛИ-НЕ выходной сигнал F=.

    Исходя из таблиц истинности для вышеуказанных функций, получены постулаты булевой алгебры:

    функция И функция ИЛИ функция НЕ

    0∙0=0 0+0=0 =1

    0∙1=0 0+1=1 =0

    1∙0=0 1+0=1

    1∙1=1 1+1=1

    Для функции НЕ, и являются дополнениями для 0 и 1(и наоборот). То же можно сказать и по отношению к буквенным обозначениям( - это дополнение А, тогда +А=1 и ∙А=0) [3].

    Правила вычислений:

    А+0=А А∙0=0 +=

    А+1=1 А∙1=А А∙В+А∙В=А∙В

    А+А=А А∙А=А +=∙

    А+ =1 А∙=0 =

    А+В=В+А А∙В=В∙А ∙В+∙В=∙В

    А+ВС=(А+В)(А+С) А∙ (В+С)=АВ+АС

    А+В=А+В А∙ (+В)=АВ

    +АВ=+В; ∙ (А+В)= В;

    A+AB=AA∙(A+B)=A

    Теорема Де Моргана, постулаты:

    - дополнение суммы равно произведению дополнений переменных,

    =∙∙;

    - дополнение произведения равно сумме дополнений переменных,

    =++;

    Следует отметить, что в булевой алгебре используется законы обычной алгебры:

    - ассоциативный, (A+B)+C=(A+C)+B; (AB) ∙C=(AC) ∙B;

    - коммутативный, A+B = B+A; AB = BA;

    - дистрибутивный, A∙ (B+C)=AB+AC.

    Для оптимизации стандартной суммы булевой алгебры имеющий вид:

    Z = x1+x2+x3+…+ xn,

    используются ДНФ и КНФ [3].

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

    Чаще всего ДНФ бывает избыточной:

    Z = ABC+AB+В +.

    Компонуя составляющие выражения ДНФ соответствующим образом, его можно упростить:

    Z = (C+)AB+(B+)∙, C+=B+=1, тогда Z=AB+∙

    (минимальная сумма).

    Для стандартного произведения:

    Z = X1X2X3Xn,

    конъюнктивная нормальная форма (КНФ) также избыточна:

    Z = (+B+)∙(+B+C) ∙ (A++C) ∙ (A+B+C).

    Упростим выражение:

    Z = [(+B) +С∙]∙[(A+C) + B∙], C∙ =B∙ =0.

    Тогда, Z = (+B)(A+C).

    Существуют и другие способы оптимизации, например, карты Карно [3].

    Кодирование информации можно отнести ко времени изобретения письменности, т.e. для передачи сообщений с помощью бумаги (ранее другими средствами).

    Широкое распространение получили коды для передачи информации с помощью телеграфа (Код Морзе и др.). В цифровой технике используется, чаще всего, кодирование в двоичной форме [1, 2, 3]

    Рассмотрим наиболее распространенные коды.

    Код BCD (Binary-Coded-Decimals – двоично-кодированные десятичные цифры), используется в декадных счетчиках, частотомерах и других цифровых устройствах [3].

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


    Десятичные

    Вес

    Число

    8421

    0

    0000

    1

    0001

    2

    0010

    3

    0011

    4

    0100

    5

    0101

    6

    0110

    7

    0111

    8

    1000

    9

    1001

    Десятичные

    Вес

    Число

    2421

    0

    0000

    1

    0001

    2

    0010

    3

    0011

    4

    0100

    5

    1011

    6

    1100

    7

    1101

    8

    1110

    9

    1111



    а) б)

    Рисунок.4.1.5 - а) регулярный код BCD; б) код Эйкена (нерегулярный).

    Простое представление десятичного числа: 256 = 0010.0101.0110.

    Код с избытком три является кодом с дополнением. К каждой группе из 4 разрядов добавляется число три (0011),

    Например: 256=0101.1000.1001.

    Переход к десятичной системе - в обратном порядке.

    В циклическом коде все последовательные наборы отличаются друг от друга на один разряд, например: 0=0000; 1=0001; 2=0011; 3=0010; 4=0110; 5=1110; 6=1010; 7=1000 [3].

    Код Грея, так же является кодом с обменом единицей: 0 = 0000; 1= 0001; 2 = 0011; 3 = 0010; 4 = 0110; 5 = 0111; 6 = 0101; 7 = 0100.

    В кодах “один из десяти” или “два из 5”, “один”, “два” количество единиц в группе из десяти или пяти бит.

    Код двоично-десятичный(8421) и код два из пяти являются кодами c обнаружением ошибок. Для этого к BCD коду добавляется еще один знак, чтобы количество единиц было четным (в коде 2 из 5 это заложено сразу): 0 = 00000; 1= 00011; 2 = 00101 и т.д.

    В двоично-пятеричном коде, со стороны старшего разряда, добавляется бит четности, кроме того, к пяти весовым битам (после младшего разряда) добавлен “0”.Таким образом, двоично-пятеричный код является кодом “1 из 5” примененным дважды [3].


    Десятичное

    Число

    Вес

    Р

    5

    4

    3

    2

    1

    0

    0

    1

    0

    0

    0

    0

    0

    1

    1

    1

    0

    0

    0

    0

    1

    0

    2

    1

    0

    0

    0

    1

    0

    0

    3

    1

    0

    0

    1

    0

    0

    0

    4

    1

    0

    1

    0

    0

    0

    0

    5

    0

    1

    0

    0

    0

    0

    1

    6

    0

    1

    0

    0

    0

    1

    0

    7

    0

    1

    0

    0

    1

    0

    0

    8

    0

    1

    0

    1

    0

    0

    0

    9

    0

    1

    1

    0

    0

    0

    0

    Рисунок 4.1.6 - Двоично-пятеричный код.

    Заполняющий код применяется при программировании счетчиков (счетчик Джонсона): 000000; 100001; 200011; 300111; 4 01111; 5 11111; 6 11110; 7 11100; 8 11000; 9 10000.

    Восьмеричный и шестнадцатеричный коды используются в ЭВМ, для кодирования данных, команд, операндов [3].

    В микропроцессорах с однобайтовыми командами (1 байт - 8 битов), конкретные группы битов несут информацию о том, какую операцию надо выполнять и какой регистр участвует в этой операции.

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

    Число “8” это “23”, в связи с чем, каждую восьмеричную цифру можно представить тремя разрядами двоичной системы счисления: (6)8= (110)2;

    (123.4)8 = (001 010 011.100)2;

    Обратный переход начинается от точки, в обе стороны (по три знака), при необходимости с дополнением нулями:

    (1010110.0101)2 = (001 010 110. 010 100) = (126.24)8;

    Пересчет из десятичной системы счисления в восьмеричную систему, производится делением числа на восемь, с остатком:


    ,

    Восьмеричное число записывается с крайнего правого остатка, (1524)8.

    В шестнадцатеричном коде используются цифры от 0 до 9 и буквы от A до F. Запись команды осуществляется двумя символами [3].

    Пересчет из десятичной системы счисления:

    По аналогии с предыдущим, (2657)10  (А61)16

    Обратный пересчет выполняется, как и для двоичного счисления, но с основанием 8 и 16: (1524)81∙83+5∙82+2∙81+8∙80= (852)10;

    (A61)16= (A=10) ∙162+6∙161+1∙160 = 2560+96+1,0 = (2657)10

    Существуют буквенно-цифровые коды для кодирования цифр, букв, знаков препинания и управляющих символов, кроме того, в системах передачи информации применяются корректирующие коды [1, 2, 3].

    При использовании помехоустойчивого кодирования определяются энергетический выигрыш от кодирования (ЭВК):

    ЭВК = , дБ

    где h1 и h2 - отношение сигнал/шум сравниваемых систем

    α – коэффициент, выравнивающий скорость систем.

    Пример расчета кодера

    1. Определить количество разрядов для кодирования всех уровней

    квантования, L = 512, сообщения α (t):

    k = log2L = log2512 = 9

    1. Находим избыточность кода с проверкой на четность:



    1. Для примера, возьмем 307 уровень, в двоичной системе счисления его можно представить как


    в1

    в 2

    в3

    в4

    в5

    в6

    в7

    в8

    в9

    1

    0

    0

    1

    1

    0

    0

    1

    1


    Для данного числа дополнительный символ b10 = 1.

    Проверим наши рассуждения, используя суммирование по модулю 2:

    b10 = b1+ b2 + b3+ b4 + b5+ b6 + b7 + b8 + b9 = 1,

    тогда, полная кодовая комбинация принятого уровня будет иметь вид:


    b1

    b2

    b3

    b4

    b5

    b6

    b7

    b8

    b9

    b10

    1

    0

    0

    1

    1

    0

    0

    1

    1

    1


    1. Определимчисло двоичных символов в секунду:

    Vk = , где t=1/fd; fd ≥ 2Fв,

    для примера возьмем Fв = 3,4 кГц и стандартную частоту дискретизации fd = 8 кГц, t = 125 мкс.

    Длительность двоичного импульса:

    Т = 1/Vk = = 12,5 мкс

    После изучения теоретической части необходимо выполнить следующее:

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

    - провести расчет кодера (исходные данные в таблице 9.1).

    4.2 Сообщения, сигналы и помехи

    Практическое занятие 3 (объем 1ч.)

    1   ...   8   9   10   11   12   13   14   15   ...   20


    написать администратору сайта