Tìm hiểu về công nghệ HyperTransport

Russell Hitchcock

Quản trị mạng – Trong bài này chúng tôi sẽ giới thiệu cho các bạn về một giải pháp nhằm tránh ảnh hưởng đến hiệu suất hệ thống liên quan đến khả năng truyền tải dữ liệu.

Giới thiệu

Nếu làm một thống kê bạn sẽ nhận thấy cứ sau khoảng thời gian 18 tháng thì hiệu suất của bộ vi xử lý lại tăng xấp xỉ gấp đôi. Đó chính kết hợp với các công nghệ đa lõi giúp cho việc truyền tải dữ liệu cao hơn. Sự truyền tải dữ liệu này cần xảy ra giữa thiết bị vào ra (I/O), bộ nhớ và giữa các bộ vi xử lý. Nghiên cứu trong nhiều máy tính hiện nay cho thấy, khả năng truyền tải dữ liệu đôi khi cũng là một hệ số hạn chế về hiệu suất tổng thể đối với hệ thống. Chính vì vậy trong bài viết này, chúng tôi sẽ đề cập đến một giải pháp để khắc phục vấn đề đó.

Giải pháp cho việc truyền tải dữ liệu cao hơn được gọi mà trong bài muốn giới thiệu đó là HyperTransport. Hầu hết người dùng sẽ nhận ra điều đó từ các sản phẩm AMD. Trong thực tế, HyperTransport được dự định bởi AMD (nhằm trợ giúp một số đối tác trong lĩnh vực này) mặc dù vậy hiện nó lại được quản lý và được xúc tiến bởi một nhóm độc lập có tên gọi HyperTransport Consortium.

HyperTransport là một hệ thống kết nối điểm – điểm, công nghệ tập trung vào vấn đề truyền thông giữa chip với chip (Chip-to-chip). Ngay từ đầu, nó đã được thiết kế nhằm cho phép truyền dữ liệu với tốc độ cao và góc trễ thấp. Một điều rất cần thiết trong truyền thông ngày nay và trong tương lai khi tốc độ của CPU ngày càng tăng. Bên cạnh đó sự truyền thông Chip-to-chip yêu cầu góc trễ thấp và hiệu suất cao.

Công nghệ kết nối điểm – điểm ngược lại với hệ thống bus, mang đến nhiều ưu điểm cho việc truyền thông chip-to-chip. Một trong số các ưu điểm đó là các tín hiệu truyền thông không yêu cầu cách thức truyền multiplex. Bên cạnh đó các tín hiệu truyền thông này còn tránh được những hiện tượng xuyên nhiễu và các vấn đề tạp âm, có thể được truyền tải đi với mức công suất thấp. Tất cả các điều đó kết hợp lại là cho quá trình truyền tải dữ liệu được nhanh hơn và rõ ràng hơn.

Một ưu điểm khác của công nghệ point-to-point là nó không phải chịu cảnh suy biến hiệu suất như các Bus PCI mắc phải, nguyên nhân bắt nguồn từ số lượng thiết bị được kết nối tăng. HyperTransport chỉ sử dụng một kết nối trực tiếp giữa hai thiết bị. Chính vì thế mà hiệu suất được bảo đảm khi có nhiều thiết bị được kết nối.

Gói dữ liệu

HyperTransport được dựa trên gói dữ liệu. Kiểu truyền tải này cho phép HyperTransport có thể thực hiện vai trò kết nối cho nhiều mục đích khác nhau. Công nghệ này có thể được sử dụng để kết nối các lõi xử lý, RAM và CPU, hoặc thậm chí cả các thiết bị nhớ ngoài. Do nó là một hình thức truyền tải dựa trên gói dữ liệu nên phần cứng được kết nối tạo thành một mang. Khi đó trong trường hợp một super-computer có một mạng các bộ vi xử lý được kết nối bằng công nghệ point-to-point là rất có lợi.

Overhead của gói thấp

Giống như hầu hết các mạng, mạng HyperTransport cũng có những nét đặc trưng về hiệu suất. HyperTransport cho thấy các chỉ số rất cao khi đem so sánh với các công nghệ kết nối khác như PCI Express chẳng hạn. Một lý do cho điều đó là số lượng dữ liệu trên các overhead của nó rất nhỏ.

HyperTransport yêu cầu một gói điều khiển yêu cầu đọc 8 byte cho các hoạt động đọc. Với các hoạt động ghi, HyperTransport sử dụng một gói điều khiển ghi 8 byte và một gói đáp trả đọc 4 byte. Đó chính là tất cả phần dữ liệu trong overhead của nó; 8 byte cho hoạt động đọc, 12 byte cho hoạt động ghi. Trong khi đó PCI Express yêu cầu 20 đến 24 byte của overhead cho các hoạt động đọc và ghi của nó. Điều này đã trả lời được lý do đạt hiệu suất cao hơn của HyperTransport.

