27 вересня 2007 р.

Особливості використання аналогових та цифрових осцилографів

Властивості цифрових осцилографів і аналізаторів

  • можливість індикації стану досліджуваних сигналів до момента синхронізації (момента виникнення збою);
  • вбудовані пастки для поодиноких імпульсів досліджуваних сигналів;
  • вбудовані пастки для комбінацій вхідних сигналів (аналізатори);
  • зв'язок з управляючою ЕОМ з допомогою стандартних інтерфейсів (IEEE 488, VXI).

Типи осцилографів

  • аналогові осцилографи ;
  • цифрові осцилографи .

В даний час аналогові осцилографи вже не випускаються.

Аналогові осцилографи призначені для дослідження аналогових сигналів.

Параметри аналогових осцилографів

  • смуга пропускання (0 Гц ... 1 ГГц). При смузі пропускання в 1 ГГц структура осцилографів дуже складна.
  • довжина фронту: переднього tп.ф. и заднього tз.ф. Оскільки вони близькі, то часто говорять про тривалість фронту tф і вважають, що вона характеризує і передній і задній фронти сигналу.

Відношення смуги пропускання і довжини фронту повинно задовільняти наступній нерівності: .

Для вибору аналогового осцилографа використовують наступне правило:

,

де F=1/T, T – період сигналу.

– задачі з аналоговими осцилографами.

f = 100 МГц, Tосц=1/f, tосц=0.1Тосц

Недоліки аналогових осцилографів

  • можна дивитись лише періодичні сигнали;
  • не можна дивитись передісторію сигналів;
  • немає процесора, каналів звязку, тому неможливе комлексування.

Цифрові осцилографи

Основні властивості цифрових осцилографів

  • можливість індикації стану досліджуваних сигналів до момента синхронізації (момента виникнення збою);
  • вбудовані пастки для поодиноких імпульсів досліджуваних сигналів;
  • зв'язок з управляючою ЕОМ з допомогою стандартних інтерфейсів (IEEE 488, VXI).

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

Також можна дивитись передісторію (до моменту синхронізації) оскільки в цифрових осцилографах використовується запис в пам'ять.

Цифрові осцилографи мають більш складну структуру в порівнянні з аналоговими осцилографами. Зараз цифровий осцилограф – це персональний комп'ютер з платою аналогово-цифрового перетворювача.

Найкращі цифрові осцилографи випускає фірма HP. Найбільш розповсюджена серія цифрових осцилографів є HP 54XXX:

Таблиця Цифрові осцилографи

Параметр

наймолодший представник сімейства

середній представник сімейства

найстарший представник сімейства

смуга пропускання

60 МГц

500 МГц

12000 МГц

кількість сигналів, які одночасно можна досліджувати

1

2

4

об'єм пам'яті на канал

1к х 8 розрядів

32к х 8 розрядів

256к х 12 розрядів

Цифровий осцилограф має вбудований в собі мультиметр.

Інформація від осцилографа зберігається на флопі-диску.

Також до осцилографа можна під'єднати принтер. Цифровий осцилограф має в собі вбудовані інтерфейси RS232, HPIB.

Ціна цифрового осцилографа може досягати $20 000.

25 вересня 2007 р.

Закон Амдала

Умови Закону Амдала

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

2. Нехай комп'ютерна система створена із S однакових простих універсальних пристроїв. Нехай припустимо, що при виконанні паралельної частини алгоритму всі S пристроїв завантажені повністю. Тоді максимально можливе прискорення
де – коефіцієнт, тобто частка послідовних обчислень.
Припустимо, що з якихось причин n операцій виконано послідовно, N - загальна кількість операцій.

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

Якщо послідовно виконуються m операцій, то число ярусів будь-якої паралельної форми алгоритму, не може бути менше n.

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

Формулювання закону Амдала не враховує тимчасових витрат на забезпечення обміну інформацією між обчислювальними вузлами.

Наслідок із закону Амдала: для того, щоб прискорити виконання програми в q разів необхідно прискорити не менше, ніж в q разів не менше, ніж (1-1/q) -у частину програми.

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

