Bài giảng Hệ thống máy tính
NKK-HUT
Contact
HỆ THỐNG MÁY TÍNH
Computer System
Offices: 322-C1 - DCE, SoICT
Mobile: 091-358-5533
e-mail:
Nguyễn Kim Khánh, PhD. in Computer Engineering
Bộ mơn Kỹ thuật máy tính
Viện Cơng nghệ thơng tin và Truyền thông
Trường Đại học Bách khoa Hà Nội
8 September 2009
8 September 2009
NKK-HUT
NKK-HUT
Mục tiêu học phần
Giới thiệu các kiến thức cơ bản về hệ thống
máy tính bao gồm: kiến trúc bộ nhớ, kiến trúc
vào-ra, kiến trúc CPU và các kiến trúc máy
tính song song, cũng như các vấn đề cơ bản
trong thiết kế một hệ thống máy tính.
Sinh viên có khả năng đánh giá được hiệu
năng của các họ máy tính, khai thác và sử
dụng hiệu quả các loại máy tính và có khả
năng tiếp cận để phát triển các hệ máy tính
nhúng phục vụ các mục đích chuyên dụng.
8 September 2009
Nguyễn Kim Khánh - ĐHBKHN
Tài liệu tham khảo chính
1. William Stallings - Computer Organization and
Architecture – Designing for Performance – 2003 (6th
edition)
2. Behrooz Parhami - Computer Architecture: From
Microprocessors to Supercomputers - 2005
3. David A. Patterson & John L. Hennessy Computer Organization and Design: The
Hardware/Software Interface – 2002 (third edition)
4. John L. Hennessy & David A. Patterson Computer Architecture: A Quantitative Approach –
2003 (third edition)
8 September 2009
1
Bài giảng Hệ thống máy tính
NKK-HUT
NKK-HUT
Tài liệu tham khảo ...
Tài liệu tham khảo ...
8 September 2009
8 September 2009
NKK-HUT
NKK-HUT
Nội dung học phần
Chương 1. Giới thiệu chung
Chương 2. Kiến trúc bộ nhớ
Chương 3. Kiến trúc vào-ra
Chương 4. Kiến trúc bộ xử lý
Chương 5. Kiến trúc máy tính tiên tiến
Hệ thống 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
8 September 2009
Nguyễn Kim Khánh - ĐHBKHN
8 September 2009
2
Bài giảng Hệ thống máy tính
NKK-HUT
NKK-HUT
1.1. Sự phát triển của của máy tính
Nội dung
1. Các thế hệ máy tính
Thế hệ thứ nhất: Máy tính dùng đèn điện tử
chân khơng (1950s)
Thế hệ thứ hai: Máy tính dùng transistor
(1960s)
Thế hệ thứ ba: Máy tính dùng vi mạch SSI,
MSI và LSI (1970s)
Thế hệ thứ tư: Máy tính dùng vi mạch VLSI
(1980s)
Thế hệ thứ năm: Máy tính dùng vi mạch
ULSI, SoC (1990s đến nay)
1.1. Sự phát triển của máy tính
1.2. Định nghĩa kiến trúc máy tính
1.3. Hiệu năng máy tính
8 September 2009
8 September 2009
NKK-HUT
NKK-HUT
Luật Moore
Các sản phẩm chính của công nghệ VLSI/ULSI
Bộ vi xử lý (Microprocessor): CPU đượ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 1 chip.
8 September 2009
Nguyễn Kim Khánh - ĐHBKHN
Gordon Moore – người đồng sáng lập Intel
Số transistors trên chip sẽ gấp đôi sau 18 tháng
Giá thành của chip hầu như không thay đổi
Mật độ cao hơn, do vậy đường dẫn ngắn hơn
Kích thước nhỏ hơn dẫn tới độ phức tạp tăng lên
Đ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
8 September 2009
3
Bài giảng Hệ thống máy tính
NKK-HUT
NKK-HUT
Tăng trưởng số transistor trong chip CPU
2. Sự phát triển của bộ vi xử lý
1971: bộ vi xử lý 4-bit Intel 4004
1972-1977: các bộ xử lý 8-bit
1978-1984: các bộ xử lý 16-bit
Khoảng từ 1985: các bộ xử lý 32-bit
Khoảng từ 2000: các bộ xử lý 64-bit
Các bộ xử lý đa lõi (multicores)
Các bộ vi điều khiển (microcontroller)
8 September 2009
8 September 2009
NKK-HUT
NKK-HUT
Sự phát triển của Intel x86
4004
8080
Bộ vi xử lý đa năng đầu tiên
8-bit
Sử dụng trong PC đầu tiên – Altair
5MHz – 29,000 transistors
16-bit
8088 (bus dữ liệu bên ngoài 8-bit) sử dụng trong IBM PC
đầu tiên
80286
Đánh địa chỉ bộ nhớ được16 Mbyte
8 September 2009
Nguyễn Kim Khánh - ĐHBKHN
80386
Tăng cường bộ nhớ cache trên chip
Đường ống lệnh
Có bộ đồng xử lý toán trên chip
Pentium
32-bit
Hỗ trợ đa nhiệm
80486
8086
Bộ vi xử lý đầu tiên
4-bit
Sự phát triển của Intel x86
Siêu vô hướng
Bus dữ liệu 64-bit
Đa lệnh được thực hiện song song
Pentium Pro
Tăng cường tổ chức siêu vơ hướng
Dự đốn rẽ nhánh
Phân tích luồng dữ liệu
Suy đốn đơng
8 September 2009
4
Bài giảng Hệ thống máy tính
NKK-HUT
NKK-HUT
Sự phát triển của Intel x86
Pentium II
Công nghệ MMX
Pentium III
Pentium 4
Tăng cường xử lý số dấu phẩy động và
multimedia
Duo Core: 2 bộ xử lý trên chip
Core 2: Kiến trúc 64-bit
Core 2 Quad – 3GHz – 820 triệu transistors
Định nghĩa trước đây về kiến trúc máy
tính:
Thêm các lệnh xử lý dấu phẩy động cho đồ họa
3D
Xử lý đồ họa, video & audio
1.2. Định nghĩa kiến trúc máy tính
Cách nhìn logic của máy tính từ người lập
trình (hardware/software interface)
Kiến trúc tập lệnh (Instruction Set Architecture
– ISA)
Là định nghĩa hẹp
4 bộ xử lý trong 1chip
8 September 2009
8 September 2009
NKK-HUT
NKK-HUT
Định nghĩa của Hennessy/ Patterson
Kiến trúc máy tính bao gồm:
Tổ chức cơ bản của máy tính
software
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 (hardware/software interface).
Instruction Set Architecture
Tổ chức máy tính (Computer Organization): nghiên
cứu thiết kế máy tính ở mức cao,chẳng hạn như hệ
thống nhớ, cấu trúc bus, thiết kế bên trong CPU.
memory
arithmetic
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.
Kiến trúc tập lệnh thay đổi chậm, tổ chức và
phần cứng máy tính thay đổi rất nhanh.
8 September 2009
Nguyễn Kim Khánh - ĐHBKHN
input
control
output
CPU
Processor
Architecture
Memory
Architecture
I/O Architecture
8 September 2009
5
Bài giảng Hệ thống máy tính
NKK-HUT
NKK-HUT
Kiến trúc bộ xử lý
Kiến trúc bộ nhớ
instruction cycle
• instruction fetch
• instruction decode
• operand fetch
• instruction execution
• write result
• update PC
CPU
Controller
Program Counter(PC)
Instruction Reg(IR)
Control Signal
Status signal
• Phân cấp hệ thống nhớ
• Ngun lý cục bộ hóa tham chiếu bộ nhớ
Main Memory
Register
Program
ALU
Data
Arithmetic Unit
8 September 2009
8 September 2009
NKK-HUT
NKK-HUT
Kiến trỳc vo-ra
Kin trỳc vo-ra
bus
hệ
thống
Mô-đun Cổng
vào-ra
vào-ra
Thiết bị
ngoại vi
Chờnh lch tc giữa thiết bị vào-ra
với CPU và bộ nhớ
Các kỹ thuật thc hin:
nối ghép
với CPU
và
bộ nhớ
chính
Cổng
vào-ra
Mô-đun Cổng
vào-ra
vào-ra
8 September 2009
Nguyn Kim Khỏnh - HBKHN
Thiết bị
ngoại vi
Ngt: rỳt ngn thi gian i ỏp ứng từ
thiết bị vào-ra
DMA: Phần cứng dành riêng để truyền d
liu gia thit b vo-ra vi b nh chớnh
Thiết bị
ngoại vi
8 September 2009
6
Bài giảng Hệ thống máy tính
NKK-HUT
NKK-HUT
Kiến trúc máy tính và hệ điều hành
1.3. Hiệu năng máy tính (performance)
1
user
Hiệu năng
=
Thời gian thực hiện
application program
OS
hardware resource management
multi programming support
1
Hiệu năng
•OS mode / user mode
•process dispatch
•memory protection
memory
I/O device
8 September 2009
8 September 2009
NKK-HUT
NKK-HUT
CPI (Cycles Per Instruction)
CPI là số chu kỳ cần thiết để thực hiện lệnh
Thời gian thực hiện của CPU
Thời gian thực hiện của CPU =
= Số lệnh × (Số chu kỳ của một lệnh) × (Thời
gian của một chu kỳ)
= Số lệnh × CPI / (Tần số xung nhịp)
hardware
processor
=
MIPS (Million Instruction Per Second)
Số triệu lệnh được thực hiện trong 1 second
Số lệnh được thực hiện × CPI
Thời gian thực hiện =
CPI
=
Tần số xung nhịp
Số lệnh được thực hiện
MIPS =
Thời gian thực hiện×106
Thời gian thực hiện × Tần số xung nhịp
Số lệnh được thực hiện
8 September 2009
Nguyễn Kim Khánh - ĐHBKHN
8 September 2009
7
Bài giảng Hệ thống máy tính
NKK-HUT
NKK-HUT
Quan hệ giữa MIPS và CPI
MFLOPS
million of floating point operations per second – triệu
phép toán số dấu phẩy động trên 1s
Với CPI = 4
Số phép toán số dấu phẩy động được thực hiện
exec time of 1 inst. exec time of 1 inst.
n inst. executed
MFLOPS =
program execution time(T)
T=n・CPI・
1
MIPS=
f
Thời gian thực hiện×106
n
GFLOPS(109 )
T・106
f
f
MIPS=
106
・CPI
CPI =
106
TFLOPS(1012)
・MIPS
8 September 2009
8 September 2009
NKK-HUT
NKK-HUT
Ví dụ 1
Ví dụ 2
Tính MIPS của bộ xử lý với:
Tần số xung nhịp = 2GHz và CPI = 4
Tính CPI của bộ xử lý với:
Tần số xung nhịp = 1GHz và 400 MIPS
0.5ns
1ns
2ns
1/(2x10-9)
1 chu kỳ =
= 0,5ns
CPI = 4 Æ 1 lệnh = 4x0,5ns = 2ns
Vậy bộ xử lý thực hiện được 500MIPS
8 September 2009
Nguyễn Kim Khánh - ĐHBKHN
4x108 lệnh thực hiện trong 1s
Ỉ 1 lệnh thực hiện trong 1/(4x108)s = 2,5ns
Ỉ CPI = 2,5
8 September 2009
8
Bài giảng Hệ thống máy tính
NKK-HUT
Hết chương 1
8 September 2009
Nguyễn Kim Khánh - ĐHBKHN
9