Thiết kế và tổng hợp hệ thống số
TRƯỜNG ĐH BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG Đề số : Số trang : MÔN THI : THIẾT KẾ VÀ TỔNG HỢP HỆ THỐNG SỐ Ngày thi : 14/05/2013 Thời gian làm : 60 phút Được sử dụng tài liệu Trưởng nhóm môn học : Trưởng môn : Họ tên sinh viên : Mã số sinh viên : Lớp : Số phách : Điểm : Số phách : BẢNG TRẢ LỜI CÂU HỎI A B C D E 11 A B C D E 21 A B C D E A B C D E 12 A B C D E 22 A B C D E A B C D E 13 A B C D E 23 A B C D E A B C D E 14 A B C D E 24 A B C D E A B C D E 15 A B C D E 25 A B C D E A B C D E 16 A B C D E 26 A B C D E A B C D E 17 A B C D E 27 A B C D E A B C D E 18 A B C D E 28 A B C D E A B C D E 19 A B C D E 29 A B C D E 10 A B C D E 20 A B C D E 30 A B C D E Đề số: Thiết kế tổng hợp hệ thống số - Viện ĐTVT Trang: ĐỀ BÀI Câu hỏi : Phương pháp mô sử dụng phần mềm mô Verilog bao gồm : A : Phương pháp mô dựa kiện (Event Driven) B : Không phương pháp C : Phương pháp mô dựa chu kỳ (Cycle Based) D : Cả hai phương pháp Câu hỏi : Lệnh Verilog hoạt động tương tự lệnh “printf” ngôn ngữ C : A : $display B : $monitor C : $display $monitor D : $strobe E :Tất lệnh Câu hỏi : Vai trò tín hiêu x, y w ? : module kiemtra(v,w,x,y,z); input v,w,x,y; output reg z; always @(posedge v) begin if (w == 1’b1) z Luật thiết kế -> Tối ưu C : Chức -> Tối ưu -> Luật thiết kế D : Không phương án Câu hỏi 29 : Module test tổng hợp mạch sử dụng phần mềm tổng hợp mô tả hình 3a : Tìm tương ứng đầu vào 1, 2, 3, mạch đầu vào a, b, c, d module module test(a,b,c,d,f); input a,b,c,d; output reg f; always@(*) begin if(a) f = ~(c&d); else if(b) f = ~(c|d); 10 else 11 f = 1’b0; 12 end 13 endmodule (b) (a) Figure – Code mạch tổng hợp câu hỏi 29 test ? A:1–b,2–a,3–c,4–d B:1–d,2–a,3–b,4–c C : – d , – b , – a , –c D:1–b,2–c,3–a,4–d Câu hỏi 30 : Khi so sánh “define” “parameter”, mô tả : A : Không có khác biệt hai khai báo B : Dùng để khai báo số “parameter” dùng cục module, “define” dùng toàn cục bên module C : Dùng để khai báo số sử dụng cục module D : Dùng để khai báo số sử dụng vị trí chương trình Verilog Đề số: Thiết kế tổng hợp hệ thống số - Viện ĐTVT Trang: TRƯỜNG ĐH BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG Đề số : Số trang : MÔN THI : THIẾT KẾ VÀ TỔNG HỢP HỆ THỐNG SỐ Ngày thi : 14/05/2013 Thời gian làm : 60 phút Được sử dụng tài liệu Trưởng nhóm môn học : Trưởng môn : Họ tên sinh viên : Mã số sinh viên : Lớp : Số phách : Điểm : Số phách : BẢNG TRẢ LỜI CÂU HỎI A B C D E 11 A B C D E 21 A B C D E A B C D E 12 A B C D E 22 A B C D E A B C D E 13 A B C D E 23 A B C D E A B C D E 14 A B C D E 24 A B C D E A B C D E 15 A B C D E 25 A B C D E A B C D E 16 A B C D E 26 A B C D E A B C D E 17 A B C D E 27 A B C D E A B C D E 18 A B C D E 28 A B C D E A B C D E 19 A B C D E 29 A B C D E 10 A B C D E 20 A B C D E 30 A B C D E Đề số: Thiết kế tổng hợp hệ thống số - Viện ĐTVT Trang: ĐỀ BÀI Câu hỏi : Biểu diễn số 16’hABCD tương đương với : A : 16’d49381 B : 16’d43981 C : 16’d43891 D : 16’d49831 Câu hỏi : Trong mô tả sau “begin end” “fork join”, mô tả nào : A : Cả hai tổng hợp B : “begin end” tổng hợp “fork join” không tổng hợp C : Cả hai không tổng hợp D : “begin end” không tổng hợp “fork join” tổng hợp Câu hỏi : Điền vào khoảng trống mô tả sau “parameter” dùng với cấu trúc case để thiết kế mạch hệ thống số A : Máy trạng thái B : Mạch testbench C : Mạch DUT D : Mạch tổ hợp Câu hỏi : Khi so sánh “define” “parameter”, mô tả : A : Dùng để khai báo số sử dụng cục module B : Không có khác biệt hai khai báo C : Dùng để khai báo số sử dụng vị trí chương trình Verilog D : Dùng để khai báo số “parameter” dùng cục module, “define” dùng toàn cục bên module Câu hỏi : Phương pháp mô sử dụng phần mềm mô Verilog bao gồm : A : Phương pháp mô dựa kiện (Event Driven) B : Phương pháp mô dựa chu kỳ (Cycle Based) C : Không phương pháp D : Cả hai phương pháp Câu hỏi : Điểm bắt đầu kết thúc vòng lặp định nghĩa : A : Dấu ngoặc đơn () B : begin end C : Không câu D : Cả hai Câu hỏi : Sự khác $stop $finish mô : A : $stop tạm dừng chương trình,$finish dừng hoàn toàn chương trình B : $stop dừng hoàn toàn chương trình, $finish tạm dừng chương trình C : $stop dừng hoàn toàn chương trình, $finish dừng hoàn toàn chương trình D : Không khác Câu hỏi : Ngôn ngữ HDL nói chung Verilog nói riêng hoạt động A : Song song B : Tuần tự C : Cả phương án Đề số: Thiết kế tổng hợp hệ thống số - Viện ĐTVT Trang: D : Không phương án Câu hỏi : Phần mềm tổng hợp chắn không tổng hợp vòng lặp “for” điều kiện : A : “For” vòng lặp động có điều khiển thời gian bên vòng lặp B : “For” vòng lặp tĩnh có điều khiển thời gian bên vòng lặp C : “For” vòng lặp tĩnh điều khiển thời gian bên vòng lặp D : “For” vòng lặp động điều khiển thời gian bên vòng lặp Câu hỏi 10 : Định dạng mặc định số Verilog A : Nhị phân B : Hệ C : Thập phân D : Hệ 16 Câu hỏi 11 : Có thể chèn file Verilog vào sử dụng bên file Verilog khác không ? A : Có, dùng lệnh ‘include B : Có, cách nêu tên file cần chèn file Verilog C : Có, dùng lệnh ‘define D : Không Câu hỏi 12 : Đoạn code sau mô tả mô hình mạch : module majority (Y, X1, X2, X3) ; output major ; input X1, X2, X3 ; wire N1, N2, N3; and A0 (N1, X1, X2), A1 (N2, X2, X3), A2 (N3, X3, X1); or Or0(Y, N1, N2, N3); endmodule (a) Figure – Mô hình câu hỏi 12 A : Mô hình cấu trúc B : Mô hình dòng liệu C : Mô hình hành vi D : Không mô hình Câu hỏi 13 : Trễ truyền dẫn (propagation delay) cổng Not có “đầu vào” “đầu ra” phụ thuộc vào tham số sau : A : Trễ tín hiệu đầu vào, trễ bên cổng trễ tín hiệu đầu B : Trễ tín hiệu đầu vào trễ tín hiệu đầu C : Trễ tín hiệu đầu vào D : Trễ tín hiệu đầu Câu hỏi 14 : Giả sử “initial” “always” nằm module Verilog Giống hoạt động “initial” “always” : A : Tập lệnh phía “initial” “always” bắt đầu thời điểm lệnh thực đồng thời B : Tập lệnh phía “initial” “always” bắt đầu thời điểm lệnh thực C : Không phương án D : Tập lệnh phía “initial” “always” bắt đầu thời điểm thực lần “initial” lặp lại với “always” Đề số: Thiết kế tổng hợp hệ thống số - Viện ĐTVT Trang: Câu hỏi 15 : Trong tham số thời gian sau tham số quan trọng thiết kế mạch số : A : Thời gian trễ lớn nhỏ B : Không phương án C : Thời gian trễ lớn thời gian trễ trung bình D : Thời gian trễ nhỏ thời gian trễ trung bình Câu hỏi 16 : Xác định loại toán tử (operator) sử dụng chương trình Verilog : module r(a,b) ; a = b1110 ; b = &a ; endmodule A : Toán tử logic B : Toán tử tương tác bit (bitwise) C : Toán tử quan hệ (Relational) D : Không loại loại Câu hỏi 17 : Thứ tự ưu tiên thực phép toán sau : A : Dấu âm/ dương -> phép tính số học -> phép điều kiện -> phép dịch -> phép logic B : Dấu âm/ dương -> phép tính số học -> phép dịch -> phép logic -> phép điều kiện C : Dấu âm/ dương -> phép dịch -> phép logic -> phép tính số học -> phép điều kiện D : Dấu âm/ dương -> phép tính số học -> phép logic -> phép dịch -> phép điều kiện Câu hỏi 18 : Xác định phép “logic” biểu thức : A : b =!a ; B : d = a|d ; C : c =∼ d ; D : c = a&b ; Câu hỏi 19 : Trong lệnh $display : %d in kết thập phân, %b in kết nhị phân, %h in kết hecxa Muốn hiển thị thời gian mô thời điểm tương ứng sử dụng : A : %time B : Cả cách C : $time D : %t Câu hỏi 20 : Lệnh Verilog hoạt động tương tự lệnh “printf” ngôn ngữ C : A : $display B : $monitor C : $strobe D : $display $monitor E : Tất lệnh Câu hỏi 21 : Phương pháp mô sử dụng phần mềm mô Verilog bao gồm : A : Phương pháp mô dựa chu kỳ (Cycle Based) B : Phương pháp mô dựa kiện (Event Driven) C : Cả hai phương pháp D : Không phương pháp Câu hỏi 22 : Lựa chọn bước theo thứ tự quy trình thiết kế máy trạng thái (FSM) : A : Thiết kế phần mạch dãy khối always sử dụng “> A : Toán tử tương tác bit (bitwise) B : Toán tử quan hệ (Relational) C : Toán tử logic D : Toán tử dịch (shift) Câu hỏi : Các phát biểu sau đây, phát biểu : A : $display dùng in kết liên tục tín hiệu thay đổi B : $display $monitor sử dụng để in kết mô C : $monitor dùng chủ yếu để in thông báo dòng D : Cả cách Câu hỏi : Các vòng lặp hỗ trợ Verilog ? A : While, if-else for B : Repeat, while, for forever C : While, for, case, repeat forever D : Không lựa chọn Câu hỏi : Phần mềm tổng hợp có khả tổng hợp vòng lặp “for” điều kiện (lựa chọn nhiều đáp án) : A : “For” vòng lặp tĩnh có điều khiển thời gian bên vòng lặp B : “For” vòng lặp động điều khiển thời gian bên vòng lặp C : “For” vòng lặp tĩnh điều khiển thời gian bên vòng lặp D : “For” vòng lặp động có điều khiển thời gian bên vòng lặp Câu hỏi : Mô hình Verilog mô tả hệ thống số sử dụng công thức Boolean : A : Mô hình hành vi B : Mô hình RTL C : Mô hình cấu trúc D : Không mô hình mô hình Câu hỏi : Điền vào khoảng trống mô tả sau “Instance” sử dụng chương trình Verilog : module s(a,b,c) ; input a,b ; output c ; and(c,a,b) ; endmodule Đề số: Thiết kế tổng hợp hệ thống số - Viện ĐTVT Trang: A : Output B : Input C : And D : Module Câu hỏi 10 : Module Verilog phía hay sai : module z(a,b,c) ; assign a=b&c ; endmodule A : Không sai B : Sai thiếu định nghĩa “input” C : Sai thiếu định nghĩa “output” D : Sai thiếu định nghĩa “input” “output” Câu hỏi 11 : Trạng thái “Floating” gọi : A : “z” B : “x” C : “1” D : “0” Câu hỏi 12 : Hãy cho biết đoạn code sau thực chức : 10 11 12 module chucnang(y, x1, x2, x3, x4, select, enable); output [31:0] y; input [31:0] x1, x2, x3, x4; input [1:0] select; input enable; wire [31:0] trunggian; assign y = enable ? trunggian :32’bz; assigin trunggian = (select ==0) ? x1: (select ==1) ? x2: (select ==2) ? x3: (select ==3) ? x4: 32’bx; end module (a) Figure – Mạch tổ hợp câu hỏi 12 A : Tách kênh đầu vào đầu 32 bit B : Ghép kênh đầu vào đầu 32 bit C : Tách kênh đầu vào đầu 32 bit D : Ghép kênh đầu vào đầu 32 bit Câu hỏi 13 : Có thể chèn file Verilog vào sử dụng bên file Verilog khác không ? A : Có, dùng lệnh ‘define B : Không C : Có, dùng lệnh ‘include D : Có, cách nêu tên file cần chèn file Verilog Câu hỏi 14 : Mô tả cú pháp “initial” “always” ? A : Các khối always lồng không phép với khối initial B : Các khối initial/ always lồng C : Các khối initial lồng không phép với khối always D : Các khối initial/ always không phép lồng Câu hỏi 15 : Đoạn code sau cho biết tần số mô : ‘timescale 500ps / 20ps Đề số: Thiết kế tổng hợp hệ thống số - Viện ĐTVT Trang: always #4 clk Tối ưu C : Chức -> Luật thiết kế -> Tối ưu D : Không phương án Câu hỏi 17 : Điểm bắt đầu kết thúc vòng lặp định nghĩa : A : Cả hai B : begin end C : Dấu ngoặc đơn () D : Không câu Câu hỏi 18 : Có thể chèn file Verilog vào sử dụng bên file Verilog khác không ? A : Có, dùng lệnh ‘define B : Có, dùng lệnh ‘include C : Có, cách nêu tên file cần chèn file Verilog D : Không Câu hỏi 19 : Trong dòng khai báo đây, khai báo sai ? A : integer z[9 :0] ; B : wire [10 :0] a [7 :0] ; C : reg [8 :0] d[10 :0] ; D : real [6 :0] m[6 :0] ; Câu hỏi 20 : Trong Verilog khai báo tín hiệu cho cổng : A : Chỉ định nghĩa cổng vào (input) B : Chỉ định nghĩa cổng vào (inout) C : Định nghĩa cổng vào hay cổng cổng vào/ra tùy trường hợp D : Chỉ định nghĩa cổng (output) Câu hỏi 21 : Các phát biểu sau đây, phát biểu : A : $display $monitor sử dụng để in kết mô B : $display dùng in kết liên tục tín hiệu thay đổi C : $monitor dùng chủ yếu để in thông báo dòng D : Cả cách Câu hỏi 22 : Module test tổng hợp mạch sử dụng phần mềm tổng hợp mô tả hình 12a : A : U6 - if(b), U7 - f = c&d, U8 - if(a) f = c|d ; else f = 1’b0 ; B : U6 - if(a), U8 - f = c&d, U7 - if(b) f = c|d ; else f = 1’b0 ; Đề số: Thiết kế tổng hợp hệ thống số - Viện ĐTVT Trang: module test(a,b,c,d,f); input a,b,c,d; output reg f; always@(*) begin if(a) f = c&d; else if(b) f = c|d; 10 else 11 f = 1’b0; 12 end 13 endmodule (b) (a) Figure 12 – Code mạch tổng hợp câu hỏi 22 C : U6 - if(b), U8 - f = c&d, U7 - if(a) f = c|d ; else f = 1’b0 ; D : U6 - if(a), U7 - f = c&d, U8 - if(b) f = c|d ; else f = 1’b0 ; Câu hỏi 23 : Các vòng lặp hỗ trợ Verilog ? A : While, for, case, repeat forever B : Không lựa chọn C : Repeat, while, for forever D : While, if-else for Câu hỏi 24 : Thứ tự ưu tiên thực phép toán sau : A : Dấu âm/ dương -> phép tính số học -> phép logic -> phép dịch -> phép điều kiện B : Dấu âm/ dương -> phép tính số học -> phép dịch -> phép logic -> phép điều kiện C : Dấu âm/ dương -> phép dịch -> phép logic -> phép tính số học -> phép điều kiện D : Dấu âm/ dương -> phép tính số học -> phép điều kiện -> phép dịch -> phép logic Câu hỏi 25 : Định dạng mặc định số Verilog A : Hệ 16 B : Thập phân C : Hệ D : Nhị phân Câu hỏi 26 : Đoạn code sau thực vòng lặp : reg [3 :0] K ; for (K = ; K [...]... end” và “fork join”, mô tả nào nào đúng : A : “begin end” không tổng hợp được và “fork join” tổng hợp được B : Cả hai tổng hợp được C : Cả hai không tổng hợp được D : “begin end” tổng hợp được và “fork join” không tổng hợp được Đề số: 3 Thiết kế và tổng hợp hệ thống số - Viện ĐTVT Trang: 6 TRƯỜNG ĐH BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG Đề số : 4 Số trang : 6 MÔN THI : THIẾT KẾ VÀ TỔNG HỢP... b được tính và lưu trữ tạm thời tại một thanh ghi, sau đó 5 đơn vị thời gian thì b được gán cho a Đề số: 4 Thiết kế và tổng hợp hệ thống số - Viện ĐTVT Trang: 5 Câu hỏi 28 : Điền vào khoảng trống của mô tả sau “parameter” được dùng với cấu trúc case để thiết kế mạch của hệ thống số A : Máy trạng thái B : Mạch DUT C : Mạch testbench D : Mạch tổ hợp Câu hỏi 29 : Ngôn ngữ HDL nói chung và Verilog nói... C : “z” D : “1” Câu hỏi 20 : Ngôn ngữ HDL nói chung và Verilog nói riêng hoạt động A : Song song B : Tuần tự C : Không phương án nào D : Cả 2 phương án Câu hỏi 21 : Sau khi tổng hợp bằng phần mềm tổng hợp với cùng một công nghệ, thiết kế nào sau đây có độ trễ lớn nhất : A : Module 3 B : Module 1 C : Module 2 Đề số: 3 Thiết kế và tổng hợp hệ thống số - Viện ĐTVT Trang: 4 1 2 3 4 5 1 2 3 4 5 module z1(a,b,c,d,e,f);... E 20 A B C D E 30 A B C D E Đề số: 4 Thiết kế và tổng hợp hệ thống số - Viện ĐTVT Trang: 1 ĐỀ BÀI Câu hỏi 1 : Phần mềm tổng hợp chắc chắn không tổng hợp được vòng lặp “for” trong điều kiện : A : “For” là vòng lặp động và không có điều khiển thời gian bên trong vòng lặp B : “For” là vòng lặp động và có điều khiển thời gian bên trong vòng lặp C : “For” là vòng lặp tĩnh và có điều khiển thời gian bên... module và “endmodule” C : “module”, tên module, “endmodule” và danh sách các cổng D : “module”, tên module, “endmodule”, danh sách các cổng và kiểu vào/ ra của cổng Câu hỏi 16 : Thứ tự mức ưu tiên khi tổng hợp mạch số : A : Chức năng -> Tối ưu -> Luật thiết kế B : Luật thiết kế -> Chức năng -> Tối ưu C : Chức năng -> Luật thiết kế -> Tối ưu D : Không phương án nào đúng Câu hỏi 17 : Điểm bắt đầu và kết... “initial” và “always” ? A : Các khối initial/ always có thể lồng nhau Đề số: 2 Thiết kế và tổng hợp hệ thống số - Viện ĐTVT Trang: 5 B : Các khối always có thể lồng nhau nhưng không được phép với khối initial C : Các khối initial/ always không được phép lồng nhau D : Các khối initial có thể lồng nhau nhưng không được phép với khối always Câu hỏi 30 : Module test được tổng hợp ra mạch sử dụng phần mềm tổng hợp. .. trong mạch trên và 4 đầu vào a, b, c, d trong module 1 module test(a,b,c,d,f); 2 input a,b,c,d; 3 output reg f; 4 always@(*) begin 5 if(a) 6 f = c&d; 7 else 8 if(b) 9 $f = ~(c|d); 10 else 11 f = 1’b1; 12 end 13 endmodule (b) (a) Figure 10 – Code và mạch tổng hợp câu hỏi 24 test ? A:1–d,2–a,3–c,4–b B:1–c,2–d,3–a,4-b C:1–b,2–c,3–d,4–a D:1–d,2–c,3–a,4–b Đề số: 3 Thiết kế và tổng hợp hệ thống số - Viện ĐTVT... E 30 A B C D E Đề số: 3 Thiết kế và tổng hợp hệ thống số - Viện ĐTVT Trang: 1 ĐỀ BÀI Câu hỏi 1 : Độ rộng mặc định của một số nguyên (integer) : A : 32 bit B : 16 bit C : 8 bit D : 64 bit Câu hỏi 2 : Khi định nghĩa trễ trong Verilog, số tham số tối đa có thể khai báo được là : A : 6 tham số, bao gồm : trễ sườn lên (min, typical, max), trễ sườn xuống (min, typical, max) B : 9 tham số, bao gồm : trễ sườn... trình thiết kế máy trạng thái (FSM) : A : Thiết kế mạch chuyển trạng thái và mạch logic đầu ra sử dụng “=” trong một khối always B : Thiết kế phần mạch dãy trong một khối always sử dụng “