1. Trang chủ
  2. » Giáo án - Bài giảng

Thiết kế và mô phỏng mạch đếm theo pp mô tả hành vi

12 33 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 274,9 KB

Nội dung

Bộ đếm là một mạch dãy tuần hoàn có 1 đầu vào đếm và 1 đầu ra kết quả; số trạng thái trong của mạch bằng hệ số đếm (Kđ). Dưới tác động của tín hiệu vào, bộ đếm sẽ chuyển từ trạng thái này đến trạng thái khác theo một chu trình nhất định. Cứ sau Kđ tín hiệu vào đếm, mạch sẽ quay lại trạng thái ban đầu.

Thiết kế mô ĐẾM THEO PHƯƠNG PHÁP MÔ TẢ HÀNH VI Khái niệm đếm ■Bộ đếm mạch dãy tuần hồn có đầu vào đếm đầu kết quả; số trạng thái mạch hệ số đếm (Kđ) Dưới tác động tín hiệu vào, đếm chuyển từ trạng thái đến trạng thái khác theo chu trình định Cứ sau Kđ tín hiệu vào đếm, mạch quay lại trạng thái ban đầu Phân loại đếm ■Phân loại theo cách làm việc: Bộ đếm đồng bộ, đếm dị (không đồng bộ) ■Phân loại theo hướng đếm: đếm tiến, đếm lùi Đồ hình trạng thái đếm Mã đếm ■ Các trạng thái đếm mã hóa mã cụ thể Cùng đếm có nhiều cách mã hóa ■ Một số mã thường dùng: – Mã nhị phân – Mã Gray – Mã BCD – Mã Johnson – Mã vòng Các bước thiết kế ■ Bước 1: xác định yêu cầu: Kđ? Cách thức đếm (tiến hay lùi)? Mã đếm? ■ Bước 2: Lập mã VHDL: gồm process ■ Process 1: – thực chức đếm dựa Kđ  giới hạn biến đếm – Cách thức đếm: xác định biểu thức đếm chương trình: đếm tiến trạng thái sau = trạng thái trước +1; đếm lùi trạng thái sau = trạng thái trước -1 ■ Process 2: thực chức mã hóa dựa yêu cầu mã đếm Ví dụ thiết kế đếm tiến, nhị phân Kđ =4 ■Phân tích yêu cầu: ■Code entity: ■Kđ = ; Mã nhị phân có trạng ■ thái  có bít đầu Entity dem4 is ■ port ( ckl : in std_logic; ■ reset: in std_logic; ■ ■ Qout: out std_logic_vector(1 downto 0) ); Ví dụ thiết kế đếm tiến, nhị phân Kđ =4 ■Phân tích yêu cầu: ■Kđ =  giá trị lớn biến đếm = ■Đếm tiến  trạng thái sau = trạng thái trước +1; ■Code process 1: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ Signal d: integer range to 3; Dem: process( clk, reset) variable d_tam : integer range to 3; begin if reset = ‘1’ then d_tam := 0; else if clk’event and clk =‘1’ then if d_tam = then d_tam := 0; else d_tam := d_tam +1; end if; end if; end if; d Qout Qout Qout Qout

Ngày đăng: 09/02/2022, 16:53

HÌNH ẢNH LIÊN QUAN

Đồ hình trạng thái của bộ đếm - Thiết kế và  mô phỏng mạch đếm theo pp mô tả hành vi
h ình trạng thái của bộ đếm (Trang 4)

TỪ KHÓA LIÊN QUAN

w