Microsoft Word Bai Giang LT Vi xu ly Khoa CNDT docx BÀI GIẢNG VI XỬ LÝ KỸ THUẬT VI XỬ LÝ BỘ MÔN ĐIỆN TỬ MÁY TÍNH KHOA CÔNG NGHỆ ĐIỆN TỬ Bài giảng KỸ THUẬT VI XỬ LÝ 1 CHƯƠNG 1 TỔNG QUAN VỀ VI XỬ LÝ – VI ĐIỀU KHIỂN Trình bày được cấu trúc và hoạt động các thành phần của hệ vi xử lý tập lệnh của VĐK Trình bày được các dạng dữ liểu biểu diễn thông tin trong hệ vi xử lý Nhận dạng được thành phần của các hệ thống Nhắc lại về Hệ thống số đếm Hệ nhị phân, hệ thập phân và hệ thập lục phân + Hệ nhị phân,.
BÀI GIẢNG VI XỬ LÝ/ KỸ THUẬT VI XỬ LÝ BỘ MƠN ĐIỆN TỬ MÁY TÍNH_ KHOA CƠNG NGHỆ ĐIỆN TỬ Bài giảng KỸ THUẬT VI XỬ LÝ CHƯƠNG 1: TỔNG QUAN VỀ VI XỬ LÝ – VI ĐIỀU KHIỂN - Trình bày cấu trúc hoạt động thành phần hệ vi xử lý tập lệnh VĐK - Trình bày dạng liểu biểu diễn thông tin hệ vi xử lý - Nhận dạng thành phần hệ thống Nhắc lại Hệ thống số đếm: Hệ nhị phân, hệ thập phân hệ thập lục phân: + Hệ nhị phân, số 2, dùng hai số để biểu diễn Thí dụ: 0B01001010 = 0x2 +1x2 +0x2 +0x2 +1x2 +0x2 +1x2 +0x2 = 64+8+2 = 74 + Hệ thập phân, số 10 dùng số 0, 1, 2, 3, 4, 5, 6, 7, 8, để biểu diễn Thí dụ: 125=1x10 +2x10 +5x10 = 100+20+5 + Hệ thập lục phân, số 16 dùng số 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Thí dụ: 0x32 = 32H = 3x16 +2x16 = 48+2 = 50 Bảng chuyển đổi số nhị phân, thập phân thập lục phân: Hệ nhị phân (8 chữ số) 0B 00000000 0B 00000001 0B 00000010 0B 00000011 0B 00000100 0B 00000101 0B 00000110 0B 00000111 0B 00001000 0B 00001001 0B 00001010 0B 00001011 0B 00001100 0B 00001101 0B 00001110 0B 00001111 Hệ thập phân (2 chữ số) 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 Hệ thập lục phân (2 chữ số) 00h; 0x00 01h; 0x01 02h; 0x02 03h; 0x03 04h; 0x04 05h; 0x05 06h; 0x06 07h; 0x07 08h; 0x08 09h; 0x09 0Ah; 0x0A 0Bh; 0x0B 0Ch; 0x0C 0Dh; 0x0D 0Eh; 0x0E 0Fh; 0x0F I TỔNG QUAN VỀ HỆ THỐNG VI XỬ LÝ Quá trình phát triển máy vi tính (tham khảo thêm Internet) Bài giảng KỸ THUẬT VI XỬ LÝ - Máy vi tính bao gồm máy tính dùng vi xử lý (họ Intel, Motorola, AMD…) làm cốt lõi, vi điều khiển (microcontroller) hay máy vi tính vi mạch (one-chip microcomputer) Ứng dụng vi xử lý (tham khảo thêm Internet) Sơ đồ khối hệ vi xử lý 3.1 Sơ đồ khối tiêu biểu hệ vi xử lý: (hệ thống vi xử lý có kiến trúc 3-bus) Address bus Data bus P Control bus (CPU) RAM ROM Memory I/O Interface Input Devices Output Devices Peripheral Devices Hình 1.1 P (Microprocessor): Vi xử lý CPU (Central Processing Unit): Đơn vị xử lý trung tâm Address bus: Bus địa Data bus: Bus liệu Control bus: Bus điều khiển RAM (Random Access Memory): Bộ nhớ truy xuất ngẫu nhiên ROM (Read-Only Memory): Bộ nhớ đọc I/O Interface: Khối giao tiếp nhập/xuất Peripheral Devices: Thiết bị ngoại vi 3.2 Một hệ vi xử lý gồm có thành phần sau: - P (microprocessor hay gọi CPU): đọc mã lệnh từ nhớ (được ghi dạng bit 1), sau giải mã thực thi lệnh - Bộ nhớ (Memory): chứa chương trình điều khiển hoạt động toàn hệ liệu, kết trung gian Có hai loại nhớ: RAM (Random Access Memory) loại nhớ truy xuất ngẫu nhiên ROM (Read-Only Memory) loại nhớ đọc - Khối giao tiếp nhập/xuất (Input/Output - I/O): tạo khả giao tiếp hệ vi xử lý với thiết bị ngoại vi bàn phím, chuột … (thiết bị nhập), hình, máy in, loa … (thiết bị xuất), ổ đĩa… (thiết bị xuất/nhập) Bài giảng KỸ THUẬT VI XỬ LÝ - Bus: ba khối chức liên hệ với thông qua tập đường dây để truyền thông tin gọi bus Trong hệ thống vi xử lý thường bao gồm loại bus: bus địa chỉ, bus liệu bus điều khiển 3.3 Tổng kết lại điểm quan trọng: Hệ vi xử lý có khối chính: o Bộ nhớ o CPU o Phối ghép (giao tiếp) vào/ra (I/O) CPU đọc thông tin từ nhớ ghi thông tin vào nhớ Các thiết bị đầu vào đưa thơng tin từ bên ngồi vào hệ vi xử lý Các thiết bị đầu đưa thông tin từ CPU đến đối tượng bên ngồi Thơng tin không chạy trực tiếp từ nhớ đến phối ghép vào/ra (I/O) ngược lại, trước tiên thông tin phải qua CPU Có thể thấy vi xử lý trao đổi thông tin với nhớ phối ghép vào/ra I/O Dù hệ thống sau phức tạp chương trình có dài đến đâu vi xử lý làm việc sau: Đọc từ nhớ Ghi vào nhớ Đọc từ đầu vào Ghi vào đầu Thực lệnh nội lệnh cộng (ADD), lệnh trừ (SUB) … II CÁC LOẠI BUS Bus địa - Có chức chuyển tải thông tin địa - Khi đọc/ghi nhớ hay thiết bị I/O, P đưa bit địa bus địa để chọn xác ngăn nhớ (word) hay thiết bị I/O cụ thể giao tiếp với - Số lượng địa mà P quản lý phụ thuộc vào số bit (số đường dây) bus địa (16, 20, 24, 32 … bit) Ví dụ: Một P có số đường dây bus địa N = 16 có khả quản lý: 2N = 216 = 26.210 = 64.210 = 64 K = 65356 địa - Bus địa loại bus chiều (xuất phát từ P) Đệm bus địa Bài giảng KỸ THUẬT VI XỬ LÝ Do tất thiết bị ngoại vi nhớ nối với bus địa nên mặt điện vượt tính chịu tải (fan-out) vi xử lý Trong trường hợp mạch nối vào bus địa tiêu thụ dòng điện lớn khả chịu tải vi xử lý hệ thống khơng hoạt động hay hoạt động không ổn định Để giải vấn đề ta sử dụng đệm trung gian gọi đệm địa Ví dụ: Đệm địa cho CPU có bus địa 16-bit: Hình 1.2 Bus liệu - Có chức chuyển tải thông tin liệu đến/từ P - Số lượng đường dây bus định số bit liệu mà P có khả xử lý lúc (8, 16, 32, 64 … bit) - Bus liệu loại bus hai chiều Tuy nhiên thời điểm định liệu truyền theo hướng Hình 1.3 Dữ liệu di chuyển chiều truyền bus liệu Lưu ý: Hoạt động bus địa bus liệu hồn tồn độc lập với (hình 1.4) Bài giảng KỸ THUẬT VI XỬ LÝ Hình 1.4 Đệm bus liệu - Tương tự bus địa chỉ, bus liệu cần đệm để tăng fan-out cần thiết Lưu ý cần dùng kỹ thuật đệm chiều (hình 1.5) (IC 74LS245) Hình 1.5 Kỹ thuật đệm chiều sử dụng thêm tín hiệu điều khiển, tín hiệu quy định chiều liệu đệm Bus điều khiển - Gồm nhiều đường dây tín hiệu khác ( WR , RD …), tín hiệu điều khiển có chiều định Khi hoạt động, P đưa tín hiệu điều khiển đến khối khác hệ, đồng thời nhận tín hiệu từ khối khác để phối hợp hoạt động toàn hệ Lưu ý: Bus điều khiển khối I/O vẽ dạng chiều để tính chiều nhóm tín hiệu, khơng phải tín hiệu - Có loại truyền thơng tiêu biểu mà bus điều khiển phải xác đinh tín hiệu điện: (i) Đọc từ nhớ (ii) Ghi vo nhớ (iii) Đọc từ phối ghép đầu vào (Input) (iv) Ghi vào phối ghép đầu (Output) Bài giảng KỸ THUẬT VI XỬ LÝ (v) Nhận biết yêu cầu ngắt (Interrupt acknowledge) (vi) Nhận biết yêu cầu treo (Hold acknowledge, phục vụ DMA) Giải thích truyền thơng cấu trúc 3-bus dựa vào sơ đồ khối hình 1.1: đọc ghi III VI XỬ LÝ (P – MICROPROCESSOR) + Sơ đồ khối P cho hình 1.6 + Có ba khối chức chính: khối thực thi (Execution Unit), khối điều khiển (Sequencer) khối giao tiếp bus (Bus Interface) Execution Unit Sequencer Instruction Register Control Unit Instruction Decoder Registers ALU Program Counter (data, address) Internal bus Data bus Control bus Address bus driver driver driver Data bus Control bus Address bus Bus Interface Hình 1.6 Execution Unit: Khối thực thi Control Unit: Khối điều khiển Registers: Các ghi ALU (Arithmetic & Logic Unit): Khối logic - số học Sequencer: Bộ điều khiển Instruction Register: Thanh ghi lệnh Instruction Decoder: Bộ giải mã lệnh Program Counter: Bộ đếm chương trình Internal bus: Bus nội Bus interface: Giao tiếp bus Data bus driver: Bộ điều khiển bus liệu Control bus driver: Bộ điều khiển bus điều khiển Address bus driver: Bộ điều khiển bus địa - Bộ điều khiển (Sequencer): nhận lệnh từ nhớ, sau giải mã lệnh truyền lệnh giải mã đến khối thực thi Bài giảng KỸ THUẬT VI XỬ LÝ + Bộ đếm chương trình (Proram Counter): ghi lưu giữ địa lệnh thực thi Mỗi lệnh thực thi, đếm chương trình tăng lên để địa lệnh thực thi Nội dung đếm chương trình đặt lên bus địa để tìm nhận lệnh mong muốn Như vậy, P thực lệnh chương trình cách tuần tự, trừ gặp lệnh chuyển điều khiển (lệnh nhảy, gọi chương trình …) làm thay đổi nội dung PC Trong số vi xử lý, đếm chương trình cịn gọi trỏ lệnh IP (Instruction Pointer) + Bộ giải mã lệnh (Instruction Decoder): thông dịch (diễn dịch) lệnh nhận vào P Có thể xem giải mã lệnh từ điển lưu trữ nghĩa lệnh bước mà P cần thực lệnh nhận vào Giống từ điển có nhiều trang định nghĩa nhiều từ hơn, P hiểu nhiều lệnh có giải mã lệnh lớn + Thanh ghi lệnh (Instructin Register): lưu giữ mã nhị phân lệnh thực thi - Khối thực thi (Execution Unit): thực thi ghi kết câu lệnh Các tốn hạng (operand) liên quan có mặt ghi (registers) có từ bus nội (internal bus) + ALU (Arithmetic Logic Unit): mạch điện tử có khả thực phép tốn số học (+, -, *, / …) logic (AND, OR, NOT, XOR…) + Thanh ghi (Register): nhớ cực nhanh, có dung lượng hạn chế nằm bên P Các ghi thường dùng để lưu trữ thơng tin tạm thời Mỗi ghi có địa để truy xuất tới Các ghi nối với đến phần tử khác P hay nối với bus nhờ bus nội Độ rộng ghi 8-bit, 16-bit, 32-bit hay 64-bit tùy thuộc vào loại P Thơng tin giá trị cần xử lý hay địa chứa giá trị cần xử lý nhận từ nhớ (hay I/O) P có nhiều ghi độ rộng lớn tốt lúc chương trình khơng phải thực nhiều phép truyền thông tin P nhớ truy xuất trực tiếp từ ghi, từ làm giảm thời gian truy xuất độ dài lệnh + Khối điều khiển: tạo tín hiệu điều khiển hoạt động phận bên bên P (tùy theo mã lệnh) - Giao tiếp bus (Bus Interface): gồm ba điều khiển bus để giao tiếp với bus bên tương ứng: bus liệu, bus điều khiển bus địa Việc tìm nạp lệnh từ nhớ thao tác mà P thực hiện, gồm bước sau: - Nội dung PC đặt lên bus địa - Tín hiệu điều khiển READ xác lập (chuyển sang trạng thái tích cực) Bài giảng KỸ THUẬT VI XỬ LÝ - Mã lệnh đọc từ nhớ đưa lên bus liệu - Mã lệnh chốt vào ghi lệnh IR bên - PC tăng lên để chuẩn bị tìm nạp lệnh kế từ nhớ Hình 1.7 minh họa luồng thơng tin cho việc tìm nạp lệnh Hình 1.7 IV BỘ NHỚ (MEMORY) Nhắc lại đơn vị bit, nibble, byte, word o nibble = bit o byte = bit o Word nhóm gồm nhiều byte Theo qui ước word = byte word dài = byte (theo hệ vi xử lý 16-bit, 32-bit …) Phân loại + Bộ nhớ thường chia làm hai loại: nhớ (hay nhớ – main memory) nhớ lưu trữ (storage memory) - Bộ nhớ chính: ROM RAM - Bộ nhớ lưu trữ: băng từ, đĩa mềm, đĩa cứng… + Thông thường nhớ lưu trữ xem thiết bị I/O a Bộ nhớ đọc – ROM (Read-Only Memory) - Là nhớ đọc, sửa đổi thông tin hoạt động thông thường - Thông tin ghi ROM không bị mất nguồn cung cấp - ROM ghi thiết bị chuyên dụng Bài giảng KỸ THUẬT VI XỬ LÝ - ROM thường dùng để chứa chương trình liệu cố định (chương trình khởi động, liệu tra bảng …) - Các loại ROM: o ROM: thông tin ghi lúc chế tạo o PROM (Programable ROM): ROM trắng, cho phép ghi thông tin lần o EPROM (Erasable ROM): ghi xóa thơng tin nhiều lần Loại xóa cách rọi tia cực tím vào cửa sổ thủy tinh bề mặt o EEPROM (Electrically EPROM): gọi ROM điện, ghi xóa thơng tin xung điện o Flash ROM: tương tự EEPROM b Bộ nhớ truy xuất ngẫu nhiên – RAM (Random Access Memory) - Cho phép đọc/ghi thông tin lúc trình làm việc mà khơng cần thiết bị đặc biệt - Thông tin RAM bị mất nguồn cung cấp - Có hai loại RAM chính: o RAM động – DRAM (Dynamic RAM): có cấu tạo từ transistor MOSFET tụ điện (1 phần tử nhớ), lưu trữ thơng tin điện tích tụ nên thơng tin (rị rĩ hết) khơng có biện pháp trì thích hợp Do cần có q trình làm tươi (refresh) định kì để phục hồi nội dung ô nhớ trước (rị rĩ hết) DRAM tích hợp với dung lượng lớn o RAM tĩnh – SRAM (Static RAM): cấu tạo từ Flipflop (FF) (1 phần tử nhớ), FF lưu trữ bit thông tin nên SRAM khơng cần q trình làm tươi để trì nội dung Tuy nhiên, khó tích hợp với dung lượng lớn Cấu trúc bên tiêu biểu nhớ - Bộ nhớ gồm phần tử nhớ hay ô nhớ (memory cell) tổ chức dạng ma trận Mỗi ô nhớ chứa bit thông tin - Mảng nhớ phân chia thành chuỗi ngăn nhớ hay từ nhớ (word) - Mỗi ngăn nhớ có địa - Một ngăn nhớ có 4-bit, 8-bit, 16-bit … - Ký hiệu: số ngăn nhớ x độ rộng ngăn nhớ Ví dụ: nhớ 1024 x bao gồm 210 ngăn nhớ, ngăn nhớ có 8-bit Bài giảng KỸ THUẬT VI XỬ LÝ - Cấu trúc bên tiêu biểu nhớ: - Các tín hiệu tiêu biểu chip nhớ: + CS (Chip Select): tín hiệu chọn chip (cho phép chip) + OE(Output Enable): tín hiệu cho phép xuất liệu (nhận xung kích RD từ P) + WE(Write Enable): tín hiệu cho phép ghi liệu (nhận xung kích WR từ P) + Address: tín hiệu địa (từ bus địa chỉ) để chọn ngăn nhớ cần thao tác + Data: tín hiệu liệu đọc (data output) hay ghi vào (data input), nối với bus liệu Truy xuất nhớ * Các quy ước giản đồ thời gian: Hình 1.9 10 Bài giảng KỸ THUẬT VI XỬ LÝ 11 Bài giảng KỸ THUẬT VI XỬ LÝ a Truy xuất ROM Giới thiệu EPROM 2764: Đây IC nhớ 28 chân 8K (8192 x 8) với 13 đường địa đường liệu Chú ý chân /PGM không điều khiển vi xử lý, dùng cho nạp liệu vào ROM Điện áp VPP sử dụng nạp ROM, điện áp VCC = 5V điện áp hoạt động ROM A0 – A12 Đường địa D0 – D7 Đường liệu /CE Chọn chip /OE Cho phép xuất /PGM Lập trình Quy trình đọc ROM: Xác định địa ngăn nhớ cần truy xuất CPU đưa địa lên bus địa đến ROM Kích hoạt tín hiệu chọn chip cho phép liệu xuất bus liệu 12 Bài giảng KỸ THUẬT VI XỬ LÝ CPU đợi khoảng thời gian ngắn gọi thời gian truy cập để vi mạch nhớ giải mã địa xuất liệu đường liệu CPU xuất xung nhịp nạp liệu vào ghi bên Tín hiệu chọn chip đặt mức khơng tích cực xóa liệu từ ROM vào CPU Địa từ CPU đến ROM CS Bus liệu Dữ liệu khơng có giá trị Dữ liệu khơng có giá trị Dữ liệu ROM bus liệu Hình 1.10 b Truy xuất RAM Giới thiệu RAM 6264 Đây IC nhớ cho phép đọc ghi tùy ý, 28 chân 8K (8192 x 8) với 13 đường địa đường liệu Quy trình đọc RAM: tương tự đọc liệu từ ROM A0 – A12 Đường địa D0 – D7 Đường liệu /CE Chọn chip /OE Cho phép xuất /WE Cho phép ghi 13 Bài giảng KỸ THUẬT VI XỬ LÝ Hình 1.11 Hình 1.12 Quy trình ghi RAM: (i) Các đường địa kết nối với RAM xác định ngăn nhớ RAM kết nối (ii) Dữ liệu cần ghi vào RAM xuất đến đường liệu vào RAM (iii) Hệ thống phải đợi khoảng thời gian nhỏ Trong khoảng thời gian RAM giải mã địa chọn ngăn nhớ mang địa nhận Khoảng thời gian gọi thời gian ghi vào RAM (iv) Đường dẫn R/W đặt mức logic tương ứng với thao tác ghi vào RAM Tín hiệu cho phép liệu ghi vào RAM (v) Chú ý ta nói đường dẫn liệu từ RAM đường dẫn liệu vào RAM Trong thực tế khoảng khắc định ta thực thao tác l đọc ghi, nên hai loại đường dẫn thực đường dẫn hai chiều chung 14 Bài giảng KỸ THUẬT VI XỬ LÝ Hình 1.13 Giải mã địa cho nhớ Trong hệ thống vi xử lý, nhớ tạo thành từ nhiều chip nhớ Các chip dùng chung bus liệu để trao đổi với P Do để tránh xung đột bus, cần phải giải mã địa để thời điểm cho phép chip kết nối với bus liệu để trao đổi với P Kết nối mạch giải mã địa tổng quát: Đến chân địa chip nhớ Bus địa Đến chân chọn chip chip nhớ Mạch giải mã địa P Bảng nhớ MSB LSB Các bit địa n bit đến giải mã địa đến chip nhớ …… m bit 2m vùng 2n địa Hình 1.14 Quan hệ giải mã địa bảng nhớ: Ví dụ: P có 16 đường địa (A15 A0) quản lý 216 = 26.210 = 64 K = 65536 địa chỉ: + bit cao (A15 A13) đưa đến giải mã (ở dùng IC 74LS138) + 13 bit thấp (A12 A0) đưa đến chip nhớ có 23 = vùng, vùng có 213 = 23.210 = K = 8192 địa 15 Bài giảng KỸ THUẬT VI XỬ LÝ 0000 1FFF 2000 3FFF 4000 5FFF 6000 7FFF 8000 9FFF A000 BFFF C000 DFFF E000 FFFF Đưa đến chân chọn chip chip nhớ Hình 1.16 V NHẬP/XUẤT (I/O – INPUT/OUTPUT) Phân loại - Theo chiều trao đổi liệu: + Thiết bị xuất + Thiết bị nhập + Thiết bị nhập/xuất - Theo dạng truyền liệu: + Nối tiếp: đồng bất đồng (thêm bit start, stop) + Song song Cấu trúc tiêu biểu port I/O - Các port nhập (I) xuất (O) giao tiếp P với thiết bị ngồi khơng thể nối trực tiếp đến bus - Về bản, port xuất ghi Khi P ghi địa gán cho port, port chứa liệu có từ bus liệu Như cung cấp ngõ có chốt cho thiết bị ngồi - Một port nhập thơng thường đệm trạng thái Khi P đọc vào từ địa gán cho port, đệm trạng thái đưa liệu từ ngõ nhập vào bus liệu P đọc liệu từ bus Giải mã địa cho I/O a I/O trực tiếp (Định địa I/O theo kiểu trực tiếp) - Các địa thiết bị I/O tách khỏi địa nhớ - P cung cấp hai đường điều khiển đọc ghi riêng cho I/O: IOR IOW - Giải mã địa cho I/O tương tự giải mã địa cho nhớ 16 Bài giảng KỸ THUẬT VI XỬ LÝ Hình 1.20 Định địa I/O theo kiểu trực tiếp Lưu ý: Một số thiết bị I/O khơng có tín hiệu địa Ví dụ: Giải mã địa cho I/O: Hình 1.20 Giải mã địa cho I/O Khi P cần trao đổi liệu với thiết bị I/O đó, phát tín hiệu địa thiết bị lên bus địa Một số tín hiệu địa đặt vào mạch giải mã chọn thiết bị Mạch giải mã kích hoạt tín hiệu chọn chip tương ứng với thiết bị chọn, có đệm liệu thiết bị nối với bus liệu để trao đổi với P Trong q trình này, tín hiệu điều khiển đọc hay ghi phát bus điều khiển để xác định thao tác tương ứng b I/O ánh xạ nhớ - P xem thiết bị I/O vị trí nhớ Các vị trí khơng trùng với địa có thiết bị nhớ ROM RAM - P khơng có tín hiệu điều khiển đọc ghi riêng cho I/O Sau hai ví dụ minh họa việc tạo tín hiệu đọc/ghi I/O từ đường điều khiển đọc/ghi nhớ: Ví dụ 1: Giả sử P có 16 đường địa chỉ, tín hiệu đọc/ghi I/O tích cực mức 0: 17 Bài giảng KỸ THUẬT VI XỬ LÝ Trong ví dụ đường địa A15 dùng bit chọn đọc/ghi nhớ hay I/O Nếu A15 = 1, ngõ IOR IOW mức nên thao tác chọn đọc/ghi nhớ Ngược lại A15 = 0, ngõ IOR hay IOW mức có tín hiệu RD hay WR tương ứng từ xử lý Ví dụ 2: Mức tích cực tín hiệu đọc/ghi I/O mức 1: CSx : tín hiệu chọn thiết bị I/O từ mạch giải mã địa Các phương pháp điều khiển I/O Có phương pháp bản: hỏi vòng hay kiểm tra (polling), điều khiển ngắt (interrupt) DMA (Direct Access Memory) Ngồi kết hợp phương pháp a Polling (Hỏi vòng) - P kiểm tra I/O xem có u cầu dịch vụ khơng thông qua cờ (flag) - Tất việc chuyển liệu đến từ thiết bị I/O thực chương trình polling chế đồng (synchronous) với việc thực thi chương trình - Kỹ thuật polling có hạn chế: + Mất thời gian P (do kiểm tra trạng thái tất ngoại vi thường xuyên) + Chậm hệ thống thời gian thực (real-time), không thỏa mãn cho thiết bị yêu cầu tốc độ đáp ứng nhanh 18 Bài giảng KỸ THUẬT VI XỬ LÝ + Người sử dụng gặp khó khăn trong vấn đề lập trình phải ln canh chừng I/O - Lưu đồ hoạt động polling: b Interrupt (Ngắt) + Ngắt q trình xử lý thơng tin vi xử lý tương tự người xử lý thơng tin Ví dụ bạn nói chuyện với người Người thứ ba đến gọi tên bạn Đây dấu hiệu có người khác yêu cầu quan tâm bạn Người thứ ba coi 19 Bài giảng KỸ THUẬT VI XỬ LÝ yêu cầu ngắt bên (external interrupt request) Người yêu cầu bạn ngắt nói chuyện Bạn xử lý yêu cầu nầy cách sau: Bạn bỏ qua yêu cầu coi người thứ ba khơng tồn Bạn dừng cách thích hợp đối thoại diễn ra, bắt đầu quan tâm đến người thứ ba Lúc bạn bắt đầu nói chuyện với người khơng nói chuyện với người Bạn tức khắc dừng nói chuyện với người thứ bắt đầu nói chuyện với người thứ ba Khi bạn nói chuyện xong với người thứ ba, bạn muốn quay lại tiếp tục đối thoại với người thứ điểm mà yêu cầu ngắt xuất + Quá trình diễn tương tự với kỹ thuật ngắt hệ thống vi xử lý Lúc CPU đóng vai trị bạn Người thứ chương trình thực Người thứ ba yêu cầu ngắt bên Đây thiết bị phần cứng bên yêu cầu CPU quan tâm đến CPU phải xử lý yêu cầu ngắt nầy cách Có nhiều cách xử lý ngắt, cách nêu ví dụ cách xử lý thơng dụng + Ví dụ ta có cảm biến báo cháy Thơng thường khơng có lửa cảm biến xuất số 1, có lửa cảm biến xuất số báo cho vi xử lý kích hoạt chương trình báo động Vi xử lý ln ln đọc trạng thi cảm biến lệnh IN từ cổng nối với cảm biến Sau vi xử lý kiểm tra trạng thi cảm biến gọi chương trình báo động trạng thi cảm biến Tuy thao tác lặp lặp lại nhiều lần cách khơng hiệu quả, phần lớn thời gian cảm biến không báo cháy Một cách xử lý hiệu đưa tín hiệu cảm biến vào yêu cầu ngắt vi xử lý Chỉ yêu cầu ngắt kích hoạt vi xử lý gọi chương trình báo động Ngắt chế bất đồng (asynchronous) với việc thực thi chương trình Nó dùng với mục đích tránh tối đa loại bỏ hẳn chế hỏi vòng để kiểm tra trạng thái thiết bị - Mỗi thiết bị I/O hay điều khiển nối với đường interrupt 20 Bài giảng KỸ THUẬT VI XỬ LÝ - Khi I/O có yêu cầu trao đổi liệu phát tín hiệu báo cho P Tín hiệu gọi tín hiệu u cầu ngắt IRQ (interrupt request) Khi P nhận yêu cầu ngắt đó, đồng ý trao đổi thơng tin với I/O, trả lời với điều khiển nhập/xuất tín hiệu chấp nhận ngắt INTA (interrupt acknownledge) đồng thời ngừng chương trình làm gọi chương trình phục vụ ngắt cho I/O Sau phục vụ xong, quay tiếp tục thực chương trình làm nơi bị ngắt - Khi có nhiều I/O yêu cầu ngắt đồng thời cần có mạch điều khiển ưu tiên ngắt - Lưu đồ hoạt động ngắt: - Thủ tục interrupt nguyên tắc tương tự với gọi chương trình con, ngoại trừ: (i) Interrupt khởi động từ tín hiệu bên bên ngồi thay từ thực thi lệnh (ii) Địa chương trình phục vụ interrupt xác định thủ tục hardware thay từ vùng địa lệnh (bảng vector ngắt xác định trước loại vi xử lý) (iii) Khi đáp ứng interrupt cần lưu tất thông tin định nghĩa trạng thái hành hệ thống thay lưu trữ đếm chương trình PC c DMA (Direct Memory Access) - Thơng thường chương trình muốn chuyển byte liệu từ ngoại vi vào nhớ, phải thực thơng qua P gồm thao tác nhập sau thao tác ghi nhớ Hoặc ngược lại, muốn đưa thông tin từ nhớ ngoại vi, P phải làm thao tác đọc nhớ xuất ngoại vi Trong trường hợp này, chức P chuyển liệu mà khơng xử lý Điều lặp lặp lại nhiều lần làm lãng phí việc sử dụng P chức chủ yếu P xử lý liệu 21 Bài giảng KỸ THUẬT VI XỬ LÝ - DMA chế điều khiển cho phép truy xuất nhớ trực tiếp, không thông qua P - Cơ chế DMA thực mạch phần cứng gọi điều khiển DMA (DMAC - DMA Controller) - DMA giúp rút ngắn thời gian truy xuất nhớ I/O Cơ chế tiện dụng cho thiết bị ngoại vi có khối lượng thơng tin trao đổi lớn (trao đổi khối liệu lớn thời gian ngắn) ví dụ card hình, đĩa cứng … máy tính - Q trình DMA bắt đầu có tín hiệu u cầu DMA (DRQ) từ thiết bị I/O đến DMAC DMAC tiếp tục gởi tín hiệu yêu cầu P nhường bus (HRQ) đến chân HOLD P để thực thi việc trao đổi liệu trực tiếp nhớ I/O Khi P đồng ý nhường bus, trả lời cho DMAC tín hiệu chấp nhận nhường bus (HLDA) đồng thời tạm ngưng hoạt động, tự tách khỏi hệ thống Đến lượt DMAC gởi tín hiệu thơng báo cho phép trao đổi liệu theo kiểu DMA (DACK) đến thiết bị I/O Khi DMAC chuyển hết liệu, trả quyền điều khiển bus lại cho P, trình DMA kết thúc - Trong thực tế, việc sử dụng chế DMA phức tạp qua nhiều cơng đoạn DMAC khơng thi hành lệnh nào, chương trình (không thực thi phần mềm) để chuyển liệu mà thực hồn tồn phần cứng nên cần phải có trước đầy đủ thơng tin vị trí liệu I/O, vị trí nhớ chứa liệu số lượng byte cần chuyển để P nạp cho DMAC Ngồi ra, DMAC cịn phải có khả tạo tín hiệu điều khiển cần thiết giống tín hiệu P VI VI XỬ LÝ VÀ VI ĐIỀU KHIỂN - Về cấu trúc phần cứng: + Vi xử lý: CPU đơn chip (như sơ đồ khối trên) 22 Bài giảng KỸ THUẬT VI XỬ LÝ + Vi điều khiển: gồm CPU số thành phần khác nhớ ROM, RAM, port I/O số mạch chức mạch định thời (timer), mạch điều khiển ngắt (interrupt controller), mạch giao tiếp nối tiếp (serial interface)… - Về ứng dụng: + Vi xử lý: thường dùng làm CPU máy vi tính + Vi điều khiển: thường dùng thiết kế nhỏ, hướng điều khiển - Đặc trưng tập lệnh: + Vi xử lý: mạnh kiểu định địa chỉ, số lệnh nhiều + Vi điều khiển: thao tác với bit đơn (định hướng bit) *** 23 ... hiệu P VI VI XỬ LÝ VÀ VI ĐIỀU KHIỂN - Về cấu trúc phần cứng: + Vi xử lý: CPU đơn chip (như sơ đồ khối trên) 22 Bài giảng KỸ THUẬT VI XỬ LÝ + Vi điều khiển: gồm CPU số thành phần khác nhớ ROM, RAM,... xuất nhớ * Các quy ước giản đồ thời gian: Hình 1.9 10 Bài giảng KỸ THUẬT VI XỬ LÝ 11 Bài giảng KỸ THUẬT VI XỬ LÝ a Truy xuất ROM Giới thiệu EPROM 2764: Đây IC nhớ 28 chân 8K (8192 x 8) với 13 đường... THỐNG VI XỬ LÝ Quá trình phát triển máy vi tính (tham khảo thêm Internet) Bài giảng KỸ THUẬT VI XỬ LÝ - Máy vi tính bao gồm máy tính dùng vi xử lý (họ Intel, Motorola, AMD…) làm cốt lõi, vi điều