1. Trang chủ
  2. » Thể loại khác

Cấu trúc máy tính phkkhanh c2 ctmt ppt

33 121 0

Đ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

Định dạng
Số trang 33
Dung lượng 345,58 KB

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

Nội dung

Chương 2 7Kiến trúc nội Cơ chế siêu phân luồng hyper – threading Là một dạng của kỹ thuật đa luồng song song SMT – Simultaneous Multi Threading Chia ứng dụng thành nhiều luồng khác nhau

Trang 3

ES SS DS IP CS

4 3 2 1 5

Thực thi

Trang 4

Chương 2 7

Kiến trúc nội

Cơ chế siêu phân luồng (hyper – threading)

Là một dạng của kỹ thuật đa luồng song song (SMT – Simultaneous Multi

Threading)

Chia ứng dụng thành nhiều luồng khác nhau

Các luồng được thực thi tại một thời điểm

Mỗi luồng ứng với một AS (Architectural State)

Các luồng dùng chung tài nguyên thực thi

8:17 AM

Kiến trúc nội

Cơ chế siêu phân luồng (hyper – threading)

Bộ xử lý đa nhân Siêu phân luồngAS

Tài nguyên

thực thi

ASTài nguyên thực thi

AS ASTài nguyên thực thi

So sánh giữa hệ thống đa nhân (multi-core) và siêu phân luồng

8:17 AM

Trang 5

ADD AL,3Lần 3: ADD BL,3

Luồng 1

Luồng 2

Số lần thực thi: 3

8:17 AM

Trang 6

BX (Base): 16 bit

DH (High): 8 bit cao DL(low): 8 bit thấp

DX (Data): 16 bit

Trang 7

Thanh ghi chỉ số và con trỏ

BP (Base Pointer): 16 bit

SP (Stack Pointer): 16 bit

SI (Source Index): 16 bit

DI (Destination Index): 16 bit

Thanh ghi đoạn

CS (Code Segment): 16 bit

DS (Data Segment): 16 bit

SS (Stack Segment): 16 bit

ES (Extra Segment): 16 bit

Các thanh ghi

Trang 8

Thanh ghi điều khiển và trạng thái

IP (Instruction Pointer): 16 bit Flag register: 16 bit

Opcode: thay đổi tuỳ theo lệnh

Lệnh MOV: 100010

Lệnh ADD: 000000

Lệnh CMP: 001110

D (Direction): chiều truyền theo

thanh ghi cơ sở

Mã hoá lệnh

8:17 AM

Trang 9

000 [BX + SI] [BX + SI + addr8] [BX + SI + addr16] AX AL

001 [BX + DI] [BX + DI + addr8] [BX + DI + addr16] CX CL

010 [BP + SI] [BP + SI + addr8] [BP + SI + addr16] DX DL

011 [BP + DI] [BP + DI + addr8] [BP + DI + addr16] BX BL

100 [SI] [SI + addr8] [SI + addr16] SP AH

101 [DI] [DI + addr8] [DI + addr16] BP CH

110 [addr16] [BP + addr8] [BP + addr16] SI DH

Mã hoá lệnh

8:17 AM

Trang 12

CX-> [SI]

b

MOV

1 0 0 0 1 0 0 1 1 0 0 0 1 1 0 0

Độ dời: -0123h (2 byte)  bù 2: FEDDh

Byte cao: FEh

Byte thấp: DDh

1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 0

Mã hoá lệnh

8:17 AM

Trang 14

Độ dời: -1234h (2 byte)  bù 2: EDCCh

Byte cao: EDhByte thấp: CCh

Trang 15

0 0 0 0 0 0 0 1

Mã hoá lệnh

8:17 AM

Giá trị tức thời Bộ nhớ

Trang 16

000 [BX + SI] [BX + SI + addr8] [BX + SI + addr16] AX AL

001 [BX + DI] [BX + DI + addr8] [BX + DI + addr16] CX CL

010 [BP + SI] [BP + SI + addr8] [BP + SI + addr16] DX DL

011 [BP + DI] [BP + DI + addr8] [BP + DI + addr16] BX BL

100 [SI] [SI + addr8] [SI + addr16] SP AH

101 [DI] [DI + addr8] [DI + addr16] BP CH

110 [addr16] [BP + addr8] [BP + addr16] SI DH

Trang 17

Chương 2 33

20 bit địa chỉ

2 20 địa chỉ (1,048,576)

Byte 1,048,575 Byte 1,048,574

Byte 1 Byte 0

Byte 2Byte 0

Byte 1,048,575Byte 1,048,573

Byte 3Byte 1Bank chẵn Bank lẻ

Word dữ liệu 16 bit (địa chỉ chẵn)8:17 AM

Trang 18

Byte 1,048,575 Byte 1,048,573

Byte 3 Byte 1 Bank chẵn Bank lẻ

Word dữ liệu 16 bit (địa chỉ chẵn) 8:17 AM

Byte 3Byte 1Bank chẵn Bank lẻ

Word dữ liệu 16 bit (địa chỉ lẻ)8:17 AM

Chế độ bình thường (tác động đến 1M bộ nhớ):

Trang 19

Chương 2 37Byte 00000h

SS = 2345hExtra segment

ES = 1234h

Địa chỉ đoạn phải kết thúc bằng giá trị 0

8:17 AM

Chế độ bình thường (tác động đến 1M bộ nhớ):

Trang 20

Địa chỉ segment: 2000hĐịa chỉ offset: 3456h

Địa chỉ logic:

2000h : 3456h

8:17 AM

Chế độ bình thường (tác động đến 1M bộ nhớ):

Trang 21

Địa chỉ segment: 2100hĐịa chỉ offset: 2456h

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ segment, tính địa chỉ offset:

Thêm số 0 vào sau địa chỉ segment

Thực hiện trừ với địa chỉ vật lý

Kết quả chấp nhận được khi 0 và  16 bit

8:17 AM

Chế độ bình thường (tác động đến 1M bộ nhớ):

Trang 22

Chương 2 43

Phân đoạn bộ nhớ

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ segment, tính địa chỉ offset:

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ segment, tính địa chỉ offset:

Địa chỉ segment 6453h  64530h

Địa chỉ vật lý 75643h 75643h

64530h

Offset 20 bit  không tồn tại địa chỉ logic có segment là 6453h

Chuyển địa chỉ 75643h sang địa chỉ logic, biết rằng segment là 6453h:

11113h-

8:17 AM

Chế độ bình thường (tác động đến 1M bộ nhớ):

Trang 23

Chương 2 45

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ segment, tính địa chỉ offset:

Địa chỉ segment 7853h  78530h

Địa chỉ vật lý 75643h 75643h

78530h

Offset âm  không tồn tại địa chỉ logic có segment là 7853h

Chuyển địa chỉ 75643h sang địa chỉ logic, biết rằng segment là 7853h:

Số âm-

8:17 AM

Chế độ bình thường (tác động đến 1M bộ nhớ):

Phân đoạn bộ nhớ

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ segment, tính địa chỉ offset:

Trang 24

Chương 2 47

Phân đoạn bộ nhớ

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ offset, tính địa chỉ segment:

Lấy địa chỉ vật lý trừ địa chỉ offset

Kết quả chấp nhận được khi 0 và kết thúc bằng số 0

Địa chỉ segment là kết quả phép trừ đã bỏ đi số 0 cuối cùng

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ offset, tính địa chỉ segment:

Địa chỉ offset 6453h

Địa chỉ vật lý 75643h

75643h6453h

Địa chỉ logic: 6F1Fh : 6453h

Chuyển địa chỉ 75643h sang địa chỉ logic, biết rằng offset là 6453h:

6F1F0h-

Địa chỉ segment 6F1Fh

8:17 AM

Chế độ bình thường (tác động đến 1M bộ nhớ):

Trang 25

Chương 2 49

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ offset, tính địa chỉ segment:

Địa chỉ offset 5321h

Địa chỉ vật lý 75643h 75643h

5321h

Không tồn tại địa chỉ logic có địa chỉ offset là 5321h

