Báo cáo Bài tập lớn kiến trúc máy tính

Lệnh của vi xử lý là một từ nhị phân. Khi lệnh được đọc từ bộ nhớ vào vi xử lý, chỉ dẫn vi xử lý thực hiện một nhiệm vụ nào đó . Mỗi một lệnh chỉ dẫn vi xử lý thực hiện nhiệm vụ riêng không giống lệnh khác.Hầu hết các lệnh của vi xử lý là những lệnh vận chuyển hoặc xử lý dữ liệu . Dữ liệu có thể có trong bộ nhớ bên ngoài vi xử lý.Một số lệnh khác có chức năng điều khiển vi xử lý, rẽ nhánh xử lý

 

Tất cả các lệnh được thực hiện trong 3 pha : đọc lệnh (Fetch),giải mã lệnh(Decode), và thực hiện lệnh (Execute) (có thể truy cập bộ nhớ để đọc các toán hạng và cất giữ các kết quả thông qua bus hệ thống).Các pha đọc lệnh và thực hiện lệnh có sự trao đổi dữ liệu giữa vi xử lý và bộ nhớ thông qua bus hệ thống, do đó, những quãng thời gian này bus hệ thống bận (Busy).Pha giải mã lệnh chỉ xảy ra bên trong vi xử lý, do đó bus rỗi (idle).Các loại vi xử lý tiên tiến hiện nay có thể xử lý đồng thời một số lệnh ở các pha khác nhau của quá trình thực hiện lệnh nhờ có kiến trúc đường ống (pipeline).Hình dưới mô tả quá trình thực hiện đồng thời một số lệnh của vi xử lý intel 80486 với kiến trúc đường ống lệnh .

 

