1. Trang chủ
  2. » Công Nghệ Thông Tin

kiến trúc máy tính - chương 1 giới thiệu các kíên thức cơ bản

19 1,1K 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 19
Dung lượng 1,72 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

„ Học phần học trước: IT1010 THĐC NKK-HUT Mục tiêu học phần „ Giới thiệu các kiến thức cơ bản về kiến trúc máy tính, bao gồm: kiến trúc tập lệnh và tổ chức của máy tính, cũng như các vấn

Trang 1

5 September 2009 Bài giảng Kiến trúc máy tính

KIẾN TRÚC MÁY TÍNH

Computer Architecture

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 School of Information and Communication Technology (SoICT)

5 September 2009 Bài giảng Kiến trúc máy tính 2

NKK-HUT

Contact

„ DCE’s Office: 322-C1

„ SoICT’s Office: 320-C1

„ e-mail: khanhnk@mail.hut.edu.vn

NKK-HUT

Giới thiệu học phần

các ngành công nghệ thông tin từ học

kỳ 5

„ Học phần học trước: IT1010 (THĐC)

NKK-HUT

Mục tiêu học phần

„ Giới thiệu các kiến thức cơ bản về kiến trúc máy tính, bao gồm: kiến trúc tập lệnh và tổ chức của máy tính, 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

Trang 2

5 September 2009 Bài giảng Kiến trúc máy tính 5

Tài liệu tham khảo chính

1 William Stallings - Computer Organization and

Architecture – Designing for Performance – 2003 (6 th

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)

5 September 2009 Bài giảng Kiến trúc máy tính 6

Tài liệu tham khảo

5 September 2009 Bài giảng Kiến trúc máy tính 7

NKK-HUT

Tài liệu tham khảo

5 September 2009 Bài giảng Kiến trúc máy tính 8

NKK-HUT 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 Tổng quan về hệ thống máy tính

„ Chương 4 Kiến trúc tập lệnh

„ Chương 5 Số học máy tính

„ Chương 6 Bộ xử lý trung tâm

„ Chương 7 Bộ nhớ máy tính

„ Chương 8 Hệ thống vào-ra

„ Chương 9 Máy tính song song

Trang 3

5 September 2009 Bài giảng Kiến trúc máy tính 9

NKK-HUT

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

5 September 2009 Bài giảng Kiến trúc máy tính 10

NKK-HUT

1.1 Máy tính và phân loại máy tính 1.2 Kiến trúc máy tính

1.3 Sự phát triển của máy tính 1.4 Hiệu năng máy tính

Nội dung

NKK-HUT

„ Máy tính (Computer)là thiết bị điện tử thực hiện các công việc sau:

„ Nhận thông tin vào,

„ Xử lý thông tin theo dãy các lệnh được nhớ sẵn bên trong,

„ Đưa thông tin ra

„ 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

1.1 Máy tính và phân loại máy tính

1 Máy tính

NKK-HUT

Máy tính

Trang 4

5 September 2009 Bài giảng Kiến trúc máy tính 13

„ Máy vi tính (Microcomputers)

„ Máy tính nhỏ (Minicomputers)

„ Máy tính lớn (Mainframe Computers)

„ Siêu máy tính (Supercomputers)

2 Phân loại máy tính

5 September 2009 Bài giảng Kiến trúc máy tính 14

Phân loại máy tính hiện đại

5 September 2009 Bài giảng Kiến trúc máy tính 15

NKK-HUT

„ Máy tính để bàn (Desktop)

„ Máy tính xách tay (Laptop)

dụng bộ xử lý Intel 8088

bộ xử lý Motorola 68000

Máy tính cá nhân PC

5 September 2009 Bài giảng Kiến trúc máy tính 16

NKK-HUT

Client/Server (Khách hàng/Người phục vụ)

USD

Máy chủ (Server)

Trang 5

5 September 2009 Bài giảng Kiến trúc máy tính 17

NKK-HUT

thiết bị đó làm việc

„ 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

USD

Máy tính nhúng (Embedded Computer)

5 September 2009 Bài giảng Kiến trúc máy tính 18

