Kiến trúc máy tính – Bài 3: CPU điều khiển và trao đổi dữ liệu qua bus thế nào?
- 19-10-2026
- Toanngo92
- 0 Comments
CPU muốn cộng hai số thì phải lấy đúng lệnh, đọc đúng dữ liệu và ghi kết quả đúng nơi. Bài này dùng một lần đọc và một lần ghi bộ nhớ để giải thích bus, tín hiệu điều khiển và vai trò của CU.
Dành cho người mới: đọc ví dụ trước, sau đó đối chiếu với sơ đồ và thuật ngữ. Các mô hình đơn giản trong bài dùng để học nguyên lý, không mô tả đầy đủ mọi CPU hay hệ điều hành.

Mục lục
Ba câu hỏi của một lần trao đổi
Hãy tưởng tượng bạn cần lấy một quyển sách ở kho: phải chỉ rõ vị trí, yêu cầu lấy hay cất, rồi vận chuyển quyển sách. Trong mô hình máy tính đơn giản, địa chỉ trả lời “ở đâu?”, tín hiệu điều khiển trả lời “làm gì?”, dữ liệu trả lời “giá trị nào?”. So sánh này chỉ giúp nhớ vai trò, không mô tả thời gian hay cấu trúc điện tử thực tế.
| Nhóm đường tín hiệu | Vai trò | Ví dụ |
|---|---|---|
| Địa chỉ | Xác định vị trí cần truy cập. | Ô nhớ số 100. |
| Dữ liệu | Mang giá trị được trao đổi. | Giá trị 5 được đọc về CPU. |
| Điều khiển | Quy định thao tác và phối hợp thời điểm. | Yêu cầu đọc, yêu cầu ghi, phản hồi sẵn sàng. |
Sơ đồ bus chung phù hợp để nhập môn. Máy tính hiện đại dùng nhiều liên kết và giao thức khác nhau; PCI Express là kết nối nối tiếp điểm–điểm, không phải một bus song song chung giống hệt sơ đồ này.
Một lần đọc bộ nhớ: lấy giá trị 5 ở ô 100
- CPU hoặc khối xử lý bộ nhớ liên quan đưa ra địa chỉ 100.
- Hệ thống phát yêu cầu đọc theo giao thức đang sử dụng.
- Bộ nhớ hoặc cấp cache phù hợp cung cấp dữ liệu. Trong ví dụ bỏ qua cache, ô 100 trả về 5.
- Bên nhận chốt dữ liệu khi giao thức cho biết dữ liệu hợp lệ.
- CPU sử dụng giá trị vừa đọc cho lệnh đang thực hiện.
Đừng nhầm việc đặt địa chỉ lên đường truyền với việc đã có dữ liệu. Bên gửi và bên nhận phải thống nhất khi nào địa chỉ, dữ liệu và tín hiệu có hiệu lực. Các tên RD và WR thường dùng trong sơ đồ giáo khoa để minh họa đọc và ghi; không phải mọi giao tiếp hiện đại đều có đúng các chân tên như vậy.
Một lần ghi bộ nhớ: lưu kết quả 8 vào ô 102
Sau phép cộng ở bài 2, ACC đang giữ 8. Để lưu kết quả, hệ thống phải xác định địa chỉ 102, cung cấp giá trị 8 và thực hiện yêu cầu ghi. Sau khi thao tác hoàn tất theo giao thức, vị trí đích nhận giá trị mới.
| Thao tác | Địa chỉ | Hướng dữ liệu trong mô hình |
|---|---|---|
| Đọc | CPU yêu cầu ô cần đọc. | Bộ nhớ → CPU. |
| Ghi | CPU yêu cầu ô cần ghi. | CPU → bộ nhớ. |
Trong hệ thống có cache và bộ đệm ghi, việc CPU hoàn thành một lệnh lưu không có nghĩa dữ liệu lập tức xuống RAM, càng không có nghĩa đã lưu bền vững trên SSD. Các tầng này có cơ chế đồng bộ riêng. Bài 4 sẽ giải thích cache; khái niệm lưu tệp bền vững còn liên quan hệ điều hành và hệ thống lưu trữ.
CU tổ chức công việc, không trực tiếp làm mọi phép tính
Đơn vị điều khiển CU nhận thông tin về lệnh, trạng thái và các sự kiện liên quan để phát tín hiệu cho đường dữ liệu. Ví dụ, nó chọn nguồn đưa vào ALU, chọn phép cộng, cho phép ghi thanh ghi đích hoặc yêu cầu truy cập bộ nhớ. ALU thực hiện phép toán; thanh ghi giữ giá trị; CU phối hợp hoạt động.
| Giai đoạn minh họa | Tín hiệu hoặc hành động cần có |
|---|---|
| Lấy lệnh | Chọn địa chỉ lệnh và yêu cầu đọc. |
| Giải mã | Nhận diện loại thao tác và nguồn toán hạng. |
| Cộng | Chọn hai đầu vào của ALU, chọn phép ADD. |
| Ghi kết quả | Cho phép thanh ghi đích nhận kết quả. |
Các hành động nhỏ thường được gọi là vi thao tác ở mức mô tả thanh ghi. Bảng này biểu diễn thứ tự logic để học, không phải bản thiết kế đủ chi tiết để chế tạo CPU, cũng không khẳng định mỗi dòng mất đúng một nhịp.
Vì sao cần đồng bộ và phân xử?
Một đường truyền dùng chung không thể để nhiều bên cùng phát dữ liệu tùy ý. Cơ chế phân xử chọn bên được sử dụng tài nguyên; quy tắc thời gian giúp bên nhận biết lúc nào đọc tín hiệu. Nếu ví đường truyền như một cuộc trao đổi, cần biết ai được nói và khi nào người khác nghe.
Đồng hồ tạo mốc thời gian cho nhiều mạch đồng bộ. Tuy vậy không phải mọi thiết bị chạy cùng tần số với CPU. Bộ điều khiển, bộ đệm và giao thức giúp các khối có tốc độ khác nhau trao đổi. Tần số CPU tăng không tự làm mọi thiết bị ngoại vi nhanh lên.
Độ rộng đường dữ liệu, số lần truyền và độ trễ đều ảnh hưởng hiệu năng. Một nhãn “64 bit” không đủ để suy ra toàn bộ băng thông hay số địa chỉ RAM hỗ trợ; cần biết đang nói về thanh ghi, giao tiếp hay không gian địa chỉ nào.
Đọc thêm: điều khiển cứng hóa và vi lập trình
Điều khiển cứng hóa tạo tín hiệu bằng các mạch logic và trạng thái điều khiển. Điều khiển vi lập trình sử dụng các từ điều khiển lưu trong bộ nhớ điều khiển để tổ chức một số thao tác. Vi lệnh là khái niệm bên trong cách triển khai CPU, khác với lệnh máy mà phần mềm nhìn thấy.
Không nên chia tuyệt đối thành “RISC chỉ cứng hóa, CISC chỉ vi lập trình”, hoặc kết luận một cách luôn nhanh hơn. CPU thực tế có thể kết hợp nhiều cơ chế. Người mới chỉ cần hiểu cùng một hành vi nhìn từ phần mềm có thể được thực hiện bằng nhiều thiết kế bên trong.
Tự kiểm tra: trong thao tác ghi 8 vào ô 102, 8 đi trên nhóm đường nào và 102 đi trên nhóm đường nào? Nếu bộ nhớ chưa báo dữ liệu hợp lệ mà CPU đã sử dụng, vì sao kết quả có thể sai?
Những điều cần nhớ
- Địa chỉ, dữ liệu và điều khiển có vai trò khác nhau.
- CU điều phối, còn ALU và đường dữ liệu thực hiện các thao tác được chọn.
- Sơ đồ bus dùng chung là mô hình học tập; kết nối hiện đại có thể khác đáng kể.

