10
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC HÀNG HẢI KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO VI XỬ LÝ Môn học : Kỹ thuật vi xử lý Lớp : CNT52ĐH2 - N01 Nhóm : 14 SV thực hiện : Phạm Quốc Khánh - 44775 Quách Nhật Tùng - 43221 Vũ Tuấn Minh - 43056

VIXULY.docx

Embed Size (px)

Citation preview

Page 1: VIXULY.docx

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC HÀNG HẢI

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO VI XỬ LÝ

Môn học : Kỹ thuật vi xử lý

Lớp : CNT52ĐH2 - N01

Nhóm : 14

SV thực hiện : Phạm Quốc Khánh - 44775

Quách Nhật Tùng - 43221

Vũ Tuấn Minh - 43056

Page 2: VIXULY.docx

MỤC LỤC

I.Đơn vị giao tiếp Bus ( Bus Interface Unit ) :...........................................................................................2

II.Hàng đợi nhận trước (Prefetch Unit Instruction Queue).....................................................................3

III.Đơn vị quản lý bộ nhớ (Memory Managerment Unit).........................................................................3

IV.Đơn vị nguyên (Integer Unit)...............................................................................................................4

V.Đơn vị dấu chấm động (Floating-Point Unit)........................................................................................5

1

Page 3: VIXULY.docx

I.Đơn vị giao tiếp Bus ( Bus Interface Unit ) :

- Đơn vị này xử lý tất cả truyền dữ liệu và địa chỉ trên Bus cho EU( đơn vị thực

hiện) . Đơn vị này gửi ra địa chỉ , nạp lệnh từ bộ nhớ , đọc dữ liệu từ cổng và bộ

nhớ và ghi dữ liệu vào cổng và bộ nhớ .

Các bộ phận khác nhau của BIU :

a. Hàng đợi lệnh (Instruction Queue)

Trong khi EU đang giải mã hay thi hành một lệnh không cần sử dụng các hệ

thống BUS, BIU sẽ đưa vào sáu bytes lệnh tiếp theo. BIU chứa các byte này

trong một thanh ghi FIFO (First - In - First - Out) gọi là hàng đợi. Khi EU đã sẵn

sàng cho lệnh tiếp theo, nó sẽ chỉ cần đọc các byte lệnh trong hàng đợi của BIU.

Việc này làm tăng tốc độ của hệ thống, và kỹ thuật này được gọi là pipelining.

b. Các thanh ghi đoạn (Segment Register)

Gồm bốn thanh ghi CS, DS, ES, SS, dùng để chứa địa chỉ đoạn. Bộ nhớ trong

1MB của CPU 8088 được chia thành các đoạn, mỗi đoạn chứa tối đa 64 KB, ở

2

Page 4: VIXULY.docx

mỗi thời điểm CPU chỉ có thể truy xuất tối đa 4 đoạn được xác định bởi 4 thanh

ghi CS, DS, ES và SS. Cụ thể:

Thanh ghi CS (Code Segment): dùng để chứa địa chỉ đoạn của đoạn chứa

mã lệnh.

Thanh ghi DS (Data Segment): dùng để chứa địa chỉ đoạn của đoạn chứa

dữ liệu.

Thanh ghi ES (Extra Segment): dùng để chứa địa chỉ đoạn của đoạn chứa

dữ liệu bổ sung.

Thanh ghi đoạn SS (Stack Segment): dùng để chứa địa chỉ đoạn của đoạn

chứa Stack.

c. Con trỏ lệnh IP (Instruction Pointer)

Dùng để xác định địa chỉ offset của ô nhớ chứa mã lệnh của lệnh kế tiếp sẽ được

CPU thi hành (ô nhớ này nằm trong đoạn được xác định bởi thanh ghi CS).

Khi CPU thực hiện một lệnh, thanh ghi IP sẽ tự động thay đổi để chỉ đến địa chỉ

offset của ô nhớ chứa lệnh sẽ được CPU thi hành kế tiếp.

II.Hàng đợi nhận trước (Prefetch Unit Instruction Queue)Chứa mã lệnh chờ được xử lý.Hàng đợi lệnh có kích thước 4 byte đối với 8088

và 6 byte với 8086.Sở dĩ có điều này là vì hàng đợi lệnh phải có kích thước có

thể chứa được ít nhất một lệnh có độ dài bất kỳ (dài nhất) của bộ vi xử lý.Mà tập

lệnh của 8086 có độ dài từ 1-6 byte.

Hàng đợi lệnh làm việc theo cơ chế FIFO (First In First Out);nghĩa là lệnh nào

được đưa vào hàng đợi lệnh trước sẽ được xử lý trước

3

Page 5: VIXULY.docx

Các lệnh này đc chuyển tới khối giải mã lệnh DU (decoding unit)

