uloge w9b

background image

I

T
P

W

ZPT

1

Układ

sterujący

(kontroler

)

Dane wyjściowe

Dane

wejściowe

Sygnały

sterujące

Stan części

operacyjnej

Układ operacyjny

(Datapath)

System cyfrowy

0

1

0

1

0

1

0

1

0

1

0

1

0

1

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

Mikrooperac
je

wywoływane przez

sygnały sterujące

background image

I

T
P

W

ZPT

2

System cyfrowy - realizacja

UO – z bloków funkcjonalnych

US – automat lub (coraz rzadziej stosowany)
układ mikroprogramowany

X

Z

X

P

Z

Y

Z

D

F

US

UO

background image

I

T
P

W

ZPT

3

Przykład syntezy strukturalnej

 W kodzie BCD (Binary Coded Decimal) każda

cyfra liczby zapisanej w kodzie dziesiętnym

jest przedstawiana czterobitową liczbą binarną

Konwerter kodu binarnego na kod

BCD:

4 8 9

 Np. liczba 489 zostanie zapisana jako

wektor binarny z wykorzystaniem 12 bitów

(3  4 bity)

BCD

0100 1000 1001

background image

I

T
P

W

ZPT

4

Konwerter Bin2BCD

BIN/BCD

Wejście

Wyjście

0  liczby  99

(00011011)

BIN

(0010
0111)

BCD

background image

I

T
P

W

ZPT

5

0

0

0 0 0 0 0 0

0

0

0 1 1 0 1 1

27

LDA

LDB

LB

=

0

0

0 0 0 0 0 0

LDB 5

LDB := LDB+3

NIE

TAK

LDB := LDB

8

Metoda +3

background image

I

T
P

W

ZPT

6

0

0

0 1 1 0 1 1

LDA

LDB

LB

0

0

0 0 0 0 0 0

0

0

0

0

0 0 0 0 0 0

0

0

0

0 0 0 0 0 0

0

0

0 0 0 0 0 0

0

0

0 0 0 0 0 1

0

0

0 0 0 0 1 1

0

0

0 0 0 1 1 0

0 0 1 1

0

0

0 0 1 0 0 1

0 1 1

0

0

0 1 0 0 1 1

0

0

1 0 0 1 1 1

LDB < 5

LDB < 5

LDB < 5

LDB < 5

LDB < 5

LDB < 5

LDB 5

+

LDB < 5

1

2

3

4

5

6

7

8

1 1 0 1 1

1 1 0 1 1

1 1 0 1 1

1 0 1 1

1 1

1

0

0

1 0 0 1 1 1

LD

BCD

=

2

7

= 27

background image

I

T
P

W

ZPT

7

Algorytm
konwersji
z kodu BIN na
BCD

KONIEC

LOAD (LB)

LDA := 0
LDB := 0

LK := 8

LDB 5

LDB := LDB + 3

LDA := LDA + 3

LDA 5

START

LDA := SHL(LDA,LDB

3

)

LDB := SHL(LDB,LB

7

)

LB := SHL(LB)

LK := DEC(LK)

LD := LDA

LDB

LK =

0

NIE

TAK

NIE

NIE

TAK

TAK

background image

I

T
P

W

ZPT

8

Opis strukturalny

R3

R2

R1

K

S3

S2

S1

A

B

8

4

4

4

„3”

„5”

K 5

LK

4

„8”

LOAD1
DEC

LK = 0

R4

LOAD2

8

Y = LD

UO

LB

Y

LK = 0

10

US

S

K 5

MUX

1

0

MUX

4

A

B

4

LB

background image

I

T
P

W

ZPT

9

Sieć działań

z uwzględnieniem UO

LK = 0

0

0

SHL 1, SHL 2, SHL 3,

DEC (LK)

MUX := 0

MUX := 1

LOAD 4

LOAD 2

LOAD 3

S

0

1

1

0

1

1

LOAD 1

CLEAR 2,3

LOAD (LK)

K > 5

K > 5

A

0

A

1

A

3

A

4

A

5

A

6

A

7

A

2

Synteza układu

sterującego!

Numeracja stanów

wewnętrznych

background image

I

T
P

W

ZPT

10

Zamiana SD na automat sterujący

LK = 0

0

0

SHL 1, SHL 2, SHL 3,

DEC (LK)

