1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Phần mềm mô phỏng vi xử lý PCSpim and emu8086

41 1,3K 14
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 đề Phần mềm mô phỏng vi xử lý PCSpim and Emu8086
Người hướng dẫn Nguyễn Thành Kiên
Trường học Học viện Công nghệ Bưu chính Viễn thông <a href='https://www.ptit.edu.vn'>https://www.ptit.edu.vn</a>
Chuyên ngành Kỹ thuật máy tính
Thể loại Báo cáo môn học
Thành phố Hà Nội
Định dạng
Số trang 41
Dung lượng 823 KB

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

Nội dung

Phần mềm mô phỏng vi xử lý PCSpim emu8086

Trang 2

Nội dung trình bày

I PCSpim

1 Kiến trúc MIPS

2 Phần mềm PCSpim

II Emu8086

Trang 3

Nội dung trình bày

I PCSpim

1 Kiến trúc MIPS

2 Phần mềm PCSpim

II Emu8086

Trang 4

Nội dung trình bày

I PCSpim

1 Kiến trúc MIPS

1.1 Lịch sử kiến trúc VXL 1.2 Lịch sử dòng xử lý MIPS 1.3 Kiến trúc MIPS

Kiến trúc tập thanh ghi Kiến trúc tập lệnh

1.4 Hazards

2 Phần mềm PCSpim

II Emu8086.

Trang 5

1.1 Lịch sử kiến trúc VXL

 1980: CISC – Complex Instruction Set Computer

 Tối thiểu hóa bộ nhớ lưu trữ lệnh bằng cách tăng tính phức tạp.

 Thực hiện nhiều lệnh bậc cao hơn là chỉ thực hiện

1 thao tác.

 Các lệnh thường có toán hạng trực tiếp từ bộ nhớ.

 Có nhiều chế độ đánh địa chỉ khác nhau.

 Thực hiện với cơ chế vi mã.

Các bộ VXL CISC: Digital VAX, Motorola MC

68000, Intel 8086, Pentium.

Trang 6

1.1 Lịch sử kiến trúc VXL

 1990: RISC – Reduced Instruction Set Computer

 Vấn đề: dung lượng bộ nhớ tăng nhanh, tốc độ VXL

chưa cao đủ đáp ứng trao đổi dữ liệu

Trang 7

Giới thiệu chung

 MIPS Microprocessor w/out Interlocked Pipeline Stage

là thiết kế bộ xử lý RISC 32/64 bit của hãng

MIPS Technology

 Cuối thập niên 90, kiến trúc MIPS chiếm hơn 30% thị trường RISC.

 Kiến trúc MIPS được sử dụng rộng rãi trong

các hệ nhúng, các thiết bị chạy hệ điều hành Windows CE, Cisco router và các thiết bị chơi game như Nintendo 64, Sony PlayStation,

PlayStation 2.

Trang 8

1.2 Lịch sử dòng xử lý MIPS

 Năm 1981, một nhóm tại đại học Standford

do John L.Hennessy đứng đầu đã đưa ra

những thiết kế đầu tiên mở đầu cho những

thế hệ XL MIPS

 Năm 1984, Hennessy đã rời đại học Standford

ra ngoài thành lập công ty MIPS Computer

System

 Năm 1985, ra phiên bản MIPS đầu tiên R2000

Trang 10

1.3 Kiến trúc MIPS

1.3.1 Tập thanh ghi MIPS R3000

1.3.2 Tập lệnh MIPS R3000

Trang 11

1.3.1.Tập thanh ghi MIPS R3000

 Tập các thanh ghi của R3000 bao gồm:

 32 thanh ghi 32 bit = 31 thanh ghi đa năng + 1 thanh ghi đầu tiên là hằng số 0.

 32 thanh ghi dấu phẩy động: $f0,$f1,…,$f31

(dùng thành cặp để biểu diễn số có thực độ chính xác kép).

 Hai thanh ghi đặc biệt LO và HI - lưu trữ kết quả của phép nhân/chia Việc truy nhập nội dung các thanh ghi này sử dụng các câu lệnh đặc biệt VD: mflo, mfhi.

Trang 12

1.3.1.Tập thanh ghi MIPS R3000

Tên Số Ý nghĩa

$zero $0 Hằng số 0

$at $1 Assembler Temporary

$v0-$v1 $2-$3 Giá trị trả lại của hàm hoặc biểu thức

$a0-$a3 $4-$7 Các tham số của hàm

Trang 15

Các lệnh số học và logic

Trang 16

Các lệnh so sánh

Trang 17

Các lệnh rẽ nhánh có đkiện

Trang 18

Các lệnh thao tác hằng số

Trang 19

Các lệnh nhảy

Trang 20

Các lệnh chuyển DL

Trang 21

Các lệnh nhân chia

Trang 22

Các lệnh ngoại lệ và ngắt

Trang 23

Các dịch vụ hệ thống

Trang 24

1.4 Hazards

 Hazards là gì?

Hazards là hiện tượng xảy ra khi ống lệnh pipeline truy cập

1 tài nguyên mà nó chưa sẵn sàng hoặc sau 1 lệnh rẽ nhánh

VD:

addi $t0, $zero, 10 ; $t0 = $zero + 10 add $t1, $zero, $t0 ; $t1=$zero + $t0 MIPS có ống lệnh 5 bước: Fetch - Decode - Execute - Memory - Write back

Câu lệnh thứ hai sử dụng giá trị thanh ghi $t0 khi giải mã lệnh

(bước thứ hai trong ống lệnh)

Vấn đề là giá trị ($t0=10) chưa được ghi vào thanh ghi khi

giải mã lệnh thứ hai >> Giá trị $t1 sẽ không như mong muốn.

