1. Trang chủ
  2. » Công Nghệ Thông Tin

khái quát nói về cpu

55 403 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Khái Quát Nói Về Cpu
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Kỹ Thuật Máy Tính
Thể loại Bài Tiểu Luận
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 55
Dung lượng 2,61 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nhiệm vụ của CPU• Nhận lệnh Fetch Instruction: CPU đọc lệnh từ bộ nhớ • Giải mã lệnh Decode Instruction: Xác định thao tác mà lệnh yêu cầu • Nhận dữ liệu Fetch Data: nhận dữ liệu từ bộ n

Trang 1

BỘ XỬ LÝ

KIẾN TRÚC VÀ HOẠT ĐỘNG

CỦA BỘ VI XỬ LÝ

Trang 2

Cấu trúc cơ bản của CPU

Trang 3

Cấu trúc cơ bản của CPU

• Đơn vị điều khiển (Control Unit – CU)

• Đơn vị số học và logic (Arithmetic and

Logic Unit - ALU)

• Tập thanh ghi (Register File - RF)

• Đơn vị nối ghép bus (Bus Interface Unit - BIU)

Trang 4

Nhiệm vụ của CPU

• Nhận lệnh (Fetch Instruction): CPU đọc lệnh từ

bộ nhớ

• Giải mã lệnh (Decode Instruction): Xác định

thao tác mà lệnh yêu cầu

• Nhận dữ liệu (Fetch Data): nhận dữ liệu từ bộ nhớ hoặc các cổng vào-ra

• Xử lý dữ liệu (Process Data): thực hiện phép toán số học hay phép toán logic với các dữ liệu

• Ghi dữ liệu (Write Data): ghi dữ liệu ra bộ nhớ hay cổng vào-ra

Trang 6

ALU- Phép toán Số học

Trang 7

ALU

Trang 8

• Phát ra các tín hiệu điều khiển thực hiện lệnh

• Nhận các tín hiệu yêu cầu từ bus hệ thống và đáp ứng với các yêu cầu đó

Trang 9

• Các cờ từ thanh ghi cờ cho biết trạng

thái của CPU.

Trang 10

Tín hiệu điều khiển của CU

• Các tín hiệu điều khiển bên trong CPU:

– Điều khiển các thanh ghi

– Điều khiển ALU

• Các tín hiệu điều khiển bên ngoài CPU:

– Điều khiển bộ nhớ

– Điều khiển các môđun vào-ra

Trang 11

Tập thanh ghi

• Tập hợp các thanh ghi nằm trong CPU

• Chứa các thông tin tạm thời phục vụ cho hoạt động ở thời điểm hiện tại của CPU

• Được coi là mức đầu tiên của hệ thống nhớ

• Tuỳ thuộc vào bộ xử lý cụ thể

• Số lượng thanh ghi nhiều  tăng hiệu năng

của CPU

• Có hai loại thanh ghi

– Các thanh ghi lập trình được

Trang 12

Tập thanh ghi

• Phân loại theo chức năng

– Thanh ghi địa chỉ: quản lý địa chỉ của ngăn nhớ hay cổng vào-ra.

– Thanh ghi dữ liệu: chứa tạm thời các dữ liệu

– Thanh ghi đa năng: có thể chứa địa chỉ hoặc dữ liệu.

– Thanh ghi điều khiển/trạng thái: chứa các thông tin điều khiển và trạng thái của CPU.

– Thanh ghi lệnh: chứa lệnh đang được thực hiện

Trang 13

Tập thanh ghi

• Một số thanh ghi điển hình

– Các thanh ghi địa chỉ

– Bộ đếm chương trình PC (Program Counter)

– Con trỏ dữ liệu DP (Data Pointer)

– Con trỏ ngăn xếp SP (Stack Pointer)

– Thanh ghi cơ sở và thanh ghi chỉ số (Base Register & Index Register)

– Các thanh ghi dữ liệu

– Thanh ghi trạng thái

Trang 14

• Sau khi một lệnh được nhận vào, nội dung

PC tự động tăng để trỏ sang lệnh kế tiếp.

Trang 15

Thanh ghi con trỏ dữ liệu

• Chứa địa chỉ của ngăn nhớ dữ liệu mà

CPU muốn truy nhập

• Thường có một số thanh ghi con trỏ dữ

liệu

– DS, ES,…

Trang 16

Ngăn xếp (Stack)

• Ngăn xếp là vùng nhớ có cấu trúc LIFO (FILO)

– Last In – First Out (First In – Last Out)

• Ngăn xếp thường dùng để phục vụ cho

chương trình con

• Đáy ngăn xếp là một ngăn nhớ xác định

• Đỉnh ngăn xếp là thông tin nằm ở vị trí trên

cùng trong ngăn xếp

• Đỉnh ngăn xếp có thể bị thay đổi

Trang 17

Con trỏ ngăn xếp SP

Stack Pointer

• SP chứa địa chỉ của ngăn nhớ đỉnh ngăn xếp

• Khi cất một thông tin vào ngăn xếp:

– Nội dung của SP tự động giảm

– Thông tin được cất vào ngăn nhớ được trỏ bởi SP

• Khi lấy một thông tin ra khỏi ngăn xếp:

– Thông tin được đọc từ ngăn nhớ được trỏ bởi SP

– Nội dung của SP tự động tăng

• Khi ngăn xếp rỗng, SP trỏ vào đáy

Trang 19

Data pointer

Trang 20

Thanh ghi cơ sở

Thanh ghi chỉ số

• Thanh ghi cơ sở: chứa địa chỉ của ngăn nhớ cơ sở (địa chỉ cơ sở)

