Logisim
Logisim — инструмент, позволяющий разрабатывать и моделировать цифровые электрические схемы, используя графический интерфейс пользователя. Logisim — свободное программное обеспечение, выпущенное под GNU GPL; может запускаться на Microsoft Windows, Mac OS X, и Linux. Код полностью написан на Java с использованием библиотеки Swing для графического интерфейса пользователя. Основной разработчик, Carl Burch, работает над Logisim с его появления в 2001 году.
Программа чаще всего используется учащимися в курсе изучения информатики для разработки и экспериментов с цифровыми схемами при моделировании. Схемы разрабатываются в Logisim с помощью графического интерфейса, близкого к традиционному для программ для рисования, такой интерфейс встречается во многих других программах для моделирования схем. В отличие от большинства других программ такого назначения, сопоставимых с Logisim по сложности, Logisim позволяет пользователям редактировать схемы в процессе моделирования. Относительная простота интерфейса делает программу удобной для обзорных курсов [1] . Возможности разработки более сложных схем, такие как «подсхемы» и «пучки проводов», имеющиеся в Logisim, доступны в некоторых других графических инструментах с открытым исходным кодом.
Функция Logisim о которой не говорят -Комбинационный анализ!
Хотя пользователи могут разрабатывать даже полные реализации процессоров, используя Logisim, программа разработана в основном для образовательного использования. Профессионалы обычно разрабатывают такие масштабные схемы, используя языки описания аппаратуры, такие как Verilog или VHDL. Logisim не позволяет работать с аналоговыми компонентами.
Logisim распространяется с поддержкой русского интерфейса и полной документацией на русском языке.
Примечания
- ↑Расширение кругозора для учёных (на английском)(неопр.) . Дата обращения: 14 сентября 2010.
Ссылки
- Официальный сайт
- Стороннее видео на YouTube, иллюстрирующее основные возможности Logisim (на английском)
Источник: xn--h1ajim.xn--p1ai
Logisim что это за программа
Обновление: Теперь доступен Logisim 2.7.1. Изменения по сравнению с предыдущими версиями. (21 марта 2011)
Logisim — это образовательный инструмент для разработки и моделирования цифровых логических схем. Благодаря простому интерфейсу панели инструментов и моделированию схем по ходу их проектирования, Logisim достаточно прост, чтобы облегчить изучение основных понятий, связанных с логическими схемами. При возможности постройки больших схем из меньших подсхем и рисования пучков проводов одним перетаскиванием мыши, Logisim может быть использован (и используется) для проектирования и моделирования целых процессоров в образовательных целях.
Logisim используется студентами колледжей и университетов по всему миру во многих типах курсов, начиная от краткого курса по логике в обзорном изучении информатики в общеобразовательных учреждениях, кончая курсами по организации ЭВМ и полными курсами по архитектуре компьютеров.
Вебинар «Проектирование цифровых электронных схем в Logisim»
Logisim — программное обеспечение с открытым исходным кодом и работает под управлением Windows, Linux и Macintosh.
Использование русского перевода
Перевод на русский язык интерфейса программы и всей документации входит в состав стандартного выпуска Logisim (переводчик — Илья Лилов). Для использования русского перевода:
- После запуска Logisim, выберите пункт Preferences… из меню File. (На Macintosh выберите из меню Logisim.)
- Выберите вкладку International в окне Preferences.
- Выберите Russian из выпадающего меню Language.
Источник: cburch.com
Logisim — Разработка и моделирование цифровых схем
Инструмент для разработки и моделирования цифровых электрических схем. Русский язык.

