Giải thuật là các bước tiến hành công việc
• Tính xác định : mỗi bước được trình bày 1 cách chính xác
• Tính hữu hạn : mỗi bước phải bảo đảm đi đến kết thúc
• Tính hiệu quả
Vídụ:
• Khởi động máy tính
• Tính tổng từ 1 đến n
9 trang |
Chia sẻ: lylyngoc | Lượt xem: 1594 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Chương 2 Hệ thống máy tính & các lớp trừu tượng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
CHƯƠNG 2
HỆ THỐNG MÁY TÍNH
& CÁC LỚP TRỪU TƯỢNG
Nguyễn Văn Thọ
Khoa Điện tử viễn thông
Đại học Duy Tân – 2010
ĐẠI HỌC DUY TÂN
KHOA ĐIỆN TỬ VIỄN THÔNG
Nguyen Van Tho – Duy Tan University.
1-2
Computer System: HỆ THỐNG MÁY TÍNH
CÁC LỚP TRỪU TƯỢNG
Software
Hardware
Application Program
Language
Instruction Set Architecture
(and I/O Interfaces)
Microarchitecture
Circuits
Devices
Algorithms
Ứng dụng
Ngôn ngữ lập trình
Kiến trúc tập lệnh
(& giao diện nhập/ xuất)
Vi kiến trúc
Mạch điện tử
Linh kiện
Giải thuật
Nguyen Van Tho – Duy Tan University.
1-3
CHUYỂN ĐỔI GIỮA CÁC LỚP TRỪU TƯỢNG
Giải quyết một bài toán với máy tính như thế nào ?
Một hệ thống các chuyển đổi giữa các mức trừu tượng
ProblemProble
AlgorithmAlgorith
ProgramProgra
Software Design:
Lựa chọn giải thuật & cấu trúc dữ liệu
Programming:
Dùng ngôn ngữ lập trình để thiết kế
Instr Set
Architecture
Instr Set
Architecture
Compiling/Interpreting:
Chuyển đổi sang ngôn ngữ máy
Nguyen Van Tho – Duy Tan University.
1-4
CÁC LỚP SÂU HƠN
Instr Set
Architecture
Instr Set
Architecture
Micro
architecture
Micro
architecture
CircuitsCircuits
Processor Design:
Chọn cấu trúc để thi hành kiến trúc tập lệnh
Logic/Circuit Design:
Cổng logic và các mạch điện cấp thấp để
thực hiện các thành phần
DevicesDevices
Process Engineering & Fabrication:
Phát triển và sản xuất các thành phần
ở mức thấp nhất
Kiến trúc tập lệnh
Nguyen Van Tho – Duy Tan University.
1-5
Algorithms - Giải thuật
Giải thuật là các bước tiến hành công việc
• Tính xác định : mỗi bước được trình bày 1 cách chính xác
• Tính hữu hạn : mỗi bước phải bảo đảm đi đến kết thúc
• Tính hiệu quả
Ví dụ :
• Khởi động máy tính
• Tính tổng từ 1 đến n
Mọi vấn đề đều có thể có nhiều giải thuật
khác nhau để giải quyết
Nguyen Van Tho – Duy Tan University.
1-6
Programs – Chương trình
Bước chuyển đổi giải thuật thành chương trình máy tính
• Ngôn ngữ lập trình thì máy móc hơn ngôn ngữ tự nhiên
• Ngôn ngữ lập trình thì không mơ hồ, nhiều nghĩa mà rõ ràng và chính xác
hơn
Hiện nay, Có hơn 1000 ngôn ngữ lập trình
Nguyen Van Tho – Duy Tan University.
1-7
CÁC CẤP CHƯƠNG TRÌNH (PROGRAM LEVEL)
• Hầu hết các máy tính chạy một chương
trình quản lý gọi là Hệ điều hành-
operating system (OS).
• Chương trình ứng dụng giao tiếp với
kiến trúc máy tính thông qua hệ điều
hành
Application Program
Operating System
Program (Software)
Bài giảng
PowerPoint
Windows XP
Data
Application Program
Operating System
Ví dụ :
Nguyen Van Tho – Duy Tan University.
1-8
NGÔN NGỮ BẬC CAO
Độc lập với máy
• Không phụ thuộc vào các đặc điểm riêng của cấu trúc máy
• Có thể biên dịch để chạy mọi nơi
Dễ viết , năng suất cao
Thích hợp để mô tả
• Cấu trúc dữ liệu ( mảng, stacks...)
• Cấu trúc điều khiển ( lặp, chọn )
Nguyen Van Tho – Duy Tan University.
1-9
NGÔN NGỮ BẬC THẤP
Mang tính đặc thù của máy tính
• Người lập trình hiểu được tổ chức bên trong máy
• Người lập trình có thể truy cập đến những vấn đề gai góc
¾Các thanh ghi
¾Các chỉ thị đặc thù của máy
¾Các cách định địa chỉ bộ nhớ
¾Đặc điểm phần cứng
Năng suất thấp nhưng chương trình thi hành nhanh hơn, tốt
hơn
Nguyen Van Tho – Duy Tan University.
1-10
Instruction Set Architecture (ISA)
Chuyển chương trình máy tính thành các chỉ thị đặc
trưng của máy tính
ISA định nghĩa đặc thù của CPU
• Kiểu dữ liệu
• Tính toán trên dữ liệu
• operations on data
• Địa chỉ hóa bộ nhớ
• Các chế độ địa chỉ
Nguyen Van Tho – Duy Tan University.
1-11
Microarchitecture – Vi kiến trúc
Vi kiến trúc thi hành ISA
• IA-32
¾386
¾486
¾Pentium
¾Pentium-II, III, IV
¾Xeon
• IA-64
¾Pentium D (Netburst)
¾Dual Core (Core)
¾Core 2 Duo
¾Core 2 Quad
N
hanh hơn, phúc tạp hơn
Nguyen Van Tho – Duy Tan University.
1-12
Circuits - Mạch điện
Bước tiếp theo để thi hành mỗi phần tử của vi kiến trúc với
các mạch logic cơ bản
• Cổng, Bộ cộng, Bộ ghép kênh ..
• Flip flops, phần tử bộ nhớ
Nguyen Van Tho – Duy Tan University.
1-13
Devices – Linh kiện
Cuối cùng, mỗi mạch logic cơ bản được chế tạo với công
nghệ riêng
CMOS
NMOS
Gallium arsenide
Nguyen Van Tho – Duy Tan University.
1-14
MÔ TẢ CÁC LỚP TRỪU TƯỢNG
Problem Statement – Mô tả bài toán
• Sử dụng ngôn ngữ tự nhiên để mô tả trạng thái
• Có thể nhập nhằng, không rõ ràng
Algorithm - Giải thuật
• Các bước xử lý để bảo đảm hoàn thành.
• Tính xác định, tính hiệu quả , tính hữu hạn
Program – Chương trình
• Mô tả giải thuật sử dụng ngôn ngữ máy.
• Ngôn ngữ bậc cao, ngôn ngữ cấp thấp
Instruction Set Architecture (ISA)
• Chỉ định tập hợp các chỉ thị máy tính có thể thực hiện
• Kiểu dữ liệu, kiểu đánh địa chỉ
Nguyen Van Tho – Duy Tan University.
1-15
MÔ TẢ CÁC LỚP TRỪU TƯỢNG
Microarchitecture – Vi kiến trúc
• Mô tả tổ chức của processor implemantation
• Sự khác biệt khi thi thành của các ISA riêng lẻ
Logic Circuits – Các mạch logic
• Tổ hợp các thành phần cơ bản để thi hành vi kiến trúc
• Nhiều con đường khác nhau để thực hiện 1 chức năng
Devices - Thiết bị
• Tính chất phần cứng, tính sản xuất được
Nguyen Van Tho – Duy Tan University.
1-16
Nhiều lựa chọn cho các lớp trên thế giới
Giải quyết 1 hệ thống tính toán
Gaussian
elimination
Jacobi
iterationRed-black SOR Multigrid
FORTRAN C C++ Java
Intel x86Sun SPARC Compaq Alpha
Pentium II Pentium III AMD Athlon
Ripple-carry adder Carry-lookahead adder
CMOS Bipolar GaAs
Tradeoffs:
cost
performance
power
(etc.)
Nguyen Van Tho – Duy Tan University.
1-17
Computer System: HỆ THỐNG MÁY TÍNH
CÁC LỚP TRỪU TƯỢNG
Software
Hardware
Application Program
Language
Instruction Set Architecture
(and I/O Interfaces)
Microarchitecture
Circuits
Devices
Algorithms
Ứng dụng
Ngôn ngữ lập trình
Kiến trúc tập lệnh
(& giao diện nhập/ xuất)
Vi kiến trúc
Mạch điện tử
Linh kiện
Giải thuật