• Nie Znaleziono Wyników

A b stract

This w ork presents the synthesis m ethods for CPLDs. The core o f CPLDs is a PAL-based structure w hich consists o f the program m able AND m atrix and fixed connections within the OR matrix. These matrixes form the PAL-based logic blocks. The aim o f the work is to present the synthesis method o f which enables implementation o f a Boolean function by the m eans o f the PA L-based logic blocks containing a definite num ber o f terms.

The first method is based on a unique representation o f the multi-output Boolean function.

The essence o f the method concentrates on the process o f searching for the common multi-output implicants based on the analysis o f graph's nodes representing the output vectors. The suggested algorithms o f synthesis have their foundation in the theorem on choosing a node o f the graph outputs. That theorem serves as a theoretical background for the selection o f those implicants' groups that are realized by the means o f the shared PAL-based logic blocks. In a case o f not meeting the conditions o f the theorem by the nodes o f the graph outputs to choose the specific node, a selection o f the implicants' group is carried out according to the heuristic rules. Moreover, in this part o f w o rk a new method for the description o f feedback can be found, which leads to the appropriate modification o f those nodes constituting the graph o f outputs.

The logic blocks that occur w ithin the CPLD structures include frequently the additional logic resources. There are, among other things, such resources as the three-state output buffers, w hich can be taken into account in the process o f logic synthesis. First, the process of synthesis starts w ith the two-level splitting m inimization procedure. Then, a partition o f the individual im plicants' groups takes place. As a result o f the tw o procedures mentioned above, the initial set o f the Boolean function's im plicants is divided into subsets w ith the higher or equal cardinality to the num ber o f terms w ithin the certain PAL-based logic blocks.

Decomposition is an extremely valuable component o f synthesis. First o f all, it influences directly the number o f logical blocks. The unusual application o f the classical theory on the decomposition is discussed in the second part o f this work. The algorithms developed are derived from the classical model o f the functional decomposition that was introduced by Curtis.

The individual phases o f the decomposition are prepared for the PAL-based CPLD structures.

The designed method for the row decomposition o f the single-output Boolean function enables the adjustment o f the obtained sub-circuits w ith the certain structure o f the PAL-based logic block.

The theoretical considerations serve as a base for the synthesis o f algorithms included in this work. The final part o f the work presents the complex strategies o f synthesis, aimed at the various CPLD circuits (with/without the three-state output buffers). The strategies o f synthesis are designed for the optimization following either the number o f logical blocks or the number o f levels. The individual synthesis methods, presented in the previous chapters, serve as the components o f those strategies. The work presents also a number o f results obtained from experiments. The experiments were carried out for the commonly used benchmarks, applying various families o f programmable devices. The designed strategies were compared with the university-developed and the commercially available tools o f the synthesis.

Twierdzenie o wyborze wierzchołka grafu wyjść

Jeżeli istnieje w ierzchołek grafu wyjść (wyróżnik) lA y 1. rzędu ix('Ay ) > 2 , dla którego lA y > k

lub

2. rzędu ^ ( 'A ^ ) > 2 , dla którego w zbiorze reszt R = { r ^ A>^ ; j e < l , n ( ' A ^ ) > }

istnieją co najmniej 2 reszty takie, że 0 < A y ^ < 'A y < k i 0 < y ^ < ' A y < k lub

3. rzędu n ( 'A y ) = 2 , dla którego lA y = k lub ' Ay > 2 k - l lub

4.rzędu |j ( 'A y ) = 2 , dla którego k < 1A y < 2 k - 1 i w zbiorze reszt R = j e < l , f i ( ' A j , ) > } istnieje co najmniej jedna reszta, taka że

0 < ^ ( ' A ^ ) < ' A >, - ( * - 1 ) ,

to realizacja im plikantów odpowiadających takiemu wyróżnikowi prowadzi do minimalizacji liczby ^-iloczynowych bloków PAL potrzebnych do realizacji wielo wyjściowej funkcji.

Dowód:

W najgorszym przypadku, jeżeli wybrany wierzchołek 'A y połączony je st z n('A y ) wierzchołkami niższych rzędów, ponieważ

l < y s n ( ‘A , ) 1 ’

to warunek m inim alizacji (2.3) można przedstawić w następującej postaci:

1°. 'A y > k

N iech 'A y e < p ( k - l ) + l,( /? + l ) ( k - 1 ) > , gdzie p e N . Ponieważ dla każdego p e N

