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

Bài giảng Cấu trúc Máy tính (Computer Structure) do giảng viên Đinh Đồng Lưỡng biên soạn, trực thuộc Khoa Công nghệ Thông tin – Trường Đại học Thủy sản. Trong chương trình đào tạo bậc đại học ngành Công nghệ Thông tin, học phần này giữ vị trí khối kiến thức cơ sở ngành, làm cầu nối trực tiếp giữa kiến thức lập trình phần mềm và nguyên lý vận hành của phần cứng máy tính.

Mục tiêu học tập của bài giảng bao gồm ba nội dung chính:

  • Cung cấp hiểu biết hệ thống về cấu trúc và tổ chức bên trong của các hệ thống máy tính.
  • Làm rõ nguyên lý hoạt động cơ bản của máy tính số dựa trên mô hình kiến trúc lưu trữ chương trình.
  • Khảo sát các bước tiến hóa phần cứng và giới thiệu cấu trúc các dòng vi xử lý tiêu biểu của Intel.

Về mặt cấu trúc, tài liệu tiếp cận hệ thống máy tính từ bức tranh toàn cảnh đến chi tiết vi kiến trúc. Khởi đầu từ việc phân định các khái niệm nền tảng (phần cứng, phần mềm, phần dẻo, kiến trúc, tổ chức, cấu trúc), bài giảng dẫn dắt người học qua mô hình phân lớp hệ thống, chu kỳ xử lý lệnh cơ bản, trước khi phân tích sâu vào từng khối chức năng riêng biệt.

Điểm đặc sắc của bài giảng là tính chuẩn hóa trong việc phân loại và mô hình hóa. Nội dung làm rõ sự khác biệt giữa ba khái niệm thường bị đồng nhất: Kiến trúc máy tính (Computer Architecture – thuộc tính nhìn từ góc độ lập trình viên), Tổ chức máy tính (Computer Organization – các khối chức năng và mối liên kết vật lý thực thi kiến trúc), và Cấu trúc máy tính (Computer Structure – các thành phần cấu tạo và liên kết ở mức cao nhất gồm CPU, bộ nhớ, hệ thống vào/ra và liên kết hệ thống).


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

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