NKK-HUT

1.2 Kiến trúc máy tính

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)

NKK-HUT

„ Kiến trúc máy tínhbao gồm:

„ 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).

„ 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.

„ 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

NKK-HUT

Ví dụ

Các máy tính PC dùng các bộ xử lý Pentium III và Pentium 4:

„ cùng chung kiến trúc tập lệnh (IA-32)

„ có tổ chức khác nhau

Trang 6

5 September 2009 Bài giảng Kiến trúc máy tính 21

Kiến trúc tập lệnh Kiến trúc tập lệnh của máy tính bao gồm:

„ Tập lệnh : tập hợp các chuỗi số nhị phân

mã hoá cho các thao tác mà máy tính

có thể thực hiện

„ Các kiểu dữ liệu : các kiểu dữ liệu mà máy tính có thể xử lý

5 September 2009 Bài giảng Kiến trúc máy tính 22

Cấu trúc cơ bản của máy tính

CPU Bé nhí chÝnh

Bus liªn kÕt hÖ thèng

HÖ thèng vµo-ra

5 September 2009 Bài giảng Kiến trúc máy tính 23

NKK-HUT

Điều khiển hoạt động của máy tính và xử lý

dữ liệu

chương trình và dữ liệu đang được sử dụng

đổi thông tin giữa máy tính với bên ngoài

Bus): Kết nối và vận chuyển thông tin giữa các thành phần với nhau

Các thành phần cơ bản của máy tính

5 September 2009 Bài giảng Kiến trúc máy tính 24

NKK-HUT

Mô hình phân lớp của máy tính

„ Phần cứng (Hardware): hệ thống vật lý của máy tính.

„ Phần mềm (Software): các chương trình và dữ liệu.

Trang 7

5 September 2009 Bài giảng Kiến trúc máy tính 25

NKK-HUT

1.3 Sự phát triển của của máy tính

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)

5 September 2009 Bài giảng Kiến trúc máy tính 26

NKK-HUT

„ Electronic Numerical Intergator And Computer

„ Dự án của Bộ Quốc phòng Mỹ

„ Do John Mauchly và John Presper Eckert ở Đại học Pennsylvania thiết kế

„ Bắt đầu từ năm 1943, hoàn thành năm 1946

Máy tính dùng đèn điện tử

NKK-HUT

„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

ENIAC (tiếp)

NKK-HUT

Đèn điện tử

Trang 8

5 September 2009 Bài giảng Kiến trúc máy tính 29

ENIAC (tiếp)

5 September 2009 Bài giảng Kiến trúc máy tính 30

„ Princeton Institute for Advanced Studies

„ Được bắt đầu từ 1947, hoàn thành1952

„ Do John von Neumann thiết kế

„ Được xây dựng theo ý tưởng “chương trình được lưu trữ” (stored-program

concept) của von Neumann/Turing (1945)

Máy tính von Neumann

5 September 2009 Bài giảng Kiến trúc máy tính 31

NKK-HUT

„ Bao gồm các thành phần: đơn vị điều khiển, đơn

vị số học và logic (ALU), bộ nhớ chính và các thiết bị vào-ra

„ Bộ nhớ chính chứa chương trình và dữ liệu

„ Bộ nhớ chính được đánh địa chỉ theo từng ngăn nhớ, không phụ thuộc vào nội dung của nó

„ ALU thực hiện các phép toán với số nhị phân

„ Đơn vị điều khiển nhận lệnh từ bộ nhớ, giải mã

và thực hiện lệnh một cách tuần tự

„ Đơn vị điều khiển điều khiển hoạt động của các thiết bị vào-ra

„ Trở thành mô hình cơ bản của máy tính

Đặc điểm chính của máy tính IAS

5 September 2009 Bài giảng Kiến trúc máy tính 32

NKK-HUT

John von Neumann và máy tính IAS

Trang 9

5 September 2009 Bài giảng Kiến trúc máy tính 33

NKK-HUT

Cấu trúc của máy tính von Neumann

5 September 2009 Bài giảng Kiến trúc máy tính 34