Закон Амдала деякою мірою допомагає відчути складність паралельного програмування: наприклад, для прискорення виконання програми в 100 разів, необхідно, щоб 99,99% операцій в програмі можливо було б виконувати з 100-кратним розпаралеленням.

Характеристики і робота кеша

Характеристики кеша

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

Робота кеша

Детальний розгляд системи кеша залишено поза межами цієї статті. В даній статті пояснено роботу лише одного, спрощеного варіанту, відомого під назвою “кеш із прямою проекцією та наскрізним записом”. Звернемо увагу на те, що у поясненні фігурує термін "блок" з трьома можливими тлумаченнями:

- блок як інформаційна одиниця; він складається сусідніх за адресним принципом розташуванням слів без посилання на тип пам’яті;

- блок як множина комірок пам’яті даних або пам’яті інструкцій;

- блок як множина комірок робочої (внутрішньої) пам’яті кеша.

Розрізнення тлумачень не є важким, воно забезпечене контекстом пояснення.

Кожний блок пам’яті, що складають у середньому з (16 –64) сусідніх з точки зору адресування слів, можна копіювати не до будь-якого, а тільки до наперед визначеного блоку робочої пам’яті кеша. В нас номер блоку кеша, що приймає участь у копіюванні, однозначно визначено за допомогою семи розрядів адреси процесора, які містить поле Block. Негайно зауважимо, що процесор “не розуміє” і не “сприймає” структурної інтерпретації адреси, що згенерував. Таку інтерпретацію адресі надає лише і тільки лише контролер кеша, коли “незаконно, без відома процесора” перехоплює цю адресу, що призначена пам’яті даних або пам’яті інструкцій.

Нехай адреса, яку генерує процесор при читанні вмістимого однієї комірки пам’яті (тобто, слова) до власного регістра, має довжину 16 бітів. В цьому випадку, контролер кеша за допомогою семи середніх розрядів адресного слова звертається до визначеного цими розрядами блоку власної пам’яті. Зрозуміло, що бінарний номер кеша є збіжним з бінарним наповненням поля Block адреси процесора. Шуканий в такий спосіб блок завжди присутній в робочій пам’яті кеша. При цьому кеш має складатись з 2(7)=128 блоків.

Але вмістиме винайденого блоку робочої пам’яті кеша може бути копією не одного, а одного з декількох дозволених на копіювання блоків пам’яті. Наприклад, в нас до нульового блоку кеша дозволено копіювати наступні блоки пам’яті: 0, 128, 256, 512 і т.д. Усього до кожного блоку кеша можна скопіювати один з 2(5)=32 блоків пам’яті. Зрозуміло, що інформаційна місткість пам’яті в 32 рази перевищує місткість кеша. Таке співвідношення місткостей є коректним згідно до означення парадоксу пам’яті. Доходимо висновку, що нас задовільнить лише однин з 32-х можливих варіантів копіювання. Питання лише в тому, чи є поточне наповнення визначеного блоку кеша відповідним запитанню процесора? Питання розв’язують за допомогою вмістимого старших п’яти бітів адреси процесора, які утворюють поле із назвою Tag.

Внутрішня структура кеша з прямою проекцією

Рис. Внутрішня структура кеша з прямою проекцією; в кеші внутрішню структуру кожного блоку як сукупності множини слів відбито, а пам’яті – приховано.

Якщо при вже визначеному номері блоку вмістиме блоку кеша є відповідним, тоді вмістиме полів tag з поля адреси процесора і з мітки блоку робочої пам’яті кеша співпадають, тоді у блок кеша в поточний момент містить потрібну копію. В цьому випадку фіксують ситуацію “влучення до кеша” (cache hit). Лишається за допомогою бітів правого поля формату адреси Word визначити шукане слово в межах винайденої в кеші копії блоку, яку щойно знайдено і перевірено на адекватність, та переслати це слово до входу процесора. Бачимо, що адресне запитання процесора на читання вмістимого комірки перехопив та задовільнив швидкий кеш, а повільна пам’ять не працювала.