n ( ' A y )

Z

7 = 1

f

' A » } ‘ A y ) - k i A y ‘ * y ) - k - i A y + l

\

k - 1 k - 1

\ /

H('A y )

* Z

7=1

l^ A y ) - k

H('A y )

=

Z

7=1

iAilf Ay] - k - [ p ( k - 1 ) + 1] + 1 yfc-1

i^ ' hy ) - k - p ( k - l ) ifc^i oraz

' Ay - k k- 1

+1= 'A y *

£ - 1 £ - 1 +

1

<

A:—1 A - l + 1 = p + 1 - k- 1

k - 1 + 1= p + 1 ,

stąd w arunek m inim alizacji (d l) sprowadza się do nierówności ju(‘A0 ) p > p + 1, która ze względu na założenie jj.('Ay ) > 2 je st spełniona dla każdej wartości p e N .

2°. Ponieważ l < lA y < k , stąd w arunek m inim alizacji (d l) m ożna przekształcić

Z

7 =1

A y ) - k k - 1

+ 1

\ xĆAy )

Z

7 =1

i

k - 1

+ 1

>1

i przedstaw ić w postaci:

^ ( ' A 0 y )

Z

7=1

>AJ H( ' A0 )

- k k - 1

H('A o )

'A , > - lA o + l - k J___________ _J_________

k - 1

> 1 (d2)

W artości r^ A y ^ są resztami wyznaczonymi z kongruencj i (2.4)

gdzie y = l,2 ,..., /u('Ay ) .

U w zględniając zależność (d3)

/a ^ ' A^ ) - k = r f A y \ m od( k - 1))

(d3)

istnieje wartość p s N taka, że

i a M -(1 a v ) H ( ' A y )

stąd

k - 1

'A ^.( ,A y } - k k - 1

k - 1

= p + 1

(d4)

(d5)

N iech ' A y - l = ri(m od( k - 1 )). (d6)

Ponieważ dla wybranej reszty r ^ ( Ay) zachodzą nierówności 0 < Ay) <‘A y < k , stąd

t i > r a ^ y ) (d7)

Uwzględniając nierówności 0 < ^ y ^ <‘A y < k oraz zależności (d4), (d6)

<A^ ' A y ) - k *A„ - 1 r^ ' Ay) r,

a_________- ~ y Z - p + L a--- - t - ,

k- 1 k- 1 k- 1 k- 1

stąd po uw zględnieniu (d7)

Zależności (d9), (dlO) powodują, że zachodzi warunek minimalizacji (d2), ponieważ

y )

Z zależności (d l3 ) i ( d l 6) wynika, że

1

1/*-N

.<3

A ^.<3

1

iA n C A y ) _ k *Ay - l

k - 1 k - 1 k - 1

= p + l - ( p - V ) = 2

U w zględniając zależność ( d l 7) oraz warunek początkowy k< lA y < 2 k - l okazuje się, że w arunek m inim alizacji ( d l i )

-z

2 7=3)

W f ^ - k - i A y + l k- 1

> 2 + l > 2

je st spełniony.

(dl 7)

cbdo.

Dodatek B

F orm aty opisu przykładowych układów testowych A H D L - form at tablicowy

Układ testow y c o n l; plik wejściowy

S U B D E S I G N c o n l

(

i n [6..0]

o u t [1..0]

)

B E G I N T A B L E

i n [ 6 . . 0 ] = > o u t [ 1 . . 0 ] ;

B " x l x x l x x " = > B " 1 0 " ; B " l x l l x x x " = > B " 1 0 " ; B " x 0 0 1 x x x " = > B " 1 0 " ; B " 0 1 x x x l x " = > B" 1 0 " ; B " x 0 x x 0 x x " = > B" 0 1 " ; B " l x x x 0 x x " = > B" 0 1 " ; B " 0 x x x x x 0 " = > B " 0 1 " ; B " 0 1 x x l x x " = > B " 0 1 " ; B " 1 0 x 0 x x x " = > B"0 1 " ;

EN D T A B L E ; END;

V H D L - form at funkcyjny Układ testowy co n l; plik wejściowy

L i b r a r y ieee;

U s e i e e e .s t d _ l o g i c _ 1 1 6 4 .ALL;

E n t i t y c o n l f is

p o r t ( i _ 6 ,i _ 5 ,i _ 4 ,i _ 3 ,i _ 2 ,i _ l ,i _ 0 : i n s t d _ l o g i c ; o _ l , o _ 0 : o u t s t d _ l o g i c ) ;

end;

A r c h i t e c t u r e r t l o f c o n l f is b e g i n

o _ 0 < = (i_5 a n d i_2 ) o r

(i_6 a n d i_4 a n d i _ 3 ) o r (not i _ 5 a n d n o t i_4 a n d i_3 ) ór (not i _ 6 a n d i _ 5 a n d i _ l );

o 1 < = (not i _ 5 a n d n o t i_2 ) o r (i 6 a n d n o t i_2 ) o r

(not i _ 6 a n d n o t i _ 0 ) o r (not i _ 6 a n d i_5 a n d i_2 ) o r (i_6 a n d n o t i_5 a n d n o t i_3 );

end;

: I N P U T ; : O U T P U T ;

V H D L - form at tablicow y Uklad testow y c o n l; plik wejsciowy

Library ieee;

Use ieee.std_Iogic_l 164.ALL;

Entity con It is

port( i_6,i_5,i_4,i_3,i_2,i_l,i_0 : in std logic;

°_l,o_0 : out std logic);

Układ testow y xor5; plik wyjściowy; wynik syntezy dla 4-iloczynowych bloków typu PAL

Li b r a r y ieee;

V H D L - form at funkcyjny

Układ testow y xor5; plik wyjściowy; wynik syntezy dla bloków logicznych typu PAL zaw ierających 4 iloczyny z trójstanowym i buforami wyjściowym i (np. m etoda B JW )

Library ieee;

y_b_l_xor5, y_b_2_xor5, y_b_3_xor5, y_b_4_xor5 : s td jo g ic );

for U1 :b_l_xor5 Use entity work.b _l_xor5(rtl) for U2:b_2_xor5 Use entity work.b_2_xor5(rtl) for U3:b_3_xor5 Use entity work. b_3_xor5 (rtl) for U4:b_4_xor5 Use entity work.b_4_xor5(rtl)

Wydano za zgodą R ektora Politechniki Śląskiej

WYDAWNICTWO POLITECHNIKI ŚLĄSKIEJ ul. A kadem icka 5,44-100 Gliwice, tel. (0-32) 237-13-81

http://loki.polsl.pl/wydawnictwo

Sprzedaż i M arketing tel. (0-32) 237-18-48 w ydaw nictw o_m ark@ polsl.pl

N akł. 100+50 A rk. w yd. 19 A rk. druk. 13,375 P apier offset. 7 0 x 1 0 0 ,8 0 g O ddano do d ruku 22.04.2004 r. Podpis, do d ruku 22.04.2004 r. D ru k ukończ, w m aju 2004 r.

Druk wykonano w Zakładzie Graficznym Politechniki Śląskiej w Gliwicach, ul. Kujawska 1 zam. 173/04

GLIWICE

♦ Punkt Sprzedaży - ul. Akademicka 2 (237-17-87)

♦ „FORMAT” - Akademicka 5 (architektura i budownictwo)

♦ „LAMBDA” - ul. Akademicka 2 (237-21 -40)

♦ Punkt Sprzedaży - ul. Akademicka 16 (automatyka, elektronika, informatyka)

♦ „ŻAK” - ul. Kaszubska DĄBROWA GÓRNICZA

♦ „ANEKS” - ul. Ludowa 19A/III ŁÓDŹ

■ „P O L IT E C H N IK A 100” - Żeromskiego 116 PL.

KATOWICE

♦ Punkt Sprzedaży - ul. Krasińskiego 8

♦ Hurtownia „DIK” - ul. Dulęby 7

♦ Hurtownia „JERZY” - ul. Słoneczna 24 (258-99-58) TYCHY

♦ „I Ja Tours” ul. Piłsudskiego 10 (217-00-91 w. 130) ZABRZE

♦ Punkt Sprzedaży - ul. Roosevelta 26 KRAKÓW

♦ Techniczna - ul. Podwale 4

♦ Punkt Sprzedaży WND - AGH, Al. Mickiewicza 30 GDAŃSK

♦ EKO-BIS - ul. Dyrekcyjna 6 (058) 305-28-53 WARSZAWA

♦ Studencka- PI. Politechniki 1

♦ Techniczna - ul. Kaliskiego 15

♦ T echniczna-ul. Świętokrzyska 14

♦ M D M -u l. Piękna 31 BIAŁYSTOK

♦ Dom Książki (Księgarnia 84) - ul. Dolistowska 3 POZNAŃ

♦ Księgarnia „POLITECHNIK” - ul. Piotrowo 3

♦ DOM Książki - Księgarnia Techniczna - ul. Półwiejska 14

P o l i t e c h n i k i Ś l ą s k i e j

D ruk: D ru k a rn ia G liw ic e, ul. Z w y cię stw a 2 7 , tel. 230T49 5 0