Nội dung chính

1. RISC là gì?
2. Định hướng thiết kế RISC
3. Định hướng thiết kế trước thời RISC
4. Cùng lúc đó …
5. Tình hình RISC hiện nay?
1. RISC là gì?
 RISC (viết tắt của Reduced Instructions Set Computer - Máy tính với tập lệnh đơn giản hóa) là 
  một 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, trong đó thời gian 
  thực thi tất cả các lênh đều như nhau.
 Hiện nay các bộ vi xử lý RISC phổ biến là ARM, SuperH, MIPS, SPARC, DEC Alpha, PA-
  RISC, PIC, và PowerPC của IBM. 
2. Định hướng thiết kế RISC
Tổ chức lại quá trình thực thi trong bộ xử lý hoặc nhằm 
 giảm bớt số lần truy xuất bộ nhớ.
 Andrew Tanenbaum (Minix) cho rằng 98% 
 các hằng hoàn toàn có thể biểu diễn bằng 13 bit, trong khi 
 đó các CPU được thiết kế theo bội số của 8 (thường là 8, 
 16 hoặc 32.) Do đó nếu CPU cho phép các hằng được lưu 
 trong những bit dư của mã lệnh sẽ làm giảm đi rất nhiều 
 lần truy xuất bộ nhớ. Thay vì phải đọc từ bộ nhớ hay từ 
 thanh ghi, các hằng đã ở ngay đó khi CPU cần, vì thế quá 
 trình thực thi sẽ nhanh hơn.
So sánh CISC với RISC
 CISC                 RISC
 Tập lệnh phức tạp   Tập lệnh đơn giản
 Các bộ VXL x86      Các bộ VXL
  (Intel) hoạt động    Pentium (Intel) hoạt
  theo ngyên lý        động theo nguyên lý
  CISC                 RISC
 Số lệnh khá nhiều   Tập lệnh rút gọn
 Chú trọng phần      Chú trọng tới phần
  cứng                 mềm
3. Định hướng thiết kế trước thời RISC

Thiết kế phần cứng dễ hơn nhiều so với thiết kế trình
 dịch, vì thế mọi phức tạp đều dồn vào phần cứng.
Một nguyên nhân khác thúc đẩy sự ra đời của những lệnh
 phức là sự thiếu thốn bộ nhớ. Do bộ nhớ quá nhỏ, do đó sẽ
 có lợi hơn nhiều nếu tăng mật độ tập trung thông tin trong
 mã lệnh.
4- Cùng lúc đó…
Ý tưởng đầu tiên có lẽ là "kênh dẫn" (pipeline).
Đây là một kỹ thuật nhằm chia nhỏ quá trình thực thi
 một lệnh thành nhiều bước, và các bước khác nhau
 của các lệnh khác nhau có thể được thực thi đồng thời.
 Một bộ xử lý thông thường đọc một lệnh, giải mã nó,
 đọc những vùng nhớ lệnh đó cần, thực thi lệnh, trả kết
 quả về.
Pipelining (kênh dẫn)
   Lấy lệnh từ bộ nhớ
   Đọc thanh ghi và giải mã lệnh
   Thực thi lệnh và tính toán địa chỉ
   Truy cập các toán hạng trong bộ nhớ dữ liệu
   Ghi kết quả vào thanh ghi
5. Tình hình RISC hiện nay?

RISC được sử ở đâu?


Tại sao RISC đang giảm?
RISC được sử ở đâu?
 Apple
 PA-RISC HP Work station
 Intel Strong ARM processor (Mobile CPU)
 IBM (Work Station)
 MOTOROLA (Hand Held Device)
Tại sao RISC đang giảm?
 Yêu cầu số lượng lớn bộ nhớ cache $ $ $ $ $ $


 Nhiều công ty không muốn mất một cơ hội với các công nghệ mới nổi. Nếu
  không có lợi ích thương mại, các nhà phát triển bộ vi xử lý không thể để
  sản xuất chip RISC trong khối lượng đủ lớn để làm cho giá của họ cạnh
  tranh.

 Các vấn đề tương thích phần mềm


 Quá khó để gỡ lỗi
Thanks for listening ^^!

Nguyễn Văn Thiệu


Thành viên nhóm 9


