Đề thi học kì 1 môn Kỹ thuật số - Năm học 2013-2014 (Có đáp án)

ĐH BÁCH KHOA TP.HCM * KHOA ĐIỆN - ĐIỆN TỬ * BỘ MÔN ĐIỆN TỬ  
Chữ kí giám thị  
Điểm  
ĐỀ THI HK1 (2013-2014)  
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: ………..  
SINH VIÊN LÀM BÀI NGAY TRÊN ĐỀ THI - ĐỀ THI CÓ 6 TRANG  
Câu 1 (1,0 điểm) Phân tích và xác định dãy đếm của bộ đếm như hình vẽ.  
Q0  
Q1  
Q2  
0
0
0
Pr  
Pr  
Pr  
D
Q
Q
D
Q
Q
D
Q
Q
CK  
CK  
CK  
CK  
Cl  
Cl  
Cl  
0
0
Z
Từ hình vẽ, ta thấy đây là bộ đếm lên, không đầy đủ. Ta có, tín hiệu reset: Z = Q2Q0,  
vậy khi Q2Q1Q0= 1x1, bộ đếm sẽ reset về trạng thái đầu. Xét 2 trường hợp:  
* T/H1: Q2Q1Q0= 101, trạng thái đầu là Q2Q1Q0= 001 (do Z chỉ đưa vào chân Clear của Q2).  
Từ trạng thái 001, bộ đếm sẽ đếm lên: 001 -> 010 -> 011 -> 100. Xung clock tiếp theo sẽ reset  
0,5 đ  
bộ đếm về lại 001. Ta có bộ đếm lên m=4, bắt đầu từ trạng thái 001.  
* T/H2: Q2Q1Q0= 111, trạng thái đầu là Q2Q1Q0= 011. Từ trạng thái 011, bộ đếm sẽ đếm  
lên: 011 -> 100. Với xung clock tiếp theo sẽ reset bộ đếm về lại 001. Ta cũng lại có bộ đếm  
0,5 đ  
lên m=4, bắt đầu từ trạng thái 001 như trường hợp 1.  
Vậy ta có dãy đếm là: Q2Q1Q0= 001, 010, 011, 100, 001, …  
Câu 2 (2,0 điểm) Sử dụng JK-FF, thiết kế bộ đếm song song có giản đồ xung như hình vẽ (các  
trạng thái không có trong vòng đếm đều chọn trạng thái kế tiếp là trạng thái đầu của giản  
đồ).  
CK  
QA(msb)  
QB  
QC  
1
Dãy đếm QAQBQC = 100, 010, 000, 001, 101, 111, 100, …  
QA QB QC Q+ Q+ Q+  
JAKA JBKB JCKC  
0 X 0 X 1 X  
1 X 0 X X 0  
0 X X 1 0 X  
1 X X 1 X 1  
X 1 1 X 0 X  
X 0 1 X X 0  
X 0 X 1 0 X  
X 0 X 1 X 1  
A
B
C
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
1
0
1
0
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
0
Rút gọn bìa K, ta có:  
JA = QC  
JB = QA  
KA = QB QC  
KB = 1  
0,75 đ  
JC = QA QB KC = QB  
0,75 đ  
QA  
QC  
QB  
JA  
QA  
QA  
JB  
QB  
QB  
JC  
QC  
QC  
KA  
KB  
KC  
1
CK  
0,5 đ  
Câu 3 (1,0 điểm) Một hệ tuần tự kiểu MEALY có một ngõ vào X và một ngõ ra Z. Ngõ ra Z là  
1 khi ngõ vào X nhận được chuỗi bit liên tiếp là 010 hoặc 0110. Biết rằng chuỗi được xét liên  
tục. Hãy thành lập bảng chuyển trạng thái. Rút gọn bảng trạng thái (nếu được)  
Vd: X = 0,1,1,1,0,1,0,1,1,0,1,0,0,0,1,1,0,1,1,1,0,1,0,1,..  
Z = 0,0,0,0,0,0,1,0,0,1,0,1,0,0,0,0,1,0,0,0,0,0,1,0,..  
1,0 đ  
Trạng thái  
Ý nghĩa  
Trạng thái reset  
(chưa nhận bit)  
1 bit 0  
HT  
KT  
Z
Ta có, A và C tương đương  
A
X=0 X=1 X=0 X=1  
HT  
KT  
Z
A
B
C
D
E
B
B
B
B
B
C
D
C
E
C
0
0
0
1
1
0
0
0
0
0
X=0 X=1 X=0 X=1  
A
B
D
E
B
B
B
B
A
D
E
A
0
0
1
1
0
0
0
0
B
C
D
E
1 bit 1  
2 bit 0,1  
3 bit 0,1,1  
2
Câu 4 (2,0 điểm) Hệ tuần tự có 1 ngõ vào X và 2 ngõ ra U, V. Khi có xung clock cạnh lên thì hệ  
chuyển trạng thái theo bảng sau:  
TT hiện tại  
TT kế tiếp  
X = 0 X = 1  
Ngõ ra (UV)  
X = 0 X = 1  
01 01  
Q1Q0  
10  
01  
00  
11  
A
B
C
D
A
B
C
B
C
A
D
B
00  
01  
10  
11  
10  
11  
a. Thiết kế hệ trên bằng T-FF và ROM (vẽ sơ đồ kết nối ROM với Flipflop và bảng  
nạp ROM)  
X Q1 Q0 U V Q+ Q+  
T1 T0  
0 1  
0 1  
0 0  
1 1  
1 1  
1 1  
1 1  
1 0  
1
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 1 0  
1
1,0 đ  
0 0 0  
0 1 1  
1 0 0  
1 0 1  
1 1 1  
0 1 0  
1 1 0  
0
0
0
1
0
1
1
ROM 23 x 4 (bit)  
D3  
U
A2  
X
D2  
V
Bảng nạp ROM  
X Q1 Q0 U V T1 T0  
A2 A1 A0 D3 D2 D1 D0  
A1  
A0  
D1  
D0  
T1 Q1  
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 1 0 1  
0 0 0 1  
0 1 0 0  
1 0 1 1  
1 0 1 1  
1 1 1 1  
0 1 1 1  
1 1 1 0  
T0 Q0  
CK  
b. Biết rằng ban đầu hệ tuần tự ở trạng thái C và X = 1 khi hệ có cạnh lên clock như  
hình vẽ. Xác định ngõ vào X cần thiết để có U = V= 0 với số xung clock ít nhất. Vẽ xung của  
ngõ vào X và ngõ ra U và V trong trường hợp này. (Chú ý tín hiệu X không thay đổi tại cạnh  
lên của clock)  
Clock  
X
C
D
B
Trạng thái  
1,0 đ  
U
V
3
Câu 5 (1,0 điểm) Hệ tuần tự được thiết kế bằng PLA và D-FF như hình vẽ. Hãy vẽ giản đồ  
trạng thái của hệ.  
Bảng nạp PLA  
X
Z
X QA QB  
1 0 -  
- 1  
- 0 1  
- 1 0  
Z DA DB  
0 1 0  
0 1 0  
1 0 1  
1 0 0  
QA  
DA  
D
Q
Q
-
ck  
D
DB  
QB  
Từ bảng PLA, ta có:  
Z = QA QB + QA QB  
DA = X QA + QB = Q+  
ck  
A
CK  
DB = QA QB = Q+  
B
0,5 đ  
Bảng chuyển trạng thái  
1
X QA QB  
Z Q+ Q+  
A
B
00  
0
10  
1
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
1
1
0
0
1
1
0
0 0  
0, 1  
1 1  
0 0  
1 0  
1 0  
1 1  
0 0  
1 0  
X = 0  
0,5 đ  
0, 1  
01  
1
11  
0
0, 1  
Câu 6 (1,0 điểm)  
Cho code VHDL mô tả hàm logic F. Hãy xác định biểu thức của F và viết lại code bằng  
lệnh WITH-SELECT-WHEN (chỉ viết từ phần architecture)  
library ieee;  
use ieee.std_logic_1164.all;  
entity CAU6 is  
port ( A, B, C, D : IN std_logic; F : OUT std_logic);  
end CAU6;  
architecture THI of CAU6 is  
begin  
process (A, B, C, D)  
begin  
if A = ‘0’ then F <= B and C; else F <= not C or D; end if;  
end process;  
end THI;  
4
Biểu thức của hàm F:  
F = A . B C + A (C + D)  
0,5 đ  
0,5 đ  
Viết lại bằng lệnh WITH – SELECT - WHEN  
architecture THI of CAU6 is  
begin  
WITH  
A
SELECT  
F <= B and C  
not C or D  
WHEN ‘0’,  
WHEN OTHERS;  
end THI;  
Câu 7 (1,0 điểm) Cho Flip-flop như hình vẽ. Hãy viết code VHDL mô tả Flip-flop này.  
*Chú ý: Ngõ vào Cl (clear) là ngõ vào đồng bộ  
M
Q
Q
Bảng hoạt động  
Cl M N  
Q+  
0
0
Q
Q
1
0
1
1
1
1
X
0
0
1
1
X
0
1
0
1
CK  
N
Cl  
entity MN_FF is  
port ( CK, Cl, M, N : IN std_logic;  
Q, nQ BUFFER std_logic);  
1,0 đ  
:
end MN_FF;  
architecture THI of MN_FF is  
begin  
process (CK)  
begin  
if rising_edge (CK) then  
if Cl = ‘0’ then Q <= ‘0’ ;  
elsif M = ‘0’ and N = ‘0’ then Q <= ‘0’;  
elsif M = ‘0’ and N = ‘1’ then Q <= not Q;  
elsif M = ‘1’ and N = ‘1’ then Q <= ‘1’;  
end if;  
end if;  
nQ <= not Q;  
end process;  
end THI;  
5
Câu 8: câu tự chọn (sinh viên chọn làm 8a hoặc 8b) (1,0 điểm)  
8a. Thành lập lưu đồ SM (rút gọn nếu được) của hệ tuần tự được mô tả ở câu 4  
A
10 = Q1Q0  
Lưu đồ SM rút gọn  
0,5 đ  
A
10 = Q1Q0  
0
1
X
V
X
0,5 đ  
V
V
0
1
B
01  
B
01  
0
1
X
C
U,V  
0
1
X
C
U,V  
0
X
1
V
0
X
U
1
V
D
U
D
1
0
X
U
X
U,V  
U
1
0
V
6
8b. Viết code VHDL mô tả hệ tổ hợp này với yêu cầu  
X
B1  
B0  
X
d0 d1  
MUX2to1  
s
d0 d1  
MUX2to1  
s
- ngõ vào: X, C0 và 2 vector A, B.  
- ngõ ra: D là vector.  
y
y
- sử dụng component MUX2to1 và FA  
(không cần viết code cho 2 component  
này)  
A1  
A0  
x
x
y
y
FA  
FA  
z
c
z
c
C0  
s
s
D0  
D2  
D1  
library ieee;  
use ieee.std_logic_1164.all;  
entity CAU8 is  
1,0 đ  
port ( X, C0: IN std_logic;  
A, B : IN std-logic_vector (1 downto 0);  
Q, nQ : OUT std_logic_vector (2 downto 0);  
end CAU8;  
architecture THI of CAU8 is  
signal E, F, G, H, I : std_logic;  
component MUX2to1  
port ( d0, d1, s : IN std_logic; y: OUT std_logic);  
end component;  
component FA  
port ( x, y, z : IN std_logic;  
s, c : OUT std_logic);  
end component;  
begin  
E <= not B(1); F <= not b(0);  
u1: MUX2to1 port map (B(1), E, X, G);  
u2: MUX2to1 port map (B(0), F, X, H);  
u3: FA port map (A(1), G, I, D(1), D(2));  
u4: FA port map (A(0), H, C0, D(0), i);  
end THI;  
GV ra đề  
Ngày 30 tháng 12 năm 2013  
BM Điện Tử  
NGUYỄN TRỌNG LUẬT  
7
pdf 7 trang baolam 17740 Free
Bạn đang xem tài liệu "Đề thi học kì 1 môn Kỹ thuật số - Năm học 2013-2014 (Có đáp án)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfde_thi_hoc_ki_1_mon_ky_thuat_so_nam_hoc_2013_2014_co_dap_an.pdf