Logisim 2.7.1 на русском
Содержание:
- Libraries
- Поведение
- Поведение
- Утилиты (Портативные) » Logisim 2.7.1 Portable ML/Rus
- Атрибуты
- Version 2.7.1 (March 21, 2011)
- Changelog
- Familiarizing yourself with the Logisim software interface
- Create complex or simple digital logic circuits and test their validity with this intuitive application, using the wide collection of components that it features
- The Compiler
- The CPU
- Контакты
- Шаг 1: Добавление логических элементов
Libraries
This section contains libraries of components that can be
imported into Logisim. If you have your own library of
components that you think would be useful to others, I’ll be
happy to post a link here to a hosting Web site or to the
library itself.
-
7400 series Logisim
library from Ben Oztalay (ZIP,
uncompressed) -
A set of Logisim circuits corresponding to a large number of
7400-series chips, produced by Ben Oztalay. The pin layout
matches the 7400 IC layouts.
(2011, released into public domain). -
7400 series Logisim
library from Technological Services Company (ZIP,
uncompressed) -
A set of Logisim circuits corresponding to a large number of
7400-series chips, produced by Technological Services Company.
The pin layout has inputs on the left, outputs on the right.
(Copyright 2005, released under the GPL). - Gray Counter example (JAR)
- The JAR library described in the Logisim
User’s Guide for version 2.3.0 and later. - Incrementer example (JAR)
- The outdated JAR library described in the Logisim
User’s Guide prior to version 2.3.0. Compatible with
versions Logisim 2.0 Beta 20 and later. The class name is
com.cburch.incr.Components.
Поведение
Элементы И, ИЛИ, И-НЕ, ИЛИ-НЕ вычисляют соответствующую функцию от значений на входах и выдают результат на выход.
По умолчанию, неподключенные входы игнорируются — то есть, если входы действительно не имеют ничего подключенного к ним — даже провода. Таким образом, вы можете добавить 5-входовый элемент, но подключить только два входа, и он будет работать как 2-входовый элемент; это избавляет вас от необходимости беспокоиться о настройке количества входов каждый раз при создании элемента. (Если все входы не подключены, то на выходе значение ошибки X.) Некоторые пользователи, однако, предпочитают, чтобы Logisim настаивал, чтобы все входы были подключены, поскольку это соответствует реальным элементам. Вы можете включить это поведение, выбрав меню Проект > Параметры…, перейдя на вкладку Моделирование, и выбрав вариант Ошибка для неопределённых входов
для Выход элемента при неопределённости
.
Двухвходовая таблица истинности для элементов следующая. (Буква X обозначает значение ошибки, а буква Z обозначает плавающее значение.)
|
|
|||||||||||||||||||||||||
|
|
Короче говоря, эти компоненты работают как ожидается, пока на всех входах 0 или 1. Если на входе не 0 и не 1 (он плавающий или на нём значение ошибки), то компонент относится к этому значению как к 0 и 1 одновременно: если значение на выходе будет одинаковым в обоих случаях (например, если на одном из входов элемента И определённо 0, а значение на втором входе под вопросом), то выходное значение будет присутствовать; но если выход изменяется в зависимости от того, что на входе — 0 или 1, то на выходе будет значение ошибки.
Многобитные версии каждого элемента будут выполнять свои однобитные преобразования над входами поразрядно.
Поведение
Контакт — это выход или вход схемы, в зависимости от значения атрибута Выход? . При отрисовке контакта Logisim представляет выходные контакты как кружки или скруглённые прямоугольники, а входные контакты как квадраты или прямоугольники. В обоих случаях отдельные биты значения, которое оправляется или принимается, отображаются внутри данного компонента (кроме Вида для печати, когда компонент говорит только какова разрядность контакта).
Контакт — удобный компонент для взаимодействия со схемой, и начинающим пользователям Logisim не нужно использовать их каким-либо другим образом. Но пользователь, строящий схему с использованием нескольких подсхем (как описано в разделе «Подсхемы» Руководства пользователя ) будет использовать контакты также чтобы определить интерфейс между схемой и подсхемой. В частности, компоненты Контакт чертежа схемы определяют контакты, которые отображаются на компоненте Подсхема, когда чертёж используется внутри другой схемы. В такой схеме значения, переданные и принятые в этих точках компонента Подсхема, связаны с контактами внутри чертежа подсхемы.
Утилиты (Портативные) » Logisim 2.7.1 Portable ML/Rus
Logisim — свободное программное обеспечение, выпущенное под GNU GPL, позволяющее разрабатывать и моделировать цифровые электрические схемы, используя графический интерфейс пользователя. Может запускаться на Microsoft Windows, Mac OS X и Linux. Код полностью написан на Java с использованием библиотеки Swing для графического интерфейса пользователя.
Программа чаще всего используется учащимися в курсе изучения информатики для разработки и экспериментов с цифровыми схемами при моделировании. Схемы разрабатываются в Logisim с помощью графического интерфейса, близкого к традиционному для программ для рисования, такой интерфейс встречается во многих других программах для моделирования схем. В отличие от большинства других программ такого назначения, сопоставимых с Logisim по сложности, Logisim позволяет пользователям редактировать схемы в процессе моделирования. Относительная простота интерфейса делает программу удобной для обзорных курсов. Возможности разработки более сложных схем, такие как «подсхемы» и «пучки проводов», имеющиеся в Logisim, доступны в некоторых других графических инструментах с открытым исходным кодом.Хотя пользователи могут разрабатывать даже полные реализации процессоров, используя Logisim, программа разработана в основном для образовательного использования. Профессионалы обычно разрабатывают такие масштабные схемы, используя языки описания аппаратуры, такие как Verilog или VHDL. Logisim не позволяет работать с аналоговыми компонентами.Особенности* Это бесплатно! Logisim с открытым исходным кодом (GPL).* Она работает на любой машине, поддерживающих Java 5 или более поздние версии; специальные версии выпущены для MacOS X и Windows
Кросс-платформенность имеет важное значение для студентов, которые имеют различные компьютерные системы.* Иинтерфейс основан на интуитивной панели инструментов. Цветовая маркировка проводов помогает в моделировании и отладке схем.* Программа рисует горизонтальные и вертикальные проводники, автоматическое подключение к компонентам и к другим проводникам
Это помогает легко делать схемы!* Завершенные схемы могут быть сохранены в файл, экспортированы в файл GIF или распечатаны на принтере.* Автоматические макеты могут быть использованы в качестве «подсхем» других схем, позволяя создавать иерархические схемы.* Элементы схем включают входы и выходы, логические элементы, мультиплексоры, компоненты ОЗУ и ПЗУ, ….* Включен модуль «Комбинационный анализ», позволяющий преобразовывать данные между логическими схемами, логическими выражениями и таблицой истинности. Комбинационный анализ позволяет вам конвертировать данные между этими тремя представлениями во всех направлениях* Не требует установки — один исполняемый файл.’);if(«undefined»===typeof loaded_blocks_da){loaded_blocks_da=[];function n(){var e=loaded_blocks_da.shift();var t=e.adp_id;var r=e.div;var i=document.createElement(«script»);i.type=»text/javascript»;i.async=true;i.charset=»utf-8″;i.src=»https://code.directadvert.ru/show.cgi?async=1&adp=»+t+»&div=»+r+»&t=»+Math.random();var s=document.getElementsByTagName(«head»)||document.getElementsByTagName(«body»);s.appendChild(i);var o=setInterval(function(){if(document.getElementById(r).innerHTML&&loaded_blocks_da.length){n();clearInterval(o)}},50)}setTimeout(n)}loaded_blocks_da.push({adp_id:e,div:t})})(233229)Logisim распространяется с поддержкой русского интерфейса и полной документацией на русском языке.
The latest version 2.7.1 of March 21, 2011Platforms: Windows Multilingual user interface (English, Russian, etc)Licence: FreewareDeveloper: ozark.hendrix.eduSize: 6.64 Mb
Download Deposit
Download Turbobit
Download Rusfolder
- Просмотров: 3283 |
Атрибуты
Когда компонент выбран, или уже добавлен, комбинации от Alt-0 до Alt-9 меняют его атрибут Биты данных
, а клавиши со стрелками меняют его атрибут Направление
.
- Направление
- Сторона компонента, где должен быть его входной/выходной контакт.
- Выход?
- Определяет, будет компонент выходным контактом или входным. (Заметьте, что если компонент Контакт — входной контакт, то контакт, который выступает в качестве интерфейса в схеме, будет выходом, и наоборот.)
- Биты данных
- Количество битов значения, с которым имеет дело контакт.
- Три состояния?
- Для входного контакта этот атрибут определяет, может ли пользователь заставить контакт подать на выход неопределённые (например плавающие) значения. Этот атрибут имеет дело только с интерфейсом пользователя; он никак не влияет на поведение контакта, когда чертёж схемы использован как подсхема. Для выходного контакта атрибут не влияет ни на что.
- Обращение с плавающими
- Для входного контакта атрибут определяет, каким образом следует рассматривать плавающие значения, когда они приняты на входе, возможно с использованием чертежа как подсхемы. При значении «Не менять» плавающие значения передаются в чертёж как плавающие значения; при значении «Повышать» они преобразуются в 1 до того, как передаются в чертёж схемы; и при значении «Понижать» они преобразуются в 0 до того, как передаются в чертёж схемы.
- Метка
- Текст внутри метки, привязанной к компоненту.
- Направление метки
- Расположение метки относительно компонента.
- Шрифт метки
- Шрифт, которым отрисовывается метка.
Version 2.7.1 (March 21, 2011)
-
Feature: When errors are in a file being loaded, the file is still partially loaded and displayed. If multiple errors are found, each is displayed.
-
Feature: In Plexers library, added Select Location attribute to multiplexer, demultiplexer, and decoder.
-
Feature: If some components somehow manage to get «off the grid,» they are relocated back onto the grid once they are moved.
-
Behavior change: With transistors and transmission gates, a floating value is passed through as floating regardless of the value of gate (including a floating or error gate value).
-
Behavior change: When clicking the currently viewed circuit, the circuit attributes are shown but no tool to add that circuit to itself is selected. This also happens with triple-clicking a circuit: The view is switched to the circuit, but the tool is not selected for adding instances to itself.
-
Bug fix: The combinational analysis «Product of Sums» option did not work when any variable other than the last one was to appear negated in any of the sums.
-
Bug fix: In the main editor window, when «Close» was selected from the Window menu, a dialog box popped up giving the Save/Discard/Cancel; but if Cancel was selected, the window was still closed (but without saving).
-
Bug fix: When «Reset Simulation» was selected while simulation was enabled, the reset values were not propagated through the circuit immediately.
-
Bug fix: Several types of exceptions could occur during simulation, particularly when poking the simulation while the simulation is busy. Many of these have been removed.
-
Bug fix: You could copy components from one project and paste them into another, even though the other project’s libraries may not support the components being pasted.
-
Bug fix: Through starting to edit an attribute with a drop-down menu and then switching to view attributes for something else, the newly viewed attributes would actually change to the value of the previous edit.
-
Bug fix: When editing a circuit’s appearances, labels would be given a color based on the fill color for rectangles/ovals/polygons rather than the color selected for text. This color was by default white, and so they appeared invisible.
-
Bug fix: When editing a circuit’s appearance, changing between Border, Fill, Border & Fill didn’t update attribute list (whether viewing attributes for a tool or for the current selection).
-
Bug fix: When editing a circuit’s appearance and copying to the clipboard, the anchor’s location and facing are stored to the clipboard if the selection includes the anchor.
-
Bug fix: In rare cases, loading files would show an error reading «Resetting to invalid mark.» (This seems to have involved a non-ASCII character in exactly the wrong position.)
-
Bug fix: The Windows executable’s application description was changed so «Open with» context menu gives proper application name.
Changelog
- Core Stuff:
- Italian, Simplified Chinese and partial french translation!
- Autoupdates!
- Compiled with Java 14
- Complete new movement system with mouse dragging
- Auto center and Auto zoom when opening new files/circuits or with ctrl-0, double mouse wheel click and with the round button you’ll see on the lower-right corner
- Almost infinite canvas, arrows will show you in what direction is the circuit if it’s outside of your view
- Zoom in and out using mouse wheel where you’re pointing at
- Double click with Edit Tool to label components
- Load libraries from folder at startup (Preferences / Fork)
- Selectable painting refresh rate, default 60Hz (Legacy was 20Hz and sometimes lagging)
- Anti Aliasing, Look and Feel and Fill Component’s Background preference
- Clock custom frequency
- Press ESC or DEL to cancel «Add Tool» action, F1 opens Library Reference
- Increased output limit in Analyze Circuit to 32
- Analyze Circuit should calculate table/expression with any kind of component
- Added «Clear Log» button
- Added missing tooltips
- Changed some default values
- New components:
- Wiring->Programmable Generator
- TTL gates (7400, 7402, 7404, 7408, 7432, 7447, 7485, 7486, 74165, 74283, 747266)
- I/O->Digital Oscilloscope
- I/O->Switch
- I/O->Dip Switch
- I/O->Slider
- I/O->RGB LED
- I/O->Buzzer
- Memory->PLA ROM
- Plexers->7-Segment Display Decoder
- Component changes:
- New FF layout
- The Shift Register will show you its internal bits even when set to serial load
- Right click on Pin, Edit Contents and set its value typing the decimal number
- Added Sel pin in Register
- Added Preset pin in Register and Counter
- TTY and Keyboard components can use 16-bit values (UTF-16)
- New Attributes:
- Controlled Buffer / Inverter: Negate Control Input attribute
- Added Sel Active Level attribute in components with Sel pin
- Priority Plexer «No Input» attribute
- Joystick «Facing» attribute
- Bit Selector «Select location» attribute
- Added Label Color attribute for each component with Label attribute and Text Tool
- Added Label for RAM, ROM and PLA ROM
- FF D, S-R: «Latch» option in Trigger attribute
- New Counter behavior (different pin logic)
- Fixed bugs:
- Big fixes to Log menu and Log output file
- Big fixes for Text Tool
- Fixed empty template bug introduced in Logisim 2.7.0
- Fixed input positions in wide gates with 4 inputs
- Fixed opening new file in new window with old window not used
- Fixed bugged 32b multiplier
- Some fix from original early version 2.7.2.255
Familiarizing yourself with the Logisim software interface
After downloading and installing the Logisim software, you will need to first familiarize yourself with its graphical user interface before you can use it without any difficulty. In this article, I will give a very brief overview of the graphical user interface of the Logisim software. However, I would suggest that you read through the documentation of the Logisim software (which can be found here: http://www.cburch.com/logisim/docs.html), to give you more knowledge on how to navigate through the software.
The user interface of the Logisim software
Fig. 1 below depicts the various parts of a typical Logisim software interface.
Fig. 1
– The Menu Bar: contains the various instructions that can be executed in the Logisim software.
– The Toolbar: contains shortcuts to the most commonly used commands in the Logisim software. The table in Fig. 2 below depicts the various commands on the Toolbar and their functions.
Fig. 2
– The Explorer Pane: contains a list of digital circuit components (such as wiring, gates, multiplexers, etc.) that are available for digital circuit design in Logisim.
– The Attribute Table: gives detailed attributes of digital design components (e.g. AND, OR and XOR gates). It also enables the attributes of these digital design components to be edited.
– The Canvas: the area in which digital circuits are created and designed. The Canvas enables digital circuits to be designed and simulated simultaneously.
Create complex or simple digital logic circuits and test their validity with this intuitive application, using the wide collection of components that it features
What’s new in Logisim 2.7.1:
- Feature: When errors are in a file being loaded, the file is still partially loaded and displayed. If multiple errors are found, each is displayed.
- Feature: In Plexers library, added Select Location attribute to multiplexer, demultiplexer, and decoder.
- Feature: If some components somehow manage to get «off the grid,» they are relocated back onto the grid once they are moved.
- Behavior change: With transistors and transmission gates, a floating value is passed through as floating regardless of the value of gate (including a floating or error gate value).
Read the full changelog
Logisim is an open source computer program that allows you to create and simulate digital logic circuits. It’s a straightforward tool that is aimed for use in schools and universities as it provides the means to create both simple educational circuits, as well as complex ones.
A tool well suited for anyone
Logisim displays a graphical user interface which makes it easy to understand and use if you have basic knowledge in electronics and circuitry. From the main window you are able to access all of its features and tools, and since the app doesn’t even need installing, you’re ready to get started with it immediately after you copy it to your computer.
As you would expect, the workspace is comprised from a generous drawing space, an easy to explore library and a toolbar that contains project simulation commands and configuration options.
Component rich library
Though small in stature, Logisim doesn’t compromise when it comes to components. It contains a large library of tools and components that you need in order to create circuits. They come grouped into categories such as ‘Wiring’, ‘Gates’, ‘Plexers’, ‘Arithmetic’, ‘Memory’, ‘Input/Output’ and ‘Base’, and can be inserted into the canvas area by a simple means of drag and drop.
Each component that you add to the circuit can be repositioned every time it is required and its properties customized accordingly. If at some point you encounter a component you don’t recognize or are unfamiliar with its technical details, Logisim comes with extremely detailed documentation that can help you overcome any issue.
Design and simulate logic circuits
Logisim enables you to effortlessly draw circuits, simulate their use and view color coded wires that can indicate the presence of errors. Moreover, once you’ve successfully created your simulation it can be exported in GIF format and shared with colleagues or inserted into various projects.
With the above in mind and a lot more to discover in the details, Logisim can easily pass for a practical and efficient learning tool.
The Compiler
The compiler is a way to convert the above Assembly code into machine code. Since the CPU is developed in Logisim, the file format chosen was the file format that allows reading and writing to the built in RAM modules. Below is a sample program that adds the values and (Decimal and ) and stores the value in memory address 0, halting with exit code 0.
This compiler is written in python, due to its flexibility and lightweight code (the full compiler, with warnings and system argument parsing is still less than 2KB, less than the cluster size on MacOS and some other operating systems). Relative to the size of the programs this compiler is working on, the file size is daunting, being 4 times the size, but if the CPU were able to handle more information, by moving from 4 to 8 or even 16 bits, the compiler would only increase enough to accommodate any new commands.
The CPU
The CPU I’ve designed is by no means the most efficient design, but its purpose isn’t to be the most efficient or the fastest, but rather as a learning experience. The design is not the same as most low-powered CPUs, as there are separate memory banks for the instructions and the usable memory. There is functionality to manipulate the contents of the instruction bank, but that is purely to alter the course of the program. Each 8-bit memory bank can hold 256 bytes of information, leading to a maximum program size of 256 bytes, and a total of 256 bytes of usable memory. There are various registers in the CPU that can each hold a small amount of information. Registers A and B can each hold a byte of information, the Memory Address Register can hold half a byte (a nibble) of information, and the Carry On Operation Register can hold a measely 1 bit of information. Combining these memory registers, there is a total of 514.625 bytes (4117 bits) of information stored at any given moment, 258 bytes being usable between the memory bank, and two main registers.
Контакты
* Звёздочкой отмечены контакты, существующие только когда атрибут Параллельная загрузка включен.
- Западный край, верхний контакт (вход, разрядность равна 1)
- Сдвиг: когда на нём 1 или он не подключен, все ступени сдвигаются при срабатывании тактового входа; но если на нём 0, никакого сдвига не происходит. Этот вход игнорируется, если на входе Загрузка 1.
- Западный край, средний контакт (вход, разрядность соответствует атрибуту Биты данных)
- Данные: при продвижении ступеней значение с этого входа загружается в первую ступень.
- Западный край, нижний контакт, отмечен треугольником (вход, разрядность равна 1)
- Тактовый вход: в момент срабатывания этого входа, как указано в атрибуте Срабатывание, компонент может сдвинуть ступени или загрузить новые значения.
- *Северный край, левый контакт (вход, разрядность равна 1)
- Загрузка: когда на этом входе 1, значения с остальных контактов на северном крае загружаются во все ступени при следующем срабатывании тактового входа. Когда на нём 0 или он не подключен, никакой загрузки не происходит.
- *Северный край, остальные контакты (вход, разрядность соответствует атрибуту Биты данных)
- Данные: эти значения загружаются во все ступени при срабатывании тактового входа, пока на входе Загрузка 1. Крайний левый вход соответствует младшей ступени.
- Южный край, левый контакт (вход, разрядность равна 1)
- Очистка: когда значение равно 1, все ступени асинхронно сбрасываются на 0, и все другие входы игнорируются.
- *Южный край, остальные контакты (выход, разрядность соответствует атрибуту Биты данных)
- Выход: выдаёт значение, хранящееся в каждой ступени; младшая ступень отражена в крайнем левом контакте (рядом со входом Очистка).
- Восточный край (выход, разрядность соответствует атрибуту Биты данных)
- Выход: выдаёт значение, хранящееся в последней (старшей) ступени.
Шаг 1: Добавление логических элементов
Вспомним, что мы пытаемся построить следующую схему в Logisim.
Я предлагаю строить схему, добавляя сначала элементы, как своего рода каркас, а потом соединять их проводами. Первое, что мы сделаем, это добавим два элемента И. Нажмите на инструмент Элемент И на панели инструментов (, предпоследний инструмент в списке). Затем щёлкните в области редактирования там, где вы хотите поместить первый элемент И. Не забудьте оставить достаточно места для вещей слева. Затем нажмите на инструмент Элемент И снова и поместите второй элемент И под первым.
Обратите внимание на пять точек на левой стороне элемента И. Это места, где могут быть прикреплены провода
Так получилось, что мы используем только два из них для нашей схемы Исключающее ИЛИ; но для других схем вы можете обнаружить, что более чем два провода, идущие к элементу И, могут быть полезны.
Теперь добавьте другие элементы. Сначала щёлкните на инструменте Элемент ИЛИ (); затем щёлкните там, где вы хотите его поместить. И расположите два элемента НЕ на холсте, используя инструмент Элемент НЕ ().
Я оставил немного пространства между элементами НЕ и элементами И; если хотите, однако, вы можете расположить их сразу друг за другом и сэкономить свои усилия на соединении их проводами позже.
Теперь мы хотим добавить в чертёж два входа х и у. Выберите инструмент Добавить входной контакт () и разместите контакты. Вам также нужно разместить выходной контакт рядом с выходом элемента ИЛИ, используя инструмент Добавить выходной контакт (). (Опять же, я оставляю немного пространства между элементом ИЛИ и выходным контактом, но вы можете разместить их сразу друг за другом.)
Если вы решили, что вам не нравится, где вы разместили что-то, то вы можете выбрать это с помощью Инструмента Правка () и перетащить в нужное место. Или же вы можете удалить его полностью, выбрав Удалить из меню Правка или нажав клавишу Delete.
Когда вы размещаете каждый компонент, вы заметите, что как только компонент размещён, Logisim возвращается к Инструменту Правка, так что вы можете двигать размещённый компонент, или (как мы скоро увидим) соединить компонент с другими, создавая провода. Если вы хотите добавить копию недавно размещённого компонента, то быстрый вызов для этого — нажать Control-D для дублирования выделения. (Некоторые компьютеры используют другие клавиши для меню, такие как клавиша Command на Макинтошах. Вам нужно нажать эту клавишу с клавишей D.)
Далее: Шаг 2: Добавление проводов