Вступление
Это набор для тех, кто хочет дальше: продолжение бесплатной «Фрактальной машины» из серии «Основы железа». В нём схема из транзисторов считает с дробными числами и сама рисует три знаменитых фрактала на трёх экранах 128 × 128: треугольник Серпинского, папоротник Барнсли и множество Мандельброта, которое тумблер превращает в множества Жюлиа.
Внутри:
- экран 128 × 128 — семибитные счётчики и развёртка;
- дробные числа — фиксированная запятая, сложение и вычитание;
- умножитель целиком — 14 × 14 бит со знаком, за один такт;
- папоротник Барнсли — случай, ПЗУ коэффициентов и четыре умножителя;
- множество Мандельброта —
z = z² + cдля каждой точки, до 32 повторов; - множества Жюлиа — тумблер
Jи 28 тумблеров числаc: каждое положение — свой мир.
Сколько это
Это самый большой из наших наборов: итоговая машина — 106 610 транзисторов и 9 резисторов. В «Фрактальной машине» было три тысячи. Сборка займёт несколько вечеров и потребует внимания: в умножителе 14 одинаковых строк по 43 ноги, в уроке 6 — 59 перецепок. Повторяющиеся части удобно вставлять готовыми — у каждого урока есть вставка Cmd+I; руками стоит собрать по одному разу то, что объясняет урок, — строку умножителя, столбец ПЗУ, проверку «убежала».
В каждом уроке есть врезка ⚠ Частая ошибка — это ошибки, которые на самом деле случились при сборке этой машины. Ни одна из них не видна сразу: схема работает, но рисует не то. Поэтому после каждого урока — проверка по таблице.
Что нужно
Вентили NOT, AND, OR, NOR, XOR и триггер DFF из «Фрактальной машины» (уроки 0 и 1) — она бесплатная. Остальное собираем здесь.
Что получится
Шесть уроков: экран 128 × 128 → дробные числа → умножитель → папоротник Барнсли → множество Мандельброта → множества Жюлиа. В конце три экрана рисуют рядом, каждый своим способом, и это видно по скорости: папоротник проступает за секунды, треугольник — за кадр, Мандельброт — точка за точкой, как на домашних компьютерах 80-х.