TỔNG QUAN HỌC THUẬT VÀ NỘI DUNG GIÁO TRÌNH KIẾN TRÚC MÁY TÍNH

Tổng quan về giáo trình

Giáo trình Kiến trúc máy tính do nhóm tác giả thuộc Bộ môn Kỹ thuật máy tính và Mạng, Khoa Công nghệ thông tin, Trường Đại học Thủy Lợi biên soạn, bao gồm TS. Phạm Thanh Bình (Chủ biên), ThS. Nguyễn Thị Phương Thảo và ThS. Nguyễn Hằng Phương, được xuất bản bởi Nhà xuất bản Bách Khoa Hà Nội. Trong chương trình đào tạo đại học các ngành Công nghệ thông tin và các khối ngành kỹ thuật liên quan, Kiến trúc máy tính giữ vị trí là môn học cơ sở khối ngành, cung cấp nền tảng phần cứng thiết yếu phục vụ cho việc tiếp thu các môn học chuyên sâu như Hệ điều hành, Mạng máy tính, Lập trình hệ thống và Trình biên dịch.

Về mục tiêu đào tạo, giáo trình trang bị cho người học hệ thống tri thức cốt lõi về cấu trúc, tổ chức và nguyên lý vận hành của các thành phần chức năng bên trong một hệ thống máy tính số. Sinh viên sau khi hoàn thành học phần có khả năng giải thích bản chất thực thi lệnh ở mức phần cứng, phân tích hiệu năng của hệ thống xử lý, cấu trúc phân cấp bộ nhớ, cũng như cơ chế giao tiếp vào/ra.

Tài liệu được xây dựng theo phương pháp tiếp cận từ trên xuống (top-down), bắt đầu từ mô hình tổng quát cấp hệ thống, sau đó phân rã chi tiết vào từng phân hệ chức năng: hệ thống kết nối, bộ nhớ cache, bộ nhớ trong, bộ nhớ ngoài, module vào/ra (I/O), khối tính toán số học - logic (ALU), tập lệnh và cấu trúc vi xử lý (CPU). Điểm cốt lõi của giáo trình là sự đối sánh trực quan giữa hai phạm trù: "Kiến trúc máy tính" (các thuộc tính hiển thị với lập trình viên như tập lệnh, chế độ địa chỉ) và "Tổ chức máy tính" (các khối chức năng và mạch kết nối phần cứng thực thi kiến trúc đó). Nội dung giáo trình được phát triển dựa trên khung tham chiếu từ công trình Computer Organization and Architecture của William Stallings, kết hợp với các dữ liệu kỹ thuật từ các hệ kiến trúc phổ biến gồm Intel x86 và ARM.


Nội dung kiến thức cốt lõi

Các chương/chủ đề chính