Chương trình học phần bao gồm 6 chương với trình tự logic đi từ tổng quan đến chi tiết từng phân hệ:

  1. Chương 1: Giới thiệu chung

    • Trình bày định nghĩa máy tính, chương trình, phần mềm, phần cứng, phần dẻo.
    • Phân biệt kiến trúc máy tính, tổ chức máy tính và cấu trúc máy tính.
    • Mô hình phân lớp hệ thống: Người dùng $\rightarrow$ Ứng dụng $\rightarrow$ Phần mềm trung gian $\rightarrow$ Hệ điều hành $\rightarrow$ Phần cứng.
    • 4 chức năng cơ bản của máy tính: Xử lý dữ liệu (Data Processing), Lưu trữ dữ liệu (Data Storage), Vận chuyển dữ liệu (Data Movement), Điều khiển (Control).
    • Phân loại máy tính theo phương pháp truyền thống (Microcomputer, Minicomputer, Mainframe, Supercomputer) và hiện đại (Desktop, Server, Embedded Computer).
    • Lịch sử 4 thế hệ máy tính: Đèn chân không (1946–1955, tiêu biểu là máy ENIAC), Transistor (1955–1965), Mạch tích hợp IC (1966–1980), Mạch tích hợp mật độ cực lớn VLSI (1980 đến nay).
    • Lịch sử vi xử lý: Intel 4004 (1971), Intel 8086/8088 (1978/1979), 80286 (1980), Pentium (1993), Pentium II (1997), Pentium III (1999), Pentium 4 (2003) và dòng Celeron; máy vi tính Micral do André Trương Trọng Thi sáng tạo.
  2. Chương 2: Hệ thống máy tính

    • Mô hình và đặc điểm kiến trúc Von Neumann: dữ liệu và chương trình nằm trong bộ nhớ đọc/ghi; bộ nhớ đánh địa chỉ theo ngăn nhớ độc lập với nội dung; thực thi lệnh tuần tự.
    • 4 thành phần cơ bản: Bộ xử lý trung tâm (CPU), Hệ thống nhớ, Hệ thống vào/ra (I/O), Liên kết hệ thống (System Interconnection).
    • Cấu trúc CPU: Đơn vị điều khiển (CU), Đơn vị số học và logic (ALU), Tập thanh ghi (RF), Đơn vị nối ghép Bus (BIU).
    • Chu kỳ xung nhịp và hiệu năng: Khái niệm tần số xung nhịp ($f_o$), chu kỳ xung nhịp ($T_o = 1/f_o$), thời gian thực thi thao tác ($k T_o$).
    • Phân cấp bộ nhớ: Bộ nhớ trong (Bộ nhớ chính Main Memory đánh địa chỉ theo byte, Bộ nhớ đệm nhanh Cache Memory tích hợp 2 mức) và Bộ nhớ ngoài (bộ nhớ từ, bộ nhớ quang, bộ nhớ bán dẫn flash/memory card).
    • Hệ thống vào/ra: Thiết bị ngoại vi (bàn phím, chuột, màn hình, máy in, modem...) và Module I/O với các cổng kết nối (COM, LPT, USB, VGA).
    • Hoạt động thực thi chương trình: Chu kỳ lệnh gồm giai đoạn Nhận lệnh (Fetch) sử dụng thanh ghi con trỏ lệnh PC (Program Counter) và thanh ghi lệnh IR (Instruction Register), kế tiếp là giai đoạn Thực thi lệnh (Execute).
  3. Chương 3: Biểu diễn dữ liệu và số học máy tính

    • Các định dạng biểu diễn số và dữ liệu nhị phân trong máy tính.
    • Nguyên lý thực hiện các phép tính số học và logic trên phần cứng.
  4. Chương 4: Bộ xử lý trung tâm (CPU)

    • Chi tiết tổ chức khối ALU, khối CU và tập thanh ghi.
    • Kỹ thuật điều khiển luồng lệnh và phối hợp hoạt động của các bus nội bộ.
  5. Chương 5: Bộ nhớ máy tính

    • Cơ chế quản lý bộ nhớ bán dẫn RAM, ROM.
    • Nguyên lý ánh xạ và vận hành của bộ nhớ đệm Cache, phương thức lưu trữ bộ nhớ ngoài.
  6. Chương 6: Hệ thống vào ra

    • Các phương thức điều khiển trao đổi dữ liệu giữa CPU, Module I/O và thiết bị ngoại vi.
    • Cơ chế địa chỉ hóa cổng và quản lý ghép nối thiết bị.

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

  • Lý thuyết nền tảng: Kiến trúc Von Neumann / máy tính IAS (thiết kế 1947–1952 dựa trên ý tưởng của Alan Turing và John von Neumann), làm nền móng cho cấu trúc máy tính hiện đại.
  • Nguyên lý cốt lõi: Nguyên lý lưu trữ chương trình; nguyên lý thực thi lệnh tuần tự; mô hình chu kỳ lệnh 2 pha (Fetch – Execute) với cơ chế tự động tăng của thanh ghi PC; mô hình phân cấp bộ nhớ theo tốc độ, dung lượng và giá thành.
  • Khung phân tích hệ thống: Khung mô hình phân tầng máy tính (Hardware – OS – Middleware – Applications – Users) và sơ đồ 4 chức năng vận hành dữ liệu.

Kỹ năng phát triển

  • Kỹ năng kỹ thuật:
    • Tính toán các tham số xung nhịp và thời gian thực thi của CPU (ví dụ: bộ xử lý Pentium 4 xung nhịp 2 GHz có $f_o = 2 \times 10^9\text{ Hz} \rightarrow T_o = 0.5\text{ ns}$).
    • Đọc hiểu sơ đồ chức năng và đường truyền bus nội bộ CPU (Internal CPU Bus, ALU, Register File, CU, BIU).
    • Phân tích mã máy và luồng dữ liệu của các lệnh cơ bản (như lệnh nạp 0001: loader, lưu trữ 0010: store, cộng 0101: add).
  • Kỹ năng phân tích: Phân tích sự cân bằng hiệu năng giữa tốc độ xử lý của CPU và độ trễ truy xuất của các tầng bộ nhớ (Cache $\leftrightarrow$ Main Memory $\leftrightarrow$ External Memory).
  • Năng lực thực tiễn: Khảo sát và phân biệt cấu hình phần cứng của các hệ thống máy tính để bàn, máy chủ và hệ thống nhúng; nhận diện chuẩn giao tiếp các cổng ngoại vi (COM, LPT, USB, VGA).

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

