Układy cyfrowe - Uniwersytet Zielonogórski

Transkrypt

Układy cyfrowe - Uniwersytet Zielonogórski
Układy cyfrowe - laboratorium
przygotowali: dr inż. Remgiusz Wiśniewski, dr inż. Piotr Miczulski
8. PODSTAWOWE UKŁADY SEKWENCYJNE - PRZERZUTNIKI
CEL ĆWICZENIA
Celem laboratorium jest zapoznanie się z budową i zasadą działania podstawowych typów
przerzutników.
PRZYGOTOWANIE DO ZAJĘĆ
Podstawowe typy przerzutników: przerzutnik asynchroniczny
synchroniczne RS, D, T i JK, ich budowa i zasada działania.
RS
oraz
przerzutniki
funkcję
przerzutnika
ZADANIE 1
Zamodelować i przeprowadzić symulację układu
asynchronicznego RS (z wykorzystaniem bramek NOR).
R
realizującego
I1
O
I0
Q
I1
O
S
I0
nQ
R
S
0
0
1
1
0
1
0
1
Q*
Q
1
0
s.z.
Rysunek 1. Symbol, schemat logiczny oraz tabela przerzutnika RS (bramki NOR)
1. Przerzutnik zaprojektuj jako oddzielny blok logiczny wykorzystując bramki z biblioteki
Built-in symbols. Wyjaśnić wyniki symulacji.
2. Na wejścia R oraz S podaj następujące wymuszenia typu Clock:
o dla R: częstotliwość 50 ns, rozpoczynając od wartości 1;
o dla S: częstotliwość 75 ns, rozpoczynając od wartości 0.
ZADANIE 2
Zamodelować i przeprowadzić symulację układu realizującego
asynchronicznego SR (z wykorzystaniem bramek NAND).
nS
I1
O
I0
Q
I1
O
nR
I0
nQ
̅
0
0
1
1
funkcję
̅
0
1
0
1
przerzutnika
Q*
s.z.
1
0
Q
Rysunek 2. Symbol, schemat logiczny oraz tabela przerzutnika SR (bramki NOR)
1.
2.
Przerzutnik zaprojektuj jako oddzielny blok logiczny wykorzystując bramki z biblioteki
Built-in symbols. Wyjaśnić wyniki symulacji.
Na wejścia ̅ oraz ̅ podaj następujące wymuszenia typu Clock:
a. dla ̅: częstotliwość 50 ns, rozpoczynając od wartości 0;
b. dla ̅ : częstotliwość 75 ns, rozpoczynając od wartości 1.
Układy cyfrowe - laboratorium
przygotowali: dr inż. Remgiusz Wiśniewski, dr inż. Piotr Miczulski
ZADANIE 3
Wykorzystując przerzutnik RS z zadania 2 zamodeluj układ realizujący funkcję przerzutnika typu
D wyzwalanego poziomem (latch).
D
Q
/Q
Clk
I1
D
O
I1
I0
O
I0
Q
Clk
I1
I1
O
O
I
O
I0
nQ
Q*
0
1
1
1
0
x
0
1
Q
I0
Rysunek 3. Symbol, schemat logiczny oraz tabela prawdy przerzutnika D typu latch
ZADANIE 4
Przeprowadzić symulację układu przerzutnika D wyzwalanego zboczem (Flip-flop). Porównać
wyniki z wynikami uzyskanymi w zadaniu 3.
D
Q
Clk
/Q
Reset
Q*
0
1
0
1
x
x
0
1
Q
Q
Q
Q*
0
0
1
1
0
1
0
1
0
1
0
1
Rysunek 4. Symbol, tabela prawdy, graf przejść oraz tabela wzbudzeń przerzutnika D typu flip-flop
Wskazówki:

Wykorzystaj przerzutnik FDC opisany w języku Verilog (skompiluj kod, aby przerzutnik
był dostępny w bibliotece schematu dla danego projektu):
module FDC (Q, Clk, Reset, D);
output reg Q;
input Clk, Reset, D;
always @(posedge Clk or posedge Reset)
if (Reset) Q <= 1'b0;
else Q <= D;
endmodule

Na wejście zerujące Reset należy podać następujące wymuszenia:
o wartość 1 po 0 ns
o wartość 0 po 10 ns
ZADANIE 5
Przeprowadzić symulację układu przerzutnika JK wyzwalanego zboczem (Flip-flop).
J
Q
Clk
/Q
K
Reset
J
0
0
1
1
K
0
1
0
1
Q*
Q
0
1
̅
Q
Q*
0
0
1
1
0
1
0
1
J
0
1
-
Rysunek 5. Symbol, tabela prawdy, graf przejść oraz tabela wzbudzeń przerzutnika JK typu flip-flop
1
0
Układy cyfrowe - laboratorium
przygotowali: dr inż. Remgiusz Wiśniewski, dr inż. Piotr Miczulski
Wskazówki:

Wykorzystaj przerzutnik FJKC opisany w języku Verilog (skompiluj kod, aby przerzutnik
był dostępny w bibliotece schematu dla danego projektu):
module FJKC (Q, Clk, Reset, J, K);
output reg Q;
input Clk, Reset, J, K;
always @ (posedge Clk or posedge Reset)
if (Reset == 1'b1) Q <= 1'b0;
else if (J==1'b0 && K==1'b0) Q <= Q;
else if (J==1'b0 && K==1'b1) Q <= 1'b0;
else if (J==1'b1 && K==1'b0) Q <= 1'b1;
else if (J==1'b1 && K==1'b1) Q <=~Q;
endmodule
ZADANIE 6
Zamodeluj układ dwójki liczącej z wykorzystaniem przerzutnika typu D.
ZADANIE 7
Zamodeluj układ dwójki liczącej z wykorzystaniem przerzutnika typu JK.
LISTA OMÓWIONYCH ZAGADNIEŃ
1.
2.
3.
4.
Przerzutniki asynchroniczne i synchroniczne.
Przerzutniki wyzwalane poziomem (Latch) i zboczem (flip-flop).
Przerzutniki typu RS, D, T i JK.
Dwójka licząca.