top of page
Writer's pictureCông Ty Trần Sang

Tìm hiểu về giao tiếp PCIe và lợi ích của nó đối với lưu trữ thể rắn

Updated: Aug 10, 2019


Tìm hiểu về giao tiếp PCIe và lợi ích của nó đối với lưu trữ thể rắn.

Kể từ khi lưu trữ thể rắn xuất hiện trên thị trường, chúng ta đã thấy được những bước tiến to lớn về hiệu năng lưu trữ trong các hệ thống máy tính tiêu dùng và doanh nghiệp, hứa hẹn sẽ còn tiến xa hơn nữa. Với sự giới thiệu về bộ điều khiển flash LSI SF3700 có hỗ trợ giao tiếp PCIe (PCI Express) và việc triển khai tách biệt công nghệ này giống như trên máy tính MacBook Pro mới nhất của Apple, đã mở ra cánh cửa với nhiều câu hỏi về việc áp dụng PCIe và những lợi ích mà nó mang lại cho lưu trữ thể rắn. Bên dưới là phần hỏi đáp với Jeremy Werner, Giám đốc Sản phẩm và Quản lý Khách hàng Cấp cao thuộc bộ phận SandForce của LSI.


Phần lớn ổ đĩa SSD trước đây sử dụng chuẩn SATA, trong khi PCIe được dùng chủ yếu cho các ứng dụng doanh nghiệp. Tại sao giao tiếp PCIe đang trở nên quan trọng đối với thị trường tiêu dùng?


Hiện nay, một số SSD sử dụng giao tiếp PCIe Gen 2 x4 (tốc độ thế hệ thứ 2, với 4 làn truyền dữ liệu), hỗ trợ lên đến 20 Gb/s (mỗi hướng).

Jeremy: Trong vài thập kỷ qua, hiệu năng của giao tiếp host (máy tính chủ) cho các thiết bị tiêu dùng không ngừng tăng lên. Tốc độ giao tiếp PATA (Parallel ATA) tăng từ 33 MB/s lên 100 MB/s, trong khi hiệu năng của kết nối SATA (Serial ATA) nhảy vọt từ 1,5 Gb/s lên 6 Gb/s. Hiện nay, một số SSD sử dụng giao tiếp PCIe Gen 2 x4 (tốc độ thế hệ thứ 2, với 4 làn truyền dữ liệu), hỗ trợ lên đến 20 Gb/s (mỗi hướng). Do giao tiếp PCIe có thể đọc và ghi đồng thời (full duplex), còn SATA chỉ có thể đọc hoặc ghi cùng một lúc (half-duplex), PCIe có khả năng tăng gấp đôi tốc độ 20 Gb/s đối với tải làm việc hỗn hợp (đọc và ghi), giúp nó nhanh hơn gần 7 lần so với SATA.


Giao tiếp PCIe sẽ thay thế SATA trên ổ đĩa SSD?


Giao tiếp PCIe sẽ thay thế SATA trên ổ đĩa SSD?

Jeremy: Cuối cùng rồi cũng có khả năng thay thế, nhưng có lẽ sẽ mất nhiều năm trong thị trường máy tính tiêu dùng ổ đĩa đơn, bởi vì có 2 trở ngại. Thứ nhất, một số nền tảng tiêu dùng ổ đĩa đơn phải sử dụng kết nối ổ cứng và SSD thông dụng, để người dùng lựa chọn giữa hai thiết bị này. Ngoài ra, do giao tiếp SATA 6 Gb/s trên SSD mang lại tốc độ cao hơn nhiều so với ổ cứng, nên chưa có nhu cầu cần thiết phải thay ổ cứng để chuyển sang kết nối PCIe nhanh hơn, khiến SATA là giao tiếp duy nhất trong thị trường tiêu dùng. Thứ hai, những chiếc máy tính cá nhân cũ đã có sẵn trong nhà của người tiêu dùng, khi cần nâng cấp lên SSD, chúng chỉ hỗ trợ các thiết bị lưu trữ SATA, do đó không có cơ hội cho PCIe trong thị trường nâng cấp.


Ngược lại, thị trường lưu trữ doanh nghiệp và thậm chí một số hệ thống tiêu dùng cao cấp sẽ nhanh chóng chuyển đổi sang PCIe, vì họ thấy được sự gia tăng đáng kể về tốc độ và có thể dễ dàng tích hợp các giải pháp SSD PCIe hiện có.