Chuyển địa chỉ 75643h sang địa chỉ logic, biết rằng offset là 5321h:

70322h-

Địa chỉ segment không chấp nhận

Chuyển từ địa chỉ vật lý  địa chỉ logic:

Biết trước địa chỉ offset, tính địa chỉ segment:

Địa chỉ offset 6453h

Địa chỉ vật lý 05643h 05643h

6453hChuyển địa chỉ 05643h sang địa chỉ logic, biết rằng offset là 6453h:

Số âm-

Không tồn tại địa chỉ logic có địa chỉ offset là 6453h

Địa chỉ segment không chấp nhận

8:17 AM

Chế độ bình thường (tác động đến 1M bộ nhớ):

Trang 26

Chương 2 51

Phân đoạn bộ nhớ

Chuyển từ địa chỉ logic  địa chỉ vật lý :

Thêm số 0 vào sau địa chỉ segment

Thực hiện cộng với địa chỉ offset

Chuyển địa chỉ 6578h : 7598h sang địa chỉ vật lý:

Địa chỉ segment 6578h  65780h

Địa chỉ offset 7598h

65780h7598h6CD18hĐịa chỉ vật lý: 6CD18h

Chế độ bảo vệ (protected mode):

Cho phép truy xuất tới vùng nhớ trên 1M

Các thanh ghi đoạn gọi là thanh ghi chọn đoạn (segment selector)

Thanh ghi chọn đoạn dùng để chọn một phần tử trong bảng mô tả

Bảng mô tả (descriptor table) có kích thước 64 KB

Bảng mô tả toàn cục (GDT – Global descriptor table): chứa thông

tin các đoạn của bộ nhớ mà tất cả các chương trình có thể truy xuất

Bảng mô tả cục bộ (LDT – Local descriptor table): chứa thông tin

các đoạn của bộ nhớ mà một chương trình sử dụng

Các thanh ghi đoạn: CS, DS, ES, SS, FS, GS

Trang 27

8:17 AM Chương 2 53

Chế độ bảo vệ (protected mode):

Nội dung thanh ghi đoạn:

Chế độ bảo vệ (protected mode):

Nội dung một entry của bảng mô tả: 8B = 64 bit

Trang 28

8:17 AM Chương 2 55

32 bit base: địa chỉ cơ sở

20 bit limit: kích thước tối đa của đoạn

8 bit access

Phân đoạn bộ nhớ

Chế độ bảo vệ (protected mode):

Nội dung một entry của bảng mô tả: 8B = 64 bit

Pr (Present) = 1: selector hợp lệPrivl: giống RPL

Ex (Executable) = 1: codesegment; = 0: data segment

Direction: dùng cho data selector, = 1 xác định chiều tăng, = 0 xác định chiều giảm

Comforming: dùng cho code selector, =1: xác định mã lệnh trong segment có thể

thực thi từ mức ưu tiên bằng hay thấp hơn, =0: xác định mã lệnh chỉ có thể thực

thi theo mức ưu tiên như trong Privl

Nội dung một entry của bảng mô tả: 8B = 64 bit

Readable: dùng cho code selector, cho phép đọc từ segment hay không và luôn

luôn cấm ghi vào segment

Writeable: dùng cho data selector, cho phép ghi vào segment hay không và luôn

luôn cho phép đọc từ segment

Trang 29

Gr = 0  kích thước đoạn tối đa là 74,565 byte

Gr = 1  kích thước đoạn tối đa là 74,565 x 4KB = 298,260 KByte

Sz (Size): =0 xác định chế độ 16 bit, =1 xác định chế độ 32 bit

Trang 31

Gián tiếp thanh ghi

MOV AX,[BX]

MOV AX,DS:[BX]

DS BX

Trang 32

Gián tiếp thanh ghi có nền

MOV AX,[BX+10h]

MOV AX,DS:[BX+10h]

DS BX

Trang 33

Gián tiếp thanh ghi có nền, chỉ số và độ dời

Ngày đăng: 21/01/2018, 11:53

TỪ KHÓA LIÊN QUAN

w