• Nie Znaleziono Wyników

Rozdział 4 omawia problemy związane z wykorzystaniem rejestrów liniowych do kompakcji odpowiedzi testowanych układów cyfrowych zarówno w testerach wewnątrzukła

D, T,0,1 komórki odpowiednio T,0 oraz 1 zawierające dodatkową bramkę XOR umożliwiającą przyłączenie do rejestru c-SISR lub c-MISR

3. Określanie sekwencji wejściowej, która ustawia rejestr liniowy w pożądany stan końcowy przy założonym dowolnym stanie początkowym

2.4. R ejestry liniow e przechowujące dowolne rozdzielne kody liniowe

2.4.2. Rejestry liniowe PMISA

Jeśli ograniczymy liczbę bitów kontrolnych słowa kodowego do k = 1, to COPMISR staje się rejestrem PMISA [SogG95, SogG96]. Wówczas macierz generująca G przyjmuje następującą postać

G = [ rn>p ] =

1 0 0 0 1 o

0 0 0 0 0 0

o o pn 0 0 p21

1 0 Pn-1.1 0 1 PM

(2.24)

gdzie pj j = 1; j = l ,2,...,n .

Na tej podstawie macierz A staje się następującą (n + l,n + l)-w y m ia ro w ą macierzą [HłaGS95, HłaGS96b]:

» 2 a 3 - a n - l 1 0

0 0 - 0 0 0