20 марта 2021 г. 21:47 Русский GNU GPL v2
Инструмент для разработки и моделирования цифровых электрических схем. Умеет моделировать логические схемы, таких как процессоры, используя предварительно настроенные элементы, такие как И, ИЛИ, НЕ. Logisim достаточно простой для использования в качестве учебного пособия для обучения основам логических схем, но он также может имитировать сложные пути обработки. Его можно использовать для создания простых схем, и использовать их для создания более сложных схем. Переведен на русский язык.
Его код написан полностью в Java, с применением библиотеки графического интерфейса пользователя Swing. Основной разработчик, Карл Берч, работает над Logisim с 2001 года (с момента её создания).
Программа используется наиболее часто студентами на информатике для разработки цифровых схем. Схемы создаются в Logisim при помощи графического интерфейса, который напоминает обычную программу для рисования, и также напоминает другие средства моделирования.
В то время как пользователи могут создавать полные реализации процессора в Logisim, программа имеет основное назначение в использовании в образовательных целях. Профессионалы, как правило, проектируют подобного рода масштабные цифровые схемы, при помощи языков описания аппаратных средств, таких как Verilog или VHDL. Logisim не в состоянии разместить аналоговые компоненты.
Характеристики
Ссылки на официальный сайт и загрузку
- Веб-сайт:www.cburch.com/logisim
- Каталог загрузки
- Прямая ссылка
- Резервная копия
Источник: xn--90abhbolvbbfgb9aje4m.xn--p1ai
Проектирование процессора Logisim
Одна из глав книги «Код» Чарльза Петцольда посвящена проектированию блоков CPU и в начале главы описывается устройство, позволяющие суммировать наборы чисел, хранящихся в памяти. Спроектируем похожую схему в Logisim.
Возьмем набор восьмиразрядных чисел и подключим его к мультиплексору, переход от одного числа к другому будем осуществлять с помощью счетчика, подключенного к выбирающему входу мультиплексора, а к выходу мультиплексора подключим сумматор и аккумулятор. В качестве тактового генератора будем использовать кнопку. Данные будут загружаться в аккумулятор при отпускании кнопки. Это осуществляется с помощью элемента НЕ, подключенного к кнопке. Про реализацию этих функциональных блоков в виде отдельных микросхем далее в статье.
Будем хранить числа в ОЗУ (RAM).
ОЗУ можно представить в виде набора регистров, доступ к которым производится с помощью демультиплексора и мультиплексора (DMX и MUX).
Гарвардская архитектура
Предположим, в ОЗУ хранится набор чисел, а нам нужно сложить все числа и сохранить результат (в свободную ячейку). Будем хранить команды («сложить» и «сохранить») в одном ОЗУ, а обрабатываемые числа — в другом. Такой способ хранения является отличительным признаком Гарвардской архитектуры.
Команда «1» будет записывать число из сумматора в аккумулятор, команда «2» будет записывать число из аккумулятора во 2-ое ОЗУ.
- загружать числа из ОЗУ в аккумулятор
- загружать числа из сумматора в аккумулятор
- сохранять числа из аккумулятора в ОЗУ
Архитектура фон Неймана
Далее, будем хранить инструкции и данные в одном ОЗУ. Такой способ хранения является отличительным признаком архитектуры фон Неймана.
В первых четырех разрядах восьмиразрядной ячейки памяти будет храниться команда, во вторых четырех разрядах будет храниться адрес (прямая адресация).
Будем загружать адрес и команду в отдельные регистры, а затем с помощью мультиплексора переходить по сохраненному адресу. Для записи данных в ОЗУ будем сначала загружать данные во временный регистр Temp (иначе в ОЗУ запишутся инструкции, а не данные), а потом в аккумулятор Асс. Запись данных в Temp и Асс будем производить по заднему фронту.
Будем складывать, например, числа 2 и 3, которые лежат в ячейках 8 и 9, а сохранять результат в ячейку с адресом a.
Добавим также возможность совершать безусловные переходы.
Реализуем устройство, в котором будет выполняться всего одна команда — команда безусловного перехода. Для этого на счетчик, генерирующий адрес, будем отправлять четыре младших разряда (собственно, адрес), а на порт загрузки будем подавать команду, хранящуюся в старших разрядах ячейки памяти.
Например, для прыжка в ячейку с адресом 2 используется команда 82.
Добавим команду безусловного перехода в предыдущую схему.
Вообще, на geektimes уже была статья, посвященная проектированию CPU в Logisim.
Все схемы, представленные выше, можно скачать одним файлом.
Logisim можно скачать здесь.
Терминал
Добавим к схеме терминал для демонстрации того, как ассемблерные инструкции преобразуются в машинный код.
Добавим конечный автомат для обработки последовательностей поступающих символов.
Семизначный код буквы «i» равняется 1101001
Семизначный код буквы «n» равняется 1101110
Семизначный код буквы «p» равняется 1110000
Для выделения конкретной буквы из потока символов будем использовать компаратор. В начальном состоянии компаратор сравнивает поступивший символ с семизначным кодом буквы «i»
Автомат переходит в следующее состояние, если после буквы «i» поступает буква «n»
Автомат переходит в следующее состояние, если после букы «i», а затем «n» поступает буква «p» 
Добавим команду out
Подробнее о командах inp и out можно прочитать в следующей части.
Железо
Рассмотрим, как работает сумматор на примере микросхемы 155им3 (7483). Для микросхем 155-й серии условимся, что на входах есть внутренний резистор, подтягивающий к плюсу (если ножка «висит в воздухе», то на ней присутствует логическая «единица»), поэтому при подключении питания к микросхеме зажгутся все светодиоды, присоединенные к выходу.
На картинке представлена МС 74ls283 (современный аналог 155им3).
Для того, чтобы в Logisim спроектировать такую микросхему, необходимо выбрать «Меню» — «Проект» — «Добавить схему».
Вот как эта МС выглядит внутри подсхемы. Это четыре полусумматора, объединённые в полный сумматор.

В качестве аккумулятора будем использовать микросхему 155тм8 (74175) — счетверённый D-триггер.
Триггеры, входящие в состав МС, пропускают насквозь всё время, пока на входе синхронизации присутствует 1, а не только по фронту (триггеры со статическим управлением), но в программе Logisim нам доступны только триггеры с динамическим управлением, но в данном случае это не важно; будем использовать то, что есть.
Подробнее про триггеры можно прочитать в Википедии.
Соберём из D-триггеров модель МС 155тм8.

