Если хорошенько подумать, процессор - это просто конечный автомат очень общего назначения. Ну, во всяком случае, большинство процессоров. MC14500 - это однобитный компьютер, который имеет всего 16 инструкций и предназначен для выполнения простых задач, где большой процессор не будет работать из-за места, мощности или бюджета. Однако [Лотон] сделал еще один шаг вперед и создал однобитный компьютер без реальных инструкций по управлению печатным станком. Готовая машина использует умный формат в EEPROM для управления бесконечной программой.
Честно говоря, мы бы сказали, что это больше конечный автомат, но нам нравится идея с минимальным процессором, что также верно. Дизайн использует EEPROM странным образом. Каждый адрес ЦП действительно адресует блок из четырех байтов. Обрабатываемый байт зависит от текущей фазы и состояния однобитового флагового регистра.
Каждый четырехбайтовый блок состоит из двух секций. Есть две инструкции, которые считывают входные данные и устанавливают выходные данные. Первая инструкция выполняется, если флаговый регистр ложный, а второй выполняется, если флаговый регистр истинный. Все входы и выходы, конечно, однобитовые. Вторая пара байтов - это два адреса для следующей инструкции. Опять же, первая инструкция предназначена для регистра ложного флага, а вторая - для регистра истинного флага.
Ввод/вывод немного своеобразен. Каждая инструкция фазы 1 выбирает вход для сохранения в регистре флагов и может установить или сбросить один из 7 выходных битов. Конечно, вы можете не захотеть записывать вывод для каждой инструкции, поэтому восьмой бит не подключен. Запись в него не имеет никакого эффекта.
Настоящей оперативной памяти нет, но конструкция зацикливает два выходных бита на входные, так что вы можете сохранить два бита и прочитать их позже. Действительно, что-то вроде конечного автомата на основе EEPROM, но все равно забавная идея. Мы также видели несколько сборок MC14500, если вы хотите узнать больше о том, что вдохновило эту машину.