Các kiểu thi hành một lệnh Việc chọn số toán hạng cho một lệnh mã máy là một vấn đề then chốt vì phải có một sự cân đối giữa tốc độ tính toán và số các mạch tính toán phải dùng.. Tuỳ
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT HƯNG YÊN
KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN
MÔN: VI XỬ LÝ
ĐỀ TÀI:
Nghiên cứu công nghệ RISC
1 Công nghệ RISC
Trang 2Giáo viên hướng dẫn :
Nguyễn Đình Chiến
Sinh Viên thực hiện :
Nguyễn Văn Duy
Vũ Khắc Điệp
Vũ Đức Giang Thân Thị Hà
Trang 3NỘI DUNG
• 1 Tổng quan về RISC
• 2 Cách tổ chức mã lệnh trong RISC
• 3 Ứng dụng của RISC
• 4 CISC
• 5.So Sánh RISC và CISC
• 6.Tổng Kết
3 Công nghệ RISC
Trang 4Công nghệ RISC
• I Tổng quan về RISC
– Ra đời đầu những năm 1980
– RISC: phương pháp thiết kế bộ vi xử lí theo hướng đơn giản hóa các tập lệnh
Các tính chất của RISC
– Các lệnh có cùng chiều dài
– Kỹ thuật định đường ống
– Rẽ nhánh trễ
– Chỉ có các lệnh ghi hoặc đọc ô nhớ mới thâm nhập được vào ô nhớ – Bộ xử lí RISC có nhiều thanh ghi làm cho giảm việc truy cập vào bộ nhớ
– Xử lý các lệnh song song ILP
Trang 5Công nghệ RISC
• II Ưu nhược điểm của RISC
• 1 Ưu điểm:
Sử dụng công nghệ VLSI (Very Very-Large-Scale-Intergation) đường ống và đơn vị điều khiển bên trong chip vi xử lý RISC đơn giản
Tốc độ xử lí cao hơn CISC
Chi phí thiết kế VXL RISC giảm
Độ tin cậy cao
Hỗ trợ ngôn ngữ bậc cao
5 Công nghệ RISC
Trang 6Công nghệ RISC
• 2 Nhược điểm
Các chương trình dịch gặp nhiều khó khăn
Không có lệnh nhân, chia, phép toán với dấu chấm động
Không truy cập bộ nhớ không sắp xếp, không xử lý toán hạng không sắp xếp
Không có các phép toán thực hiện trên bit
Mật độ mã kém hơn CISC(mô tả mã thực thi của một chương trình được đóng gói chặt chẽ đến mức nào)
Trang 7Cách tổ chức mã lệnh trong RISC
• I Các kiểu thi hành một lệnh
Việc chọn số toán hạng cho một lệnh mã máy là một vấn đề then chốt vì phải có một sự cân đối giữa tốc độ tính toán và số các mạch tính toán phải dùng Tuỳ theo tần số sử dụng các
phép như trên mà các nhà thiết kế máy tính quyết định số
lượng các mạch chức năng cần thiết cho việc tính toán Thông thường số toán hạng thay đổi từ 0 tới 3
Hiện tại các nhà sản xuất máy tính có khuynh hướng dùng kiến trúc phần mềm thanh ghi đa dụng vì việc thâm nhập các thanh ghi đa dụng nhanh hơn thâm nhập bộ nhớ trong, và vì các
chương trình dịch dùng các thanh ghi đa dụng có hiệu quả hơn
7 Công nghệ RISC
Trang 8Cách tổ chức mã lệnh trong RISC
• II Kiêu kiến trúc thanh ghi đa dụng
• Đối với một lệnh tính toán hoặc logic điển hình (lệnh ALU),
có 2 điểm cần nêu lên:
Một lệnh ALU phải có 2 hoặc 3 toán hạng Nếu trong lệnh có
3 toán hạng thì một trong các toán hạng chứa kết quả phép tính trên hai toán hạng kia Nếu trong lệnh có 2 toán hạng thì một trong hai toán hạng phải vừa là toán hạng nguồn, vừa là toán hạng đích
Số lượng toán hạng bộ nhớ có trong lệnh Số toán hạng bộ nhớ
có thể thay đổi từ 0 tới 3 Trong nhiều cách tổ hợp có thể có các loại toán hạng của một lệnh ALU, các máy tính hiện nay chọn một trong 3 kiểu sau : thanh ghi-thanh ghi thanh ghi - bộ nhớ và bộ nhớ - bộ nhớ
Trang 9Cách tổ chức mã lệnh trong RISC
• III Tập lệnh
Gán trị
Việc gán trị, gồm cả gán trị cho biểu thức số học và logic,
được thực hiện nhờ một số lệnh mã máy
Lệnh tính toán số học: ADD, SUB, MUL, DIV
Lệnh logic: AND, OR, NOT, XOR
Lệnh có điều kiện:
Nếu <điều kiện> thì <chuỗi lệnh 1> nếu không <chuỗi lệnh 2> Lệnh này buộc phải ghi nhớ điều kiện và nhảy vòng nếu điều kiện được thoả
9 Công nghệ RISC
Trang 10Cách tổ chức mã lệnh trong RISC
Ghi nhớ điều kiện
• Bộ làm tính ALU cung cấp kết quả ở ngã ra tuỳ theo các ngã vào và phép tính cần làm Các bit này là những đại lượng logic ĐÚNG hoặc SAI
• Có hai kỹ thuật cơ bản để ghi nhớ các bit trạng thái
Cách thứ nhất, ghi các trạng thái trong một thanh ghi đa dụng Cách thứ hai là để các bit trạng thái vào một thanh ghi đặc biệt
Nhảy vòng
Các lệnh nhảy hoặc nhảy vòng có điều kiện, chỉ thực hiện lệnh nhảy khi điều kiện được thoả
Trang 11Cách tổ chức mã lệnh trong RISC
Vòng lặp
Trong trường hợp này, ta quản lý số lần lặp lại bằng một bộ đếm vòng lặp, và người ta kiểm tra bộ đếm này sau mỗi vòng lặp để xem đã đủ số vòng cần thực hiện hay chưa
Các thủ tục
Các thủ tục được gọi từ bất cứ nơi nào của chương trình nhờ lệnh gọi thủ tục CALL Để khi chấm dứt việc thi hành thủ tục thì chương trình gọi được tiếp tục bình thường, ta cần lưu giữ địa chỉ trở về tức địa chỉ của lệnh sau lệnh gọi thủ tục CALL Khi chấm dứt thi hành thủ tục, lệnh trở về RETURN nạp địa chỉ trở về vào PC
11 Công nghệ RISC
Trang 12Cách tổ chức mã lệnh trong RISC
• IV Các kiểu định vị
Kiểu định vị định nghĩa cách thức thâm nhập các toán hạng Một vài kiểu xác định cách thâm nhập toán hạng bộ nhớ, nghĩa
là cách tính địa chỉ của toán hạng, các kiểu khác xác định các toán hạng nằm trong các thanh ghi
• V Kiểu của toán hạng và chiều dài của toán hạng
Kiểu của toán hạng thường được đưa vào trong mã tác vụ của lệnh Có bốn kiểu toán hạng được dùng trong các hệ thống:
Kiểu địa chỉ
Kiểu dạng số: số nguyên, dấu chấm động,
Kiểu dạng chuỗi ký tự: ASCII, EBIDEC,
Kiểu dữ liệu logic: các bit, cờ,
Trang 13Cách tổ chức mã lệnh trong RISC
• VI Kiểu định vị trong các bộ VXL RISC
Định vị thanh ghi
Định vị tức thì
Định vị trực tiếp
Định vị gián tiếp bằng thanh ghi + độ dời
Định vị tự tăng
13 Công nghệ RISC
Trang 14Ứng dụng của RISC
Reduced Intruction Set Computer (RISC), Máy tính với
tập lệnh rút gọn
Là một kiến trúc vi xử lý theo hướng đơn giản hóa tập lệnh Cho đến hiện nay (2007), các bộ vi xử lý RISC phổ biến là
DEC, ARC, ARM, AVR, PA-RISC, PowerPC của IBM
Mục đích của RISC ngay từ ban đầu là xây dựng các lệnh đơn giản, mỗi lệnh có thể được thực hiện chỉ với một chu kỳ clock
Các máy tính dựa trên RISC có thể được nâng cấp nhanh hơn
Được ứng dụng làm đơn vị xử lý trung tâm điều khiển quang
báo
Trang 15Ứng dụng của RISC
Ngày nay, một số kiến trúc RISC được xây dựng dựa kiến trúc Harvard, trong đó bus dữ liệu và bus chương trình tách rời
nhau
Kỹ thuật thiết kế RISC đem đến sức mạnh ngay cả ở những kích thước nhỏ
Dùng trong các hệ thống nhúng công suất nhỏ
Hầu hết các Mainframe ngày nay cũng hoàn toàn dựa trên
RISC
15 Công nghệ RISC
Trang 16CISC và kiến trúc của CISC
1 CISC là gì?
Cisc là một máy tính hướng dẫn cài đặt kiến trúc ISA,trong đó mỗi địa chỉ có thể thưc hiện một số hoạt động cấp thấp,chẳng hạn như là một tải từ bộ nhớ, một arithmetic hoạt động và một
bộ nhớ lưu chữ
2 Đặc điểm, thuận lợi của RISC
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ị Điều này dẫn tới việc các lệnh có chiều dài thay đổi và như thế thì dùng bộ điều khiển vi chương trình là hiệu quả nhất
Tiến bộ trong lĩnh vực mạch kết (IC) và kỹ thuật dịch chương trình làm cho các nhận định trước đây phải được xem xét lại, nhất là khi đã có một khảo sát định lượng về việc dùng tập
lệnh các máy CISC
16 Công nghệ RISC
Trang 17CISC và kiến trúc của CISC
• 3 Khó khăn
Cisc có số lương lệnh lớn
Khả năng định địa chỉ phức tạp
Thiết kế phần cứng khó khăn
Mỗi CISC lệnh phải được dịch của các bộ xử lý vào mười
hoặc thậm chí hàng trăm dòng microcode, nó có xu hướng
chạy chậm hơn nhiều so với một loạt các đơn giản tương
đương lệnh mà không yêu cầu quá nhiều dịch
17 Công nghệ RISC
Trang 18So sánh RISC và CISC
Parameter passing through On-chip register set “register windown Off-chip mermory
Trang 19Tổng kết
RISC cung cấp các chức năng để có được tốc độ xung nhịp
nhanh hơn
Tuy nhiên có thể bạn không có được hiệu suất tốt hơn, và chắc chắn là sẽ phải bỏ ra nhiều tiền hơn
Không thể phủ nhận khả năng của RISC Nó được hiểu như là một con đường đi tới mới, đầy hứng thú Cũng thật khác
thường là các vi xử lý CISC vẫn tiếp tục phát triển mạnh Mật
độ mã và khả năng tích hợp của chúng tốt hơn, và chúng cho hiệu suất tốt hơn bằng các lệnh hỗ trợ bit manipulation,
memory accesses, looping, decision trees,…
19 Công nghệ RISC