HỌC VIỆN AN NINH NHÂN DÂN
KHOA CÔNG NGHỆ VÀ AN NINH THÔNG TIN
BÀI TẬP NGHIÊN CỨU
KIẾN TRÚC MIPS
Nhóm 3
I . HỢP NGỮ
Hợp ngữ (assembly language) là một ngôn ngữ cấp thấp dùng để viết các chương trình máy tính
I . HỢP NGỮ
1. Hợp ngữ là gì ?
Một chương trình viết bằng hợp ngữ sẽ được dịch sang ngôn ngữ máy bằng một tiện ích gọi là trình hợp dịch
Hợp ngữ đã từng được dùng rộng rãi trong tất cả các khía cạnh lập trình, nhưng ngày nay nó có xu hướng chỉ được dùng trong một số lãnh vực hẹp, chủ yếu để giao tiếp trực tiếp vớiphần cứng hoặc xử lý các vấn đề liên quan đến tốc độ cao điển hình như các trình điều khiển thiết bị, các hệ thống nhúng cấp thấp và các ứng dụng thời gian thực.
I . HỢP NGỮ
1. Ứng dụng của Hợp ngữ
Hợp ngữ có 5 ứng dụng chính
Khi các thiết bị hoạt động độc lập mà không cần tài nguyên hay các thư viện liên kết với ngôn ngữ bậc cao. Đây có lẽ là trường hợp phổ biến nhất
Khi cần giao tiếp trực tiếp với phần cứng như trình điều khiển thiết bị, hoặc khi muốn dùng các chỉ thị vi xử lý mà trình biên dịch không tận dụng được
Khi cần tối ưu khắt khe như các thuật toán có dùng vòng lặp tiêu tốn nhiều năng lực xử lý
Khi một hệ thống cần phải viết mã thủ công để tận dụng nguồn tài nguyên hạn hẹp. Ngày nay điều đó có vẻ không phổ biến nữa do giá cả CPU giảm đồng thời hiệu năng hoạt động CPU đã cải thiện đáng kể.
Khi các ngôn ngữ bậc cao không thể áp dụng được trên một CPU mới hoặc CPU chuyên dụng.
II . KIẾN TRÚC CISC VÀ RISC
II . KIẾN TRÚC CISC VÀ RISC
Kiến trúc CISC
a. Khái niệm
Các đặc tính này khiến người ta ưu tiên chọn các kiểu ô nhớ - ô nhớ và ô nhớ - thanh ghi, với những lệnh phức tạp và dùng nhiều kiểu định vị.
Vào thời kỳ này, người ta nhận thấy các chương trình dịch khó dùng các thanh ghi, và các vi lệnh thì được thực hiện nhanh hơn các lệnh đồng thời phải làm giảm độ dài các chương trình.
CISC (Complex Instruction Set Computer) - Kiến trúc với tập lệnh phức tạp, được nghĩ ra từ những năm 1960.
II . KIẾN TRÚC CISC VÀ RISC
Kiến trúc CISC
b. Đặc điểm
Kiến trúc CISC có 5 đặc điểm
Lệnh có độ dài thay đổi, phức tạp, có thể bao gồm một vài phép toán nhỏ, tuy nhiên lệnh của CISC gần với ngôn ngữ lập trình bậc cao.

Có nhiều chế độ địa chỉ phức tạp

Hỗ trợ nhiều kiểu dữ liệu phức tạp

Một lệnh có thể thực hiện trên nhiều chu kì

Sử dụng kĩ thuật điều khiển vi chương trình
II . KIẾN TRÚC CISC VÀ RISC
2. Kiến trúc RISC
a. Khái niệm
Hiện nay, các bộ vi xử lý phổ biến là ARM, SuperH, MIPS, SPARC, DEC Alpha, PA-RICS, PIC và PowerPC của IBM.
Đầu tiên, các dự án về RICS được bắt đầu từ IBM, Stanford và UC Berkeley vào cuối những năm 70 đầu những năm 80.
RISC (Reduce Instruction Set Computer) là một dạng của kiến trúc vi xử lý, trong đó phương pháp thiết kế các bộ vi xử lý theo hướng đơn giản hóa tập lệnh, thời gian thực thi tất cả các tập lệnh đều như nhau
II . KIẾN TRÚC CISC VÀ RISC
2. Kiến trúc CISC
b. Đặc điểm
Kiến trúc RICS có 6 đặc điểm
Một lệnh thực thi trong 1 chu kì.

Định dạng lệnh đơn giản, độ dài lệnh cố định nên dễ giải mã lệnh.

Các thanh ghi chung mục đích có thể sử dụng trong nhiều ngữ cảnh nên dễ thiết kế phần mềm biên dịch.

Chế độ địa chỉ đơn giản, các chế độ địa chỉ phức tạp được thực hiện thông qua chuỗi lệnh số học và lệnh nạp/ghi.

Thuận tiện cho việc thiết kế song song.

Chú trọng các thao tác với thanh ghi.
III . KIẾN TRÚC MIPS
III . KIẾN TRÚC MIPS
Tổng quan về Kiến trsuc MIPS
a. Khái niệm
Khoá học kiến trúc máy tính ở trường đại học thường tìm hiểu về kiến trúc MIPS. Kiến trúc cực kì ảnh hưởng bởi kiến trúc RISC sau này như là Alpha.

