Научная статья на тему 'Формализованное описание цифрового устройства и его модель'

Формализованное описание цифрового устройства и его модель Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
56
13
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — И. П. Абрамов, Н. П. Байда, Ю. М. Комаров, В. Б. Липский, В. М. Разин

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Формализованное описание цифрового устройства и его модель»

ИЗВЕСТИЯ

ТОМСКОГО ОРДЕНА ОКТЯБРЬСКОЙ РЕВОЛЮЦИИ И ОРДЕНА ТРУДОВОГО КРАСНОГО ЗНАМЕНИ ПОЛИТЕХНИЧЕСКОГО ИНСТИТУТА им. С. М. КИРОВА

Том 294 1976

ФОРМАЛИЗОВАННОЕ ОПИСАНИЕ ЦИФРОВОГО УСТРОЙСТВА

И ЕГО МОДЕЛЬ

И. П. АБРАМОВ, Н. П. БАИДА, Ю. М. КОМАРОВ, В. Б. ЛИПСКИЙ,

В. М. РАЗИН

(Представлена научным семинарам кафедры вычислительной техники)

Известные методы анализа [1, 2] цифровых устройств (ЦУ) используют представление объекта исследования в виде синхронной или асинхронной модели, что не всегда позволяет решать актуальные практические задачи, связанные с оценкой качества проектирования сложных ЦУ.

В настоящей работе рассматриваются вопросы исследования ЦУ импульсно-потенциальным асинхронным моделированием, что позволяет значительно расширить класс объектов исследования.

Основные определения

Прежде всего дадим определения логической сети, реализацией которой является ЦУ.

Назовем логической сетью множество элементов вместе с множеством соединений. Элементами сети являются (К, 1)—полюсники — элементарные преобразователи дискретной информации. Соединением называется отождествление двух полюсов сети. Не могут быть соединены два выходных полюса элемента. В сети выделены множества X ее входных полюсов и у — выходных полюсов.

Переменные, приписанные входным полюсам сети, назовем ее входными переменными, выходным — выходные. Набор значений входных переменных сети назовем входным вектором, а набор значений выходных переменных — выходным вектором.

Нахождение последовательности выходных векторов, в которую сеть перерабатывает заданную последовательность входных векторов, называется моделированием сети.

Как отмечено в работе [2], все методы моделирования делятся на два класса: двоичное и троичное моделирование, каждое из которых, в свою очередь, может быть либо синхронным, либо асинхронным. С помощью выбранного моделирования можно полностью исследовать объект, переработав все возможные последовательности входных векторов в последовательности выходных векторов. Можно исследовать объект частично, переработав в выходные определенное число входных последовательностей, выбираемых вероятностным образом.

В настоящей работе рассматривается метод двоичного асинхронного моделирования. Такой метод позволяет моделировать наиболее широкий класс объектов, в том числе и импульсно-потенциальные.

Моделирование переходного процесса

Назовем переходным процессом процесс, протекающий в сети за промежуток времени, заключенный между моментом входного вектора сети и моментом получения нового (устойчивого) выходного вектора.

Моделирование переходного процесса означает получение порядка и результатов срабатывания элементов за время переходного процесса.

Пусть г(<ц) —задержка элемента а*. Пусть также ст, — элемент в сети с минимальной задержкой т0. Тогда задержки элементов можно

условно выразить целыми числами

Будем считать, что элемент сработал, если изменилось значение переменной, приписанной его выходному полюсу. Очевидно, что если элемент сработал, то найдется сработавший на т(аг) раньше элемент ак, выходной полюс которого соединен с одним из входных полюсов а*.

В импульсно-потенциальных сетях импульсы представляются потенциальными сигналами длины 0,5.

Пусть А — множество элементов сети, которые должны сработать по истечении приписанных им задержек. Тогда алгоритм моделирования переходного процесса будет следующим:

1. Заносим в А элементы сети, которые должны сработать вследствие изменения значений входных переменных сети.

2. Если А — 0, то переходим на шаг 4, иначе уменьшаем на 1 задержки всех элементов в А.

3. Ищем в А элементы с нулевой задержкой. Если их нет, то переходим на шаг 2, иначе меняем значения выходных переменных найденных элементов, удаляем их из Л, после чего добавляем в элементы, которые должны сработать вследствие срабатывания удаленных элементов. Переходим на шаг 2.

4. Значения выходных переменных элементов, являющихся выходными переменными сети, образуют требуемый выходной вектор.

Следует отметить, что в А одновременно могут быть несколько одинаковых элементов, но с различными задержками.

