intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Vi xử lý: Chương 2 - Bùi Minh Thành

Chia sẻ: Nhân Sinh ảo ảnh | Ngày: | Loại File: PDF | Số trang:87

157
lượt xem
16
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Vi xử lý - Chương 2: Kiến trúc CPU và tập lệnh" giới thiệu tới người đọc các nội dung: Sơ đồ khối CPU 8 bit cơ bản, tổ chức các thanh ghi, tổ chức bộ nhớ, ghép nối bus hệ thống, chu kỳ bus, chu kỳ máy, các phương pháp định địa chỉ, tập lệnh. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Vi xử lý: Chương 2 - Bùi Minh Thành

  1. Bùi Minh Thành Hiệu đính từ bài giảng của thầy Hồ Trung Mỹ (BMDT- DHBK) Chương 2 KIẾN TRÚC CPU VÀ TẬP LỆNH 1
  2. Nội dung 2.1 Sơ đồ khối CPU 8 bit cơ bản 2.2 Tổ chức các thanh ghi 2.3 Tổ chức bộ nhớ 2.4 Ghép nối bus hệ thống 2.5 Chu kỳ bus, chu kỳ máy 2.6 Các phương pháp định địa chỉ 2.7 Tập lệnh 2
  3. Vi xử lý • Có nhiều lọai vi xử lý (VXL) từ rất đơn giản đến rất phức tạp • Phụ thuộc vào độ rộng bus dữ liệu và thanh ghi và ALU, có các VXL 4 bit , 8 bit , 16bit, 32 bit , 64 bit … • Thí dụ – Z80 là VXL 8 bit – 8086/88 là VXL 16 bit • Tất cả các VXL có – Bus địa chỉ – Bus dữ liệu – Các tín hiệu điều khiển: RD, WR, CLK , RST, INT, . . . 3
  4. Bus nội và ngoại • Bus nội (Internal bus) là đường dẫn để truyền dữ liệu giữa các thanh ghi và ALU trong VXL • Bus ngoại (External bus) dùng cho bên ngoài nối đến RAM, ROM và I/O • Độ rộng của bus nội và ngoại có thể khác nhau. • Thí dụ – 8088: bus nội là 16 bit, bus ngoại là 8 bit – 8086: bus nội là 16 bit, bus ngoại là 16 bit 4
  5. 2.1 SƠ ĐỒ KHỐI CPU 8 BIT CƠ BẢN 5
  6. 6
  7. Sơ đồ chức năng và gán chân ở chip Z80 7
  8. • Có 6 nhóm tín hiệu: – Bus địa chỉ 16 đường (A0 đến A15) – Bus dữ liệu 8 đường (D0 đến D7) – 6 đường điều khiển hệ thống – 5 đường điều khiển CPU – 2 đường điều khiển bus CPU ( ) – 3 đường dành cho nguồn cấp điện và xung nhịp (+5V, GND, và CLK) 8
  9. Mô tả chân Z80 A15-A0 : Bus địa chỉ (xuất, tích cực cao, 3-state). Dùng để truy cập bộ nhớ và các cổng I/O Trong chu kỳ làm tươi I được đặt trên bus này. D7-D0 : Bus dữ liệu (nhập/xuất, tích cực cao, 3-state). Dùng để trao đổi dữ liệu với bộ nhớ , I/O và ngắt. RD: Đọc (xuất, tích cực thấp, 3-state) cho biết CPU muốn đọc dữ liệu từ bộ nhớ hay I/O WR: Ghi (xuất, tích cực thấp, 3-state) cho biết bus dữ liệu CPU giữ dữ liệu hợp lệ sẽ được cất vào bộ nhớ hay thiết bị I/O. 9
  10. Mô tả chân Z80 MREQ Memory Request (output, active Low, 3-state). Indicates memory read/write operation. See M1 IORQ Input/Output Request(output,active Low,3-state) Indicates I/O read/write operation. See M1 M1 Machine Cycle One (output, active Low). Together with MREQ indicates opcode fetch cycle Together with IORQ indicates an Int Ack cycle RFSH Refresh (output, active Low). Together with MREQ indicates refresh cycle. Lower 7-bits address is refresh address to DRAM 10
  11. Mô tả chân Z80 INT Interrupt Request (input, active Low). Interrupt Request is generated by I/O devices. Checked at the end of the current instruction If flip-flop (IFF) is enabled. NMI Non-Maskable Interrupt (Input, negative edge-triggered). Higher priority than INT. Recognized at the end of the current Instruction Independent of the status of IFF Forces the CPU to restart at location 0066H. 11
  12. Mô tả chân Z80 BUSREQ Bus Request (input, active Low). higher priority than NMI recognized at the end of the current machine cycle. forces the CPU address bus, data bus, and MREQ, IORQ, RD, and WR to high-imp. BUSACK Bus Acknowledge (output, active,Low) indicates to the requesting device that address, data, and control signals MREQ, IORQ, RD, and WR have entered their high-impedance states. 12
  13. Mô tả chân Z80 RESET Reset (input, active Low). RESET initializes the CPU as follows: Resets the IFF Clears the PC and registers I and R Sets the interrupt status to Mode 0. During reset time, the address and data bus go to a high-impedance state And all control output signals go to the inactive state. must be active for a minimum of three full clock cycles before the reset operation is complete. 13
  14. Kiến trúc hệ thống 14
  15. 2.2 TỔ CHỨC CÁC THANH GHI 15
  16. Z80 CPU B 8 U INTERNAL DATA BUS (8 BIT) F F E R DATA BUS MUX MUX A F INSTRUCTION W' TMP Z' W Z REGISTER I R A' F' B' C' B C D' E' D E H' L' H L ACT DECODER IX IY SP ALU CONTROLLER SEQUENCER PC ±k ±k CONTROL SECTION B ADDRESS BUS 16 U INTERNAL ADDRESS BUS (16 BIT) F F E R B CONTROL BUS 13 U INTERNAL CONTROL BUS F F E R 16
  17. Mô hình lập trình Z80 17
  18. Tập thanh ghi • A : Accumulator Register • F : Flag register • Two sets of six general-purpose registers – may be used individually as 8-bit A F B C D E H L (A’ F’ B’ C’ D’ E’ H’ L’) – or in pairs as 16-bit registers AF BC DE HL (AF’ BC’ DE’ HL’) • The Alternative registers (A’ F’ B’ C’ D’ E’ H’ L’) not visible to the programmer but can access via: – EXX (BC)(BC') , (DE)(DE') , (HL)(HL') – EX AF, AF ’ (AF)(AF') what is this instruction useful for? 18
  19. Tập thanh ghi (tt) • 4 16-bit registers hold memory address (pointers) – index registers (IX) and (IY) are 16-bit memory pointers – 16 bit stack pointer (SP) – Program counter (PC) • Program counter (PC) – PC points to the next opcode to be fetched from ROM – when the µP places an address on the address bus to fetch the byte from memory, it then increments the program counter by one to the next location • Special purpose registers – I : Interrupt vector register. – R : memory Refresh register 19
  20. Thanh ghi cờ (Flag Register) 7 6 5 4 3 2 1 0 P S Z X H X V N C S Sign Flag (1:negativ)* Z Zero Flag (1:Zero) H Half Carry Flag (1: Carry from Bit 3 to Bit 4)** P Parity Flag (1: Even) V Overflow Flag (1:Overflow)* N Operation Flag (1:previous Operation was subtraction)** C Carry Flag (1: Carry from Bit n-1 to Bit n, with n length of operand) *: 2-complement number representation 20 **: used in DAA-operation for BCD-arithmetic
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
13=>1