Lớp AT7B


Học Viện Kỹ Thuật Mật Mã

RISC - thieumao

  • 2.
    Nội dung chính 1.RISC là gì? 2. Định hướng thiết kế RISC 3. Định hướng thiết kế trước thời RISC 4. Cùng lúc đó … 5. Tình hình RISC hiện nay?
  • 3.
    1. RISC làgì?  RISC (viết tắt của Reduced Instructions Set Computer - Máy tính với tập lệnh đơn giản hóa) là  một 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, trong đó thời gian  thực thi tất cả các lênh đều như nhau.  Hiện nay các bộ vi xử lý RISC phổ biến là ARM, SuperH, MIPS, SPARC, DEC Alpha, PA- RISC, PIC, và PowerPC của IBM. 
  • 4.
    2. Định hướngthiết kế RISC Tổ chức lại quá trình thực thi trong bộ xử lý hoặc nhằm  giảm bớt số lần truy xuất bộ nhớ.  Andrew Tanenbaum (Minix) cho rằng 98%  các hằng hoàn toàn có thể biểu diễn bằng 13 bit, trong khi  đó các CPU được thiết kế theo bội số của 8 (thường là 8,  16 hoặc 32.) Do đó nếu CPU cho phép các hằng được lưu  trong những bit dư của mã lệnh sẽ làm giảm đi rất nhiều  lần truy xuất bộ nhớ. Thay vì phải đọc từ bộ nhớ hay từ  thanh ghi, các hằng đã ở ngay đó khi CPU cần, vì thế quá  trình thực thi sẽ nhanh hơn.
  • 5.
    So sánh CISCvới RISC CISC RISC Tập lệnh phức tạp Tập lệnh đơn giản Các bộ VXL x86 Các bộ VXL (Intel) hoạt động Pentium (Intel) hoạt theo ngyên lý động theo nguyên lý CISC RISC Số lệnh khá nhiều Tập lệnh rút gọn Chú trọng phần Chú trọng tới phần cứng mềm
  • 6.
    3. Định hướngthiết kế trước thời RISC Thiết kế phần cứng dễ hơn nhiều so với thiết kế trình dịch, vì thế mọi phức tạp đều dồn vào phần cứng. Một nguyên nhân khác thúc đẩy sự ra đời của những lệnh phức là sự thiếu thốn bộ nhớ. Do bộ nhớ quá nhỏ, do đó sẽ có lợi hơn nhiều nếu tăng mật độ tập trung thông tin trong mã lệnh.
  • 8.
    4- Cùng lúcđó… Ý tưởng đầu tiên có lẽ là "kênh dẫn" (pipeline). Đây là một kỹ thuật nhằm chia nhỏ quá trình thực thi một lệnh thành nhiều bước, và các bước khác nhau của các lệnh khác nhau có thể được thực thi đồng thời. Một bộ xử lý thông thường đọc một lệnh, giải mã nó, đọc những vùng nhớ lệnh đó cần, thực thi lệnh, trả kết quả về.
  • 9.
    Pipelining (kênh dẫn)  Lấy lệnh từ bộ nhớ  Đọc thanh ghi và giải mã lệnh  Thực thi lệnh và tính toán địa chỉ  Truy cập các toán hạng trong bộ nhớ dữ liệu  Ghi kết quả vào thanh ghi
  • 10.
    5. Tình hìnhRISC hiện nay? RISC được sử ở đâu? Tại sao RISC đang giảm?
  • 11.
    RISC được sửở đâu? Apple PA-RISC HP Work station Intel Strong ARM processor (Mobile CPU) IBM (Work Station) MOTOROLA (Hand Held Device)
  • 12.
    Tại sao RISCđang giảm?  Yêu cầu số lượng lớn bộ nhớ cache $ $ $ $ $ $  Nhiều công ty không muốn mất một cơ hội với các công nghệ mới nổi. Nếu không có lợi ích thương mại, các nhà phát triển bộ vi xử lý không thể để sản xuất chip RISC trong khối lượng đủ lớn để làm cho giá của họ cạnh tranh.  Các vấn đề tương thích phần mềm  Quá khó để gỡ lỗi
  • 13.
    Thanks for listening^^! Nguyễn Văn Thiệu Thành viên nhóm 9 Lớp AT7B Học Viện Kỹ Thuật Mật Mã