Giáo trình được bố cục thành 11 chương với tiến trình phát triển nội dung logic và chặt chẽ:

  • Chương 1: Giới thiệu: Trình bày cơ sở toán học (các hệ đếm cơ số 10, cơ số 2, cơ số 8, cơ số 16; phương pháp chuyển đổi số nguyên và phần phân số); phân biệt khái niệm kiến trúc và tổ chức máy tính; xác lập 4 chức năng chính của máy tính (xử lý dữ liệu, lưu trữ dữ liệu, di chuyển dữ liệu, điều khiển) cùng 4 thành phần cấu trúc cơ bản (CPU, Bộ nhớ chính, I/O, Hệ thống kết nối).
  • Chương 2: Sự phát triển của máy tính và hiệu năng: Khái quát các thế hệ máy tính qua lịch sử linh kiện (đèn ống chân không, transistor, mạch tích hợp SSI, MSI, LSI, VLSI, ULSI); phân tích cấu trúc máy tính ENIAC và mô hình kiến trúc Von Neumann thông qua nguyên mẫu máy tính IAS (tập 21 lệnh, định dạng từ 40-bit, các thanh ghi MAR, MBR, IR, IBR, PC, AC, MQ); đánh giá hiệu năng vi xử lý, kiến trúc đa nhân MIC, GPU và sự phát triển của họ Intel x86 và ARM.
  • Chương 3: Chức năng và kết nối máy tính: Mô tả chu kỳ lệnh (truy xuất, thực thi), cấu trúc ngắt (ngắt đơn, đa ngắt ưu tiên); cấu trúc bus phân cấp và các kỹ thuật kết nối điểm-điểm tốc độ cao như Intel QPI (gồm 4 lớp: vật lý, liên kết, định tuyến, giao thức) và chuẩn PCIe (với các lớp giao vận và gói TLP).
  • Chương 4: Bộ nhớ cache: Phân tích nguyên lý cục bộ (locality) và phân cấp bộ nhớ; các tham số thiết kế bộ nhớ cache bao gồm kích thước cache, hàm ánh xạ (ánh xạ trực tiếp, kết hợp toàn phần, kết hợp tập hợp k chiều), thuật toán thay thế dòng cache (LRU, LFU), chính sách ghi (write-through, write-back) và tổ chức cache thực tế trên vi xử lý Pentium 4.
  • Chương 5, 6 và 7: Bộ nhớ trong, Bộ nhớ ngoài và Module Vào/Ra (I/O):
    • Bộ nhớ bán dẫn (SRAM, DRAM, SDRAM, RDRAM, DDR SDRAM, các loại ROM/PROM/EPROM/EEPROM) và cơ chế mã sửa lỗi Hamming (SEC-DED);
    • Cấu trúc đĩa từ HDD, các cấp mảng đĩa RAID (từ RAID 0), bộ nhớ flash/SSD, đĩa quang (CD, DVD) và băng từ;
    • Ba kỹ thuật điều khiển Vào/Ra chính: I/O theo chương trình, I/O điều khiển ngắt (kỹ thuật thăm dò phần mềm, chuỗi Daisy, chip điều khiển ngắt 82C59A) và cơ chế DMA (Direct Memory Access); bộ xử lý và kênh I/O.
  • Chương 8: Tính toán số học: Khối tính toán số học và logic ALU; biểu diễn số nguyên có dấu (dạng bù hai), thuật toán nhân số nguyên không dấu và thuật toán Booth cho phép nhân bù hai; các phép toán chia nhị phân; chuẩn IEEE 754 biểu diễn số thực dấu chấm động 32-bit/64-bit và thuật toán số học trên số dấu chấm động.
  • Chương 9, 10 và 11: Tập lệnh và Cấu trúc Bộ xử lý (CPU):
    • Đặc điểm tập lệnh (opcode, toán hạng, phân loại lệnh), kiểu dữ liệu x86 và ARM, hỗ trợ Endian (Big-Endian/Little-Endian);
    • Các chế độ định địa chỉ: tức thì, trực tiếp, gián tiếp, thanh ghi, gián tiếp thanh ghi, dịch chuyển, ngăn xếp; khảo sát định dạng lệnh trên các dòng máy PDP-8, PDP-10, PDP-11, VAX;
    • Tổ chức thanh ghi CPU (thanh ghi người dùng, thanh ghi điều khiển/trạng thái PSW), luồng dữ liệu chu kỳ lệnh; kỹ thuật đường ống lệnh (pipelining 2 giai đoạn và 6 giai đoạn), các loại xung đột (hazard tài nguyên, hazard dữ liệu, hazard rẽ nhánh), cơ chế dự đoán nhánh và đường ống lệnh trong vi xử lý Intel 80486.
