Viết phương trình ngõ vào D: b... Cho hệ tuần tự gồm 1 ngõ vào X và 1 ngõ ra Z có giản đồ trạng thái như hình vẽ Thiết kế hệ trên bằng T-FF kích cạnh lên và PLA vẽ sơ đồ kết nối PLA vớ
Trang 1Câu 1 (1,5 điểm)
Cho bộ đếm song song 2 bit Q 1 và Q 0 (LSB) ; bộ đếm có 1 ngõ vào điều khiển X như hình vẽ
a Viết phương trình ngõ vào D:
b Thành lập bảng chuyển trạng thái:
X Q 1 Q 0 Q + 1 Q + 0
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1 1
0 0
0 1
1 0
0 1
1 0
1 1
0 0
Điểm
SINH VIÊN LÀM BÀI NGAY TRÊN ĐỀ THI - ĐỀ THI CÓ 5 TRANG
ĐỀ THI HK1 (2012-2013) Môn: Kỹ thuật số Thời gian: 110 phút (SINH VIÊN KHÔNG ĐƯỢC SỬ DỤNG TÀI LIỆU)
HỌ TÊN: ……… MSSV: ……… NHÓM: ………
ĐH BÁCH KHOA TP.HCM * KHOA ĐIỆN - ĐIỆN TỬ * BỘ MÔN ĐIỆN TỬ
D 1
CK1
Q 1
Q1
D 0
CK0
Q 0
Q0
CK
X
c Xác định dãy đếm và cho biết ý nghĩa của ngõ vào X:
D1 = X Q1 Q0
D0 = Q0
X = 0: Q1Q0 = 11, 10, 01, 00, 11, …
X = 1: Q1Q0 = 00, 01, 10, 11, 00, …
Với X = 0, ta có bộ đếm xuống 2 bit;
và X =1, ta có bộ đếm lên 2 bit
(0,5 đ)
(0,5 đ) (0,5 đ)
Trang 2Câu 2 (3 điểm)
a Cho hệ tuần tự (gồm 1 ngõ vào X và 1 ngõ ra Z) có giản đồ trạng thái như hình vẽ
Thiết kế hệ trên bằng T-FF (kích cạnh lên) và PLA (vẽ sơ đồ kết nối PLA với Flipflop
và trình bày bảng nạp PLA)
b Hoàn tất giản đồ định thì (giản đồ xung) của hệ tuần tự
X Q 1 Q 0 Z Q + Q +
0 T 1 T 0
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0 0 0
0 1 1
0 1 0
1 0 1
0 1 0
0 0 1
0 1 1
1 1 0
0 0
1 0
0 0
1 0
1 0
0 0
0 1
0 1
D
0
C
1
B
0
A
0
X = 1
0
0
1
1
1
0
0
Q1
1
D C
Bảng gán trạng thái
(0,5 đ)
Bảng nạp PLA (0,5 đ)
X Q 1 Q 0 Z T 1 T 0
- 1 1
0 - 1
1 0 0
1 1 -
1 0 0
0 1 0
0 1 0
0 0 1
(0,5 đ)
CK
X
Q 1
Q 0
(1 đ)
A A B B C B C D C
Z = Q 1 Q 0
00 01 11 10 0
1
Q 0
XQ 1 Z
1 1
00 01 11 10 0
1
Q 0
XQ 1
T 1
1
1
1 T 1 = X Q 0 + X Q 1 Q 0
T 0 = X Q 1
00 01 11 10 0
1
Q 0
XQ 1
T 0
1
1
(0,5 đ)
Z
X
Q1
Q0
T1
T0
T Q
T Q
CK
Trang 3Câu 3 (1,0 điểm) Cho Flip-flop như hình vẽ:
a Xác định phương trình đặc tính của Flip-flop: Q +
b Với ngõ vào X1 = 0 và X2 = 1 thì Flip-flop có tính chất gì? Giải thích ngắn gọn
Câu 4 (1,0 điểm)
Một hệ tuần tự kiểu Moore có một ngõ vào X và một ngõ ra Z Ngõ ra Z là 1 khi và chỉ khi ngõ vào X nhận được 2 bit liên tiếp khác nhau Hãy thành lập bảng chuyển trạng thái
Trạng thái Ý nghĩa
S0 Trạng thái reset
(chưa nhận bit)
S1
S2
…
X1
X2 CK
Q
Q
Bảng hoạt động
X1 X2 Q +
0 0
0 1
1 0
1 1
1
Q
0
Q
X 1 X 2 Q Q+
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1
1
1
0
0
0
0
1
(0,5 đ)
Với X1 = 0 và X2 = 1 thì Q + = Q : ta có FF đếm 2 (chia đôi tần số) (0,5 đ)
Hiện tại Kế tiếp
X =0 X=1
Ngõ ra
Z S0
(0) S1 (1) S2 (1) S3 (0) S4
S1 S2 S1 S3 S4 S2 S4 S2 S1 S3
0
0
0
1
1
Q + = X 1 Q + X 1 X 2 + X 1 X 2 Q
00 01 11 10 0
1
Q X 1 X 2
Q +
1 1 1
1
Trang 4Câu 5 (1,5 điểm)
Hãy vẽ sơ đồ logic của bộ đếm nối tiếp được mô tả VHDL, từ đó xác định dãy đếm của
bộ đếm này:
Câu 6 (1,0 điểm)
a Thực hiện hàm F = A B chỉ bằng cổng NAND 2 ngõ vào
library ieee;
use ieee.std_logic_1164.all;
entity CAU5 is
port ( CLK : IN std_logic;
Q : BUFFER std_logic_vector(2 downto 0));
end CAU5;
architecture THI of CAU5 is
component T_FF
port ( T, CK, Pr, Cl: IN std_logic;
Q: OUT std_logic);
end component;
signal Z, ONE, ZERO: std_logic;
begin
ONE <= ’1’; ZERO <= ’0’;
Z <= not Q(2) and Q(1) and not Q(0);
u0: T_FF port map (ONE, CLK, Z, ZERO, Q(0));
u1: T_FF port map (ONE, Q(0), Z, ZERO, Q(1));
u2: T_FF port map (ONE, Q(1), Z, ZERO, Q(2));
T
CK
Q
Pr
Cl T_FF component
T
CK
Q
Pr
Cl
1
0
Q0
CLK
T
CK
Q
Pr
Cl
1
0
Q1
T
CK
Q
Pr
Cl
1
0
Q2
Z
(1 đ)
F = A B = A B + A B = A B A B
A
B
F C1
C3
C2
C4
(0,5 đ)
(0,5 đ)
Đây là bộ đếm nối tiếp có chức năng đếm xuống
Z = Q2 Q1 Q0 nên khi Q2Q1Q0 = 010 thì bộ đếm reset về trạng thái ban đầu là 111
=> Vậy dãy đếm của bộ đếm Q2Q1Q0= 111, 110, 101, 100, 011, 111, 110,
Trang 5b Sử dụng mô tả cấu trúc với component NAND2 cho trước (với x, y là 2 ngõ vào và z
là ngõ ra), viết tiếp đoạn mã VHDL mô tả hoạt động hàm F:
Câu 7 (1,0 điểm)
Viết đoạn mã VHDL (chỉ viết từ ENTITY) mô tả mạch tổ hợp: có A, B là ngõ vào 8 bit
và S là ngõ vào 2 bit Mạch có ngõ ra F cũng 8 bit Mạch có hoạt động như sau:
- S = 00 thì F là NOT của A
- S = 01 thì F là AND giữa A và B
- S = 10 thì F là OR giữa A và B
- S = 11 thì F là XOR giữa A và B
Yêu cầu: khai báo các ngõ vào và ngõ ra đều là vector và sử dụng lệnh CASE để mô tả
Chú ý: các phép toán logic đều được sử dụng trên toán hạng là vector
Ngày 02 tháng 01 năm 2013
BM Điện Tử
GV ra đề và soạn đáp án
entity CAU6 is
port ( A, B: IN std_logic;
F: OUT std_logic);
end CAU6;
architecture THI of CAU6 is
component NAND2
port (x, y: IN std_logic;
z: OUT std_logic);
end component;
begin u1: NAND2 port map (A, A, C1); u2: NAND2 port map (C1, B, C2); u3: NAND2 port map (B, B, C3); u4: NAND2 port map (C3, A, C4); u5: NAND2 port map (C2, c4, F); end THI;
(0,5 đ)
case S is when “00” => F <= not A;
when “01” => F <= A and B;
when “10” => F <= A or B;
when “11” => F <= A xor B;
when others => null;
end case;
end process;
end THI:
entity CAU7 is
port
( A, B: IN std_logic_vector (7 downto 0);
S: IN std_logic_vector (1 downto 0);
F: OUT std_logic_vector (7 downto 0));
end CAU7;
architecture THI of CAU7 is
begin
process (A, B, S)