Ôn tập: hiệu có dấu
Thuộc phần Thiết kế và xác minh RTL trong hành trình Verilog của Coddy. Bài học 10 trên 38.
Thử thách
Trung bìnhTính a trừ b ở dạng 8 bit signed, bão hòa trong khoảng từ -128 đến 127. Trả về y đã bão hòa và clipped=1 khi hiệu chính xác nằm ngoài khoảng đó. Các cột đầu ra: y, clipped. Tất cả giá trị kích thích đều là giá trị nhị phân đã biết.
Hoàn thành design.v và giữ nguyên tên module cùng các cổng. testbench.v bị khóa sẽ cung cấp các thay đổi đầu vào và in đầu ra sau khi chúng ổn định. Tệp này chọn một kịch bản bằng đối số mô phỏng như +CASE=1; không cần đầu vào tiêu chuẩn. Không thêm lệnh in, độ trễ hoặc lệnh kết thúc mô phỏng vào thiết kế. Đầu ra mong đợi gồm một hàng giá trị thập phân cho mỗi lần quan sát, cách nhau bằng một dấu cách và kết thúc bằng ký tự xuống dòng.
Tự làm thử
module dut (input signed [7:0] a, input signed [7:0] b, output reg signed [7:0] y, output reg clipped);
// Thay phần giữ chỗ này bằng thiết kế của bạn.
initial y = 0;
initial clipped = 0;
endmoduleTất cả bài học trong Thiết kế và xác minh RTL
1RTL tổ hợp đáng tin cậy
Giá trị mặc định ngăn chốtBộ mã hóa ưu tiênKiểm tra one-hotGiải mã case an toànÔn tập: Bộ định tuyến yêu cầu2Độ rộng bit và số học có dấu
Bảo toàn các bit nhớPhép so sánh có dấuDịch phải số họcTràn số và bão hòaÔn tập: hiệu có dấuTự luyện tập: Trình biên dịch Verilog online