Bài giảng Hệ thống máy tính: Chương 3 - Nguyễn Kim Khánh giới thiệu đến các bạn các kiến thức về tổng quan về hệ thống vào-ra, các phương pháp điều khiển vào-ra, nối ghép thiết bị ngoại vi. Để nắm vững hơn nội dung kiến thức bài giảng mời các bạn cùng tham khảo tài liệu.
Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Hệ thống máy tính Nội dung học phần Chương KIẾN TRÚC HỆ THỐNG VÀO-RA Chương Giới thiệu chung Chương Kiến trúc nhớ Chương Kiến trúc vào-ra Chương Kiến trúc xử lý Chương Kiến trúc máy tính tiên tiến Nguyễn Kim Khánh Trường Đại học Bách khoa Hà Nội September 2009 NKK-HUT September 2009 NKK-HUT 3.1 Tổng quan hệ thống vào-ra Nội dung Giới thiệu chung Chức hệ thống vào-ra: Trao đổi thơng tin máy tính với giới bên Các thao tác bản: 3.1 Tổng quan hệ thống vào-ra 3.2 Các phương pháp điều khiển vào-ra 3.3 Nối ghép thiết bị ngoại vi Các thành phần chính: September 2009 Nguyễn Kim Khánh - ĐHBKHN Vào liệu (Input) Ra liệu (Output) September 2009 Các thiết bị ngoại vi Các mô-đun vào-ra Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Cấu trúc hệ thống vào-ra Tổ chức bus dùng chung Interrupts CPU Cache Main memory System bus I/O controller Disk September 2009 NKK-HUT I/O controller Graphics display Network September 2009 NKK-HUT Tổ chức bus vào-ra phân cấp CPU Interrupts Đặc điểm vào-ra Main memory Cache Memory bus AGP Disk I/O controller Bus adapter I/O controller Network September 2009 Nguyễn Kim Khánh - ĐHBKHN Bus adapter I/O controller Disk Disk Nguyên tắc hoạt động Tốc độ Khuôn dạng liệu Tất thiết bị ngoại vi chậm CPU RAM Ỉ Cần có mơ-đun vào-ra để nối ghép thiết bị ngoại vi với CPU nhớ Bus adapter I/O bus I/O controller Graphics display PCI bus Intermediate buses / ports Tồn đa dạng thiết bị ngoại vi khác về: I/O controller CD/DVD September 2009 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Các thiết bị ngoại vi Một số thiết bị ngoại vi Chức năng: chuyển đổi liệu bên bên máy tính Phân loại: Thiết bị ngoại vi giao tiếp người-máy: Bàn phím, Màn hình, Máy in, Thiết bị ngoại vi giao tiếp máy-máy: gồm thiết bị theo dõi kiểm tra Thiết bị ngoại vi truyền thông: Modem, Network Interface Card (NIC) September 2009 NKK-HUT Input type Prime examples Other examples Data rate (b/s) Main uses Symbol Keyboard, keypad Music note, OCR 10s Ubiquitous Position Mouse, touchpad Stick, wheel, glove 100s Ubiquitous Identity Barcode reader Badge, fingerprint 100s Sales, security Sensory Touch, motion, light Scent, brain signal 100s Control, security Audio Microphone Phone, radio, tape 1000s Ubiquitous Image Scanner, camera Graphic tablet 1000s-106s Photos, publishing Video Camcorder, DVD VCR, TV cable 1000s-109s Entertainment Output type Prime examples Other examples Data rate (b/s) Main uses Symbol LCD line segments LED, status light 10s Ubiquitous Position Stepper motor Robotic motion 100s Ubiquitous Warning Buzzer, bell, siren Flashing light A few Safety, security Sensory Braille text Scent, brain stimulus 100s Personal assistance Audio Speaker, audiotape Voice synthesizer 1000s Ubiquitous Image Monitor, printer Plotter, microfilm 1000s Ubiquitous Video Monitor, TV screen Film/video recorder 1000s-109s Entertainment Two-way I/O Prime examples Other examples Data rate (b/s) Main uses Mass storage Hard/floppy disk CD, tape, archive 106s Ubiquitous Network Modem, fax, LAN Cable, DSL, ATM 1000s-109s Ubiquitous September 2009 10 NKK-HUT Cấu trúc chung thiết bị ngoại vi Các thành phần thiết bị ngoại vi September 2009 Nguyễn Kim Khánh - ĐHBKHN 11 Bộ chuyển đổi tín hiệu: chuyển đổi liệu bên ngồi bên máy tính Bộ đệm liệu: đệm liệu truyền mô-đun vào-ra thiết bị ngoại vi Khối logic điều khiển: điều khiển hoạt động thiết bị ngoại vi đáp ứng theo yêu cầu từ mô-đun vào-ra September 2009 12 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Mô-đun vào-ra Cấu trúc chung mô-đun vào-ra Chức mô-đun vào-ra: Điều khiển định thời Trao đổi thông tin với CPU nhớ Trao đổi thơng tin với thiết bị ngoại vi Đệm bên máy tính với thiết bị ngoại vi Phát lỗi thiết bị ngoại vi September 2009 13 NKK-HUT September 2009 14 NKK-HUT Các thành phần mô-đun vào-ra Địa hóa cổng vào-ra a Khơng gian địa xử lý Thanh ghi đệm liệu: đệm liệu trình trao đổi Các cổng vào-ra (I/O Port): kết nối với thiết bị ngoại vi, cổng có địa xác định Thanh ghi trạng thái/điều khiển: lưu giữ thông tin trạng thái/điều khiển cho cổng vào-ra Khối logic điều khiển: điều khiển môđun vào-ra September 2009 Nguyễn Kim Khánh - ĐHBKHN 15 September 2009 16 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Khơng gian địa xử lý (tiếp) Không gian địa xử lý (tiếp) Một số xử lý quản lý không gian địa chỉ: Một số xử lý quản lý hai không gian địa tách biệt: không gian địa nhớ: 2N địa Ví dụ: Các xử lý 680x0 (Motorola) Ví dụ: Pentium (Intel) September 2009 17 NKK-HUT Không gian địa nhớ: 2N địa Khơng gian địa vào-ra: 2N1 địa Có tín hiệu điều khiển phân biệt truy nhập khơng gian địa Tập lệnh có lệnh vào-ra chuyên dụng không gian địa nhớ = 232 byte = 4GB không gian địa vào-ra = 216 byte = 64KB Tín hiệu điều khiển Lệnh vào-ra chuyên dụng: IN, OUT September 2009 18 NKK-HUT Vào-ra riêng biệt b Các phương pháp địa hoá cổng vào-ra Vào-ra riêng biệt (Isolated IO hay IO mapped IO) Vào-ra theo đồ nhớ (Memory mapped IO) September 2009 Nguyễn Kim Khánh - ĐHBKHN 19 Cổng vào-ra đánh địa theo không gian địa vào-ra CPU trao đổi liệu với cổng vào-ra thông qua lệnh vào-ra chuyên dụng (IN, OUT) Chỉ thực hệ thống có quản lý không gian địa vào-ra riêng biệt September 2009 20 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT 3.2 Các phương pháp điều khiển vào-ra Vào-ra theo đồ nhớ Cổng vào-ra đánh địa theo không gian địa nhớ Vào-ra giống đọc/ghi nhớ CPU trao đổi liệu với cổng vào-ra thông qua lệnh truy nhập liệu nhớ Có thể thực hệ thống September 2009 21 NKK-HUT Vào-ra chương trình (Programmed IO) Vào-ra điều khiển ngắt (Interrupt Driven IO) Truy nhập nhớ trực tiếp - DMA (Direct Memory Access) September 2009 22 NKK-HUT Vào-ra chương trình Các tín hiệu điều khiển vào-ra Nguyên tắc chung: CPU điều khiển trực tiếp vào-ra chương trình Ỉ cần phải lập trình vào-ra September 2009 Nguyễn Kim Khánh - ĐHBKHN 23 Tín hiệu điều khiển (Control): kích hoạt thiết bị ngoại vi Tín hiệu kiểm tra (Test): kiểm tra trạng thái mô-đun vào-ra thiết bị ngoại vi Tín hiệu điều khiển đọc (Read): yêu cầu môđun vào-ra nhận liệu từ thiết bị ngoại vi đưa vào ghi đệm liệu, CPU nhận liệu Tín hiệu điều khiển ghi (Write): yêu cầu môđun vào-ra lấy liệu bus liệu đưa đến ghi đệm liệu chuyển thiết bị ngoại vi September 2009 24 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Các lệnh vào-ra Lưu đồ đoạn chương trình vào-ra Với vào-ra riêng biệt: sử dụng lệnh vào-ra chuyên dụng (IN, OUT) Với vào-ra theo đồ nhớ: sử dụng lệnh trao đổi liệu với nhớ để trao đổi liệu với cổng vào-ra September 2009 25 NKK-HUT September 2009 26 NKK-HUT Hoạt động vào-ra chương trình Đặc điểm CPU yêu cầu thao tác vào-ra Mô-đun vào-ra thực thao tác Mô-đun vào-ra thiết lập bit trạng thái CPU kiểm tra bit trạng thái: Vào-ra ý muốn người lập trình CPU trực tiếp điều khiển vào-ra CPU đợi mơ-đun vào-ra Ỉ tiêu tốn thời gian CPU Nếu chưa sẵn sàng quay lại kiểm tra Nếu sẵn sàng chuyển sang trao đổi liệu với mơ-đun vào-ra September 2009 Nguyễn Kim Khánh - ĐHBKHN 27 September 2009 28 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Vào-ra điều khiển ngắt Chuyển điều khiển đến chương trình ngắt Nguyên tắc chung: CPU đợi trạng thái sẵn sàng mô-đun vào-ra, CPU thực chương trình Khi mơ-đun vào-ra sẵn sàng phát tín hiệu ngắt CPU CPU thực chương trình vào-ra tương ứng để trao đổi liệu CPU trở lại tiếp tục thực chương trình bị ngắt September 2009 29 NKK-HUT September 2009 30 NKK-HUT Hoạt động vào liệu: nhìn từ CPU Hoạt động vào liệu: nhìn từ mơ-đun vào-ra Mơ-đun vào-ra nhận tín hiệu điều khiển đọc từ CPU Mô-đun vào-ra nhận liệu từ thiết bị ngoại vi, CPU làm việc khác Khi có liệu Ỉ mơ-đun vào-ra phát tín hiệu ngắt CPU CPU yêu cầu liệu Mô-đun vào-ra chuyển liệu đến CPU September 2009 Nguyễn Kim Khánh - ĐHBKHN Phát tín hiệu điều khiển đọc Làm việc khác Cuối chu trình lệnh, kiểm tra tín hiệu ngắt Nếu bị ngắt: 31 September 2009 Cất ngữ cảnh (nội dung ghi) Thực chương trình ngắt để vào liệu Khôi phục ngữ cảnh chương trình thực 32 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Các vấn đề nảy sinh thiết kế Các phương pháp nối ghép ngắt Làm để xác định mô-đun vào-ra phát tín hiệu ngắt ? CPU làm có nhiều yêu cầu ngắt xẩy ? September 2009 33 NKK-HUT September 2009 34 NKK-HUT Nhiều đường yêu cầu ngắt Sử dụng nhiều đường yêu cầu ngắt Hỏi vòng phần mềm (Software Poll) Hỏi vòng phần cứng (Daisy Chain or Hardware Poll) Sử dụng điều khiển ngắt (PIC) Hỏi vòng phần mềm Mỗi mô-đun vào-ra nối với đường yêu cầu ngắt CPU phải có nhiều đường tín hiệu u cầu ngắt Hạn chế số lượng mô-đun vào-ra Các đường ngắt qui định mức ưu tiên September 2009 Nguyễn Kim Khánh - ĐHBKHN 35 CPU thực phần mềm hỏi mô-đun vào-ra Chậm Thứ tự mơ-đun hỏi vịng thứ tự ưu tiên September 2009 36 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Hỏi vịng phần cứng Kiểm tra vòng phần cứng (tiếp) September 2009 37 NKK-HUT CPU phát tín hiệu chấp nhận ngắt (INTA) đến mô-đun vào-ra Nếu mô-đun vào-ra khơng gây ngắt gửi tín hiệu đến mô-đun xác định mô-đun gây ngắt Thứ tự mô-đun vào-ra kết nối chuỗi xác định thứ tự ưu tiên September 2009 38 NKK-HUT Bộ điều khiển ngắt lập trình Đặc điểm vào-ra điều khiển ngắt Có kết hợp phần cứng phần mềm PIC – Programmable Interrupt Controller PIC có nhiều đường vào yêu cầu ngắt có qui định mức ưu tiên PIC chọn yêu cầu ngắt khơng bị cấm có mức ưu tiên cao gửi tới CPU September 2009 Nguyễn Kim Khánh - ĐHBKHN 39 Phần cứng: gây ngắt CPU Phần mềm: trao đổi liệu CPU trực tiếp điều khiển vào-ra CPU khơng phải đợi mơ-đun vào-ra Ỉ hiệu sử dụng CPU tốt September 2009 40 10 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT DMA (Direct Memory Access) Vào-ra chương trình ngắt CPU trực tiếp điều khiển: Sơ đồ cấu trúc DMAC Chiếm thời gian CPU Tốc độ truyền bị hạn chế phải chuyển qua CPU Để khắc phục dùng DMA Thêm mô-đun phần cứng bus Ỉ DMAC (Controller) DMAC điều khiển trao đổi liệu môđun vào-ra với nhớ September 2009 41 NKK-HUT September 2009 42 NKK-HUT Các thành phần DMAC Hoạt động DMA CPU “nói” cho DMAC Thanh ghi liệu: chứa liệu trao đổi Thanh ghi địa chỉ: chứa địa ngăn nhớ liệu Bộ đếm liệu: chứa số từ liệu cần trao đổi Logic điều khiển: điều khiển hoạt động DMAC CPU làm việc khác DMAC điều khiển trao đổi liệu Sau truyền từ liệu thì: September 2009 Nguyễn Kim Khánh - ĐHBKHN 43 Vào hay Ra liệu Địa thiết bị vào-ra (cổng vào-ra tương ứng) Địa đầu mảng nhớ chứa liệu Ỉ nạp vào ghi địa Số từ liệu cần truyền Ỉ nạp vào đếm liệu nội dung ghi địa tăng nội dung đếm liệu giảm Khi đếm liệu = 0, DMAC gửi tín hiệu ngắt CPU để báo kết thúc DMA September 2009 44 11 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Các kiểu thực DMA Cấu hình DMA (1) DMA truyền theo khối (Block-transfer DMA): DMAC sử dụng bus để truyền xong khối liệu DMA lấy chu kỳ (Cycle Stealing DMA): DMAC cưỡng CPU treo tạm thời chu kỳ bus, DMAC chiếm bus thực truyền từ liệu DMA suốt (Transparent DMA): DMAC nhận biết chu kỳ CPU không sử dụng bus chiếm bus để trao đổi từ liệu September 2009 45 NKK-HUT Giữa mô-đun vào-ra với DMAC Giữa DMAC với nhớ September 2009 46 NKK-HUT Cấu hình DMA (2) Mỗi lần trao đổi liệu, DMAC sử dụng bus hai lần Cấu hình DMA (3) DMAC điều khiển vài mô-đun vào-ra Mỗi lần trao đổi liệu, DMAC sử dụng bus lần Giữa DMAC với nhớ September 2009 Nguyễn Kim Khánh - ĐHBKHN Bus vào-ra tách rời hỗ trợ tất thiết bị cho phép DMA Mỗi lần trao đổi liệu, DMAC sử dụng bus lần 47 Giữa DMAC với nhớ September 2009 48 12 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Đặc điểm DMA Kênh vào-ra xử lý vào-ra CPU không tham gia trình trao đổi liệu DMAC điều khiển trao đổi liệu nhớ với mơ-đun vào-ra (hồn tồn phần cứng)Ỉ tốc độ nhanh Phù hợp với yêu cầu trao đổi mảng liệu có kích thước lớn September 2009 49 NKK-HUT Việc điều khiển vào-ra thực xử lý vào-ra chuyên dụng Bộ xử lý vào-ra hoạt động theo chương trình riêng Chương trình xử lý vào-ra nằm nhớ nằm nhớ riêng Hoạt động theo kiến trúc đa xử lý September 2009 50 NKK-HUT Nối ghép song song 3.3 Nối ghép thiết bị ngoại vi Các kiểu nối ghép vào-ra Nối ghép song song Nối ghép nối tiếp September 2009 Nguyễn Kim Khánh - ĐHBKHN 51 September 2009 Truyền nhiều bit song song Tốc độ nhanh Cần nhiều đường truyền liệu 52 13 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Nối ghép nối tiếp Các cấu hình nối ghép Điểm tới điểm (Point to Point) Điểm tới đa điểm (Point to Multipoint) Truyền bit Cần có chuyển đổi từ liệu song song sang nối tiếp hoặc/và ngược lại Tốc độ chậm Cần đường truyền liệu September 2009 Thông qua cổng vào-ra nối ghép với thiết bị ngoại vi Thông qua cổng vào-ra cho phép nối ghép với nhiều thiết bị ngoại vi Ví dụ: 53 September 2009 SCSI (Small Computer System Interface): 15 thiết bị USB (Universal Serial Bus): 127 thiết bị IEEE 1394 (FireWire): 63 thiết bị 54 NKK-HUT Hết chương September 2009 Nguyễn Kim Khánh - ĐHBKHN 55 14 ... thực hệ thống có quản lý khơng gian địa vào-ra riêng biệt September 2009 20 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT 3. 2 Các phương pháp điều khiển vào-ra Vào-ra theo đồ nhớ Cổng vào-ra... liệu với m? ?-? ?un vào-ra September 2009 Nguyễn Kim Khánh - ĐHBKHN 27 September 2009 28 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Vào-ra điều khiển ngắt Chuyển điều khiển đến chương trình ngắt... September 2009 24 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Các lệnh vào-ra Lưu đồ đoạn chương trình vào-ra Với vào-ra riêng biệt: sử dụng lệnh vào-ra chuyên dụng (IN, OUT) Với vào-ra theo đồ