KIẾN TRÚC MÁY TÍNH Computer Architecture
GV: Đoàn Thị Quế Bộ môn: Kỹ thuật máy tính & mạng
1
Mục tiêu và thời lượng môn học
Kiến thức:
Sinh viên có kiến thức cơ bản về tổ chức, chức năng và nguyên lý hoạt động
của các thành phần trong máy tính
Nắm vững cấu trúc của bộ xử lý trung tâm, diễn tiến thi hành lệnh, cấu trúc tập lệnh, các phương pháp định địa chỉ, cách thức vận hành của các loại bộ nhớ và cách giao tiếp giữa thiết bị ngoại vi và bộ xử lý.
Kĩ năng:
Hiểu được các hoạt động xử lý lệnh trong các kỹ thuật xử lý thông tin trong
máy tính
Đánh giá được hiệu năng hoạt động của máy tính
Thái độ:
Nhận thức được tầm quan trọng của môn học, từ đó có thái độ nghiêm túc,
ham thích học tập và rèn luyện.
Thời lượng: 2 tín chỉ
2
Nội dung
Chương 1: Mở đầu Chương 2: Hệ thống máy tính Chương 3: Biểu diễn thông tin trong máy tính Chương 4: Bộ xử lý trung tâm Chương 5: Hệ thống nhớ Chương 6: Hệ thống vào ra
3
Yêu cầu và đánh giá môn học
Yêu cầu đối với sinh viên:
Dự lớp theo qui chế. Hoàn thành các bài tập được giao.
Đánh giá môn học:
Chuyên cần: 10% Đánh giá giữa kỳ: 30% Thi cuối kỳ: 60%
4
Tài liệu tham khảo
1. Stallings, William. Computer organization and architecture: designing for performance. 2010, 8th edition.
2. Andrew S. Tanenbaum. Structured Computer
Organization. 2013, 6th edition. 3. Hennessy, John L., and David A.
Patterson. Computer architecture: a quantitative approach. 2012, 5th edition.
5
Chương 1: Mở đầu
1.1. Khái niệm và phân loại máy tính
1.2 Lịch sử phát triển của máy tính
1.3 Luật Moore
1.4 Kiến trúc và tổ chức
1.5 Đánh giá hiệu năng
6
1.1 Khái niệm và phân loại máy tính
1. Khái niệm máy tính
Máy tính (Computer) là một thiết bị được sử dụng để thực hiện các phép biến đổi toán học, thí dụ: bàn tính, máy tính bỏ túi, máy vi tính
Ngày nay, khi nói đến máy tính chúng ra
ngầm hiểu là máy vi tính
7
1. Khái niệm máy tính
Máy tính thực hiện các công việc sau:
Nhận thông tin, Xử lý thông tin theo chương trình nhớ sẵn bên
trong,
Đưa thông tin ra.
Máy tính hoạt động theo chương trình
8
1. Khái niệm máy tính
Máy tính bao gồm:
Phần cứng (Hardware): gồm các đối tượng vật lý hữu hình như vi mạch, bản mạch in, dây cáp nối, bộ nhớ, màn hình, …
Phần mềm (Software): gồm các thuật giải và sự
thể hiện trên máy tính là các chương trình
Chương trình: gồm một tập các lệnh (hay chỉ thị - Instruction) nằm trong bộ nhớ để yêu cầu máy tính thực hiện một công việc cụ thể
Phần sụn (Firmware): Là phần mềm được nhúng vào trong các mạch điện tử trong quá trình chế tạo các mạch điện tử này
9
2. Phân loại máy tính
Thường phân loại theo tốc độ xử lý:
Phân loại truyền thống:
Siêu máy tính (Supercomputer) Máy tính lớn (Mainframe computer) Máy tính nhỏ (Minicomputer) Máy vi tính (Microcomputer)
10
Siêu máy tính (Supercomputer)
Tốc độ xử lý rất nhanh Tốc độ thực hiện các phép tính số dấu phẩy động (FLOPS – Floatting point Operations Per Second) cực lớn
Tham khảo:
http://vi.wikipedia.org/wiki/Siêu_máy_tí nh
11
Máy tính lớn (Mainframe computer)
Được thiết kế để giải các bài toán lớn với tốc
độ rất nhanh
Sử dụng kỹ thuật xử lý song song với rất
nhiều bộ xử lý, có hệ thống vào-ra mạnh, bộ nhớ dung lượng lớn
Thường được sử dụng để điều khiển các hệ thống thiết bị dùng trong quân sự, chương trình nghiên cứu vũ trụ, xử lý thông tin trong ngành ngân hàng, khí tượng, bảo hiểm
12
Máy tính nhỏ (Minicomputer)
Là dạng thu nhỏ về kích thước cũng
như tính năng của máy tính lớn
Dùng cho các tính toán khoa học kỹ thuật, gia công dữ liệu qui mô nhỏ
13
Máy vi tính (Microcomputer)
Bộ xử lý trung tâm (CPU) là chip vi xử lý Kích thước nhỏ Tốc độ tính toán đủ cao Phù hợp cho một người dùng Còn được gọi là máy tính cá nhân PC
(Personal computer)
14
Phân loại hiện đại
Máy tính cá nhân (Personal Computer) Máy chủ (Server Computer) Máy tính nhúng (Embedded Computer)
15
Máy tính cá nhân PC
Là loại máy tính phổ biến nhất Các loại máy tính cá nhân: Máy tính để bàn (Desktop) Máy tính xách tay (Laptop)
16
Máy chủ (Server Computer)
Thực chất là máy phục vụ Dùng trong mạng theo mô hình Client/Server Tốc độ và hiệu năng tính toán cao Dung lượng bộ nhớ lớn Độ tin cậy cao
17
Máy tính nhúng (Embedded Computer)
Được đặt trong thiết bị khác để điều khiển thiết
bị đó làm việc
Hệ thống sử dụng vi xử lý nhưng không phải là vi
xử lý đa năng
Được thiết kế chuyên dụng Ví dụ:
Điện thoại di động Máy ảnh số Bộ điều khiển trong máy giặt, điều hoà nhiệt độ Router – bộ định tuyến trên mạng
18
Chương 1: Mở đầu
1.1. Khái niệm và phân loại máy tính
1.2 Lịch sử phát triển của máy tính
1.3 Luật Moore
1.4 Kiến trúc và tổ chức
1.5 Đánh giá hiệu năng
19
1.2 Lịch sử phát triển của máy tính điện tử
Thế hệ thứ nhất: Máy tính dùng đèn điện tử chân
không (1945-1955) Thế hệ thứ hai: Máy
tính dùng các linh kiện bán
dẫn như transistor (1955-1965)
Thế hệ thứ ba: Máy tính dùng vi mạch SSI,MSI
(1965-1980)
Thế hệ thứ tư (từ 1980 đến nay): Máy tính dùng vi mạch VLSI (Very Large Scale Integration), ULSI (Ultra Large Scale Integration)
Thamkhảo:StallingsW.,”Computerorganizationand architecture: designing for performance,” Pearson, 2010,pp.17-38.
20
1.2 Lịch sử phát triển của máy tính điện tử
Câu 1: Dựa vào yếu tố nào người ta phân
chia máy tính thành các thế hệ?
Câu 2: Đặc trưng cơ bản của từng thế hệ
máy tính?
21
Thế hệ thứ nhất (1946-1957)
Linh kiện là đèn điện tử chân không Cấu trúc mạch rời Bộ nhớ chính sử dụng rơ le điện Thời gian thao tác cỡ ms Thí dụ: ENIAC, IAS
22
Máy tính ENIAC
Máy tính điện tử đầu tiên Bắt đầu từ năm 1943, hoàn thành năm 1946,
sử dụng đến năm 1955 thì bị hỏng Electronic Numerical Integrator And
Computer (máy điện toán và tích hợp số dạng điện tử)
Dự án của Bộ Quốc phòng Mỹ Do John Mauchly và John Presper Eckert ở
Đại học Pennsylvania thiết kế.
23
Máy tính ENIAC (tiếp)
Nặng 30 tấn, Kích thước 140 m2 18000 đèn điện tử và 1500 rơle 5000 phép cộng/giây Bộ nhớ chỉ lưu trữ dữ liệu Lập trình bằng cách thiết lập vị trí của
các chuyển mạch và các cáp nối.
24
Đèn điện tử chân không
25
26
27
Máy tính IAS
IAS - Institute for Advanced Studies Do John Von Neumann thiết kế Còn gọi là máy tính Von Neumann Được bắt đầu từ 1946, hoàn thành 1952 Được xây dựng theo ý tưởng “chương (stored-program trữ” Neumann/Turing Von
trình được lưu của concept) (1945)
28
John von Neumann và máy tính IAS
29
Tổ chức máy tính Von Neumann
Arithmetic
Bộ nhớ chính (Main
memory)
logic unit
I/O
Main
Equipment
Đơn vị số học và logic (ALU-Arithmetic logic unit)
memory
Đơn vị điều khiển (CU-
Control unit )
Các thiết bị vào/ra (I/O
Control unit
Equipment)
30
Các máy tính thương mại ra đời
UNIVAC I (Universal Automatic Computer) 1950s - UNIVAC II Nhanh hơn Bộ nhớ lớn hơn
31
UNIVAC
UNIVAC I
UNIVAC II
32
Hãng IBM
IBM – International Business Machine 1953 – IBM 701
Máy tính lưu trữ chương trình đầu tiên của IBM Sử dụng cho tính toán khoa học
1955 – IBM 702
Các ứng dụng thương mại
33
34
Thế hệ thứ hai (1958-1964)
Công ty Bell đã phát minh ra transistor vào
năm 1947
Kích thước máy tính giảm, rẻ tiền hơn, tiêu
tốn năng lượng ít hơn
Mạch in và bộ nhớ bằng xuyến từ được dùng Thời gian thao tác cỡ µs
35
36
Thế hệ thứ ba (1965-1971)
Máy tính dùng vi mạch cỡ SSI, MSI Vi mạch (Integrated Circuit – IC): nhiều transistor và các phần tử khác được tích hợp trên một đế bán dẫn
Loại vi mạch
Số cổng/IC
SSI (Small Scale Integration)
< 10
10 100
MSI (Medium Scale Integration)
LSI (Large Scale Integration)
100 1000 103 106
VLSI (Very Large Scale Integration)
ULSI (Ultra Large Scale Integration)
> 106
Mạch in nhiều lớp xuất hiện, bộ nhớ bán dẫn bắt
đầu thay thế bộ nhớ bằng xuyến từ
37
IBM 360
38
Micro VAX
39
Siêu máy tính CRAY-1
40
Hệ thống máy tính có thể di chuyển
41
Thế hệ thứ tư (từ 1972 - nay)
Máy tính dùng vi mạch cỡ LSI,VLSI,ULSI Bộ vi xử lý (Microprocessor): CPU-central
processing unit được chế tạo trên một chip. Vi mạch điều khiển tổng hợp (chipset): một hoặc một vài vi mạch thực hiện được nhiều chức năng điều khiển và nối ghép.
Bộ nhớ bán dẫn (Semiconductor
Memory): ROM, RAM
Các bộ vi điều khiển (Microcontroller): Máy
tính chuyên dụng được chế tạo trên một chip.
42
Chương 1: Mở đầu
1.1. Khái niệm và phân loại máy tính
1.2 Lịch sử phát triển của máy tính
1.3 Luật Moore
1.4 Kiến trúc và tổ chức
1.5 Đánh giá hiệu năng
43
1.3 Luật Moore
Gordon Moore - người đồng sáng lập Intel
Luật Moore: “Số transistors trên chip sẽ
tănggấpđôisau18tháng”
44
Kết quả của luật Moore
Kích thước các linh kiện nhỏ do đó máy tính
sẽ giảm kích thước
Mật độ tích hợp cao hơn , do vậy đường dẫn
ngắn hơn dẫn đến tăng tốc độ
Chi phí cho máy tính sẽ giảm Điện năng tiêu thụ ít hơn Hệ thống có ít các chip liên kết với
nhau, do đó tăng độ tin cậy
45
Chương 1: Mở đầu
1.1. Khái niệm và phân loại máy tính
1.2 Lịch sử phát triển của máy tính
1.3 Luật Moore
1.4 Kiến trúc và tổ chức
1.5 Đánh giá hiệu năng
46
Kiến trúc và tổ chức
Kiến trúc máy tính (computer architecture):
Đề cập đến những đặc tính của một hệ thống có thể nhìn thấy bởi người lập trình như: số lượng bit được sử dụng để đại diện cho nhiều loại dữ liệu (ví dụ: số, ký tự), kiến trúc tập lệnh (Instruction Set Architecture), kỹ thuật định địa chỉ bộ nhớ và cơ chế Input/Output. Tổ chức máy tính (Computer Organization):
Đề cập đến các đơn vị hoạt động đó là các phần cứng và mối liên kết giữa chúng như tín hiệu điều khiển, giao diện giữa máy tính và thiết bị ngoại vi và các công nghệ bộ nhớ được sử dụng.
Lưuý: Mộtvàimáytínhcócùngkiếntrúcphầnmềmnhưng
phầntổchứckhácnhau.
47
Các mô hình kiến trúc máy tính
48
Chương 1: Mở đầu
1.1. Khái niệm và phân loại máy tính
1.2 Lịch sử phát triển của máy tính
1.3 Luật Moore
1.4 Kiến trúc và tổ chức
1.5 Đánh giá hiệu năng
49
1.5 Đánh giá hiệu năng
Tốcđộcủamáytínhđượcquyếtđịnhbởi
nhữngyếutốnào?
50
1.5 Đánh giá hiệu năng
Tốc độ của máy tính được quyết định bởi:
Tốc độ của bộ xử lý Dung lượng của RAM Kiến trúc tập lệnh Hiệu quả của trình biên dịch Kỹ năng lập trình ….
51
1.5 Đánh giá hiệu năng
Tốc độ của bộ xử lý:
Số lệnh được thực hiện trong 1 giây MIPS (Million
of Instructions per Second)
Khó đánh giá chính xác
Tốc độ của bộ xử lý được đánh giá gián tiếp
thông qua tần số của xung nhịp Bộ xử lý hoạt động theo một xung nhịp (Clock) có
tần số xác định
52
1.5 Đánh giá hiệu năng
Tốc độ đồng hồ (tần số xung nhịp): số
dao động/s (Hz)
Xung nhịp
53
1.5 Đánh giá hiệu năng
CPI là số chu kỳ trung bình cho mỗi lệnh của một
chương trình
f là tần số xung nhip
54
Câu hỏi ôn tập
1. Trình tự xử lý thông tin của máy tính điện tử là
gì?
2. Hardware, software, firmware là gì? 3. Theo cách phân loại truyền thống có mấy loại
máy tính?
4. Theo cách phân loại hiện đại có mấy loại máy
tính?
55
Câu hỏi ôn tập
5. Dựa vào tiêu chuẩn nào người ta phân chia máy
6.
tính thành các thế hệ? Đặc trưng cơ bản của từng thế hệ máy tính? Luật Moore và những thành quả của nó?
7. Phân biệt thuật ngữ kiến trúc máy tính (computer architecture)và tổ chức máy tính (computer organization).
8. So sánh mô hình kiến trúc máy tính Von Neumann
và Harvard?
56
Câu hỏi ôn tập
9. Tìm hiểu các đặc tính cơ bản của các loại máy tính sau: Microcontroller, Mobile and game computers, Personal computer, Server, Mainframe. Ref. Tanenbaum, A.S., Austin T.Structured
computer organization. Pearson, 2013, pp. 31- 39.
57
Hết chương 1
58