Bài tập lớn môn Phân tích kiến trúc của PCI bus

Mục Lục:

I. Khái niệm Bus

II. Tìm hiểu lịch sử phát triển của PCI

 1.Lịch sử phát triển

 2. Các kiểu Bus PCI

 3. Đặc điểm

 4. Ưu điểm chính của PCI

 5. Đặc tính cơ bản của PCI

 6. Hoạt động

 7. Nhược điểm

 III. PCI Express Kiến Trúc Tổng Quan

IV. Tìm hiểu Bus PCI Express

1. Vấn đề băng thông

2. Phân biệt PCI Express, AGP và PCI

3. Một số câu hỏi được nhiều người quan tâm về PCI Express

V. Kiến trúc PCI Express

1. Lớp vật lý (Physical)

2. Lớp liên kết (Link)

3. Lớp Truyền/Nhận ( Transaction)

4. Các lớp phần mềm.

 

doc29 trang | Chia sẻ: Thành Đồng | Ngày: 11/09/2024 | Lượt xem: 88 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài tập lớn môn Phân tích kiến trúc của PCI bus, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
điểm-điểm kết nối có thể được xây dựng với kết nối và cáp . PCI Express mechanicals sẽ cho phép các lớp mới của phân vùng hệ thống  ("hộp biege nhàm chán" là không còn cần thiết). Một chuyển đổi được thêm vào cấu trúc liên kết hệ thống Các nền tảng sử dụng kiến trúc PCI Express tiêu biểu cho 2004, Nhiều bus tương tự song song của nền tảng hiện nay được thay thế bởi giao tiếp PCI Express liên kết với một hoặc nhiều làn đường. Liên kết mỗi cá nhân là khả năng mở rộng bằng cách thêm nhiều tuyến đường để băng thông bổ sung có thể được áp dụng cho các liên kết mà nó cho là cần thiết - chẳng hạn như đồ họa trong nền tảng máy tính để bàn và cầu bus (ví dụ như PCI Express, PCI-X) trong nền tảng máy chủ. PCI Express chuyển đổi cung cấp khả năng fanout và cho phép một loạt các kết nối cho các add – in, hiệu suất cao của I/O. Chuyển đổi là một yếu tố hợp lý có thể được thực hiện trong một thành phần này còn có một cầu nối máy chủ , hoặc nó có thể được thực hiện như là một thành phần riêng biệt. PCI sẽ cùng tồn tại trong nhiều nền tảng để hỗ trợ các ứng dụng băng thông hiện nay thấp hơn cho đến khi một nhu cầu hấp dẫn, chẳng hạn như là một yếu tố hình thức mới,gây ra một sự chuyển đổi đầy đủ với một nền tảng dựa trên đầy đủ PCI Express. Các nền tảng máy chủ yêu cầu hiệu suất I / O và bao gồm kết nối băng thông  cao PCI Express liên kết đến các khe cắm PCI-X ,  Gigabit Ethernet và InfiniBand. Hình dưới cho thấy  PCI Express làm thế nào cung cấp nhiều lợi thế cho các máy chủ, vì nó làm cho hệ thống máy tính để bàn. Sự kết hợp của PCI Express "bên trong hộp" I/O, và các loại InfiniBand cho "bên ngoài hộp" I/O và kết nối cụm, cho phép máy chủ để chuyển đổi từ bus song song chia sẻ "để nối tiếp tốc độ cao liên kết nối ..” PCI Express-based Server/Workstation System Các nền tảng mạng truyền thông có thể sử dụng nhiều thiết bị chuyển mạch kết nối tăng lên và chất lượng dịch vụ (QOS) cho sự khác biệt của các loại hình giao  thông  khác nhau. Nó cũng sẽ được hưởng lợi từ nhiều PCI Express  liên kết có thể được xây dựng như một hệ thống I/O mô-đun. PCI Express-Truyền thông mạng dựa trên hệ thống IV. Tìm hiểu Bus PCI Express Cách đây không lâu, PCI còn là chuẩn tốt nhất để máy tính giao tiếp với các card chức năng mở rộng (sound, modem...) qua các khe cắm trên mainboard. Nay, một chuẩn mới ra đời để đáp ứng yêu cầu tốc độ truyền dữ liệu ngày một tăng, đó là chuẩn PCI Express. Tuy chuẩn này hiện chủ yếu ứng dụng cho card đồ họa nhưng có lẽ chẳng bao lâu nữa nó cũng sẽ được dứng dụng cho nhiều thiết bị khác. Vì vậy, một mainboard có hỗ trợ PCI Express hay không cũng là một điều đáng được xem xét để cân nhắc khi mua sắm. Thời gian gần đây có lẽ bạn nghe nhắc nhiều tới cụm từ pci express, nhất là khi tìm hiểu các thông số kỹ thuật của một số loại mainboard hoặc card đồ họa đời mới. có thể ở thời điểm hiện tại và trong tương lai sắp tới thì vấn đề có hỗ trợ pci express hay không sẽ ảnh hưởng nhiều tới quyết định khi lựa chọn trang bị phần cứng cho máy tính của bạn. Có hai lý do khiến bạn nên quan tâm đến PCI-Express: Thứ nhất, chuẩn PCI cũ xuất hiện từ những năm 90 đã quá lạc hậu, do đó không còn đáp ứng được nhu cầu ngày càng lớn về băng thông và tốc độ của các thiết bị mới. Thứ hai, chuẩn AGP cũng có số phận tương tự khi đã phát triển đến ngưỡng và xuất hiện những dấu hiệu lạc hậu, đồng thời các nhà sản xuất ngày càng tỏ ra ưu ái và dần thay thế AGP bằng một giao tiếp vượt trội hơn - PCI Express. Do đó có thể dự đoán về một sự soán ngôi trong lãnh vực card đồ họa, và người dùng sẽ là đối tượng hưởng lợi mặc dù sẽ không còn nhiều lựa chọn như trước. 1.Vấn đề băng thông Hiện thời, PCI Express được chia làm nhiều loại ứng với từng tốc độ truyền tải dữ liệu khác nhau là: 1x, 2x, 4x, 8x, 12x, 16x (và cả 32x), tất cả đều có băng thông lớn hơn nhiều so với chuẩn PCI cũ. Trong đó loại 4x, 8x và 12x sử dụng trong thị trường máy chủ, còn 1x, 2x và 16x thì sử dụng cho người dùng thông thường. Bảng bên cạnh so sánh các loại này với nhau và với các chuẩn truyền tải dữ liệu khác: Lưu ý: vì PCI Express là công nghệ dựa trên nền tảng tương tự (serial) nên dữ liệu có thể truyền tải qua bus theo hai hướng, do đó con số trong ngoặc vuông là băng thông tổng cộng theo cả hai hướng. 2.Phân biệt PCI Express, AGP và PCI:  Chuẩn PCI Express có thể ứng dụng trong nhiều thiết bị khác, tuy nhiên tại thời điểm này nó được sử dụng chủ yếu trong các loại card đồ họa. Trong hình minh họa ở trang sau, bạn sẽ thấy hình ảnh cụ thể về ba thế hệ card đồ họa sử dụng các chuẩn PCI, AGP và PCI Express 16x. Do card đồ họa PCI loại cũ rất hiếm trên thị trường nên ta chỉ quan tâm so sánh giữa card AGP và PCI Express mà thôi. Như bạn thấy, card PCI Express có hàng chân cắm bắt đầu và kết thúc bằng những miếng nhựa nhỏ và sẽ không được cắm hoàn toàn vào khe cắm trên mainboard. Đây là đặc điểm nhận dạng nổi bật nhất giúp phân biệt giữa card PCI Express và AGP. Và theo đó, bạn tuyệt đối không thể cắm một card PCI Express vào khe AGP và ngược lại. Điểm khác biệt thứ hai giúp bạn phân biệt card PCI Express và AGP là số lượng khe trên hàng chân cắm. Trên card PCI Express bạn thấy chỉ có một khe, trong khi đó trên card AGP và PCI loại cũ có tới 2 khe. Các loại card PCI Express 1x và 4x có một số điểm khác biệt nhưng chúng đều rất hiếm và gần như không tìm thấy trên thị trường hiện thời. Loại PCI Express 1x có chân cắm gần giống với các thiết bị sử dụng khe AMR đã rất cũ, tuy nhiên trên thị trường linh kiện hiện giờ không có một loại mainboard nào có cả hai loại khe cắm là AMR và PCI Express cả. 3.Một số câu hỏi được nhiều người quan tâm về PCI Express  - Chuẩn PCI Express có thật nhanh hơn PCI?  Với chuẩn PCI loại cũ thì đúng như vậy, PCI Express có tốc độ truyền dữ liệu nhanh hơn nhiều so với PCI. Chẳng hạn với loại card PCI Express 1x thì tốc độ truyền dữ liệu nhanh hơn tối thiểu là 118%. Còn nếu so sánh card đồ họa PCI Express 16x với card đồ họa PCI loại cũ thì tốc độ nhanh hơn tới 29 lần. Còn đối với chuẩn AGP thì câu trả lời là đúng và cũng chưa đúng. Trên lý thuyết thì card PCI Express 16x có tốc độ truyền tải dữ liệu giữa hệ thống và card đồ họa nhanh hơn tới 190% so với card AGP 8x. Tuy nhiên trên thực tế thì kết quả không hoàn toàn như mong muốn bởi nhiều nguyên nhân về công nghệ. Bởi vậy nếu bạn đang sử dụng hệ thống với chuẩn AGP và bạn cảm thấy hài lòng với nó thì việc đầu tư chuyển sang sử dụng PCI Express là không cần thiết. Thay vào đó bạn có thể trang bị một card AGP có tốc độ nhanh (như nVidia 6800GT...) là quá đủ cho mọi mục đích sử dụng và chơi game rồi. Chỉ trừ khi hệ thống đã thuộc loại cũ với các chuẩn AGP 4x hay 2x thì việc xem xét chuyển sang PCI Express là nên làm. - Cùng với PCI Express người ta còn thường nói nhiều tới SLI, vậy SLI là gì?  SLI (Scalable Link Interface) là công nghệ có khả năng sử dụng cùng lúc hai card đồ họa riêng biệt của nVidia để đem lại hiệu quả cao hơn. Điều kiện là card đồ họa và mainboard của bạn phải hỗ trợ công nghệ này. Bạn có thể hình dung cách làm việc của SLI là chia sẻ công việc đồ họa nặng nề cho hai card đồ họa xử lý cùng lúc (xu hướng này dễ hiểu khi mà mọi thứ đều làm việc “có đôi” như Hyper Threading của bộ vi xử lý và Dual Channel của bộ nhớ RAM, nhờ đó công việc nhanh và hiệu quả hơn rất nhiều). Chẳng hạn, hai card 6600GT sẽ làm việc hiệu quả hơn rất nhiều so với chỉ một card 6800GT hay X800 dù giá cả thấp hơn việc bạn mua hai card 6600GT riêng biệt. Vấn đề duy nhất là hiện giờ công nghệ SLI còn mới và chỉ giới hạn sử dụng trên hệ thống AMD 64 / AMD FX socket 939. Tương lai tới sẽ có sự đổi khác và công nghệ này có thể sử dụng phổ biến trên nhiều nền tảng hơn. - Liệu có cần một nguồn cấp điện bổ sung cho card PCI Express? Mặc dù bạn có thể sử dụng nguồn cấp điện bổ sung nhưng đa số các loại card PCI Express đều chưa sử dụng tới khả năng này. Một số loại card đồ họa sử dụng chipset X600, X700, X300, hay 6600 thường không sử dụng nguồn cấp điện bổ sung. Trong trường hợp card đồ họa PCI Express yêu cầu sử dụng nguồn điện bổ sung mà bộ cấp điện nguồn lại không hỗ trợ, bạn có thể sử dụng thiết bị PCI Express Power Adapter (tham khảo ở địa chỉ để tự tạo ra một nguồn cấp điện riêng cho card PCI Express. V. Kiến trúc PCI Express Hiện nay, tốc độ truyền tải của PCI Express 1.x (PCIe 1.x) nhìn chung có thể đáp ứng hầu hết các ứng dụng thông thường, tuy nhiên với các ứng dụng đồ họa cao cấp thì vẫn chưa đủ. Đây chính là lý do để công nghệ PCI Express (PCIe) không ngừng cải tiến và tới thời điểm này đã hiện thực trên các sản phẩm giao tiếp PCI Express (PCIe) 2.0 và PCIe 3.0. Kiến trúc PCIe được phân thành các lớp như hình 1 Hinh 1 PCIe hoàn toàn tương thích với thế hệ PCI trước đây. Điều này có nghĩa là tất cả các ứng dụng và trình điều khiển tương thích với PCI cũng hoạt động không thay đổi với PCIe. Chính vì vậy chuẩn giao tiếp PCIe cũng có nguyên lý giao tiếp giống như PCI. 1. Lớp vật lý (physical) Liên kết PCIe cơ bản bao gồm các cặp tín hiệu: một tín hiệu truyền và một tín hiệu nhận như hình2: Hinh 2 Một xung dữ liệu được ghi vào bằng cách sử dụng mã hóa 8b/10b để đạt được tốc độ dữ liệu cao. Tần số của phiên bản PCIe đầu tiên là 2,5 Giga transfers/giây/hướng (GT/s); với công nghệ silicon, tần số này có thể được cải tiến để nâng lên thành 10GT/s. Lớp vật lý chuyển các gói giữa các lớp liên kết của 2 PCIe. Băng thông của một liên kết PCI Express có thể được thu nhỏ tuyến tính bằng cách thêm các cặp tín hiệu để tạo thành nhiều làn .Các lớp vật lý hỗ trợ x1, x2, x4, x8, x12, x16 và x32 chiều rộng làn  và chia tách các byte dữ liệu như trong hình dưới. Mỗi byte được truyền đi, với 8B/10B mã hóa, trên các làn  (s). Dữ liệu này tháo gỡ và lắp ráp lại là trong suốt đối với các lớp khác. Trong quá trình khởi tạo, mỗi liên kết PCI Express được thiết lập sau một cuộc đàm phán chiều rộng làn đường và tần số hoạt động của hai đại lý ở mỗi đầu của liên kết.Không có phần cứng hay phần mềm hệ điều hành được tham gia. Các kiến trúc PCI Express hiểu cải tiến hiệu suất trong tương lai thông qua nâng  cấp tốc độ và kỹ thuật mã hóa tiên tiến. Tốc độ trong  tương lai , mã hóa kỹ thuật  hoặc các phương tiện truyền thông sẽ chỉ ảnh ​​hưởng đến các lớp vật lý. PCI Express Liên kết bao gồm một hoặc nhiều làn 2. Lớp liên kết (Link) Vai trò cơ bản của một lớp liên kết là để bảo đảm tính xác thực của việc truyền đi các gói thông qua liên kết PCIe. Lớp liên kết chịu trách nhiệm trong việc bảo toàn và kiểm tra dữ liệu bằng chuỗi đánh số gói, chuỗi CRC (Cyclic redundancy check) vào các gói của lớp truyền/nhận (transaction) gửi đến như hình 3: Hầu hết các gói được bắt đầu ở lớp transaction. Giao thức điều khiển luồng bảo đảm các gói này chỉ được truyền khi có một bộ đệm để nhận gói này ở điểm cuối. Điều này giúp loại trừ việc phải gửi đi nhưng có nơi nhận phải gửi lại gây ra việc lãng phí băng thông. Lớp liên kết sẽ tự động gửi lại một gói khi gói này bị sai lệch. 3. Lớp truyền/nhận (transaction) Lớp transaction nhận các yêu cầu đọc và ghi từ lớp phần mềm và tạo ra các gói yêu cầu cho việc truyền đến lớp liên kết. Đa số tất cả các yêu cầu đều độc lập và một số gói yêu cầu cần phải có một gói trả lời. Lớp transaction cũng nhận các gói trả lời từ lớp kết nối và kết hợp các gói trả lời này với các gói yêu cầu từ lớp phần mềm. Mỗi gói sẽ có một mã riêng biệt để bảo đảm các gói trả lời tương ứng với từng gói yêu cầu ban đầu. Định dạng gói hỗ trợ 32bit địa chỉ nhớ có thể mở rộng thành 64bit địa chỉ nhớ. Các gói cũng có các thuộc tính như “no-snoop”, “relaxed ordering”, “priority”. Các thuộc tính này có thể được sử dụng để tối ưu lộ trình của những gói này thông qua các hệ thống xuất nhập (I/O) con. 4. Các lớp phần mềm (software) Các lớp phần mềm sẽ tạo ra các yêu cầu đọc và ghi để chuyển đến các thiết bị I/O bằng lớp transaction. Tới thời điểm này, các sản phẩm phần cứng đến tay người tiêu dùng đã bắt đầu được hiện thực với chuẩn giao tiếp PCIe 2.0 và trong tương lai theo dự kiến sẽ là PCIe 3.0. Nhưng PCIe 2.0 và PCIe 3.0 có những cải tiến gì so với PCIe 1.x. PCI Express 2.0 Với phiên bản PCIe 1.1 có tốc độ bit 2,5Giga transfers/s (GT/s) nhưng với phiên bản PCIe 2.0 thì tốc độ này được tăng gấp đôi lên thành 5GT/s. Ví dụ, một PCIe 1.1x8 có băng thông tổng cộng 4GBytes/s, tương đương với băng thông của PCIe 2.0x4 của công nghệ tín hiệu 5GT/s. Tuy nhiên, PCIe 2.0 có thể hỗ trợ cùng lúc tốc độ 2,5GT/s và 5GT/s, có thể tương thích ngược với PCIe 1.0 và 1.1. Có nghĩa là một thiết bị được thiết kế hoạt động ở tốc độ 5GT/s có thể cắm trên khe hỗ trợ tín nhiệu 2,5GT/s và ngược lại. Bên cạnh tốc độ nhanh hơn gấp đôi, PCIe 2.0 còn có một số cải tiến như tương thích tốt hơn, độ tin cậy cao hơn trong thiết kế các liên kết PCIe. Ngoài ra, PCIe 2.0 còn có những tính năng đặc biệt trong đặc tả: • Gia tăng khả năng kiểm soát lỗi định thời: giảm lỗi định thời và gia tăng khả năng điều chỉnh thời gian • Chức năng xác lập lại mức ban đầu (level reset) và truy xuất các dịch vụ điều khiển: tăng cường mạnh mẽ việc hỗ trợ khả năng ảo hoá I/O (tuỳ chọn) • Khe thay đổi giới hạn cấp nguồn: cho phép khe cấp nguồn cao hơn để đáp ứng cho những card đồ họa mới, mạnh hơn • Điều khiển tốc độ tín hiệu: cho phép phần mềm xác định tốc độ tín hiệu hoạt động của một thiết bị, giúp làm giảm sự tiêu thụ năng lượng cũng như cung cấp toàn bộ mức I/O cho bộ nhớ. PCI Express 3.0 PCI Express 3.0 là phát triển kế tiếp của chuẩn PCIe 2.0, với tốc độ bít đạt 8GT/s, gấp đôi PCIe 2.0, trong khi vẫn duy trì sự tương thích của các giao tiếp phần mềm và vận hành trong tất cả các phiên bản. Tại sao lại nói tăng gấp đôi khi PCIe 2.0 có thể đạt tốc độ bit 5GT/s? PCIe 2.0 có tốc độ bit là 5GT/s nhưng tốc độ thực sự chỉ 4GT/s, 20% còn lại dành cho việc mã hóa 8b/10b (là sự sắp mã theo byte, mỗi byte của dữ liệu vào một hay 2 ký tự 10bit). PCIe 3.0 đã không sử dụng công đoạn mã hóa 8b/10b mà thay vào đó là kỹ thuật “scrambling” (dùng hàm nhị phân để biểu diễn luồng dữ liệu). Chính nhờ điểm “tiết kiệm” này, PCIe 3.0 tăng gấp đôi hiệu năng nhưng chỉ cần tốc độ bit là 8GT/s thay vì phải cần đến 10GT/s nếu dùng cơ chế mã hóa 8b/10b. Ngoài ra, cả 3 chuẩn PCIe (PCIe 1.x, PCIe 2.0, PCIe 3.0) đều tương thích lẫn nhau. Điều này có nghĩa card PCIe 1.x và PCIe 2.0 có thể cắm vào khe PCIe 3.0 và hoạt động ở tốc độ cao nhất mà card hỗ trợ. Tương tự, tất cả các card PCIe 3.0 đều có thể cắm vào khe PCIe 1.x và PCIe 2.0 và hoạt động với tốc độ mà khe cắm hỗ trợ. Tuy nhiên, một yêu cầu quan trọng đối với giao tiếp PCIe 3.0 là các sản phẩm phải được thực hiện với công nghệ 65nm hay công nghệ tốt hơn nữa thì mới có thể tối ưu được tốc độ của giao tiếp. BẢNG TỐC ĐỘ BIT VÀ BĂNG THÔNG CỦA MỖI KIẾN TRÚC PCIe Khi nói đến máy tính, bạn thường nói đến hay được kể đến những "nhân vật" quan trọng như bộ vi xử lý, ổ đĩa cứng, bộ nhớ mà quên rằng một thành phần không kém phần quan trọng chính là các kênh giao tiếp, kênh truyền dữ liệu mà bạn có thể hình dung như những con đường huyết mạch vận chuyển dữ liệu chạy qua lại giữa bộ vi xử lý, ổ cứng, bộ nhớ Một kiến trúc công nghệ

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

  • docbai_tap_lon_mon_phan_tich_kien_truc_cua_pci_bus.doc