Память на линиях задержки

Материал из Википедии — свободной энциклопедии

Перейти к: навигация, поиск
Память на ртутных линиях задержки в UNIVAC I (1951 год)

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

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

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

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

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

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

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

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

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

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

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

[править] Ссылки

На других языках