Cơ sở thiết kế RTL
Mô tả mạch số bằng SystemVerilog. Học kiểu dữ liệu, độ rộng, dấu, logic tổ hợp và tuần tự, mô-đun, tham số và generate. Kiểm tra giới hạn và lỗi bằng testbench độc lập, sau đó nối bộ tạo xung định kỳ với bộ tích lũy và lưu kết quả có thể tái lập.
Bạn sẽ học được gì
- Xác định độ rộng, dấu, nguồn điều khiển, thời điểm hợp lệ và giá trị reset của từng tín hiệu.
- Tách phép gán tổ hợp đầy đủ khỏi cập nhật trạng thái theo clock.
- Tạo cấu trúc tĩnh bằng tham số và generate, kiểm tra cấu hình biên.
- Ghép mô-đun bằng kết nối cổng theo tên và hàm.
- Viết kích thích tránh tranh chấp và mô hình tham chiếu độc lập.
- Phân biệt bằng chứng biên dịch, mô phỏng, tổng hợp và chạy DDS.
Trước khi bắt đầu
Bài tập trên trình duyệt dùng mô hình giáo dục, không biên dịch hay chạy HDL. Để chạy mã nguồn riêng, hãy làm theo hướng dẫn Digital Design Studio cho hệ điều hành của bạn và đăng nhập khi thao tác yêu cầu.
Cài đặt và khởi chạy lần đầu ↗ · Tải xuống ↗Chương trình học
- RTL và hợp đồng mô-đun
- RTL: mô tả các mạch hoạt động đồng thờiKhái niệm
Tách thứ tự phần mềm khỏi cấu trúc phần cứng song song và xác định trạng thái, trạng thái tiếp theo, thời điểm quan sát.
- Tín hiệu và cổng: quy ước độ rộng, hướng, thời gianKhái niệm
Đọc giao diện và tách tiêu chuẩn kiểm tra đầu ra tổ hợp khỏi đầu ra trạng thái.
- Mô-đun, cổng và thể hiện: kết nối như hợp đồngKhái niệm
Ghép mô-đun tổ hợp bằng kết nối theo tên, kiểm tra nguồn điều khiển duy nhất và phân cấp.
- Kiểm tra: đầu ra tổ hợp và lưu trữKiểm tra
Phân biệt đổi đầu vào và quan sát thanh ghi.
- Kiểu, độ rộng, dấu và biểu thức
- logic, wire, X/Z và độ rộng rõ ràngKhái niệm
Tách kiểu, nguồn điều khiển và lưu trữ; kiểm tra hằng, so sánh, mở rộng và giá trị chưa biết.
- Chỉ mục vector, thứ tự bit và dấuKhái niệm
Đọc đường dữ liệu bằng cách tách số bit, thứ tự truyền nối tiếp và diễn giải số học.
- Độ rộng của slice, nối và lặpKhái niệm
Tính tổng độ rộng tín hiệu nối và điều kiện bảo toàn giá trị khi xây đường dữ liệu.
- Bù hai, mở rộng dấu và overflowKhái niệm
Phân biệt diễn giải signed và điều kiện overflow phép cộng bằng công thức, phản ví dụ.
- Kiểm tra: miền giá trị và mở rộng rõ ràngKiểm tra
Xem xét cả độ rộng đầu vào và đầu ra của bộ cộng.
- RTL tổ hợp đầy đủ và kiểm chứng
- RTL tổ hợp và phép gán đầy đủKhái niệm
Biểu diễn cùng hàm bằng toán tử điều kiện và always_comb; tìm thiếu phép gán gây latch.
- Bộ mã hóa và ưu tiên: chọn một trong nhiều yêu cầuKhái niệm
Phân biệt giả thiết đầu vào one-hot với valid và kết quả lựa chọn của bộ mã hóa ưu tiên.
- Kiểm chứng MUX: kiểm tra toàn bộ và thuộc tínhKhái niệm
Kiểm tra riêng bao phủ đầu vào tổ hợp và hành vi lưu, đồng thời tối thiểu hóa phản ví dụ.
- Kiểm tra thiết kế: tương đương mạch chọn và thời điểm quan sátKiểm tra
Phân biệt kiểm chứng chỉ cần chân trị với kiểm chứng phải quan sát clock.
- Trạng thái, phép gán và ưu tiên reset
- Flip-flop, enable và ưu tiên điều khiểnKhái niệm
Định nghĩa giữ, nạp, reset bằng trạng thái kế tiếp và tránh clock gating ngoài ý muốn.
- Nonblocking và cập nhật trạng thái đồng thờiKhái niệm
Tách giá trị cũ và mới để đọc đúng RTL pipeline, bộ đếm.
- Bộ đếm modulo, bão hòa và xung kết thúcKhái niệm
Thiết kế xử lý cực đại và chu kỳ chính xác của tín hiệu terminal-count.
- Thực hành: kiểm tra reset, quay vòng và bất biến bộ đếmThực hành
Đối chiếu từng cạnh lên với tham chiếu, tách ảnh hưởng giá trị đầu, reset và độ rộng.
- Kiểm tra thiết kế: biên độ rộng, ưu tiên và quay vòngKiểm tra
Dùng đặc tả chuyển trạng thái để quyết định giá trị biên và điều khiển đồng thời.
- Tham số và tạo cấu trúc tĩnh
- parameter, localparam, $clog2 và cấu hình biênKhái niệm
Tách đầu vào khi mạch hoạt động khỏi cấu hình; thiết kế độ rộng và điều kiện kết thúc cho N=1 và số không phải lũy thừa hai.
- generate: tạo mạch tĩnh bằng vòng lặpKhái niệm
Dùng genvar và generate-if để tạo phân cấp có tên và kiểm tra vị trí lane.
- function automatic và biểu thức tái sử dụngKhái niệm
Viết hàm không tiêu thụ thời gian mô phỏng, kiểm tra độ rộng, dấu và tham chiếu độc lập.
- Kiểm tra: N=1 và độ rộngKiểm tra
Tách độ rộng tối thiểu khỏi trạng thái hợp lệ.
- Testbench và kiểm chứng độc lập
- Thời điểm lấy mẫu và quan hệ nhân quả của dạng sóngKhái niệm
Đọc dạng sóng bằng cách tách ổn định tổ hợp, bắt clock và thứ tự sự kiện.
- Thực hành: testbench tự báo lỗiThực hành
Tách DUT, kích thích, tham chiếu và kiểm tra để thử reset, enable và quay vòng không tranh chấp.
- Kế hoạch kiểm chứng, coverage và tham chiếu độc lậpKhái niệm
Phân biệt qua kiểm tra với thỏa đặc tả; đưa biên, điều kiện chéo và phản ví dụ tối thiểu vào kế hoạch.
- Gỡ lỗi bộ đếm và phản ví dụ tối thiểuKhái niệm
Thiết kế kiểm tra ngắn phân biệt lỗi reset, enable và biên quay vòng.
- Kiểm tra: tham chiếu và tranh chấpKiểm tra
Chọn kỳ vọng độc lập và quan sát sau cập nhật.
- Ghép mô-đun và thực hành tích hợp
- Máy trạng thái: tách trạng thái, chuyển và đầu raKhái niệm
Viết FSM từ bảng đặc tả; so Moore, Mealy, trạng thái bất hợp lệ và chính sách yêu cầu.
- Thiết kế tổng hợp: phát hiện mẫu 101 chồng lấpKhái niệm
Áp dụng tối thiểu trạng thái, hợp lệ đầu vào, đầu ra có thanh ghi và tham chiếu độc lập vào một thiết kế.
- Ready/valid và bộ đệm đàn hồi một ôKhái niệm
Thiết kế điều kiện truyền không mất hay trùng dữ liệu và vào/ra đồng thời trong đường dữ liệu có thể dừng.
- Pipeline nhân-cộng và căn chỉnh dữ liệuKhái niệm
Chia phép tính bằng các ranh giới thanh ghi; bảo đảm dữ liệu, valid và toán hạng phụ thuộc cùng một giao dịch.
- Thực hành tích hợp: xung định kỳ và bộ tích lũy cho phépThực hành
Đặc tả truyền giá trị cũ và kiểm tra tạm dừng, xung liên tiếp, reset đồng thời.
- Chẩn đoán công cụ và phạm vi kết quả
- Setup, hold và ngân sách thời gianKhái niệm
Tách trễ đường cực đại/cực tiểu và tính hold độc lập với tần số clock.
- Ranh giới clock domain và metastabilityKhái niệm
Hiểu phạm vi bộ đồng bộ hai tầng, phân biệt truyền một bit, xung ngắn và nhiều bit.
- Biên dịch, lint và tổng hợp: phạm vi chẩn đoánKhái niệm
Cố định nguồn, top và ngôn ngữ; phân biệt cú pháp, độ rộng, latch và chức năng.
- Hồ sơ chạy và tiếp tục thực hành DDSKhái niệm
Nộp nguồn, đầu vào, kỳ vọng, lỗi và phiên bản để tái lập thực hành.
- Kiểm tra cuối: chức năng và bằng chứngKiểm tra
Tách kết quả cục bộ khỏi chấp nhận DDS miễn phí.