Алгоритм представлен в виде программы на языке ЛЯПАС [3]. Программа работает с потенциальными и импульсно-потенциальными сетями, состоящими из элементов, реализующих функции И, ИЛИ, НЕ И, НЕ ИЛИ, сумма по модулю 2 и равнозначность переменных, приписанных их входным полюсом, а также элементов триггер на три входа, дифцепь 0—* 1, дифцепь 1->0 и задержка.

Представления информации в ЭВМ

Сеть в машине задается комплексом В, разбитым на подкомплексы, пронумерованные числами 0,1,..., п; п — число элементов сети. Нулевой подкомплекс задает разбиение В на подкомплексы так, что ¿-и элемент его задает начало ¿-го подкомплекса. Мощность нулевого подкомплекса равна п + 2. Последний элемент нулевого подкомплекса задает мощность комплекса.В. Первый подкомплекс комплекса В задает входной полюс счетчика, если он имеется. Нумерация остальных элементов произвольна, /-й подкомплекс комплекса В задает /-й элемент сети (входные полюса сети условно считаются элементами (0,1) — полюсниками). Первый элемент подкомплекса называется его шапкой, б первом разряде которой записано значение выходной переменной элемента. В разрядах с 8 по 16 записано численное значение задержки элемента, а с 17 по 22 — тип элемента, причем входной полюс имеет

тип 0, счетный вход—1, дифцепь 1->0 — 2, дифцепь 0->1—3, НЕЙ — 4, И — 5, НЕ ИЛИ — 6, ИЛИ — 7, сумма по модулю два — 10, равнозначность— 11, триггер — 12. Далее, под шапкой, в произвольном порядке перечисляются номера элементов, «питающих» данный элемент (в разрядах с 0 по 15). В подкомплексе, задающем триггер, первым указывается номер элемента, питающего единичный вход, вторым — счетный и третьим — нулевой вход. Незадействованные входы триггера отмечаются нулями.

Множество А задается комплексом Л, состоящим из шапок соответствующих элементов.

Моделирование неисправной схемы — моднее

1. Дана сеть С, состоящая из ОС и СК. Требуется осуществить потенциально-импульсное асинхронное моделирование сети С, при наличии в последней неисправных элементов.

2. Внешние операнды:

ак : С,

Рп — конец рабочего поля, задаются: аа , 0« .

Подпрограммы: вход, ней с, дубль, модель.

3. Моделирование сети осуществляется дважды. Первый раз моделируется исправная сеть. Запоминается правильное состояние. В сеть вносится исследуемая неисправность, после чего осуществляется моделирование неисправной сети.

4. * 054 001

§ 0 аа + Ьа = > а0 § — а0 > 1 = > а

* вход 7=>ЬФ^2

с< = > 1

* неис а 5 => Ь -> 4

§ 1 * дубль а

§ 2 * модель аЛЗай/!

§ 3 печ 0Э ~

§ 4.

Формирование множества изменившихся входов сети — вход

1. Найти множество О входных переменных схем С, изменивших свое значение.

2. Внешние операнды:

::с. Р*:: я.

Задаются: аа, 6а,

3. * 054 013

§ 0 с20 — с26 = > а 0 а 0 Ь

§ 1 Да ав=>сасЛа°->20с26Ь-*3

§ 2 а,>1@а,ДС1о^1

§ 3 Ь =>6?.

Формирование множества неисправных элементов — неис

1. Найти множество е неисправных элементов сети С.

2. Внешние операнды:

:: с>

7. Заказ 2612. 97

Задаются: аа, Ьа, ар. 4; * 054 014

- , § 0 0 а 0 с съ V с& = > а

§ 1 Дааа©г?ао-^2 аа == > 6 ал> 11

Д 77 © 1 о—За& Д а о-> 1 §3 а,=>М<7-*1 §2с=>6р.

Запоминание исправного состояния схемы — дубль

1. Задана сеть С, находящаяся в некотором исправном состоянии. Требуется запомнить это состояние сети.

2. Внешние операнды: аК::С

рп — номер разряда шапрк элементов, представляющих их состояние;

Ум — номер разряда шапок элементов, куда заносятся значения исправных состояний элементов. Задаются: аа, Ьа. 4. * 054 003

§ 0 0а

§ 1 Да авфйао->3 аа => Ь аь Д Сро->2

а& V = > аь 1 § 2 ай 1

§ 3.

Потенциально-импульсное моделирование — модель

1. Задано множество В входных переменных сети С, изменивших свое значение. Требуется осуществить потенциально-импульсное асинхронное моделирование сети С.

2. Внешние операнды:

Р*:: А

7Г — дополнительный выходной полюс, реализуемый при нехватке памяти;

оп — максимально возможная мощность комплекса ¡3; &п — режим моделирования.

Примечание. Данная программа позволяет моделировать сети с неисправностями. В этом случае г = 5. При моделировании исправной сети е должно быть равно 7. Задаются ая,

