Пам'ять на лініях затримки

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Запам'ятовувальний пристрій на ртутних акустичних лініях затримки в обчислювальній машині UNIVAC I (1951)

Па́м'ять на лі́ніях затри́мки (англ. delay line memory) — різновид комп'ютерної пам'яті, що використовувалась у ранніх ЕОМ, наприклад EDSAC, ACE та БЭСМ, в радіолокаційній техніці та декодерах сигналів кольору аналогових кольорових телевізорів систем PAL і SECAM.

Лінії затримки у радарах[ред. | ред. код]

Основна ідея ліній затримки виникла в ході розробки радарів під час Другої світової війни, а саме, при вирішенні проблеми скорочення завад від радіосигналу, відбитого землею та нерухомими об'єктами. Радари того часу використовували періодичні імпульси радіохвиль. Відбиті радіохвилі приймалися й посилювалися для відображення на екрані. Щоб прибрати нерухомі об'єкти з екрану радара, відбитий сигнал поділяли на два, один з яких використовувався безпосередньо, а другий затримувався. В електричній схемі з нового сигналу віднімався затриманий сигнал попереднього циклу (нормальний сигнал додавався до затриманого інверсного). В результуючому сигналі залишалися лише зміни між сигналами двох циклів і він виводився на екран. Отже, на екрані відображалися лише сигнали, відбиті від рухомих об'єктів.

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

Ртуть використовувалася тому, що її питомий акустичний опір майже дорівнює акустичному опору п'єзокристалів. Це мінімізує енергетичні втрати, що відбуваються при передачі сигналу від кристала до ртуті і навпаки. Висока швидкість звуку у ртуті (1450 м/с) дозволяла зменшити час очікування імпульсу, що прибуває на приймальний кінець, у порівнянні з часом очікування в іншому, повільнішому середовищі передачі (наприклад, повітрі), але це також означало і те, що кінцеве число імпульсів, які можна зберегти в прийнятній кількості ртутних трубок, було обмеженим. Іншими негативними сторонами застосування ртуті були її вага, ціна і токсичність. Більше того, для максимального узгодження акустичних опорів ртуть треба було утримувати при температурі +40 °C, що робило обслуговування ртутних трубок досить складним.

Пам'ять на лініях затримки у комп'ютерах[ред. | ред. код]

Функційна та структурна схеми ртутної лінії затримки, що використовувалась у комп'ютерах SEAC

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

Винайдена Джоном Преспером Екертом для комп'ютера EDVAC та використана в UNIVAC I ртутна лінія затримки додатково містила повторювач на приймальному кінці ртутної лінії затримки для посилання вихідного сигналу знову на вхід. У цьому випадку імпульс, посланий у систему, і далі циркулював доти, доки було електроживлення.

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

EDSAC, перша дійсно робоча цифрова електронна обчислювальна машина з програмою, що зберігалась у пам'яті, виконувала операції з 512-ма 35-бітними словами пам'яті, що зберігались у 32 лініях затримки, кожна з яких утримувала 576 біт (36-й біт додавався до кожного слова я стартовий/стоповий). В UNIVAC I схема частково була спрощена, кожна трубка зберігала 120 біт і вимагалось 7 великих блоків пам'яті з 18-ма трубками кожен для створення сховища пам'яті на 1000 слів. Об'єднані разом з підсилювачами та допоміжними схемами вони утворювали підсистему пам'яті та займали цілу кімнату. Середній час доступу до пам'яті становив близько 222 мкс, що було значно швидше, ніж у механічних системах, що використовувались у комп'ютерах попередніх конструкцій.

Дротова лінія затримки із зсувною хвилею (кручення).

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

Однак, на відміну від стискувальної хвилі, хвиля кручення була значно стійкішою щодо проблем, пов'язаних з механічними дефектами, настільки, що дріт змотувався у котушку і прикріплювався до дошки. Завдяки здатності скручуватися, системи на основі дроту могли мати таку довжину, яка була необхідна, і сприяли збереженню значно більшої кількості даних на одному елементі. 1000 елементів запам'ятовування зазвичай вміщалися на дошці площею в 1 квадратний фут (0,093 м²). Правда, це також означало, що час, необхідний для пошуку кожного окремого біта був дещо більшим через переміщення по дроті, і час доступу в середньому становив близько 500 мкс.

Пам'ять на лініях затримки була набагато дешевшою і надійнішою, ніж тригери з вакуумних ламп, і швидшою, ніж реле з самоутриманням (реле-засувки). Вона використовувалася до кінця 1960-х років, особливо в британських комерційних комп'ютерах LEO I[en], різних комп'ютерах компанії «Ferranti» і в настільному програмованому калькулятор і «Programma 101[en]», випущеному компанією Olivetti[en] у 1965 році. Компактні безртутні дротові магнетострикційні лінії затримки встановлювали в електронні клавішні обчислювальні машини (ЕКВМ) серії «Іскра 122», а також «Електроніка-155»

Останнє використання[ред. | ред. код]

Найдовше (до початку 2000-х років) пам'ять на лініях затримки проіснувала в аналогових кольорових телевізорах, де використовувалася для запам'ятовування різницевих сигналів кольору на період часу, що дорівнює довжині одного рядка телевізійного растру. В системі PAL це необхідно для компенсації фазових спотворень тракту передачі сигналів, а в системі SECAM — для забезпечення існування в кожному рядку одночасно двох різницевих сигналів кольору, які передаються послідовно через рядок.

Див. також[ред. | ред. код]

Посилання[ред. | ред. код]