Ban đầu kiến trúc MIPS là 32bit, và sau đó là phiên bản 64 bit.
MIPS (Microprocessor without Interlocked Pipeline Stages) là kiến trúc bộ tập lệnh RISC phát triển bới MIPS Technologies.
MIPS (Microprocessor without Interlocked Pipeline) hình thành trên cơ sở RISC.
Năm 1981, John L. Hennessy đứng đầu một nhóm bắt đầu một công trình nghiên cứu về bộ xử lý MIPS đầu tiên tại Trường Đai học Standford.
Một thiết kế chủ chốt trong MIPS là yêu cầu câu lệnh phải hoàn thành trong một chu kì máy.
Năm 1984, Hennessy được thuyết phục về tính thương mại của thiết kế, và rời khỏi Stanford để thành lập MIPS Computer System.
Năm 1991 MIPS ra đời vi xử lý 64 bit đầu tiên, R4000. R4000 là sự tiến bộ về TLB.
III . KIẾN TRÚC MIPS
Tổng quan về Kiến trúc MIPS
b. Lịch sử phát triển
R2000 : xuất hiện trên thị trường vào năm 1985, được bổ sung thêm nhiều câu lệnh mới, có thể được khởi tạo ở chế độ big-endian hay little-endian,c ó 32 thanh ghi 32 bit, nhưng không có thanh ghi mã điều kiện.

R3000: Theo sau R2000 vào năm 1998, nó bổ sung thêm 32kB Cache (và sớm được tăng lên 64kB) cho các lệnh và dữ liệu, kèm theo đó là cơ chế cache coherency hỗ trợ cho nhiều bộ xử lý.

R4000: được đưa ra vào năm 1991, mở rộng tập lệnh MIPS để hỗ trợ đầy đủ kiến trúc 64 bit, chuyển FTU vào main để tạo ra một hệ thống chip đơn lẻ (Single-chip system), xử lý với tốc độ lên tới 100Mhz, tuy nhiên để đạt được tốc độ này bộ nhớ đệm phải bị giảm xuống còn 8kB và cần 3 chu kỳ để truy cập
III . KIẾN TRÚC MIPS
Tổng quan về Kiến trúc MIPS
c. Một số dòng vi xử lý thương mại MIPS đã được sản xuất
III . KIẾN TRÚC MIPS
Tổng quan về Kiến trúc MIPS
c. Một số dòng vi xử lý thương mại MIPS đã được sản xuất
Mẫu bộ vi sử lý MIPS ứng dụng trong máy PlayStation2

+ Operating Performance of 30 MIPS
+ Bus Bandwidth 132 MB/s
+ Instruction Cache 4 KB
+ Data Cache 1 KB (non associative, just 1024 bytes of mapped fast SRAM)
III . KIẾN TRÚC MIPS
Tổng quan về Kiến trúc MIPS
d. Kiến trúc tập lệnh MIPS ( ISA )
Kiến trúc tập lệnh MIPS (ISA) được phát triển từ kiến trúc tập lệnh MIPS I đến kiến trúc tập lệnh MIPS V. Vào cuối những năm 1990, kiến trúc MIPS đã được thiết kế xung quanh hai kiến trúc cơ bản sau :

• MIPS32 cho kiến trúc 32-bit. Kiến trúc MIPS-32bit dựa vào tập lệnh MIPS II ISA với một vài lệnh được thêm vào từ tập lệnh MIPS III đến tập lệnh MIPS V ISA.

• MIPS64 cho kiến trúc 64-bit , kiến trúc MIPS-64bit thì dựa vào tập lệnh của MIPS V ISA.
III . KIẾN TRÚC MIPS
2. Các thành phần cơ bản của kiến trúc MIPS
a. Kiến trúc tập lệnh MIPS
Định nghĩa một tập các câu lệnh 32bit và 64 bit để đảm bảo tương thích với mọi bộ xử lý áp dụng kiến trúc MIPS. Tập lệnh MIPS bao gồm tổng cộng 111 câu lệnh ở hệ 32 bit, ví dụ như một câu lệnh MIPS dưới đây:
III . KIẾN TRÚC MIPS
2. Các thành phần cơ bản của kiến trúc MIPS
b. Kiến trúc tài nguyên phân quyền
Đưa ra một tập các môi trường đảm bảo cho ISA hoạt động. PRA cung cấp các cơ chế cần thiết để quản lý các tài nguyên của bộ xử lý: bộ nhớ ảo, cache, các ngoại lệ…
Các thành phần mở rộng tùy chọn cho ứng dụng
Cung cấp các chức năng nâng cao được thiết kế riêng biệt cho các chức năng khác nhau.
III . KIẾN TRÚC MIPS
2. Các thành phần cơ bản của kiến trúc MIPS
d. Câu lệnh được người dùng định nghĩa
Đây là các câu lệnh đặc biệt cho các ứng dụng khác nhau với các mục đích khác nhau khi một bộ xử lý áp dụng kiến trúc MIPS.
Để thực hiện xây dựng một kiến trúc máy tính sử dụng kiến trúc MIPS thì các thành phần cơ bản phải bao gồm là:
- Program counter (PC): con trỏ chương trình.
- Memory : Bộ nhớ.
- Instruction Register: tập các thanh ghi lệnh.
- Register File: tập các thanh ghi.
- ALU: Khối đơn vị số học và logic.
- CU: khối đợn vị kiểm soát
III . KIẾN TRÚC MIPS
2. Các thành phần cơ bản của kiến trúc MIPS
d. Câu lệnh được người dùng định nghĩa
Thành phần và đường đi dữ liệu trong kiến trúc MIPS
nguon VI OLET