MUX := 0

MUX := 1

LOAD 4

LOAD 2

LOAD 3

S

0

1

1

0

1

1

LOAD 1

CLEAR 2,3

LOAD (LK)

K > 5

K > 5

A

0

A

1

A

2

A

3

A

4

A

5

A

6

A

7

A

0

/Z

0

A

1

/Z

1

A

2

/Z

2

A

3

/Z

3

A

4

/Z

6

A

6

/Z

4

A

7

/Z

5

A

5

/Z

7

x

1

x

1

x

0

x

2

0

x

1

x

1

x

2

x

Zamiana SD na automat sterujący

Nowe oznaczenia

sygnałów

predykatowych

background image

I

T
P

W

ZPT

11

Tablica p-w automatu sterującego

x

2

x

1

x

0

S

00
0

00
1

01
1

01
0

11
0

11
1

10
1

10
0

Z

A

0

Z

0

A

1

Z

1

A

2

Z

2

A

3

Z

3

A

4

Z

6

A

5

Z

7

A

6

Z

4

A

7

Z

5

A

0

/Z

0

A

1

/Z

1

A

2

/Z

2

A

3

/Z

3

A

4

/Z

6

A

6

/Z

4

A

7

/Z

5

A

5

/Z

7

x

1

x

1

x

0

x

2

0

x

1

x

1

x

2

x

A

0

A

0

A

0

A

0

A

1

A

1

A

1

A

1

A

2

A

2

A

2

A

2

A

2

A

2

A

2

A

2

A

6

A

6

A

6

A

6

A

3

A

3

A

3

A

3

A

4

A

4

A

7

A

7

A

7

A

7

A

4

A

4

A

2

A

5

A

5

A

2

A

2

A

5

A

5

A

2

A

0

A

0

A

0

A

0

A

0

A

0

A

0

A

0

A

3

A

3

A

3

A

3

A

3

A

3

A

3

A

3

A

4

A

4

A

4

A

4

A

4

A

4

A

4

A

4

Tablica p-w wystarcza
do realizacji automatu!

background image

I

T
P

W

ZPT

12

Opis strukturalny

R3

R2

R1

K

S3

S2

S1

A

B

8

4

4

4

„3”

„5”

K 5

LK

4

„8”

LOAD1
DEC

LK = 0

R4

LOAD2

8

Y = LD

UO

LB

Y

LK = 0

10

US

S

K 5

MUX

1

0

MUX

4

A

B

4

LB

Zrealizowany automat
jest Układem
Sterującym

background image

I

T
P

W

ZPT

13

Co dalej ...

AHDL lub VHDL

…dalej automatycznie

…aż do zaprogramowania

background image

I

T
P

W

ZPT

14

IN

CLK

CK

IN

LB[7..0]

STOP]

OUT

CLOK

L[3..0]

OUT

OUT

LOAD

START

LOAD

LOAD

LOAD

CLK

DA[3..0]

LOAD

STOP

DB[3..0]

RB[7..0]

LD[7..0]

CK

STOP

CK

CK

QDB[3..0]

QDA[3..0]

r3_v

Us_v

r2_v

r1_v

r4_v

Lk_v

LB[7..0]

CK

CLK

START

CLOK

STOP

LD[7..0]

INPUT

INPUT

INPUT

INPUT

OUTPUT

OUTPUT

OUTPUT

Najstarszy inżynier…

Najstarszy inżynier…

uzyskaną strukturę bezpośrednio zapisuje w
języku opisu sprzętu i kompiluje

background image

I

T
P

W

ZPT

15

SUBDESIGN bin2bcd
(

lb[7..0], start, zegar

: INPUT;

ld[7..0], koniec

: OUTPUT;

)
VARIABLE

lda[3..0], ldb[3..0]

: DFF;

lb_r[7..0], lk[3..0]

: DFF;

ld[7..0], koniec

: DFF;

BEGIN

(lda[], ldb[], lb_r[], lk[]).clk = zegar;
(ld[], koniec).clk = zegar;
IF start THEN

lb_r[] = lb[];
lk[] = 8;

ELSE

IF lk[] > 0 THEN

IF ldb[] >= 5 THEN

lda[] = (lda[2..0], B"1"); -- bit lb[3]

= 1

ldb[] = (ldb[2..0] + 3, lb_r[7]);