NKK-HUTCấu trúc chi tiết của IAS

NKK-HUT

Các máy tính thương mại ra đời

Corporation

„ Nhanh hơn

„ Bộ nhớ lớn hơn

NKK-HUT

UNIVAC I

Trang 10

5 September 2009 Bài giảng Kiến trúc máy tính 37

UNIVAC II

5 September 2009 Bài giảng Kiến trúc máy tính 38

Hãng IBM

„ 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

„ Các ứng dụng thương mại

5 September 2009 Bài giảng Kiến trúc máy tính 39

NKK-HUT

IBM 701

5 September 2009 Bài giảng Kiến trúc máy tính 40

NKK-HUT

Corporation) máy tính mini đầu tiên

Máy tính dùng transistor

Trang 11

5 September 2009 Bài giảng Kiến trúc máy tính 41

NKK-HUT

Máy tính DEC PDP-1 (1960)

5 September 2009 Bài giảng Kiến trúc máy tính 42

NKK-HUT

IBM 7030 (1961)

NKK-HUT

„ 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 chip bán dẫn

„ SSI (Small Scale Integration)

„ MSI (Medium Scale Integration)

„ LSI (Large Scale Integration)

„ VLSI (Very Large Scale Integration) (thế hệ thứ tư)

„ ULSI (Ultra Large Scale Integration) (thế hệ thứ năm)

„ SoC (System on Chip)

„ Siêu máy tính xuất hiện: CRAY-1, VAX

„ Bộ vi xử lý (microprocessor) ra đời

„ Bộ vi xử lý đầu tiên Æ Intel 4004 (1971).

Máy tính dùng vi mạch SSI, MSI và LSI

NKK-HUT

Luật Moore

„ 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

Trang 12

5 September 2009 Bài giảng Kiến trúc máy tính 45

Tăng trưởng số transistor trong chip CPU

5 September 2009 Bài giảng Kiến trúc máy tính 46

IBM 360 Family

5 September 2009 Bài giảng Kiến trúc máy tính 47

NKK-HUT

PDP-11 (1973)

5 September 2009 Bài giảng Kiến trúc máy tính 48

NKK-HUT

VAX-11 (1981)

Trang 13

5 September 2009 Bài giảng Kiến trúc máy tính 49

NKK-HUT

Micro VAX

5 September 2009 Bài giảng Kiến trúc máy tính 50

NKK-HUT

Siêu máy tính CRAY-1

NKK-HUT

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

Máy tính dùng vi mạch VLSI/ULSI

NKK-HUT

Ví dụ máy chủ HP

Trang 14

5 September 2009 Bài giảng Kiến trúc máy tính 53

Ví dụ máy chủ Sun

SunFire V40z

SunFire V880

SunFire15K

5 September 2009 Bài giảng Kiến trúc máy tính 54

2 Sự phát triển của bộ vi xử lý

„ 1971: bộ vi xử lý 4-bit Intel 4004

5 September 2009 Bài giảng Kiến trúc máy tính 55

NKK-HUT

Sự phát triển của Intel x86

„ 4004

„ Bộ vi xử lý đầu tiên

„ 4-bit

„ 8080

„ Bộ vi xử lý đa năng đầu tiên

„ 8-bit

„ Sử dụng trong PC đầu tiên – Altair

„ 8086

„ 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

5 September 2009 Bài giảng Kiến trúc máy tính 56

NKK-HUT

Sự phát triển của Intel x86 (tiếp)

„ 80386

„ 32-bit

„ Hỗ trợ đa nhiệm

„ 80486

„ 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

„ 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ự đoán rẽ nhánh

„ Phân tích luồng dữ liệu

„ Suy đoán đông

Trang 15

5 September 2009 Bài giảng Kiến trúc máy tính 57

NKK-HUT

Sự phát triển của Intel x86 (tiếp)

„ Pentium II

„ Công nghệ MMX

„ Xử lý đồ họa, video & audio

„ Pentium III

„ Thêm các lệnh xử lý dấu phẩy động cho đồ họa 3D

„ 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

„ 4 bộ xử lý trong 1chip

