hdvoiDMA
Mô hình hoạt động với DMA
Truy nhập trực tiếp vào bộ nhớ khi :
· Khi có nhu cầu trao đổi dữ liệu với khối lượng lớn
· Tốc độ nhanh
· Thực thi
Đặc tả hoạt động- quá trình thực hiện DMA
· CPU làm việc bình thường
· Khi thiết bị ngoại vi muốn chuyển số liệu trực tiếp với bộ nhớ thì gửi yêu cầu tới DMAC qua tín hiệu DRQx ( DMA Reqest thứ x, mỗi DMAC có khả năng nhận 4 DRQ).
· Bộ điều khiển DMAC chuyển yêu cầu này tới CPU qua tín hiệu HRQ: Yêu cầu CPU “tách ra “ khỏi BUS hệ thống.
· CPU thực hiện nốt chu kỳ máy đang thực hiện, treo BUS và trả lời DMAC bằng tín hiệu HLDA: Chấp nhận và đã treo BUS.
· DMAC trả lời thiết bị vào/ra bằng tín hiệu DACKx, DMAC quản lí BUS hệ thống và phát sinh các tín hiệu địa chỉ lên BUS địa chỉ, hướng tới bộ nhớ,
· Phát các tín hiệu điều khiển: MEMRD/, MEMWR/, IORD/, IOWR/, để thực hiện DMA vào: đọc thiết bị/ghi bộ nhớ hay DMA ra: dọc bọ nhớ/ghi ra thiết bị.
· Điều khiển chuyển số liệu giữa bộ nhớ và thiết bị vào/ra, chạy đồng bộ theo BUS-clock. Số liệu chuyển giữa bộ nhớ và thiết bị vào/ra thường là cả một khối, có độ dài tùy ý qua lập trình.
· Khi chuyển xong số liệu DMAC đưa tín hiệu TC hay EOP (Terminal Count, End of Operation-EOP) thành tích cực để báo một quá trình DMA kết thúc (tín hiệu TC đóng vai trò một ngắt khi sử dụng để thông báo cho CPU). DMAC treo BUS, DMAC hũy HRQ. CPU hũy HLDA, CPU trở lại quản lí BUS hệ thống. Chu kì DMA hoàn tất.
Qui trình chạy DMA xảy ra rất nhanh, chỉ phụ thuộc vào khả năng trao đổi của thiết bị.
Bạn đang đọc truyện trên: AzTruyen.Top