You are on page 1of 6

8.

a. Vẽ sơ đồ khối cấu trúc ARM, trình bày ngắn gọn chức năng các thành phần (các thanh ghi, các khối).

Register ARM:
- R0 đến R14: 15 thanh ghi đa dụng.
- R15 cũng có chức năng như bộ đếm chương trình – Program Counter.
- R14 chức năng như thanh ghi liên kết – Link Register.
- R13 có thể được sử dụng như là con trỏ ngăn xếp – Stack Pointers.
- CPSR (current program status register): thanh ghi trạng thái chương trình hiện tại, được người
dùng sử dụng chứa các bit điều kiện.
- SPSR (saved program status register): thanh ghi trạng thái chương trình đã lưu.
b. Tập lệnh kiểu RISC, CISC là gì? Nêu các ưu điểm và nhược điểm của chúng.
 CISC (Complex Instruction Set Computers)
- Là một kiến trúc vi xử lý vối một tập lệnh lớn và nhiều lệnh phức tạp. Hướng tiếp cận của CISC là cố
gắng thực hiện các tác vụ phức tạp chỉ bằng 1 câu lệnh.
- Ưu điểm:
+ Chương trình ngắn.
+ Số lệnh để thực hiện chương trình ít.
+ Khả năng thâm nhập bộ nhớ dễ hơn.
+ Các bộ xử lý CISC trợ giúp mạnh hơn các ngôn ngữ cao cấp nhờ có tập lệnh phức tạp.
- Nhược điểm:
+ Diện tích của bộ xử lý dùng cho bộ điều khiển lớn. Giảm khả năng tích hợp thêm vào vi xử lý.
+ Tốc độ tính toán còn chậm.
+ Thời gian xây dựng xong bộ vi xử lý là lâu hơn do các câu lệnh phức tạp. Và thời gian thực hiện lệnh
lâu khả năng xảy ra rủi ro nhiều.
 RISC (Reduced Instruction Set Computers)
- Là một kiến trúc vi xử lý thiết kế 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.
- Ưu điểm:
+ Diện tích của bộ xử lý dùng cho bộ điều khiển giảm so với kiến trúc CISC. Vì vậy có thể tích hợp
thêm vào bên trong bộ xử lý các thanh ghi, các cổng vào ra và bộ nhớ cache.

+ Tốc độ tính toán cao nhờ vào việc giải mã lệnh đơn giản, có nhiều thanh ghi và thực hiện kỹ thuật ống
dẫn (pipeline) liên tục và có hiệu quả (các lệnh đều có thời gian thực hiện giống nhau và có cùng dạng).

+ Thời gian cần thiết để thiết kế bộ điều khiển là ít. Điều này góp phần làm giảm chi phí thiết kế.

+ Bộ điều khiển trở nên đơn giản và gọn làm cho ít rủi ro mắc phải sai sót mà ta gặp thường trong bộ
điều khiển.
- Nhược điểm:

+ Việc cấm truy nhập bộ nhớ đối với tất cả các lệnh ngoại trừ các lệnh đọc (load) và ghi (store) vào bộ
nhớ. Vì vậy phải dùng nhiều lênh để thực hiện một tác vụ nhất định.

+ Cần phải tính các địa chỉ hiệu dụng vì không có nhiều cách định vị.

+ Tập lệnh có ít lệnh nên các lệnh không có sẵn phải được thay thế bằng một chuỗi lệnh của bộ xử lý
RISC.

+ Các chương trình dịch gặp nhiều khó khăn ví có ít lệnh làm cho việc diễn dịch các cấu trúc của
chương trình gốc bị hạn chế. Sự cứng nhắc của kỹ thuật ống dẫn cũng gây khó khăn.

+ Có ít lệnh trợ giúp cho ngôn ngữ cấp cao.

c. Bộ nhớ đệm (Cache) là gì? Có mấy loại Cache? Tại sao vi xử lý/ vi điều khiển cần có Cache?