[ ai +bll a2 +bll a3+bll - an-I+bU bll bll.

Macierz ta pozwala określić tylko dwa różne schematy rejestrów PMISA. Pierwszy z nich określony dla bn = 0 okazuje się identyczny z rejestrem PMISA podanym w [SogG95, SogG96]. Natomiast drugi schemat określony dla bn = 1 i różny od poprzedniego został przedstawiony w [HłaGS95, HłaGS96b].

3. P R O J E K T O W A N IE R E J E S T R Ó W L IN IO W Y C H

Struktury sprzężeń rejestrów liniowych podawane są najczęściej w postaci tabel [Kalis77 (tab. 4.6), PieńT80 (tab. 4.7), Golom82, WangM8 8, XILINX94 (str. 9-24), ACTEL (str. 9-60)]. Zawierają one informacje określające, które komórki rejestru powinny posiadać wyprowadzenia połączone z bramkami XOR, aby opisywany rejestr liniowy związany był z pierwotnym wielomianem charakterystycznym [PetW94, Golom82, Hławi87c, Hławi8 8a].

Zamiast niezbyt wygodnych i często niedostępnych tabel lepszym rozwiązaniem byłaby prosta technika projektowania rejestrów liniowych. Pewnym przykładem takiej techniki są rejestry IED-LFSR (IED-MISR), których schemat można właściwie odczytywać wprost z postaci źródłowego wielomianu charakterystycznego [Golom82, Hławi87c, Hławi8 8a].

Brakuje uniwersalnej i nieskomplikowanej zarazem techniki projektowania rejestrów linio­

wych o różnych strukturach sprzężeń liniowych związanych z założonym źródłowym wielo­

mianem charakterystycznym p(x). Rozwiązanie tego problemu przedstawia niniejszy rozdział.

3 .1 . Projektow anie rejestrów liniowych o różnych strukturach sprzężenia liniowego

Projektowanie rejestrów LFSR, SISR oraz MISR przy użyciu przerzutników D, bramek XOR oraz w szczególnych przypadkach także przy użyciu przerzutników T wymaga określenia źródłowego wielomianu p(x), jaki powinien charakteryzować sprzężenie liniowe projektowanego rejestru. Będzie nim najczęściej jeden z wielomianów pierwotnych wybrany np. z katalogu podanego w [PetW94], Następnie należy podjąć decyzję, która ze struktur

sprzężenia liniowego c € {IEDT, IED, EEDT, EED, DT, BTD, TBD, CADT} ma być wprowadzona do projektowanego rejestru liniowego. Ta decyzja umożliwia wybór tej postaci wielomianu charakterystycznego pc(x) (tab. 2.1), która jest związana z wybraną konfiguracją sprzężenia liniowego.

Projektowanie w pierwszej swojej fazie polegać więc będzie na takim przekształceniu założonego źródłowego wielomianu p(x), aby uzyskać tę postać wielomianu charakte­

rystycznego pc(x), która związana jest z założoną strukturą projektowanego rejestru.

Podobną ideę projektowania ograniczoną jednak wyłącznie do rejestrów TBD-LFSR oraz BTD-LFSR związanych z niektórymi pierwotnymi wielomianami charakterystycznymi przedstawiono w pracy [WangM8 8] . Ideę tę rozszerzono na wszystkie wielomiany charakte­

rystyczne i na rejestry TBD-SISR i TBD-MISR w [Hławi89a, Hławi92b] oraz na rejestry BTD-SISR i BTD-MISR w [Hławi89b, Hławi92b]. Nie pozwala ona jednak odczytywać schematu połączeń rejestru liniowego wprost z postaci wielomianu pc(x). Dobrym tego przykładem jest wielomian pTBD(x) = 1 4- (x3+ x4+ x7+ x8) ( l + x 2) związany z rejestrem D®DDD®D®DDD@DD. W celu podania schematu połączeń struktury sprzężenia tego rejestru liniowego autorzy pracy [WangM8 8] proponują korzystanie ze specjalnego wielo­

mianu l t x f x4Tx5+ x8 + x 10. Cały katalog tak opisanych struktur sprzężeń liniowych rejestrów TBD-LFSR o różnej długości znajduje się w [WangM8 8]. Tej wady nie posiada technika projektowania rejestrów IEDT podana w [Hławi92a], Niestety jest ona ograniczona tylko do grupy rejestrów liniowych IETD, IED, IET, DT. W pracy [Hławi92a] źródłowy wielomian charakterystyczny p(x) przekształca się do postaci pc(x), a następnie do tzw. strukturalnej postaci pcw(x), która jest ściśle skorelowana ze schematem ideowym pro­

jektowanego rejestru liniowego i z której wprost można odczytać schemat ideowy tego rejestru. Tę technikę projektowania wykorzystano w niniejszej pracy, rozszerzając jej zasto­

sowanie na konfiguracje sprzężeń liniowych EEDT, BTDT, TBDT i sprzężenia pochodne.

Iteracyjny sposób tworzenia wielomianu Pca(x) znacznie utrudnia znalezienie prostych związków pomiędzy niezerowymi współczynnikami a; wielomianu p(x) a współczynnikami kj związanego z tym wielomianem rejestru CADT [Hławi90d, HławK93a], Częściowo z tym problemem uporano .się w [SerrS90, CattM96], gdzie opisano algorytm projektowania rejestrów CADT na podstawie zadanego charakterystycznego wielomianu. Metoda ta jest jednak bardzo skomplikowana, co w efekcie spowodowało, że do projektowania rejestrów

CADT autor zastosował zupełnie inną technikę [Hławi91b, HławK92a, Hławi93a].

3.1.1. Projektowanie rejestrów o strukturze IEDT, IED oraz IET Wielomian charakterystyczny o postaci (tab. 2.1)

n r- 1

PiedtW = Po + £ ® P r I l ( kj + x ) r-1 j=0

opisuje strukturę IEDT [Hławi92a] rejestru liniowego. Załóżmy, że współczynniki tego wielomianu p0, jpr, ps, pt, pn są różne od zera, przy czym n > t > s > r > 0 . Przy założeniu konkretnych wartości 0 oraz 1 dla współczynników kj oraz zakładając bl + c l = r, b2 + c2 = s - r, b3 + c3 = t - s oraz b4 + c4 = n - 1 podany wielomian można przekształcić do następującej postaci:

PlEDT(X) = P o + x b l ( 1 + X )Cl[ P r + x b 2 ( 1 + X )CZ[ P s + x b 3 ( 1 + X )C3[ P t + x b 4 ( 1 + X)C4Pn ] ] ] ’

4

w której £ ( k j + cj) = n - Wprowadzając w miejsce współczynników p0, pr, ps, pt, pn j=i

jedynki, otrzymujemy ostatecznie następującą formę wielomianu

P lE D T w W = 1 + X b l ( l + X) c l [ l + X b2( l + X) c 2[ l + X b3( l + X) c 3[ l + X b4( l + X) c 4] ] ] (3.1) Postać ta uzyskana po raz pierwszy w [Hławi92a] nazywana będzie w dalszej części pracy postacią strukturalną wielomianu charakterystycznego związaną z rejestrem liniowym 0 strukturze IEDT. Jednoznacznie skorelowany z tym wielomianem rejestr liniowy np. IEDT-LFSR można zapisać w następujący sposób

Dbl( ® ’D)c le Db2( ® ’D)c2©Db3( © ’D)c3e Db4( ® ’D)c4. Wprowadzając w miejsce komórek (® ’D) komórki T otrzymujeny rejestr DblTcle Db2Tc2e Db3Te3e Db4Ts4 [Hławi92a], Zakładając, że tylko część komórek ( ® ’D) zostaje zastąpiona komórkami T, można otrzymać np. taki rejestr DblTcle Db2( ® ’D)c2ffiDb3Tc3 0Db4( ® ’D)c4. Wszystkie te trzy rejestry posiadają bramki XOR wewnętrznego sprzężenia liniowego na wyjściu r-tej, s-tej 1 t-tej komórki D, T lub ( ® ’D), co ściśle skorelowane jest z pozycjami kolejnych lewych nawiasów kwadratowych w wielomianie 3.1. Im mniej tych nawiasów kwadratowych, tym mniejszej liczby bramek XOR należy użyć do realizacji liniowego sprzężenia wewnętrzne­

go. Zmniejszając liczbę komórek ( ® ’D) lub zastępując je przerzutnikami T, również wpły­

wamy na zmniejszanie liczby bramek XOR w tym sprzężeniu liniowym. Wyjaśnia to poniższy przykład.

Przykład 3.1

Zakładamy źródłowy pierwotny wielomian charakterystyczny

P (x) = 1 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x 10. Zaprojektować rejestr IETD-LFSR-p(x). W tym celu należy przekształcić wielomian p(x) do postaci pIETD(x), a następnie do postaci strukturalnej pIETDw(x) (3.1). Rezultat jednego z przekształceń:

a) P i e t d ( x ) = 1 + x3 (1+ x)4(1 + x + x2 + x3)