Trang 25

 Control hazard: Một lệnh rẽ nhánh được thực thi với trễ.

Trang 26

1.4 Hazards

 Các loại Data hazard:

 Đọc sau khi ghi

add $t1, $zero, $zero addi $s0, $zero, 0xFF

sub $t0, $s0, $t1

 Ghi sau khi đọc

 Ghi sau khi ghi

add $t1, $zero, $zero addi $t1, $zero, 0xA

Trang 28

Nội dung trình bày

I PCSpim

1 Kiến trúc MIPS

2 Phần mềm PCSpim

II Emu8086

Trang 29

2 Phần mềm PCSpim

 Tổng quan về Spim

 Đặc điểm Spim

 Giao diện PCSpim

 Các thao tác với PCSpim

 Cấu trúc chương trình PCSpim

 Demo

Trang 30

Giới thiệu chung về Spim(MIPS)

 Spim là bộ phần mềm mã nguồn mở, mô phỏng hoạt

động của kiến trúc xử lý MIPS 32bit R2000/R3000

Do giáo sư James Larus khoa Khoa học máy tính, trường đại học University of Wisconsin-Madison thực hiện.

 Spim có nhiều phiên bản khác nhau hoạt động trên nhiều nền tảng HĐH:

 Unix, Linux và Mac OS X có 2 phiên bản:

 Spim: thao tác trên giao diện terminal đơn giản.

 Xspim: thao tác trên cửa sổ đồ họa.

 Microsoft Windows có 2 phiên bản:

 Spim: thao tác trên giao diện terminal đơn giản.

 PCSpim: thao tác trên cửa sổ đồ họa của Windows.

(PCSpim 7.2.1 - Windows XP)

Trang 31

Đặc điểm của Spim

 Cho phép đọc và thực thi các mã

chương trình viết bằng ngôn ngữ

Assembly cho các bộ xử lý MIPS32

 Cung cấp trình gỡ lỗi

 Cung cấp 1 tập các dịch vụ tối thiểu của

1 hệ điều hành (system call)

Hỗ trợ tốt cho nghiên cứu hoạt động mô phỏng 1 bộ VXL

Trang 32

Giao diện phần mềm PCSpim

Vùng thanh ghi trong CPU và FDU Lệnh: đ/c + mã lệnh + lệnh gợi nhớ

Bộ nhớ chương trình + Stack Thông báo của PCSpim

Cửa sổ chính

Cửa sổ Console đầu hiển thị ra của bộ XL

Trang 33

Các thao tác với PCSpim

Trang 34

Cấu trúc chương trình PCSpim

 File mã nguồn assembly là các file text có chứa phần khai báo dữ liệu và mã chương trình.

 Các khai báo dữ liệu:

 Được đặt trong phần chương trình với khai báo data

 Dùng để khai báo tên các biến sử dụng trong chương trình

 Mã chương trình

 Được đặt trong phần chương trình với khai báo text

 Chứa mã lệnh của chương trình

 Điểm bắt đầu đặt tại nhãn main:

 Điểm kết thúc nằm sau lời gọi hệ thống để thoát

 Chú thích

 Trong 1 dòng, mọi ký hiệu đặt sau dấu # đều được coi là chú thích

và được bỏ qua khi dịch mã nguồn

Trang 35

Cấu trúc chương trình PCSpim

 Cấu trúc chương trình PCSpim

.data (Khai báo hằng và biến.)

text # Main (must be global).

globl main

main: (Bắt đầu chương trình.)

li $v0, 10 # Syscall to exit.

syscall

Trang 36

Nội dung trình bày

I PCSpim

1 Phần mềm PCSpim

2 Bộ xử lý MIPS

II Emu8086

Trang 37

 Emu8086 là phần mềm mô phỏng vi xử

lý 8086 tích hợp sẵn trình biên dịch

8086 Assembler

 Bộ mô phỏng chạy các chương trình

trên máy ảo mô phỏng phần cứng như màn hình, bộ nhớ, các thiết bị vào ra

Các thiết bị ngoại vi khá đa dạng và cho phép user tích hợp thêm vào

Trang 38

Đặc điểm của Emu8086

 Tích hợp sẵn trình biên dịch cho phép dịch

source code.

 Cho phép mô phỏng hoạt động của bộ vi xử

lý 8086 và cho phép thực hiện chương trình trên bộ mô phỏng, cho phép xem các thanh ghi, cờ, xem và chỉnh sửa các ô nhớ trong khi chương trình đang chạy.

 Cho phép mô phỏng các phần cứng ngoại vi như: màn hình, máy in, LED, mô tơ bước

Trang 39

Giao diện phần mềm

Emu8086

Cửa sổ debug

Trang 40

Kết luận

 PCSpim và Emu8086 là hai trong số

những phần mềm mô phỏng các bộ XL được sử dụng rộng rãi nhất tại các

trường trên thế giới Ưu điểm lớn nhất của hai phần mềm này là sự đơn giản trong cách thực hiện rất phù hợp cho mục đích học tập và nghiên cứu

Trang 41

Kết luận

 Hiện nay trên thế giới có rất nhiều khóa học

sử dụng hai phần mềm này để bổ trợ cho quá trình học tập Một số môn học sử dụng hai

phầm mềm này là KTMT, Ngôn ngữ

Assembly, Các hệ thống VXL

 Việc ứng dụng và khai thác hai phần mềm

này sẽ bổ trợ cho các môn học về máy tính, nhằm nâng cao kiến thức cũng như kinh

nghiệm của sinh viên.

Ngày đăng: 11/05/2014, 15:07

TỪ KHÓA LIÊN QUAN

w