Giáo trình Cấu trúc máy tính (Nghề: Tin học văn phòng - Trung cấp): Phần 1 - Trường Cao đẳng Cơ điện Xây dựng Việt Xô

66 10 0
Giáo trình Cấu trúc máy tính (Nghề: Tin học văn phòng - Trung cấp): 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ề: Tin học văn phòng - Trung cấp) cung cấp cho sinh viên những kiến thức cơ bản về cấu trúc máy tính, về tổ chức và hoạt động bộ vi xử lý, các thành phần phần trong hệ thống máy tính và các biện pháp kĩ thuật cơ bản. Giáo trình được chia thành 2 phần, phần 1 trình bày những nội dung về: tổng quan cấu trúc máy tính; kiến trúc tập lệnh của máy tính; bộ xử lý;... 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Ề: TIN HỌC VĂP PHỊNG TRÌNH ĐỘ: TRUNG CẤP 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 phép dùng nguyên 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 14 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 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 tập lệnh máy tính Chương 3: Bộ xử lý Chương 4: Bộ nhớ Chương 5: Thiết bị nhớ ngồi Chương 6: Bảng mạch Chương 7: Các loại bus Chương 8: 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 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 34 2.1 Kiến trúc tập lệnh CISC 35 2.2 Kiến trúc tập lệnh RISC 35 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: BẢNG MẠCH CHÍNH 93 CHƯƠNG 7: CÁC LOẠI BUS 98 Định nghĩa bus, bus hệ thống 98 1.1 Định nghĩa bus 98 1.2 Bus hệ thống(System bus) 99 Bus đồng không đồng 99 2.1.Bus đồng 99 2.2 Bus không đồng 99 Hệ thống bus phân cấp 99 3.1 Bus nối xử lý với nhớ 100 3.2 Bus vào – 100 Các loại bus sử dụng hệ thống vi xử lý 102 CÂU HỎI VÀ BÀI TẬP 103 CHƯƠNG 8: NGÔN NGỮ ASSEMBLY 104 Tổng quan 104 2.Cấu trúc chương trình 105 2.1 Cấu trúc chương trình hợp ngữ 105 2.2 Cú pháp lệnh hợp ngữ 107 2.3 Các kiểu liệu hợp ngữ 109 Các lệnh điều khiển 112 3.1 Các lệnh 112 3.2 Các lệnh chuyển điều khiển 121 Ngăn xếp thủ tục 125 4.1 Ngăn xếp 125 4.2 Các thủ tục 127 CÂU HỎI VÀ BÀI TẬP 129 TÀI LIỆU THAM KHẢO 131 MƠN HỌC ĐÀO TẠO CẤU TRÚC MÁY TÍNH Mã mơn học: MH 14 * 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 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 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ấ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 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ớ - Cài đặt chương trình lệnh điều khiển Assembly để thực toán theo yê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ớ Thời gian Tổng Lý Thực số thuyết hành Kiểm tra* 10 11 15 8 Bảng mạch Các loại bus 2 1 Ngôn ngữ Assembly Cộng 30 90 13 44 15 40 CHƯƠNG 1:TỔNG QUAN VỀ CẤU TRÚC MÁY TÍN Mã chương:MH14-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ả kiến trúc máy tính; Biến đổi hệ thống số, bảng mã thông dụng 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 nhìn nhận thiết bị có kích thước vừa phải, hợp túi tiền 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 1982: Commodore 64 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  Giải mã lệnh 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 51  Nhận tín hiệu yêu cầu từ bus hệ thống đáp ứng với 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 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) – 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 52 b) Bộ điều khiển dùng mạch điện tử Để hiểu 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 toàn lịch sử hệ thống, phải 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 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ài đặt 53 dạng hay nhiều mạch mảng logic lập trình (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ó 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 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 đư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 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 vào CPU Tương tự 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 Q 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 vào CPU, địa toán hạng  Địa CPU phát bus địa để tìm tốn hạng  CPU phát tín hiệu điều khiển đọc  Toán hạng đọ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 copy đến vị trí xác định  Lưu trữ kết ghi đích Hình 3.7: Sơ đồ mơ tả 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 thi hành lúc Ví dụ: Chúng ta có lệnh đặn, lệnh thực khoảng thời gian Giả sử, lệnh thực giai đoạn giai đoạn 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 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 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 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 tố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 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 giải mã giai đoạn ID, địa nhảy đến tính vào giai đoạn EX, lệnh phải 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 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 dùng cho lệnh sau giai đoạn MEM lệnh 1, R1 dùng cho lệnh vào giai đoạn EX lệnh Chúng ta thấy R1 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 dùng để đưa kết từ ngã ALU trực tiếp vô ghi ngã vào 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 Ngoà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 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 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 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 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ó 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 phân nửa chu kỳ 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 đị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 lưu ý hiệu lệnh nhảy bị chậm lệnh Vậy lệnh theo sau lệnh nhảy thực trước lệnh mà chương trình phải nhảy tới 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 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ụ 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 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 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 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 xử lý phải 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) đưa bus liệu  CPU đưa địa (thường 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 ghi vị trí xác định (ở ngăn xếp)  Địa lệnh chương trình điều khiển ngắt 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 quãng 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, 12:12

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

Tài liệu liên quan