Bài giảng Kiến trúc máy tính - Chương 1: Các khái niệm & Công nghệ
Cuộc cách mạng Máy tính
Tiến bộ trong Công nghệ: theo cấp số
Dựa trên định luật Moore
Biến các ứng dụng mơ ước trở thành
hiện thực
Lĩnh vực xe hơi
Phone cầm tay
Các dự án về Gen
World Wide Web
Search Engines
Ngày nay, máy tính hiện hữu khắp nơi
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính - Chương 1: Các khái niệm & Công nghệ", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
- bai_giang_kien_truc_may_tinh_chuong_1_cac_khai_niem_cong_ngh.pdf
Nội dung text: Bài giảng Kiến trúc máy tính - Chương 1: Các khái niệm & Công nghệ
- Cơ chế hoạt động của chuột Chuột quang Bộ phận phát quang (LED) Camera nhỏ thu hình Bộ xử lý ảnh đơn giản Thu nhận mỗi chuyển động theo trục x, y Nút nhấn & đĩa lỗ phân dải Chuột cơ (Supersedes roller-ball) BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 11
- Thể hiện thông tin trên màn hình Màn hình tinh thể lỏng(LCD): nhiều điểm (pixels) Hiển thị 1 khung ảnh chứa trong bộ nhớ BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 12
- Cấu trúc bên trong Bộ xử lý (CPU) Datapath: lộ trình thực hiện các tác vụ với dữ liệu Điều khiển: lộ trình thực hiện, bộ nhớ, v.v Bộ nhớ Cache Một bộ phận bộ nhớ nhỏ nhưng có tốc độ truy xuất nhanh (SRAM), dùng lưu trữ trung gian các dữ liệu trước khi được truy xuất. BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 13
- AMD Barcelona: 4 lõi (cores) BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 14
- Lưu trữ dữ liệu Bộ nhớ chính (volatile) Lưu trữ lệnh và dữ liệu. Thông tin sẽ mất khi tắt nguồn Bộ nhớ thứ cấp (Non-volatile) Đĩa cứng (từ) Bộ nhớ flash Optical disk (CDROM, DVD) BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 15
- Mạng Môi trường liên lạc và chia sẻ tài nguyên Mạng cục bộ (LAN): Ethernet Trong cùng văn phòng, tòa nhà, v.v. Mạng diện rộng (WAN: the Internet) Mạng không dây: WiFi, Bluetooth BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 16
- Xu hướng theo công nghệ Công nghệ điện tử không ngừng phát triển: Tăng dung lượng & Hiệu suất DRAM capacity Giảm giá thành BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 17
- Các khái niệm trìu tượng Abstractions Giúp hạn chế độ phức tạp Ẩn những vấn đề chi tiết cấp thấp Kiến trúc tập lệnh (ISA = Instruction set architecture) Phần giao giữa Cứng/Mềm Giao tiếp ứng dụng (ISA) + Phần mềm hệ thống Thực hiện Cụ thể lớp dưới và phần giao tiếp BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 18
- Định nghĩa về Hiệu suất Hàng không: loại máy bay nào có hiệu suất tốt nhất? BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 19
- Hiệu suất hệ thống Giải thuật Xác định số tác vụ thực thi (number of operations) Ngôn ngữ lập trình, Trình biên dịch, Kiến trúc Xác định số lệnh máy thực thi cho mỗi tác vụ (operation) Bộ Xử lý và Hệ thống bộ nhớ Xác định tốc độ xử lý mỗi lệnh máy Hệ thống Nhập/Xuất (bao gồm Hệ điều hành) Xác định tốc độ thực thi của mỗi tác vụ I/O BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 20
- Thời gian đáp ứng & hiệu suất đầu ra Thời gian đáp ứng (Response time) Ví dụ: thời gian thực hiện 1 công việc (c.trình) Hiệu suất đầu ra (Throughput) Có bao nhiêu tác vụ được thực hiện hoàn tất trong 1 đơn vị thời gianTotal work done per unit time Ví dụ: tasks/transactions/ per hour Các thông số trên sẽ bị ảnh hưởng như thế nào? Khi: Thay bộ xử lý có tốc độ nhanh hơn? Thêm bộ xử lý vào hệ thống Tập trung vào Thời gian đáp ứng BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 21
- Hiệu suất: Đại lượng so sánh ĐN: Hiệu suất = 1/Thời gian thực thi (Performance = 1/Execution Time) “Máy X nhanh hơn máy Y n lần”, có nghĩa: Ví dụ: thời gian thực thi 1 chương trình Mất 10s trên máy A, 15s trên máy B Execution TimeB / Execution TimeA = 15s / 10s = 1.5 Có nghĩa máy A nhanh hơn máy B 1.5 lần BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 22
- Đo thời gian thực thi Thời gian tổng thể (Elapsed time) Thời gian thực thi chương trình, bao gồm:Thời gian xử lý (CPU), Xuất/Nhập, phí tổn HĐH, thời gian chết Thông số xác định hiệu xuất hệ thống Thời gian Bộ xử lý (CPU time) Thời gian của CPU xử lý chương trình Không kể thời gian I/O, thời gian do chia sẻ Bao gồm thời gian CPU dành cho chương trình người dùng + chương trình hệ thống Các chương trình khác nhau sẽ bị ảnh hưởng khác nhau bởi hiệu suất CPU và hệ thống BK TP.HCM 23 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính
- Xung đồng hồ Bộ xử lý Các tác vụ mạch số (phần cứng) được thực hiện dưới tác dụng của xung đồng hồ có tần số cố định. Chu kỳ đồng hồ: Khoảng thời gian cho 1 chu kỳ, ví dụ: 250ps = 0.25ns = 250×10–12s Tần số (rate): số chu kỳ/mỗi giây, Ví dụ: 4.0GHz = 4000MHz = 4.0×109Hz BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 24
- Thời gian Bộ Xử lý (CPU Time) Hiệu suất sẽ được cải thiện bằng cách Giảm số chu kỳ CPU Tăng tần số đồng hồ Người thiết kế phần cứng luôn phải hài hòa giữa tần số đồng hồ với số chu kỳ thực hiện BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 25
- Ví dụ: Thời gian Bộ xử lý Máy tính A: 2GHz clock, thực thi mất 10s CPU time Thiết kế máy tính B sao cho: Thời gian thực thi chỉ mất 6s CPU time Với đồng hồ nhanh hơn, nhưng mất 1.2 lần chu kỳ đồng hồ để thực thi Vậy đồng hồ máy B phải là bao nhiêu? BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 26
- Số lệnh (inst. Count) và CPI Số lệnh của 1 chương trình được xác định bởi: Bản thân chương trình, ISA & Biên dịch Số chu kỳ trung bình cho 1 lệnh: Xác định bởi phần cứng CPU Nếu lệnh có giá trị CPI khác nhau: CPI trung bình tổng thể BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 27
- Ví dụ: Chu kỳ/lệnh (CPI) Máy A: T.gian/ck = 250ps, CPI = 2.0 Máy B: T.gian/ck = 500ps, CPI = 1.2 A & B có cùng kiến trúc tập lệnh Máy nào nhanh hơn, hơn bao nhiêu? BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 28
- Cách tính CPI tổng quan Nếu các loại lệnh khác nhau thực hiện với số chu kỳ khác nhau trên mỗi lệnh CPI trung bình trọng số BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 29
- Ví dụ: CPI trung bình Sau khi biên dịch 1 chương trình với 3 loại lệnh A, B, C cho kết quả: Kết quả biên dịch 1: IC = 5 Kết quả biên dịch 2: IC = 6 Clock Cycles Clock Cycles = 2×1 + 1×2 + 2×3 = 4×1 + 1×2 + 1×3 = 10 = 9 Avg. CPI = 10/5 = 2.0 Avg. CPI = 9/6 = 1.5 BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 30
- Rút ra những gì về Hiệu suất Công thức tổng quan Phụ thuộc vào các yếu tố: Giải thuật: IC, có thể cả CPI Ngôn ngữ lập trình: IC, CPI Biên dịch: IC, CPI Kiến trúc tập lệnh: IC, CPI, Tc BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 31
- Năng lượng tiêu thụ Trong công nghệ chế tạo CMOS IC BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 32
- Giảm năng lượng tiêu thụ Giả sử 1 CPU mới so với 1 CPU cũ 85% tải Giảm 15% nguồn (V) và 15% tần số Ngưỡng về năng lượng tiêu thụ Không thể tiếp tục giảm nguồn (v) Không thể làm hạn chế nhiệt sinh ra càng tăng Vậy cải thiện hiệu suất bằng cách nào? BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 33
- Hiệu suất đơn xử lý BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 34
- Nhiều bộ xử lý kết hợp Bộ xử lý đa lõi Nhiều bộ xử lý trên cùng 1 chip Yêu cầu lập trình song song tường minh Compare with instruction level parallelism Nhiều lệnh phần cứng thực hiện đồng thời Hidden from the programmer Khó khăn Làm sao lập trình với hiệu suất cao Cân bằng tải Tối ưu trao đổi dữ liệu và đống bộ BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 35
- SPEC CPU Benchmark Tập các chương trình để đo hiệu suất Có tải đặc thù sát với thực tế Standard Performance Evaluation Corp (SPEC) Phát triển các bộ đánh giá (benchmarks) cho CPU, I/O, Web, SPEC CPU2006 Tổng thời gian thực thi 1 nhóm chương trình được chọn ra để đánh giá Không tính t.gian I/O, chỉ tập trung vào CPU Normalize relative to reference machine Summarize as geometric mean of performance ratios CINT2006 (integer) and CFP2006 (floating-point) BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 36
- CINT2006 for Opteron X4 2356 BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 37
- SPECpower_ssj2008 for X4 BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 38
- MIPS đại lượng đo hiệu suất MIPS = Millions of Instructions Per Second Không dùng vào mục đích so sánh Sự khác nhau về Kiến trúc tập lệnh của máy tính Sự khác nhau vế độ phức tạp của lệnh Các chương trình cùng thực hiện trên 1 CPU có thể có CPI khác nhau BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 39
- Quy trình chế tạo mạch Độ lợi (Yield): số chip đạt yêu cầu/mỗi wafer BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 40
- AMD Opteron X2 Wafer X2: 300mm wafer, 117 chips, 90nm technology X4: 45nm technology BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 41
- Giá thành mạch tích hợp Quan hệ phi tuyến với thiết diện Wafe & tỷ lệ lỗi Giá thành Wafer & thiết diện cố định Tỷ lệ lỗi phụ thuộc vào quy trình sản xuất Thiết diện chip phụ thuộc vào kiến trúc & thiết kế mạch BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 42
- Kết luận Giá thành/Hiệu suất ngày càng cải thiện Công nghệ phát triển Cấu trúc tổ chức phân tầng ý niệm Cả phần cứng lẫn mềm Kiến trúc tập lệnh Phần giao Phần cứng/Mềm Thời gian thực thi: cách tốt nhất đo hiệu suất Năng lượng (Power): yếu tố cản trở nhất Song song hóa cải thiện hiệu suất BK TP.HCM 9/11/2015 Khoa Khoa học & Kỹ thuật Máy tính 43