Далее соберём схему, позволяющую складывать наборы чисел.
Например, если сложить набор из чисел 2 (0010), мы получим 2 (0010), 4 (0100), 6 (0110) и т.д.
Сперва 2 появляется на выходе сумматора (красные светодиоды), затем 2 загружается в счетверенный D-тригер (желтые светодиоды), а на выходе сумматора появляется 4, затем 4 загружается в 155тм8, а на выходе сумматора появляется 6 и т.д.
Для того, чтобы спроектировать простой модуль памяти, нам понадобится мультиплексор. Спроектируем сдвоенный мультиплексор 155кп2.

Также нам понадобится счетчик. Спроектируем микросхему 155ие5.

Это четырехразрядный счетчик, но нам понадобится только два младших разряда.
Будем хранить числа, например, 2 (0010), 3 (0011), 5 (0101).
Объединим все компоненты в одну схему. Будем складывать числа, которые хранятся в «памяти»
2 + 3 + 5.
P.S. Статья про книгу «Код. Тайный язык информатики.» есть на Хабре вот здесь.
З.Ы. Переводные статьи (автор переводов PatientZero) про архитектуру процессора здесь, здесь и здесь
- cpu design
- logisim
- тайный язык информатики
- Схемотехника
- DIY или Сделай сам
- Электроника для начинающих
Источник: habr.com
Logisim
Программное обеспечение для разработки и симулирования цифровых логических схем.

Программа Logisim имеет простой графический интерфейс и в первую очередь применяется в качестве образовательного инструмента. Приложение включает в себя: панель инструментов, строку меню, панель проводника (со списком схем и инструментов загруженных библиотек), таблицу атрибутов выделенного компонента или инструмента и рабочее окно с компонентами схемы.
Программа Logisim имеет обширную библиотеку. Среди основных элементов можно отметить: блок логических элементов (управляемый инвертор и буфер, НЕ, ИЛИ, И, четность и нечетность и т.д.), элементы проводки (разветвитель, датчик, контакт, согласующий резистор, передаточный вентиль, тоннель и т.д.), элементы ввода/вывода (кнопка, клавиатура, джойстик, светодиод, семисегментный индикатор, терминал, светодиодная матрица и т.д.), набор мультиплексоров, блок арифметических операций (сумматор, множитель, вычитатель, делитель, компаратор, отрицатель и т.д.), элементы памяти (триггеры, регистры, ОЗУ и ПЗУ, счетчики, генераторы случайных чисел и т.д.). Приложение также позволяет рисовать вертикальные/горизонтальные проводники и осуществляет их автоматическое подключение к элементам схем.
Программа Logisim дает возможность не только рисовать цифровые схемы, но и симулировать их поведение. При этом просчет процессов происходит прямо в ходе редактирования схемы – изменяются значения на входах/выходах, элементы вывода отображают соответствующую информацию, обновляется состояние устройств памяти, а провода в зависимости от значений меняют свой цвет. Для схем с тактовыми генераторами моделирование можно осуществлять либо потактово, либо путем установки максимальной тактовой частоты.
Одной из важнейших возможностей программы Logisim является создание подсхем с целью повторного применения уже спроектированных частей, а также для упрощения процесса отладки. Приложение включает небольшой редактор векторной графики, способный менять внешний вид и расположение контактов подсхем при их добавлении в другие схемы.
Еще один модуль – «Комбинационный анализ» – позволяет преобразовывать данные между логическими выражениями, логическими схемами и таблицами истинности, давая возможность конвертировать информацию во всех направлениях. Все провода в программе Logisim имеют один из семи цветов, несущих информацию об их назначении. Провода можно собирать в пучки с назначением порядка входа в пучок. Кроме того поддерживается: создание на языке Java пользовательских библиотек компонентов, привязка любого инструмента к определённой комбинации клавиш, вывод полной статистики по количеству и типам компонентов, содержащихся в схеме. Необходимо отметить, что программа Logisim не дает возможности работать с аналоговыми элементами.

Программа Logisim была разработана преподавателем Hendrix College, профессором Карлом Берчем (США, штат Арканзас, город Конуэй). Перевод на русский язык был выполнен Ильей Лиловым. Данный инструмент моделирования логических схем впервые появился в 2001 году, и с тех пор регулярно обновляется и дополняется.
Приложение Logisim является свободным программным обеспечением (лицензия GNU GPL). Софт включает в себя: справку по элементам библиотеки, полное руководство пользователя и краткое пособие для начинающих.
Программа Logisim представлена на русском (включая полную документацию), английском, немецком, испанском, португальском и греческом языках.
Для работы рассматриваемого конструктора схем необходимо наличие пакета Java Runtime Environment (5 версии или более поздней). Программа Logisim является кроссплатформенным программным обеспечением и работоспособна на операционных системах: Microsoft Windows (поддерживаются все последние версии), MacOS, Linux и Solaris. Дистрибутив приложения содержит один исполняемый файл, не требующий установки.
Распространение программы: бесплатная.
Официальный сайт Logisim: http://cburch.com
Форматы файлов Logisim: CIRC
Источник: cxem.net