Ôn tập: Bộ so sánh đơn giản
Thuộc phần Kiến thức nền tảng trong hành trình Verilog của Coddy. Bài học 54 trên 90.
Thử thách
Bộ so sánh 2 bit là một mạch so sánh hai số nhị phân 2 bit và xác định xem số này lớn hơn, nhỏ hơn hay bằng số kia.
Cần làm gì:
Tạo bộ so sánh 2 bit bằng các câu lệnh if-else.
Cách hoạt động:
- Khi
a > b,greaterphải là 1,lessvàequalphải là 0 - Khi
a < b,lessphải là 1,greatervàequalphải là 0 - Khi
a == b,equalphải là 1,greatervàlessphải là 0
Tự làm thử
module comparator (
input [1:0] a,
input [1:0] b,
output reg greater,
output reg less,
output reg equal
);
always @(*) begin
// TODO: Thêm các câu lệnh if-else để so sánh a và b
// Đặt greater = 1 nếu a > b
// Đặt less = 1 nếu a < b
// Đặt equal = 1 nếu a == b
end
endmoduleTất cả bài học trong Kiến thức nền tảng
1Giới thiệu
Verilog là gìPhần cứng và phần mềmModule đầu tiênChú thíchCác mức trừu tượng hóa thiết kế4Toán tử phần 1
Toán tử số họcToán tử moduloToán tử so sánhÔn tập: phép tính đơn giảnToán tử thao tác bit7Gán và cổng logic
Gán liên tụcGán bằng toán tửCác cổng nguyên thủy tích hợp sẵnCổng AND, OR, NOTCổng XOR, XNORÔn tập: mạch cổng logic10Ra quyết định
Câu lệnh ifIf và elseÔn tập: Bộ so sánh đơn giảnCâu lệnh caseCasex và casezÔn tập: Thiết kế ALU5Các toán tử, phần 2
Toán tử logicToán tử rút gọnToán tử dịch bitToán tử nốiToán tử điều kiệnÔn tập: thử thách về toán tử11Vòng lặp
Vòng lặp forVòng lặp whileVòng lặp repeatVòng lặp vô hạnCâu lệnh vô hiệu hóaÔn tập: các mẫu vòng lặp3Hệ thống số
Biểu diễn nhị phânSố có kích thướcSố không có kích thướcSố âmCác giá trị đặc biệt X và ZÔn tập: định dạng số6Module
Cấu trúc moduleCổng đầu vào và đầu raCổng vào ra hai chiềuKhởi tạo moduleÁnh xạ cổng theo tênÁnh xạ cổng theo thứ tựÔn tập: xây dựng module9Khối thủ tục
Khối alwaysKhối initialDanh sách độ nhạyPhép gán chặnPhép gán không chặnÔn tập: always và initial12Dự án bộ ghép kênh
Thiết kế bộ ghép kênh 2 thành 1Thiết kế bộ ghép kênh 4 thành 115Bộ điều khiển đèn giao thông
Xác định các trạng tháiLogic máy trạng tháiTự luyện tập: Trình biên dịch Verilog online