Phần lớn các họ Vi xử lý ngày nay cho phép 1 số lệnh đồng thời đc giải mã (xử

lý song song )

III.Đơn vị quản lý bộ nhớ (Memory Managerment Unit)MMU của bộ VXL có các chức năng:

- Chuyển đổi địa chỉ ảo (virtual address) hay địa chỉ logic thành địa chỉ vật lý

(physical), tức là địa chỉ thực. Địa chỉ vật lý đc chuyển tới Cache, hoặc thông

qua BIU và Bus địa chỉ tới BN bên ngoài bộ vi xử lý để chọn vùng nhớ.

- Đảm bảo cơ chế phân trang trong tổ chức bộ nhớ ảo

- Đảm bảo cơ chế phân đoạn (segment) cho bộ nhớ

- Bảo vệ bộ nhớ cho cả hai cơ chế phân trang và phân đoạn

- Quản lý bộ đệm biến đổi truy cập nhanh TLB và quản lý bộ nhớ dự trữ chuyển

đổi ATC. Phục vụ quá trình chuyển đổi các trang nhớ ảo thành trang nhớ vật lý.

Đ.vị phân trang, TLB (hoặc ATC) đều có trong MMU của hầu hết các bộ vi xử

lý hiện đại. Trong Intel X86 có đơn vị phân đoạn. Trong trường hợp không có

TLB, MMU chứa phần logic giám sát truy nhận đến các bảng và thư mục tương

ứng trong bộ nhớ chính.

IV.Đơn vị nguyên (Integer Unit)- Có đặc tính cấu trúc phục vụ cho xử lý song song , nó có các đơn vị thao tác

thực hiện các phép số học nguyên cộng/trừ, nhân/chia, có tập các thanh ghi 32

bit hoặc 64 bit.

- Các BVXL CISC thường có 8,16 thanh ghi.

- Các VXL RISC có tới 32 thanh ghi, đôi khi có hơn 100 thanh ghi.

4

Page 6: VIXULY.docx

- Dòng dữ liệu đi theo 2 đường để tới các đơn vị thao tác các phép tính số học.

Đơn vị giải mã phân chia lệnh DID nhận các chỉ thị đã đc giải mã của CU và gửi

chúng tới các đvị x.lý các phép tính thích ứng.

- Các phép tính với số nguyên chuyển tới các đơn vị xử lý các số nguyên của IU,

các phép tính dấu phẩy động chuyển tới đơn vị xử lý dấu phẩy động FPU, …

- Dữ liệu từ D cache thông qua bus dữ liệu thao tác ODB chuyển tới các đơn vị

xử lý

- đơn vị xử lý ống cho phép thực hiện các lệnh dịch nhiều bit nhanh trong 1 chu

kì đơn.

V.Đơn vị dấu chấm động (Floating-Point Unit)FPU là một phần của một hệ thống máy tính thiết kế đặc biệt để thực hiện các

hoạt động trên các số dấu chấm. Hoạt động điển hình là cộng, trừ, nhân, chia,

căn bậc hai, bit thay đổi. Một số hệ thống (đặc biệt là lớn hơn, kiến trúc

microcode-based) cũng có thể thực hiện chức năng siêu việt khác nhau như tính

toán theo cấp số nhân hoặc lượng giác, mặc dù trong hầu hết các bộ vi xử lý hiện

đại được thực hiện chỉ với thói quen thư viện phần mềm.

Trong mục đích chung kiến trúc máy tính hiện đại nhất, một hoặc nhiều FPU

được tích hợp với CPU, tuy nhiên nhiều bộ xử lý nhúng, thiết kế đặc biệt cũ,

không có hỗ trợ phần cứng cho hoạt động dấu chấm động.

Trong quá khứ, một số hệ thống đã thực hiện dấu chấm động thông qua một bộ

xử lý đồng chứ không phải là một đơn vị tích hợp, trong thời đại vi tính, điều này

nói chung là một mạch tích hợp duy nhất, trong khi trong hệ thống cũ nó có thể

là một bảng mạch toàn bộ hoặc một cabin.

5

Page 7: VIXULY.docx

Không phải tất cả máy tính có một FPU phần cứng. Trong trường hợp không có

FPU, nhiều chức năng FPU có thể được mô phỏng, trong đó tiết kiệm chi phí

phần cứng tăng của một FPU nhưng là chậm hơn đáng kể. Thi đua có thể được

thực hiện trên bất kỳ của nhiều cấp độ: trong CPU như microcode, như một chức

năng hệ điều hành, hoặc trong mã không gian sử dụng.

Trong máy tính hiện đại nhất, có một số bộ phận của hoạt động dấu chấm động

từ các integer operations. Sự phân chia này thay đổi đáng kể bởi kiến trúc, một

số, như Intel x86 đã dành riêng ghi dấu chấm động, trong khi một số mang nó

như xa như các chương trình ép xung độc lập.

6