Phương pháp giảng dạy của học phần kết hợp giữa truyền đạt lý thuyết kiến trúc và mô hình hóa trực quan:

  • Tiếp cận sư phạm: Sử dụng sơ đồ khối chức năng để giải thích tương tác giữa các phần cứng (CPU, Bus, Memory, I/O Module). Giảng viên đóng vai trò hệ thống hóa lý thuyết và định hướng phân tích cấu trúc vi xử lý.
  • Bài tập và tình huống thực tế:
    • Phân tích các mốc phát triển phần cứng lịch sử: khảo sát thông số máy ENIAC (nặng 30 tấn, diện tích 150 $\text{m}^2$, công suất 140 kW, 18.000 bóng đèn điện tử, tốc độ 5.000 phép cộng/giây, lập trình bằng công tắc); đánh giá thiết kế máy vi tính Micral của André Trương Trọng Thi.
    • Bài tập định lượng về xung nhịp và chu kỳ lệnh máy tính.
    • Bài tập mô phỏng từng bước chu kỳ nhận lệnh và thực thi lệnh qua các thanh ghi PC, IR và ALU.
  • Hình thức đánh giá:
    • Yêu cầu sinh viên đọc tài liệu chuyên ngành trước khi lên lớp.
    • Làm việc theo nhóm để chuẩn bị và thực hiện báo cáo chuyên đề trực tiếp trên lớp.
    • Đánh giá năng lực giải quyết bài tập phân tích kiến trúc phần cứng.
  • Hướng dẫn tự học: Sinh viên đối chiếu bài giảng với các tài liệu tham khảo tiêu chuẩn được quy định trong đề cương môn học để mở rộng chi tiết về vi kiến trúc và kỹ thuật bảo trì máy tính.

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

Bài giảng tích hợp nhiều nội dung phản ánh tiến trình công nghệ phần cứng máy tính:

  • Phân loại hệ thống máy tính theo hướng hiện đại: Bên cạnh cách phân loại truyền thống theo kích thước và quy mô xử lý (Microcomputer, Minicomputer, Mainframe, Supercomputer), bài giảng bổ sung phân loại theo môi trường ứng dụng thực tế:
    • Máy tính để bàn (Desktop Computer): Phân định giữa PC thông dụng và máy trạm (Workstation) với tầm giá từ 100$ đến 10.000$.
    • Máy chủ (Servers): Hoạt động theo mô hình Client/Server, tối ưu hiệu năng, độ tin cậy và dung lượng bộ nhớ, tầm giá từ hàng chục nghìn đến hàng chục triệu USD.
    • Máy tính nhúng (Embedded Computer): Thiết kế chuyên dụng đặt trong điện thoại di động, thiết bị điều khiển gia đình, thiết bị định tuyến Router.
  • Tích hợp các thành tựu của công nghệ vi mạch tích hợp mật độ cực lớn (VLSI):
    • Bộ vi xử lý tích hợp hoàn chỉnh trên một chip bán dẫn.
    • Bộ vi mạch điều khiển tổng hợp (Chipset).
    • Bộ nhớ bán dẫn độc lập (ROM, RAM) tổ chức theo dạng module.
    • Bộ nhớ đệm nhanh (Cache) tích hợp trực tiếp bên trong vi xử lý với cấu trúc đa mức (L1, L2).
  • Hệ thống hóa lịch sử các dòng vi xử lý Intel: Trình bày tiến trình phát triển từ vi xử lý 4004 (1971), vi xử lý 16-bit 8086/8088 (1978/1979), 80286 (1980) đến các thế hệ Pentium (1993), Pentium II (1997), Pentium III (1999), Pentium 4 (2003) và các biến thể Celeron.

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

  • Sinh viên mục tiêu: Sinh viên bậc đại học ngành Công nghệ Thông tin, Kỹ thuật Máy tính và các ngành kỹ thuật liên quan tại Trường Đại học Thủy sản và các cơ sở đào tạo đại học.
  • Kiến thức tiên quyết (Prerequisites): Sinh viên cần có kiến thức cơ bản về lập trình (để hiểu khái niệm chương trình, luồng điều khiển, rẽ nhánh) và kiến thức toán học/logic cơ bản.
  • Ứng dụng cho giảng viên: Làm khung bài giảng chuẩn cho học phần Cấu trúc Máy tính, cung cấp hệ thống thuật ngữ song ngữ Anh - Việt chính xác và sơ đồ minh họa phục vụ giảng dạy.
  • Sử dụng cho tự học và nghiên cứu: Người học có thể sử dụng tài liệu như một bản đồ khái niệm tổng hợp để định hướng nghiên cứu sâu hơn vào tài liệu chuyên khảo quốc tế.

