Comments 54
Интересная статья! Теория, подкрепляемая практическим применением, включая программирование. Для начинающих отнюдь не лишне
Чтобы импульсы генерировать можно выводы OE (13) 595 использовать. Управлял так семисегментными индикаторами шимом яркость менял.
Тоже об этом думал, но, тут проблема адресно на проводники подавать. Можно, впрочем, через тот же сдвиговый регистр попробовать транзисторами на концах включать-выключать.
При OE с высоким уровнем выводы QA-QH переходят в третье состояние так что на выводе регистра на котором выбрали единицу появится частота OE. На выводах на которых нули ни чего не изменится. Выставляем требуемый адрес и генерируем частоту на OE.
...когда понадобилось вместить некоторый объем данных в минимально возможное для технологий того времени пространство
Что-то мне кажется, что нафигачить перемычек - хоть на плате травлением, хоть проволочных в отверстия - будет куда компактнее (и проще), чем мотать и устанавливать кольца. Даже для технологии 70-х годов.
Просто перемычки не получиться, нужно кучу диодов ставить чтобы не было замыканий. Итого получаем масочное ПЗУ.
А недорогие диоды из германия появились 1950-х годах и думаю. были не очень надёжные.
Вот кстати хорошая статья про историю появления советских диодов https://www.computer-museum.ru/articles/histekb/3864/
Технология значительно старше, и к 70м уже была устаревшей. Кстати, ничего особо там не "мотали", при этом имея вполне компактные устройства.
Да Вы только посмотрите на эту красоту!
Совершенно верно, не отрицаю, в статье о ПЗУ, на фото с "красотой" ОЗУ, но согласитесь, красота же :) В постоянной памяти на ферритовых кольцах проводов побольше и другая эстетика из-за этого, но компактность аналогичная, точнее даже наоборот - удельная ёмкость ПЗУ получалась выше ёмкости ОЗУ при аналогичном объёме устройства.
Эту фотку уже даже в интернете буквально затерли грязными пальцами до дыр, и на ней действительно не самый лучший образчик. Вот, например, товарищ выкладывал на хабре уже статейку про наши ДЗУ, тут есть что посмотреть: https://habr.com/ru/company/ruvds/blog/648483/
Это ферритовое ОЗУ.
Возможно автор напишет вторую часть статьи с построениеммподобного озу
Конечно. У меня есть схема матрицы управляемой ардуино, но, там ряд проблем решить надо. И, в идеале, на STM32 какой-нибудь перенести, а то, ардуино - это несерьезно.
Как разберусь, напишу статью.
Забавно. Ардуино, значит, несерьёзно, а ферритовая память это серьёзно-серьёзно? :) Тем не менее, лично я точно буду ждать с нетерпением.
Да это конфликт идей. С одной стороны хочется сделать что-то, дабы любой школьник разобрался и мог повторить, с другой стороны, ардуина - это совсем несерьезно. Я бы мог, например, выпендриться и на ПЛИСине накидать что-то, но, это только усложнит подход и увеличит порог вхождения. Контроллеры на stm32 - это золотая середина, как мне кажется, и вообще полезно для общего развития тех же школьников. Нельзя застревать на одной технологии (нужно выбирать железо и среду под задачу, бла бла бла), и т.п.
То же об этом задумывался. Копаясь в статьях, понял лишь, что исходя из каких-то технических проблем вычислительной техники того времени, которые не существуют в наше время, такой способ хранения оказался наиболее подходящим. И программировать и поправить такой блок данных проще, так как один провод проще перевязать, чем перемычки перетыкать. Вязанием подобной памяти можно было озадачить персонал, не имеющий проблем с однообразной рутинной работой и с хорошей точностью движений, потому, этим чаще занимались женщины (Его даже называли из-за этого Woman Only Memory, или Old Lady Memory).
Колечки были очень маленькие и перевязать их было сильно не проще чем сейчас перепаять 0402 smd компоненты по одному на бит.
Неверное утверждение. На работу вязальщицами памяти в подавляющем большинстве брали швей, которые иголкой нанизывали кольца быстро и точно. Пайка - менее надежный технологический процесс, имеющий вероятность получить непропай. Для бортового компьютера межпланетного зонда, или, например, устройства военного назначения, это несколько критично. За ошибку можно было и присесть немножко.
Не вязать, а шить. Кривой иголкой из толстой медной проволоки. Откуда, как вы думаете пошли термины, "(пере)прошить" ROM?
Вы не представляете размер тех ПЗУ. С одной стороны нижние 64 разряда, с другой верхние. Итого 4096 проводов в лаковой изолыции. Жгут толщиной с запястье. Размер платы - полметра на метр. Я про МИР-1 и МИР-2.
Отличная возможность физически прикоснуться к основам работы вычислительных устройств. У меня где-то лежит щепотка ферритовых колечек диаметром около миллиметра от "той самой памяти". Реально ли использовать именно их в подобной схеме?
самое наверное интересное это то что этот тип памяти наверное самый вечный, ему не грозит утечка современных флэшей, он не боится статики как электроперезаписываемые или УФ как соотвествующие пзу, если система не под напругой то ей по идее пофиг даже на ЭМИ от ядреного взрыва,
как вариант на такой памяти можно сохранить начальный загрузчик какогото девайса который можно завести в случае глобального звиздеца ну или просто по приколу встроить в свое надгробье с солнечной панелью для запитки, твердотельным ионистром для накопления и пусть ночью крутить какунибуть анимацию пугая прохожих )))))
Именно!
Главное, чтоб какой-нибудь злодей мощным магнитом не провёл по кольцам.
Может, оно и выдержит ядерный взрыв, зато не выдержит шаловливых ручек, которые эти тончайшие проводочки на раз обрывают. Или коррозию от сырости. Из-за этого найти рабочий Д3-28, например, почти нереально.
Видео с практическим применением данной технологии
https://www.youtube.com/watch?v=tPT6nIRFI_I
Пропустим через кольца проводник, помеченный адресом 0. Поскольку каждое кольцо будет опознавать свой бит, то, через кольца с номером бита, который должен быть установлен в 0, мы просто не будем наш проводник пропускать.Не понял, если делать так, зачем вообще ферритовые кольца? Можно просто сразу от провода 0 делать ответвления, которые будут единицей? Смысла нет ни в кондере тогда, ни вообще в чем-то кроме матрицы проводников — на ней, как на перфокарте, и будет записаны данные.
Ну или я не понял, как это работает.
С прямыми перемычками все сложнее, просто так нельзя их тянуть. Тут выше уже отвечали на такой же комментарий, и суть в том, что нужно тогда диодную матрицу масочной памяти строить. С колечками, скорее всего, считали, что проще и удобнее и работать - перепрошивать, например.
Предположим, нам надо считать 8 бит — нужные биты в 1 идут к шине VCC, 0 — к шине GND, итого — два управляющих провода для 1 байта.
Для переключения байтов эти две шины можно обесточивать хоть через галетник, хоть через реле, хоть через те самые диоды, через реле даже удобней — оно сразу два провода может обесточить — итого по 1 управляющему проводу на 1 байт.
Это если переключать надо, но и для ферритовых колец в этом случае 0 провод нужно будет как-то коммутировать. А если переключать не надо — то в этом случае вообще кроме матриц проводников ничего не надо.
Вы слишком серьезно подходите к проблеме, глядя на мой несерьезный пример. А ведь я об этом прямо в начале статьи и говорю.
В моем случае, и вообще, в наше время, - действительно, проще заменить перемычками, и весь смысл выбора данного электронного решения - чисто академический. Понимания для, и для воспитания подрастающего поколения наглядно.
ПЗУ такого типа я не встречал и принцип работы его не знал и не знаю. Прочитав вашу пусть даже академическую статью — я также этого и не понял. Т.е. зачем городить все это, если то, что описано куда проще реализуется простыми перемычками на плате.
Я без каких-либо наездов — я реально не понял, что дают ферритовые кольца? Перешить их нельзя, только перепаивать — чем это лучше перемычек?
Вот ОЗУ на ферритах я знаю как работает — там кондер как раз и обеспечивает сохранность информации на определенное, конечное время (время разряда кондера), и за это время можно и считать информацию и успеть приложить напряжение, чтобы ОЗУ продолжало помнить данные (время разряда < времени обновления).
С матрицей проводников не прокатит.
Пример без диодов с перемычками при чтении адреса ЛА0 на адресной линии нулевой потенциал. На линиях ЛА1, ЛА2, ЛА3 единичка (пусть условно 5 вольт). В итоге линии помеченные КЗ (находятся в состоянии короткого замыкания) D2, D3, D5 и D7. Так что без диодов ни куда.
Когда разрабатывали первую ферритовую память, полупроводниковые диоды не выпускались, по этому колечки лучшее решение. По сути дела индуктивная развязка на основе трансформаторов вместо диодов. Ну и соответственно каждый прошитый в кольцо провод можно сказать аналог развязки с диодами.
С матрицей проводников не прокатит.Прокатит, если использовать дешифратор адреса с открытыми коллекторами на выходах или если в каждую адресную линию после дешифратора воткнуть последовательно диод (опять-же появляются диоды, только в другом месте).
PS: подумал, подумал, посмотрел внимательно на картинку и решил, что нет, всё-таки не прокатит. В этом случае возможно появление ложных нулей на тех линиях, где их быть не должно.
зачем нужны диоды?
Допустим, по нулевому адресу мы хотим записать два единичных бита, подключив их к VCC. Тогда две соответствующие выходные линии всегда будут соединены между собой, даже если питание с шины VCC снять. И эти два бита всегда будут читаться одинаково, мы не сможем по другому адоесу записать в них разные значения. Вот от этого и защищают диоды.
А токоограничительный резистор на адресной линии не нужен?
А потом можно будет сделать троичные элементы памяти, как в Сетуни.
C'est magnifique!
Только на схеме надо исправить название с 27HC595 на 74HC595.
И, до кучи, статьи RalphMirebs.
Точно. Я в последний момент переписывал, ошибся. Думал КР1564ИР52 взять вообще.
А чего не дешифратор сразу?
А нужно было максимально просто. Я позже буду красивую плату проектировать, увеличу количество адресов дешифраторами и выложу потом на оборзение всеобщее. Хочу что-то вроде такого слепить, только для хранения большей информации: https://wes.am/linobyte/
Но, это если повезет. Если сдвиговый регистр может пропустить из себя сгенерированный импульс по одной дорожке чтобы заряжать одно кольцо, то, с дешифратором может такая тема не пройти.
Ещё немного: https://jussikilpelainen.kapsi.fi/wordpress/?p=213
И вариант с декодером на ПЛИС: https://hackaday.com/2018/04/28/core-memory-upgrade-for-arduino/
Автор далёк от электроники со своими решениями. Вообще статья выглядит фальсификацией. Сдвиговые регистры сгорят при первом же включении с такой нагрузкой.
Ферритовый ROM для самых маленьких