flowchart TD
    A["Cơ sở toán học & Hệ đếm\n(Hệ 2, 8, 10, 16 - Chương 1)"] --> B["Kiến trúc Von Neumann & Lịch sử\n(ENIAC, IAS, x86, ARM - Chương 2)"]
    B --> C["Hệ thống kết nối & I/O\n(Bus, QPI, PCIe, DMA, 82C59A - Chương 3, 7)"]
    B --> D["Hệ thống lưu trữ phân cấp\n(Cache, DRAM/SRAM, HDD, SSD, RAID - Chương 4, 5, 6)"]
    C --> E["Tập lệnh & Chế độ địa chỉ ISA\n(Định dạng lệnh, Toán hạng, PDP, VAX - Chương 9, 10)"]
    D --> E
    E --> F["Khối tính toán ALU & Số học máy tính\n(Bù hai, Thuật toán Booth, IEEE 754 - Chương 8)"]
    F --> G["Cấu trúc vi xử lý CPU & Kỹ thuật Pipeline\n(Thanh ghi, Data Hazards, Intel 80486 - Chương 11)"]

Kiến thức nền tảng được xây dựng

  • Lý thuyết nền tảng (Fundamental theories): Định đề phân biệt giữa Kiến trúc máy tính (thuộc tính nhìn thấy bởi lập trình viên) và Tổ chức máy tính (cách hiện thực hóa phần cứng); mô hình máy tính chương trình lưu trữ của John von Neumann và Alan Turing.
  • Nguyên lý cốt lõi (Core principles): Nguyên lý phân cấp bộ nhớ (Memory Hierarchy Trade-offs giữa tốc độ, dung lượng và giá thành); nguyên lý xử lý đường ống lệnh (pipelining) và cơ chế xử lý ngắt trong điều khiển luồng chương trình.
  • Khung tham chiếu kỹ thuật (Essential frameworks): Chuẩn công nghiệp IEEE 754 cho tính toán dấu chấm động; mô hình phân tầng giao thức kết nối điểm-điểm Intel QPI và PCI Express; mô hình tổ chức dữ liệu mảng đĩa độc lập RAID.

Kỹ năng phát triển

  • Kỹ năng kỹ thuật (Technical skills): Thực hiện chuyển đổi qua lại giữa các hệ đếm cơ số; tính toán và gán địa chỉ bộ nhớ cache; thiết lập bit kiểm tra theo mã sửa lỗi Hamming; mô phỏng các phép toán số học nhị phân bằng thuật toán Booth và chuẩn hóa dấu chấm động IEEE 754.
  • Kỹ năng phân tích (Analytical skills): Phân tích luồng dữ liệu (data flow) qua các chu kỳ truy xuất, gián tiếp, thực thi và ngắt; đánh giá các loại xung đột (hazard) trong đường ống lệnh vi xử lý; so sánh hiệu năng các cấu hình bộ nhớ và kỹ thuật Vào/Ra.
  • Năng lực ứng dụng thực tiễn (Practical competencies): Vận dụng hiểu biết về chế độ địa chỉ và tổ chức thanh ghi để hiểu sâu hoạt động của mã máy, tối ưu hóa thuật toán phần mềm tương thích với cơ chế bộ nhớ đệm và kiến trúc phần cứng vi xử lý.

Phương pháp giảng dạy và học tập

Giáo trình Kiến trúc máy tính được thiết kế xoay quanh phương pháp sư phạm tiếp cận hệ thống từ trên xuống (top-down approach). Phương pháp này giúp người học tiếp cận bức tranh toàn cảnh về mặt chức năng trước khi đi sâu vào chi tiết cơ chế vi điện tử và cổng logic bên trong từng linh kiện.