Інша ситуація з назвою промах (cache miss) виникає при розбіжності вище зазначених двох тегів. Контролер кеша вимушений перетранслювати адресне запитання від процесора до повільної пам’яті та перейти (разом із процесором) до стану очікування результатів роботи пам’яті на читання. Аби зменшити кількість звернень до пам’яті навіть у цій ситуації, читають не одне, вказане адресою процесора слово, а цілий інформаційний блок (з 16-64 сусідніх слов), який, безперечно, має містити шукане процесором слово пам’яті. Тут спрацьовує принцип локалізації адресних звертань процесора – “наступне слово, що знадобиться процесору, скорше від усього, буде мати і наступну адресу”.

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

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

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

24 вересня 2007 р.

Швидкість RSA. Гібридні криптосистеми

Найбільша швидкіcть реалізації RSA в 1000 разів повільніша, ніж DES. В 1989 році Найбільші швидкоcті VKSI- реалізації дорівнювали приблизно 64 Kб/c. Зараз швидкість ~1 Мб/с. (для порівняння швидкість DES(ГОСТ) – від 10 до 100 Мб/с).

Числа можуть змінюватись, але швидкість RSA ніколи не досягне швидкості симетричних алгоритмів. Ось чому на практиці більшість систем використовує RSA виключно для обміну DES’івськими ключами, а потім шифрують всі інші DES’ом. Такий підхід називається гібридними криптосистемами.

Криптографія з відкритим ключем ідеальна для шифрування й розподілу ключів, автентифікації та ін. Симетрична криптографія ідеальна для шифрування файлів й каналів зв’язку.

Алгоритми розкладу на множники (факторизація)

Факторизація - розклад чисел на прості множники.

Можна виділити два основних типи - спеціалізовані й універсальні алгоритми розкладу на множники.

Спеціалізовані алгоритми розкладу на множники намагаються експлуатувати спеціальні особливості числа n діленого на множники.

Один з найбільш потужних спеціалізованих алгоритмів розкладу на множники - метод еліптичних кривих (режим виправлення помилок), що був винайдений в 1985 році Х.Ленстром молодшим. Час виконання цього методу залежить від розміру головних множників n, і відповідно алгоритм має тенденцію знаходити спочатку маленькі множники. До розвитку RSA системи шифрування, найкращим універсальним алгоритмом розкладу на множники був алгоритм ланцюгового поділу. Цей алгоритм розкладу на множники був оснований на ідеї відносного використання основи множника штрихів та добутку, пов’язаного з набором лінійних рівнянь, його рішення в кінцевому рахунку вело до факторизації. Та ж ідея лежить в основі найкращих універсальних алгоритмів розкладу на множники, що використовуються сьогодні: квадратична сітка (QS) та сітка поля цифр (NFS). Обидва ці алгоритми можуть бути легко паралелізовані, щоб дозволити розклад на множники на розпаралелених мережах АРМ. Квадратична сітка (решето) була розроблена Карлом Померансом 1984р. В 1994 році вона була використана групою дослідників на чолі з А.Ленстром до 129-розрядного множника 429- розрядного добутку модуля RSA, що був викладений Мартином Гарднером у 1977р. Факторизація була виконана через 8 місяців приблизно на 1600 комп’ютерах у всьому світі.

Експерименти довели, що NFS є дійсно добрим алгоритмом для розкладу на множники чисел, що мають принаймні 120 десяткових цифр (400 бітів).

Електронний підпис на основі алгоритму RSA

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

Із поширенням у сучасному світі електронних форм документів (у тому числі і конфіденційних) і засобів їхньої обробки особливо актуальною стала проблема встановлення дійсності та авторства непаперової документації. За всіх переваг сучасних систем шифрування вони не дозволяють забезпечити автентифікацію даних. Тому засоби автентифікації повинні використовуватися в комплексі з криптографічними алгоритмами.
Алгоритм RSA є найбільш простим і розповсюдженим інструментом електронного підпису.