ПЗУ на 1 килобайт из блоков Minecraft

    Пользователь smellytring сконструировал из блоков Minecraft полностью функциональное ПЗУ объёмом 1 килобайт и подробно объяснил, как он работает.

    Для работы ПЗУ используется редстоун (redstone) — вымышленный игровой минерал, который пропускает ток и является проводником. Сигнал редстоуна проходит через цельные непрозрачные блоки, но не проходит через прозрачные блоки (стекло).



    На «диске» непрозрачные блоки используются для записи 1, а прозрачные — 0.

    Анимация механики


    Для перемещения блоков (битов информации) в положенное место на крыше используется множество поршней. Скорость записи — 8 бит (1 байт) на каждый цикл импульса редстоуна (тока).





    При чтении информации осуществляется проверка прозрачности/непрозрачности блока по определённому адресу. Запись осуществляется заменой блока. Инфраструктура для доступа к блокам по любому адресу показана на скриншоте внизу.



    Все операции происходят из комнаты управления.



    На одной из стен находятся кнопки, которыми задаётся адрес Х для записи или считывания информации (1024 = 10 бит адреса = 2^10 = 10 блоков).



    На второй стене показано состояние памяти по определённому адресу (8 бит), на третьей стене — информация, которая будет записана по выбранному адресу, если нажать кнопку записи.


    Кнопка записи — справа

    Карта с ПЗУ лежит здесь: Hard Drive.zip.

    Работа smellytring — далеко не единственный образец компьютерных комплектующих, которые воссоздали в Minecraft. Например, вот скриншоты ПЗУ на 4 килобайта, который обладает даже большей производительностью, чем изделие smellytring (больше бит на цикл редстоуна). И вообще, у него более сложная конструкция.


    Контроллер ПЗУ, вид сверху

    Среди любителей этой игры есть большое сообщество «редстоунеров», которые создают из блоков Minecraft сложные инженерные конструкции и электронные устройства: процессоры, микросхемы. Лучшие работы 2014 года собраны в видео на сайте http://openredstone.org/. В любом случае, для детей (и не только) это отличный способ понять, как функционирует компьютер и его отдельные компоненты.

    На видео показаны различные CPU, программируемые логические массивы, другие устройства и механизмы. Честно говоря, ролик очень впечатляет.

    Поддержать автора
    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 62

      –16
      Я бы сказал, что принцип действия отличается от настоящих HDD. Ожидал увидеть какой-нибудь мод, реализующий больше законов физики, включая магнитные поля.
        –5
        Моды — зло!
          +5
          244 мода стоит — я корень зла? =)
            +7
            Нет, его жертва…
              +3
              387 — вы зачаток зла ;)
          +29
          SSD же!
            +59
            Не все то что ПЗУ — HDD, alizar.
              +1
              Буква «П» в ПЗУ что-нибудь обозначает?
              Статья подробно описывает операции записи в получившееся устройство памяти.
                +2
                В данном случае русская аббревиатура «ПЗУ» (постоянное запоминающее устройство) позволяет использовать её в более широком смысла (как минимум в контексте хранения информации, поскольку сохраняет свое состояние в условиях «физики» игрового мира), нежели английский аналог «ROM» (read only memory). Особенно, если учитывать, что даже ROM далеко не всегда действительно Read Only.

                Но, действительно, данное устройство корректнее будет называть просто ЗУ (запоминающим устройством).
              +2
              Да. Ребята знают толк в маньячестве… В хорошем смысле слова 8о).
                +70
                Хорошая попытка, Minecraft, но я завязал )
                  –2
                  Если побыть занудой, то сигнал, который передает редстоун, не является электрическим.
                  • НЛО прилетело и опубликовало эту надпись здесь
                      –13
                      Почему все говорят «в хорошем смысле слова», ведь по сути дела это не здоровая ситуация заниматься таким.
                        +12
                        В компьютерные игры играть плохо?
                          –26
                          Давайте зададимся обратным вопросом:
                          1. В компьютерные игры играть хорошо?
                          2. Конкретно в случае маинкрафта, хорошо ли это?
                          3. И конкретно в случае этого примера?

                          Все как всегда мне минусуют, прям как школота.))

                          Теперь давайте-то попробуем ответить:
                          1. В игры играть и вредно и полезно одновременно. Конечно некоторые из них вас чему-то научат, но в целом я считаю, что время дороже. Раньше очень много играл и слишком много потерял на это времени. Сейчас понимаю как я был не прав.
                          2 и 3. В случае майнкрайта, а что собственно хорошего сделал человек, который сделал ПЗУ, какую пользу он принес обществу и улучшил ли себя? Пользу он не принес, а даже наоборот. Он потравил электричество и сделал планете плохо. Насчет улучшения себя тоже спорно, хотя майнкрафт помогает как-минимум видеть картинку в целом и заниматься каким-никаким, но проектированием.
                            –5
                            Анекдот в тему (слова досконально не помню, но смысл такой):

                            > Обращение к человеку:
                            «Вот ты такой весь правильный из себя, за защиту природы и животных. Насекомых не топчешь. Мясо не ешь. Молоко не пьешь. Веган. Только ты мне скажи… почему тогда вы всю еду этих животных схавали?!...»
                              +18
                              Если говорить про этот конкретный пример — игровые элементы майнкрафта отвечают несколько иной топологии, чем элементы современных интегральных схем. Соответственно, хоть логика компоновки и построения схем остается сходной, само пространственное размещение и разбивка по слоям порождает немало интересных задач, которые, потенциально, могут найти применение в нестандартных схемах в реальном мире.

                              А еще, если говорить про него же — такие вот работы вдохновляют программистов и сочувствующих, восхищают их (нас). Как-то на нас влияют. Так что если это «прожигание электричества», то может и картины — прожигание краски, а музыка — опять же электричества?

                              Это — творчество, ориентированное на достаточно узкую аудиторию и способ самовыражения.
                              а haters gonna hate
                                –23
                                Извините, но меня как программиста это не вдохновило. И это нельзя сравнивать с музыкой и картинками. Сам код майнкрафта еще может быть, но не то, что творится в нем.
                                  +10
                                  Почему нельзя? Федеральный закон запрещает? Не несите чепухи. Это всего лишь невинное развлечение. Кто-то любит ПЗУ в Майнкрафте строить, кто-то в рейды в WoW ходить, кто-то книжки читать, кто-то телевизор смотреть. Не прожигайте электричество, пройдите мимо.
                                +1
                                Вы когда в туалет пойдете, не забудьте свет выключить: пользу это действие обществу не принесет, а потраченное электричество «сделает планете плохо». Ну и так соответственно во всем: чувствуете что пользы не приносите — тушите свет (ну и старайтесь дышать меньше, берегите планету).
                              +10
                              Всё существование цивилизации можно (и даже нужно) воспринимать как грандиозную игру. Кто-то играется с атомами, кто-то с молекулами, иные — с генами и клетками. Главное чтобы не было разрушительных последствий.
                                0
                                Пусть обижаются поклонники Майнкрафта, но я предпочитаю игры с моллекулами, атомами, клетками и генами. Нет, никого не агитирую бросить компьютерные игры (нужно же отдыхать), просто описываю свое отношение. К Майнкрфту отношусь хорошо, хотя сам не играл.
                                  0
                                  Нужно просто скачать мод на молекулы, атомы, клетки и гены.
                                +4
                                Вы так говрите, как будто это что-то плохое.
                                Раньше люди что-то конструировали дома, сейчас моделируют в компьютере.
                                Если и дальше проводить аналогии в истории, можно и до Леонардо Да Винчи дойти.
                                Тоже сидел и чето делал в мастерской, а мог бы по барам зажигать и на рыцарских турнирах тусить :)
                                  +3
                                  Раньше радиолюбители паяли сами компьютеры и были счастливы как дети когда все работало…
                              +5
                              Самое время задуматься, пирамиды в Египте точно были просто гробницами? :-)
                                +55
                                Нет, конечно. Вы что, Рен-тв не смотрите?
                                  +3
                                  Просто кто то придумал песочницу вселенского масштаба ;)
                                    +1
                                    Всем известно, что это — посадочные площадки для космических кораблей…
                                      0
                                      Всем известно, что директор Рен-тв — пришелец.
                                        0
                                        Нет, это не рен-тв, это Stargate :))
                                        0
                                        На самом деле это усыпальницы величайших из людей, сынов Бога-солнце, дающего жизнь всему обозримому миру, которые создавались тысячами людей (возможно даже с радостью) для того, чтобы по окончании своего непродолжительного присутствия в этом бренном мире они смогли продолжить свой путь через вечность, но тело их при этом не повредилось на случай, если они вдруг соизволят вернуться. И вот это тру-фантастика для нас — современных людей. А вы про какие-то скучные площадки :)
                                      0
                                      Это всё было сгенерированно каким-то алгоритмами или собрано игроками от первого лица?
                                        0
                                        С большой долей вероятности без worldedit'а не обошлось.
                                        +16
                                        Фантастика. Кстати, есть программа для клеточных автоматов на которой умельцы делают разные электронные устройства, например счетчик.
                                          +3
                                          Есть ещё The Powder Toy, в ней тоже можно делать много интересных штук.
                                          0
                                          Как-то не верится, что всё это было построено прямо из игрового клиента. Может использовался редактор какой?
                                            0
                                            Отдельные блоки наверняка проектировались в самом клиенте, а их клонированием скорее всего занимались в WorldEdit'е.
                                              0
                                              ВорлдЭдит управляется из клиента командами, а выполняется на сервере. Такие вещи гораздо удобнее редактировать в MCEdit, который действительно запускается отдельно от игры.
                                                0
                                                Да, точно! Прошу прощения перепутал названия.
                                                  0
                                                  А для него, соответственно, уже пишутся плагины на питоне, например, для прокладки редстоуновых дорожек. Скинул бы ссылку, но забыл ник автора, вроде бы CNBMinecraft.
                                            +25
                                            Потрясающе!
                                            >В любом случае, для детей (и не только) это отличный способ понять, как функционирует компьютер
                                            Очень сомневаюсь, что каждый взрослый сможет разобраться в этой гигантской конструкции.
                                              +2
                                              Скорее, это отличный способ для детей развить усидчивость и терпение.
                                              Представьте ещё как это будет лагать при работе. (spoiler — довольно сильно, если у вас не топовый ПК)
                                                +1
                                                ну главное понять принцип, а гигантская она потому что много повторяющихся деталей
                                                –8
                                                IRL ПЗУшки компактней книги, а вот в майнкрафте какой-то фейспалм получается )
                                                  +12
                                                  Ага-ага. Там и шейдеры реалистичнее, и физика потерей точности не ограничена…
                                                • НЛО прилетело и опубликовало эту надпись здесь
                                                  +1
                                                  Я вот подумал — если установить мод, добавляющий в игру программируемых на языке lua роботов, то можно для них написать программу для изготовления такого блока. В результате получится фабрика по производству ПЗУ, жаль только, что продавать некому. Зато можно с помощью разных lua-программ создавать разные устройства, а потом соединять их в большие комплексы, как конструктор.
                                                    0
                                                    О, вспомнил — ComputerCraft мод.
                                                      0
                                                      Слишком много повторяющегося кода. И, на сколько я помню, там нельзя использовать всю мощь LUA.
                                                        0
                                                        Ну, насколько я помню, интерпретатор там полноценный, может, нет только каких-нибудь библиотек. Я бы сделал так: задаем программу строительства как описание слоев блоков в псевдокодах (например, слой — матрица чисел, каждое из которых представляет определенный тип блока), затем пишем на lua же интерпретатор, который переводит этот псевдокод в команды робота. Далее скачиваем готовую программу строительства для нужного устройства, передаем интерпретатору и запускаем робота. Программу же просто один раз кто-то делает, а дальше она распространяется в виде обычного файла.
                                                    +2
                                                    Аааа. VHDL заплачет горькими слезами, когда на лекциях будут предлагать сделать RAM или Cache в Minecraft для закрепления материала.
                                                      0
                                                      Кто служил в армии учился в институте, тот в цирке не смеется. По крайней мере у нас были преподы, которым надо была сдавать лабы в еще более оторванных от реальности программах. Которые в добавок работали только под DOS и только на определенных компах (программа требовала прямого доступа к видеопамяти, по какому то старому протоколу, который современными картами не поддерживается). В редакторе которых надо было набрать какие то магические последовательности цифр которые как то были связанны с тем старым протоколом обращения к видеопамяти, но не имели ничего общего с современной графикой, при этом редактор был глючный и в нем не работала команда вставить (зато с целью потроллить новичков, прекрасно работала команда вырезать), а вводит с клавиатуры сотни однообразных магических последовательностей было очень муторно. Так, что майн на некоторых лабах мне кажется даже очень логичным.
                                                      +8
                                                      А где картинка с троллейбусом?
                                                        –1
                                                        следующий шаг — создание полностью рабочего компьютера внутри Minecraft. Следующий — программирование для этого компьютера внутри Minecraft. Венец развития — Minecraft внутри Minecraft :D
                                                          0
                                                          Да есть уже :) выше в комментах ссылка
                                                          +3
                                                          Я не понял, почему это называют то жестким диском, то ПЗУ. Там же есть штатная запись по адресу (из «комнаты управления»), поэтому получается в точности ОЗУ.
                                                            0
                                                            При перезагрузке сервера цепи на редстоуне могут потерять состояние, а вот блоки не сдвинутся, так что это именно ПЗУ. А вот память на триггерах из редстоуна может и сглюкнуть — т.е. она будет ОЗУ.
                                                              0
                                                              Тогда это должно именоваться энергонезависимым ОЗУ. По дизайну ПЗУ либо не имеет штатного механизма записи, либо он выходит за рамки «чисто электронного» интерфейса. Пример майнкрафтовского ПЗУ получился бы, если заменить поршни на прозрачные/непрозрачные блоки и упростить интерфейс (выкинуть кнопку записи и соответствующую шину данных). «Перезапись» в этом случае осуществляется ручной заменой блоков.
                                                                0
                                                                См. #comment_7893997
                                                                ПЗУ это не только ROM, но и PROM и EPROM и EEPROM и ещё несколько более экзотических видов. Здесь собрано нечто вроде EEPROM.

                                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                          Самое читаемое