PHẦN 1: VI XỬ LÝ

Chia sẻ: Bùi Văn Chung | Ngày: | Loại File: PDF | Số trang:98

0
103
lượt xem
32
download

PHẦN 1: VI XỬ LÝ

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Thông qua giao tiếp, cho phép máy tính trao đổi dữ liệu với thế giới bên ngoài. Các thiết bị ngoại vi như bàn phím, thiết bị đầu cuối hiển thị, máy in, vv, đều được nói với máy tính thông qua các khối I/O.

Chủ đề:
Lưu

Nội dung Text: PHẦN 1: VI XỬ LÝ

  1. PHẦN 1 VI XỬ LÝ http://www.ebook.edu.vn 1
  2. Chương 1 TỔNG QUAN 1.1. Các thế hệ máy tinh Các thế hệ Thời gian Công nghệ Tốc độ (lệnh/ giây) 1 1946-1957 Đèn điện tử 40,000 2 1958-1964 Transistor 200,000 3 1965-1971 Vi mạch tích hợp cỡ vừa và nhỏ 1,000,000 4 1972-1977 Vi mạch tích hợp cỡ lớn 10,000,000 5 1978 - Vi mạch tích hợp cực lớn 100,000,000 1.2. Sự phát triển về mật độ tích hợp ZSI = Zero-Scale Integration (Discrete Components) VLSI = Very-Large-Scale Integration SSI = Small-Scale Integration ULSI = Ultra-Large-Scale Integration MSI = Medium-Scale Integration GSI = Giga-Scale-Integration LSI = Large-Scale Integration 1.3. Sự phát triển của DRAM và tính năng của bộ bộ vi xử lý Định luật Morre: Số lượng transistors tăng gấp đôi sau khoảng18-24 tháng. http://www.ebook.edu.vn 2
  3. 1.4. Xu hướng phát triển trong ứng dụng DRAM 1.5. Sự phát triển của các bộ vi xử lý Intel Bộ xử lý 8008 8080 8086 386 486 Pen P6 P-II Ce Xeon Thời gian 1972 1974 1978 1985 1989 1993 1995 1997 1998 1998 Tập lệnh 66 111 133 154 235 Độ rộng bus địa chỉ 8 16 20 32 32 32 64 64 32 64 Độ rộng bus dữ liệu 8 8 16 32 32 64 64 64 64 64 Số lượng cờ 4 5 9 14 14 Số lượng thanh ghi 8 8 16 8 8 Khả năng địa chỉ hoá 16 K 64K 1 MB 4 GB 4GB 4G 64G 64G 4G 64G Các cổng I/O 24 256 64 K 64 K 64K Tốc độ Bus (MB/sec) - 0.75 5 32 32 Thời gian thực hiện phép - 1.3 0.3 0.125 0.06 cộng giữa các thanh ghi (μsec) http://www.ebook.edu.vn 3
  4. 1.6. Sơ đồ chân 8086 1.7. Sơ đồ khối của 1 máy vi tính đơn giản dùng 8086 http://www.ebook.edu.vn 4
  5. 1.8. Sơ đồ khối bên trong của bộ vi xử lý Intel 486 1.9. Yêu cầu về băng thông đối với các công nghệ thiết bị ngoại vi Thiết bị ngoại vi Kỹ thuật Yêu cầu băng thông Graphics 24-bit color 30 MBytes/sec Local area network 100BASEX or FDDI 12 Mbytes/sec Disk controller SCSI or P1394 10 Mbytes/sec Full-motion video 1024 x 768@30fps 67+ Mbytes/sec I/O Peripherals Other miscellaneous 5+ Mbytes/sec http://www.ebook.edu.vn 5
  6. 1.10. Chỉ số ICOMP 1.11. Lịch sử phát triển của các bộ vi xử lý a. Các sách tham khảo Malone & Shawn M. (1995). The microprocessors: a biography. California: Santa Clara. (As the name suggests, it is a book discussing the history of Microprocessors, not only from Intel but also the others) b. Các website tham khảo http://www.intel.com/intel/intelis/museum/ Intel official site. Including detailed circuit diagrams and quick technical reference from the oldest 4004 to the newest Pentium http://www.epemag.com/micros.pdf A short feature article describing evolution of Intel microprocessors, with technical terms explained http://bwrc.eecs.berkeley.edu/CIC Rich source of CPU information http://www.ebook.edu.vn 6
  7. Chương 2. Cơ bản về hệ đếm, mã hoá và hệ thống số 2.1. Các hệ đếm thông dụng Hệ thập phân - Decimal Hệ nhị phân - Binary Hệ16 - Hexadecimal Mã BCD (standard BCD, gray code) Mã hiển thị 7 đoạn (7-segment display code) Mã ký tự - Alphanumeric code (ASCII, EBCDIC) 2.2. Các mã hệ đếm thông dụng Hệ 10 Hệ 2 Hệ 8 Hệ 16 Binary-Coded Decimal Reflected 7-Segment Display Gray (1=on) Code 8421 BCD EXCESS-3 abcdefg Display 0 0000 0 0 0000 0011 0011 0000 1111110 0 1 0001 1 1 0001 0011 0100 0001 0110000 1 2 0010 2 2 0010 0011 0101 0011 1101101 2 3 0011 3 3 0011 0011 0110 0010 1111001 3 4 0100 4 4 0100 0011 0111 0110 0110011 4 5 0101 5 5 0101 0011 1000 0111 1011011 5 6 0110 6 6 0110 0011 1001 0101 1011111 6 7 0111 7 7 0111 0011 1010 0100 1110000 7 8 1000 10 8 1000 0011 1011 1100 1111111 8 9 1001 11 9 1001 0011 1100 1101 1110011 9 10 1010 12 A 0001 0000 0100 0011 1111 1111101 A 11 1011 13 B 0001 0001 0100 0100 1110 0011111 B 12 1100 14 C 0001 0010 0100 0101 1010 0001101 C 13 1101 15 D 0001 0011 0100 0110 1011 0111101 D 14 1110 16 E 0001 0100 0100 0111 1001 1101111 E 15 1111 17 F 0001 0101 0100 1000 1000 1000111 F http://www.ebook.edu.vn 7
  8. 2.3. Các mã ký tự thông dụng 2.4. Binary Subtraction Truth table for 2 bits and borrow INPUTS OUTPUTS A B BIN D BOUT 0 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 D : Difference = A ⊕ B ⊕ BIN BOUT : Borrow = A.B + ( A ⊕ B ).B IN http://www.ebook.edu.vn 8
  9. 2.5. Phép trừ nhị phân 2‘s-complement positive result 2‘s-complement negative result 2.6. Buffer and Logic Gates http://www.ebook.edu.vn 9
  10. 2.7. Thanh ghi Simple data storage Thanh ghi dịch 2.8. Bộ đếm nhị phân 4 bit Sơ đồ giản lược Chuỗi đếm http://www.ebook.edu.vn 10
  11. 2.9. Khối số học - logic (ALU) Các phép AND, OR và XOR đơn giản Mỗi bit được dịch trái sang vị trí của bit có trọng số lớn hơn http://www.ebook.edu.vn 11
  12. Chương 3. Hoạt động của chương trình máy tính 3.1. Sơ đồ khối máy vi tính đơn giản Các phần chính: CPU, Memory, I/O Các Bus: address bus, data bus, and control bus. 3.2. CPU CPU (central processing unit) điều khiển các hoạt động của máy tính. Các hoạt động của CPU fetches - lấy lệnh: Lấy lệnh tự bộ nhớ decodes - Giải mã: Giải mã lệnh thành một chuỗi các hoạt động đơn giản (được thực hiện trong khối giải mã lệnh) executes – Thi hành: Thi hành lệnh bằng cách chuyển các hoạt động đó thành một chuỗi các ứng xử (được thực hiện trong khối CU - logic control unit) Các thành phần cơ bản của 1 CPU arithmetic-logic unit - Khối số học-logic (ALU) – là khối thực thi các phép toán số học và logic. logic control unit - khối đièu khiển logic (CU) – là khối dịch và chuyển đổi chuỗi các lệnh thành các tín hiệu điều khiển bus. Các thanh ghi đặc biệt như thanh ghi con đếm chương trình - program counter (PC), lưu giữa địa chỉ của lệnh hay dữ liệu sẽ được lấy kế tiếp trong bộ nhớ. Các thanh ghi mục đích chung: Chúng được sử dụng cho việc lữu giữ dự liệu tạm thời, như các thanh ghiaccumulator A, status register, vv. 3.3. Bộ nhớ Hai mục đích: (1). Lưu trữ mã lệnh của chương trình máy tính để thực thi; http://www.ebook.edu.vn 12
  13. (2). Lưu trữ dữ liệu mà máy tính sẽ làm việc trên đó. Các loại bộ nhớ: Thường là RAM, ROM và các thiết bị nhớ khối như đĩa từ, đĩa quang, vv. 3.4. Input/Output Thông qua giao tiếp, cho phép máy tính trao đổi dữ liệu với thế giới bên ngoài. Các thiết bị ngoại vi như bàn phím, thiết bị đầu cuối hiển thị, máy in, vv, đều được nói với máy tính thông qua các khối I/O. Các thiết bị vật lý thực sử dụng để giao tiếp bus máy tính với các hệ thống ngoài được gọi là các cổng giao tiếp (ports). Kiểu cổng I/O đơn giản nhất là 1 tập các flip-flop D. Nếu chúng được sử dụng như 1 cổng vào, thì các đầu vào D được nối với thiết bị ngoài và đầu ra Q được nối đến bus dữ liệu. Dữ liệu sẽ được truyền thông qua các bộ chốt khi chúng được kích hoạt bởi một tín hiệu điều khiển từ CPU. Trong trường hợp chúng được sử dụng làm đầu ra, sơ đồ ghép nối cũng tương tự. 3.5. Các Bus Bus địa chỉ - Address bus Là các đường tín hiệu song song 1 chiều nối từ CPU đến bộ nhớ Độ rộng bus: là số các đường tín hiệu, có thể là 8, 18, 20, 24, 32 hay 64. CPU gửi giá trị địa chỉ của ô nhớ cần truy nhập (đọc/ghi) trên các đường tín hiệu này. 1 CPU với n đường địa chỉ sẽ có thể địa chỉ hoá được 2n ô nhớ. Ví dụ, 1 Cpu có 16 đường địa chỉ có thể địa chỉ hoá được 216 hay 65,536 (64K) ô nhớ. Bus dữ liệu - Data bus Độ rộng Bus: 4, 8, 16, 32 hay 64 bits Là các đường tín hiệu song song 2 chiều, nhiều thiết bị khác nhau có thể được nối với bus dữ liệu; nhưng tại một thời điểm, chỉ có 1 thiết bị duy nhất có thể được phép đưa dữ liệu lên bus dữ liệu. Bất kỳ thiết bị nào đợc kết nối đến bus dữ liệu phải có đầu ra ở dạng 3 trạng thái, sao cho nó có thể ở trạng thái treo (trở kháng cao) nếu không được sử dụng. Bus điều khiển - Control bus Bao gồm 4 đến 10 đường tín hiệu song song. CPU gửi tín hiệu ra bus điều khiển để cho phép các đầu ra của ô nhớ hay các cổng I/O đã được địa chỉ hoá. Các tín hiệu điều khiển thường là: đọc/ ghi bộ nhớ - memory read, memory write, đọc/ ghi cổng vào/ra - I/O read, I/O write. http://www.ebook.edu.vn 13
  14. Ví dụ, để đọc 1 byte dữ liệu từ ô nhớ sẽ cần đến các hoạt động sau: o CPU đưa ra địa chỉ của ô nhớ cần đọc lên bus địa chỉ. o CPU đưa ra tín hiệu đọc bộ nhớ - Memory Read trên bus điều khiển. o Tín hiệu điều khiển này sẽ cho phép thiết bị nhớ đã được địa chỉ hoá đưa byte dữ liệu lên bus dữ liệu. o Byte dữ liệu từ ô nhớ sẽ được truyền tải qua bus dữ liệu đến CPU. 3.6. Phần cứng -Hardware, phần mềm -Software, và phần sụn -Firmware Phần cứng là các thiết bị vật lý và các mạch điện của máy tính. Phần mềm là các chương trình được viết cho máy tính. Phần sụn là thuật ngữ chỉ các chương trình được lưu giữ trong ROM hay các thiết bị khác mà có đặc tính là các chương trình này ở được lưu giữ bền vững và ở trạng thái thường trực. 3.7. Sự thực thi của 1 chương trình máy tính 3 bước Chương trình 1. Nhập vào 1 giá trị từ cổng số 0. 2. Cộng giá trị đó với 7 3. Đưa kết quả ra cổng số 02 http://www.ebook.edu.vn 14
  15. Thứ tự các bước thực hiện 1A CPU sends out address of first instruction to memory. 1B CPU sends out memory read control signal to enable memory. 1C Instruction byte (E4H) sent from memory to CPU on data bus. 2A Address next memory location to get rest of instruction. 2B Send memory read control signal to enable memory. 2C Port address byte (05H) sent from memory to CPU on data bus. 2D CPU sends out port address on address bus. 2E CPU sends out port read control signal to enable I/O port. 2F Data from port sent to CPU on data bus and store in an internal register. (Complete the fetch and execution of 1st instruction) 3A CPU sends address of next instruction to memory. 3B CPU sends memory read control signal to enable memory. 3C Instruction byte (04H) from memory sent to CPU on data bus. 4A CPU sends next address to memory to get rest of instruction. 4B CPU sends memory read control signal to enable memory. 4C Number 07H sent form memory to CPU on data bus. 5A CPU sends address of next instruction to memory. 5B CPU sends memory read control signal to enable memory. 5C Instruction byte (E6H) from memory sent to CPU on data bus. 6A CPU sends out next address to get rest of instruction. 6B CPU sends out memory read control signal to enable memory. 6C Port address byte (02) sent from memory to CPU on data bus. 6D CPU sends out port address on address bus. 6E CPU sends out data to port on data bus. 6F CPU sends out output write signal to enable port. Memory Address and Memory Contents for a three-step Program MEMORY CONTENTS CONTENTS OPERATION ADDRESS (BINARY) (HEX) 00100H 11100100 E4 INPUT FROM 00101H 00000101 05 PORT 05H 00102H 00000100 04 ADD 00103H 00000111 07 07H 00104H 11100110 E6 OUTPUT TO 00105H 00000010 02 PORT 02 http://www.ebook.edu.vn 15
  16. 3.8. A Typical PC Motherboard http://www.ebook.edu.vn 16
  17. Chương 4 KIẾN TRÚC 8088 4.1. Hệ vi xử lý cơ bản Control Unit (CU) tạo ra tất cả các tín hiệu điều khiển trong CPU. Nó khởi tạo các thanh ghi khi mở nguồn, tạo ra các tín hiệu để lấy lệnh cho ALU. Khối điều khiển có thể được thực hiện hoàn toàn bởi phần cứng (điều khiển cứng, ví dụ như sử dụng một bộ đếm trạng thái và một mảng logic khả lập triình) hay kết hợp giữa các lệnh phần mềm (vi lệnh được lưu trữ trong CPU) và phần cứng (bộ điều khiển vi chương trình. Cả hai họ vi xử lý Intel 8086 và Motorola 68000 đều sử dụng các bộ điều khiển vi chương trình. Registers – là các bộ nhớ nhỏ, nhanh, thường được sử dụng để lưu dữ liệu và địa chỉ gắn với (tương ứng với) các mã lệnh của chương trình. ALU thực hiện các phép toán số học và logic 4.2. Chu kỳ thực hiện lệnh Hai bước chính trong chu kỳ: 1. Lấy lệnh – Fetch: lấy lệnh kế tiếp từ bộ nhớ chính 2. Giải mã và thi hành - Decode and Execute. Chu kỳ lấy lệnh http://www.ebook.edu.vn 17
  18. i) Sử dụng con trỏ lệnh (IP) để đặt địa chỉ lệnh kế tiếp lên bus địa chỉ và tăng giá trị của con trỏ lệnh; ii) Chờ (vài trăm nano giây) để dữ liệu từ bộ nhớ được truyền tải lên bus dữ liệu; iii) Đọc dữ liệu từ bus dự liệu. Chu kỳ thi hành lệnh: i) Giải mã lệnh và tạo ra chuỗi các tín hiệu điều khiển cho các thành phần tương ứng bên trong và bên ngoài CPU. ii) Thực hiện lệnh và khởi động lại chu kỳ lấy lệnh 4.3. Chu kỳ lệnh cơ bản Bắt đầu Lấy lệnh kế Chu kỳ tiếp lấy lệnh Thực hiện lệnh Chu kỳ thực hiện Kết thúc 4.4. Chu kỳ lấy lệnh và thực hiện theo cơ chế đường ống - Pipelined Đường ống lấy và thi hành lệnh Lấy lệnh Thi hành Lấy lệnh Thi hành Lấy lệnh Thi hành Lấy lệnh Khối giao tiếp bus (BIU) lấy lệnh từ bộ nhớ, chuyển lệnh thành dãy các byte vào hàng đợi lệnh và thực hiện lấy lệnh kế tiếp ngay. Khối thi hành (EU) lấy các lệnh từ hàng đợi lệnh Cả BIU và EU có thể làm việc đồng thời (pipelined parallel processing) http://www.ebook.edu.vn 18
  19. 4.5. Giản đồ thời gian của cơ chế đường ống lệnh 4.6. Giới thiệu bộ vi xử lý Intel 8086/8088 http://www.ebook.edu.vn 19
  20. 8088 và 8086 là gần tương tự như nhau, chỉ khác ở chỗ 8088 có 8bit dữ liệu còn 8086 có 16 bit dữ liệu ngoài. Cả 2 bộ xử lý đều có: - Độ rộng bus dữ liệu nội là 16 bit - 20 đường địa chỉ (16 address/data + 4 address/status), cho phép địa chỉ hoá không gian bộ nhớ tối đa là 1Mbyte ở chế độ dồn kênh address/data pins (8088 only multiplexes 8 pins) - 2 chế độ hoạt động (maximum và minimum mode) - Cùng 1 tập lệnh 4.7. Kiến trúc bên trong của 8088 Cả 8088/8086 áp dụng cơ chế xử lý song song. Chứa 2 đơn vị xử lý: Đơn vị thi hành (EU) và đơn vị giao tiếp bus (BIU); hoạt động đồng thời. BIU đưa ra tín hiệu địa chỉ, lấy ệnh từ bộ nhớ, đọc dữ liệu từ cổng I/O và bộ nhớ, ghi dữ liệu ra các cổng I/O và bộ nhớ. Có nghĩa là BIU quản lý toàn bộ việc trao đổi dữ liệu trên các bus phục vụ cho đơn vị thi hành EU. EU đưa ra các yêu cầu cho BIU về nơi lấy lệnh và dữ liệu, giải mã và thi hành các lệnh. http://www.ebook.edu.vn 20
Đồng bộ tài khoản