5 September 2009 Bài giảng Kiến trúc máy tính 58

NKK-HUT

Intel 4004 - bộ vi xử lý 4-bit

NKK-HUT

Intel 8080 - bộ vi xử lý 8-bit

NKK-HUT

Intel 80286 - bộ vi xử lý 16-bit

Trang 16

5 September 2009 Bài giảng Kiến trúc máy tính 61

80386 - bộ vi xử lý 32-bit đầu tiên của Intel

5 September 2009 Bài giảng Kiến trúc máy tính 62

Intel Pentium (32-bit)

5 September 2009 Bài giảng Kiến trúc máy tính 63

NKK-HUT

Pentium III và Pentium 4 (32-bit)

Pentium III Pentium 4

5 September 2009 Bài giảng Kiến trúc máy tính 64

NKK-HUT

Multicores

Trang 17

5 September 2009 Bài giảng Kiến trúc máy tính 65

NKK-HUT

3 Sự phát triển của thiết bị ngoại vi

„ người-máy

„ máy-máy

5 September 2009 Bài giảng Kiến trúc máy tính 66

NKK-HUT

4 Phần mềm máy tính

„ Hệ điều hành

„ Quản lý: nhiệm vụ, bộ nhớ, files, vào-ra

„ Lập lịch

„ ….

„ Công cụ lập trình và chương trình dịch

„ Các trình điều khiển thiết bị

„ …

NKK-HUT

Ngôn ngữ lập trình

High Level Language Program

Assembly Language Program

Machine Language Program

Compiler

Assembler

temp = v[k];

v[k] = v[k+1];

v[k+1] = temp;

lw $15, 0($2)

lw $16, 4($2)

sw $16, 0($2)

sw $15, 4($2)

0000 1001 1100 0110 1010 1111 0101 1000

1010 1111 0101 1000 0000 1001 1100 0110

1100 0110 1010 1111 0101 1000 0000 1001

0101 1000 0000 1001 1100 0110 1010 1111

NKK-HUT

1.4 Hiệu năng máy tính (performance)

Performance =

Execution time 1

Performance =

CPU execution time

1

CPU execution time= Instructions × (Cycles Per Instruction) × (Secs per cycle)

= Instructions × CPI / (Clock rate)

Trang 18

5 September 2009 Bài giảng Kiến trúc máy tính 69

CPI (Cycles Per Instruction)

Số chu ky cần thiết để thực hiện lệnh

execution time =

clock rate executed instructions × CPI

executed instructions execution time × clock rate

5 September 2009 Bài giảng Kiến trúc máy tính 70

executed instructions

MIPS (Million Instruction Per Second)

Số triệu lệnh được thực hiện trong 1 second

MIPS =

5 September 2009 Bài giảng Kiến trúc máy tính 71

NKK-HUT

10 6 ・CPI clock rate

Quan hệ giữa MIPS và CPI

exec time of 1 inst.

Với CPI = 4

program execution time(T)

n inst executed

T=n・CPI・

clock rate

MIPS= n

T・10 6

MIPS=

10 6 ・MIPS

clock rate CPI =

exec time of 1 inst.

5 September 2009 Bài giảng Kiến trúc máy tính 72

NKK-HUT

executed floating point operations

MFLOPS

million of floating point operations per second

MFLOPS =

GFLOPS(10 9 ) TFLOPS(10 12 )

Trang 19

5 September 2009 Bài giảng Kiến trúc máy tính 73

NKK-HUT

Ví dụ 1 Tính MIPS của bộ xử lý với:

clock rate = 2GHz và CPI = 4

0.5ns 2ns

1 chu kỳ = 1/(2x10-9) = 0,5ns CPI = 4 Æ 1 lệnh = 4x0,5ns = 2ns Vậy bộ xử lý thực hiện được 500MIPS

5 September 2009 Bài giảng Kiến trúc máy tính 74

NKK-HUT

Ví dụ 2

Tính CPI của bộ xử lý với:

clock rate = 1GHz và 400 MIPS?

1ns

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

NKK-HUT

Hết chương 1

Ngày đăng: 03/07/2014, 18:04

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w