Bài giảng Thiết kế số - Các khối mạch tổ hợp: VHDL cho mạch logic tổ hợp - Hoàng Mạnh Thắng

VHDL có vài loại phép gán có thể được dùng để gán giá trị logic vào tín hiệu

Các phép gán đơn giản đã xét trong các phép toán

Các phép gán tín hiệu lựa chọn một trong nhiều giá trị

Các phép gán tín hiệu có điều kiện

Tạo ra các statements

Các mẫu If-then-else

Các mẫu Case

 

ppt19 trang | Chuyên mục: Thiết Kế Vi Mạch Số | Chia sẻ: tuando | Lượt xem: 346 | Lượt tải: 0download
Tóm tắt nội dung Bài giảng Thiết kế số - Các khối mạch tổ hợp: VHDL cho mạch logic tổ hợp - Hoàng Mạnh Thắng, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Thiết kế số Các khối mạch tổ hợp:VHDL cho mạch logic tổ hợpNgười trình bày: TS. Hoàng Mạnh ThắngTexPoint fonts used in EMF: AAAAAACác phép gán-assignment statementVHDL có vài loại phép gán có thể được dùng để gán giá trị logic vào tín hiệuCác phép gán đơn giản đã xét trong các phép toánCác phép gán tín hiệu lựa chọn một trong nhiều giá trịCác phép gán tín hiệu có điều kiệnTạo ra các statementsCác mẫu If-then-elseCác mẫu CaseCác phép gán tín hiệu lựa chọnCho phép một tín hiệu được gán một trong nhiều giá trị dựa trên tiêu chí lựa chọn. VD:Từ khóa WITH chỉ ra s được dùng để tiêu chí lựa chọnHai chỗ WHEN chr ra f=w0 khi s=0 và ngược lại f=w1Từ khóa OTHER phải được dùngĐoạn mã VHDL cho bộ ghép kênh 4-to-1Đoạn mã VHDL cho bộ giải mã 2-to-4Phép gán có điều kiệnTương tự với phép gán có lựa chọn, phép này cho phép một tín hiệu được thiết lập bằng một trong các giá trịDùng WHEN và ELSE để chỉ ra điều kiện và các hoạt động được thực hiệnMã VHDL cho bộ mã hóa ưu tiênTạo các statementsBất kỳ khi nào viết mã VHDL có dạng cấu trúc, ta thường tạo ra các biến (instances) của phần tử cụ thểBộ cộng ripple carry là ví dụNếu cần tạo một số lớn các instances của một biến, dạng gọn hơn được mong muốnVHDL cung cấp đặc tính này gọi là FOR GENERATE statementDùng để cung cấp một cấu trúc lặp cho quá trình mô tả mã phân tầng được cấu trúc hóaBộ cộng Ripple Carry 4-bitBộ cộng Ripple Carry 4-bit, contPhát biểu tiến trình-process statementCác phép gán trên ko ảnh hưởng đến ý nghĩa của đọan mã  gọi là concurrent assignment statements (các phép gán đồng thời)VHDL cung cấm kiểu gán khác, sequential assignment staements, ở đó thứ tự của khai báo ảnh hưởng ý nghĩa đoạn mãVí dụ: if-then-else và CASEVHDL yêu cầu các phép này được đặt bên trong statement khác, process statementProcess statementsBắt đầu bởi process, tiếp đến nhóm các tín hiệu sensitivity list, danh sách này kèm the tất cả các tín hiệu được dùng trong processStatements bên trong process được xét trong tứ tuần tựCác phép gán được tạo trong process ko thể nhìn được từ bên ngoài process cho tới khi các statements trọng process được xét  nhiều phép gán đến một tín hiệu trong process thì chỉ có phép cuối cùng có tác dụngMUX 2-to-1 làm việc như một processBộ mã hóa ưu tiên (IF_THEN_ELSE)Bộ mã hóa ưu tiên (cách khác)Ám chỉ bộ nhớ trong Process?Case statementTương tự phép gán có lựa chọn với một tín hiệu và kèm WHEN cho các giá trị của tín hiệu chọnBắt đầu với từ khóa CASEMỗi WHEN hcỉ ra các statement được đánh giá khi tín hiệu chọn có giá trị được chỉ raCASE statement phải kèm WHEN cho tất cả các đánh giá của tín hiệu chọnDùng OTHERMUX 2-to-1 với CASEBộ giải mã 2-to-4 với CASE

File đính kèm:

  • pptbai_giang_thiet_ke_so_cac_khoi_mach_to_hop_vhdl_cho_mach_log.ppt
Tài liệu liên quan