Logisim — среда разработки цифровых схем всего на 6 Мб
Мне захотелось поделиться очень интересным средством разработки и симуляции цифровых схем Logisim. Я думаю многие хотя бы в процессе обучения много раз пользовались средствами разработки цифровых схем и, если это действительно так, помнят наверно насколько сложно было освоиться в этих монстроподобных системах от производителей микросхем впервые.
Итак, начнем. В сентябре у меня появился новый предмет — теория цифровых автоматов. Лаборант предложил нам для выполнения лабораторных работ программу Altera Quartus II, в которой можно было построить схему и просимулировать ее во временную диаграмму, по которой можно было судить о том, насколько она правильно работает. Перед первой же лабой вся группа начала качать ее и столкнулась с первой же проблемой. Во-первых было куча версий, из которых только версии до 8.1 под Linux и 9.1 под Windows умели симулировать схемы, во-вторых установщик занимал 2 Гб, и, несмотря на появившийся недавно в городе высокоскоростной интернет, сервер самой-же Altera очень плохо отдавал файлы, в-третьих сама программа была очень запутанной, предназначенной изначально для прошивки микросхем Altera, а не для того, для чего мы ее собирались использовать. Имелась и Linux-версия, но она была больше похожа на обычную Win-версию под Wine. Кроме того, программа сама по себе была платная, бесплатная версия как-раз прошивать микросхемы не умела, но отличалась по объему не сильно. Да и старые версии не могли получить бесплатную лицензию, поэтому проще было вспомнив старые времена переводить часы и пользоваться триальным периодом.
Но этот семестр прошел, теорию автоматов мы сдали, намучавшись с квартусом, даже привыкнув к временным диаграммам(которые были явно менее удобны, чем визуальная симуляция или таблицы истинности), начался новый семестр и новый предмет. На этот раз организация ЭВМ и систем. Да, можно было продолжать пользоваться квартусом, но устанавливать его заново как-то совсем не хотелось(там кстати еще и с установщиком проблемы были). И тут в сети я наткнулся на одну очень полезную программу. Называется она Logisim. Размер ее всего 6 Мб, а возможности все нужные обещали. Ну 6 Мб не 6 Гб — решил скачать.
Программа написана на Java, поэтому запускается и в Windows и в Linux и в Mac OS X, был бы Runtime установлен. Интерфейс оказался гораздо приятнее, чем у Quartus’а с его половиной Windows(причем похоже 2000), перетащенных в другую графическую среду. Присутствует русский перевод, все базовые элементы(начиная от И-ИЛИ-НЕ до сумматоров, мультиплексоров, счетчиков и элементов памяти).
Также имеются очень полезная для студентов функция: нажав Проект->Анализировать схему и создав нужное количество входов и выходов, можно заполнить таблицу истинности или формулу(как в мат.логике) и Logisim сам построит нужную схему. Также имеется функция минимизации схем, Также фукнция моделирования очень удобно сделана. Вместо временных диаграмм, Вы можете просто щелкнуть мышью по входу и он переключится(0 или 1), все контакты меняют цвет в зависимости от того 0 или 1 по ним идет, выход из схемы тоже показывает 0 он или 1. На счетчиках, элементах памяти всегда показывается число, которое они хранят. Симуляция идет в реальном времени, т.е. не будет проблем как в квартусе с слишком высокой тактовой частотой. Также в той же Проект->Анализировать схему можно не только построить схему по таблице истинности и формуле, но и построить формулу или таблицу истинности по уже готовой схеме или минимизировать схему.
Но есть у этой программы и минус — она записывает свои проекты не в привычном всем VHDL, а в своем собственном формате, то есть для прошивки тех же контроллеров эта программма явно не подойдет, но с задачей строить и симулировать цифровые схемы справляется на 5+, несмотря на ничтожно малый объем.
Спасибо за внимание. Скачать программу можно здесь