ulog w8b e


System cyfrowy
0
0
10
0
11
0 0
1
Dane
01
0
1
wejściowe
Sygnały
0
sterujące
Układ operacyjny
(Datapath)
Układ
sterujący
Mikrooperacje
(kontroler) wywoływane przez
sygnały sterujące
Stan części
operacyjnej
Dane wyjściowe
I
T
P
W
ZPT
1
1
1
0
0
0
1
1
1
0
1
1
1
1
1
0
0
System cyfrowy - realizacja
XZ D
Z
US UO
XP
UO  z bloków funkcjonalnych
ZY F
I
T
P
US  automat (lub układ mikroprogramowany)
W
ZPT
2
Przykład syntezy strukturalnej
Konwerter kodu binarnego na kod BCD:
W kodzie BCD (Binary Coded Decimal) każda cyfra liczby zapisanej w
kodzie dziesiętnym jest przedstawiana czterobitową liczbą binarną
Np. liczba 489 zostanie zapisana jako wektor binarny z
wykorzystaniem 12 bitów (3 4 bity)
4 8 9
0100 1000 1001
I
T
P
W
ZPT
3
Konwerter Bin2BCD
BIN/BCD
Wyjście
Wejście
(00100111)BCD
(00011011)BIN
0 d" liczby d" 99
I
T
P
W
ZPT
4
Metoda +3
0 0 0 0 0 0 0 0 27 = 0 0 0 1 1 0 1 1
LDA LDB
LB
0 0 0 0 0 0 0 0
LDB e" 5
e"
e"
e"
NIE TAK
8



LDB := LDB LDB := LDB+3
I
T
P
W
ZPT
5
LDA LDB LB
LDB < 5
0 0 0 0 0 0 0 0
0 0 0 1 1 0 1 1
1
LDB < 5
0 0 0 0 0 0 0 0
0 0 1 1 0 1 1
2
LDB < 5
0 0 0 0 0 0 0 0
3
0 1 1 0 1 1
LDB < 5
0 0 0 0 0 0 0 0 4
1 1 0 1 1
LDB < 5
0 0 0 0 0 0 0 1
5
1 0 1 1
LDB < 5
0 0 0 0 0 0 1 1
6 0 1 1
LDB e" 5
e"
e"
e"
0 0 0 0 0 1 1 0
1 1
7
+ 0 0 1 1
0 0 0 0 1 0 0 1
LDB < 5 0 0 0 1 0 0 1 1
8
1
0 0 1 0 0 1 1 1
I
= 27
T
LDBCD =
0 0 1 0 0 1 1 1
P
W
2
7
ZPT
6
START
Algorytm konwersji
LOAD (LB)
LDA := 0
z kodu BIN na BCD
LDB := 0
LK := 8
TAK
LDB e" 5
e"
e"
e"
LDB := LDB + 3
NIE
TAK
LDA e" 5
e"
e"
e"
LDA := LDA + 3
NIE
LDA := SHL(LDA,LDB7)
LDB := SHL(LDB,LB7)
LB := SHL(LB)
LK := DEC(LK)
NIE
LK = 0
I
TAK
T
P
LD := LDA LDB
W
KONIEC
ZPT
7
Opis strukturalny
4 8
 8
4
4
LB
R3 R2 R1
LOAD1
LK
DEC
S3 S2 S1
LK = 0
A
B
LB
S
0
1
MUX
MUX
LK = 0
 5
 3 4