P lE T D w (x ) = 1 + X3 ( 1 + X)4 [1 + X [1 + X [ 1 + X ]]] =

= D D D (© ’D ) ( © ’D ) ( ® ’D )( ® ’D )e D ffiD e D = D3T4©D®De D =

= T2D3T2e D e D e D

Stosując niektóre z innych przekształceń tego wielomianu, otrzymujemy odpowiednio b) pIETD(x) = 1 + x3 (1+ x )(l + x2 + x4 + x6 )

P lE T D w (x ) = 1 + x3 ( 1 + X)[l + X2 [1 + X2 [1 + X2 ]]] =

= D D D (© ’D )e D D e D D e DD = D3T®D2e D2e D2, C) Pietd(x) = 1 + x 3( l + x)3( l + X4)

PiETDw(x) = 1 + x3( l + x)3[l + x4] = D D D (© ’D )(© ’D ) (© ’D)®D4 = D3T3©D4.

Zakładając kj = 0, otrzymujemy z wielomianu prEDT(x) następującą postać strukturalną [Hławi92a]

PlED w (X ) = 1 + Xr [1 + Xs r [1 + Xt S [1 + Xn-‘ ]]] (3.2)

natomiast zakładając kj = 1 otrzymujemy [Hławi92a]

PlETw(x) = l + ( l + x ) r [1+ ( l + x ) s'r [ l + (l+ x )'-s [ l + (1 -t-x)nt ]]] (3.3) Wielomianom tym odpowiadają następujące schematy ideowe rejestrów odpowiednio IED-MISR oraz IET-MISR:

D r® & s r ©■••© & n ' s Pi£DW(x) o razT r©Tsr© ... ©Tnt = Pietw(x).

Przykład 3.2

Zaprojektować rejestr IED-LFSR-p(x), a następnie IET-LFSR-p(x), gdzie p(x) = 1 + x2 + x3 + x4 + x5.

PffiDw(x) = 1 + x2 [1 + x [l + x [l + x]]] s D D e D0D e D p(x) = 1 + x2(1 + x) + x4(1 + x ) = 1 + (1 + x)[x2(1 + x) 2 ] PiETw(x) = 1 + (1 + X) 3 [1 + (1 + x)2 ] = TTTe TT

W pracy [Hławi92a] udowodniono, że dla wielomianów o parzystej liczbie niezerowych współczynników nie można zaprojektować rejestrów o strukturach typu IET.