Подпрограммы: элемент, четность.

3. Алгоритм изложен выше.

4. * 054005

§ 0 + о = > а0~^5

§ 1 Да © о—> 4 0/ =>&,=> а > 17 Д 177

Н33а 1 - => са,©^ =>ас> 11 Д 77

§ 2 Дсфао-П > 22 о—> 1 = 1 =>/=*>/

* элемент а^Юг.^О/ § 10 => й аа => а

с

* четность Аак / 2

§3а=>а, Ae=>ft0-îhT /0->1->2

§ 4 < = > а0 Ь0 = > 63 § 5 Oô0 0/ Оа^о-^7- 1 =>с § 6'Да0со^7_рв> 11 Л77о->6-4|-6Рл

< = > Да Дс 6 §7 0а6э|-*1.

Моделирование элемента — элемент

1. Пусть / — номер элемента сети С, переменные входных полюсов которого изменили свое значение. Требуется выяснить, изменит ли значение его выходная переменная.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

2. Внешние операнды:

ак " ^ ^

m -1,

у — дополнительный выходной полюс, реализуемый, если значение выходной переменной не изменится. Задаются: аа, b

Подпрограммы: дифцепь, НЕ И, НЕ ИЛИ, двамод, равно, триггер.

3.

4. * 054007

§0 а*, => а 0 Ьаа > 11 Д 77 — 3 о-> 2 —■ 1 1

— 1 о_> 4 — 1 о^ 3 — 1 6 — 1 о-» 5 — 1 о-> 7 — 1 о-> 10 11

§ 1 д ь

§ 2 * дифцепь аЗ 12 13

§ 3 ЬЬ § 4 * НЕ И ар 12 13 / § 5 Д&

§6 * НЕ ИЛИ ар 12 13 / § 7 * двамод ар 12 13 / § 10 * равно ар 12 \Ъ/-§21 —>т

§ 11 * триггер ар 12 13 21 / ад Д сц о—>20--> т § 12 й |—> 15 —» 14 § 13 Ь о->15 § 14 аа Д Со |—»• 17 16

§ 15 *а/\с,о^\7

§ 16 аа Д с, о-> у -» 20 § 17 о.а Д с, т § 20.

Вычисление значения выходной переменной элемента

1. Вычислить значения выходной переменной ¿-элемента сети С.

2. Внешние операнды:

Ы =

у — дополнительный выходной полюс, реализуемый, если значе

ние выходной переменной равно 0; 8 — дополнительный выходной полюс, реализуемый, если значение выходной переменной равно 1. Задаются: аа.

3.

4. Дифцепь

7*« 99

* 054002

§ О ар + 1 => ааа Д F7 => ааа => ааа Д ct

о—8 y НЕ И

* 054004 § 0 ар => а р -f 1 => с

§ 1 Да®асо^Таа д F7o-> т => Ыь => Д с, |-> 1 -»8 НЕ ИЛИ

* 054006 § 0 а?=>а 1 =>с

§ 1 Да © о-> 8 аа Д F7 о-* 8 - > ¿> = > 6 аь Д с, о-» 1 -> т двамод

* 054010

§ 0 аз+1—>ар+1—>с0а

§ 2 а Д Ci о->у -> 8. равно

* 054011

§ 0' <*э = > a p-fl =

§ 1 Да©асо->8аа Д f7o->8 => ЙД

а* © а л ct о-> 1 т § 2 аь=>а^1. триггер

£ — дополнительный выходной полюс, реализуемый, если выходная переменная не меняет своего значения.

* 054012

§ 0 а^=>аОЬ

§ 1 ДаД& © 3 > ша Д F 7 о—> 1 = с ас — у с

A b -(© 2 о-> 8.

Нахождение четности числа срабатываний элемента — четность

1. Задано множество е сработавших элементов сети С. Требуется узнать четность I числа срабатываний элемента с номером i.

2. Внешние операнды:

ос s* к • • '

h:: i-, [т »] = /■

Задаются: аЯ) йа. 4. < * 050 777

§ 0 OaOb р Д 77=>а § 1 Д& b*o-*2aeb А 77@а\^ 1 Да^ 1 . §2ади>Т.

ЛИТЕРАТУРА

1. А. А. Уткин. Моделирование релейных схем. В сб.: «Логический язык для представления алгоритмов синтеза релейных устройств». М., «Наука», 1966.

2. Проектирование цифровых вычислительных машин. Под ред. С. А. Майоро-в а. М., Высшая школа, 1972.

3. А. Д. 3 а к р е в с к и й. Алгоритмы синтеза дискретных автоматов. М., «Наука», 1971.

i Надоели баннеры? Вы всегда можете отключить рекламу.