Bài giảng Kỹ thuật Vi xử lý - Chương 2: Vi xử lý và Hệ thống vi xử lý
2.1 Bộ vi xử lý
- Bộ vi xử lý (Microprocessor) là gì?
- Các thành phần của bộ vi xử lý
- Ứng dụng của bộ vi xử lý
2.2 Các họ vi xử lý
- Họ x86 của Intel- Luật Moore
- Họ 68x của Motorola
2.3 Hệ thống vi xử lý
- Bộ nhớ
- Các cổng I/O
- Bus hệ thống: D-Bus, A-Bus, C-Bus
- Thiết kế hệ thống vi xử lý?
Bài giảng Kỹ thuật Vi xử lý Ngành Điện tử-Viễn thông Đại học Bách khoa Đà Nẵng của Hồ Viết Việt, Khoa CNTT-ĐTVT Tài liệu tham khảo [1] Kỹ thuật vi xử lý, Văn Thế Minh, NXB Giáo dục, 1997 [2] Kỹ thuật vi xử lý và Lập trình Assembly cho hệ vi xử lý, Đỗ Xuân Tiến, NXB Khoa học & kỹ thuật, 2001 Chương 2 Vi xử lý và Hệ thống vi xử lý 2.1 Bộ vi xử lý - Bộ vi xử lý (Microprocessor) là gì? - Các thành phần của bộ vi xử lý - Ứng dụng của bộ vi xử lý 2.2 Các họ vi xử lý - Họ x86 của Intel- Luật Moore - Họ 68x của Motorola 2.3 Hệ thống vi xử lý - Bộ nhớ - Các cổng I/O - Bus hệ thống: D-Bus, A-Bus, C-Bus - Thiết kế hệ thống vi xử lý? 2.1 Bộ vi xử lý Một bộ vi xử lý là một mạch tích hợp chứa hàng ngàn, thậm chí hàng triệu transistor (LSI, VLSI) được kết nối với nhau Các transistor ấy cùng nhau làm việc để lưu trữ và xử lý dữ liệu cho phép bộ vi xử lý có thể thực hiện rất nhiều chức năng hữu ích Chức năng cụ thể của một bộ vi xử lý được xác định bằng phần mềm (có thể lập trình được) Bộ vi xử lý Bộ vi xử lý đầu tiên của Intel,4004, được giới thiệu vào năm 1971. 4004 chứa 2300 transistor. Bộ vi xử lý Pentium 4 hiện nay chứa 55 triệu transistor. Bộ vi xử lý thường được sử dụng trong các máy vi tính (microcomputer) với vai trò là CPU. Ngoài ra, chúng còn có mặt ở nhiều thiết bị khác. Các thành phần của bộ vi xử lý ALU và Control Unit ALU Thực hiện các phép toán logic (AND, OR, XOR, NOT) và các phép toán số học (cộng, trừ, nhân, chia) Thực hiện việc chuyển dữ liệu Việc thực hiện lệnh thực sự diễn ra ở ALU Control Unit Có trách nhiệm liên quan đến việc tìm và thực hiện các lệnh bằng cách cung cấp các tín hiệu điều khiển và định thời cho ALU và các mạch khác biết phải làm gì và làm khi nào. Các thanh ghi (Registers) Thanh ghi là nơi mà bộ vi xử lý có thể lưu trữ được một số nhị phân (Kích cỡ của thanh ghi tính bằng bit) Bộ vi xử lý dùng các thanh ghi để lưu trữ dữ liệu tạm thời trong quá trình thực hiện chương trình Các thanh ghi có thể được truy cập bằng các câu lệnh ngôn ngữ máy thường được gọi là các thanh ghi người sử dụng có thể nhìn thấy được (có thể truy cập được) Các thanh ghi điều khiển và các thanh ghi trạng thái được CU dùng để điều khiển việc thực hiện chương trình. Đa số các thanh ghi này người sử dụng không thể nhìn thấy được 2.2 Các họ vi xử lý Hiện nay, có rất nhiều nhà sản xuất ra các chip vi xử lý:Intel, AMD, Motorola, Cyrix Thông thường, một họ vi xử lý là các chip vi xử lý được sản xuất bởi một nhà sản xuất nào đó. Trong phạm vi một họ vi xử lý, theo thời gian và theo công nghệ chế tạo có các đời (thế hệ) vi xử lý khác nhau phân biệt theo Độ dài Từ của chúng (bit) và tốc độ (Hz). Độ dài Từ (Word Length) của một chip vi xử lý là kích cỡ tối đa của các toán hạng nhị phân mà nó có thể thực hiện các phép toán trên đó. Tốc độ của họ vi xử lý x86 của Intel The Continuing Evolution of Intel Microprocessors CIS105 December 2002 0.74 2 8 12 33 100 200 200 233 333 400 400 550 1,400 0 200 400 600 800 1000 1200 1400 1600 1971 1974 1979 1982 1985 1989 1993 1995 1997 1998 1998 1999 1999 2000 Year S p e e d ( M H Z ) Họ vi xử lý x86 của Intel Model Năm sản xuất Số lượng Transistor 4004 1971 2,300 8008 1972 2,500 8080 1974 5,000 8086 1978 29,000 80286 1982 120,000 80386™ processor 1985 275,000 80486™ DX processor 1989 1,180,000 Pentium® processor 1993 3,100,000 Pentium II processor 1997 7,500,000 Pentium III processor 1999 24,000,000 Pentium 4 processor 2000 55,000,000 Họ vi xử lý x86 của Intel 70’s 4004 8008 8080 8086 Introduced 11/15/71 4/1/72 4/1/74 6/8/78 Clock Speeds 108KHz 200KHz 2MHz 5MHz, 8MHz, 10MHz Bus Width 4 bits 8 bits 8 bits 16 bits Number of Transistors 2,300 (10 microns) 3,500 (10 microns) 6,000 (6 microns) 29,000 (3 microns) Addressable Memory 640 bytes 16 KBytes 64 KBytes 1 MB Virtual Memory -- -- -- -- Brief Description First microcomputer chip, Arithmetic manipulation Data/character manipulation 10X the performance of the 8008 10X the performance of the 8080 Họ vi xử lý x86 của Intel 80’s 80286 Intel386TM DX Microprocessor Intel386TM SX Microprocessor Intel486TM DX CPU Microprocessor Introduced 2/1/82 10/17/85 6/16/88 4/10/89 Clock Speeds 6MHz, 8MHz, 10MHz, 12.5MHz 16MHz, 20MHz, 25MHz, 33MHz 16MHz, 20MHz, 25MHz, 33MHz 25MHz, 33MHz, 50MHz Bus Width 16 bits 32 bits 16 bits 32 bits Number of Transistors 134,000 (1.5 microns) 275,000 (1 micron) 275,000 (1 micron) 1.2 million (1 micron) (.8 micron with 50MHz) Addressable Memory 16 megabytes 4 gigabytes 16 megabytes 4 gigabytes Virtual Memory 1 gigabyte 64 terabytes 64 terabytes 64 terabytes Brief Description 3-6X the performance of the 8086 First X86 chip to handle 32-bit data sets 16-bit address bus enabled low-cost 32-bit processing Level 1 cache on chip Họ vi xử lý x86 của Intel 90’s Intel486TM SX Microprocessor Pentium® Processor Pentium® Pro Processor Pentium® II Processor Introduced 4/22/91 3/22/93 11/01/95 5/07/97 Clock Speeds 16MHz, 20MHz, 25MHz, 33MHz 60MHz,66MHz 150MHz, 166MHz, 180MHz, 200MHz 200MHz, 233MHz, 266MHz, 300MHz Bus Width 32 bits 64 bits 64 bits 64 bits Number of Transistors 1.185 million (1 micron) 3.1 million (.8 micron) 5.5 million (0.35 micron) 7.5 million (0.35 micron) Addressable Memory 4 gigabytes 4 gigabytes 64 gigabytes 64 gigabytes Virtual Memory 64 terabytes 64 terabytes 64 terabytes 64 terabytes Brief Description Identical in design to Intel486TM DX but without math coprocessor Superscalar architecture brought 5X the performance of the 33-MHz Intel486TM DX processor Dynamic execution architecture drives high-performing processor Dual independent bus, dynamic execution, Intel MMXTM technology 2.3 Hệ thống vi xử lý Luật Moore Dr. Gordon E. Moore, Chairman Emeritus of Intel Corporation, dự đoán rằng Cứ một năm rưỡi thì số lượng transistor được tích hợp trên chip vi xử lý tăng gấp đôi 2.3 Hệ thống vi xử lý Microprocessor MEMORY I/O Ports Data Bus Control Lines (Control Bus) Address Bus Sơ đồ khối chức năng của một hệ thống vi xử lý Hệ thống vi xử lý Gồm 3 khối chức năng: Vi xử lý, Bộ nhớ, Các cổng I/O Bộ nhớ được thực hiện bằng các chip nhớ bán dẫn ROM hoặc RWM, là nơi lưu trữ chương trình và dữ liệu. Đối với vi xử lý, bộ nhớ là một tập hợp các ô nhớ phân biệt theo địa chỉ của chúng. Các cổng I/O được thực hiện bằng các chip MSI hoặc LSI, là phần mạch giao tiếp giữa vi xử lý với các thiết bị I/O. Bộ vi xử lý cũng phân biệt các cổng I/O theo địa chỉ của chúng. Hệ thống vi xử lý 3 khối chức năng: Vi xử lý, Bộ nhớ, Các cổng I/O của một hệ thống vi xử lý trao đổi tín hiệu với nhau thông qua Bus hệ thống. Bus hệ thống là một tập hợp các đường truyền dẫn dùng chung, bao gồm: Bus địa chỉ (A-Bus), Bus dữ liệu (D-Bus) và Bus điều khiển (C-Bus) Các tín hiệu địa chỉ di chuyển trên A-Bus theo hướng từ vi xử lý đến Bộ nhớ và các cổng I/O. Số lượng đường truyền dẫn của A-Bus (gọi là Độ rộng của A-Bus) tính bằng bit, phản ánh khả năng quản lý bộ nhớ của chip vi xử lý. Hệ thống vi xử lý Các tín hiệu dữ liệu di chuyển trên D-Bus theo cả 2 hướng từ vi xử lý đến Bộ nhớ và các cổng I/O và ngược lại (mỗi lúc một hướng). Số lượng đường truyền dẫn của D- Bus (gọi là Độ rộng của D-Bus) tính bằng bit, phản ánh một phần tốc độ trao đổi dữ liệu của chip vi xử lý vớI các khối chức năng khác. Đa số các tín hiệu trên C-Bus là các tín hiệu điều khiển riêng lẽ, có tín hiệu xuất phát từ vi xử lý, có tín hiệu đi vào vi xử lý. Vi xử lý sử dụng các tín hiệu này để điều khiển hoạt động và nhận biết trạng thái của các khối chức năng khác. Thiết kế phần cứng của hệ thống vi xử lý Thiết kế bộ nhớ cho hệ thống vi xử lý: Ghép nối các chip nhớ bán dẫn sẵn có với bus hệ thống sao cho khi bộ vi xử lý truy cập bộ nhớ thì không xảy ra xung đột giữa các chip nhớ với nhau và không xung đột với các chip dùng làm cổng I/O Tương tự, Thiết kế các cổng I/O cho hệ thống vi xử lý: Ghép nối các chip MSI hoặc LSI thường dùng làm cổng I/O với bus hệ thống sao cho khi bộ vi xử lý truy cập các thiết bị I/O thì không xảy ra xung đột giữa các chip đó với nhau và không xung đột với các chip dùng làm bộ nhớ Thiết kế phần mềm của hệ thống vi xử lý Viết chương trình điều khiển hoạt động của hệ thống phần cứng theo chức năng mong muốn (thường dùng ngôn ngữ Assembly của chip vi xử lý dùng trong hệ thống) Dịch chương trình đã viết sang ngôn ngữ máy sử dụng các chương trình dịch thích hợp Nạp chương trình ngôn ngữ máy vào bộ nhớ của hệ thống vi xử lý Kiểm tra hoạt động của hệ thống và thực hiện các hiệu chỉnh nếu cần thiết Có thể nhờ sự trợ giúp của các chương trình mô phỏng trên máy tính
File đính kèm:
- bai_giang_ky_thuat_vi_xu_ly_chuong_2_vi_xu_ly_va_he_thong_vi.pdf