Đáng chú ý là một số tiêu chuẩn, như M.2 và SATAe (SATA Express), đã định nghĩa một đầu cắm riêng biệt để hỗ trợ các thiết bị SATA hoặc PCIe. LSI SF3700 được công bố gần đây là một ví dụ của bộ điều khiển SSD, hỗ trợ cả hai giao tiếp này trên một bảng mạch M.2.


Thuật ngữ "x1, x2, x4, x16" có ý nghĩa gì khi đề cập đến giao tiếp PCIe?


Thuật ngữ "x1, x2, x4, x16" có ý nghĩa gì khi đề cập đến giao tiếp PCIe?

Jeremy: Những con số này là số làn PCIe trong kết nối đó. Host hoặc thiết bị (SSD) có thể giới hạn số làn được sử dụng. Tốc độ tối đa theo lý thuyết của kết nối (không bao gồm giao thức overhead - tạm dịch là dữ liệu điều khiển) bằng số làn nhân với tốc độ của mỗi làn.


Giao thức overhead là gì?


PCIe Gen 3 có cơ chế mã hóa truyền dữ liệu hiệu quả hơn với 128b/132b (overhead 3%) thay vì 8b/10b (overhead 20%) của PCIe Gen 2, giúp tăng tốc độ truyền dữ liệu lên đến 21%.

Jeremy: PCIe, cũng như nhiều giao tiếp bus khác (chẳng hạn như SuperSpeed USB 3.0 ở hình trên), sử dụng cơ chế mã hóa đường truyền - một lượng bit dữ liệu nhất định (8b) được tượng trưng bằng một lượng bit lớn hơn đôi chút (10b), gọi là symbol. Các bit được thêm vào trong symbol tạo thành overhead siêu dữ liệu, cần phải có để quản lý việc truyền dữ liệu của người dùng. PCIe Gen 3 có cơ chế mã hóa truyền dữ liệu hiệu quả hơn với 128b/132b (overhead 3%) thay vì 8b/10b (overhead 20%) của PCIe Gen 2, giúp tăng tốc độ truyền dữ liệu lên đến 21%.


Đặc tính kỹ thuật của PCIe 2.0 và PCIe 3.0 được định nghĩa thế nào và điều gì khiến người dùng cuối thực sự quan tâm?


Mặc dù mỗi làn (x1) PCIe Gen 3 nhanh hơn PCIe Gen 2, tương ứng 8 Gb/s (gần bằng 1 GB/s) so với 5 Gb/s (500 MB/s), nhưng nhiều làn có thể được kết hợp lại để tăng hiệu năng ở cả hai phiên bản.

Jeremy: Mặc dù mỗi làn (x1) PCIe Gen 3 nhanh hơn PCIe Gen 2, tương ứng 8 Gb/s (gần bằng 1 GB/s) so với 5 Gb/s (500 MB/s), nhưng nhiều làn có thể được kết hợp lại để tăng hiệu năng ở cả hai phiên bản. Những thay đổi có ảnh hưởng lớn nhất với người tiêu dùng là tốc độ cao hơn. Ví dụ, các SSD tiêu dùng hiện nay có IOPS đọc ngẫu nhiên đạt 150.000 với kích thước truyền dữ liệu 4KB. Quy đổi ra* là khoảng 600 MB/s, chưa bằng tốc độ truyền của PCIe Gen 2 x2, do đó người tiêu dùng sẽ ít thấy được lợi ích mà giải pháp PCIe Gen 3 mang lại so với PCIe Gen 2. Hiệu năng tối đa của các thiết bị PCIe Gen 2 x4 và PCIe Gen 3 x2 gần bằng nhau, bởi cơ chế mã hóa đường truyền khác nhau như đã đề cập trước đó.


Có hay không những tính năng bắt buộc phải được hỗ trợ trong các đặc tính kỹ thuật này?


Người mua cần phải nhận biết tốc độ thực tế của bất kỳ giải pháp PCIe nào.

Jeremy: Có, nhưng hầu hết tính năng này chỉ ảnh hưởng nhỏ đến hiệu năng, nên phần lớn người dùng không quan tâm các đặc tính kỹ thuật. Điều quan trọng nên nhớ là tốc độ PCIe mà tôi vừa nêu được định nghĩa là các giá trị tối đa, và đặc tính kỹ thuật không đòi hỏi tốc độ tối thiểu. Điều này có nghĩa là một giải pháp PCIe Gen 3 có thể chỉ hỗ trợ tối đa 5 Gb/s, nhưng vẫn được xem là giải pháp PCIe Gen 3 nếu nó đáp ứng được các đặc tính kỹ thuật cần thiết. Do đó người mua cần phải nhận biết tốc độ thực tế của bất kỳ giải pháp PCIe nào.


