Tổng Quan Về Giáo Trình Cấu Trúc Máy Tính
Tổng quan về giáo trình
Giáo trình môn học: Cấu trúc máy tính (Mã tài liệu: MH 14) do tác giả Phạm Anh Đức chủ biên, được Khoa Công nghệ Thông tin và Ngoại ngữ thuộc Trường Cao đẳng Cơ điện Xây dựng Việt Xô (Bộ Nông nghiệp và Phát triển Nông thôn) biên soạn và ban hành năm 2018. Tài liệu được thiết kế nhằm phục vụ đào tạo các nghề Tin học văn phòng và Quản trị mạng ở trình độ trung cấp và cao đẳng kỹ thuật.
Trong chương trình đào tạo, môn học Cấu trúc máy tính giữ vị trí học phần kỹ thuật cơ sở. Môn học được bố trí giảng dạy sau các học phần Tin học đại cương, Tin học văn phòng, Kỹ thuật điện - điện tử, đồng thời được tổ chức song hành với mô đun Lắp ráp cài đặt máy tính nhằm tạo tiền đề cho công tác thực hành bảo trì và quản trị hệ thống.
Mục tiêu học tập của giáo trình bao gồm:
- Trình bày lịch sử phát triển, các mốc công nghệ và đặc điểm phân loại của 4 thế hệ máy tính điện tử.
- Nắm vững nguyên lý biểu diễn thông tin, phương pháp chuyển đổi các hệ thống số, cấu trúc số nguyên có dấu (dấu lượng, bù 1, bù 2, mã BCD) và chuẩn số thực dấu chấm động IEEE 754 (32-bit và 64-bit).
- Phân tích cấu trúc chức năng của bộ xử lý trung tâm (CPU), bao gồm khối điều khiển (CU), khối số học và logic (ALU), tập thanh ghi (Register File) và đơn vị ghép nối bus (BIU).
- Mô tả chu trình thực hiện lệnh máy, kỹ thuật đường ống lệnh (pipeline), siêu ống dẫn, các loại xung đột (hazard) và cơ chế ngắt.
- So sánh các mô hình kiến trúc máy tính (Von Neumann và Harvard), kiến trúc tập lệnh (CISC và RISC).
- Trình bày cấu trúc phân cấp bộ nhớ, tổ chức bộ nhớ đệm Cache, các thiết bị lưu trữ ngoài, cấu trúc bảng mạch chính và hệ thống bus.
- Rèn luyện kỹ năng viết chương trình, quản lý ngăn xếp (Stack) và điều khiển thủ tục bằng ngôn ngữ hợp ngữ (Assembly) trên nền tảng vi xử lý 8086/8088.
Cấu trúc giáo trình bao gồm 8 chương với tổng thời lượng 90 tiết (44 tiết lý thuyết, 40 tiết thực hành và 6 tiết kiểm tra). Điểm đặc sắc của tài liệu là sự kết hợp chặt chẽ giữa mô tả tổ chức phần cứng ở mức vi kiến trúc với kỹ năng lập trình hợp ngữ mức thấp, trong đó học phần Assembly chiếm tới 30 tiết (13 tiết lý thuyết, 15 tiết thực hành, 2 tiết kiểm tra).
Nội dung kiến thức cốt lõi
+-------------------------------------------------------------------------+
| CẤU TRÚC MÁY TÍNH (MÃ HỌC PHẦN: MH 14) |
| Thời lượng: 90 tiết |
+-------------------------------------------------------------------------+
|
+---> Chương 1: Tổng quan cấu trúc máy tính (10 tiết: 6 LT, 4 TH)
| * Lịch sử 4 thế hệ, máy tính tiêu biểu, mô hình Von Neumann / Harvard
| * Mã hóa thông tin, hệ số, bù 1/bù 2, BCD, IEEE 754 (32/64-bit)
|
+---> Chương 2: Kiến trúc tập lệnh máy tính (11 tiết: 6 LT, 4 TH, 1 KT)
| * Cấu trúc cơ bản CPU, Bộ nhớ, I/O, Bus; Phân loại CISC vs RISC
| * Định dạng lệnh (Opcode/Toán hạng), lệnh điều kiện, Stack, Call/Return
|
+---> Chương 3: Bộ xử lý (15 tiết: 6 LT, 8 TH, 1 KT)
| * Khối CU, ALU, Register File, BIU; Đường dẫn dữ liệu (Datapath)
| * Chu trình 5 bước lệnh, Kỹ thuật Pipeline, Hazard, Xử lý ngắt
|
+---> Chương 4: Bộ nhớ (8 tiết: 4 LT, 3 TH, 1 KT)
| * Phân loại RAM/ROM, phân cấp nhớ, cấu trúc và ánh xạ Cache
|
+---> Chương 5: Thiết bị nhớ ngoài (7 tiết: 4 LT, 3 TH)
| * Bộ nhớ từ (HDD/FDD), nhớ quang (CD/DVD), thẻ nhớ bán dẫn
|
+---> Chương 6: Bảng mạch chính (4 tiết: 2 LT, 2 TH)
| * Mainboard, Socket, Chipset, khe cắm mở rộng
|
+---> Chương 7: Các loại bus (5 tiết: 3 LT, 1 TH, 1 KT)
| * Bus đồng bộ / không đồng bộ, Bus hệ thống, Bus vào-ra
|
+---> Chương 8: Ngôn ngữ Assembly (30 tiết: 13 LT, 15 TH, 2 KT)
* Cấu trúc chương trình hợp ngữ, cú pháp, dữ liệu, điều khiển luồng, thủ tục
Các chương và chủ đề chính
- Chương 1: Tổng quan về cấu trúc máy tính (10 tiết): Trình bày lịch sử máy tính qua 4 thế hệ; phân tích các cột mốc công nghệ và thiết bị tiêu biểu; khái niệm lượng thông tin ($I = \log_2 N$ bit); phương pháp biểu diễn số học (chuyển đổi hệ 10, 2, 8, 16; phương thức số dư và phương thức nhân; số nguyên có dấu dạng dấu lượng, bù 1, bù 2, mã BCD gói/không gói; số thực dấu chấm động theo chuẩn IEEE 754 dạng 32-bit và 64-bit); phân biệt kiến trúc máy tính và tổ chức máy tính; phân tích mô hình Von Neumann và mô hình Harvard.
- Chương 2: Kiến trúc tập lệnh của máy tính (11 tiết): Mô tả 4 thành phần cơ bản gồm CPU, bộ nhớ, hệ thống vào-ra và liên kết hệ thống; phân tích chi tiết hai trường phái kiến trúc tập lệnh CISC và RISC; cấu trúc mã lệnh (Opcode và toán hạng); các kiểu thao tác cơ bản (gán trị LOAD/STORE, số học ADD/SUB/MUL/DIV, logic, dịch bit SLL/SRL/SRA); cơ chế rẽ nhánh có điều kiện qua cờ trạng thái ALU (S, Z, OVF, C); quản lý ngăn xếp qua con trỏ SP (PUSH/POP); cơ chế gọi thủ tục (CALL/RETURN, lệnh JMPL) và tập lệnh vi xử lý 8086/8088.
- Chương 3: Bộ xử lý (15 tiết): Trình bày sơ đồ khối chi tiết của CPU (CU, ALU, Register File, BIU); phân tích nhiệm vụ và các thành phần của đường dẫn dữ liệu (Datapath); tiến trình 5 giai đoạn thực hiện lệnh máy (Nhận lệnh $\rightarrow$ Dịch lệnh $\rightarrow$ Nhận dữ liệu $\rightarrow$ Xử lý dữ liệu $\rightarrow$ Ghi dữ liệu); nguyên lý thiết kế bộ điều khiển mạch điện tử và bộ điều khiển vi chương trình; kỹ thuật đường ống lệnh (Pipeline), siêu ống dẫn; phân loại 3 dạng chướng ngại (hazards: cấu trúc, dữ liệu, điều khiển) và hoạt động ngắt (Interrupt).
- Chương 4: Bộ nhớ (8 tiết): Phân loại bộ nhớ theo phương pháp truy nhập và khả năng đọc/ghi; cấu trúc bộ nhớ bán dẫn (SRAM, DRAM, ROM); mô hình hệ thống nhớ phân cấp; kỹ thuật ghép nối bộ nhớ với bộ xử lý; cấu trúc và các phương pháp ánh xạ địa chỉ vào bộ nhớ đệm Cache.
- Chương 5: Thiết bị nhớ ngoài (7 tiết): Nguyên lý ghi/đọc trên vật liệu từ (đĩa cứng, đĩa mềm); thiết bị nhớ quang học (CD-ROM, CD-R/W, DVD-ROM, DVD-R/W); cấu tạo các loại thẻ nhớ bán dẫn (Flash disk, memory card) và các biện pháp an toàn dữ liệu lưu trữ.
- Chương 6: Bảng mạch chính (4 tiết): Cấu tạo tổng thể của Mainboard, chức năng kết nối của socket vi xử lý, chipset cầu bắc/cầu nam và các khe cắm mở rộng.
- Chương 7: Các loại bus (5 tiết): Định nghĩa và phân loại bus; cơ chế hoạt động của bus đồng bộ và bus không đồng bộ; kiến trúc phân cấp của bus hệ thống (System bus) và bus vào - ra (I/O bus); các chuẩn bus trong hệ thống vi xử lý.
- Chương 8: Ngôn ngữ Assembly (30 tiết): Cấu trúc chương trình hợp ngữ; cú pháp câu lệnh; các kiểu dữ liệu cơ bản; nhóm lệnh điều khiển và chuyển dòng điều khiển; kỹ thuật quản lý ngăn xếp, truyền tham số và xây dựng thủ tục chương trình con.
Kiến thức nền tảng được xây dựng
-
Lý thuyết biểu diễn dữ liệu và số học máy tính:
- Công thức xác định lượng thông tin: $I = \log_2(N)$.
- Công thức tổng quát giá trị hệ thống số cơ số $k$: $V_k = \sum_{i=-m}^{n-1} b_i \cdot k^i$.
- Chuẩn số thực dấu chấm động IEEE 754 dạng chính xác đơn 32-bit ($S$: 1 bit dấu, $e$: 8 bit mũ với độ lệch bias = 127, $m$: 23 bit phần định trị; công thức $X = (-1)^S \cdot 1.m \cdot 2^{e-127}$) và dạng 64-bit ($S$: 1 bit, $e$: 11 bit mũ với bias = 1023, $m$: 52 bit định trị; công thức $X = (-1)^S \cdot 1.m \cdot 2^{e-1023}$).
-
Nguyên lý kiến trúc và tổ chức hệ thống:
- Mô hình Von Neumann: Dùng chung một không gian bộ nhớ duy nhất cho cả lệnh và dữ liệu, đánh địa chỉ theo vùng độc lập nội dung, thực thi chương trình tuần tự theo 3 giai đoạn (Fetch - Decode/Execute - Store).
- Mô hình Harvard: Phân tách độc lập bộ nhớ chương trình (Program Memory) và bộ nhớ dữ liệu (Data Memory), trang bị 2 hệ thống bus riêng biệt, cho phép nạp lệnh và truy xuất dữ liệu đồng thời nhằm giảm xung đột truy nhập.
-
Cơ chế kiến trúc tập lệnh CISC và RISC:
- CISC: Tập lệnh lớn (>200 lệnh), chiều dài lệnh biến đổi (16 đến 456 bit), nhiều kiểu định vị địa chỉ, sử dụng bộ điều khiển vi chương trình (Microprogram).
- RISC: Tập lệnh rút gọn (<100 lệnh), chiều dài lệnh cố định (32 bit), định dạng đơn giản, thực thi theo kiểu thanh ghi - thanh ghi, sử dụng bộ điều khiển mạch điện tử logic cứng, giảm tỷ lệ diện tích chip cho khối điều khiển từ 60% xuống 10%.
+---------------------------+-----------------------------------+-----------------------------------+
| Tiêu chí so sánh | Kiến trúc CISC (Ví dụ: VAX 11) | Kiến trúc RISC (Ví dụ: MIPS) |
+---------------------------+-----------------------------------+-----------------------------------+
| Số lượng tập lệnh | Lớn (>200 lệnh, phức tạp) | Nhỏ (<100 lệnh, đơn giản) |
| Chiều dài câu lệnh | Thay đổi (16 - 456 bit) | Cố định (thường là 32 bit) |
| Kiểu thực thi lệnh | Ô nhớ - ô nhớ / Ô nhớ - thanh ghi | Thanh ghi - thanh ghi |
| Truy nhập bộ nhớ | Cho phép trong nhiều loại lệnh | Chỉ có trong lệnh LOAD và STORE |
| Bộ điều khiển | Bộ nhớ vi chương trình (Microcode)| Mạch điện tử logic cứng |
| Diện tích chip cho CU | Chiếm khoảng 60% | Chiếm khoảng 10% |
+---------------------------+-----------------------------------+-----------------------------------+
Kỹ năng phát triển
- Kỹ năng kỹ thuật: Chuyển đổi chính xác dữ liệu giữa các hệ số (Dec, Bin, Oct, Hex); tính toán biểu diễn số nguyên bù 2 và chuẩn hóa dấu chấm động IEEE 754; phân tích sơ đồ nối ghép đường dẫn dữ liệu (Datapath) và các bus tín hiệu.
- Kỹ năng phân tích: Đánh giá ưu - nhược điểm của các mô hình kiến trúc CPU; nhận diện và phân tích 3 loại chướng ngại (hazards) gây tắc nghẽn trong kỹ thuật ống dẫn lệnh (Pipeline); phân tích hoạt động của chu trình ngắt và phân cấp bộ nhớ.
- Kỹ năng thực hành: Viết, biên dịch và gỡ lỗi chương trình hợp ngữ Assembly cho vi xử lý 8086/8088; sử dụng các thanh ghi đa dụng và thanh ghi con trỏ (SP, PC); xây dựng cấu trúc rẽ nhánh, vòng lặp và thủ tục lưu trữ địa chỉ trở về trên ngăn xếp hoặc thanh ghi chuyên dụng.
Phương pháp giảng dạy và học tập
Giáo trình áp dụng cách tiếp cận sư phạm đi từ nguyên lý phần cứng đến thực hành lập trình điều khiển. Quy trình đào tạo gắn liền việc phân tích sơ đồ mạch logic, cấu trúc đường dẫn dữ liệu với việc mô phỏng thực thi từng câu lệnh máy.
Tài liệu thiết kế cấu trúc phân bổ thời lượng rõ ràng:
- Tỷ trọng thực hành: 40 tiết thực hành trên tổng số 90 tiết (chiếm 44.4%). Riêng chương 8 (Ngôn ngữ Assembly) bố trí 15 tiết thực hành nhằm giúp sinh viên rèn luyện kỹ năng thao tác trực tiếp với thanh ghi và bộ nhớ.
- Bài tập định lượng: Giáo trình đưa vào các bài toán mẫu kèm lời giải từng bước, chẳng hạn:
- Phương thức số dư và phương thức nhân chuyển đổi số $23.375_{10}$ sang nhị phân ($10111.011_2$).
- Biểu diễn số thực $X = 83.75_{10}$ sang dạng IEEE 754 32-bit: $S=0$, $e=133_{10}=10000101_2$, $m=010011110..._2$, cho ra chuỗi nhị phân $0\ 10000101\ 01001111000000000000000_2$.
- Thuật toán thực thi lệnh so sánh và nhảy điều kiện: Dùng
CMP R4, R1, R2 kết hợp BGT R4, +2 để hiện thực hóa cấu trúc logic IF R1 > R2 THEN R3 = R1 ELSE R3 = R2.
- Quy trình quản lý ngăn xếp cho thủ tục: Dùng
ADDI R30, R30, 4 và STORE R31, (R30) để lưu địa chỉ trở về trước khi nhảy qua JMPL Ri.
Tiến trình thực hiện thủ tục và quản lý ngăn xếp:
1. Ghi địa chỉ trở về: ADDI R30, R30, 4 ; Tăng con trỏ ngăn xếp SP
STORE R31, (R30) ; Lưu địa chỉ trở về (PC) vào Stack
2. Nhảy tới thủ tục: JMPL Ri ; Chuyển điều khiển tới thủ tục tại Ri
3. Thực thi thân thủ tục...
4. Khôi phục địa chỉ: LOAD R31, (R30) ; Lấy địa chỉ trở về từ Stack
SUBI R30, R30, 4 ; Giảm con trỏ ngăn xếp SP
5. Trở về chương trình gọi: JMP R31 ; Nhảy về lệnh kế tiếp của chương trình chính
Phương pháp đánh giá kết quả học tập được xác định cụ thể thông qua 6 giờ kiểm tra định kỳ:
- 1 tiết kiểm tra tại Chương 2 (Kiến trúc tập lệnh).
- 1 tiết kiểm tra tại Chương 3 (Bộ xử lý).
- 1 tiết kiểm tra tại Chương 4 (Bộ nhớ).
- 1 tiết kiểm tra tại Chương 7 (Các loại bus).
- 2 tiết kiểm tra tại Chương 8 (Ngôn ngữ Assembly).
Cuối mỗi chương, giáo trình cung cấp hệ thống câu hỏi tự học và bài tập ôn tập, giúp người học hệ thống hóa lý thuyết (đặc trưng 4 thế hệ, phân biệt kiến trúc và tổ chức, phân loại bus) và củng cố kỹ năng giải bài tập số học nhị phân.
Điểm nổi bật và cập nhật
Giáo trình ghi nhận quá trình phát triển của ngành công nghiệp phần cứng thông qua các mốc công nghệ và sự kiện lịch sử cụ thể:
- Dẫn chứng vụ kiện bản quyền phần mềm đầu tiên trong lịch sử máy tính năm 1982 giữa Apple và Franklin Computer liên quan đến mẫu máy Franklin Ace 100 sao chép phần cứng và phần mềm của Apple II.
- Phân tích số liệu thương mại của dòng máy tính gia đình Commodore 64 với gần 30 triệu máy bán ra trong giai đoạn 1982 - 1993.
- Ghi nhận mẫu máy tính IBM PC XT trang bị ổ cứng trong 10 MB, các dòng máy Apple Lisa (1983) và Macintosh (1984) đặt nền móng cho giao diện đồ họa (GUI).
- Cột mốc máy tính NeXT (1990) của Steve Jobs - thiết bị được Tim Berners-Lee sử dụng làm máy chủ World Wide Web đầu tiên.
- Trận đấu cờ vua lịch sử giữa siêu máy tính IBM Deep Blue và đại kiện tướng Garry Kasparov (thắng ván đầu năm 1996 và giành chiến thắng chung cuộc năm 1997), thể hiện năng lực tính toán song song.
- Dòng máy iMac (1998) và các phân tích về xu hướng máy tính bảng iPad.
Về mặt kiến trúc, giáo trình tổng hợp số liệu kỹ thuật so sánh giữa các dòng máy CISC kinh điển (IBM 370/168 sản xuất năm 1973 với 208 lệnh; VAX 11/780 năm 1978 với 303 lệnh; Intel 80386 năm 1982 với 222 lệnh) và các mẫu máy RISC đầu tiên (IBM 801 năm 1980 với 120 lệnh; Berkeley RISC1 năm 1982 với 39 lệnh; Stanford MIPS năm 1983 với 55 lệnh, đều có độ dài lệnh cố định 32 bit). Tài liệu cũng phân tích các thiết kế vi xử lý tích hợp như chip Intel i860 kết hợp nhân RISC với bộ xử lý số thực và tạo đồ họa.
Nội dung giáo trình liên kết trực tiếp với thực tế ngành nghề, cung cấp kiến thức nền tảng phục vụ các công việc lắp ráp, kiểm thử phần cứng, cấu hình bus kết nối và phân tích mã lỗi hệ thống trong quản trị mạng.
Đối tượng sử dụng giáo trình
Giáo trình được biên soạn phục vụ các nhóm đối tượng cụ thể:
- Sinh viên: Học viên theo học trình độ Trung cấp và Cao đẳng ngành Tin học văn phòng, Quản trị mạng, Kỹ thuật sửa chữa và lắp ráp máy tính. Giáo trình cung cấp kiến thức phần cứng cần thiết trước khi học các môn chuyên ngành sâu.
- Yêu cầu tiên quyết: Người học cần có kiến thức cơ bản về Tin học đại cương, kỹ năng sử dụng máy tính văn phòng, hiểu biết về mạch logic và Kỹ thuật điện - điện tử cơ sở.
- Giảng viên chuyên ngành: Sử dụng giáo trình làm tài liệu chuẩn để soạn giáo án lý thuyết và bài giảng thực hành cho học phần Cấu trúc máy tính 90 tiết. Cấu trúc mục tiêu, nội dung bài học và hệ thống câu hỏi cuối chương đóng vai trò khung tham chiếu để xây dựng ngân hàng đề thi định kỳ và thi kết thúc môn.
- Cán bộ kỹ thuật và người tự học: Tài liệu phục vụ tra cứu các chuẩn biểu diễn số IEEE 754, nguyên lý phân bổ cờ trạng thái ALU, sơ đồ Datapath, tập lệnh vi xử lý 8086/8088 và cấu trúc chương trình hợp ngữ Assembly.
Câu hỏi thường gặp
1. Giáo trình này phù hợp với ai?
Giáo trình phù hợp với học sinh, sinh viên các trường đào tạo nghề, cao đẳng và đại học thuộc nhóm ngành Công nghệ thông tin, Quản trị mạng, Tin học văn phòng và Kỹ thuật phần cứng, những người cần nắm vững nguyên lý hoạt động của các khối vi xử lý, bộ nhớ và bus hệ thống.
2. Cần kiến thức nền nào để học?
Người học cần hoàn thành các môn học chung, học phần Tin học đại cương, Tin học văn phòng và Kỹ thuật điện - điện tử cơ bản để có nền tảng về đại số logic, mạch điện tử và các thao tác kỹ thuật cơ sở.
3. Điểm khác biệt của giáo trình so với các tài liệu khác?
Tài liệu được tinh chỉnh phù hợp với chương trình đào tạo nghề kỹ thuật: giảm bớt các chứng minh toán học phức tạp, tập trung làm rõ sơ đồ khối, cơ chế thực thi lệnh, phân tích số liệu thực nghiệm giữa CISC/RISC và dành thời lượng lớn (30 tiết) cho việc thực hành ngôn ngữ Assembly 8086/8088.
4. Làm sao để tự học hiệu quả?
Người học cần kết hợp đọc lý thuyết từng chương với việc giải các bài tập tính toán cơ số, biểu diễn số chấm động IEEE 754, sau đó trực tiếp viết và chạy thử các chương trình con hợp ngữ trên các phần mềm mô phỏng vi xử lý 8086/8088 để nắm vững cơ chế quản lý thanh ghi và ngăn xếp.
5. Có tài liệu bổ trợ nào kèm theo?
Giáo trình tích hợp sẵn hệ thống câu hỏi ôn tập, bài tập tính toán cuối mỗi chương (từ trang 28 đến trang 129) và danh mục tài liệu tham khảo chuyên ngành cấu trúc máy tính, hợp ngữ tại trang 131 của tài liệu.
Kết luận
Giáo trình môn học: Cấu trúc máy tính của tác giả Phạm Anh Đức là tài liệu học thuật cơ sở, cung cấp hệ thống tri thức hoàn chỉnh từ mức vi kiến trúc, đường dẫn dữ liệu, tập lệnh CISC/RISC cho đến kỹ năng lập trình hợp ngữ Assembly. Lộ trình học tập đề xuất là hoàn thành tuần tự 8 chương theo tỷ lệ 44 tiết lý thuyết và 40 tiết thực hành, làm nền tảng trực tiếp để tiếp thu mô đun Lắp ráp cài đặt máy tính và các nghiệp vụ Quản trị mạng. Người học có thể tham khảo thêm các tài liệu chuyên khảo về vi xử lý 8086 và kiến trúc phần cứng được nêu trong danh mục tài liệu tham khảo ở trang 131 của giáo trình.