HC VIN NG N HNG KHOA H THNG
- Slides: 47
HỌC VIỆN NG N HÀNG KHOA HỆ THỐNG THÔNG TIN QUẢN LÝ KIẾN TRÚC MÁY TÍNH CHƯƠNG 11: HỆ THỐNG VÀO/RA Hà Nội – 2016
Tổng quan về Hệ thống vào/ra v Chức năng của hệ thống vào/ra: trao đổi thông tin giữa máy tính với thế giới bên ngoài v Các thao tác cơ bản: § Vào dữ liệu (Input) § Ra dữ liệu (Output) v Các thành phần chính: § Các thiết bị ngoại vi § Mạch nối ghép vào/ra (Modul vào/ra)
Hệ thống vào/ra
Tại sao cần Modul vào/ra? v Không thể nối trực tiếp các thiết bị ngoại với bus hệ thống, vì: § § BXL không thể điều khiển được tất cả TBNV Tốc độ trao đổi dữ liệu khác nhau Khuôn dạng dữ liệu khác nhau Tất cả có tốc độ chậm hơn BXL và RAM v Chức năng của Modul vào/ra: § Nối ghép với BXL và hệ thống nhớ § Nối ghép với một hoặc nhiều TBNV
Các thiết bị ngoại vi v Chức năng: chuyển đổi dữ liệu giữa bên trong và bên ngoài máy tính v Phân loại: § TBNV giao tiếp người-máy: màn hình, bàn phím, máy in, . . . § TBNV giao tiếp máy-máy: các thiết bị theo dõi và kiểm tra § TBNV truyền thông: modem, card giao tiếp mạng (NIC)
Sơ đồ khối của TBNV
Các thành phần cơ bản của TBNV v Bộ chuyển đổi tín hiệu (transducer): chuyển đổi dữ liệu từ dạng tín hiệu điện thành dạng năng lượng khác và ngược lại v Logic điều khiển (control logic): điều khiển hoạt động của TBNV đáp ứng theo yêu cầu từ Modul vào/ra v Bộ đệm (buffer): chứa dữ liệu tạm thời khi trao đổi dữ liệu giữa Modul vào/ra và TBNV
Modul vào/ra v Chức năng: § § § Điều khiển và định thời gian Trao đổi thông tin với BXL Trao đổi thông tin với TBNV Bộ đệm dữ liệu Phát hiện lỗi
Sơ đồ khối của Modul vào/ra
Thành phần cơ bản của Modul vào/ra v Thanh ghi dữ liệu: đệm dữ liệu trong quá trình trao đổi v Các cổng vào/ra: kết nối với TBNV, mỗi cổng có một địa chỉ xác định v Thanh ghi điều khiển/trạng thái: lữu giữ thông tin điều khiển, trạng thái cho các cổng vào/ra v Logic điều khiển: điều khiển Modul vào/ra
Các PP địa chỉ hóa cổng vào/ra v Vào/ra cách biệt (isolated IO) v Vào/ra theo bản đồ bộ nhớ (memory mapped IO)
Vào/ra cách biệt v Đặc điểm: § Không gian địa chỉ cổng vào/ra nằm ngoài không gian địa chỉ bộ nhớ v Cách truy nhập: § Cần có tín hiệu phân biệt truy nhập cổng vào/ra hay truy nhập bộ nhớ § Sử dụng lệnh vào/ra chuyên dụng: IN, OUT.
Vào/ra theo bản đồ bộ nhớ v Đặc điểm: § Không gian địa chỉ cổng vào/ra nằm trong không gian địa chỉ bộ nhớ v Cách truy nhập: § Dùng chung tín hiệu như truy nhập bộ nhớ § Dùng chung lệnh trao đổi dữ liệu với bộ nhớ
Các phương pháp điều khiển vào/ra v Vào/ra bằng chương trình (Programmed IO) v Vào/ra bằng ngắt (Interrupt Driven IO) v Vào/ra bằng DMA (Direct Memory Access)
Vào/ra bằng chương trình v Nguyên tắc chung: § Sử dụng lệnh vào/ra trong chương trình để trao đổi dữ liệu với cổng vào/ra § Khi BXL thực hiện chương trình, gặp lệnh vào/ra thì BXL điều khiển trao đổi dữ liệu với thiết bị ngoại vi
Hoạt động vào/ra bằng chương trình v BXL yêu cầu thao tác vào/ra v Modul vào/ra thực hiện thao tác v Modul vào/ra thiết lập các bit trạng thái v BXL kiểm tra các bit trạng thái: § Nếu chưa sẵn sàng thì quay lại kiểm tra § Nếu đã sẵn sàng thì tiến hành trao đổi dữ liệu với modul vào ra
Các lệnh vào/ra v BXL phát ra địa chỉ § Xác định Modul vào/ra (và thiết bị nếu một Modul chứa nhiều hơn 1 thiết bị) v BXL phát ra lệnh: § Điều khiển: yêu cầu Modul làm việc gì • VD: điều khiển quay đĩa § Kiểm tra: kiểm tra trạng thái • VD: nguồn? lỗi? § Đọc/ghi • Modul truyền DL qua bộ đệm từ/tới thiết bị
Đặc điểm v BXL trực tiếp điều khiển vào/ra § Nhận biết thông tin trạng thái từ TBNV § Phát tín hiệu điều khiển Read/Write § Trao đổi dữ liệu v BXL chờ đến khi Modul vào/ra hoàn thành thao tác v Tốn thời gian của BXL
Phân loại ngắt v Ngắt cứng (Hard Interrupt): yêu cầu ngắt do mạch phần cứng bên ngoài gửi đến § Ngắt cứng NMI (None Maskable Interrupt): có yêu cầu ngắt thì bắt buộc phải ngắt • Ví dụ: Có sự cố nguồn; lỗi bộ nhớ § Ngắt cứng MI (Maskable Interrupt): có yêu cầu ngắt thì có hai khả năng xẩy ra: • Được ngắt nếu ngắt đó ở trạng thái cho phép • Không được ngắt nếu ngắt đó ở trạng thái bị cấm Ngắt cứng MI dùng để trao đổi dữ liệu với TBNV
Phân loại ngắt v Ngắt mềm (Soft Interrupt): Yêu cầu ngắt do lệnh gọi ngắt nằm trong chương trình sinh ra v Ngắt ngoại lệ (Exception Interrupt): là các ngắt sinh ra do lỗi xuất hiện trong quá trình thực hiện chương trình § Ví dụ: • • Gặp lệnh chia cho 0 Lệnh sai cú pháp tràn số Nhảy đến các điều kiện không tồn tại
Nguyên tắc hoạt động v BXL không mất thời gian chờ đợi v BXL không phải kiểm tra trạng thái sẵn sàng của TBNV v Modul vào/ra ngắt BXL khi nó ở trạng thái sẵn sàng
Hoạt động
Đặc điểm v Có sự kết hợp giữa phần cứng và phần mềm § Phần cứng: yêu cầu ngắt BXL § Phần mềm: trao đổi dữ liệu v BXL trực tiếp điều khiển vào/ra v BXL không phải đợi Modul vào/ra hiệu quả BXL sử dụng tốt hơn
Các PP xác định modul ngắt v Nhiều đường yêu cầu ngắt (Different line for each module) v Kiểm tra vòng bằng phần mềm (Software poll) v Kiểm tra vòng bằng phần cứng (Daisy Chain or Hardware poll) v Chiếm bus (Bus Master)
PP 1: Nhiều đường yêu cầu ngắt v BXL phải có các đường yêu cầu ngắt khác nhau cho mỗi modul vào/ra v Hạn chế số lượng thiết bị
PP 2: Kiểm tra vòng bằng phần mềm v BXL thực hiện phần mềm kiểm tra từng Modul v Tốc độ chậm
PP 3: Kiểm tra vòng bằng phần cứng v BXL phát tín hiệu chấp nhận ngắt đến chuỗi các Modul vào/ra v Modul sẽ đáp ứng bằng cách đặt vectơ ngắt lên bus dữ liệu v BXL sử dụng vectơ để xác định CTC điều khiển ngắt
PP 4: Chiếm bus v Modul vào/ra cần chiếm bus trước khi nó phát tín hiệu yêu cầu ngắt v Ví dụ: § PCI § SCSI
Xử lý với nhiều ngắt v Các ngắt bị cấm § BXL sẽ bỏ qua các ngắt khác trong khi đang thực hiện một ngắt § Các ngắt phải chờ và được kiểm tra sau khi ngắt đang phục vụ được xử lý xong § Các ngắt được thực hiện tuần tự v Định nghĩa ưu tiên ngắt: § Ngắt có mức ưu tiên thấp hơn thì có thể bị ngắt bởi ngắt có ưu tiên cao hơn § Khi ngắt có mức ưu tiên cao hơn được xử lý xong thì BXL quay về ngắt trước đó
Ngắt tuần tự
Ngắt lồng nhau
Nhiều ngắt xảy ra đồng thời v Nếu có nhiều yêu cầu ngắt cùng một lúc gửi đến BXL thì BXL giải quyết thế nào? v Nhờ sự can thiệp của Mạch điều khiển ngắt lập trình được (PIC - Programmable Interrupt Controller)
PIC v PIC có nhiều đường vào yêu cầu ngắt v PIC chọn ngắt có ưu tiên cao nhất (không bị cấm) gửi tới BXL
Vào/ra bằng DMA v Vào ra bằng chương trình và vào ra bằng ngắt do BXL điều khiển § Tốc độ truyền bị hạn chế § Chiếm thời gian của BXL v Để khắc phục, dùng DMA § Thêm modul phần cứng trên bus: DMAC (DMA Controller) § DMAC điều khiển vào/ra không qua BXL
Sơ đồ cấu trúc của DMAC
Các thành phần của DMAC v Thanh ghi dữ liệu: chứa dữ liệu cần trao đổi v Thanh ghi địa chỉ: chứa địa chỉ ngăn nhớ dữ liệu v Bộ đếm dữ liệu: chứa số từ dữ liệu cần trao đổi v Logic điều khiển: điều khiển hoạt động của DMAC
Quá trình hoạt động v B 1: TBNV gửi tín hiệu DREQ (Dma REQuest) tới DMAC v B 2: DMAC gửi tín hiệu HRQ (Hold Re. Quest) để xin dùng các đường bus v B 3: BXL sẽ thực hiện xong chu kỳ bus hiện tại và trả lời đồng ý bằng việc gửi tín hiệu HLDA (Ho. LD Acknowledge) tới DMAC v B 4: DMAC gửi tín hiệu DACK (Dma ACKnowledge) tới TBNV báo chuẩn bị truyền dữ liệu v B 5: DMAC thực hiện điều khiển quá trình truyền dữ liệu giữa bộ nhớ và TBNV v B 6: DMAC thực hiện xong công việc, nó bỏ kích hoạt tín hiệu HRQ. Hệ thống trở lại bình thường.
Các kiểu thực hiện DMA v DMA truyền theo khối (block-transfer DMA): DMAC sử dụng bus để truyền cả khối dữ liệu v DMA ăn trộm chu kỳ (cycle stealing DMA): DMAC ép buộc BXL treo tạm thời từng chu kỳ để thực hiện truyền một byte dữ liệu v DMA trong suốt (transparent DMA): DMAC nhận biết những chu kỳ nào BXL không dùng bus thì lấy bus để tranh thủ truyền một byte dữ liệu
DMA: kiểu 1 v Bus đơn, bộ điều khiển DMA riêng rẽ v Mỗi lần truyền, DMAC sử dụng bus 2 lần: § Từ Modul vào/ra đến DMAC § Từ DMAC đến bộ nhớ v BXL bị treo bus 2 lần
DMA: kiểu 2 v Bus đơn, bộ điều khiển DMA tích hợp v DMAC điều khiển một hoặc vài Modul vào/ra v Mỗi lần truyền, chỉ sử dụng bus 1 lần § Từ DMAC tới bộ nhớ v BXL chỉ bị treo bus 1 lần
DMA: kiểu 3 v Bus vào/ra tách rời, hỗ trợ tất cả các thiết bị cho phép DMA v Mỗi lần truyền chỉ dùng bus 1 lần: § Từ DMA tới bộ nhớ v BXL cũng chỉ bị treo bus 1 lần
Nối ghép thiết bị ngoại vi v Các kiểu nối ghép vào/ra: § Nối ghép song § Nối ghép nối tiếp v Các cấu hình nối ghép: § Điểm tới điểm § Điểm tới đa điểm
Nối ghép song v Truyền nhiều bit song v Tốc độ nhanh v Cần nhiều đường truyền dữ liệu
Nối ghép nối tiếp v Truyền lần lượt từng bit v Cần có bộ chuyển đổi song thành nối tiếp và ngược lại v Tốc dộ chậm v Cần ít đường truyền dữ liệu
Các cấu hình nối ghép v Điểm tới điểm (point-to-point): § Thông qua một cổng vào/ra, nối ghép với một TBNV § Ví dụ: cổng chuột, bàn phím, . . . v Điểm tới đa điểm (point-to-multipoint): § Thông qua một cổng vào/ra, nối ghép được với nhiều TBNV § Ví dụ: • SCSI: 7 hoặc 15 thiết bị • USB: 127 thiết bị • IEEE 1394 Fire. Wire: 63 thiết bị
- Thng
- Tạo thuộc tính lookup cho các trường khóa ngoại
- Bìa tiểu luận trường đại học đà lạt
- Chu nghia xa hoi khoa hoc
- Hộp khóa nòng
- Tạo thuộc tính lookup cho các trường khóa ngoại
- Hindustan national glass share price
- Hng company
- Vin dy
- 15 digit vin
- Number restoration
- Le vin est le lait des vieillards
- Chç
- Cascading op amps
- Vin diesel has ten weapons
- Gio vin
- Kay
- Vin rose urine
- Vdd vin
- Vin l
- Ma cave en ligne
- Macération carbonique
- Hdđt nguyễn kim
- Gio n
- Tipos de vin
- Nnn vim
- Mtabolisme
- Integrator
- S
- Thẻ vin
- Vin dy
- Irtf vin
- Grand vin de reignac 2010
- Vin dy
- Como leer el numero vin de un vehiculo
- Kk.vin
- Vin 1963
- N vin
- Vin hni
- Bit vin
- Vin dy
- Vin i
- Vin dy
- Eucaris vin check
- Affirmative commands spanish
- @hussein_ggn:lnk.vin/bt
- Vin dy
- Vin chen