ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Кодуючий пристрій для коду файера
         

     

    Комунікації і зв'язок

    Міністерство загальної та професійної освіти РФ

    Московський енергетичний інститут

    (Технічний Університет)

    Філія у місті Смоленську

    Кафедра Обчислювальної Техніки

    Розрахунково-пояснювальна записка до курсової роботи з дисципліни:

    "Передача інформації"

    Тема: "Кодуючий пристрій для коду Файр".

    Викладач: Каевченко М.
    А.

    Група: ВМ-1-97

    Студент: Иванов А. Е.

    До захисту:

    Смоленськ 2000 р .

    Анотація.

    Курсова роботапо курсу "Передача інформації".
    Викладач: Каевченко Михайло Антонович.

    Автор роботи: Іванов Олексій Євгенович.
    Назва роботи: "Кодуючий пристрій для коду Файр"
    Кількість сторінок:
    Кількість ілюстрацій:
    Мета курсової роботи: Побудувати математичну модель заданогокоригуючого коду, знайти утворюючу матрицю коду, технічно реалізуватизасоби для його кодування/декодування (на рівні принциповоїсхеми).

    У главі 1 розрахунково-пояснювальної записки виконаний огляд теоретичнихаспектів, пов'язаних з циклічними кодами.
    У главі 2 розрахунково-пояснювальної записки виконано розробкупринципової схеми кодує пристрої.
    У главі 3 розрахунково-пояснювальної записки виконано аналіз технічногозавдання.
    Глава 4 розрахунково-пояснювальної записки містить опис роботикодує пристрої.
    Глава 5 розрахунково-пояснювальної записки обгрунтовується вибір елементів івузлів у принциповій схемі.
    Глава 6 розрахунково-пояснювальної записки містить специфікації нарозроблювану систему (модульна структура, опис користувачаінтерфейсу, специфікація на програмні модулі).
    У главі 7 розрахунково-пояснювальної записки обраний метод тестування,наведені результати тестування.
    Глава 8 розрахунково-пояснювальної записки містить інструкцію користувача пороботі в системі і обмеження на розроблену програму.

    Введення.

    Два наукових напрямки покликані зіграти особливу роль в науково-техніч -зації прогрес. Це-теорія систем і теорія інформації. Особливістьзазначених наукових напрямків полягає в їх загальності. Дійсно,теорія систем і теорія інформації мають пряме відношення до всіх іншихнаук, до явищ будь-якої фізичної природи і до всіх видів діяльностілюдини. Досить навести таке категоричне твердження з цьогоприводу: "Інформація є загальна властивість матерії і міра організаціясистем ". У ході науково-технічної революції наука про інформаціюрозвивалася як дисципліна, що має ряд напрямків. Діяльність людейпов'язана з переробкою та використанням матеріалів, енергії та інформації.
    Відповідно розвивалися наукові технічні дисципліни, що відображаютьпитання технології, енергетики та інформатики. Інформаційна технікає порівняно новою галуззю, яка отримала найбільшу розвиток наетапі розвитку та застосування електронних обчислювальних машин (ЕОМ) іавтоматизованих систем управління (АСУ). В ряду нових дисциплін
    (дослідження операцій, системотехніка, адміністративне управління)інформаційні наука і техніка займають одне з базових положень. Доінформаційної техніки відносяться засоби, що служать для сприйняття,підготовки, передачі, переробки, зберігання та подання будь-якоїінформації, що отримується від людини, природи, машини, взагалі від будь-якогооб'єкта спостереження та управління. Комплексне застосування цих засобівпризводить до створення великих і складних інформаційних систем. З передачею іобробкою інформації пов'язані дії будь-якого автоматичного пристрою,поведінка живої істоти, творча діяльність людини, розвиток наукиі техніки, економічні та соціальні перетворення в суспільстві та самажиття. Якщо матеріал (речовина) і енергія порівняно повно вивчені, тозакони одержання, перетворення і використання інформації ще є непевною областю, що приховує в собі багато несподіваних проявів.

    Сучасні системи телемеханіки краще захищені від перешкод за рахунокбільш досконалих кодів, а стиснення даних дозволяє збільшити обсягпереданої інформації по тих же каналах зв'язку.

    У даній роботі буде розглянуто перешкодозахищеність (абокоригувальний) код - код Файр. Це циклічний код, що виявляє іпакети виправлення помилок. Особливості цього коду будуть розглянутідалі.

    1. Теоретичне введення.

    1.1. Постановка завдання.

    Побудувати математичну модель заданого коригуючого коду, знайтиутворюючу матрицю коду, технічно реалізувати кошти для йогокодування/декодування (на рівні принципової схеми).

    Тип коду: Файр

    Число переданих повідомлень: 63

    кодує здатність коду: bs = 3 br = 4

    1.2. Поняття двійкових циклічних кодів.

    1.2.1. Загальні поняття та визначення.

    Будь-груповий (n, k) - код може бути записаний у вигляді матриці,що включає k лінійно-незалежних рядків по n символів, і, навпаки, будь-якасукупність k лінійно-незалежних n-розрядних кодових комбінацій можерозглядатися як твірна матриця деякого групового коду. Середвсього різноманіття таких кодів можна виділити коди, у яких рядкаутворюють матриць пов'язані додатковою умовою циклічності.

    Всі рядки що утворює матриці такого коду можуть бути отриманіциклічним зсувом однієї комбінації, званої що утворює для даногокоду. Коди, що задовольняють цій умові, отримали назву циклічних.

    Циклічні коди відносяться до числа блокових систематичних кодів, уяких кожна комбінація кодується самостійно (у вигляді блоку) такимчином, що інформаційні k і контрольні m символи завжди знаходяться навизначених місцях.

    Можливість виявлення та виправлення практично будь-яких помилок привідносно малою надмірності в порівнянні з іншими кодами, а такожпростота схемною реалізації апаратури кодування та декодування зробилиці коди широко поширеними.

    Теорія циклічних кодів базується на теорії груп і алгебримногочленів над полем Галуа.

    Многочлен (поліном), який можна представити у вигляді добуткумногочленів нижчих ступенів, називають які наводяться (у цьому полі), вІнакше не наводяться. Непріводімие багаточлени грають роль,схожу з простими числами в теорії чисел. Непріводімие багаточлени P (X)можна записати у вигляді десяткових або двійкових чисел, або у виглядіалгебраїчного многочлена.

    Многочлен в полі двійкових чисел називається непріводімим, якщо вінділиться без остачі тільки на себе або на одиницю.

    В основу циклічного кодування покладено використання непріводімогомногочлена P (X), який стосовно циклічним кодами називаєтьсяутворюють, генератором або виробляють многочленів (поліномом).

    1.2.2. Методи побудови циклічних кодів.

    В якості інформаційних символів k для побудови циклічних кодівберуть комбінацію двійкового коду на всі поєднання. У загальному випадку, якщозадану кодову комбінацію G (X) помножити на який утворює многочлен P (X),вийде циклічний код, що володіє тими чи іншими коригуючимивластивостями в залежності від вибору P (X). Однак у цьому коді контрольнісимволи m будуть розташовуватися в найрізноманітніших місцях кодовоїкомбінації. Такий код не є систематичним, що ускладнює йогосхемних реалізацію. Ситуацію можна значно спростити, якщо контрольнісимволи приписати наприкінці коду, тобто після інформаційних символів.

    Для цієї мети зручно скористатися наступним методом.
    1. Множимо кодову комбінацію G (X), яку ми хочемо закодувати, на Одночлен Xm, що має ту ж ступінь, що і утворить многочлен P (X).
    2. Ділимо твір G (X) Xm на який утворює многочлен P (X).

    G (X) Xm/P (x) = Q (X) + R (X)/P (X),

    (1.1)

    де Q (X) - частка від ділення; R (X) - залишок.

    Множачи вираз (1) на P (X) і переносячи R (X) в іншу частинурівності, відповідно до правил алгебри двійкового поля, тобто без змінизнака на зворотний, отримуємо

    F (X) = G (X) P (x) = G (X) Xm + R (X).

    (1.2)

    Таким чином, згідно (2), циклічний код, тобто закодованеповідомлення F (X), можна створити двома способами:

    1) множенням однієї з комбінацій двійкового коду на всі поєднання

    [комбінація Q) (X) до тієї ж групи того ж коду , що і задана комбінація G (X)] на який утворює многочлен P (X).

    2) множенням заданої кодової комбінації G (X) на Одночлен Xm, що має ту ж ступінь, що і утворить многочлен P ( X), з додаванням до цього твору залишку R (X), отриманого після поділу твори G (X) Xm на який утворює многочлен P (X).

    Властивості утворює многочлена:
    1. Усі дозволені комбінації циклічного коду діляться на який утворює многочлен без остака.
    2. На що утворить многочлен ділиться без залишку двочлен Xn 1.


    1.3. Технічні засоби кодування для двійкових циклічних кодів.

    Основу кодують і декодер двійкових циклічних кодівскладають регістри зсуву із зворотними зв'язками, що дозволяють здійснюватияк множення, так і ділення многочленів з приведенням коефіцієнтів змодулю 2.

    Всі відомі кодують пристрої для будь-яких типів циклічнихкодів, виконані на регістрах зсуву, можна до двох типів схем згіднометодам кодування розглянутим вище.

    За допомогою схем першого типу обчислюються значення перевірочних символівшляхом безпосереднього ділення многочлена G (X) Xm на який утворює многочлен
    P (X). Це робиться за допомогою регістра зсуву, що містить nk розрядів
    (рис.1.1). У цій схемі коефіцієнти кодованого многочлена беруть участь узворотного зв'язку не через nk зрушень, а відразу з першого такту. Це дозволяєусунути розрив між інформаційними і перевірочних символами.

    Рис. 1.1. Кодуючий пристрій для циклічного коду на основі (nk)

    - розрядного регістра зсуву.

    У початковому стані ключ К1 знаходиться в положенні 1, а ключ К2замкнений. Інформаційні символи одночасно надходять як в лінію зв'язку,так і в регістр зсуву, де за k тактів утворюється залишок. Потім ключ К2розмикається, ключ К1 переходить в положення 2 і залишок надходить у лініюзв'язку.

    За допомогою схем другого типу обчислюють значення перевірочних символівяк лінійну комбінацію інформаційних символів, тобто побудовані на основісистематичних кодів. Кодуючий пристрій будується на основі k -розрядного регістра зсуву. Виходи комірок пам'яті підключаються до суматори вланцюга зворотного зв'язку відповідно до виду генераторного многочлена
    1.4. Коди Файр.

    Під пакетом помилок довгою b розуміють такий вид комбінації перешкоди,в якому між крайніми розрядами, ураженими перешкодами, міститься b-2розряду.

    Коди Файр можуть виправляти пакет помилок довгою bs і виявлятипакет помилок довгою br (в кодах Файр поняття кодового відстані d НЕвикористовуються).

    створюючий многочлен коду Файр P (X) ф визначається з вираження

    P (X) ф = P (X) (Xc-1),
    (1.3)
    Де P (X) - непріводімий многочлен ступеня L.
    З принципу побудови коду випливає, що

    L? bs, (1.4) з? bs + br-1
    (1.5)
    При цьому з не повинно ділиться без остачі на число e, де e = 2L -1 (1.6)

    Непріводімий многочлен P (X) вибирають з таблиці, згідно рівняння
    (4), але так, щоб задовольнялося умова (6). Довжина слова n дорівнюєнайменшому загальному кратному чисел c і e, тому що тільки в цьому випадкумногочлен Xn +1 ділиться на P (X) ф без залишку: n = НОК (e, c) (1.7)
    Число контрольних символів m = c + L (1.8)

    ВИСНОВКИ. У даній главі були розглянуті теоретичні аспекти побудовидвійкових циклічних кодів. Також було обрано кодує пристрій наоснові nk розрядного регістра. З'ясували, що спершу необхідно знайтистворюючий многочлен (за відповідними формулами), а потім на основі цьогомногочлена будувати кодує пристрій. У наступних розділах буденаведена реалізація кодує пристрій коду Файр на ЕОМ і наведенапринципова схема кодера.

    2. Розробка схеми кодує пристрої.

    2.1. Побудова коду Файр.

    Згідно з технічним завданням та у відповідності з даними, отриманимина курсову роботу створюючий многочлен Файр P (X) ф. Відповідно до формули (1.4)знаходимо L? 3, звідки можна взяти L = 3. З відповідних таблицьвибираємо непріводімий многочлен P (X) = x3 + x +1 = 1011.

    Згідно з формулою (1.5): c? 3 +4-1? 6, звідки можна взяти з = 6.
    По формулі (1.6) отримуємо е = 23-1 = 7. Бачимо, що з на е без остачі не ділиться.
    Число перевірочних розрядів, підставляючи в формулу (1.8) значення L і C,отримаємо m = 6 +3 = 9.
    Тоді довжина коду відповідно до (1.7) дорівнює n = НОК (6,7) = 42
    Тоді код Файр має вигляд (42,33).
    Створюючий многочлен Файр P (X) ф дорівнює

    P (X) ф = (x3 + x +1) (x6 +1) = x9 + x7 + x6 + x3 + x +1 = 1011001011 (2.1 )

    2.2. Структурна схема кодує пристрої.

    Відповідно до многочленів (2.1) схема отримання перевірочнихсимволів буде мати 9-ти розрядний регістр з двома ключами.

    Структурна схема кодера представлена на рис. 2.1

    Рис 2.1. Структурна схема кодера.

    ВИСНОВКИ. У цьому розділі отримано створюючий многочлен Файр, а такожкількість інформаційних символів і перевірочних. По виду утворюємногочлена визначається розташування суматори в кодує пристрої, атакож кількість розрядів в регістрі зсуву. Далі буде розглянута роботапринципової схеми і реалізованої програми.

    3. Аналіз технічного завдання.

    Згідно з технічним завданням на курсову роботу необхідно побудуватиматематичну модель заданого коригуючого коду, знайти утворюючуматрицю коду, технічно реалізувати кошти для йогокодування/декодування (на рівні принципової схеми), розробитибагатомодульним програму реалізовує кодує пристрій на ЕОМ ..

    Програма повинна мати стандартний інтерфейс, що задовольняєприйнятим нормам, працювати правильно на всіх допустимих персональних ЕОМ,текст програми повинен бути зручно-читається і зрозумілий користувачу.

    З метою спрощення процесу розбору тексту програми, програмаскладається з кількох модулів, кожен з яких виконує певніфункції.

    Можна виділити п'ять основних модулі:
    V Основна програма.

    У ньому відбувається обробка результатів виконання інших модулів програми. А саме: інтерфейс, модуль введення даних, модуль виводу даних, модуль обробки помилок. Відбувається виконання алгоритму.
    V Модуль вводу.

    У ньому відбувається діалог користувача з програмою. Зокрема тут відбувається введення інформаційних символів.
    V Модуль виводу.

    Тут реалізований висновок результатів виконання програми в зручній для сприйняття формі. Результати представлені у вигляді таблиці. Також тут реалізований висновок що утворює матриці.
    V Модуль обробки помилок.

    У ньому обробляються помилки при введенні і реалізований захист програми від збоїв.
    V Інтерфейс.

    У цьому блоці реалізований інтерфейс програми взаємодії користувача з ЕОМ.

    Інтерфейс складається з горизонтального меню і рядка статусу.
    Основні пункти меню:
    V Про програму.

    У цьому пункті представлена коротка інформація про програму.
    V Завдання.

    Викладено повна постановка задачі.
    V Робота .

    Тут реалізовано введення даних і виконання основного алгоритму, одержання результатів і виведення їх на екран у зручній для сприйняття формі.

    Програма повинна коректно закінчувати свою роботу, без помилкових ситуацій.

    ВИСНОВКИ. У цьому розділі розглянуто умови реалізації програми іпоставлені конкретні цілі. Тут була згадка про модульній структуріпрограми, в наступному розділі модульна структура буде розглянутадокладніше. Також будуть розглянуті аспекти, пов'язані з реалізацієюпризначеного для користувача інтерфейсу.

    Робота пристрою.

    Принципова схема кодує пристрою наведена у додатку.

    Дані на вхід кодує пристрої надходять починаючи від найстаршогорозряду. Інформація надходить на DD12.1 суматор за модулем 2, виконанийна ІМС К555ІП5. Як тільки ми включили харчування на схему, то через ланцюжок
    R4, C3, DD17.2, DD17.3 відбувається початковий скидання лічильників DD10, DD11.
    Це виходить тому що в початковий момент часу, при різкомупідключенні живлення конденсатор С3 не встигає зарядиться. На ньому виходитьлогічний нуль. Цей нуль через інвертори DD14.2, DD14.3, виконані на
    К155ЛІ1, перетворюється на одиницю і надходить на входи лічильників РЕ, лічильникпереходить в режим запису, внаслідок чого відбувається запис у лічильникиданих із входів D1-D4. Але так як ці входи заземлені, то на виходилічильника запишуться нулі. Сталося початкове обнулення. Після закінченнякороткого проміжку часу конденсатор С3 заряджає до рівня логічноїодиниці і лічильники переходять в режим рахунку імпульсів. Так як лічильникиобнуляється то на тригер DD15.2 на інверсний вхід R надходить нуль ітригер встановиться в нуль. Цей нуль на виході інвертора DD14.1становітсяодиницій і надходить на інверсний вхід R тригера DD15.1. Тригер зберігаєсвоє попереднє нульове значення, тому що вхід K заземлений, а на J надходитьнуль з лічильника. Тоді на елемент DD13.3 буде надходити нульовий рівень.
    Але DD13.3 є елементом "І", тому на його виході завжди буде нуль.
    З іншого боку з інверсно виходу тригера на "І" надходить логічнаодиниця і вихідний сигнал буде залежати від вхідного. Ця ж одиницянадходить на DD13.5. Елементи DD13.3, DD13.4, DD13.5 виконують роль ключів.
    Коли на виході тригера DD15.1 логічний нуль, то замкнутий ключі К1, а К2знаходиться в положенні 1 [см. Теоретичне введення], сигнал із входупрямо надходить на вихід, а в регістрах формується залишок. Якщо навиході тригера DD15.1 логічна одиниця, то ключі К1 розімкнуться, а К2знаходиться в положенні 2.

    Вхідний сигнал через ключ DD13.4 надходить на вихід, а через ключ
    DD13.5 на вхід регістра DD1. Запис в регістр відбувається послідовноіз зсувом вліво, відповідно до тактіруемимі імпульсами. У схемі дев'ятьрегістрів (Ступінь утворює многочлена). Кожен регістр виконуєзатримку на один такт. Поки тригер DD15.1 знаходиться в нулі в регістрахза K-тактів обчислюються перевірочні символи.

    Тригер DD15.2 керує роботою лічильників і тригером DD15.1.
    Як тільки лічильники дорахували до k, тобто пройшло k символів то DD15.1перекидається в одиницю, ключі DD13.5, DD13.4 відкриваються, а DD13.3закривається і з регістрів на вхід надходять перевірочні символи за nkтактів. Коли лічильник дорахував до n тригер DD15.2 перекинеться в одиницюі станеться обнуління регістрів, лічильників і тригера DD15.1, тобто схемаготова приймати нову комбінацію.

    Часові діаграми роботи кодера наведено у додатку.

    ВИСНОВКИ. У цьому розділі була подробна описана робота принципової схеми.
    Далі буде розглянуто окремі елементи принципової схеми та їхопис.

    5.Вибор вузлів принципової схеми.

    5.1. Розрахунок генератора тактових імпульсів

    Генератор тактових імпульсів на ІМС DD1 К555АГ3. Принципова схемагенератора наведена на ріс.5.1. Період коливань імпульсів одержуваних завтогенератора Т = 1 мс.

    Тривалість імпульсу: Tи = 0.5т = 0.5 мс.

    Загальна тривалість паузи: tп = 0.5т = 0.5 мс.

    Розрахуємо параметри RC елементів генератора:

    ;

    ;

    здався С1 = С2 = 0.1 мкФ, маємо:

    R1 = 5 кОм; R2 = 5 кОм.

    5.2. Лічильник К555 ІЕ10

    Для підрахунку числа імпульсів використовуємо два лічильника К555 ІЕ10.

    Мікросхема К555 ІЕ10 - це синхронний, чотирирозрядний, реверсивний,двійковій-десятковий лічильник з попереднім записом і виходом перенесення.
    Умовне позначення і цокольовка дані на рис. 5.2.

    Особливістю даного лічильника є його побудова із синхронного принципом, тобто всі тригери перемикаються одночасно від одного тактового імпульсу. Лічильник запускається позитивним перепадом тактового імпульсу, що подаються на вхід синхронізації С. Скидання всіх тригерів в нульове стан асинхронний по загальному входу скидання R, тобто здійснюється напругою низького рівня, незалежно від сигналів діють на входах С, РЕ, СЕР, СЕТ.

    Лічильник встановлюється в попередній стан за наявності на вході паралельної завантаження РЕ напруги низького рівня. У цьому випадку дозволена подача сигналів на тригер через входи паралельної інсталяції

    D0 - D3 в момент приходу позитивного перепаду на вхід С.

    Для синхронного каскадування мікросхема має два входи дозволу
    СЕР і СЕТ, а також вихід ТЗ (закінчення рахунку). Лічильник вважає тактовіімпульси якщо на входах СЕТ і СЕР напруги високого рівня.

    Вхід СЕТ подальшого лічильника з'єднується з виходом ТЗ попереднього. Навиході ТЗ з'явиться напруга високого рівня, якщо вихідний код лічильника
    1111 = 15, а на вході СЕТ присутня напруга високого рівня. Станилічильника наведені в таблиці 1.

    Таблиця 1.

    | Режим роботи | Входи | Виходи |
    | | R | C | CЕР | СЕТ | РЕ | Dn | Qn | ТЗ |
    | Скидання | 0 | Х | Х | Х | Х | Х | 0 | 0 |
    | Паралельна | 1 | (| Х | Х | 0 | 0 | 0 | 0 |
    | завантаження | | | | | | | | |
    | | 1 | (| Х | Х | 0 | 1 | 1 | 1 |
    | Рахунок | 1 | (| 1 | 1 | 1 | Х | Рахунок | 1 |
    | Зберігання | 1 | Х | Х | 0 | 1 | Х | Qn | 1 |
    | | 1 | Х | 0 | Х | 1 | Х | Qn | 1 |

    5.3. Тригер К555 ТВ6

    Мікросхема К555 ТВ6 містить два JK тригера із загальним входом харчування ізображена на Рис .5.3. Вхід синхронізації С у всіх тригерів інверснийдинамічний, тому дані зі входів J і K переносяться на вихід Q понегативного перепаду імпульсу С. Коли імпульс переходить від високогорівня до низького сигнали на входах J і K не повинні мінятися. Станидля тригера наведено в таблиці 2.

    Таблиця 2. Стану тригера К555 ТВ6.

    | роботи Режим | Входи | Виходи |
    | | R | J | K | C | | |
    | Асинхронний скидання | 0 | Х | Х | Х | 0 | 1 |
    | Переключення | 1 | 1 | 1 | | = 1 | = 0 |
    | Зберігання | 1 | 0 | 0 | | 1 | 0 |
    | Завантаження 1 | 1 | 1 | 0 | | 1 | 0 |
    | Завантаження 0 | 1 | 0 | 1 | | 0 | 1 |

    5.4. Регістр К155ІР13.

    Мікросхема К155ІР13 є універсальним восьмирозрядних регістромзрушення з великими функціональними можливостями. Регістр може працювати внаступних режимах: послідовного введення інформації з о зрушенням вправо;

    послідовного введення інформації з о зрушенням уліво; паралельного введення;зберігання; установка нулів (очищення, скидання).

    Мікросхема має наступні висновки (рис. 5.4): інформаційні входипослідовного введення інформації - DR при зсуві вправо і DL при зсувівліво; вісім входів D0-D7 для паралельного введення; тактовий вхід С;керуючі входи S0 і S1 для вибору режиму; вхід R для установки тригерівв нульове стан і вісім виходів від розрядів Q0-Q7.

    Рис. 5.4. Регістр К155ІР13.

    Робота регістра в режимі послідовного введення із зсувом вправовідбувається при S1 = 0 і S0 = 1. Інформація в послідовному коді подається навхід, починаючи з молодших розрядів. Написання та зсув усього числа на один розрядвідбувається з кожним перепадом 0,1 тактових імпульсів.

    Послідовний введення із зсувом вліво здійснюється при S1 = 1 і S0 = 0.
    Вхідна інформація повинна надходити на вхід DL зі старших розрядів.

    Для паралельного введення з входів D0-D7 на обох керуючих входахповинно бути S1 = S0 = 1. Інформація з входів D0-D7 буде записана в тригери із'явиться на виходах Q0-Q7 по перепаду 0,1 тактового імпульсу.

    Щоб уникнути збоїв, зміна станів керуючих входів S1 та S0 повиннавідбуватися при С = 1. Коли на обох керуючих входах S1 = S0 = 0, тригерине перемикаються, тобто має місце режим зберігання. Установка нулів
    (очищення регістру) здійснюється імпульсом U0 на вході R. Очищеннярегістру відбувається незалежно від стану інших входів. Під часдії імпульсу R = 0 регістр не діє. При виконанні всіх іншихоперацій необхідно підтримувати R = 1. Робота регістра наведена в таблиці
    3.

    Таблиця 3.

    | Входи | Виходи | Режим роботи |
    | R | C | S0 | S1 | DR | DL | Di | Q0 | Q1-Q6 | Q7 | |
    | 1 | (| 1 | 1 | 1 | X | Dni | Dn0 | Dn1 ... | Dn7 | Паралельний |
    | | | | | | | | | Dn6 | | введення. |
    | | | | | | | | | | | Зберігання |
    | 1 | (| 0 | 0 | X | X | X | Qn0 | Qn1 ... | Qn7 | |
    | | | | | | | | | Qn6 | | |
    | 1 | (| 1 | 0 | X | 0 | X | Qn1 | Qn2 ... | 0 | Зрушення вліво |
    | | | | | | | | | Qn7 | | |
    | 1 | (| 1 | 0 | X | 1 | X | Qn1 | Qn2 ... | 1 | |
    | | | | | | | | | Qn7 | | |
    | 1 | (| 0 | 1 | 0 | X | X | 0 | Qn0 ... | Qn6 | Зсув вправо |
    | | | | | | | | | Qn5 | | |
    | 1 | (| 0 | 1 | 1 | X | X | 1 | Qn0 ... | Qn6 | |
    | | | | | | | | | Qn5 | | |
    | 0 | x | x | x | X | x | X | 0 | 0 ... 0 | 0 | Скидання |

    ВИСНОВКИ. У цьому розділі були описані основні елементи, що застосовуютьсяпри реалізації принципової схеми кодера. Також була дана їх короткахарактеристика та способи включення елементів. Усі використовувані елементи
    -ТТЛ. У наступних розділах буде розглянута програмна реалізаціякодує пристрою (його математична модель).

    6. Опис розробки системи.

    6.1. Модульна структура системи.


    Як уже говорилося у другому розділі програма складається з п'яти модулів:

    - Основна програма.

    - Модуль вводу.

    - Модуль виводу. < p> - Інтерфейс.

    - Модуль обробки помилок.
    Модульна структура програми представлена на малюнку 6.1

    Рис 6.1 Модульна структура програми.

    Користувач веде діалог з програмою через інтерфейс. Від інтерфейсууправління передається в Основну програму, де аналізуються командикористувача і виконується передача керування відповідним модулів.
    Якщо користувач вибрав пункт меню і пункт підменю, тоуправління від Основний програми передається в Модуль введення і далікористувач веде діалог з цим модулем. Як тільки натиснута клавіша
    , То управління бере Модуль обробки помилок. Даний модульперевіряє виконання обмежень і виявляє помилки при введенні. Якщо помилокні, то управління передається в Основну програму і далі в Модульвиводу. А інакше користувачеві надається шанс ще раз ввести дані.

    6.2. Опис інтерфейсу користувача.

    6.2.1. Меню системи.

    Інтерфейс системи виконаний в графічному режимі з дотриманням всіхпрейскуранту. Екран поділений на три частини: верхня частина --горизонтальне меню з випадають вікнами; нижня частина - рядок стану;середня частина - вікно діалогу.

    Горизонтальне меню складається з трьох пунктів:

    V Робота.

    У цьому пункті передбачено меню, що випадає для полегшення пошуку відповідного пункту. У підменю знаходяться наступні пункти:

    V Введення.

    V Висновок

    V Вихід.

    V Про програму.

    V Допомога.

    Пересування по меню здійснюється за допомогою клавіш управліннякурсором. Кожен пункт меню активізується при натисканні клавіші.
    Обробку пунктів меню здійснює Основна програма. У неї передаєтьсяуправління та відповідні координати пунктів на виконання.

    У пункті меню, у підпункті здійснюється введенняданих, необхідних для роботи програми. При цьому в Модулі вводупередбачено редагування вводиться результату. У підпункті відбувається виконання алгоритму і висновок що утворює матриці на екран узручному для візуалізації вигляді.

    У підпункті відбувається попередження користувача про вихід зпрограми з відповідними запитами.

    У пункті дана коротка анотація програми.

    У пункті представлена допомогу з обробки пунктів меню і післявідповідним клавішах.

    6.2.2. Обробка помилкових ситуацій.

    У програмі передбачений захист від введення нестандартних даних, атакож захист від різних натиснення клавіш. Для обробки цих ситуаційпередбачений Модуль обробки помилок. Користувач може вводити тільки 0або 1.

    Якщо користувач ввів помилково неправильні дані, то в нього єможливість виправитися на стадії введення. Для цих цілей у програміпередбачено повторне введення з попередніми даними.

    6.3. Специфікація на програмні модулі.


    Процедура initgrf.

    Вхідні параметри: Ні.

    Вихідні параметри: Ні.

    Виконувані функції: Ініціалізація графіки.

    Особливостей: Ні.


    Функція Sum (F, P: Byte): Byte;

    Вхідні параметри: F, P: Byte

    Вихідні параметри: Sum

    Виконувані функції: Підсумовування за модулем 2

    Особливостей: Ні.


    Процедура Dopoln (Var F: Mass1);

    Вхідні параметри: F: Mass1

    Вихідні параметри: F: Mass1

    Виконувані функції: Множення на старшу ступінь утворює многочлена .

    Особливостей: НЕТ.

    Процедура Delenye (F: Mass1; P: Mass2);

    Вхідні параметри: F: Mass1; P: Mass2

    Вихідні параметри: ні.

    Виконувані функції: Розподіл многочлен на многочлен

    Особливостей: Чи має свої особливості.

    Процедура Ed_Matrix (Var A: Two_Matrix);

    Вхідні парамери: Var A: Two_Matrix

    Вихідні параметри: Var A: Two_Matrix

    Виконувані функції: Складання одиничної матриці. < p> Особливості: ні.

    Процедура Obr_Matrix (Var A: Two_Matrix);

    Вхідні параметри A: Two_Matrix

    Вихідні параметри: A: Two_Matrix

    Виконувані функції: Отримання що утворює матриці

    Особливостей: ні.

    Процедура Visual (Var sa: mass);

    Вхідні параметри: Var sa: mass

    Вихідні параметри: Var sa: mass

    Виконувані функції: Введення інформаційних символів.

    Особливостей: немає


    Процедура OutPutObr_Matrix (x, y: Integer; Obr_Matr:

    Two_Matrix);

    Вхідні параметри: x, y: Integer; Obr_Matr:

    Two_Matrix);

    Вихідні параметри: Ні.

    Виконувані функції: Виведення що утворює матриці.

    Особливостей: Чи є універсальною.

    Процедура OutPut (x, y: Integer; F, A: Mass1);

    Вхідні параметри: x, y: Integer; F, A: Mass1.

    Вихідні параметри: Ні.

    Виконувані функції: Виведення отриманої кодової комбінації.

    Особливостей: ні.

    Функція _Exit (Fon, Color: Integer; Col_Simv: Byte): integer;

    Вхідні параметри Fon, Color: Integer; Col_Simv: Byte

    Вихідні параметри: _Exit: integer.

    Виконувані функції: вихід з програми

    Особливостей: немає

    Основна програма

    Вхідні параметри: ні.

    Вихідні параметри: Ні.

    Виконувані функції: Дмитро Старців в себе всі процедури і управляє роботою.

    Особливостей: Ні.

    ВИСНОВКИ. У цьому розділі були описані принципи розробки програми іінтерфейсу. Дана модульна структура програми і міжмодульних зв'язку. Описанопринцип роботи програми і дана специфікація на програмні модулі. Якщоце все об'єднати, то не важко буде розібратися в окремих деталяхпрограми. Далі буде розглянуто один з основних заходів припрограмуванні - тестування.

    7. Тестування.

    7.1. Вибір методики тестування.

    Без тестування програм неможливо створити правильно працюєпрограму, тому що завжди існують якісь граничні умови, замежами яких програма дає помилки. При цьому не слід плутатиналагодження програм і тестування.

    Налагодження програм - використовується при неправильній роботі програми.

    Тестування - шукає помилки.
    Існує багато методів тестування:

    1) Статичне тестування є найбільш формалізованим та автоматизуються методом перевірки програм. Як еталони застосовуються правила структурної побудови програмних модулів і обробки даних. Перевірка ступеня цих правил проводиться без використання об'єктного коду програми шляхом формального аналізу тексту програми на мові програмування. Оператори і операнди тексту програм при цьому аналізується в символьному вигляді, тому такий метод називають символьним тестуванням.

    2) детермінована тестування є найбільш трудомістким та деталізує. При детермінованому Тестування контролюють-естся кожна комбінація вихідних еталонних даних і відповідна їй комбінація результатів функціонування програми. Це дозволяє виявляти відхилення результатів від еталона і реалізують даних, при яких це відхилення відбулося.

    3) Стохастичне тестування застосовується в тих випадках, коли неможливо в складних задачах перебрати всі комбінації вихідних даних і проконтролювати результати функціонування програми на кожному з них. При цьому вихідні тестові дані задаються безліччю випадкових величин з відповідними розподілами і для порівняння отриманих результатів використовуються також розподілу випадкових величин. Стохастичне тестування застосовується в основному для виявлення помилок.

    4) Тестування в реальному масштабі часу. У процесі такого тестування перевіряється виконання програм та обробка вихідних даних з урахуванням часу їх надходження, тривалості та пріоритетності обробки, динаміка використання пам'яті і т.д.

    5) При висхідному тестуванні насамперед перевіряються модулі нижніх ієрархічних рівнів, до яких поступово підключаються що викликають їх модулі. При цьому забезпечується працездатність викликаються компонент і функції групи програм перевіряються в їх природному виконанні. Основні труднощі полягають у необхідності повного оновлення тестових наборів при підключенні кожної нової програми більш високого рівня.

    6) При низхідному тестуванні перевірки починаються з програм управління та організації обчислювального процесу. Спочатку тестується керуюче ядро комплексу програм і програми вирішення функціональних завдань, розміщених на вищих ієрархічних рівнях.

    До них поступово підключаються для тестування програми подальших нижчих ієрархічних рівнів. Перевагою такого методу є можливість збереження і розвитку наборів тестових даних у міру підключення програм нижніх рівнів.

    На практиці звичайно використовуються три стратегії тестування:

    1) Тестування програм як "Чорного ящика". Має мету з'ясування обставин, в яких поведінка програм не відповідає специфікації. Тестові дані складаються і використовуються без урахування знань про внутрішню структуру програми.

    2) Тестування програм як "Білого скриньки". Тестові набори даних проектуються на основі внутрішньої логіки програми. Мета тестування

    - перевірити кожну гілку, кожний шлях і кожен оператор. Специфікація програми при цьому не використовується.

    3) Реальна стратегія зазвичай поєднує обидва методи. За допомогою методу

    "чорного ящика" робиться:

    V Перевірка в нормальних умовах.

    V Аналіз граничних значень.

    V Перевірка у виняткових ситуаціях.

    V Припущення про помилку.

    За допомогою методу "Білого скриньки" робиться:
    V Покриття операторів.
    V Покриття рішень.
    V Покриття умов.

    7.2. Результати тестування

    При тестуванні програми був використаний висхідний методтестування. За допомогою цього методу спочатку були протестовані окремімодулі програми, а потім і вся програма. Результати тестування показаніна малюнку Програми.
    Тестування системи включало в себе:
    - тестування введення різних набору даних;
    - отримання комбінацій для коду з будь-яким утворюючим многочленів;

    Тестування введення різних наборів кодових комбінацій не показало ніоднієї виключає ситуації.

    ВИСНОВКИ. У цьому розділі був обраний метод тестування системи. Урезультаті тестування були виявлені помилки, які згодом булиусунені. В результаті тестування було отримано, що програма єпрацездатною. Програма правильно знаходить утворюючу матрицю і будуєкод Файр ..

    8. Обмеження на розробку.

    Для виконання програми необхідно дотримувати деякі вимоги, асаме:
    1) Програма може працювати на персональних комп'ютерах з процесором не нижче 80486.
    2) Для реалізації інтерфейсу необхідно мати кольоровий монітор з адаптером не нижче VGA.
    3) RAM не нижче 8MB.
    4) Windows 95/98/NT

    8.1. Інструкція користувачеві.

    У програмі розроблений інтерфейс, що підходить під стандарти.
    Інтерфейс реалізований в реальному часі. Меню горизонтальне, звипадають вікнами. Головне вікно програми зображено на рис .. Програми
    2.
    Головне меню програми містить наступні пункти:
    1. Про програму - дана коротка анотація виконаної програми.
    2. Робота - містить підменю з пунктами:

    1. Введення - дозволяє користувачеві введення відповідних даних.

    Тут передбачений захист від некоректного вводу. У цьому пункті можна ввести будь-яку інформаційну комбінацію.

    2. Висновок - виконується алгоритм побудови утворюючої матриці, з наступним виведенням її на екран.

    3. Вихід - забезпечує вихід з програми. Використовується захист від випадкового виходу.

    Пункти меню активізуються натисканням клавіші.
    При появи кожного вікна в рядку статусу з'являється повідомлення проможливі дії.

    Пересування по меню здійснюється клавішами переміщення курсору наклавіатурі. Також використовується "гаряча клавіша" Esc. При натисканні на неївідбувається автоматичний вихід з програми.

    Висновок

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

    Всі елементи принципової схеми мають серії К155 або К55. Це одніз найпоширеніших і досить не дорогих вітчизняних мікросхем,легко доступний будь-якому користувачеві.

    Програма реалізована на мові Turbo Pascal 7.0. Це найбільшрозповсюджений на сьогоднішній день мова програмування. Тому впрограмі розібратися труднощів не буде.

    Кодування інформації найбільш актуальна в наші дні у зв'язку зрозвитком комп'ютерних мереж. Необх

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status