Главная
Статьи





03.07.2022


03.07.2022


03.07.2022


03.07.2022


03.07.2022






Секвенциальная логика

22.01.2022

Секвенциальная логика — это логика памяти цифровых устройств. Название «секвенциальная» восходит к англ. sequential. Соответствующая логика может именоваться также как последовательностная, хотя последний термин по преимуществу употребляется в связи с логическими автоматами.

Секвенциальная логика отличается от комбинационной логики тем, что моделирует цифровые устройства с учётом предыстории их функционирования (то есть предполагается наличие памяти, которая в комбинационной логике не предусмотрена).

Характеристика

Секвенциальная логика является разделом дискретной математики. Она развивается в рамках теории цифровых схем в тесной связи с комбинационной логикой, булевой алгеброй и конечными автоматами. В зависимости от регламента функционирования цифровые устройства подразделяются на синхронные и асинхронные. Соответственно их поведение подчиняется либо синхронной, либо асинхронной логике.

Синхронная секвенциальная логика

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

Математический аппарат синхронной логики задают автоматные модели Мили и Мура.

Асинхронная секвенциальная логика

Асинхронная секвенциальная логика для выражения эффекта запоминания использует моменты смены состояний, которые задаются не в явном виде, а исходя из сопоставления логических величин по принципу «раньше-позже». Для асинхронной логики достаточно установить очерёдность смены состояний безотносительно каких-либо привязок к реальному или виртуальному времени. Теоретический аппарат секвенциальной логики составляют математические инструменты секвенции и венъюнкции, а также логико-алгебраические уравнения на их основе.

Секвенция

Секвенция (лат. sequentia – последовательность) — это последовательность пропозициональных элементов, представляемая упорядоченным множеством, например, ⟨ x ⟩ = ⟨ x 1 x 2 … x n ⟩ {displaystyle leftlangle x ight angle =leftlangle x_{1},x_{2},ldots ,x_{mathrm {n} } ight angle } , где x i ∈ { 0 , 1 } . {displaystyle x_{i}in left{0,1 ight}.}

Посредством секвенции реализуется двоичная функция z = φ ( ⟨ x ⟩ ) {displaystyle z=varphi left(leftlangle x ight angle ight)} , такая, что z = 1 {displaystyle z=1} имеет место только в случае

( x 1 ∧ x 2 ∧ … x n ) = 1 {displaystyle left(x_{1}land x_{2}land ,ldots ,x_{mathrm {n} } ight)=1} при условии, что ( x i = 1 ) ≺ ( x j = 1 ) {displaystyle left(x_{i}=1 ight)prec left(x_{j}=1 ight)} для всех i < j . {displaystyle mathrm {,i<j} .} (Символ ≺ {displaystyle prec } задаёт отношение опережения).

Секвенциальная функция обращается в единицу при единичных значениях аргументов, установка которых осуществляется поочерёдно,

начиная с x 1 {displaystyle x_{1}} и заканчивая x n {displaystyle x_{mathrm {n} }} . Во всех остальных случаях — z = 0 {displaystyle z=0} .

Венъюнкция

Венъюнкция — это асимметрическая логико-динамическая операция ∠ , {displaystyle angle ,,} согласно которой связка x ∠ y {displaystyle x,angle ,y} принимает единичное значение только в случае x ∧ y = 1 {displaystyle x,land ,y=1} при условии, что в момент установления x = 1 {displaystyle x=1} равенство y = 1 {displaystyle y=1} уже имело место.

Истинность венъюнкции обусловлена переключением x = 0 / 1 {displaystyle x=0/1} на фоне y = 1. {displaystyle y=1.}

Логическая неопределённость выражается посредством венъюнкции: 1 ∠ 1. {displaystyle 1,angle ,1.}

Венъюнкция и минимальная (двухэлементная) секвенция функционально идентичны: x ∠ y   = ⟨ y x ⟩ . {displaystyle x,angle ,y =leftlangle y,x ight angle .}

Реализация

Венъюнктор является основным операционным элементом памяти секвенциальной логики. Он реализуется на основании равенства

x ∧ ( x ¯ ∨ x ∠ y ) = x ∠ y , {displaystyle xland left({ar {x}}lor x,angle ,y ight)=x,angle ,y,} где формула ( x ¯ ∨ x ∠ y ) {displaystyle left({ar {x}}lor x,angle ,y ight)} представляет функцию SR-триггера.

Секвентор строится на основе композиции из соединённых определённым образом венъюнкторов. Например, для реализации

секвентора ⟨ x y z u v ⟩ {displaystyle leftlangle x,y,z,u,v ight angle } пригодны следующие формулы: v ∠ ( u ∠ ( z ∠ ( y ∠ x ) ) ) , ⟨ x y ⟩ ∧ ⟨ y z ⟩ ∧ ⟨ z u ⟩ ∧ ⟨ u v ⟩ . {displaystyle v,angle ,left(u,angle ,left(z,angle ,left(y,angle ,x ight) ight) ight),,leftlangle x,y ight angle land leftlangle y,z ight angle land leftlangle z,u ight angle land leftlangle u,v ight angle .}