ELSE

lda[] = (lda[2..0], B"0"); -- bit lb[3]

= 0

ldb[] = (ldb[2..0], lb_r[7]);

END IF;
lb_r[] = (lb_r[6..0], B"0"); -- przesun w lewo
lk[] = lk[] - 1; -- zmniejsz lk

ELSE

lda[] = lda[];
ldb[] = ldb[];
ld[] = (lda[], ldb[]);
koniec = B"1";

END IF;

END IF;

END;

Młodszy inżynier opisuje działanie

układu behawioralnie (np. w języku

AHDL)

background image

I

T
P

W

ZPT

A najmłodszy .. ma pełną

świadomość, że

FP

GA

Specyfikacja HDL

Synteza

funkcjonalna

Synteza logiczna

Odwzorowanie

technologiczne

Specjalistyczne

oprogramowanie

akademickie

metody syntezy

logicznej są

niedoskonałe

background image

I

T
P

W

ZPT

0 00000000 0000 0000
1 00000001 0000 0001
2 00000010 0000 0010
3 00000011 0000 0011
4 00000100 0000 0100
5 00000101 0000 0101
6 00000110 0000 0110
7 00000111 0000 0111
8 00001000 0000 1000

* * * *
97 01100001 1001 0111
98 01100010 1001 1000
99 01100011 1001 1001

BIN/BCD

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

Wejścia Wyjścia

0

1

1

0

0

0

0

0

1

1

0

0

0

0

1

1

1

0

0

1

0

1

1

1

0

0

1

0

1

1

1

1

Konwerter Bin2BCD na poziomie

Konwerter Bin2BCD na poziomie

logicznym

logicznym

QUARTUS 29

komórek

…ale czy zastosujemy do tych

obliczeń system komercyjny

..nie, bo systemy komercyjne

nie mają wbudowanych

procedur dekompozycji

background image

I

T
P

W

ZPT

18

A jak sobie poradzą z

tym konwerterem

najnowsze algorytmy

dekompozycji

background image

I

T
P

W

ZPT

19

Bin2bcd realizowany metodą

dekompozycji

TITLE " Decomposed project: bin2bcd ";
% Translated from DEMAIN format %
% Warsaw University of Technology %
% Institute of Telecommunications %
SUBDESIGN A
(
in_1, in_2, in_3, in_4

:INPUT;

in_5, in_6, in_7

:INPUT;

out_1, out_2, out_3, out_4 :OUTPUT;
out_5, out_6, out_7, out_8 :OUTPUT;
)
VARIABLE
g1_1, g1_2, g1_3, g3_1

:LCELL;

g2_1, g2_2

:LCELL;

BEGIN
---- Level 1 ----
TABLE
(in_1, in_2, in_3, in_4) => (g1_1);
B"1000" => B"0";
B"0011" => B"0";
.................
B"0001" => B"1";
B"1011" => B"1";
END TABLE;
TABLE
(in_6, g1_1, g2_1, g2_2) => (out_7);
B"0X10" => B"0";

.................

B"1011" => B"1";
END TABLE;
END;

# Konwerter
bin2bcd
.type fr
.i 7
.o 8
.p 100
0000000 00000000
0000001 00000001
0000010 00000010
0000011 00000011
0000100 00000100
0000101 00000101
. . . ..........
1011111 10010101
1100000 10010110
1100001 10010111
1100010 10011000
1100011 10011001
.e

Np..
DEMAIN

13 komórek

(!!!)

background image

I

T
P

W

ZPT

Porównanie realizacji BIN2BCD

Najstarszy inżynier: synteza strukturalna – 72 LEs

Młodszy: synteza behawioralna – 41 LEs

Najmłodszy: synteza logiczna:

system komercyjny Quartus – 29 LEs

system specjalizowany – 13 LEs

background image

I

T
P

W

ZPT

21

Cały projekt konwertera
kodu binarnego na kod
BCD
jest dokładnie omówiony

w książce:

Inny przykład syntezy
strukturalnej jest
omówiony w książce
(
przykład 5.4 rozdz. 5):

Warto przeczytać przed
LAB!

Errata do książki SUC na
www.zpt.tele.pw.edu.pl


Document Outline


Wyszukiwarka

Podobne podstrony:
pul w9b
ulog w9b
uloge pr 07

więcej podobnych podstron