128 Ję:vkt specyfikacji J/o układów /frogra mowa hi\ <•/,
128 Ję:vkt specyfikacji J/o układów /frogra mowa hi\ <•/,
CARRY |
JKFFE |
SRFFE |
CASCADE |
JKFF |
SRFF |
CEIL |
LATCH |
TFFE |
DFFE |
LCELL |
TFFE |
DFF |
MCELL |
TRI |
EXP |
MEMORY |
WIRE |
FLOORE |
OPNDRN |
X |
GLOBAL |
SOFT | |
Sygnały grupowe |
Sygnał)' grupowe są zbiorami zmiennych lub stałych, na których przeprowadza się operacje tak jak na pojedynczych obiektach. Każda operacja przeprowadzana na zbiorze oznacza przeprowadzenie takiej samej operacji na każdym z jego elementów. Sygnały grupowe ułatwiają opis w języku opisu sprzętu i wektorów testujących poprzez możliwość odnoszenia się do grupy zmiennych, jak do pojedynczego obiektu.
W języku AUDI. sygnały grupowe są zapisywane dwoma sposobami. W pierwszym z nich sygnał grupowy jest złożony z nazwy i operatora zakresu, a w drugim z listy identyfikatorów. Na przykład zapisy: a 14.. 1J oraz d 11.. 2) oznaczają zbiory sygnałów a4, a3, a2, al, aO oraz dl, d2. Możliwe jest również tworzenie grup podwójnych (dual rangę group). Wtedy pojedyncza nazwa występuje z dwoma operatorami zakresu. Na przykład: nazwa(6. .0] (2. .0] . Taki zapis sygnałów jest wygodny przy specyfikacji szyn o różnych rozmiarach.
W drugim sposobie podaje się listę identyfikatorów ograniczonych nawiasami i oddzielanych przecinkami:
(a,b,c)
(a,b,c|S.. 1)) reę.(d,clk,clrn.prn)
Jak widać, oba zapisy mogą występować wspólnie w jednej deklaracji, jak też sygnał grupowy może być stosowany w rozszerzeniach nazw obiektów, w których jest dopuszczalne stosowanie wspólnej nazwy (wyróżnionej rozszerzeniem). W wielu przypadkach zapisy te są równoważne. Na przykład
bl4..0]
b4,b3,b2,bl,b0)
b|)
oznaczają te same zbiory sygnałów.
5.2 J<:yk AHDL
129
Grupy sygnałów (węzłów) składają się z najwyżej 256 sygnałów i pozwalają na odwołanie się do grupy jako całości. Można odwołać się do całej grupy. np. nazwa | ;, jego części: na z wa( 2. .5] lub pojedynczego węzła np. nazwa 5. Grup można używać w wyrażeniach boolowskich i nadawać im wartość innego wyrażenia, innej grupy, węzła, wartości stałych VCC, GND, I i 0.
Przykład 5.8.
OPTIONS BITO - MSB;
SUBDESIGN groupl ł
a(l. .2] : INPUT;
dli..2] : OUTPUT;
ł
BEGIN
d|] - au ♦ B-10-;
END;
W przykładzie powyższym wyrażenie OPTIONS bito - msb wskazuje, że bit oznaczony najniższym numerem jest najbardziej znaczącym bitem w grupie. Ponadto do i wartości wektora a dodawana jest wartość 1 (dziesiętnie) zapisana w kodzie dwójkowym I(oznaczenie b). Gdyby w linii OPTIONS pojawił się zapis bito - lsb, to przy . niezmienionej pozostałej części przykładu do wektora a dodawana byłaby wartość 2 ^(dziesiętnie).
Grupie lub jej części możemy przypisać wartość innego wektora pod warunkiem, że wektory po obu stronach wyrażenia mają równą liczbę współrzędnych; takie Iprzypisanie oznacza połączenie odpowiednich węzłów. Na przykład:
<112.-01 - q(6. .8] .
Przypisanie wektorowi wartości pojedynczego węzła jest równoważne połączeniu każdego jego bitu z tym węzłem, w szczególnym przypadku z węzłem VCC.
Przypisanie d{2. .OJ - vcc jest równoważne d2 - vcc. dl - vcc, do - vcc Przypisanie grupie wartości liczbowej jest równoważne przy pisaniu wartości zapisanej w postaci wektora o liczbie współrzędnych równej liczbie węzłów w grupie.