Tuy nhiên tất cả đều không phải là hoàn hảo, đối với HyperTransport cũng vậy. Chúng ta cần phải đánh giá đúng công nghệ PCI Express ở đây. Với HyperTransport, gói dữ liệu theo sau các gói điều khiển chỉ có 4 đến 64 byte. Trong khi đó gói dữ liệu cho PCI Express có thể lên đến 4096 byte. Chính vì vậy trong một số trường hợp, PCI Express có thể cho hiệu suất sử dụng overhead trên dữ liệu truyền tải thấp hơn so với HyperTransport. Tuy nhiên trong trường hợp các hoạt động đọc và ghi của bạn chỉ yêu cấu đến các gói dữ liệu nhỏ thì việc sử dụng HyperTransport sẽ mang lại đáng kể về hiệu suất cho bạn.


Hình 1: Sơ đồ về overhead của HyperTransport và PCI Express

Băng thông

Ban đầu HyperTransport được thiết kế để mang lại hiệu suất băng thông cao hơn so với các công nghệ cạnh tranh khác. Một cách mà nó thực hiện để mang lại điều đó là tính năng Double Data Rate (DDR). Thông thường, khi dữ liệu số được truyền tải giữa hai điểm, nó sẽ được đọc với các mức cao hoặc thấp tương ứng là 1 hoặc 0. Dữ liệu này được đọc bất cứ khi nào xung clock tạo ra một tín hiệu cao. Với tính năng DDR, dữ liệu có thể được đọc ở cả sườn lên và sườn xuống của tín hiệu clock. Điều đó có nghĩa rằng trong một chu kỳ clock, dữ liệu có thể được đọc hai lần, từ đó cho tốc độ truyền tải dữ liệu tăng gấp đôi.

Góc trễ thấp

Góc trễ thấp là tham số thiết kế được tập trung trong công nghệ HyperTransport ngay từ khi mới bắt đầu. HyperTransport có thể đạt được điều này bằng cách thêm một đường tín hiệu clock trong một tập 8 đường bit dữ liệu. Cách thực hiện này cho kết quả rất đáng kể so với các công nghệ khác như PCI Express, công nghệ PCI Express chỉ có các clock được nhúng trong một lược đồ mã hóa và giải mã phức tạp ở cả hai đầu của một liên kết dữ liệu. Phương pháp được sử dụng HyperTransport cho thấy giảm được độ trễ khi so sánh với các công nghệ khác vì thiết bị đang truyền tải dữ liệu không cần phải tốn thời gian cho việc mã hóa clock và thiết bị nhận không cần tốn thời gian vào việc giải mã clock.

Chèn yêu cầu ưu tiên

Một khía cạnh khác giúp HyperTransport tăng được hiệu suất của nó là Priority Request Interleaving (PRI). Đây là một ý tưởng khá mới mẻ và mang lại nhiều hiệu quả. Hình 2 bên dưới thể hiện cách PRI làm việc như thế nào. Vấn đề mà PRI giải quyết ở đây là: Khi CPU đang trong chuỗi truyền thông dài với thiết bị ngoại vi B, trong khi đó thiết bị ngoại vi A lại cần truyền thông với CPU, thông thường thiết bị A sẽ phải đợi cho tới khi thiết bị B kết thúc quá trình truyền thông để chuyển sang truyền thông với nó; tuy nhiên điều này có thể mất khá nhiều thời gian và rõ ràng sẽ làm giảm hiệu suất tổng thể đối với hệ thống.

Công nghệ PRI cho phép thiết bị ngoại vi A có thể chèn một gói PRI vào luồng dữ liệu của thiết bị B. Gói PRI này được đọc bởi một CPU khác mà sau đó có thể khởi tạo chuỗi truyền thông với thiết bị A trên một kênh liên kết khác.


Hình 2: Sơ đồ giải thích PRI.

Công nghệ HyperTransport đã được thiết kế ngay từ đầu để cung cấp sự kết nối ở mức độ rộng, cho phép tốc độ truyền thông cao với góc trễ thấp, băng thông cao, khả năng mở rộng cao. Có thể nói nó dự án đã thực hiện được những mục tiêu đề ra. HyperTransport được sử dụng trong nhiều ứng dụng, từ điện tử dân dụng, máy tính gia đình, các thiết bị mạng mức doanh nghiệp, thiết bị mạng cao cấp và thậm chí cả các siêu máy tính.

Tuy vậy không phải tất cả các ứng dụng đều sử dụng công nghệ HyperTransport theo cùng một cách. Một số bộ vi xử lý có công nghệ HyperTransport đích thực. Các bộ vi xử lý như vậy được cung cấp từ AMD, Transmetta, Broadcom, và PMC Sierra. Một số các bộ vi xử lý khác lại chỉ sử dụng HyperTransport như một bus hiệu suất cao để truyền tải dữ liệu từ PCI, PCI Express, USB và các công nghệ khác thông qua hệ thống.

Kết luận

Mặc dù HyperTransport là một công nghệ khá thú vị với nhiều ưu điểm về mặt hiệu suất nhưng rõ ràng chúng ta không thể phủ nhận các công nghệ khác. Các kỹ sư cần phải cân nhắc kỹ những nhu cầu của họ một cách cẩn thận để chọn ra công nghệ nào phù hợp cho ứng dụng cụ thể . Trong phần tiếp theo, chúng tôi sẽ giới thiệu chi tiết cho các bạn về một số công nghệ kết nối khác.

Thứ Ba, 21/04/2009 10:17
32 👨 4.483
0 Bình luận
Sắp xếp theo
    ❖ Kiến thức cơ bản