Bài giảng Kiến trúc máy tính - Nguyễn Kim Khánh (Bản đầy đủ)

TRƯỜNG ĐẠI HC BÁCH KHOA HÀ NI  
Hanoi University of Science and Technology  
KIN TRÚC MÁY TÍNH  
Computer Architecture  
Nguyễn Kim Khánh  
Bộ môn Kỹ thuật máy tính  
Viện Công nghệ Thông tin và Truyền thông  
Department of Computer Engineering (DCE)  
School of Information and Communication Technology (SoICT)  
Version: CA2020  
NKK-HUST  
Contact Information  
n
Address: 502-B1  
n
n
Mobile: 091-358-5533  
CA2020  
Kiến trúc máy tính  
2
NKK-HUST  
Mục tiêu học phần  
n Sinh viên được trang bị các kiến thức cơ sở về  
kiến trúc tập lệnh và tổ chức bên trong của máy  
tính, cũng như những nguyên tắc cơ bản trong  
thiết kế máy tính.  
n Sau khi học xong học phần này, sinh viên có  
khả năng:  
n
n
n
Tìm hiểu kiến trúc tập lệnh của các máy tính cụ thể  
Lập trình hợp ngữ  
Đánh giá hiệu năng máy tính và cải thiện hiệu năng  
của chương trình  
n
n
Khai thác và quản trị hiệu quả các hệ thống máy tính  
Phân tích và thiết kế máy tính  
Kiến trúc máy tính  
CA2020  
3
NKK-HUST  
Tài liệu học tập  
n Bài giảng Kiến trúc máy tính: CA2020.pdf  
n Sách tham khảo:  
[1] William Stallings  
Computer Organization and Architecture – 2013, 9th edition  
[2] David A. Patterson, John L. Hennessy  
Computer Organization and Design – 2012, Revised 4th edition  
[3] David Money Harris, Sarah L. Harris  
Digital Design and Computer Architecture – 2013, 2nd edition  
[4] Andrew S. Tanenbaum  
Structured Computer Organization – 2013, 6th edition  
n Phần mềm lập trình hợp ngữ và mô phỏng cho MIPS:  
MARS (MIPS Assembler and Runtime Simulator)  
CA2020  
Kiến trúc máy tính  
4
NKK-HUST  
Nội dung học phần  
Chương 1. Giới thiệu chung  
Chương 2. Cơ bản về logic số  
Chương 3. Hệ thống máy tính  
Chương 4. Số học máy tính  
Chương 5. Kiến trúc tập lệnh  
Chương 6. Bộ xử lý  
Chương 7. Bộ nhớ máy tính  
Chương 8. Hệ thống vào-ra  
Chương 9. Các kiến trúc song song  
CA2020  
Kiến trúc máy tính  
5
NKK-HUST  
Content  
Chapter 1. Introduction  
Chapter 2. The Basics of Digital Logic  
Chapter 3. Computer Systems  
Chapter 4. Computer Arithmetic  
Chapter 5. Instruction Set Architecture  
Chapter 6. The Processors  
Chapter 7. Computer Memory  
Chapter 8. Input-Output Systems  
Chapter 9. Parallel Architectures  
CA2020  
Kiến trúc máy tính  
6
NKK-HUST  
Kiến trúc máy tính  
Chương 1  
GIỚI THIỆU CHUNG  
Nguyễn Kim Khánh  
Trường Đại học Bách khoa Hà Nội  
CA2020  
Kiến trúc máy tính  
7
NKK-HUST  
Nội dung của chương 1  
1.1. Máy tính và phân loại máy tính  
1.2. Khái niệm kiến trúc máy tính  
1.3. Sự tiến hóa của công nghệ máy tính  
1.4. Hiệu năng máy tính  
CA2020  
Kiến trúc máy tính  
8
NKK-HUST  
1.1. Máy tính và phân loại máy tính  
n Máy tính (Computer) là thiết bị điện tử thực  
hiện các công việc sau:  
n
Nhận dữ liệu vào,  
n
Xử lý dữ liệu theo dãy các lệnh được nhớ sẵn bên  
trong,  
n
Đưa dữ liệu (thông tin) ra.  
n Dãy các lệnh nằm trong bộ nhớ để yêu cầu  
máy tính thực hiện công việc cụ thể gọi là  
chương trình (program).  
à Máy tính hoạt động theo chương trình  
CA2020  
Kiến trúc máy tính  
9
NKK-HUST  
Mô hình đơn giản của máy tính  
xử lý dữ liệu  
Bộ xử lý  
trung tâm  
(Central  
Các  
Các  
Processing Unit)  
thiết bị vào  
(Input  
Devices)  
thiết bị ra  
(Output  
Devices)  
Bộ nhớ chính  
(Main Memory)  
dữ liệu ra  
dữ liệu vào  
chương trình  
đang thực hiện  
CA2020  
Kiến trúc máy tính  
10  
NKK-HUST  
Phân loại máy tính kỷ nguyên PC  
n Máy tính cá nhân (Personal Computers)  
n
Desktop computers, Laptop computers  
n
Máy tính đa dụng  
n Máy chủ (Servers) – máy phục vụ  
n
n
n
Dùng trong mạng để quản lý và cung cấp các dịch vụ  
Hiệu năng và độ tin cậy cao  
Hàng nghìn đến hàng triệu USD  
n Siêu máy tính (Supercomputers)  
n
Dùng cho tính toán cao cấp trong khoa học và kỹ thuật  
n
Hàng triệu đến hàng trăm triệu USD  
n Máy tính nhúng (Embedded Computers)  
n
Đặt ẩn trong thiết bị khác  
n
Được thiết kế chuyên dụng  
CA2020  
Kiến trúc máy tính  
11  
NKK-HUST  
Phân loại máy tính kỷ nguyên sau PC  
n Thiết bị di động cá nhân (PMD - Personal Mobile  
Devices)  
n
Smartphones, Tablet  
n
Kết nối Internet  
n Điện toán đám mây (Cloud Computing)  
n
n
n
Sử dụng máy tính qui mô lớn (Warehouse Scale  
Computers), gồm rất nhiều servers kết nối với nhau  
Cho các công ty thuê một phần để cung cấp dịch vụ  
phần mềm  
Software as a Service (SaaS): một phần của phần  
mềm chạy trên PMD, một phần chạy trên Cloud  
CA2020  
Kiến trúc máy tính  
12  
NKK-HUST  
1.2. Khái niệm kiến trúc máy tính  
n Kiến trúc máy tính bao gồm:  
n
Kiến trúc tập lệnh (Instruction Set Architecture):  
nghiên cứu máy tính theo cách nhìn của người lập  
trình  
n
Tổ chức máy tính (Computer Organization) hay  
Vi kiến trúc (Microarchitecture): nghiên cứu thiết kế  
máy tính ở mức cao (thiết kế CPU, hệ thống nhớ,  
cấu trúc bus, ...)  
n
Phần cứng (Hardware): nghiên cứu thiết kế logic chi  
tiết và công nghệ đóng gói của máy tính.  
n Cùng một kiến trúc tập lệnh có thể có nhiều sản  
phẩm (tổ chức, phần cứng) khác nhau  
Kiến trúc máy tính  
CA2020  
13  
NKK-HUST  
Phân lớp máy tính  
n Phần mềm ứng dụng  
n
Được viết theo ngôn ngữ bậc cao  
Người  
sử dụng  
Người  
lập trình  
n Phần mềm hệ thống  
Người  
lập trình  
hệ thống  
n
Chương trình dịch (Compiler): dịch mã  
ngôn ngữ bậc cao thành ngôn ngữ máy  
Phần mềm ứng dụng  
Phần mềm hệ thống  
Phần cứng  
n
Hệ điều hành (Operating System)  
n
Lập lịch cho các nhiệm vụ và chia sẻ tài  
nguyên  
n
n
Quản lý bộ nhớ và lưu trữ  
Điều khiển vào-ra  
n Phần cứng  
n
Bộ xử lý, bộ nhớ, mô-đun vào-ra  
CA2020  
Kiến trúc máy tính  
14  
NKK-HUST  
Các mức của mã chương trình  
High-level  
language  
swap(int v[], int k)  
{int temp;  
n Ngôn ngữ bậc cao  
program  
(in C)  
temp = v[k];  
v[k] = v[k+1];  
v[k+1] = temp;  
}
n
High-level language – HLL  
n
Mức trừu tượng gần với  
vấn đề cần giải quyết  
Compiler  
n
Hiệu quả và linh động  
Assembly  
language  
program  
swap:  
multi $2, $5,4  
n Hợp ngữ  
add  
lw  
lw  
sw  
sw  
jr  
$2, $4,$2  
$15, 0($2)  
$16, 4($2)  
$16, 0($2)  
$15, 4($2)  
$31  
(for MIPS)  
n
Assembly language  
Mô tả lệnh dưới dạng text  
n
n Ngôn ngữ máy  
Assembler  
n
n
n
Machine language  
Mô tả theo phần cứng  
Các lệnh và dữ liệu được  
mã hóa theo nhị phân  
Binary machine  
language  
program  
00000000101000100000000100011000  
00000000100000100001000000100001  
10001101111000100000000000000000  
10001110000100100000000000000100  
10101110000100100000000000000000  
10101101111000100000000000000100  
00000011111000000000000000001000  
(for MIPS)  
CA2020  
Kiến trúc máy tính  
15  
NKK-HUST  
Các thành phần cơ bản của máy tính  
n Giống nhau với tất cả các loại  
máy tính  
n Bộ xử lý trung tâm (Central  
CPU  
Bộ nhớ chính  
Processing Unit – CPU)  
n
Điều khiển hoạt động của máy  
tính và xử lý dữ liệu  
Bus hệ thống  
n Bộ nhớ chính (Main Memory)  
n
Chứa các chương trình đang  
thực hiện  
Hệ thống vào-ra  
n Hệ thống vào-ra (Input/Output)  
n
Trao đổi thông tin giữa máy tính  
với bên ngoài  
n Bus hệ thống (System bus)  
n
Kết nối và vận chuyển thông tin  
CA2020  
Kiến trúc máy tính  
16  
NKK-HUST  
1.3. Sự tiến hóa của công nghệ máy tính  
n Máy tính dùng đèn điện tử chân không (1950s)  
n
Máy tính ENIAC: máy tính đầu tiên (1946)  
n
Máy tính IAS: máy tính von Neumann (1952)  
n Máy tính dùng transistors (1960s)  
n Máy tính dùng vi mạch SSI, MSI và LSI (1970s)  
n
n
n
SSI - Small Scale Integration  
MSI - Medium Scale Integration  
LSI - Large Scale Integration  
n Máy tính dùng vi mạch VLSI (1980s)  
n
VLSI - Very Large Scale Integration  
n Máy tính dùng vi mạch ULSI (1990s-nay)  
n
ULSI - Ultra Large Scale Integration  
CA2020  
Kiến trúc máy tính  
17  
NKK-HUST  
Máy tính đầu tiên: ENIAC và IAS  
n Electronic Numerical Intergator  
and Computer  
n Thực hiện tại Princeton Institute  
for Advanced Studies  
n Dự án của Bộ Quốc phòng Mỹ  
n Do John von Neumann thiết kế  
theo ý tưởng “stored program”  
n Xử lý theo số nhị phân  
n Do John Mauchly ở đại học  
Pennsylvania thiết kế  
n 30 tấn  
n Trở thành mô hình cơ bản của  
máy tính  
Kiến trúc máy tính  
n Xử lý theo số thập phân  
CA2020  
18  
NKK-HUST  
Máy tính ngày nay  
Massive Cluster  
Clusters  
Gigabit Ethernet  
Sensor  
Nets  
Cars  
Rob
Robots  
Routers  
CA2020  
Kiến trúc máy tính  
19  
NKK-HUST  
Một số loại vi mạch số điển hình  
n Bộ vi xử lý (Microprocessors)  
n
Một hoặc một vài CPU được chế tạo trên một chip  
n Vi mạch điều khiển tổng hợp (Chipset)  
n
Vi mạch thực hiện các chức năng nối ghép các thành  
phần của máy tính với nhau  
n Bộ nhớ bán dẫn (Semiconductor Memory)  
n
ROM, RAM, Flash memory  
n Hệ thống trên chip (SoC – System on Chip) hay  
Bộ vi điều khiển (Microcontrollers)  
n
Tích hợp các thành phần chính của máy tính trên một  
chip vi mạch  
n
Được sử dụng chủ yếu trên smartphone, tablet và các  
máy tính nhúng  
CA2020  
Kiến trúc máy tính  
20  
Tải về để xem bản đầy đủ
pdf 521 trang Thùy Anh 26/04/2022 8540
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính - Nguyễn Kim Khánh (Bản đầy đủ)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_kien_truc_may_tinh_nguyen_kim_khanh_ban_day_du.pdf