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

Одной из таких работ является, в частности, проект по созданию дискретного 8-битного компьютера. Автор проекта — Andrew Starr, а сам проект располагается вот на этой страничке. Что собой представляет проект?

По словам автора, это частично кинетическая скупльтура, частично — дань достижениям науки и техники, причем достижениям прошлых лет. Частично же это образовательный проект.

Для создания этой системы автор использует следующие элементы:
  • 8-битная шина;
  • 2*64 битные стеки (data, return);
  • Гарвардская архитектура: 256 байтная основная память и программная память на 256 слов;
  • 13-разрядное программное командное слово: 5 бит на опкод, 8 бит — операнд;
  • Все элементы памяти изготовлены с использованием ферритовых сердечников;
  • Программная память выполнена с использованием ферритовых трансофрматоров;
  • Логические элементы выполнены из дискретных элементов, в виде plug-in модулей;
  • Целевая тактовая частота — 1 МГц.


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

Архитектура системы:



Здесь используется стандартная 2-х стековая машина с несколькими модификациями, позволяющими использовать гарвардскую архитектуру и опциональное поле данных в инструкции.

Сейчас автор уже разработал схему AND -модуля, и заказал соответствующие модули, которые и прибыли на днях.





Схемы





Тестирование:



Готовы уже и прочие компоненты, включая дешифраторы адреса для стековой памяти.



Кроме всего прочего, автор сейчас разрабатывает и корпус для своего творения:



Сейчас работа еще продолжается, так что следить за реализацией проекта можно здесь.

Комментарии (5)


  1. sergku1213
    16.10.2015 19:43

    Тёплый транзисторный компьютер… Ещё бы его на кт315 транзисторах сделать. Ах и ох! Как изящно и увы, бесполезно.


  1. qrasik
    16.10.2015 20:50

    С трудом представляю себе, что можно впихнуть в его условные 672 байта.
    Интересно, что у него на уровне ассемблера.


    1. DrPass
      17.10.2015 12:13
      +4

      Когда-то у нас счастливым инженером считался тот, кто мог позволить себе купить программируемый калькулятор. Он стоил месячную зарплату. Там было 105 байт памяти для команд, 4 регистра общего назначения и 16 регистров для данных. Там не было инстаграмма, не запускался Angry Birds, но там можно было рассчитать посадку космического корабля (причем «по-настоящему»), поиграть в «охоту на лис» или крестики-нолики, и делать ещё много разных штук. Это было захватывающе.


      1. qrasik
        17.10.2015 18:57

        Все же в калькуляторе был полноценный процессор с приличным набором функций. А в Т1, судя по описанию, все на «расыпухе» и возможности в пределах целочисленной арифметики и логики.

        И да, я так и не понял, зачем Т1 такой глубокий стек возвратов. Для симметрии, разве что. Как по мне, лучше бы размер памяти кода до 4K увеличить, тогда можно кучу разных забавных программок на нем запустить.


  1. barabanus
    16.10.2015 23:38

    Мне нравится, когда люди начинают конструировать свои девайсы, но я обычно ожидаю, что в этих девайсах есть хоть какая-то необычная идея: необычная архитектура, необычная элементная база. Например, механический компьютер. Или дисплей из катушек с нитками. Здесь есть что-нибудь необычное?