- PVSM.RU - https://www.pvsm.ru -
Игра Жизнь [1] — всем известный клеточный автомат, изобретенный Джоном Конвеем в 1970 году. Суть игры заключается в симуляции «вселенной», в нашем случае реализованной на квадратной матрице 8х8 с замкнутыми краями.
В начале от игрока требуется задать первое поколение клеток, используя встроенные в FPGA кнопки. После этого начинается процесс симуляции, где поколения сменяются по нажатию кнопки.
Игра реализована на языке проектирования Verilog и состоит из четырех базовых модулей: модули ввода/вывода, алгоритма игры и основной модуль, соединяющий имеющиеся. Игровое поле в коде представлено в виде сдвигового регистра на 64 элемента, переход к новому поколению реализован с помощью последовательной логики.
Модуль вывода работает со стандартной светодиодной матрицей 8х8 с 16 управляющими пинами. Отображение ведется по рядам. Модуль ввода представляет собой три кнопки — кнопка обновления экрана, установления позиции и кнопка изменения текущей позиции(сдвиг на позицию вправо), а также из переключателя режимов, позволяющего переходить к процессу симуляции от выбора первого поколения.
Пример работы:
→ Исходный код [2]
Автор: KarlKremen
Источник [3]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/fpga/299020
Ссылки в тексте:
[1] Игра Жизнь: https://ru.wikipedia.org/wiki/%D0%98%D0%B3%D1%80%D0%B0_%C2%AB%D0%96%D0%B8%D0%B7%D0%BD%D1%8C%C2%BB
[2] Исходный код: https://bitbucket.org/kkremen/mips-cgol
[3] Источник: https://habr.com/post/429764/?utm_campaign=429764
Нажмите здесь для печати.