K e" 5
e"
e"
e"
Y
US UO
K B
Ł A
Ł
Ł
Ł
4 4
10
K e" 5
e"
e"
e"
R4 LOAD2
I
T
8
P
W
Y = LD
ZPT
8
Sieć działań
A0
z uwzględnieniem UO
0
S
1
A1
LOAD 1
CLEAR 2,3
LOAD (LK)
A2
MUX := 0
A6
1
K > 5
LOAD 2
0
A3
MUX := 1
A7
1
K > 5
0 LOAD 3
A4
SHL 1, SHL 2, SHL 3,
DEC (LK)
A5
I
1
0
LK = 0
T
P
LOAD 4
W
ZPT
9
Automat sterujący
A0
0
S
A0/Z0
1
A1
x2
x2
LOAD 1
CLEAR 2,3
LOAD (LK)
A2
MUX := 0
A1/Z1
A6
1
K > 5
LOAD 2
0
x1
A3
A2/Z2 A6/Z4
MUX := 1
A7
1 x1
K > 5
x1
0 LOAD 3
A3/Z3 A7/Z5
A4
SHL 1, SHL 2, SHL 3,
DEC (LK)
x1
I
x0
A5
T
1
0
LK = 0 A4/Z6 A5/Z7
P
W
LOAD 4 x0
ZPT
10
Automat sterujący
A0/Z0
x2
x2 x2x1x0
000 001 011 010 110 111 101 100 Z
S
A1/Z1
A0 A0 A0 A0 A0 A1 A1 A1 A1 Z0
A1 A2 A2 A2 A2 A2 A2 A2 A2 Z1
A2 A3 A3 A6 A6 A6 A6 A3 A3 Z2
x1
A3 A4 A4 A7 A7 A7 A7 A4 A4 Z3
A2/Z2 A6/Z4
A4 A2 A5 A5 A2 A2 A5 A5 A2 Z6
x1
A5 A0 A0 A0 A0 A0 A0 A0 A0 Z7
x1
A6 A3 A3 A3 A3 A3 A3 A3 A3 Z4
A3/Z3 A7/Z5
A7 A4 A4 A4 A4 A4 A4 A4 A4 Z5
x1
x0
I
T
A4/Z6 A5/Z7
P
x0
W
ZPT
11
Konwerter Bin2BCD w systemie Altery
Konwerter Bin2BCD
INPUT
LB[7..0]
r3_v r2_v r1_v
IN OUT IN OUT LB[7..0] OUT
DA[3..0] DB[3..0] RB[7..0]
LOAD LOAD LOAD
INPUT
CK CK CK
CK
OUTPUT
CLOK
Us_v
Lk_v
INPUT
CLK CLOK
CK L[3..0]
CLK OUTPUT
LOAD
START
STOP
LOAD STOP
START
INPUT
STOP
r4_v
STOP]
LD[7..0] LD[7..0]
CLK
QDB[3..0]
OUTPUT
QDA[3..0]
I
T
P
W
ZPT
12
Realizacja wg języka VHDL
** DEVICE SUMMARY **
Chip/ Input Output Bidir Memory Memory LCs
POF Device Pins Pins Pins Bits % Utilized LCs % Utilized
bin2bcd EPF10K20RC240-3 10 9 0 0 0 % 72 6 %
User Pins: 10 9 0
I
T
P
W
ZPT
13
TITLE " Converted from PLA file: bin2bcd";
# Konwerter
% Converter from PLA to ALtera HDL format %
bin2bcd
% Warsaw University of Technology %
.type fr
% Institute of Telecommunications %
.i 7
SUBDESIGN bin2bcd-wkl
.o 8
(
.p 100
i[6..0] : INPUT;
0000000 00000000
o[7..0] : OUTPUT;
0000001 00000001
)
0000010 00000010
BEGIN
0000011 00000011
TABLE
0000100 00000100
(i[6..0]) => (o[7..0]);
0000101 00000101
B"0000000" => B"00000000";
. . . ..........
B"0000001" => B"00000001";
1011111 10010101
B"0000010" => B"00000010";
1100000 10010110
pla2ahdl
B"0000011" => B"00000011";
1100001 10010111
B"0000100" => B"00000100";
1100010 10011000
B"0000101" => B"00000101";
1100011 10011001
........................
.e
B"1011111" => B"10010101";
B"1100000" => B"10010110";
B"1100001" => B"10010111";
B"1100010" => B"10011000";
I
B"1100011" => B"10011001";
T
END TABLE;
P
END;
W
ZPT
Tablica prawdy  bin2bcd
Rozwiązanie bardzo szybkie&
gdyby nie ta ogromna ilość zasobów
potrzebnych do realizacji
Chip/ Input Output Bidir Memory Memory LCs
I
POF Device Pins Pins Pins Bits % Utilized LCs % Utilized
T
binbcd99 EP1K10TC100-1 7 8 0 0 0 % 167 28 %
P
User Pins: 7 8 0
W
ZPT
15
A jak sobie poradzi z tym konwerterem
algorytm dekompozycji
I
T
P
W
ZPT
16
Tablica prawdy  bin2bcd
TITLE " Decomposed project: bin2bcd ";
% Translated from DEMAIN format %
% Warsaw University of Technology %
# Konwerter
% Institute of Telecommunications %
bin2bcd SUBDESIGN A
(
.type fr
in_1, in_2, in_3, in_4
:INPUT;
.i 7
in_5, in_6, in_7
:INPUT;
.o 8
out_1, out_2, out_3, out_4 :OUTPUT;
.p 100 out_5, out_6, out_7, out_8 :OUTPUT;
)
0000000 00000000
VARIABLE
g1_1, g1_2, g1_3, g3_1 :LCELL;
0000001 00000001
g2_1, g2_2 :LCELL;
BEGIN
0000010 00000010
---- Level 1 ----
0000011 00000011 TABLE
(in_1, in_2, in_3, in_4) => (g1_1);
0000100 00000100
B"1000" => B"0";
B"0011" => B"0";
0000101 00000101
.................
B"0001" => B"1";
. . . ..........
B"1011" => B"1";
1011111 10010101
END TABLE;
TABLE
1100000 10010110
(in_6, g1_1, g2_1, g2_2) => (out_7);
B"0X10" => B"0";
1100001 10010111
.................
1100010 10011000
B"1011" => B"1";
END TABLE;
1100011 10011001
END;
.e
Demain
I
T +
P
W
ans2hdl
ZPT
17
Realizacja Bin2bcd wg Demaina
in_1 in_2 in_3 in_4 in_1 in_2 in_3 in_4 in_5 in_7
g1_1 g1_2 g1_3
in_6
g2_1 g2_2
out_1 out_2 out_4 out_5 out_6 out_7 out_3 out_8
I
T
P
W
ZPT
18
Bin2bcd wg Demaina i MAX+PLUSII
Rozwiązanie jeszcze
lepsze i mało komórek
Chip/ Input Output Bidir Memory Memory LCs
I
POF Device Pins Pins Pins Bits % Utilized LCs % Utilized
T
binbcd99 EP1K10TC100-1 7 8 0 0 0 % 13 2 %
P
User Pins: 7 8 0
W
ZPT
19
Konwerter Bin2BCD na poziomie
Konwerter Bin2BCD na poziomie
.type fr
logicznym
logicznym
.i 9
.o 8
.p 100
000000000 0000 0000
000000001 0000 0001
AHDL/VHDL
000000010 0000 0010
000000011 0000 0011
000000100 0000 0100
000000101 0000 0101
000000110 0000 0110
MAX+PLUSII 131komórek
000000111 0000 0111
000001000 0000 1000
000001001 0000 1001
000001010 0001 0000
000001011 0001 0001
DEMAIN
000001100 0001 0010
000001101 0001 0011
* * *
001100001 1001 0111
DEMAIN 13 komórek (!!!)



001100010 1001 1000
I
001100011 1001 1001
T
.e
P
W
ZPT
20


Wyszukiwarka

Podobne podstrony:
ulog w8b T
ulog z t
ulog w6b
ulog w12
ulog w7
ulog w6
ulog w9
ulog w6a
ulog w4b
ulog w4a
ulog w10
ulog w8
ulog at
ulog t w8
ulog w7b
ulog w8a e
ULOG zad KOL1
ulog w8a T

więcej podobnych podstron