SSD PCIe Gen 3 có nhanh hơn SSD PCIe Gen 2?


Ngoài giao tiếp PCIe đầu cuối, hiện tượng nghẽn cổ chai sẽ làm hạn chế hiệu năng của nhiều SSD.

Jeremy: Không cần thiết. Ví dụ, một SSD PCIe Gen 2 x4 có khả năng đạt tốc độ cao hơn một SSD PCIe Gen 3 x1. Tuy nhiên, ngoài giao tiếp PCIe đầu-cuối, hiện tượng nghẽn cổ chai sẽ làm hạn chế hiệu năng của nhiều SSD. Các điểm nghẽn khác gồm băng thông của bộ nhớ flash, tốc độ xử lý / thông lượng của bộ điều khiển, nguồn điện hoặc giới hạn nhiệt độ của ổ đĩa và môi trường của nó, cũng như khả năng thoát nhiệt khỏi môi trường đó. Tất cả các yếu tố này có thể, và thường, ngăn cản giao tiếp PCIe đạt hiệu năng tối đa và trạng thái ổn định.


Card PCIe hiện có kích cỡ như thế nào?


SSD PCIe có nhiều kích cỡ, thông dụng nhất là "half-height, half-length". Nhưng sự xuất hiện của một kích cỡ mới, rất nhỏ gọn M.2 đang trở nên phổ biến, do nhu cầu phát triển của máy tính tiêu dùng ngày càng nhỏ hơn.

Jeremy: Card PCIe thường được gọi là sản phẩm plug-in, như ổ đĩa SSD, card đồ họa và HBA (Host Bus Adapter). SSD PCIe có nhiều kích cỡ, thông dụng nhất là "half-height, half-length" (chiều cao và chiều dài giảm đi một nửa so với tiêu chuẩn full-height, full-length hay còn gọi là full-size). Nhưng sự xuất hiện của một kích cỡ mới, rất nhỏ gọn M.2 đang trở nên phổ biến, do nhu cầu phát triển của máy tính tiêu dùng ngày càng nhỏ hơn. Có những cỡ PCIe khác dành cho ổ cứng truyền thống, như SFF-8639, một ổ cứng 2.5 inch sử dụng 4 làn PCIe và có thể cắm nóng; hơn nữa, socket của nó tương thích với giao tiếp SAS và SATA. Kích cỡ SATAe 2.5 inch được áp dụng không nhiều, nhưng có thể được thúc đẩy nhờ sự xuất hiện của các tính năng mới như SRIS (Separate Refclk Independent SSC), cho phép sử dụng những sợi cáp kết nối giá thành thấp giữa thiết bị và host.


Tất cả card M.2 đều giống nhau phải không?


Tất cả card SSD M.2 có độ rộng 22 mm, nhưng đặc tính kỹ thuật cho phép nhiều độ dài khác nhau (30, 42, 60, 80 và 110 mm).

Jeremy: Không. Tất cả card SSD M.2 có độ rộng 22mm (trong khi ở một số card WAN, con số này là 30mm), nhưng đặc tính kỹ thuật cho phép nhiều độ dài khác nhau (30, 42, 60, 80 và 110mm). Hơn nữa, những card này có thể có một mặt hoặc hai mặt, tạo nên sự khác biệt về độ dày của các sản phẩm. Ngoài ra, chúng tương thích với hai loại socket khác nhau: socket 2 và socket 3. Các SSD tương thích với cả hai socket (key B & M), hoặc chỉ socket 2 (key B), có thể kết nối hai làn (x2); trong khi các SSD tương thích với socket 3 (key M) có thể kết nối lên đến 4 làn (x4).


Các SSD tương thích với cả hai socket (key B & M), hoặc chỉ socket 2 (key B), có thể kết nối hai làn (x2); trong khi các SSD tương thích với socket 3 (key M) có thể kết nối lên đến 4 làn (x4).
 

* Công thức quy đổi IOPS ra MB/s và ngược lại, MB/s ra IOPS:

  • IOPS = (MB/s thông lượng / KB vào ra) x 1.024

  • MB/s = (IOPS x KB vào ra) / 1.024


Theo nội dung trên, ta có IOPS 150.000 và kích thước dữ liệu vào ra 4KB, quy đổi ra MB/s sẽ là: MB/s = (IOPS x KB vào ra) / 1.024 = (150.000 x 4) / 1.024 = 585,9375


Như vậy, 150.000 IOPS sẽ gần bằng 600 MB/s.


bottom of page