doc34 trang | Chia sẻ: luyenbuizn | Lượt xem: 998 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Báo cáo Bài tập lớn kiến trúc máy tính, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BÁO CÁO BÀI TẬP LỚN KIẾN TRÚC MÁY TÍNH A. GIỚI THIỆU. 1. Thành viên tham gia. - Nguyễn Khánh Dũng - Bùi Văn Dụng - Nguyễn Văn Nam - Bùi Văn Quỳnh - Lê Quốc Bảo 2. Nội dung. Báo cáo được viết nhằm giới thiệu về kiến trúc máy tính với các tập lệnh sử lý. Các thông số ý nghĩa của các thông số kỹ thuật. Cấu hình trong báo cáo: - CPU Pentium(R) Dual-Core CPU E5 - Chipset : South Bridge: Intel 82801GB ICH7 North Bridge: Intel Bearlake G31 -Main : Gigabyte G31M-S2L B. NỘI DUNG BÁO CÁO. I. KIẾN TRÚC TẬP LỆNH Lệnh của vi xử lý là một từ nhị phân. Khi lệnh được đọc từ bộ nhớ vào vi xử lý, chỉ dẫn vi xử lý thực hiện một nhiệm vụ nào đó . Mỗi một lệnh chỉ dẫn vi xử lý thực hiện nhiệm vụ riêng không giống lệnh khác.Hầu hết các lệnh của vi xử lý là những lệnh vận chuyển hoặc xử lý dữ liệu . Dữ liệu có thể có trong bộ nhớ bên ngoài vi xử lý.Một số lệnh khác có chức năng điều khiển vi xử lý, rẽ nhánh xử lý… Tất cả các lệnh được thực hiện trong 3 pha : đọc lệnh (Fetch),giải mã lệnh(Decode), và thực hiện lệnh (Execute) (có thể truy cập bộ nhớ để đọc các toán hạng và cất giữ các kết quả thông qua bus hệ thống).Các pha đọc lệnh và thực hiện lệnh có sự trao đổi dữ liệu giữa vi xử lý và bộ nhớ thông qua bus hệ thống, do đó, những quãng thời gian này bus hệ thống bận (Busy).Pha giải mã lệnh chỉ xảy ra bên trong vi xử lý, do đó bus rỗi (idle).Các loại vi xử lý tiên tiến hiện nay có thể xử lý đồng thời một số lệnh ở các pha khác nhau của quá trình thực hiện lệnh nhờ có kiến trúc đường ống (pipeline).Hình dưới mô tả quá trình thực hiện đồng thời một số lệnh của vi xử lý intel 80486 với kiến trúc đường ống lệnh . Đọclệnh1 Đọc lệnh2 Đọc lệnh3 Đọc lệnh4 Lưu trữ 1 Đọc lệnh5 Đọc lệnh6 Đọc bộ nhớ2 Đọc lệnh7 Giải mã lệnh 1 Giải mã lệnh 2 Giải mã lệnh 3 Giải mã lệnh 4 Rỗi Giải mã lệnh 5 Giải mã lệnh 6 Rỗi Thực hiện lệnh1 Thực hiện lệnh2 Thực hiện lệnh3 Thực hiện lệnh4 Rỗi Thực hiện lệnh5 Thực hiện lệnh6 Địa chỉ 1 Địa chỉ 2 Quá trình thực hiện đồng thời một số lệnh của các vi xử lý tiên tiến có kiến trúc đường ống lệnh (ví dụ intel 80486) Một lệnh mô tả bằng mã nhị phân có thể dài từ 1 đến 6 byte . Cấu trúc chung của một mã lệnh gồm : Prefix đi trước mã lệnh. Mã toán (operation code) phân biệt đó là lệnh gì, ví dụ lệnh dịch chuyển MOV có mã toán là 100010. Toán hạng (operand) cho biết cái gì được xử lý (nội dung của thanh ghi hay bộ nhớ). Địa chỉ trực tiếp 2 byte. Nội dung của mã lệnh được quy định khá chặt chẽ .Hình dưới cho biết cấu trúc nhị phân của một lẹnh di chuyển MOV đích, nguồn dùng để chuyển dữ liệu giữa 2 thanh ghi hoặc giữa ô nhớ và thanh ghi. 1 0 0 0 1 0 Địa chỉ phân thấp Địa chỉ phân cao Mã lệnh D W MOD REG M/R Byte 1 Byte 2 Byte 3 Byte 4 Hình 1.1: Cấu trúc mã lệnh Bit D (direction) chỉ hướng cho thanh ghi REG . D = 1 chỉ dữ liệu đến REG , D = 0 chỉ dữ liệu đi từ REG. Bit W (word) chỉ xem thanh ghi được dùng là 8 bit hay 16 bit (1 word ) W = 1 có nghĩa là thanh ghi 16 bit được dùng . Hình trên cho thấy cách mã hóa các thanh ghi trong bộ vi xử lý . Hai bit MOD (modem, chế độ) và 3 bit R/M (register/memory, thanh ghi/bộ nhớ) tạo ra 5 bit dùng để chỉ chế độ địa chỉ của lệnh . Những chế độ này được quy định trong bảng 1.1 . Bảng 1.2 cho thấy cách mã hóa các chế độ địa chỉ ( cách tìm ra toán hạng ) bằng các bit này . Bảng 4.1 : Cách mã hóa thanh ghi trong bộ VXL. Thanh ghi W = 1 Thanh ghi Mã REG Thanh ghi đoạn Mã AX BX CX DX SP DI BP SI AL BL CL DL AH BH CH DH 000 011 001 010 100 111 101 110 ES CS SS DS 00 01 10 11 Bảng 1.2 : Phối MOD và R/M để tạo ra các chế độ địa chỉ . MOD R/M 00 01 10 11 W=0 W=1 000 [BX] + [SI] [BX] + [SI] + d8 [BX] + [SI] + d16 AL AX 001 [BX] + [DI] [BX] + [DI] + d8 [BX] + [DI] + d16 CL CX 010 [BP] + [SI] [BP] + [SI] + d8 [BP] + [SI] + d16 DL DX 011 [BP] + [DI] [BP] + [DI] + d8 [BP] + [DI] + d16 BL BX 100 [SI] [SI] + d8 [SI] + d16 AH SP 101 [DI] [DI] + d8 [DI] + d16 CH BP 110 d16 (Địa chỉ trực tiếp) [BP] + d8 [BP] + d16 DH SI 111 [BX] [BX] + d8 [BX] + d16 BH DI Chế độ nhớ Chế độ thanh ghi Ghi chú : - d8 disc. 8 bit, d6 disc. 16 bit - Các giá trị cho trong các cột 2,3,4 là các địa chỉ hiệu dụng (EA) sẽ được cộng với DS để tạo ra địa chỉ vật lý (Riêng BP phải được cộng với SP) Ví dụ 1: Mã hóa lệnh: a. MOV CL,[BX]; b. MOV 0F3H[SI],CL. a. MOV CL, [BX] 1 0 0 0 1 0 1 0 0 0 0 0 1 1 1 1 Các bit mã hóa CL; Ô nhớ có địa chỉ DS:BX; Chuyển 1 byte; Opcode. Chuyển tới thanh ghi b. MOV 0F3H[SI], CL 1 0 0 0 1 0 0 0 0 1 0 0 1 1 0 0 1 1 1 1 0 0 1 1 Các bít mã hóa CL; Ô nhớ địa chỉ DS:SI; chuyển một byte; Opcode. Chuyển từ thanh ghi; d8 = F3H. Mỗi bộ vi xử lý có một tập lệnh xác định, các bộ xử lý thế hệ sau thường có các tập lệnh bổ xung.mở rộng hơn so với các bộ vi xử lý trước nó,điều đó có nghĩa các bộ vi xử lý thế hệ sau có thể chạy chương trình viết cho các thế hệ trước.Nhưng ngược lại thì không hoàn toàn đúng.Ta có thể chia lệnh ra làm các nhóm cơ bản như : 1.Các lệnh di chuyển dữ liệu . (Data Transfer Instructions) . Đó là các lệnh thực hiện vận chuyển dữ liệu : + Thanh ghi – đến - thanh ghi (register - to - register) + Bộ nhớ - đến – thanh ghi (memory – to - register) + Thanh ghi - đến - bộ nhớ + Bộ nhớ - đến – bộ nhớ + Trực tiếp – đến – thanh ghi + Trực tiếp – đến – bộ nhớ Trong một sô loại vi xử lý , dữ liệu được vận chuyển hay xử lý có thể có kích thước khác nhau: byte (B), nửa từ H (16-bit), từ W (32 bit) và từ kép D(64-bit).Tương ứng với chúng là các lệnh vận chuyển theo byte, theo nửa từ, theo từ và theo từ kép. Những vi xử lý 8 bit chỉ xử lý byte dữ liệu, vì thế chúng không có phân biệt các lệnh như trên. Còn vi xử lý 16-bit chỉ xử lý dữ liệu 16-bit (2byte), nên chúng có phân biệt lệnh vận chuyển theo byte và từ (nhưng không có nửa từ hay từ kép) MOV Chuyển dữ liệu giữa thanh ghi với thanh ghi,bộ nhớ với bộ nhớ,bộ nhớ với thanh ghi,trực tiếp tới bộ nhớ và trực tiếp tới thanh ghi. CMOVE/CMOVZ Có thể chuyển nếu bằng/Có điều kiện chuyển nếu không. CMOVNE/CMOVNZ Có thể chuyển nếu không bằng nhau / có thể chuyển nếu không phải là số không. CMOVA/CMOVNBE Hiển thị chữ viết theo ngữ hệ La-tinh Hiển thị chữ viết theo ngữ hệ La-tinh có thể chuyển nếu trên / có thể chuyển nếu không phải bên dưới hoặc bằng CMOVAE/CMOVNB Có thể chuyển nếu ở trên hoặc bằng / có thể chuyển nếu không dưới . CMOVB/CMOVNAE Hiển thị chữ viết theo ngữ hệ La-tinhCó điều kiện di chuyển nếu dưới /có thể chuyển nếu không ở trên hoặc bằng CMOVBE/CMOVNA Hiển thị chữ viết theo ngữ hệ La-tinhCó thể chuyển bên dưới hoặc bằng / có thể chuyển nếu không phải ở trên CMOVG/CMOVNLE Hiển thị chữ viết theo ngữ hệ La-tinhCó thể chuyển, nếu lớn hơn / có thể chuyển nếu không phải nhỏ hơn hoặc bằng CMOVGE/CMOVNL Hiển thị chữ viết theo ngữ hệ La-tinhCó thể chuyển, nếu lớn hơn hoặc bằng / có thể chuyển nếu không nhỏ CMOVL/CMOVNGE Hiển thị chữ viết theo ngữ hệ La-tinh Có thể chuyển nếu ít hơn / có thể chuyển nếu không lớn hơn hay bằng CMOVLE/CMOVNG Hiển thị chữ viết theo ngữ hệ La-tinh Có thể chuyển nếu ít hơn hoặc bằng / có điều kiện di chuyển nếu không lớn hơn CMOVC Có thể chuyển nếu có nhớ CMOVNC Có thể chuyển nếu không nhớ. CMOVO Có thể chuyển nếu tràn CMOVNO Có thể chuyển nếu không tràn CMOVS Conditional move if sign (negative) CMOVNS Conditional move if not sign (non-negative) CMOVP/CMOVPE Conditional move if parity/Conditional move if parity even CMOVNP/CMOVPO Conditional move if not parity/Conditional move if parity odd XCHG Trao đổi BSWAP Trao đổi byte XADD Trao đổi và cộng CMPXCHG So sánh và trao đổi CMPXCHG8B So sánh và trao đổi 8 bytes PUSH Cất dữ liệu vào ngăn xếp POP Lấy dữ liệu từ ngăn xếp PUSHA/PUSHAD Đẩy nội dung của tất cả thanh ghi đa năng vào ngăn xếp POPA/POPAD Đọc từ ngăn xếp các dữ liệu về tất cả các thanh ghi đa năng CWD/CDQ Chuyển từ thành từ kép/Chuyển từ kép thành nửa từ. CBW/CWDE Chuyển byte thành từ/Chuyển từ thành từ kép trong thanh ghi EAX MOVSX Move and sign extend MOVZX Move and zero extend 2. Các lệnh số học và logic Các lệnh số học và lô-gíc thực hiện các thao tác số học và lô-gíc trên các thanh ghi và ô nhớ. ADD Cộng số nguyên ADC Cộng có nhớ SUB Trừ SBB Trừ có nhớ IMUL Signed multiply MUL Unsigned multiply IDIV Signed divide DIV Unsigned divide INC Increment DEC Decrement NEG Negate CMP So sánh DAA Decimal adjust after addition DAS Decimal adjust after subtraction AAA ASCII adjust after addition AAS ASCII adjust after subtraction AAM ASCII adjust after multiplication AAD ASCII adjust before division AND Thực hiện logic “và” bit mở rộng OR Perform bitwise logical OR XOR Perform bitwise logical exclusive OR NOT Perform bitwise logical NOT 3.Nhóm lệnh dịch và quay vòng (Shift and Rotate Instructions) Đó là các lệnh dịch nội dung của thanh ghi trong vi xử lý về bên phải , bên trái, dịch quay vòng. Có các lệnh dịch logic và dịch số học. SAR Dịch phải số học SHR Dịch phải logic SAL/SHL Dịch trái số học/trái logic SHRD Shift right double SHLD Shift left double ROR Dịch phải quay vòng ROL Dịch trái quay vòng RCR Rotate through carry right RCL Rotate through carry left 4.Nhóm lệnh xử lý byte và bit (Bit and Byte Instructions) Nhóm lệnh bit kiểm tra và sửa đổi các bit trong toán hạng từ và từ kép. Nhóm lệnh byte thiết lập giá trị của một toán hạng byte để chỉ trạng thái của cờ trong thanh ghi EFLAGS.Nhóm này gồm các lệnh : kiểm tra bit ( bằng 0 hay 1 ), tác động tới giá trị cờ như : xóa bít, thiết lập bít, trích bit và chuyển đến đích khác, trích bít và mở rộng dấu. BT Kiểm tra bit BTS Kiểm tra bit và đặt giá trị BTR Kiểm tra bit và đặt lại giá trị BTC Kiểm tra bit và bổ xung giá trị BSF Bit scan forward BSR Bit scan reverse SETE/SETZ Set byte if equal/Set byte if zero SETNE/SETNZ Set byte if not equal/Set byte if not zero SETA/SETNBE Set byte if above/Set byte if not below or equal SETAE/SETNB/SETNC Set byte if above or equal/Set byte if not below/Set byte if not carry SETB/SETNAE/SETC Set byte if below/Set byte if not above or equal/Set byte if carry SETBE/SETNA Set byte if below or equal/Set byte if not above SETG/SETNLE Set byte if greater/Set byte if not less or equal SETGE/SETNL Set byte if greater or equal/Set byte if not less SETL/SETNGE Set byte if less/Set byte if not greater or equal SETLE/SETNG Set byte if less or equal/Set byte if not greater SETS Set byte if sign (negative) SETNS Set byte if not sign (non-negative) SETO Set byte if overflow SETNO Set byte if not overflow SETPE/SETP Set byte if parity even/Set byte if parity SETPO/SETNP Set byte if parity odd/Set byte if not parity TEST Logical compare 5.Nhóm lệnh chuyển điều khiển (Control Transfer Instructions) Nhóm lệnh này bao gồm: các lệnh nhảy hay rẽ nhánh(Jump, Branch). Các lệnh gọi tới chương trình con (Call), và nhảy trở lại từ chương trình con. Chúng đều có trong các vi xử lý từ 8 bit đến tiên tiến hiện nay và thực hiện các thao tác tương tự nhau. Phân biệt các lệnh chuyển điều khiển có điều kiện (phụ thuộc vào các giá trị các bit cờ trong thanh ghi cờ của bộ vi xử lý) và chuyển điều khiển vô điều kiện. Trong lập trình, các lệnh chuyển điều khiển dùng để rẽ nhánh tới các chương trình con. Thủ tục khi một điều kiện trạng thái của hệ thống được thỏa mãn. Trạng thái của hệ thống được thể hiện qua thanh ghi cờ (hoặc từ trạng thái PSW) JMP Jump JE/JZ Jump if equal/Jump if zero JNE/JNZ Jump if not equal/Jump if not zero JA/JNBE Jump if above/Jump if not below or equal JAE/JNB Jump if above or equal/Jump if not below JB/JNAE Jump if below/Jump if not above or equal JBE/JNA Jump if below or equal/Jump if not above JG/JNLE Jump if greater/Jump if not less or equal JGE/JNL Jump if greater or equal/Jump if not less JL/JNGE Jump if less/Jump if not greater or equal JLE/JNG Jump if less or equal/Jump if not greater JC Jump if carry JNC Jump if not carry JO Jump if overflow JNO Jump if not overflow JS Jump if sign (negative) JNS Jump if not sign (non-negative) JPO/JNP Jump if parity odd/Jump if not parity JPE/JP Jump if parity even/Jump if parity JCXZ/JECXZ Jump register CX zero/Jump register ECX zero LOOP Loop with ECX counter LOOPZ/LOOPE Loop with ECX and zero/Loop with ECX and equal LOOPNZ/LOOPNE Loop with ECX and not zero/Loop with ECX and not equal CALL Call procedure RET Return IRET Return from interrupt INT Software interrupt INTO Interrupt on overflow BOUND Detect value out of range ENTER High-level procedure entry LEAVE High-level procedure exit 6.Nhóm lệnh vào ra (I/O Instructions) Nhóm lệnh chuyển dữ liệu giữa cổng xử lý vào/ra và thanh ghi hoặc bộ nhớ. IN Đọc từ cổng OUT Ra từ cổng INS/INSB Input string from port/Input byte string from port INS/INSW Input string from port/Input word string from port INS/INSD Input string from port/Input doubleword string from port OUTS/OUTSB Output string to port/Output byte string to port OUTS/OUTSW Output string to port/Output word string to port OUTS/OUTSD Output string to port/Output doubleword string to port 7.Nhóm lệnh điều khiển hệ thống . Nhóm lệnh này tác động trực tiếp tới điều hành của bộ vi xử lý và các khối chức năng bên trong nó, như các khối quản lý bộ nhớ (MMU) và bộ nhớ dự trữ (cache memory), khối MMX (trong intel 32-bit). Ví dụ : + Các lệnh dừng: HALT; dừng CPU (Z80) HLT, (Các xử lý intel) Hầu như các loại vi xử lý đều có lệnh dừng (HALT,HLT), lệnh này bắt buộc bộ xử lý ngừng hoạt động, Các thanh ghi và các cờ không có tác dụng. STOP #data; SR ¬ data, Chuyển dữ liệu vào thanh ghi trạng thái của vi xử lý trong chế độ giám sát (Motorola M68000). + Lệnh khóa bus hệ thống: LOCK; tạo tín hiệu LOCK# = 0 (Itel từ 16-bit đến 32-bit) nhằm cấm bộ vi xử lý dùng bus hệ thống trong các trường hợp có truy cập trực tiếp bộ nhớ cảu thiết bị ngoại vi (DMA).Lệnh LOCK chỉ được cùng thực hiện với các lệnh: BT, BTS,BTR,BTC,XCHG,ADD,OR,ADC,SBB,AND,SUB,XOR,NEG,INC, và DEC. UNLOCK; bỏ khóa BUS hệ thống (Itel 80860) +Một số lệnh khác: NOP – không thực hiện lệnh nào cả (nhiều vi xử lý khác nhau) INVD; lỗi ở cache bên trong chip (Intel 32-bit từ 80486) XLAT; chuyển đổi từ một hệ thống mã hóa sang hệ thống mã hóa khác, như : từ mã EBCDIC sang ASCII (intel 21-bit) RESET; tạo tín hiệu xóa RST0 (M68000) Nhìn chung sự phân loại nhóm lệnh này đối với từng loại vi xử lý của các nhà sản xuất khác nhau tương đối khác nhau. II. Giới thiệu các nhóm lệnh của CPU E5200 2.5 Ghz Tập lệnh của E5200 : (MMX,SSE,SSE2,SSE3,EM64T) 1.Nhóm lệnh MMX : Nhóm lệnh MMX hoạt động với byte, từ, từ kép, nửa từ toán hạng số nguyên, chứa trong bộ nhớ, trong thanh ghi MMX , và / hoặc trong thanh ghi đa năng. Nhóm lệnh MMX chỉ có thể được thực hiện trên IA-32 bộ vi xử lý có hỗ trợ công nghệ MMX. Nhóm lệnh MMX được chia thành các nhóm phụ sau: truyền dữ liệu, chuyển đổi, số học, so sánh, hợp lý, dịch và quay vòng , và nhóm lệnh quản lý. Các phần mà theo giới thiệu mỗi nhóm con. 2.Nhóm lệnh SSE: Nhóm lệnh SSE đại diện một phần mở rộng của mô hình thực thi SIMD với công nghệ MMX. Nhóm lệnh chỉ có thể được thực hiện trên IA-32 bộ vi xử lý có hỗ trợ phần mở rộng SSE. Nhóm lệnh SSE được chia thành bốn nhóm phụ (lưu ý rằng các nhóm con đầu tiên có cấp dưới nhóm con của riêng của mình): Nhóm lệnh xử lý toán hạng dấu phảy động với độ chính xác đơn trên thanh ghi XMM. Nhóm lệnh quản lý MXSCR Nhóm lệnh toán hạng số nguyên 64-bit trên thanh ghi MMX - Nhóm lệnh điều khiển Cacheability, prefetch, and điều khiển thứ tự lệnh : Hiển thị chữ viết theo ngữ hệ La-tinhCác nhóm lệnh cacheability kiểm soát cung cấp kiểm soát bộ nhớ đệm của dữ liệu tạm thời khi lưu trữ dữ liệu từ MMX và thanh ghi XMM vào bộ nhớ. PREFETCHh cho phép dữ liệu được kiểm soát trước đến một cấp độ bộ nhớ cache được lựa chọn. Nhóm lệnh điều khiển SFENCE điều khiển sự lưu lại. 3.Nhóm lệnh SSE2: Nhóm lệnh mở rộng SSE2 Hiển thị chữ viết theo ngữ hệ La-tinhđại diện cho một phần mở rộng của mô hình thực thi SIMD với công nghệ MMX.Nhóm lệnh SSE2 làm việc tới toán hạng dấu phảy động với độ chính xác kép , byte, từ, từ kép, nửa từ trên thanh ghi XMM.Nhóm lệnh này được chia thành bốn nhóm nhỏ (lưu ý rằng các nhóm con đầu tiên được chia vào các nhóm con cấp dưới) : Nhóm lệnh xử lý dấu phảy động với độ chính xác kép Nhóm lệnh chuyển đổi dấu phảy động với độ chính xác đơn. Nhóm lệnh số nguyên 128-bit Nhóm lệnh điều khiển Cacheability and điều khiển thứ tự lệnh 4.Nhóm lệnh SSE3: Hiển thị chữ viết theo ngữ hệ La-tinhCác phần mở rộng SSE3 cung cấp 13 nhóm lệnh tăng tốc hiệu suất của Streaming SIMD. Phần mở rộng công nghệ, Streaming SIMD Extensions 2 công nghệ, và x87-FP toán tin. Những nhóm lệnh có thể được phân thành các loại sau đây: Nhóm lệnh chuyển đổi số nguyên trong x87FPU Nhóm lệnh chỉ dẫn địa chỉ tải dữ liệu 1 SIMD Nhóm lệnh ADD/SUB dấu phảy động 2 SIMD Nhóm lệnh ADD/SUB dấu phảy động ngang 4 SIMD Nhóm lệnh LOAD/MOVE/DUPLICATE dấu phảy động 3 SIMD Nhóm lệnh đồng bộ hóa 2 chuỗi II. Chipset là một nhóm các mạch tích hợp (các "chip") được thiết kế để làm việc cùng nhau và đi cùng nhau như một sản phẩm đơn. Trong máy tính, từ chipset thường dùng để nói đến các chip đặc biệt trên bo mạch chủ hoặc trên các card mở rộng Chipset cầu bắc (North Bridge ) và Chipset cầu nam ( Sourth Bridge ) *Nhiệm vụ của Chipset : -Kết nối các thành phần trên Mainboard và các thiết bị ngoại vi lại với nhau - Điều khiển tốc độ Bus cho phù hợp giữa các thiết bị - Thí dụ : CPU có tốc độ Bus là 400MHz nhưng Ram có tốc độ Bus là 266MHz để hai thành phần này có thể giao tiếp với nhau thì chúng phải thông qua Chipset để thay đổi tốc độ Bus Sơ đồ minh họa tốc độ Bus của các thiết bị liên lạc với nhau thông qua chipset Intel® G31 Express Chipset Block Diagram Chip cầu bắc, hay còn gọi là Memory Controller Hub (MCH'), là một trong hai chip trong một chipset trên một bo mạch chủ của PC, chip còn lại là chip cầu nam. Thông thường thì chipset luôn được tách thành chip cầu bắc và chip cầu nam mặc dù đôi khi hai chip này được kết hợp làm một Chip cầu bắc Chip cầu bắc đảm nhiệm Liên lạc giữa các thiết bị CPU, RAM, AGP hoặc PCI Express, và chip cầu nam . Một vài loại còn chứa chương trình điều khiển video tích hợp, hay còn gọi là Graphics and Memory Controller Hub (GMCH) hay VGA onboard. Ý nghĩa của Chip Cầu Bắc (North Bridge) trên Mainboard Chip Cầu Bắc làIC quan trọng nhất trên Mainboard, nó quyết định độ mạnh và giá thành của Main. Chip Cầu Bắc điều khiển trực tiếp các thành phần : o Điều khiển CPU o Điều khiển bộ nhớ RAM o Điều khiển Video Card Và trao đổi dữ liệu với Chip Cầu Nam. Các thành phần do Chip Cầu Bắc thực hiện (CPU, RAM, Video Card) phải đồng bộ với nhau và thuộc phạm vi của Chip Cầu Bắc hỗ trợ thì chúng mới doạt động được. Trong thực tế, mỗi loại Chip Cầu Bắc chỉ hỗ trợ khoảng 2 loại CPU, 2 loại RAM và 2 loại Video Card, nếu bạn sử dụng CPU hay RAM hay Video Card mà Chip Cầu Bắc không hỗ trợ thì nó sẽ không hoạt động được. Thông số của Mainboard trên các báo giá trên thị trường thường là các thông số của Chíp Cầu Bắc, nó thể hiện các yếu tố sau : o Hỗ trợ các CPU loại gì (socket 478, 775, 1366 vv… ) và hỗ trợ CPU có BUS bao nhiêu. o Hỗ trợ RAM loại gì (DDR, DDR 2, DDR 3 vv… ), hỗ trợ RAM có tốc độ BUS bao nhiêu. o Hỗ trợ Video Card loại gì, AGP hay PCI Express vv… Tốc độ 4x, 8x hay 16x vv… Khi bạn xây dựng cấu hình máy tính bạn phải chọn Mainboard trước, sau đó mới chọn CPU, RAM, và Video Card mà Main đó hỗ trợ. Vì các bộ xử lý và RAM khác nhau yêu cầu các tín hiệu khác nhau, một chip cầu bắc chỉ làm việc với một hoặc hai loại CPU và nói chung chỉ với một loại RAM. Có một vài loại chipset hỗ trợ hai loại RAM (những loại này thường được sử dụng khi có sự thay đổi về chuẩn). Ví dụ, chip cầu bắc của chipset NVIDIA nForce2 chỉ làm việc với bộ xử lý Duron, Athlon, và Athlon XP với DDR SDRAM, chipset Intel i875 chỉ làm việc với hệ thống sử dụng bộ xử lý Pentium 4 hoặc Celeron có tốc độ lớn hơn 1.3 GHz và sử dụng DDR SDRAM, chipset Intel i915g chỉ làm việc với Intel Pentium 4 và Intel Celeron, nhưng có thể sử dụng bộ nhớ DDR hoặc DDR2. Chip cầu bắc trên một bo mạch chủ là nhân tố rất quan trọng quyết định số lượng, tốc độ và loại CPU cũng như dung lượng, tốc độ và loại RAM có thể được sử dụng. Các nhân tố khác như điện áp và số các kết nối dùng được cũng có vai trò nhất định. Gần như tất cả các chipset ở cấp độ người dùng chỉ hỗ trợ một dòng vi xử lý với lượng RAM tối đa phụ thuộc bộ xử lý và thiết kế của bo mạch chủ. Các máy Pentium thường có giới hạn bộ nhớ là 128 MB, trong khi các máy dùng Pentium 4 có giới hạn là 4 GB. Kể từ Pentium Pro đã hỗ trợ địa chỉ bộ nhớ lớn hơn 32 bit, thường là 36 bit, do đó có thể định vị 64 GB bộ nhớ. Tuy nhiên các bo mạch chủ chỉ hỗ trợ một lượng RAM ít hơn vì các nhân tố khác (như giới hạn của hệ điều hành và giá thành của RAM). Mỗi chip cầu bắc chỉ làm việc với một hoặc hai loại chip cầu nam. Do vậy nó đặt ra những hạn chế kỹ thuật đối với chip cầu nam và ảnh hưởng đến một số đặc tính của hệ thống. Chip cầu nam, hay còn gọi là I/O Controller Hub (ICH), là một chip đảm nhiệm những việc có tốc độ chậm của bo mạch chủ trong chipset. Khác với chip cầu bắc, chip cầu nam không được kết nối trực tiếp với CPU. Đúng hơn là chip cầu bắc kết nối chip cầu nam với CPU. +Tổng quan Bởi vì chip cầu nam được đặt xa CPU hơn, nó được giao trách nhiệm liên lạc với các thiết bị có tốc độ chậm hơn trên một máy vi tính điển hình. Một chíp cầu nam điển hình thường làm việc với một vài chíp cầu bắc khác, mỗi cặp chíp cầu bắc và nam phải có thiết kế phù hợp thì mới có thể làm việc với nhau; chưa có chuẩn công nghiệp rộng rãi cho các thiết kế thành phần lôgic cơ bản của chipset để chúng có thể hoạt động được với nhau. Theo truyền thống, giao tiếp chung giữa chip cầu bắc và chip cầu nam đơn giản là bus PCI, vì thế mà nó tạo nên một hiệu ứng cổ chai (bottleneck), phần lớn các chipset hiện thời sử dụng các giao tiếp chung (thường là thiết kế độc quyền) có hiệu năng cao hơn. +Tên gọi Tên gọi "chip cầu nam" bắt nguồn từ việc vẽ một kiến trúc trên sơ đồ. Trong đó CPU phải ở trên sơ đồ tại phía bắc. CPU nối với chipset qua một cầu nối có tốc độ cao (cầu bắc) ở phía bắc của các thiết bị khác đã vẽ. Cầu bắc sau đó được nối với phần còn lại của chipset qua một cầu nối có tốc độ nhanh hơn(cầu nam ). Kiến trúc & kết nối của chip cầu Nam với các bộ phận khác trên main: Cách nhận dạng: - Lớn thứ nhì trên main (chỉ thua Chip cầu Bắc) - Có 2 chip lớn, chíp thứ nhất là cầu Bắc thì chip còn lại là chip cầu NAM. Dạng chip NAM thông dụng Nhiệm vụ: - Quản lý và giao tiếp với các thành phần như: các khe PCI, giao tiếp USB, chip Sound, chip LAN, BIOS ROM, chip SIO (Riêng SIO sẽ quản lý: Keyboard, mouse, FDD, COM, LPT) Lỗi thường gặp: - Không kích được nguồn (thường gặp nhất). Kết hợp với chip SIO sẽ điều khiển mạch ngắt, mở nguồn. - Mất xung reset (rất thường gặp) - Không nhận, hoặc nhận mà không chạy các thiết bị như USB, HDD, CD Cách xử lý: - Riêng lỗi không kich nguồn sẽ có 1 bài riêng, tuy nhiên sau khi xác định lỗi là do chip NAM thì cách xử lý sẽ tương tự như chip Bắc. Đó là “hấp” lại chíp, “đá” chip, “làm chân lại” hoặc thay chip mới. Bổ sung: Thông thường, chipset gồm 2 thành phần: chipset cầu bắc (North Bridge Chipset) và chipset cầu nam (South Bridge Chipset). Nhiệm vụ của hai chipset này được quy định rõ ràng và hiếm khi thay đổi. Năm 1997, giao tiếp AGP được giới thiệu và chipset cầu bắc có thêm nhiệm vụ kết nối với card đồ họa. Chipset cầu bắc sẽ quản lý việc giao tiếp dữ liệu với CPU, RAM và card đồ họa, vì vậy nó rất quan trọng, khả năng xử lý của BMC phụ thuộc chipset này rất nhiều Chipset cầu nam quản lý các thiết bị ngoại vi, thông tin từ ngoài vào chipset cầu nam được đưa lên cầu bắc để xử lý và trả kết quả về. Tuy nhiên cũng có một số ngoại lệ như chipset Intel 875P lại đưa giao tiếp mạng gigabit lên chip cầu bắc để tránh nghẽn đường truyền từ chip cầu nam lên cầu bắc. Tại sao Intel lại làm như vậy? Giao tiếp giữa chipset cầu bắc và cầu nam qua kỹ thuật Hub Link của Intel đạt băng thông 266MB/giây. Trong trường hợp xấu nhất thì những thành phần sau có thể giao tiếp cùng lúc: IDE RAID 0: 100 MB/giây; LAN 1 Gb/giây=125MB/giây; USB 2.0: 60 MB/giây; card PCI: 21 MB/giây; Serial ATA: 150 MB/giây. Như vậy, theo lý thuyết thì băng thông lớn nhất sẽ là 456MB/giây (card âm thanh và các thành phần khác chưa được tính vào). Hub Link với băng thông 266MB/giây cũng có trường hợp bị quá tải. Do đó, Intel đã tổ chức lại và đưa giao tiếp mạng từ chipset cầu nam sang chipset cầu bắc, bởi vì thành phần này có thể góp phần làm nghẽn băng thông giao tiếp giữa 2 chipset (VIA và SiS có công nghệ riêng làm cho băng thông giao tiếp giữa chipset cầu nam và bắc đạt 1GB/giây nên hai hãng này đã không đưa mạng gigabit cho chipset cầu bắc quản lý). Một trường hợp khác là chipset nForce3 150. Trong khi các hãng thường dùng 2 chipset thì nVidia lại tích hợp cả cầu bắc và cầu nam

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

  • docBai Tap Lon KTMT.doc
  • docThông tin nhóm.doc
Tài liệu liên quan