1. Sự khác biệt chính giữa kiến trúc Harvard và kiến trúc Von Neumann là gì?
A. Kiến trúc Von Neumann sử dụng đường ống lệnh, còn Harvard thì không.
B. Kiến trúc Von Neumann có bus chung cho cả lệnh và dữ liệu, còn Harvard có các bus riêng biệt cho lệnh và dữ liệu.
C. Kiến trúc Von Neumann chỉ hỗ trợ tập lệnh CISC, còn Harvard chỉ hỗ trợ RISC.
D. Kiến trúc Von Neumann sử dụng bộ nhớ ảo, còn Harvard thì không.
2. Bộ nhớ ảo (Virtual Memory) giải quyết vấn đề gì trong hệ thống máy tính?
A. Giảm chi phí sản xuất bộ nhớ RAM.
B. Cho phép chương trình sử dụng không gian bộ nhớ lớn hơn dung lượng RAM vật lý có sẵn.
C. Tăng tốc độ truy cập bộ nhớ đệm (cache).
D. Cung cấp bộ nhớ không bay hơi cho hệ thống.
3. Đâu là lợi ích chính của việc sử dụng bộ nhớ đệm (Cache)?
A. Làm tăng dung lượng bộ nhớ chính.
B. Cung cấp bộ nhớ không bay hơi.
C. Giảm thời gian truy cập bộ nhớ trung bình.
D. Đơn giản hóa kiến trúc CPU.
4. Chức năng chính của Bộ điều khiển (Control Unit) trong CPU là gì?
A. Lưu trữ dữ liệu tạm thời.
B. Thực hiện các phép toán số học.
C. Điều khiển và điều phối hoạt động của CPU và các thành phần khác.
D. Kết nối CPU với thiết bị ngoại vi.
5. Trong thiết kế bộ nhớ đệm, `cache line′ (khối cache) là gì?
A. Một bit dữ liệu trong cache.
B. Đơn vị dữ liệu nhỏ nhất có thể được chuyển giữa bộ nhớ chính và cache.
C. Địa chỉ vật lý của một vị trí trong cache.
D. Số lượng các block dữ liệu trong cache.
6. Kiến trúc tập lệnh nào (ISA) thường có số lượng lệnh ít hơn, đơn giản hơn và kích thước cố định?
A. CISC (Complex Instruction Set Computer)
B. RISC (Reduced Instruction Set Computer)
C. VLIW (Very Long Instruction Word)
D. EPIC (Explicitly Parallel Instruction Computing)
7. Lợi ích chính của việc sử dụng bộ nhớ đệm đa cấp (Multi-level Cache) là gì?
A. Loại bỏ hoàn toàn nhu cầu sử dụng bộ nhớ chính (RAM).
B. Cung cấp dung lượng bộ nhớ đệm lớn hơn với chi phí thấp hơn so với việc chỉ sử dụng một cache L1 dung lượng tương đương.
C. Đảm bảo tất cả dữ liệu trong cache luôn đồng nhất với bộ nhớ chính.
D. Giảm số lượng thanh ghi trong CPU.
8. Đâu là thước đo chính thường được sử dụng để đánh giá hiệu năng của CPU?
A. Dung lượng bộ nhớ RAM.
B. Tốc độ xung nhịp (Clock Speed).
C. Số lượng lõi (Number of Cores).
D. Tất cả các yếu tố trên cùng với IPC (Instructions Per Cycle).
9. Trong hệ thống phân cấp bộ nhớ, loại bộ nhớ nào có thời gian truy cập nhanh nhất và dung lượng nhỏ nhất?
A. Bộ nhớ chính (RAM)
B. Bộ nhớ đệm (Cache)
C. Bộ nhớ thứ cấp (Ổ cứng)
D. Thanh ghi (Registers)
10. Điều gì xảy ra khi CPU gặp phải một `cache miss′ ở cấp L1?
A. CPU sẽ dừng hoạt động.
B. Dữ liệu sẽ được tìm kiếm ở các cấp cache cao hơn (L2, L3) hoặc bộ nhớ chính.
C. Lệnh hiện tại sẽ bị hủy bỏ.
D. CPU sẽ yêu cầu người dùng nhập lại dữ liệu.
11. Thanh ghi Program Counter (PC) hay Instruction Pointer (IP) có vai trò gì?
A. Lưu trữ kết quả của phép toán cuối cùng.
B. Lưu trữ địa chỉ của lệnh tiếp theo sẽ được nạp và thực thi.
C. Lưu trữ dữ liệu đang được xử lý.
D. Lưu trữ trạng thái của CPU.
12. Thành phần nào trong CPU chịu trách nhiệm thực hiện các phép toán số học và logic?
A. Bộ điều khiển (Control Unit)
B. Bộ số học và logic (ALU)
C. Thanh ghi (Registers)
D. Bộ nhớ đệm (Cache)
13. Thách thức chính trong việc triển khai các đường ống lệnh (pipelining) rất sâu là gì?
A. Tăng chi phí sản xuất chip.
B. Giảm số lượng thanh ghi cần thiết.
C. Tăng tần số hoạt động tối đa của CPU.
D. Tăng khả năng xảy ra hazard và độ phức tạp của logic điều khiển hazard.
14. Loại bus nào được sử dụng để truyền địa chỉ bộ nhớ từ CPU đến bộ nhớ?
A. Bus dữ liệu (Data Bus)
B. Bus địa chỉ (Address Bus)
C. Bus điều khiển (Control Bus)
D. Bus I∕O (I∕O Bus)
15. Chính sách ghi nào (Write Policy) trong bộ nhớ đệm yêu cầu dữ liệu được ghi đồng thời vào cả cache và bộ nhớ chính?
A. Write-back
B. Write-through
C. Write-allocate
D. No write-allocate
16. Khái niệm Instruction Level Parallelism (ILP) đề cập đến điều gì?
A. Khả năng thực thi nhiều chương trình cùng lúc trên một CPU.
B. Khả năng thực thi nhiều lệnh độc lập từ cùng một chương trình cùng lúc.
C. Khả năng thực thi cùng một lệnh trên nhiều tập dữ liệu khác nhau cùng lúc.
D. Khả năng kết nối nhiều CPU để giải quyết một vấn đề lớn.
17. Định luật Amdahl (Amdahl′s Law) được sử dụng để tính toán điều gì?
A. Tốc độ truyền dữ liệu trên bus.
B. Giới hạn tốc độ tăng tốc tối đa có thể đạt được khi song song hóa một phần của chương trình.
C. Thời gian truy cập trung bình của bộ nhớ đệm.
D. Công suất tiêu thụ của CPU.
18. Trong kỹ thuật đường ống (Pipelining), `hazard′ là gì?
A. Việc thực hiện nhiều lệnh cùng lúc.
B. Tình huống ngăn cản lệnh tiếp theo trong đường ống thực hiện ở chu kỳ đồng hồ tiếp theo.
C. Quá trình nạp lệnh từ bộ nhớ.
D. Việc ghi kết quả trở lại thanh ghi.
19. Chế độ định địa chỉ nào thường được sử dụng để truy cập các phần tử của một mảng khi biết địa chỉ cơ sở của mảng và chỉ số phần tử?
A. Định địa chỉ trực tiếp (Direct Addressing)
B. Định địa chỉ gián tiếp (Indirect Addressing)
C. Định địa chỉ chỉ số (Indexed Addressing)
D. Định địa chỉ thanh ghi (Register Addressing)
20. Trong hệ thống bộ nhớ ảo, TLB (Translation Lookaside Buffer) được sử dụng để làm gì?
A. Lưu trữ các block dữ liệu thường dùng từ bộ nhớ chính.
B. Lưu trữ bản sao của các trang bộ nhớ trên đĩa cứng.
C. Tăng tốc quá trình dịch địa chỉ ảo sang địa chỉ vật lý.
D. Quản lý việc cấp phát bộ nhớ cho các tiến trình.
21. Hệ thống bus (System Bus) trong kiến trúc máy tính có vai trò gì?
A. Chỉ truyền dữ liệu giữa CPU và RAM.
B. Chỉ truyền tín hiệu điều khiển giữa các thành phần.
C. Cung cấp đường truyền chung để các thành phần chính của máy tính (CPU, bộ nhớ, I∕O) giao tiếp với nhau.
D. Chỉ kết nối các thiết bị ngoại vi với nhau.
22. Chức năng chính của Đơn vị Quản lý Bộ nhớ (MMU) là gì?
A. Quản lý các thiết bị I∕O.
B. Thực hiện các phép toán số học phức tạp.
C. Dịch địa chỉ ảo thành địa chỉ vật lý và kiểm soát truy cập bộ nhớ.
D. Điều khiển luồng dữ liệu giữa CPU và các thanh ghi.
23. Thuật ngữ `locality of reference′ (nguyên lý cục bộ) trong kiến trúc máy tính đề cập đến điều gì?
A. Các chương trình chỉ truy cập dữ liệu trong một khu vực bộ nhớ cố định.
B. Xu hướng chương trình truy cập lại các vị trí bộ nhớ vừa được truy cập (cục bộ thời gian) hoặc các vị trí gần đó (cục bộ không gian).
C. Việc các lệnh được thực thi theo thứ tự tuần tự.
D. Khả năng của CPU truy cập trực tiếp vào thiết bị ngoại vi.
24. Trong kỹ thuật đường ống, `data dependency′ (phụ thuộc dữ liệu) xảy ra khi nào?
A. Hai lệnh cố gắng truy cập cùng một thiết bị I∕O.
B. Một lệnh cần kết quả của lệnh trước đó làm đầu vào trước khi lệnh đó hoàn thành.
C. Hai lệnh cố gắng sử dụng cùng một đơn vị chức năng (ALU).
D. Lệnh nhảy làm thay đổi luồng thực thi chương trình.
25. Trong chu kỳ lệnh (Instruction Cycle), giai đoạn `Fetch′ (Nạp) thực hiện công việc gì?
A. Giải mã lệnh để xác định thao tác.
B. Nạp lệnh từ bộ nhớ vào CPU.
C. Thực hiện thao tác được chỉ định bởi lệnh.
D. Ghi kết quả trở lại bộ nhớ hoặc thanh ghi.
26. Mục đích của Memory-Mapped I∕O là gì?
A. Để các thiết bị I∕O chỉ có thể truy cập bộ nhớ chính.
B. Để các cổng I∕O được truy cập bằng các lệnh I∕O đặc biệt.
C. Để các thanh ghi hoặc bộ nhớ của thiết bị I∕O được ánh xạ vào không gian địa chỉ bộ nhớ, cho phép truy cập bằng các lệnh bộ nhớ thông thường.
D. Để bộ nhớ chính chỉ có thể truy cập thiết bị I∕O.
27. Sự khác biệt cơ bản giữa Microarchitecture (Kiến trúc vi mô) và Instruction Set Architecture (ISA - Kiến trúc tập lệnh) là gì?
A. ISA là cách CPU được hiện thực hóa vật lý, còn Microarchitecture là tập hợp các lệnh mà CPU hiểu.
B. ISA định nghĩa các lệnh mà CPU có thể thực thi, còn Microarchitecture mô tả cách các lệnh đó được hiện thực hóa bên trong CPU.
C. ISA liên quan đến bộ nhớ đệm, còn Microarchitecture liên quan đến I∕O.
D. ISA là độc quyền của nhà sản xuất, còn Microarchitecture là tiêu chuẩn mở.
28. Thanh ghi Stack Pointer (SP) được sử dụng để làm gì?
A. Lưu trữ địa chỉ của lệnh đang được thực thi.
B. Lưu trữ địa chỉ đỉnh của ngăn xếp (stack) trong bộ nhớ.
C. Lưu trữ kết quả của phép toán chia.
D. Lưu trữ cờ trạng thái của CPU.
29. Mục đích của ngắt (interrupt) trong hệ thống máy tính là gì?
A. Để CPU thực hiện một tác vụ tính toán phức tạp.
B. Để tạm dừng hoạt động hiện tại của CPU nhằm xử lý một sự kiện quan trọng (từ I∕O, lỗi, v.v.).
C. Để tăng tốc độ truy cập bộ nhớ.
D. Để chuyển đổi giữa các chế độ định địa chỉ.
30. Mục tiêu chính của xử lý song song (parallel processing) là gì?
A. Giảm dung lượng bộ nhớ cần thiết.
B. Tăng tốc độ thực thi chương trình bằng cách thực hiện nhiều tác vụ cùng lúc.
C. Giảm tiêu thụ năng lượng của CPU.
D. Đơn giản hóa việc lập trình.