Câu hỏi thường gặp

1. Giáo trình này phù hợp với đối tượng nào?

Tài liệu được biên soạn cho sinh viên đại học khối ngành Công nghệ Thông tin bắt đầu học các môn cơ sở ngành về phần cứng, cũng như người học kỹ thuật cần nắm vững nguyên lý hoạt động của máy tính số.

2. Cần chuẩn bị kiến thức nền tảng nào trước khi học?

Người học cần có kiến thức lập trình cơ bản nhằm hiểu được cách thức một chương trình phần mềm được tổ chức thành dãy lệnh lưu trữ trong bộ nhớ và cách dữ liệu được xử lý logic.

3. Sự khác nhau giữa Kiến trúc, Tổ chức và Cấu trúc máy tính trong giáo trình là gì?

  • Kiến trúc máy tính (Architecture): Các thuộc tính hệ thống dưới góc nhìn của lập trình viên (tập lệnh, biểu diễn dữ liệu, cơ chế vào ra, kỹ thuật đánh địa chỉ).
  • Tổ chức máy tính (Organization): Các khối chức năng và sự liên kết thực thi kiến trúc (ví dụ: bộ nhân được thiết kế thành mạch riêng hay tính toán lặp trên bộ cộng).
  • Cấu trúc máy tính (Structure): Các thành phần phần cứng mức cao nhất và liên kết giữa chúng (CPU, Bộ nhớ, Hệ thống vào/ra, Liên kết hệ thống).

4. Chu kỳ thực hiện lệnh của CPU diễn ra như thế nào?

Chu kỳ lệnh bao gồm hai giai đoạn lặp lại:

  1. Nhận lệnh (Fetch): CPU lấy địa chỉ từ thanh ghi PC để đọc lệnh từ bộ nhớ chính nạp vào thanh ghi IR, sau đó tự động tăng giá trị PC để trỏ đến lệnh tiếp theo.
  2. Thực thi lệnh (Execute): Đơn vị điều khiển (CU) giải mã lệnh trong IR và phát tín hiệu điều khiển trao đổi dữ liệu với bộ nhớ/I/O, thực hiện tính toán qua ALU hoặc rẽ nhánh.

5. Có những tài liệu tham khảo chính thức nào được đề xuất?

Bài giảng chỉ định các tài liệu tham khảo gồm:

  • William Stallings – Computer Organization and Architecture.
  • Andrew S. Tanenbaum – Structured Computer Organization.
  • Nguyễn Đăng Khoa – Cẩm nang sửa chữa và nâng cấp máy tính cá nhân.
  • Lê Công Bảo – Giáo trình bảo trì và nâng cấp máy tính (Trường ĐH Khoa học Tự nhiên - ĐHQG TP.HCM).
  • Ron White (Nguyễn Trọng Tuấn dịch) – Cấu tạo và nguyên lý hoạt động của hệ thống máy tính.

Kết luận

Bài giảng Cấu trúc Máy tính của giảng viên Đinh Đồng Lưỡng cung cấp hệ thống kiến thức nền tảng chuẩn mực về tổ chức và cấu trúc phần cứng máy tính số. Lộ trình học tập được thiết kế mạch lạc từ bối cảnh lịch sử, nguyên lý kiến trúc Von Neumann, phân tích chi tiết chu kỳ lệnh đến các phân hệ xử lý, lưu trữ và vào/ra. Tài liệu kết hợp chặt chẽ giữa lý thuyết kinh điển và dẫn chứng công nghệ thực tế (các thế hệ chip Intel, máy ENIAC, máy Micral), tạo cơ sở vững chắc cho sinh viên Công nghệ Thông tin trong việc tiếp cận các môn học chuyên sâu về hệ điều hành, vi xử lý và kiến trúc máy tính nâng cao.