Bài giảng Kiến trúc máy tính - Một số khái niệm và công nghệ

Ngôn ngữcấp cao mang lạinhiềulợi ích quan trọng

• Cho phép ngườilập trình suy nghĩ dướidạng ngôn ngữtựnhiên

(Anh ngữ, biểuthức toán, ): FORTRAN, COBOL, LISP

•Tăngđáng kểhiệunăng lậptrình: chương trình ngắnhơn, sáng

sủavàdễhiểuhơn

•Ngônngữcấpcaođộclậpđốivới máy tính

)Khảnăng tái sửdụng chương trình mang lạihiệuquả

cao hơnlàviết toàn bộchương trình từđầu

Ötrình con, thưviện, thưviệc các trình con xuất/nhập

)Ngườitanhậnthấyviệcthựcthi cácchương trình trên

máy tính sẽhiệuquảhơnnếucó1 chương trìnhđặc

biệtgiámsát thực thi cho các chương trình trên

ÖHệđiềuhành(operating system)

pdf24 trang | Chia sẻ: maiphuongdc | Lượt xem: 3283 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Bài giảng Kiến trúc máy tính - Một số khái niệm và công nghệ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Khoa KH & KT Máy tính Boää moânâ Kyõõ thuaäät Maùùy tính Phaïïm Töôøøng Haûûi Nguyeãnã Quoáác Tuaáán Kiến trúc Máy tính - Chap 01 2 Nội dung tóm tắt môn học ) Là môn học cơ sở ngành máy tính, giảng dạy cho cả chuyên ngành KTMT lẫn KHMT )Cung cấp các kiến thức cơ bản về nguyên lý hoạt động và tổ chức ở các máy tính số • Vấn đề đánh giá hiệu suất • Kiến trúc tập lệnh • Tính toán số học • Đường đi dữ liệu và tín hiệu điều khiển • Hệ thống bộ nhớ • Giao tiếp với ngoại vi )Sử dụng kiến trúc các bộ xử lý PowerPC, MIPS, Intel, v.v… làm minh họa Kiến trúc Máy tính - Chap 01 3 Mục đích môn học )Đối với chuyên ngành KTMT • Nắm vững các kiến thức cơ bản về tổ chức và hoạt động của máy tính số • Làm nền tảng để tìm hiểu cấu trúc (kiến trúc + mạch logic) của các phần tử khác nhau trong một máy tính số • Vận dụng để thiết kế, cải tạo, sửa chữa các hệ thống ứng dụng vi xử lý – vi điều khiển, hệ thống nhúng )Đối với chuyên ngành KHMT • Nắm vững các kiến thức cơ bản về tổ chức và hoạt động của máy tính số • Vận dụng vào thiết kế, cải tạo các hệ thống phần mềm sao cho hoạt động hiệu quả, phù hợp với kiến trúc phần cứng Kiến trúc Máy tính - Chap 01 4 Tài liệu tham khảo ) “Computer Organization and Design: the hardware/software interface”, John L. Hennessy & David A. Patterson, Second Edition, MORGAN KAUFMANN PUBLISHERS, INC. 1998 ) “Computer Architecture: a quantitative approach”, John L. Hennessy & David A. Patterson, Third Edition, MORGAN KAUFMANN PUBLISHERS, INC. 2002 Kiến trúc Máy tính - Chap 01 5 Chương 1. Kiến trúc Máy tính - Chap 01 6 1.1 Dẫn nhập )Sự ra đời và phát triển của máy tính dẫn đến cái gọi là cách mạng thông tin, cuộc cách mạng thứ 3 trong nền văn minh của loài người (trước đó lần lượt là cách mạng nông nghiệp, cách mạng kỹ nghệ) )Kết quả là sức mạch trí tuệ của nhân loại được nhân lên đáng kể, khoa học – kỹ thuật phát triển mạnh mẽ và vươn đến những giới hạn mới )Một số thành tựu đạt được trong thời gian qua giống như chuyện viễn tưởng • Automatic teller machines • Computers in automobiles • Laptop computers • Human genome project • World Wide Web Kiến trúc Máy tính - Chap 01 7 … )Phần cứng máy tính tiến bộ cho phép các nhà lập trình viết nên những phần mềm ứng dụng kỳ diệu, và làm cho máy tính thâm nhập nhanh chóng vào mọi ngóc ngách của đời sống hiện đại ) Trong tương lai những điều viễn tưởng sẽ là: một xã hội không cần đến tiền mặt, các xa lộ thông minh tự động hóa, ubiquitous computing, … )Các nhà lập trình thành công luôn biết quan tâm tới tốc độ của các chương trình do mình viết ra ) Trong thập niên 60 và 70, hạn chế chủ yếu đối với hiệu suất của máy tính nằm ở kích thước của bộ nhớ Ö Tối thiểu hóa mã lệnh để chương trình thực thi nhanh hơn Kiến trúc Máy tính - Chap 01 8 … ) Trong gần 20 năm qua, những tiến bộ trong thiết kế máy tính và công nghệ bộ nhớ đã xóa đi hạn chế của bộ nhớ kích thước nhỏ Ö Muốn chương trình thực thi nhanh hơn cần hiểu và vận dụng được bản chất phân cấp ở bộ nhớ cũng như bản chất song song ở bộ xử lý )Những nhà lập trình muốn viết ra các phiên bản cạnh tranh về chương trình dịch, hệ điều hành, cơ sở dữ liệu, và cả ở các chương trình ứng dụng cần phải tăng cường hiểu biết của mình về nguyên lý hoạt động và tổ chức của các máy tính Kiến trúc Máy tính - Chap 01 9 1.2 Bên dưới của chương trình )Máy tính là bước phát triển kế tiếp của các mạch logic ) Thông tin trên máy tính được biểu diễn bởi các ký số nhị phân hay bit (binary digit) )Máy tính hoạt động tuân theo các chỉ thị của chúng ta. Thuật ngữ dùng để gọi các chỉ thị riêng lẻ là câu lệnh (instruction) )Mỗi câu lệnh là 1 chuỗi xác định các bit, (giống như 1 số nhị phân) mà máy tính có thể hiểu được • TD 1000110010100000 yêu cầu máy tính cộng 2 số nguyên )Những nhà lập trình đầu tiên truyền đạt chỉ thị đến máy tính thông qua các con số nhị phân nói trên • Đây là công việc hết sức tẻ nhạt Kiến trúc Máy tính - Chap 01 10 … )Công cụ lập trình dùng các số nhị phân để viết ra các chỉ thị cho máy tính được gọi là ngôn ngữ máy (machine language) )Con người nhanh chóng thay thế các số nhị phân bởi các ký hiệu gợi nhớ (mnemonic), chúng là những ký hiệu gần với cách suy nghĩ của con người hơn • TD sử dụng add A, B thay thế cho 1000110010100000 ) Lúc đầu con người dùng tay để dịch các ký hiệu trên ra số nhị phân rồi đem thực thi trên máy tính )Sau đó, con người phát triển một chương trình trợ giúp việc dịch nói trên: assembler )Công cụ lập trình dùng các ký hiệu gợi nhớ nhằm viết ra các chỉ thị cho máy tính được gọi là hợp ngữ (assemly language) Kiến trúc Máy tính - Chap 01 11 … )Mỗi dòng trong hợp ngữ là 1 câu lệnh để máy tính thực thi. Lập trình bằng hợp ngữ buộc người lập trình phải suy nghĩ hành động như một máy tính • Cấp hành động như máy tính gọi là cấp thấp (low level) • Ngôn ngữ máy và hợp ngữ là các ngôn ngữ cấp thấp (low level language) ) Theo hướng trên, người ta lại đưa ra các ký hiệu gần với suy nghĩ của con người và tạo nên các ngôn ngữ cấp cao (high level language) • TD A + B thay cho add A, B )Sử dụng chương trình để dịch ngôn ngữ cấp cao sang hợp ngữ: chương trình dịch (compiler) Kiến trúc Máy tính - Chap 01 12 … Chương trình viết bằng C Ngôn ngữ máy Chương trình dạng hợp ngữ Compiler Assembler Kiến trúc Máy tính - Chap 01 13 … )Ngôn ngữ cấp cao mang lại nhiều lợi ích quan trọng • Cho phép người lập trình suy nghĩ dưới dạng ngôn ngữ tự nhiên (Anh ngữ, biểu thức toán, …): FORTRAN, COBOL, LISP • Tăng đáng kể hiệu năng lập trình: chương trình ngắn hơn, sáng sủa và dễ hiểu hơn • Ngôn ngữ cấp cao độc lập đối với máy tính )Khả năng tái sử dụng chương trình mang lại hiệu quả cao hơn là viết toàn bộ chương trình từ đầu Ö trình con, thư viện, thư việc các trình con xuất/nhập )Người ta nhận thấy việc thực thi các chương trình trên máy tính sẽ hiệu quả hơn nếu có 1 chương trình đặc biệt giám sát thực thi cho các chương trình trên Ö Hệ điều hành (operating system) Kiến trúc Máy tính - Chap 01 14 … )Hệ điều hành là chương trình quản lý các tài nguyên của máy tính hỗ trợ tốt nhất cho việc thực thi của các chương trình khác nhau trên máy tính )Phần mềm có thể được phân loại theo tính năng sử dụng • Các chương trình cung cấp dịch vụ chung cho các chương trình khác được gọi là phần mềm hệ thống (systems software) Ö hệ điều hành, chương trình dịch, … • Phần mềm ứng dụng (applications software) là các phần mềm cung cấp dịch vụ cho các người sử dụng máy tính (users) Ö word, excel, photoshop, … Kiến trúc Máy tính - Chap 01 15 1.3 Bên trong vỏ máy )Khảo sát một máy tính để bàn Bàn phím Màn hình Chuột Webcam Thùng máy Kiến trúc Máy tính - Chap 01 16 … )Chuột Kiến trúc Máy tính - Chap 01 17 … )Màn hình & card điều khiển màn hình • Hình ảnh được thể hiện dưới dạng ma trận các phần tử ảnh (picture element) hay pixel • Mỗi pixel đươc biểu diễn bởi 1 ma trận bit còn gọi là bit map • Tùy thuộc vào kích thước và độ phân giải của màn hình, ma trận pixel có độ lớn từ 512 x 340 đến 1560 x 1280 • Chế độ 1 bit / pixel • Chế độ 8 bit / pixel • Chế độ 24 bit / pixel • Bộ nhớ trên card điều khiển màn hình dùng để chứa thông tin bit map gọi là raster refresh buffer hay frame buffer Kiến trúc Máy tính - Chap 01 18 … ) Thùng máy Nguồn Motherboard Bộ xử lý Bộ nhớ Đĩa cứngVõ máy Kiến trúc Máy tính - Chap 01 19 … )Motherboard Mạch tích hợp ( IC hay chip) Khe cắm ( slot ) Connector Kiến trúc Máy tính - Chap 01 20 … )Bộ nhớ (memory) • Chứa chương trình thực thi và các dữ liệu cần thiết trong quá trình thực thi • Có 2 loại bộ nhớ: ROM và RAM • Trên motherboard có 2 loại bộ nhớ RAM * Bộ nhớ chính (công nghệ DRAM) có dung lượng lớn chứa chương trình và dữ liệu thực thi * Bộ nhớ Cache (công nghệ SRAM) có tốc độ nhanh, đóng vai trò bộ đệm cho bộ nhớ chính Kiến trúc Máy tính - Chap 01 21 … )Bộ xử lý (processor) • Là phần tử tích cực nhất của máy tính số • Đôi khi còn gọi là CPU (central processing unit) • Gồm 2 khối chính: khối dữ liệu (datapath) và khối điều khiển (control) • Khối dữ liệu thực hiện các phép tính • Khối điều khiển ra lệnh cho khối dữ liệu, bộ nhớ, các thiết bị xuất/nhập, ... thực hiện cái mà câu lệnh của chương trình yêu cầu Kiến trúc Máy tính - Chap 01 22 … )Đĩa cứng Kiến trúc Máy tính - Chap 01 23 1.4 Mạch tích hợp )Các công nghệ sử dụng trong chế tạo máy tính )Mật độ tích hợp tăng với vận tốc chóng mặt 2.400.000VLSI (Very large scale integrated circuit)1995 900Mạch tích hợp (Integrated circuit)1975 35Đèn bán dẫn (Transistor)1965 1Đèn điện tử (Vacuum tube)1951 Hiệu quả/Giá thànhCông nghệ sử dụngNăm 100.000 10.000 1.000 100 10 K b i t c a p a c i t y 1976 1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 16K 64K 256K 1M 4M 16M 64M Kiến trúc Máy tính - Chap 01 24 … )Qui trình chế tạo mạch tích hợp Slicer 20 to 30 processing steps Dicer Die tester Bond die to package Part tester Ship to customers Silicon ingot Packaged dies Blank wafers Patterned wafersIndividual dies Tested dies Tested packaged dies

Các file đính kèm theo tài liệu này:

  • pdfktmt_chapter_1.PDF