- •Оглавление
- •Введение
- •Методы разработки алгоритмов и программ имитационных моделей комбинационных схем и последовательных автоматов с памятью
- •Методы разработки алгоритмов имитационных моделей комбинационных схем
- •Непосредственнее решение функций алгебры логики
- •Метод бинарных функций
- •Решение функции алгебры логики методом адресных переходов
- •Элементы памяти полупроводниковых устройств
- •Классификация триггерных устройств
- •Триггер как элементарный последовательный автомат
- •Наиболее популярные методы разработки алгоритмов и программ имитационных моделей с памятью
- •Асинхронные триггеры
- •Асинхронный rs-триггер
- •Асинхронные s-, r- и e-триггеры
- •Асинхронный d-триггер
- •Асинхронные т-триггеры
- •Асинхронные jk-триггеры с импульсным управлением
- •Асинхронные потенциально управляемые jk-триггеры
- •Синхронные (тактируемые) триггеры
- •Синхронный rs-триггер
- •Синхронный d-триггер
- •Синхронный jk-триггер
- •Универсальные d- и jk-триггеры
- •Примеры схем, построенных с применением jk-триггера к155тв1
- •Пример разработки имитационной модели триггерного устройства
- •Непосредственное решение уравнений, описывающих работу триггерной установки
- •Использование графа состояний триггерного устройства для разработки алгоритма
- •Применение таблицы переходов для решения поставленной задачи
- •Реализация дискретных устройств на микроконтроллерах pic16
- •Введение в программирование микроконтроллеров pic16
- •Краткие сведения об архитектуре микроконтроллеров pic16 и принципе их работы
- •Язык ассемблера pic16
- •Команды пересылки
- •Арифметические команды
- •Булевы операции
- •Битовые операции
- •Операции условного, безусловного переходов и вызова подпрограмм
- •Общий вид программы и типовые приемы программирования
- •Битовая арифметика
- •Ветвление
- •Вызов подпрограммы
- •Использование среды mplab
- •Моделирование комбинационных автоматов
- •Метод непосредственного вычисления фал
- •Метод бинарных функций
- •Метод адресных переходов (табулирование функций)
- •Приложение а. Исходные тексты примеров а.1. Применение метода непосредственного вычисление фал
- •А.2. Применение метода бинарных программ
- •А.3. Применение метода адресных переходов а.3.1. Способ размещения таблицы в пзу
- •А.3.2. Способ размещения таблицы в озу
- •А.4. Модуль hdw_init
- •Приложение б. Краткий справочник инструкций pic16
- •Библиография
- •Имитационное моделирование дискретных устройств
- •620034, Екатеринбург, ул. Колмогорова, 66.
Методы разработки алгоритмов и программ имитационных моделей комбинационных схем и последовательных автоматов с памятью
Методы разработки алгоритмов имитационных моделей комбинационных схем
Существует довольно много способов моделирования дискретных устройств в виде алгоритмов и программ. При моделировании комбинационных схем, не содержащих элементы памяти, наиболее популярными являются:
– непосредственное решение функций алгебры логики (ФАЛ);
– метод бинарных функций;
– метод адресных переходов.
При этом методы разработки алгоритмов реализации дискретных устройств на микропроцессорах практически не зависит от типа микропроцессора и практически не зависят от используемых языков прогаммирования.
Непосредственнее решение функций алгебры логики
Рассмотрим выполнение этой задачи на конкретном примере. Пусть задана релейная схема, изображенная на рис. 1.1.
Рис. 1.1. Комбинационная схема
Эта комбинационная схема описывается следующей функцией алгебры логики:
.
Микропроцессор имеет возможность выполнять логические действия только с одной или двумя переменными поэтому, сначала необходимо перемножить b и с и результат сохранить в оперативной памяти, затем найти инверсные значения этих чисел, их перемножить и сложить с полученным ранее результатом. После этого результат последних действий необходимо умножить на число а.
Алгоритм непосредственного решения данной функции алгебры логики приведен на рис. 1.2.
Подобные программы называются компилирующими и разрабатываются для каждой ФАЛ индивидуально.
Рис. 1.2. Алгоритм непосредственного решения ФАЛ
Метод бинарных функций
Метод бинарных функций основан на том, что процесс вычисления ФАЛ сводится к последовательному выполнению команд условного перехода в зависимости от значения очередной переменной. Для выполнения этой процедуры необходимо сначала разложить ФАЛ по ее переменным. Ниже показан принцип разложения функции, имеющей четыре переменные:
Рассмотрим пример ФАЛ:
Выполним разложение функции:
Рис.1.3. Алгоритм бинарной программы вычисления ФАЛ
Этот вид программ решения ФАЛ является также компилирующим.
Решение функции алгебры логики методом адресных переходов
Метод адресных переходов позволяет получить универсальную программу, пригодную для решения любой функции алгебры логики. Подобные программы называются интерпретирующими. Достоинством этого метода является также высокое быстродействие решения задачи, к недостаткам следует отнести то, что требуется большой объем памяти, необходимый для хранения данных.
Метод адресных переходов предусматривает введение в ЭВМ результатов предварительного расчета ФАЛ для всех возможных входных наборов (разработка таблицы истинности). Каждому входному набору выделяется отдельная ячейка памяти, в которой хранится значение функции на этом наборе. Программа предусматривает формирование адреса строки таблицы, ее считывание и вывод результата. Таким образом, при изменении ФАЛ возникает необходимость только в замене данных (таблицы истинности).
Пример: разработаем таблицу истинности и алгоритм для решения ФАЛ:
Таблица 1.1
Таблица истинности
Номер входного набора |
Входной набор |
F |
Адрес ячейки памяти |
||||
A |
b |
c |
|||||
0 |
1 |
2 |
Разряды |
||||
0 |
0 |
0 |
0 |
0 |
Table |
||
1 |
1 |
0 |
0 |
1 |
Table+1 |
||
2 |
0 |
1 |
0 |
0 |
Table+2 |
||
3 |
1 |
1 |
0 |
0 |
Table+3 |
||
4 |
0 |
0 |
1 |
0 |
Table+4 |
||
5 |
1 |
0 |
1 |
0 |
Table+5 |
||
6 |
0 |
1 |
1 |
0 |
Table+6 |
||
7 |
1 |
1 |
1 |
1 |
Table+7 |
||
Рис. 1.4. Алгоритм решения ФАЛ методом адресных переходов