Hệ thống tài liệu bao gồm:

  • Hệ thống ví dụ kỹ thuật chi tiết: Minh họa tường minh từng bước chuyển đổi hệ đếm (ví dụ chuyển đổi số nguyên 13 sang nhị phân 1101₂, chuyển đổi phần phân số 4.9₁₀), sơ đồ thời gian hoạt động của SDRAM, luồng thực thi chương trình giả định với các giá trị thập lục phân cụ thể trên bộ nhớ và thanh ghi.
  • Nghiên cứu kiến trúc thực tế (Case studies): Các kiến trúc lịch sử và hiện đại được đưa vào phân tích chuyên sâu gồm máy tính IAS, IBM System/360, System/370, dòng máy mini PDP-8, PDP-10, PDP-11, VAX, cùng hai họ kiến trúc chủ đạo của công nghiệp vi xử lý hiện đại là Intel x86 (từ 80486 đến Pentium 4) và ARM.
  • Bài tập và câu hỏi ôn tập: Cuối mỗi chương đều cung cấp hệ thống câu hỏi định tính và bài tập định lượng (như các bài toán chuyển đổi hệ đếm, phân loại cấu trúc, tính toán địa chỉ, phân tích chu kỳ lệnh), phục vụ mục đích tự đánh giá và củng cố kiến thức.
  • Phương pháp kiểm tra đánh giá: Giảng viên có thể khai thác nội dung giáo trình để xây dựng đề thi trắc nghiệm và tự luận xoay quanh các kỹ năng: tính toán ALU, thiết kế sơ đồ ánh xạ cache, phân tích đường truyền dữ liệu bus/QPI, và dự đoán nhánh trong pipeline.
  • Hướng dẫn tự học: Người học được định hướng nắm bắt bảng chú giải từ viết tắt chuyên ngành (AC, ALU, DMA, ISR, LFU, LRU, MAR, MBR, MMU, PSW, QPI, RAID, SDRAM, SEC-DED), kết hợp việc tra cứu chéo giữa danh mục bảng biểu và hình vẽ kỹ thuật để hiểu rõ nguyên lý vận hành trước khi thực hành các bài tập tính toán.

Điểm nổi bật và cập nhật

Giáo trình tích hợp nhiều nội dung cập nhật sát với sự phát triển của công nghệ máy tính:

  1. Mở rộng kiến trúc hiện đại song song với kiến trúc cổ điển: Không giới hạn ở kiến trúc đơn nhân truyền thống, giáo trình bổ sung các nội dung về kiến trúc vi xử lý đa nhân, khối đồng xử lý nhiều nhân tích hợp MIC (Many Integrated Core) và bộ xử lý đồ họa GPU.
  2. Khảo sát song song hai nền tảng vi xử lý x86 và ARM: Đưa kiến trúc ARM (cấu trúc RISC, hệ thống nhúng, hỗ trợ Endian) vào so sánh trực tiếp với kiến trúc Intel x86 (CISC), phản ánh bức tranh toàn diện của thị trường máy tính cá nhân, máy chủ và thiết bị nhúng di động.
  3. Cập nhật công nghệ kết nối điểm-điểm tốc độ cao: Thay thế mô hình kết nối bus chia sẻ truyền thống bằng việc phân tích chi tiết cấu trúc phân lớp của Intel QPI (QuickPath Interconnect) và chuẩn PCI Express (PCIe), bao gồm cấu trúc gói tin và phân bố đa làn dữ liệu.
  4. Cập nhật công nghệ lưu trữ thế hệ mới: Cung cấp các phân tích kỹ thuật chuyên sâu về cấu trúc ô nhớ flash, cơ chế hoạt động của ổ đĩa bán dẫn SSD trong sự so sánh với ổ đĩa từ HDD truyền thống, bên cạnh các công nghệ RAM đồng bộ thế hệ mới như DDR SDRAM và RDRAM.
  5. Chuẩn hóa học thuật quốc tế: Toàn bộ quy chuẩn về biểu diễn và tính toán số học dấu chấm động được chuẩn hóa tuyệt đối theo chuẩn IEEE 754; ký hiệu dấu chấm thập phân được quy chuẩn theo thông lệ quốc tế trong lĩnh vực công nghệ thông tin.