- Là một bộ nhớ trung gian giữa bộ nhớ chính <ROM/RAM> và các thanh ghi đa dụng, có đáp ứng
nhanh, chứa các dòng lệnh hay dùng. Khi mà việc truy cập địa chỉ hay giá trị vào các bộ nhớ DRAM hoặc
ROM luôn bị giới hạn về đáp ứng phần cứng, cache được coi là một giải pháp tốt để thích nghi.

- Cấu trúc bộ nhớ của cache cũng có thể phân ra 2 loại riêng biệt, loại chứa chung vùng dữ liệu và chỉ
lệnh, loại tách rời chúng ra thành 2 bộ nhớ riêng biệt, Ta thường gọi là cấu trúc von Neuman và cấu trúc
Harvard.
Cache dùng chung cho vùng nhớ dữ liệu và địa chỉ <Von-Neuman>

Cache có vùng nhớ dữ liệu và địa chỉ tách rời nhau <Cấu trúc Harvard>
d. Kiến trúc bộ nhớ Harvard, Von Neumann là gì? Nêu các ưu điểm và nhược điểm của chúng.

- Kiến trúc Von Neumann là kiến trúc có bus bộ nhớ chương trình và bus bộ nhớ dữ liệu chung. CPU có
thể đọc một lệnh, hoặc đọc/ghi dữ liệu từ bộ nhớ. Tuy nhiên, cả hai quá trình tương tác với lệnh hoặc với
dữ liệu, không thể thực hiện cùng lúc.

- Kiến trúc Harvard là kiến trúc có bus bộ nhớ dữ liệu và bus bộ nhớ chương trình riêng cho từng bộ nhớ.
Bởi vì các bus độc lập, các chỉ dẫn chương trình và dữ liệu có thể được đưa ra cùng một lúc, cải thiện tốc
độ so với thiết kế chỉ có một bus chung.

- Ưu điểm:

+ Tách bộ nhớ dữ liệu và bộ nhớ chương trình => CPU có thể vừa đọc một lệnh, vừa truy cập dữ liệu từ
bộ nhớ cùng một lúc.

+ Bus riêng để để truy cập vào bộ nhớ dữ liệu và bộ nhớ chương trình.

+ Các bus điều hành độc lập.


+ Chạy nhanh hơn vì nó có thể thực hiện ngay lệnh tiếp theo khi vừa kết thúc lệnh trước đó.

e. Pipeline là gì? Trình bày quá trình hoạt động của 5 stage pipeline (có vẽ hình minh họa cụ thể)?

- Pipeline là một kỹ thuật mà trong đó các lệnh được thực thi theo kiểu chồng lấn lên nhau (overlap).

Giả sử một phòng có nhiều người, mỗi người đều cần giặt quần áo bẩn của mình. Quá trình giặt quần áo
bao gồm 4 công đoạn:

1. Đặt quần áo bẩn vào máy giặt để giặt

2. Khi máy giặt hoàn thành, đưa quần áo ướt vào máy sấy

3. Khi máy sấy hoàn thành, đặt quần áo khô lên bàn và ủi

4. Khi ủi hoàn tất, xếp quần áo vào tủ

Khi người trước hoàn thành công đoạn 1, sang công đoạn 2 thì máy giặt đã trống, lúc này người tiếp theo
có thể đưa quần áo bẩn vào giặt. Như vậy, người tiếp theo không cần phải chờ người trước xong công
đoạn thứ 4 mới có thể bắt đầu, mà ngay khi người trước đến công đoạn thứ 2 thì người tiếp theo đã có thể
bắt đầu công đoạn thứ nhất và cứ tiếp tục như vậy. Quá trình thực hiện chồng lấn này gọi là pipeline.

10. Trình bày ưu điểm, nhược điểm giao tiếp không đồng bộ nối tiếp

- Ưu điểm:

+ Khả năng chống nhiễu của các cổng nối tiếp cao.

+ Thiết bị ngoại vi có thể tháo lắp ngay cả khi máy tính đang được cấp điện.
+

You might also like