Thiết kế của von Neumann/Turing Dựa trên ý tưởng chương trình được lưu trữ stored-program concept Bộ nhớ chính chứa chương trình và dữ liệu ALU thực hiện các phép toán với số nhị
Trang 1Kỹ thuật Vi xử lý
Chương 1
MÁY TÍNH VÀ HỆ VI XỬ LÝ
Nguyễn Phú Bình
Bộ môn Kỹ thuật Máy tính, Khoa Công nghệ Thông tin
Trường Đại học Bách Khoa Hà Nội
Trang 4Copyright (c) 1/2007 by DTB 4
1 Máy tính dùng đèn điện tử
1946: John Mauchley và J.Presper Eckert chế tạo
ra ENIAC (Electronic Numerical Integrator and
Computer) - máy tính điện tử đa năng đầu tiên:
điện tử
Trang 5Đèn điện tử chân không
Trang 6Copyright (c) 1/2007 by DTB 6
Máy ENIAC
Trang 7Thiết kế của von Neumann/Turing
Dựa trên ý tưởng chương trình được lưu trữ
(stored-program concept)
Bộ nhớ chính chứa chương trình và dữ liệu
ALU thực hiện các phép toán với số nhị phân
Đơn vị điều khiển giải mã lệnh từ bộ nhớ và thực hiện
Đơ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
Trang 8Copyright (c) 1/2007 by DTB 8
Máy IAS (1947-1952)
Do John von Neumann (Hungary) thiết kế
Thực hiện ở Princeton Institute for Advanced Studies
Trang 92 Máy tính dùng transistor
1947: John Bardeen, Walter Brattain và William
Shockley phát minh ra Transistor ở Bell Labs.
Công ty DEC (Digital Equitment Corporation -
1957): chế tạo ra PDP-1
lúc đó)
Trang 10Copyright (c) 1/2007 by DTB 10
Máy tính dùng transistor (tiếp)
Công ty CDC (Control Data Corporation): chế tạo CDC
6600 (1964):
Siêu máy tính đầu tiên, nhanh hơn IBM 7094
CPU gồm các đơn vị chức năng có khả năng chạy song song
Gồm cả một số minicomputer chuyên xử lý vào-ra
Thực hiện được 10 triệu lệnh/s
Trị giá 10 triệu USD
Công ty IBM:
7090: Phiên bản 709 (thế hệ thứ 1) dùng transistor
7094: Chu trình lệnh 2 µ s, chuyên dùng cho các tính toán khoa học
1401: Rẻ tiền, khá nhanh, thích hợp với các ứng dụng doanh nghiệp
Các ngôn ngữ lập trình bậc cao ra đời
Trang 11Máy PDP-1 và CDC 6600
Trang 12Copyright (c) 1/2007 by DTB 12
3 Máy tính dùng mạch tích hợp
Mạch tích hợp (Integrated Circuit – IC) hay còn gọi
là vi mạch, là các chip bán dẫn trong đó chứa các
transistor và các linh kiện khác.
So với thế hệ trước, các máy tính thế hệ này:
Trang 13Máy tính dùng mạch tích hợp
Một số máy tính: IBM System/360, DEC PDP-11,
Công nghệ IC cho phép xây dựng các siêu máy
tính mạnh hơn.
Thực hiện được 160 triệu lệnh/s
Có đến 8MB bộ nhớ
Bộ vi xử lý (microprocessor) – CPU được chế tạo
trên 1 chip ra đời (1971: Intel 4004).
Trang 14Copyright (c) 1/2007 by DTB 14
Siêu máy tính CRAY-1
Trang 154 Máy tính dùng vi mạch VLSI
Các công nghệ mạch tích hợp:
Tích hợp tới 100 transistor trên một chip
Tích hợp từ 100 đến 3,000 transistor trên một chip
Tích hợp từ 3,000 đến 100,000 transistor trên một chip
Tích hợp từ 100,000 đến 100,000,000 transistor trên một chip
Có hơn 100,000,000 transistor trên một chip
Trang 16Copyright (c) 1/2007 by DTB 16
Các công nghệ SX máy tính
Trang 17Máy tính dùng vi mạch VLSI
Các sản phẩm của công nghệ VLSI:
một chip
mạch thực hiện được nhiều chức năng điều khiển và nối ghép
chuyên dụng được chế tạo trên một chip
Trang 18Copyright (c) 1/2007 by DTB 18
Các loại máy tính hiện đại
Máy tính lớn – siêu máy tính:
Máy chủ (Server)
Máy vi tính:
Máy tính nhúng (Embedded Computer)
Trang 19Nội dung chương 1
1.1 Các thế hệ máy tính
1.2 Các thế hệ bộ vi xử lý
1.3 Tổng quan về hệ vi xử lý
Trang 20Copyright (c) 1/2007 by DTB 20
1.2 Các thế hệ bộ vi xử lý
Bộ vi xử lý (Microprocessor): vi mạch tích hợp thực hiện chức năng của bộ xử lý trung tâm (CPU).
Trang 21Các thế hệ bộ vi xử lý (tiếp)
Thế hệ 16 bit (1979÷1982):
Hãng IBM sử dụng 8088 để thiết kế máy IBM-PC (1981)
Hãng Apple sử dụng 68000 để thiết kế máy Macintosh (1983)
Trang 23Intel 4004 - bộ vi xử lý 4 bit
Trang 24Copyright (c) 1/2007 by DTB 24
Intel 8080 - bộ vi xử lý 8 bit
Trang 25Intel 80286 - bộ vi xử lý 16 bit
Trang 26Copyright (c) 1/2007 by DTB 26
Intel 80386 - bộ vi xử lý 32 bit
Trang 27Intel Pentium (32-bit)
Trang 28Copyright (c) 1/2007 by DTB 28
Pentium III và Pentium 4 (32-bit)
Trang 29Itanium (64-bit)
Trang 311.3 Tổng quan về hệ vi xử lý
1 Kiến trúc phần cứng
2 Kiến trúc phần mềm
Trang 33Kiến trúc phần cứng (tiếp)
Trang 34Copyright (c) 1/2007 by DTB 34
Nhận xét
Thiết bị vào-ra không nối trực tiếp với bus hệ thống
mà thông qua các cổng vào-ra.
Tùy theo quy mô của thiết bị ngoại vi:
⇒ Đều là các hệ vi xử lý
Trang 35a Bộ vi xử lý
Chức năng:
Nguyên tắc hoạt động cơ bản: bộ VXL hoạt động
theo chương trình nằm trong bộ nhớ bằng cách:
bộ nhớ,
khiển thực thi lệnh
dữ liệu với bộ nhớ hay hệ thống vào-ra
Trang 36Copyright (c) 1/2007 by DTB 36
Các thành phần chính của bộ VXL
Trang 37Các thành phần của bộ VXL (tiếp)
Đơn vị điều khiển (Control Unit):
yêu cầu đó
Đơn vị số học và logic (Arithmetic and Logic Unit):
sánh,
Trang 38Copyright (c) 1/2007 by DTB 38
Các thành phần của bộ VXL (tiếp)
Tập thanh ghi (Registers):
bộ vi xử lý
Thông tin về địa chỉ
Dữ liệu tạm thời
Thông tin trạng thái
Đơn vị nối ghép bus (Bus Interface Unit):
ngoài
Trang 39b Bộ nhớ chính
Chức năng: chứa các chương trình và dữ liệu mà
bộ vi xử lý có khả năng trao đổi trực tiếp.
Được tổ chức thành các ngăn nhớ (thường theo
Byte)
phải biết địa chỉ của ngăn nhớ đó
Trang 40Copyright (c) 1/2007 by DTB 40
Bộ nhớ chính (tiếp)
Bộ nhớ chính được thiết kế trên cơ sở gồm:
Bộ nhớ không khả biến.
Chứa các chương trình và dữ liệu cố định với hệ thống.
Bộ nhớ khả biến.
Chứa các thông tin tạm thời.
Trang 41c Hệ thống vào-ra
Chức năng: Trao đổi thông tin giữa hệ vi xử lý với thế giới bên ngoài.
Các thành phần chính:
Chuyển đổi dữ liệu giữa bên trong và bên ngoài hệ vi xử lý.
Nối ghép giữa thiết bị ngoại vi với hệ vi xử lý.
Trên mạch nối ghép vào-ra có các cổng vào-ra (I/O Port).
Mỗi cổng vào-ra cũng được đánh một địa chỉ xác định.
Thiết bị ngoại vi được kết nối và trao đổi dữ liệu với hệ vi xử lý thông qua các cổng vào-ra.
Trang 42Copyright (c) 1/2007 by DTB 42
d Bus truyền thông tin
Bus: tập hợp các đường kết nối dùng để vận
chuyển thông tin giữa các thành phần
Độ rộng bus: là số đường dây của bus có thể
truyền thông tin đồng thời Tính bằng bit.
Phân loại bus theo chức năng:
Trang 43Bus địa chỉ
Chức năng: vận chuyển địa chỉ từ bên trong bộ vi
xử lý đến bộ nhớ chính hay mạch nối ghép vào-ra
để xác định ngăn nhớ hay cổng vào-ra cần trao đổi thông tin.
Độ rộng bus địa chỉ: xác định dung lượng bộ nhớ
cực đại của hệ thống
Nếu độ rộng bus địa chỉ là N bit (gồm N đường dây
AN-1, AN-2, , A2, A1, A0) thì:
Trang 45có thể vận chuyển đồng thời được M bit dữ liệu.
Trang 47Bus điều khiển
Chức năng: vận chuyển các tín hiệu điều khiển
Các loại tín hiệu điều khiển:
khiển bộ nhớ chính hay mạch nối ghép vào-ra
vào-ra gửi đến bộ vi xử lý
Trang 48Copyright (c) 1/2007 by DTB 48
2 Kiến trúc phần mềm
Trang 49 Ngôn ngữ chương trình duy nhất mà máy tính hiểu
được ngôn ngữ máy.
→ Lập trình trực tiếp bằng ngôn ngữ máy rất vất vả
và dễ xảy ra sai sót.
Trang 50Copyright (c) 1/2007 by DTB 50
Hợp ngữ (Assembly Language)
Là ngôn ngữ lập trình gần với ngôn ngữ máy nhất.
Sử dụng các kí hiệu gợi nhớ để biểu diễn các lệnh máy.
Chương trình dịch hợp ngữ sang ngôn ngữ máy
Trang 51Ngôn ngữ lập trình bậc cao
Cho phép người lập trình viết các chương trình gần với
ngôn ngữ tự nhiên hơn so với hợp ngữ
Chương trình viết bằng NNLT bậc cao gọi là chương trình
nguồn (source code).
Chương trình chuyển từ chương trình nguồn sang ngôn
ngữ máy gọi là chương trình dịch.
Chương trình biên dịch (compiler):
Dịch toàn bộ chương trình nguồn sang mã máy.
Nếu chương trình nguồn có lỗi thì sẽ ngừng việc biên dịch.
Chương trình thông dịch (interpreter):
Dịch từng lệnh của chương trình nguồn (và thực hiện)
Nếu chương trình nguồn có lỗi thì vẫn thực hiện CT cho đến khi gặp lỗi.
Ngôn ngữ lập trình trực quan (visual programming
language): giúp việc xây dựng chương trình nhanh chóng
và trực quan hơn
Trang 52 Điều khiển việc thực thi các chương trình khác.
Quản lý, phân phối tài nguyên của hệ thống.
Điều khiển các thiết bị và quá trình vào-ra.
Cung cấp giao diện người dùng.
Trang 53điều hành Microsoft Windows:
Opera, …
Trang 54Copyright (c) 1/2007 by DTB 54
Kỹ thuật Vi xử lý
HẾT CHƯƠNG 1