Bài tập Kỹ thuật số (Trích từ các đề thi cuối học kỳ)
Câu 1
Cho hệ tổ hợp có ngõ vào biểu diễn 1 giá trị x (số nhị phân 2 bit x1x0). Hệ có 3 ngõ ra
a, b, c điều khiển các thanh đèn tương ứng sẽ sáng hoặc tắt (1 thì sáng, 0 thì tắt) tùy theo giá
trị của x. Ví dụ: x = 0 thì sáng tất cả thanh đèn.
a. Thiết kế hệ trên chỉ bằng cổng logic.
b. Thiết kế hệ trên chỉ bằng mạch giải m (decoder) 2 ? 4 và cổng cần thiết.
Câu 2
Cho bộ so sánh 3-bit (có ngõ ra tích cực cao) và bộ MUX 2 ? 1. Hãy thiết kế hệ tổ
hợp tìm giá trị lớn nhất trong 2 giá trị 3-bit M (M2 M1 M0) và N (N2 N1 N0) để chọn đưa đến
ngõ ra P (P2 P1 P0)
ế bộ đếm 3 bit có dãy đếm 4, 2, 3, 6, 5, 1, 4, sử dụng JK-FF có xung clock kích cạnh lên, ngõ vào Preset và Clear tích cực cao. Các trạng thái không có trong vòng đếm: với trạng thái hiện tại là 0 thì trạng thái kế tiếp là 7, còn với trạng thái hiện tại 7 thì kế tiếp là 0. Vẽ thêm mạch khởi động giá trị ban đầu cho bộ đếm là 5. Câu 5 Cho mạch gồm MUX 4 1 và D-FF như hình vẽ. Khảo sát tín hiệu Y và Q theo tín hiệu CK và các ngõ vào A, B. (Giá trị ban đầu của Q = 0) MUX 4 1 D0 D1 D2 D3 S0 (LSB) S1 Y D Q 1 0 B A CK CK A B Y Q T ck Q0 Q1 Q2 CK Q Q Q3 1 Câu 6 Xác định giản đồ trạng thái của hệ tuần tự gồm 1 ngõ vào X và 2 T-FF Q1, Q0 như hình vẽ Câu 7 Cho mạch logic như hình vẽ. Khảo sát dạng tín hiệu Y, Z, T theo tín hiệu A, B, C. Biết rằng giá trị ban đầu ngõ ra Q của chốt D và Flip Flop D đều bằng 1. A EN D Q Q D CK Q Q B C Y Z T D 10 A B C Y Z T CK Q Q T CK Q Q X CK Q0 Q1 Câu 8: Thiết kế hệ tổ hợp có nhiệm vụ nhân 3 của giá trị A (A là số nhị phân 2 bit A1A0, với A0 là LSB). Kết quả là giá trị M = 3xA có 3 bit M2M1M0 (M0 là LSB). Tuy nhiên nếu kết quả đầy đủ thì giá trị M phải lớn hơn 3 bit. Trong trường hợp này hệ có thêm 1 ngõ ra I (Invalid): I = 1 nếu kết quả M lớn hơn 3 bit và I = 0 trong trường hợp ngược lại. Trong trường hợp I = 1 thì giá trị M là tùy định. Câu 9: a. Cho mạch giải mã (decoder) 2 4 có ngõ ra tích cực logic 1 (tích cực cao) và có 1 ngõ vào cho phép tích cực logic 1 như hình vẽ. Hãy tìm biểu thức của từng ngõ ra và vẽ sơ đồ logic của mạch giải mã. b. Cho hàm F (A, B, C, D) có sơ đồ thực hiện bằng mạch giải mã trên và cổng logic như hình vẽ. Hãy tìm dạng chính tắc 1 của hàm F (dạng chuẩn 1). A1 A0 I M2 M1 M0 X0 X1 E Y0 Y1 Y2 Y3 E X1 X0 Y0 Y1 Y2 Y3 0 X X 1 0 0 1 0 1 1 1 0 1 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 X0 X1 E Y0 Y1 Y2 Y3 X0 X1 E Y0 Y1 Y2 Y3 1 D B A C F Decoder2 Decoder1 Câu 10: Hệ tổ hợp có gồm có: - Ngõ vào: A0, A1, A2 - Ngõ vào điều khiển: X, Y - Ngõ ra: F0, F1, F2 Hệ hoạt động theo 1 trong 4 chức năng như sau: X Y Chức năng Ngõ ra: F0 F1 F2 0 0 0 1 1 0 1 1 Quay phải giá trị ngõ vào (A0, A1, A2) Quay trái giá trị ngõ vào (A0, A1, A2) Dich phải giá trị ngõ vào (A0, A1, A2) Dịch trái giá trị ngõ vào (A0, A1, A2) A2 A0 A1 A1 A2 A0 0 A0 A1 A1 A2 0 Thiết kế hệ tổ hợp trên chỉ sử dụng các MUX 4 1 (như hình vẽ). Câu 11: Sử dụng T.FF có xung clock kích theo cạnh lên, ngõ vào Preset và Clear tích cực logic 0 (tích cực thấp), thiết kế bộ đếm nối tiếp (bộ đếm bất đồng bộ) 3 bit Q2Q1Q0 (Q0 là LSB) có chức năng đếm xuống, gồm 6 trạng thái và trạng thái ban đầu là Q2Q1Q0 = 011. Câu 12: Bộ đếm song song (bộ đếm đồng bộ) được thiết kế như hình vẽ. Hãy xác định giản đồ trạng thái của bộ đếm này. Cho nhận xét về bộ đếm này. Bảng hoạt động S1 S0 F 0 0 0 1 1 0 1 1 D0 D1 D2 D3 D Q Q CK Cl D Q Q CK Cl D Q Q CK Cl QA QB QC CK RS D0 D1 D2 S1 S0 (LSB) F D3 Với giá trị đầu QA QB QC = 001, hãy hoàn tất giản đồ xung như hình vẽ: Câu 13 Sử dụng JK.FF có xung clock kích theo cạnh lên, ngõ vào Preset và Clear tích cực logic 0 (tích cực thấp), thiết kế bộ đếm nối tiếp (bộ đếm bất đồng bộ) 3 bit QAQBQC (QC là LSB) có giản đồ trạng thái như hình vẽ. Câu 14 Xác định giản đồ trạng thái của hệ tuần tự gồm 1 ngõ vào X và 2 T-FF Q1, Q0 như hình vẽ CK QA QB QC RS 0 0 1 111 000 0 001 010 011 QAQBQC T CK Q Q T CK Q Q X CK Q0 Q1 Câu 15 Thành lập bảng chuyển trạng thái hoặc giản đồ trạng thái của hệ tuần tự kiểu MOORE có 1 ngõ vào X và 1 ngõ ra Z. Ngõ ra Z chỉ bằng 1 khi ngõ vào X nhận được chuỗi liên tục 1, 1, 0, 1. Hãy rút gọn bảng trạng thái. Câu 16 Rút gọn bảng trạng thái sau: Câu 17 Cho hệ tuần tự có 1 ngõ vào X và 2 ngõ ra Z1, Z2. Hệ có 4 trạng thái A, B, C và D. Với phép gán trạng thái A: Q1Q2 = 10, B: Q1Q2 = 00, C: Q1Q2 = 10 và D: Q1Q2 = 11. Hãy thiết kế hệ bằng JK_FF và cổng logic hoặc D_FF và PLA. Biết rằng khi xung clock vào có cạnh xuống hệ sẽ chuyển trạng thái. A 01 X = 1 B 11 D 10 C 00 0 0 0 0 1 1 1 TRẠNG THÁI HIỆN TẠI TRẠNG THÁI KẾ TIẾP NGÕ RA X = 0 X = 1 X = 0 X = 1 S1 S2 S3 0 0 S2 S4 S5 0 0 S3 S6 S7 0 0 S4 S4 S5 0 0 S5 S6 S7 0 0 S6 S4 S5 1 0 S7 S6 S7 0 0 Câu 18 Cho hệ tuần tự có lưu đồ máy trạng thái (lưu đồ SM như hình vẽ). Xác định phương trình trạng thái kế của các biến trạng thái Q + 1, Q + 2 và phương trình ngõ ra Z1 Z2. Câu 19 Hoàn tất mã VHDL thực hiện hệ tuần tự sau: LIBRARY ieee; USE iee.std_logic_1164.all; ENTITY FSM IS PORT (clock, reset, x: IN std_logic; z: OUT std_logic); END FSM; ARCHITECTURE behavior OF FSM IS TYPE state IS (A, B); SIGNAL pr_state, nx_state: state; BEGIN regst: PROCESS(clock, reset) BEGIN IF reset = ’1’ THEN pr_state <= A; ELSIF (clock = ’1’ and clock’event) THEN pr_state <= nx_state; END IF; END PROCESS; ... 0 0 1 S2 10 S1 11 Z1 S0 00 = Q1Q2 X Z2 Z1, Z2 0 1 X X B 11 ZX = 1 1A 01 1 x/z = 1/1 A B 0/1, 1/0 0/1 Câu 20 Một mạch hoán đổi mạng 2 dây (2-input permutation network). Mạch có 2 ngõ vào a, b; ngõ vào điều khiển c và 2 ngõ ra x, y. Mạch có hoạt động như sau: - Nếu c = 0 thì x = a và y = b. - Nếu c = 1 thì x = b và y = a. Hãy viết mã VHDL (sử dụng phát biểu Process) mô tả hoạt động của mạch. Câu 21 Một hệ tổ hợp có ngõ ra Z là số nhị phân 4 bit (z3 z2 z1 z0); có chức năng chọn 1 trong 4 mã nhị phân 4 bit ngõ vào: M, N, P hoặc Q phụ thuộc 2 ngõ vào điều khiển x1 và x0. Viết mã VHDL thực hiện mạch này sử dụng component MUX 4 1 có khai báo ENTITY: Gợi ý: - Mỗi ngõ ra zi chọn 1 trong 4 ngõ vào mi, ni, pi, qi. - Các ngõ vào và M, N, P, Q và ngõ ra Z khai báo kiểu STD_LOGIC_VECTOR. Câu 22 Cho mạch logic như hình vẽ. s1 s0 y 0 0 d0 0 1 d1 1 0 d2 1 1 d3 ENTITY MUX4 IS PORT (d0, d1, d2, d3: IN STD_LOGIC; s1, s0: IN STD_LOGIC; y: OUT STD_LOGIC); END MUX4; x1 x0 Z = z3 z2 z1 z0 0 0 M = m3 m2 m1 m0 0 1 N = n3 n2 n1 n0 1 0 P = p3 p2 p1 p0 1 1 Q = q3 q2 q1 q0 Mux21 D0 X2 D1 S Y Mux21 D0 D1 S Y D 10 X1 X0 F a. Xác định biểu thức của hàm F theo X2, X1, X0 b. Thiết kế hàm F chỉ bằng các bộ cộng bán phần (Half-Adder HA) c. Thiết kế hàm F chỉ bằng IC74138 và các cổng AND 2 ngõ vào. Câu 23 Sử dụng JK.FF có xung clock kích theo cạnh lên, ngõ vào Preset và Clear tích cực logic 0 (tích cực thấp), thiết kế bộ đếm song song (bộ đếm đồng bộ) 3 bit QAQBQC (QC là LSB) có giản đồ trạng thái như hình vẽ. Vẽ thêm mạch reset với trạng thái đầu là 111. Câu 24 Hệ tuần tự gồm 1 ngõ vào X và 1 ngõ ra Z cĩ mạch logic như hình vẽ 111 100 001 110 010 QAQBQC D1 CK Q1 Q1 CK D0 Q0 Q0 X Z CLK a. Xác định giản đồ trạng thái của hệ (1,5 điểm) b. Hãy chuyển lại mạch trên bằng D-FF và PLA. (1,0 điểm) Câu 25 Thành lập bảng chuyển trạng thái hoặc giản đồ trạng thái của hệ tuần tự kiểu MOORE cĩ 2 ngõ vào X1X0 (biểu diễn giá trị X là số nhị phân 2 bit) và 1 ngõ ra Z. Ngõ ra Z chỉ bằng 1 khi ngõ vào cĩ gía trị X lớn hơn giá trị của nĩ trước đĩ. Ví dụ: X1X0 = 00, 10, 01, 01, 11, 00, 00, 10, 11, 00, Z = 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, Chú ý: - Trạng thái reset coi như là trạng thái cĩ giá trị vào X1X0 = 00 và ngõ ra Z = 0. - Trạng thái reset đặt tên là S0, các trạng thái tiếp theo là S1, S2, Câu 26 Viết mã VHDL (sử dụng lệnh IF) mơ tả mạch logic theo sơ đồ ở câu 21. Câu 27 a. Cho mạch tổ hợp được mơ tả bằng mã VHDL: Hãy cho biết chức năng của mạch này và ý nghĩa của các ngõ vào/ngõ ra. Giải thích ngắn gọn. LIBRARY ieee; USE iee.std_logic_1164.all; ENTITY Cau_6 IS PORT ( w: IN STD_LOGIC_VECTOR(1 DOWNTO 0); E: IN STD_LOGIC; Y: OUT STD_LOGIC_VECTOR (0 TO 3); END Cau_6; ARCHITECTURE A OF Cau_6 IS SIGNAL EW: STD_LOGIC_VECTOR (2 DOWNTO 0); BEGIN EW <= E & W; WITH EW SELECT Y <= ”0111” WHEN ”000”, ”1011” WHEN ”001”, ”1101” WHEN ”010”, ”1110” WHEN ”011”, ”1111” WHEN OTHERS; END A; b. Cho máy trạng thái được mơ tả bằng mã VHDL: Hãy vẽ giản đồ trạng thái của máy trạng thái này. LIBRARY ieee; USE iee.std_logic_1164.all; ENTITY Cau_6 IS PORT ( clock, reset, x: IN std_logic; z: OUT std_logic); END Cau_6; ARCHITECTURE B OF Cau_6 IS TYPE state IS (S0, S1, S2); SIGNAL pr_state, nx_state: state; BEGIN regst: PROCESS (clock, reset) BEGIN IF reset = ’1’ THEN pr_state <= S0; ELSIF falling_edge(clock) THEN pr_state <= nx_state; END IF; END PROCESS; nx_out: PROCESS (x, ps_state ) BEGIN CASE ps_state IS WHEN S0 => IF x = ’0’ THEN z <= ’0’; nx_state <= S0; ELSIF z <= ’0’; nx_state <= S1; END IF; WHEN S1 => IF x = ’0’ THEN z <= ’1’; nx_state <= S2; ELSIF z <= ’1’; nx_state <= S1; END IF; WHEN S2 => IF x = ’0’ THEN z <= ’0’; nx_state <= S2; ELSIF z <= ’1’; nx_state <= S1; END IF; END CASE; END PROCESS; END B;
File đính kèm:
- bai_tap_ky_thuat_so_trich_tu_cac_de_thi_cuoi_hoc_ky.pdf