Память на линиях задержки — разновидность компьютерной памяти, использовавшейся в ранних цифровых компьютерах, например EDSAC, ACE и БЭСМ, в радиолокационной технике и декодерах сигналов цветности аналоговых цветных телевизоров систем PAL и SECAM.

Запоминающее устройство на ртутных акустических линиях задержки в UNIVAC I (1951 год).

Основная идея линий задержки возникла в ходе разработки радаров во время Второй мировой войны, а именно для сокращения помех от отражения от земли и неподвижных объектов. Радары того времени использовали периодические импульсы радиоволн, отражённые радиоволны принимались и усиливались для отображения на экране. Чтобы убрать неподвижные объекты с экрана радара, отражённый сигнал разделяли на два, один из которых использовался непосредственно, а второй задерживался. В электрической схеме из нового сигнала вычитался задержанный сигнал предыдущего цикла. (Нормальный сигнал складывался с задержанным инверсным.) В результирующем сигнале оставались только изменения между двумя сигналами и он выводился на экран. Таким образом на экране отображались только подвижные объекты.

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

Ртуть использовалась потому, что её удельное акустическое сопротивление почти равно акустическому сопротивлению пьезокристаллов. Это минимизировало энергетические потери, происходящие при передаче сигнала от кристалла ко ртути и обратно. Высокая скорость звука во ртути (1450 м/с) позволяла уменьшить время ожидания импульса, прибывающего на принимающий конец, по сравнению со временем ожидания в другой, более медленной среде передачи (например, воздухе), но это также означало и то, что конечное число импульсов, которые можно сохранить в приемлемом количестве ртутных трубок, было ограничено. Другими отрицательными сторонами применения ртути были её вес, цена и токсичность. Более того, для того чтобы добиться согласования акустических сопротивлений настолько, насколько это возможно, ртуть надо содержать при температуре +40 °C, что делает обслуживание ртутных трубок жаркой и некомфортной работой.

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

Изобретённая Джоном Преспером Экертом для компьютера EDVAC и использовавшаяся в UNIVAC I ртутная линия задержки добавила повторитель на принимающем конце ртутной линии задержки для посылки выходного сигнала обратно на вход. В этом случае импульс, посланный в систему, продолжал циркулировать до тех пор, пока было электропитание.

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

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

Проволочная линия задержки со сдвиговой волной (кручения)

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

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

Память на линиях задержки была гораздо менее дорогостоящей и гораздо более надёжной, чем триггеры из вакуумных ламп, и более быстрой, чем реле с самоудержанием (реле-защёлки). Она использовалась до конца 1960-х годов, особенно в британских коммерческих компьютерах LEO I, различных компьютерах компании Ferranti и в настольном программируемом калькуляторе Olivetti Programma 101, выпущенном в 1965 году. Компактные безртутные проволочные магнитострикционные линии задержки устанавливали в электронные клавишные вычислительные машины (ЭКВМ) серии «Искра», а также «Электроника-155».

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

Ссылки

править