Оказывается, вот такие МЛЗ могут хранить пару десятков килобит! (Правда, я не нашёл где конкретно такие применялось, возможно это штучный hi-end из ~1965, но такое упоминается в статьях.) Или вот, например: в терминалах IBM 2260 две такие линии использовалась для хранения 11008 бит (да, такое странное число). Линии были длиной 50 футов, сигнал шёл по ним 5.5545 миллисекунд.
А это значит что линии задержки пригодны для хранения информации и исполнения программ в очень минималистичном транзисторном компьютере. (Я грубо оцениваю количество необходимых транзисторов в, примерно, 70 штук.)
При этом, компьютер не будет таким медленным как кажется - кольцевая программа может исполняться полностью параллельно, бит за битом вычисляя что-то в непрерывном потоке. Предположительно, это мог бы быть подход называемый Term Rewriting Computing: по коротким байтам программы ползёт краулер и в соответствии с какой-то логикой делает в них перестановки.
Первоначальный ввод программы (ведь голый компьютер будет полностью неработоспособен без "прошивки") можно осуществлять с проталкиваемой вручную бумажной ленты (типа как на TIM-8, но мотор не обязателен если компьютер не предполагается стартовать автоматически)
Ещё одну линию задержки (покороче) можно использовать для хранения и вывода изображения на шикарный многосегментный вакуумно-люминесцентный экран, даже текстовый! Линии задержки идеально подходят для динамической индикации.
Изготовление линии выглядит простым: нужно только немного специальной проволоки из пермендюра и немного обычной стальной (кажется, не знаю ещё точно. Может нужна специальная повышенной упругости?) и точечная сварка в 4 местах (ёмким конденсатором?)
Итого, полноценный программируемый контроллер (или программируемый калькулятор) в меньше чем 100 транзисторов. Если удастся то чтобы не ломать себе голову в код можно будет поместить эмулятор какого-то более мощного процессора и пользоваться для написания программ обычным компилятором.
Это велосипед? Применялся ли где-то такой подход?
Струнный компьютер
Moderator: Shaos
-
- Senior
- Posts: 105
- Joined: 09 Jun 2022 07:49
-
- Senior
- Posts: 105
- Joined: 09 Jun 2022 07:49
Re: Струнный компьютер
В книге "Устройства задержки информации в дискретной технике" даны описания всех необходимых для построения такого компьютера блоков.
Из этой книги следует что, по крайней мере в то время (1973), такие компьютеры назывались "Интегрирующая вычислительная машина". А по-заграничному всё это зовётся "incremental computing".
И, внезапно, там виден путь к использованию троичной логики! Дело в том что в струне колебание, естественно, может быть импульсом в любую сторону - но никакие модуляции в таких цифровых линиях не применяются, а это значит что можно использовать сам факт "направления" импульса. Обычно применяется импульс только в одну и на осциллографе он выглядит так: Так как на приёмной стороне применяют пиковый детектор, то, если применить два таких детектора, становится возможным и двуполярное кодирование! При этом (цитата): Способ двуполярного представления входной информации улучшает режим работы усилителя считывания, так как сигнал в этом случае имеет более узкий спектр частот.
То есть, на ровном месте увеличивается плотность хранимой информации. А так как количество логических элементов для обработки сигналов будет мало (единичный полный сумматор и ещё несколько логических вентилей) то их можно сделать троичными.
Из этой книги следует что, по крайней мере в то время (1973), такие компьютеры назывались "Интегрирующая вычислительная машина". А по-заграничному всё это зовётся "incremental computing".
И, внезапно, там виден путь к использованию троичной логики! Дело в том что в струне колебание, естественно, может быть импульсом в любую сторону - но никакие модуляции в таких цифровых линиях не применяются, а это значит что можно использовать сам факт "направления" импульса. Обычно применяется импульс только в одну и на осциллографе он выглядит так: Так как на приёмной стороне применяют пиковый детектор, то, если применить два таких детектора, становится возможным и двуполярное кодирование! При этом (цитата): Способ двуполярного представления входной информации улучшает режим работы усилителя считывания, так как сигнал в этом случае имеет более узкий спектр частот.
То есть, на ровном месте увеличивается плотность хранимой информации. А так как количество логических элементов для обработки сигналов будет мало (единичный полный сумматор и ещё несколько логических вентилей) то их можно сделать троичными.
Last edited by belfegor96 on 21 Jan 2025 18:50, edited 1 time in total.
-
- Senior
- Posts: 105
- Joined: 09 Jun 2022 07:49
Re: Струнный компьютер
По логике работы компьютера: пока что пришёл к тому что нужно заставить его эмулировать работу загруженной в него логической схемы. Получается неплохое быстродействие, а, главное, упростится разработка программ - ведь понимание того как нужно разрабатывать логические схемы у человечества накоплено, в отличие от каких-то странных эзотерических подходов.belfegor96 wrote: 18 Jan 2025 20:38 При этом, компьютер не будет таким медленным как кажется - кольцевая программа может исполняться полностью параллельно, бит за битом вычисляя что-то в непрерывном потоке. Предположительно, это мог бы быть подход называемый Term Rewriting Computing: по коротким байтам программы ползёт краулер и в соответствии с какой-то логикой делает в них перестановки.
Минусом такого подхода является то, что нужен промежуточный аккумулятор значений. Всего 4-6 бит, полагаю, поэтому он может быть реализован отдельно (на транзисторах или даже ферритовых кольцах). При этом понадобится только одна линия задержки (для хранения "программы"), что благотворно скажется на его простоте (синхронизация линий задержки это адская задача)
Работать оно должно так: с "перфоленты" "программа" (фактически - прошивка, как для FPGA) загружается в линию задержки. Далее, в рамках регенерации информации, из линии берётся информация в виде фиксированных кадров. Кадр обрабатывается комбинационной логикой, при этом исходные значения берутся из аккумулятора, а результат работы кладётся снова в аккумулятор, за исключением бита, который нужно запомнить если речь идёт об элементе с памятью - его машина сохраняет обратно в кадр. Кадр снова записывается в линию задержки (происходит регенерация). Далее происходит загрузка следующего кадра, и так продолжается до бесконечности - компьютер не умеет останавливать свою работу.
Коротко можно сказать что биты кадра это описание конфигурации LUT в терминах FPGA.
Биты информации такие:
1 - синхробит - нужен для определения наличия кадра, иначе с медленной перфоленты информацию на линию задержки не записать, ведь будет непонятно в какой момент времени нужно забрасывать следующий кадр
2 - код логической операции - у нас есть вентили (комбинационная логика) и D-триггеры (память). По сути этот бит задаёт является ли логический элемент элементом памяти или сразу напрямую передаёт результат в следующий "слой" элементов прошивки
3 - для элемента с памятью здесь содержится запомненное в нём значение. В качестве результата выдаётся именно оно, а на его место записывается новое. Для элемента комбинационной логики это строб для вывода на внешний порт (команда внешнему устройству прочитать данные из аккумулятора и использовать каким-то образом)
Остальные биты кадра это "нагрузочная способность" - определяет в какие биты аккумулятора будет помещён результат логической операции.
Last edited by belfegor96 on 21 Jan 2025 19:01, edited 4 times in total.
-
- Senior
- Posts: 105
- Joined: 09 Jun 2022 07:49
Re: Струнный компьютер
Логический элемент должен быть достаточно крупным (может даже троичным). Пока что я остановился на полном сумматоре. У него 3 входа и 2 выхода.
Но если с входами всё ок, то неясно как описать в коротком кадре какой выход куда направить
Вот такие вот соображения.
По скорости:
Скажем, если в линии биты бегают с частотой 300 кГц, а кадры размером 6 бит значит эмуляция схемы будет происходить частотой 50 кГц. На частотах 300 кГц и меньше сдвиговые регистры, D-триггеры и прочее такое можно сделать даже на ферритовых кольцах, что сократит количество транзисторов и просто выглядит забавно.
Но если с входами всё ок, то неясно как описать в коротком кадре какой выход куда направить
Вот такие вот соображения.
По скорости:
Скажем, если в линии биты бегают с частотой 300 кГц, а кадры размером 6 бит значит эмуляция схемы будет происходить частотой 50 кГц. На частотах 300 кГц и меньше сдвиговые регистры, D-триггеры и прочее такое можно сделать даже на ферритовых кольцах, что сократит количество транзисторов и просто выглядит забавно.
-
- Senior
- Posts: 105
- Joined: 09 Jun 2022 07:49
Re: Струнный компьютер
На заметку: выведенное на измерительную головку интегрированное значение сигнала синхробитов покажет процент заполненности струны. Получится тёплая аналоговая индикация использования памяти!
Last edited by belfegor96 on 23 Jan 2025 04:56, edited 1 time in total.
Re: Струнный компьютер
Первый раз прочёл "Странный", второй "Струйный". Извиняюсь.)
-
- Senior
- Posts: 105
- Joined: 09 Jun 2022 07:49
Re: Струнный компьютер
Первый раз прочёл "Странный", второй "Струйный".

Просто моток линии задержки напоминает гитарные струны в упаковке