Giáo trình Cấu trúc máy tính (Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Cao đẳng): Phần 1 - Trường Cao đẳng Cơ điện Xây dựng Việt Xô

66 4 0
Giáo trình Cấu trúc máy tính (Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Cao đẳng): Phần 1 - Trường Cao đẳng Cơ điện Xây dựng Việt Xô

Đ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

Giáo trình Cấu trúc máy tính (Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Cao đẳng) được biên soạn nhằm cung cấp cho sinh viên các kiến thức về cấu trúc máy tính của nghề Kỹ thuật sửa chữa, lắp ráp máy tính. Giáo trình được chia thành 2 phần, phần 1 trình bày những nội dung về: lịch sử của máy tính, các thế hệ máy tính và cách phân loại máy tính; các thành phần cơ bản của kiến trúc máy tính, các tập lệnh; các kiểu kiến trúc máy tính: mô tả kiến trúc, các kiểu định vị;... Mời các bạn cùng tham khảo!

BỘ NÔNG NGHIỆP VÀ PHÁT TRIỂN NÔNG THÔN TRƢỜNG CAO ĐẲNG CƠ ĐIỆN XÂY DỰNG VIỆT XÔ KHOA CÔNG NGHỆ THƠNG TIN VÀ NGOẠI NGỮ GIÁO TRÌNH MƠN HỌC: Cấu trúc máy tính NGHỀ: KỸ THUẬT SỬA CHỮA, LẮP RÁP MÁY TÍNH TRÌNH ĐỘ: TRUNG CẤP (Ban hành kèm theo Quyết định số: /QĐ- ngày / /2018 ) Ninh Bình, năm 2018 TUYÊN BỐ BẢN QUYỀN: Tài liệu thuộc loại sách giáo trình nên nguồn thơng tin đƣợc phép dùng ngun trích dùng cho mục đích đào tạo tham khảo Mọi mục đích khác mang tính lệch lạc sử dụng với mục đích kinh doanh thiếu lành mạnh bị nghiêm cấm MÃ TÀI LIỆU: MH 10 LỜI GIỚI THIỆU Chìa khóa để hƣớng tới xã hội thông tin phát triển công nghệ thông tin (CNTT), nhiên để phát triển CNTT lâu dài bền vững, đào tạo kiến thức nhất, mà nội dung đào tạo phải trang bị sinh viên kiến thức tảng, sở tạo cho sinh viên phát huy tính sáng tạo, chủ động việc tiếp thu nghiên cứu, ứng dụng CNTT Do đó, trƣờng đào tạo, sinh viên phải đƣợc trang bị kiến thức tảng CNTT thể thiếu mơn học Cấu trúc máy tính Hiện có nhiều giáo trình cấu trúc máy tính, nhiên hầu hết giáo trình đáp ứng đối tƣợng sinh viên đại học Giáo trình viết chủ yếu cho đối tƣợng sinh viên trƣờng dạy nghề Giáo trình cung cấp cho sinh viên kiến thức cấu trúc máy tính, tổ chức hoạt động vi xử lý, thành phần phần hệ thống máy tính biện pháp kĩ thuật Cấu trúc máy tính mơn học sở để sinh viên thực hành bảo trì hệ thống máy tính Giáo trình bao gồm chƣơng: Chƣơng 1: Tổng quan cấu trúc máy tính Chƣơng 2: Kiến trúc phần mềm xử lý Chƣơng 3: Tổ chức vi xử lý Chƣơng 4: Hệ thống nhớ Chƣơng 5: Thiết bị nhập xuất Chƣơng 6: Các loại bus Chƣơng 7: Ngôn ngữ assembly Trong chƣơng có giới thiệu mục tiêu, nội dung câu hỏi tập Giáo trình xem nguồn tài liệu cung cấp thông tin cho giáo viên giảng dạy, đồng thời tài liệu học tập cho sinh viên Vì thời gian có hạn lần giáo trình đƣợc soạn thảo nên khơng thể tránh khỏi thiếu sót Rất mong nhận ý kiến đóng góp bạn đọc Ninh Bình, ngày tháng năm 2018 Tham gia biên soạn Chủ biên Phạm Anh Đức MỤC LỤC LỜI GIỚI THIỆU MỤC LỤC CHƢƠNG 1:TỔNG QUAN VỀ CẤU TRÚC MÁY TÍNH 1.Các mốc lịch sử phát triển cơng nghệ máy tính 2.Thơng tin mã hóa thơng tin 12 2.1 Khái niệm thông tin lƣợng thông tin 12 2.2 Sự mã hóa thông tin 14 Đặc điểm hệ máy tính điện tử 22 3.1 Thế hệ thứ nhất: (1945-1955) 22 3.2 Thế hệ thứ hai: (1955-1965) 23 3.3 Thế hệ thứ ba: (1965-1980) 23 3.4 Thế hệ thứ tƣ: (1980- ) 23 Kiến trúc tổ chức máy tính 24 4.1 Khái niệm kiến trúc máy tính 24 4.2 Khái niệm tổ chức máy tính 25 Các mơ hình kiến trúc máy tính 25 5.1 Mơ hình kiến trúc Von Neumann 26 5.2 Mô hình kiến trúc Havard 27 CÂU HỎI VÀ BÀI TẬP 28 CHƢƠNG 2: KIẾN TRÚC TẬP LỆNH CỦA MÁY TÍNH 29 Thành phần máy tính 29 1.1 Bộ xử lý trung tâm (CPU) 30 1.2 Bộ nhớ máy tính 31 1.3 Hệ thống vào - 33 1.4 Liên kết hệ thống 33 Kiến trúc tập lệnh CISC RISC 35 2.1 Kiến trúc tập lệnh CISC 35 2.2 Kiến trúc tập lệnh RISC 36 Mã lệnh 38 3.1 Khái niệm lệnh máy, mã lệnh 38 3.2 Tập lệnh 39 CÂU HỎI VÀ BÀI TẬP 46 CHƢƠNG 3: BỘ XỬ LÝ 47 1.Sơ đồ khối xử lý 47 Đƣờng dẫn liệu 48 2.1 Các thành phần đƣờng dẫn liệu 48 2.2 Nhiệm vụ đƣờng dẫn liệu 49 Bộ điều khiển 50 3.1 Chức điều khiển 50 3.2 Các phƣơng pháp thiết kế điều khiển 51 Tiến trình thực lệnh máy 53 4.1 Đọc lệnh 53 4.2 Giải mã lệnh 54 4.3 Nhận liệu 54 4.4 Thực lệnh 55 4.5 Lƣu trữ kết 55 Kỹ thuật ống dẫn lệnh 56 Kỹ thuật siêu ống dẫn lệnh 58 Các chƣớng ngại ống dẫn lệnh 59 7.1 Chƣớng ngại cấu trúc 59 7.2 Chƣớng ngại liệu 59 7.3 Chƣớng ngại điều khiển 60 Các loại ngắt 62 8.1 Ngắt 62 8.2 Các loại ngắt 62 8.3 Hoạt động ngắt 63 CÂU HỎI VÀ BÀI TẬP 64 CHƢƠNG 4: BỘ NHỚ 65 1.Phân loại nhớ 65 1.1 Phân loại nhớ theo phƣơng pháp truy nhập 65 1.2.Phân loại theo đọc ghi nhớ 65 Các loại nhớ bán dẫn 66 2.1.ROM (Read Only Memory) 66 2.2.RAM (Random Access Memory) 67 Hệ thống nhớ phân cấp 70 Kết nối nhớ với xử lý 72 5.Các tổ chức cache 73 5.1 Cache (bộ nhớ đệm nhanh) 73 5.2 Tổ chức cache 74 5.3 Các phƣơng pháp ánh xạ địa 75 CÂU HỎI VÀ BÀI TẬP 79 CHƢƠNG 5: THIẾT BỊ NHỚ NGOÀI 80 1.Các thiết bị nhớ vật liệu từ 80 1.1 Đĩa từ (đĩa cứng, đĩa mềm) 80 1.2 Băng từ 83 2.Thiết bị nhớ quang học 84 2.1 CD-ROM, CD-R/W 85 2.2 DVD-ROM, DVD-R/W 85 2.3 Bluray 86 3.Các loại thẻ nhớ 86 An toàn liệu lƣu trữ 87 4.1 RAID (Redundant Arrays of Inexpensive Disks) 87 4.2 Các loại RAID 88 CÂU HỎI VÀ BÀI TẬP 92 CHƢƠNG 6: CÁC LOẠI BUS 93 Định nghĩa bus, bus hệ thống 93 1.1 Định nghĩa bus 93 1.2 Bus hệ thống(System bus) 94 Bus đồng không đồng 94 2.1.Bus đồng 94 2.2 Bus không đồng 94 Hệ thống bus phân cấp 94 3.1 Bus nối xử lý với nhớ 95 3.2 Bus vào – 95 Các loại bus sử dụng hệ thống vi xử lý 97 CÂU HỎI VÀ BÀI TẬP 98 CHƢƠNG 7: NGÔN NGỮ ASSEMBLY 99 Tổng quan 99 2.Cấu trúc chƣơng trình 100 2.1 Cấu trúc chƣơng trình hợp ngữ 100 2.2 Cú pháp lệnh hợp ngữ 102 2.3 Các kiểu liệu hợp ngữ 104 Các lệnh điều khiển 107 3.1 Các lệnh 107 3.2 Các lệnh chuyển điều khiển 116 Ngăn xếp thủ tục 120 4.1 Ngăn xếp 120 4.2 Các thủ tục 122 CÂU HỎI VÀ BÀI TẬP 124 TÀI LIỆU THAM KHẢO 126 MÔN HỌC ĐÀO TẠO CẤU TRÚC MÁY TÍNH Mã mơn học: MH 10 * Vị trí, tính chất, ý nghĩa vai trị mơn học: - Vị trí: Mơn học Cấu trúc máy tính đƣợc bố trí học sau mơn học chung, mơn tin học đại cƣơng, tin học văn phịng, kỹ thuật điện-điện tử học với mô đun lắp ráp cài đặt máy tính - Tính chất: Là môn học kỹ thuật sở thuộc môn học đào tạo nghề - Ý nghĩa vai trò: môn sở, cung cấp cho sinh viên kiến thức máy tính nghề Quản trị mạng * Mục tiêu mơn học: - Trình bày đƣợc lịch sử máy tính, hệ máy tính cách phân loại máy tính - Mơ tả thành phần kiến trúc máy tính, tập lệnh Các kiểu kiến trúc máy tính: mơ tả kiến trúc, kiểu định vị - Trình bày đƣợc cấu trúc xử lý trung tâm: tổ chức, chức nguyên lý hoạt động phận bên xử lý - Mô tả diễn tiến thi hành lệnh mã máy số kỹ thuật xử lý thông tin: ống dẫn, siêu ống dẫn, siêu vơ hƣớng - Trình bày đƣợc chức nguyên lý hoạt động loại nhớ - Trình bày phƣơng pháp lƣu trữ liệu nhớ ngồi - Cài đặt đƣợc chƣơng trình lệnh điều khiển Assembly để thực tốn theo u cầu - Bố trí làm việc khoa học đảm bảo an toàn cho ngƣời phƣơng tiện học tập  Nội dung mơn học (danh sách chƣơng mục ): Số TT Tên chƣơng Tổng quan kiến trúc máy tính Kiến trúc tập lệnh máy tính Bộ xử lý Bộ nhớ Thiết bị nhớ ngồi Các loại bus Ngơn ngữ Assembly Cộng Thời gian Tổng Lý Thực số thuyết hành Kiểm tra* 10 5 13 4 13 15 10 10 5 20 90 10 45 41 CHƢƠNG 1:TỔNG QUAN VỀ CẤU TRÚC MÁY TÍNH Mã chƣơng: MH 10-01 Mục tiêu: - Trình bày lịch sử phát triển máy tính, thành tựu máy tính; Trình bày khái niệm thơng tin; Mơ tả đƣợc kiến trúc máy tính; Biến đổi hệ thống số, bảng mã thông dụng đƣợc dùng để biểu diễn ký tự 1.Các mốc lịch sử phát triển cơng nghệ máy tính Mục tiêu: Trình bày lịch sử phát triển máy tính, thành tựu máy tính 30 năm trƣớc, 5150 đời phá vỡ quan điểm trƣớc máy tính Lần đầu tiên, máy tính đƣợc nhìn nhận nhƣ thiết bị có kích thƣớc vừa phải, hợp túi tiền đƣợc cơng chúng ý nhiều Hình 1.1: 1982: Franklin Ace 100 Đây máy tính gây vụ kiện quyền phần mềm lịch sử Acer bị Apple kiện vi phạm nhãn hiệu hàng hóa chép phần cứng phần mềm máy tính Apple II cho Franklin Ace 100 Trong vụ kiện này, phần thắng thuộc Apple 50 Hình 3.2: Tổ chức xử lý điển hình (Các đường khơng liên tục đường điều khiển) Bộ điều khiển Mục tiêu: Hiểu nguyên tắc vận hành điều khiển mạch điện tử Hiểu nguyên tắc vận hành điều khiển vi chương trình 3.1 Chức điều khiển  Điều khiển nhận lệnh từ nhớ đƣa vào ghi lệnh  Tăng nội dung PC để trỏ sang lệnh 51  Giải mã lệnh đƣợc nhận để xác định thao tác mà lệnh yêu cầu  Phát tín hiệu điều khiển thực lệnh  Nhận tín hiệu yêu cầu từ bus hệ thống đáp ứng với yêu cầu Bộ điều khiển tạo tín hiệu điều khiển di chuyển số liệu (tín hiệu di chuyển số liệu từ ghi đến bus tín hiệu viết vào ghi), điều khiển tác vụ mà phận chức phải làm (điều khiển ALU, điều khiển đọc viết vào nhớ ) Bộ điều khiển tạo tín hiệu giúp lệnh đƣợc thực cách 3.2 Các phƣơng pháp thiết kế điều khiển a) Bộ điều khiển vi chƣơng trình (Microprogrammed Control Unit) Hình 3.3: Nguyên tắc vận hành điều khiển dùng vi chương trình – Bộ nhớ vi chƣơng trình (ROM) lƣu trữ vi chƣơng trình (microprogram) – Một vi chƣơng trình bao gồm vi lệnh (microinstruction) 52 – Mỗi vi lệnh mã hoá cho vi thao tác (microoperation) – Để hoàn thành lệnh cần thực một vài vi chƣơng trình – Tốc độ chậm b) Bộ điều khiển dùng mạch điện tử Để hiểu đƣợc vận hành điều khiển mạch điện tử, xét đến mô tả Automate trạng thái hữu hạn: có nhiều hệ thống hay nhiều thành phần mà thời điểm xem xét có trạng thái (state) Mục đích trạng thái ghi nhớ có liên quan q trình hoạt động hệ thống Vì có số trạng thái định nên nói chung khơng thể ghi nhớ hết tồn lịch sử hệ thống, phải đƣợc thiết kế cẩn thận để ghi nhớ quan trọng Ƣu điểm hệ thống (chỉ có số hữu hạn trạng thái) cài đặt hệ thống với lƣợng tài nguyên cố định Chẳng hạn, cài đặt Automate trạng thái hữu hạn phần cứng máy tính dạng mạch điện hay dạng chƣơng trình đơn giản, đó, có khả định biết lƣợng giới hạn liệu cách dùng vị trí đoạn mã lệnh để đƣa định Hình 3.4: Nguyên tắc vận hành điều khiển dùng mạch điện tử Hình 3.4 cho thấy nguyên tắc điều khiển mạch điện Các đƣờng điều khiển phần đƣờng số liệu ngã nhiều 53 Automate trạng thái hữu hạn Các ngã vào Automate gồm có ghi lệnh, ghi chứa lệnh phải thi hành thông tin từ đƣờng số liệu Ứng với cấu hình đƣờng vào trạng thái tại, Automate cho trạng thái tƣơng lai đƣờng tƣơng ứng với trạng thái Automate đƣợc cài đặt dƣới dạng hay nhiều mạch mảng logic lập trình đƣợc (PLA: Programmable Logic Array) mạch logic ngẫu nhiên Kỹ thuật điều khiển đơn giản hữu hiệu lệnh có chiều dài cố định, có dạng thức đơn giản Nó đƣợc dùng nhiều xử lý RISC Tiến trình thực lệnh máy - Mục tiêu: Mơ tả tiến trình thi hành lệnh mã máy Việc thi hành lệnh mã máy chia thành giai đoạn:  Đọc lệnh (IF: Instruction Fetch)  Giải mã lệnh (ID: Instruction Decode)  Thi hành lệnh (EX: Execute)  Thâm nhập nhớ nhảy (MEM: Memory access)  Lƣu trữ kết (RS: Result Storing) Mỗi giai đoạn đƣợc thi hành nhiều chu kỳ xung nhịp 4.1 Đọc lệnh MAR ← PC IR ← M[MAR]  Thanh ghi PC chứa địa lệnh  Địa chuyển vào ghi MAR  Địa đƣa lên bus địa  Đơn vị điều khiển yêu cầu đọc nhớ  Kết đƣa lên data bus, chép vào ghi MBR, đƣa vào ghi IR 54 Hình 3.5:Sơ đồ mơ tả q trình đọc lệnh 4.2 Giải mã lệnh – Lệnh từ ghi lệnh IR đƣợc đƣa đến đơn vị điều khiển – Đơn vị điều khiển tiến hành giải mã lệnh để xác định thao tác phải thực – Giải mã lệnh xảy bên CPU 4.3 Nhận liệu Giai đoạn thƣờng đƣợc dùng cho lệnh nạp liệu, lƣu liệu lệnh nhảy Nhận liệu trực tiếp: – – – – CPU đƣa địa toán hạng bus địa CPU phát tín hiệu điều khiển đọc Tốn hạng đƣợc đọc vào CPU Tƣơng tự nhƣ nhận lệnh Nhận liệu gián tiếp: 55 Hình 3.6: Sơ đồ tả nhận tốn hạng gián tiếp Quá trình nhận liệu gián tiếp:  CPU đƣa địa bus địa  CPU phát tín hiệu điều khiển đọc  Nội dung ngăn nhớ đƣợc đọc vào CPU, địa toán hạng  Địa đƣợc CPU phát bus địa để tìm tốn hạng  CPU phát tín hiệu điều khiển đọc  Tốn hạng đƣợc đọc vào CPU 4.4 Thực lệnh – – – – – – – – Có nhiều dạng tuỳ thuộc vào lệnh Có thể là: Đọc/Ghi nhớ Vào/Ra Chuyển ghi Thao tác số học/logic Chuyển điều khiển (rẽ nhánh) 4.5 Lƣu trữ kết Rd ← Ngã ALU Rd ← MBR  CPU đƣa địa bus địa  CPU đƣa liệu cần ghi bus liệu  CPU phát tín hiệu điều khiển ghi 56  Dữ liệu bus liệu đƣợc copy đến vị trí xác định  Lƣu trữ kết ghi đích Hình 3.7: Sơ đồ mơ tả q trình lưu kết Kỹ thuật ống dẫn lệnh Mục tiêu: Trình bày kỹ thuật xử lý thơng tin: ống dẫn Đây kỹ thuật làm cho giai đoạn khác nhiều lệnh đƣợc thi hành lúc Ví dụ: Chúng ta có lệnh đặn, lệnh đƣợc thực khoảng thời gian Giả sử, lệnh đƣợc thực giai đoạn giai đoạn đƣợc thực chu kỳ xung nhịp Các giai đoạn thực lệnh là: lấy lệnh (IF: Instruction Fetch), giải mã (ID: Instruction Decode), thi hành (EX: Execute), thâm nhập nhớ (MEM: Memory Access), lƣu trữ kết (RS: Result Storing) Hình 3.8 cho thấy chu kỳ xung nhịp, xử lý thực lệnh (bình thƣờng lệnh đƣợc thực chu kỳ) 57 Chuỗi lệnh Chu kỳ xung nhịp Lệnh thứ i IF ID EX MEM RS Lệnh thứ i+1 IF ID EX MEM RS Lệnh thứ i+2 IF ID EX MEM RS Lệnh thứ i+3 IF ID EX MEM RS Lệnh thứ i+4 IF ID EX MEM RS Hình 3.8: Các giai đoạn khác nhiều lệnh thi hành lúc So sánh với kiểu xử lý thông thƣờng, lệnh đƣợc thực 25 chu kỳ xung nhịp, xử lý lệnh theo kỹ thuật ống dẫn thực lệnh chu kỳ xung nhịp Nhƣ kỹ thuật ống dẫn làm tăng tốc độ thực lệnh Tuy nhiên kỹ thuật ống dẫn có số ràng buộc: - Cần phải có mạch điện để thi hành giai đoạn lệnh tất giai đoạn lệnh đƣợc thi hành lúc Trong xử lý không dùng kỹ thuật ống dẫn, ta dùng làm tốn ALU để cập nhật ghi PC, cập nhật địa toán hạng nhớ, địa nhớ mà chƣơng trình cần nhảy tới, làm phép tính tốn hạng phép tính xảy nhiều giai đoạn khác - Phải có nhiều ghi khác dùng cho tác vụ đọc viết Trên hình 3.8, chu kỳ xung nhịp, ta thấy lúc có tác vụ đọc (ID, MEM) tác vụ viết (RS) - Trong máy có kỹ thuật ống dẫn, có kết tác vụ trƣớc đó, tốn hạng nguồn tác vụ khác Nhƣ có thêm khó khăn mà ta đề cập mục tới - Cần phải giải mã lệnh cách đơn giản để giải mã đọc toán hạng chu kỳ xung nhịp - Cần phải có làm tính ALU hữu hiệu để thi hành lệnh số học dài nhất, có số giữ, khoảng thời gian chu kỳ xung nhịp - Cần phải có nhiều ghi lệnh để lƣu giữ lệnh mà phải xem xét cho giai đoạn thi hành lệnh - Cuối phải có nhiều ghi đếm chƣơng trình PC để tái tục 58 lệnh trƣờng hợp có ngắt quãng Kỹ thuật siêu ống dẫn lệnh Mục tiêu: trình bày kỹ thuật xử lý thơng tin siêu ống dẫn Máy tính có kỹ thuật siêu ống dẫn bậc n cách chia giai đoạn kỹ thuật ống dẫn đơn giản, giai đoạn đƣợc thực khoản thời gian Tc, thành n giai đoạn thực khoản thời gian Tc/n Độ hữu hiệu kỹ thuật tƣơng đƣơng với việc thi hành n lệnh chu kỳ Tc Hình 3.9 trình bày thí dụ siêu ống dẫn bậc 2, có so sánh với siêu ống dẫn đơn giản Ta thấy chu kỳ Tc, máy dùng kỹ thuật siêu ống dẫn làm lệnh thay làm lệnh máy dùng kỹ thuật ống dẫn bình thƣờng Trong máy tính siêu ống dẫn, tốc độ thực lệnh tƣơng đƣơng với việc thực lệnh khoảng thời gian Tc/n Các bất lợi siêu ống dẫn thời gian thực giai đoạn ngắn Tc/n việc trì hỗn thi hành lệnh nhảy lớn Trong ví dụ Hình 3.9, lệnh thứ i lệnh nhảy tƣơng đối lệnh đƣợc giải mã giai đoạn ID, địa nhảy đến đƣợc tính vào giai đoạn EX, lệnh phải đƣợc nhảy tới lệnh thứ i+4, có trì trệ lệnh thay lệnh kỹ thuật ống dẫn bình thƣờng Hình 3.9: Siêu ống dẫn bậc so với siêu ống dẫn đơn giản Trong khoảng thời gian Tc, máy có siêu ống dẫn làm lệnh thay lệnh máy có kỹ thuật ống dẫn đơn giản 59 Các chướng ngại ống dẫn lệnh Mục tiêu: biết khó khăn sử dụng kĩ thuật ống dẫn cách khắc phục Khi thi hành lệnh máy tính dùng kỹ thuật ống dẫn, có nhiều trƣờng hợp làm cho việc thực kỹ thuật ống dẫn không thực đƣợc nhƣ là: thiếu mạch chức năng, lệnh dùng kết lệnh trƣớc, lệnh nhảy Ta phân biệt loại khó khăn (chƣớng ngại): khó khăn cấu trúc, khó khăn số liệu khó khăn điều khiển 7.1 Chƣớng ngại cấu trúc Xung đột cấu trúc xảy có lệnh cố gắng sử dụng nguồn thời điểm, ghi kết vào ghi, truy cập vào ô nhớ, yêu cầu tính tốn số học, việc nạp lệnh đọc liệu từ nhớ diễn lúc Để khắc phục xung đột kiểu ta thƣờng sử dụng cách chèn trễ vào chu kì lệnh tổ chức lại lệnh 7.2 Chƣớng ngại liệu Lấy ví dụ trƣờng hợp lệnh liên tiếp sau: Lệnh 1: ADD R1, R2, R3 Lệnh 2: SUB R4, R1, R5 Lệnh 3: AND R6, R1, R7 Lệnh 4: OR R8, R1, R9 Hình 3.10 cho thấy R1, kết lệnh đƣợc dùng cho lệnh sau giai đoạn MEM lệnh 1, nhƣng R1 đƣợc dùng cho lệnh vào giai đoạn EX lệnh Chúng ta thấy R1 đƣợc dùng cho lệnh 60 1- ADD R1, R2, R3 IF 2- SUB R4, R1, R5 3- AND R6, R1, R4 4- OR R8, R1, R9 ID IF EX MEM RS ID EX MEM RS IF ID EX MEM RS IF ID EX MEM RS Hình 3.10: Chuỗi lệnh minh hoạ khó khăn số liệu Để khắc phục khó khăn này, phận phần cứng đƣợc dùng để đƣa kết từ ngã ALU trực tiếp vô ghi ngã vào nhƣ Hình 3.11 Hình 3.11: ALU với phận phần cứng đưa kết tính tốn trở lại ngã vào Khi phận phần cứng nêu phát có dùng kết ALU làm tốn hạng cho liệt kê, tác động vào mạch đa hợp để đƣa ngã ALU vào ngã vào ALU vào ngã vào đơn vị chức khác cần Ta hạn chế xung đột liệu cách sử dụng đƣờng liệu nội đặc biệt Ngồi kết hợp với việc tổ chức lại lệnh chƣơng trình 7.3 Chƣớng ngại điều khiển Các lệnh làm thay đổi tính thi hành lệnh cách (nghĩa PC 61 tăng đặn sau lệnh), gây khó khăn điều khiển Các lệnh lệnh nhảy đến địa tuyệt đối chứa ghi, hay lệnh nhảy đến địa xác định cách tƣơng đối so với địa đếm chƣơng trình PC Các lệnh nhảy có khơng điều kiện Trong trƣờng hợp đơn giản nhất, tác vụ nhảy khơng thể biết trƣớc giai đoạn giải mã (xem hình 3.4) Nhƣ vậy, lệnh nhảy bắt đầu chu kỳ C lệnh mà chƣơng trình nhảy tới đƣợc bắt đầu chu kỳ C+2 Ngoài ra, phải biết địa cần nhảy đến mà ta có cuối giai đoạn giải mã ID Trong lệnh nhảy tƣơng đối, ta phải cộng độ dời chứa ghi lệnh IR vào ghi PC Việc tính địa đƣợc thực vào giai đoạn ID với điều kiện phải có mạch cơng việc riêng biệt Vậy trƣờng hợp lệnh nhảy không điều kiện, lệnh mà chƣơng trình nhảy đến bắt đầu thực chu kỳ C+2 lệnh nhảy bắt đầu chu kỳ C Cho lệnh nhảy có điều kiện phải tính tốn điều kiện Thơng thƣờng kiến trúc RISC đặt kết việc so sánh vào ghi trạng thái, vào ghi tổng quát Trong trƣờng hợp, đọc điều kiện tƣơng đƣơng với đọc ghi Đọc ghi đƣợc thực phân nửa chu kỳ cuối giai đoạn ID Một trƣờng hợp khó xảy lệnh nhảy có điều kiện Đó điều kiện đƣợc có so sánh ghi thực lệnh nhảy kết so sánh Việc tính tốn đại lƣợng logic thực đƣợc phân nửa chu kỳ nhƣ phải kéo dài thời gian thực lệnh nhảy có điều kiện Ngƣời ta thƣờng tránh trƣờng hợp để không làm giảm mức hữu hiệu máy tính Vậy trƣờng hợp đơn giản, ngƣời ta đƣợc địa cần nhảy đến điều kiện nhảy cuối giai đoạn ID Vậy có chậm chu kỳ mà ngƣời ta giải nhiều cách Cách thứ đóng băng kỹ thuật ống dẫn chu kỳ, nghĩa ngƣng thi hành lệnh thứ i+1 làm lệnh thứ i lệnh nhảy Ta trắng chu kỳ cho lệnh nhảy 62 Cách thứ hai thi hành lệnh sau lệnh nhảy nhƣng lƣu ý hiệu lệnh nhảy bị chậm lệnh Vậy lệnh theo sau lệnh nhảy đƣợc thực trƣớc lệnh mà chƣơng trình phải nhảy tới đƣợc thực Chƣơng trình dịch hay ngƣời lập trình có nhiệm vụ xen vào lệnh hữu ích sau lệnh nhảy Trong trƣờng hợp nhảy có điều kiện, việc nhảy đƣợc thực hay khơng thực Lệnh hữu ích đặt sau lệnh nhảy khơng làm sai lệch chƣơng trình dù điều kiện nhảy hay sai Bộ xử lý RISC SPARC có lệnh nhảy với huỷ bỏ Các lệnh cho phép thi hành lệnh sau lệnh nhảy điều kiện nhảy huỷ bỏ thực lệnh điều kiện nhảy sai Các loại ngắt Mục tiêu: Mô tả nhiệm vụ ngắt, phân biệt loại ngắt 8.1 Ngắt Khái niệm chung ngắt: Ngắt chế cho phép CPU tạm dừng chƣơng trình thực để chuyển sang thực chƣơng trình khác, gọi chƣơng trình phục vụ ngắt Phần lớn nhà sản xuất máy tính (ví dụ nhƣ IBM, INTEL) dùng từ ngắt quãng để ám kiện này, nhiên số nhà sản xuất khác dùng từ “ngoại lệ”, “lỗi”, “bẩy” để định tƣợng Bộ điều khiển CPU phận khó thực ngắt quãng phần khó thực điều khiển Để nhận biết đƣợc ngắt quãng lúc thi hành lệnh, ta phải biết điều chỉnh chu kỳ xung nhịp điều ảnh hƣởng đến hiệu máy tính 8.2 Các loại ngắt Ngƣời ta nghỉ “ngắt quãng” để nhận biết sai sót tính tốn số học, để ứng dụng cho tƣợng thời gian thực Bây giờ, ngắt quãng đƣợc dùng cho công việc sau đây:  Ngắt lỗi thực chƣơng trình, ví dụ: tràn số, chia cho 63  Ngắt lỗi phần cứng, ví dụ lỗi nhớ RAM  Ngắt mô-đun vào-ra phát tín hiệu ngắt đến CPU yêu cầu trao đổi liệu  Ngƣời lập trình muốn dùng dịch vụ hệ điều hành  Báo tràn số liệu tính tốn số học  Trang nhớ thực khơng có nhớ  Báo vi phạm vùng cấm nhớ  Báo dùng lệnh khơng có tập lệnh  Báo điện bị cắt Dù ngắt quãng không xảy thƣờng xuyên nhƣng xử lý phải đƣợc thiết kế cho lƣu giữ trạng thái trƣớc nhảy phục vụ ngắt quãng Sau thực xong chƣơng trình phục vụ ngắt, xử lý phải khôi phục trạng thái để tiếp tục cơng việc 8.3 Hoạt động ngắt Để đơn giản việc thiết kế, vài xử lý chấp nhận ngắt sau thực xong lệnh chạy Khi ngắt xảy ra, xử lý thi hành bƣớc sau đây: Thực xong lệnh làm Lƣu trữ trạng thái Nhảy đến chƣơng trình phục vụ ngắt Khi chƣơng trình phục vụ chấm dứt, xử lý khôi phục lại trạng thái cũ tiếp tục thực chƣơng trình mà thực bị ngắt Sơ đồ mơ tả hoạt động ngắt 64 Hình 3.12: Sơ đồ mơ tả chu trình ngắt  Nội dung đếm chƣơng trình PC (địa trở sau ngắt) đƣợc đƣa bus liệu  CPU đƣa địa (thƣờng đƣợc lấy từ trỏ ngăn xếp SP) bus địa  CPU phát tín hiệu điều khiển ghi nhớ  Địa trở bus liệu đƣợc ghi vị trí xác định (ở ngăn xếp)  Địa lệnh chƣơng trình điều khiển ngắt đƣợc nạp vào PC CÂU HỎI VÀ BÀI TẬP Các thành phần nhiệm vụ đƣờng liệu? Thế ngắt quãng? Các giai đoạn thực ngắt qng CPU Vẽ hình để mơ tả kỹ thuật ống dẫn Các khó khăn kỹ thuật ống dẫn cách giải khó khăn ... thập lục phân 0000 00 00 01 01 0 010 02 0 011 03 010 0 04 010 1 05 011 0 06 011 1 07 10 00 10 10 01 11 10 10 10 12 A 11 10 11 13 B 12 11 00 14 C 13 11 01 15 D 14 11 10 16 E 15 11 11 17 F Nhƣ vậy, dựa vào cách... 0000  010 1  00 01  011 0  0 010  011 1  0 011  10 00  010 0  10 01 Có tổ hợp khơng sử dụng (từ 10 đến 15 ) : 10 10, 10 11, 11 00, 11 01, 11 10, 11 11 Ví dụ : 35  0 011 010 1 BCD 20 61  010 1 00 01 BCD... lại) 19 Ví dụ: +2 510 = 00 011 0 012 -2 510 = 11 10 011 02 - Một Byte cho phép biểu diễn tất số có dấu từ -1 27 (10 00 00002) đến 12 7 ( 011 1 11 112 ) - Có hai cách biểu diễn cho 0000 0000 (+0) 11 11 111 1 (-0 )

Ngày đăng: 27/07/2022, 11:49

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan