Релейная ЭВМ версия 2. Релейная логика. Сумматор с параллельным переносом

Блог проекта BrainfuckPC
Привет, давно не виделись. Я вернулся к проекту релейной ЭВМ и хочу представить на суд продолжение этой темы.
UPDATE: Снял видео из цикла BrainfuckPC. Дабы не плодить новую статью, добавлю его сюда:


Введение

Релейная ЭВМ должна быть не только релейной, но еще и быстрой. Как и любая другая ЭВМ, моя РЦВМ будет синхронной машиной, оснащенной тактовым генератором. Естественно мне не хочется растрачивать впустую циклы тактирования и постараться каждую операцию уместить в один цикл — т. е. за нарастающий и спадающий фронты синхронного генератора успеть загрузить новую команду и исполнить ее. Желательно при этом чтобы все команды выполнялись за одинаковый период времени.

Каждое реле имеет некоторую задержку срабатывания и отпускания, которое мы примем за 1 условную единицу времени(у.е.в.) Если будем использовать реле РЭС22, 1у.е.в. будет равен 12-15мс (справочное), РЭС64 — 1.3мс(справочное). Самой дорогой операцией в АЛУ моей машины является сумматор.
Сумматор сам по себе довольно простой и быстрый, но «есть один нюанс», который заключается в способе вычисления и передачи сигнала переноса.

Изначально я планировал использовать сумматор с последовательным переносом. В таком сумматоре каждый последующий разряд зависит от состояния сигнала переноса разряда текущего. В итоге длительность операции вычисления будет колебаться между 2 у.е.в. — N*2 у.е.в., где N — число разрядов. В итоге, 8-разрядный сумматор с последовательным переносом будет иметь максимальную задержку 12 у.е.в.

Рисунок 1: Принципиальная схема 4-разрядного сумматора с последовательным переносом
Такой вариант меня не устроил, поэтому будем проектировать сумматор с параллельным переносом. Так как сумматоров в системе будет как минимум два — сумматор в АЛУ и сумматор текущей команды (Instruction Pointer — IP) (не хочу отдавать его на откуп микроконтроллеру), задачка становится еще более актуальной. Сумматор в АЛУ будет 8-разрядным, сумматор IP — 16-разрядным.

Читать дальше

Электровелосипед: сборка

Электротранспорт
После закупки всего, я приступил к сборке. Первым делом, нужно засунуть аккумулятор в раму велосипеда. Так как у меня уже есть 3д принтер, я решил что было бы неплохо распечатать корпус. Я уже представлял как круто это будет смотреться. И просто и быстро и искать ничего не нужно. Но не тут то было.



Читать дальше

Электровелосипед: закупка

Электротранспорт
Началось все с того, что я полетел с велосипеда и неплохо так травмировав колено. Велосипед до этого времени был моим основным средством передвижения летом. Он очень удобен в Киеве — никаких тебе пробок, ДТП, асфальт кажется намного ровнее чем есть, какая-никакая физкультура, да и в покатушки можно для развлечения поехать — они организовываются чуть ли не каждый день. Все круто, но колено заживать будет около года, и, чтобы в это время как-то кататься, я, с подачи VRP , решил построить электровелосипед!




Читать дальше

Частотомер на базе MAX II

Блог им. kvital
Основой является плата, о которой я уже рассказывал. Но на этот раз на ней установлен только ПЛИС, питания и генератор. Частота отображается с помощью динамической индикации на семисегментных индикаторах.
Зовн. вигляд

Читать дальше

Real-Time Bluetooth Networks - Shape the World

Блог им. Nemo


Новый курс от создателей UT.6.02.x:
Embedded Systems — Shape The World
, начинаеться 15 го сентября, теперь будеть без дедлайнов.
Ссылка на курс: www.edx.org/course/real-time-bluetooth-networks-shape-world-utaustinx-ut-rtbn-12-01x#!

Читать дальше

Собираем компьютер эмбеддера

Blog by bsvi
Компьютер, с которого я пишу эту статью, я купил в 2008 году, 8 лет назад. Фактически, на нем написан и этот сайт и bsvi.me, и сделано очень-очень много всего. Меня он абсолютно устраивал — никаких тормозов, все было отлично! Но, однажды, Solidworks сказал мне: «дружище, у тебя мало памяти!». Ну что-ж, пришло время апгрейдится!



Читать дальше

Обустройство мастерской - часть 1 (История)

Оборудование
Решил поделиться видео, полезно будет для тех, кто еще не представляет что такое «аренда промышленного помещения». Дальше постараюсь кратко показать этапы проведенных работ. Будут и видео по металлообработке скорее всего попозже.

Как я 3D принтеру раму менял.

Blog by bsvi
После того, как я запустил принтер с оригинальной рамой, стало понятно — для того, чтобы принтер печатал геометрически правильно, в любом случае, нужна новая рама.



В среднем по интернетам, пишут, что для этого нужно использовать металлическую раму. Смысл в том, что калибровка станка на котором режут метал переносится на принтер. А режущие станки, обычно, откалиброваны очень хорошо.

Читать дальше

Как я 3D принтер покупал.

Blog by bsvi
Ну, вот и я приобщился к огромному сообществу владельцев 3D принтеров. Но, куда-же, я без трэша? Конечно-же, все пошло не так! Я хотел купить принтер чтобы сразу печатал, без геморроя со сборкой и настройкой. И вот, нашел я на OLX подходящий вариант. Он был очень хорош и по описанию и по картинке — вот, кстати, и она:

Принтер

Читать дальше

IAR и WakeTimers

IDE
Я постоянно пользуюсь спящим режимом компьютера, но, внезапно, компьютер стал сам просыпаться. После недолгого копания, удалось установить, что загвоздка в открытом IAR'е, а, точнее, в том, что он устанавливает таймера для просыпания компьютера (они-же, waketimer's). Для чего это ему нужно — для меня загадка.

IAR Waketimers

Читать дальше