• Thanh ghi chỉ số: chứa độ lệch địa chỉ

giữa ngăn nhớ mà CPU cần truy nhập

so với ngăn nhớ cơ sở (chỉ số)

• Địa chỉ của ngăn nhớ cần truy nhập =

địa chỉ cơ sở + chỉ số

Trang 22

Các thanh ghi dữ liệu

• Chứa các dữ liệu tạm thời hoặc các kết

quả trung gian

• Cần có nhiều thanh ghi dữ liệu

– Các thanh ghi số nguyên: 8, 16, 32, 64 bit

– Các thanh ghi số dấu chấm động

Trang 23

Status Register

• Còn gọi là thanh ghi cờ (Flag Register)

• Chứa các thông tin trạng thái của CPU

– Các cờ phép toán: báo hiệu trạng thái của

kết quả phép toán

– Các cờ điều khiển: biểu thị trạng thái điều

khiển của CPU

Trang 24

• Cờ Carry (cờ nhớ): được thiết lập lên 1 nếu phép

toán có nhớ ra ngoài bit cao nhất

– cờ báo tràn với số không dấu.

• Cờ Overflow (cờ tràn): được thiếp lập lên 1 nếu cộng hai số nguyên cùng dấu mà kết quả có dấu ngược lại

Trang 25

ngoài gửi tới

– Nếu IF = 0  CPU ở trạng thái cấm ngắt với tín hiệu yêu cầu ngắt từ bên ngoài gửi

Trang 27

Nhắc lại: các quan điểm thiết kế

• Tiêu chuẩn hóa.

– Câu lệnh có cùng kích thước.

– Số format lệnh ít.

– Mã thực thi luôn là 6 bit đầu tiên.

• Nhỏ hơn sẽ nhanh hơn!

– Tập lệnh giới hạn.

– Số thanh ghi giới hạn.

– Số mô hình địa chỉ giới hạn.

Trang 28

Bộ xử lý: dữ liệu và điều khiển

• Ôn lại: hiện thực các câu lệnh MIPS (ch 4).

• Các nhóm lệnh:

– Bộ nhớ: lw, sw.

– Số học/Luận lý: add, addu, sub, subu, and, or, xor, nor, slt, sltu.

– Số học/Luận lý (lệnh thi hành nhanh): addi, addiu, andi, ori, xori, slti, slitu.

– Điều khiển: beq, j.

Trang 29

Góc nhìn trừu tượng

• 2 loại chức năng:

– Đơn vị tác động lên giá trị dữ liệu

– Đơn vị lưu trữ trạng thái

Trang 31

Giải mã lệnh

• Bước giải mã lệnh bao gồm

– Chuyển mã tối ưu (của câu lệnh đã nạp) và các hàm đk đến bộ điều khiển

– Đọc 2 giá trị từ tập tin thanh ghi

Trang 32

Thực thi lệnh R

• Các phép toán: add, sub, slt, and, or.

• rd = funct(rs, rt, op)

Trang 34

Thực thi lệnh I

• Lệnh I (rẽ nhánh) được thực thi

– So sánh toán hạng rs và rt (đã đọc từ tập tin thanh ghi khi giải mã)

– Tính toán địa chỉ đích từ

● Base register là giá trị hiện tại của PC.

● Giá trị offset đang lưu, được chuyển thành giá trị

32 bits có dấu, và dịch trái 2 bits (để tạo địa chỉ

Trang 35

Thực thi lệnh J

• Lệnh nhảy được thực thi:

– Thay thế 28 bits thấp của PC bởi 26 bits thấp của câu lệnh (cần dịch trái 2 bits)

Trang 36

Lưu ý!

• Các cấu trúc đã trình bày chưa đề cập:

– ALU chưa tính đúng (ví dụ phép cộng nhưng

“bit nhớ” chưa nhập vào: cần thời gian cập nhật)

– Thời gian thiết lập thanh ghi, thời gian trễ

Trang 37

• Ví dụ: quy trình có nhiều công đoạn

– Nhà máy SX sẽ đợi 1 sản phẩm hoàn chỉnh

ra lò?

– Hay từng công đoạn liên tục lấy sản phẩm vào để hoàn thiện?

Trang 38

Pipeline: Ví dụ

• An, Bình, Châu, Dũng cần giặt

quần áo của từng người.

Trang 39

Pipeline: Ví dụ

• Nếu thực hiện tuần tự.

Trang 40

Pipeline: Ví dụ

• Nếu thực hiện “pipeline”.

Trang 41

• Pipeline tăng “throughput”, nhưng không không giảm “latency”

– Mỗi 30 phút có 1 bạn hoàn tất việc giặt quần áo.

– Nhưng với mỗi người, vẫn phải mất 2 giờ.

• Giới hạn của pipeline

– Quá trình tính toán phải khả phân chia.

Trang 42

• Thực tế sử dụng tuyến địa chỉ dữ liệu

tuyến

Trang 44

CPU 8086-8088

Trang 45

• Địa chỉ luận lý : dùng

trong chương trình

– 2 thành phần segment : offset

– Dùng thanh ghi đoạn chứa segment

Trang 48

Các lệnh cơ bản

Trang 49

Các lệnh cơ bản

Trang 50

Các lệnh cơ bản

Trang 51

Các lệnh cơ bản

Trang 52

Các lệnh cơ bản

Trang 53

Các lệnh cơ bản

Trang 54

Các lệnh cơ bản

Ngày đăng: 20/12/2013, 13:48

HÌNH ẢNH LIÊN QUAN

• Một số thanh ghi điển hình - khái quát nói về cpu
t số thanh ghi điển hình (Trang 13)

TỪ KHÓA LIÊN QUAN

w