Editor's Notes

  • #4 - Vi xử lý  là một  linh kiện điện tử   máy tính  được chế tạo từ các  tranzito  thu nhỏ tích hợp lên trên một  vi mạch tích hợp  đơn.Khối xử lý trung tâm (CPU) là một bộ vi xử lý được nhiều người biết đến nhưng ngoài ra nhiều thành phần khác trong máy tính cũng có bộ vi xử lý riêng của nó, ví dụ trên cạc màn hình ( video card ) chúng ta cũng có một bộ vi xử lý.
  • #5 - Ý tưởng bắt đầu khi người ta nhận thấy rất nhiều tính năng trong các bộ VXL vốn được thiết kế nhằm giúp công việc lập trình trở nên dễ dàng hơn lại thường bị các phần mềm bỏ sót. Những tính năng này thông thường cần vài chu kỳ máy để thực thi. Cộng thêm sự cách biệt về hiệu suất giữa các CPU và bộ nhớ chính đã dẫn đến nhiều kỹ thuật hoặc nhằm tổ chức lại quá trình thực thi trong bộ xử lý hoặc nhằm giảm bớt số lần truy xuất bộ nhớ . Minix 3 (minix3.org) là miễn phí, mã nguồn mở, hệ điều hành được thiết kế để có độ tin cậy cao, linh hoạt và an toàn. Nó dựa trên một microkernel nhỏ chạy trong chế độ hạt nhân với phần còn lại của hệ điều hành chạy như là một bộ sưu tập của cô lập, bảo vệ, quy trình trong chế độ người dùng.
  • #7 - Những ngày đầu của ngành công nghiệp máy tính, trình biên dịch chưa xuất hiện. Công việc lập trình được thực hiện hoặc bằng ngôn ngữ máy s hoặc bằng hợp ngữ. Để việc lập trình đơn giản, các VXL được thêm những lệnh có thể biểu diễn trực tiếp những cấu trúc của ngôn ngữ lập trình cấp cao. Lúc đó thiết kế phần cứng dễ hơn nhiều so với thiết kế trình dịch, vì thế mọi phức tạp đều dồn vào phần cứng. - Một nguyên nhân khác thúc đẩy sự ra đời của những lệnh phức là sự thiếu thốn bộ nhớ. Do bộ nhớ quá nhỏ, do đó sẽ có lợi hơn nhiều nếu tăng mật độ tập trung thông tin trong mã lệnh. Khi mà mỗi byte bộ nhớ còn quá đắt, bộ nhớ chính của toàn bộ hệ thống ở thời kỳ này chỉ vài KB, ngành công nghiệp VXL bị thúc đẩy phải mã hóa thật cao mã lệnh, mã lệnh có thể có kích thước thay đổi, một lệnh có thể thực hiện nhiều phép toán hoặc một lệnh có thể vừa chuyển dữ liệu vừa xử lý dữ liệu. Lúc đó việc đưa ra một lệnh nén thật tốt được ưu tiên hơn là đưa ra một lệnh dễ giải mã.
  • #9 Ý tưởng đầu tiên có lẽ là "kênh dẫn" ( pipeline ). Đây là một kỹ thuật nhằm chia nhỏ quá trình thực thi một lệnh thành nhiều bước, và các bước khác nhau của các lệnh khác nhau có thể được thực thi đồng thời. Một bộ xử lý thông thường đọc một lệnh, giải mã nó, đọc những vùng nhớ lệnh đó cần, thực thi lệnh, trả kết quả về. Với kỹ thuật "kênh dẫn", bộ xử lý có thể đọc một lệnh ngay sau khi nó đọc xong lệnh trước đó, tức là nó vừa giải mã một lệnh vừa đọc lệnh kế tiếp, tới chu kỳ tiếp theo bộ xử lý sẽ làm việc với ba lệnh cùng lúc, và cứ thế tiếp tục. Dù thực tế không có lệnh nào được thực thi nhanh hơn, nhưng do lệnh theo sau sẽ hoàn thành ngay sau khi lệnh trước hoàn tất nên đây là một giải pháp rất hiệu quả nhằm tận dụng tối đa tài nguyên của các VXL.