Đối tượng sử dụng giáo trình

  • Sinh viên đại học: Tài liệu được biên soạn phục vụ trực tiếp cho sinh viên năm thứ hai hoặc năm thứ ba thuộc các ngành: Công nghệ thông tin, Kỹ thuật máy tính, Mạng máy tính và Truyền thông dữ liệu, Hệ thống thông tin và Kỹ thuật phần mềm.
  • Điều kiện tiên quyết (Prerequisites): Để tiếp thu giáo trình một cách thuận lợi, người học cần trang bị kiến thức nền tảng về Toán rời rạc, Nhập môn Tin học/Lập trình cơ bản, và các khái niệm cơ sở về Mạch logic/Kỹ thuật số.
  • Giảng viên chuyên ngành: Sử dụng làm tài liệu giảng dạy chính khóa, định hình đề cương chi tiết học phần, làm nguồn tư liệu chuẩn để biên soạn bài giảng điện tử và ngân hàng câu hỏi thi kết thúc học phần.
  • Kỹ sư và Lập trình viên tự học: Là tài liệu tham khảo cho các kỹ sư phát triển phần mềm nhúng, lập trình viên hệ thống, hoặc người làm việc trong lĩnh vực phần cứng cần tra cứu các thông số kỹ thuật, chế độ định địa chỉ, cơ chế hoạt động của ngắt, DMA và các thuật toán tính toán ở mức phần cứng.

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 được thiết kế làm tài liệu học tập chính thức cho sinh viên bậc đại học ngành Công nghệ thông tin và các ngành kỹ thuật liên quan tại Trường Đại học Thủy Lợi, đồng thời là tài liệu tham khảo phù hợp cho sinh viên các trường kỹ thuật khác và kỹ sư công nghệ quan tâm đến phần cứng máy tính.

2. Cần kiến thức nền nào để học?

Người học cần có kiến thức cơ bản về toán học đại cương, biểu diễn logic nhị phân cơ bản và kỹ năng lập trình căn bản để hiểu được các quy trình giải mã lệnh, thao tác trên thanh ghi và cấu trúc dữ liệu ngăn xếp.

3. Điểm khác biệt của giáo trình này so với các giáo trình khác?

Giáo trình có sự kết hợp giữa lý thuyết nền tảng kinh điển (mô hình Von Neumann, máy tính IAS, kiến trúc PDP, VAX) với các công nghệ vi xử lý hiện đại (Intel x86 đa nhân, vi xử lý ARM, kết nối PCIe, QPI, ổ cứng thể rắn SSD). Nội dung bám sát khung giáo trình chuẩn quốc tế của tác giả William Stallings.

4. Làm sao để tự học hiệu quả với giáo trình này?

Người học nên tuân thủ tiến trình từ Chương 1 đến Chương 11, kết hợp đọc kỹ sơ đồ khối luồng dữ liệu, tự thực hiện các bài toán chuyển đổi hệ đếm và thuật toán tính toán (thuật toán Booth, chuẩn IEEE 754), sau đó trả lời đầy đủ các câu hỏi ôn tập ở cuối mỗi chương.

5. Có tài liệu bổ trợ nào kèm theo?

Giáo trình được biên soạn dựa trên cuốn Computer Organization and Architecture của William Stallings. Người học có thể tham khảo thêm cuốn sách gốc này cùng các tài liệu tra cứu tập lệnh chi tiết của hãng Intel và ARM để mở rộng kiến thức thực hành.


Kết luận

Giáo trình Kiến trúc máy tính của Trường Đại học Thủy Lợi do Nhà xuất bản Bách Khoa Hà Nội ấn hành là tài liệu học thuật tổng hợp đầy đủ các tri thức từ cơ sở toán học, tổ chức hệ thống phần cứng, cơ chế quản lý bộ nhớ phân cấp đến cấu trúc tập lệnh và vi xử lý. Lộ trình tiếp thu kiến thức được xây dựng theo trật tự logic: bắt đầu từ cơ sở hệ đếm và kiến trúc Von Neumann tổng quát, qua phân hệ lưu trữ và vào/ra dữ liệu, đến phân tích chi tiết khối tính toán ALU và kỹ thuật đường ống lệnh trong CPU. Để tối ưu hóa hiệu quả học tập, người học nên kết hợp nghiên cứu giáo trình cùng cuốn Computer Organization and Architecture của William Stallings và các đặc tả kỹ thuật phần cứng liên quan.