Tốc độ thực tế của SATA 3 là bao nhiêu?


47

Google cho biết họ đang chạy ở tốc độ 6Gb / s. Thông lượng là 600MB / s. 600MB / s bằng 4,8Gb / s.

Điều này có nghĩa là băng thông là 6Gb / s nhưng thông lượng thực tế là 4,8Gb / s?


1
Đó là sự khác biệt trong lý thuyết so với thế giới thực. Thông số kỹ thuật đạt được trong các phòng thí nghiệm chứ không phải trên PC của người tiêu dùng.
Moab

11
@Moab Không, đó không phải là lý do. Câu trả lời của tôi, và mùn cưa, giải thích lý do thực sự.
MariusMatutiae

@MariusMatutiae, CÓ, "thông lượng sẽ được định nghĩa là tốc độ dữ liệu thực tế trung bình bạn có thể đạt được trong thực tế thực tế." Tôi đã nói khá nhiều.
Moab

6
@Moab: Không, 600MB / s là giới hạn trên lý thuyết của những gì bạn có thể đạt được, theo cùng nghĩa trong đó 6Gb / s là mức tối đa tuyệt đối. Suy giảm hiệu suất do việc sử dụng các phần cứng thực tế và dữ liệu thực tế không nằm trong một trong hai dự toán.
MariusMatutiae

Câu trả lời:


81

Điều này có nghĩa là băng thông là 6Gb / s nhưng thông lượng thực tế là 4,8Gb / s?

Có nó làm. Thật thú vị để hiểu tại sao.

Mặc dù dữ liệu thực sự được gửi với tốc độ 6Gb / giây, nó được mã hóa để chống lại hai lỗi phổ biến trong viễn thông, DC biasClock Recovery . Điều này thường được thực hiện bằng cách sử dụng một thuật toán mã hóa cụ thể được gọi là mã hóa 8b / 10b . Đây không phải là thuật toán mã hóa duy nhất được phát minh cho đến cuối cùng, (ví dụ, cũng có một mã hóa Manchester), nhưng nó đã trở thành tiêu chuẩn thực tế cho việc truyền dữ liệu SATA.

Trong mã hóa 8b / 10b (được đặt tên thích hợp), tám bit tín hiệu được thay thế bằng 10 bit (tín hiệu + mã). Điều này có nghĩa là, trong số 6Gb, kênh sẽ gửi trong một giây, chỉ 8/10 = 4/5 là tín hiệu. 4/5 của 6Gb là 4,8Gb, lần lượt bằng 600 MB. Đây là những gì làm suy giảm kênh 6Gb / s thành một kênh đơn thuần (??) 600MB / s.

Những lợi thế có được bằng cách bù cho độ lệch DC và cho phép Khôi phục đồng hồ nhiều hơn bù cho sự xuống cấp nhẹ này.


2
Sử dụng " chỉ 600MB / s" là khá sai lệch. Tôi đã hoàn toàn bối rối cho đến khi tôi nhớ đó là 6 bit giga . Chúng ta đều biết rằng SATA không phải là 6 gigabyte mỗi giây, mà là 6 giga bit mỗi giây
Cole Johnson

5
@ColeJohnson Bạn đang bối rối: Tôi đã nói chính xác rằng SATA là 6Gb / s = 6 Gigabits mỗi giây, nhưng do sự hiện diện của mã hóa, chỉ sử dụng 600 MB / s = 600 Mega Byte mỗi giây.
MariusMatutiae

Bạn có thể mô tả các lợi ích của việc tránh sai lệch DC, cũng như trích xuất đồng hồ (trái ngược với các cặp vi sai với đồng hồ riêng biệt) không?
ζ--

4
@hexafraction Có, nếu bạn hỏi một câu hỏi mới.
MariusMatutiae

1
@DarioP Tôi có cảm giác nó được để lại như một bài tập cho người đọc.
Mindwin

14

Điều này có nghĩa là băng thông là 6Gb / s nhưng thông lượng thực tế là 4.687Gb / s?

Không, thông lượng sẽ được định nghĩa là tốc độ dữ liệu thực tế trung bình bạn có thể đạt được trong thực tế.

600 MB mỗi giây vẫn là một số chuyển thô, nhưng là tốc độ có thể sử dụng được do mã hóa trên bus SATA để đạt được cân bằng DC và mức hoạt động tín hiệu tối thiểu. Cứ tám bit dữ liệu được mở rộng thành 10 bit để truyền trên cáp SATA. Vì vậy, tốc độ dây 6,00Gbit mỗi giây có hiệu quả giảm xuống 4,8Gbit mỗi giây cho dữ liệu thực tế.

Xem bài viết trên wikipedia về 8b / 10b_encoding để biết chi tiết về chủ đề đó. Lưu ý rằng tất cả các phiên bản của SATA, tức là kể từ 1.0, đã sử dụng mã hóa 8b / 10b.


1
Tôi sẽ phân biệt như một cái gì đó như tốc độ tín hiệu = 6Gbit / s, tốc độ dữ liệu = 4,8Gbit / s, thông lượng = bất cứ điều gì bạn nhận được từ một ổ đĩa trong thế giới thực.
hobbs

1

Một cái gì đó tương tự xảy ra với mạng. Do chi phí giao thức / 10 bit vật lý cho 8 bit dữ liệu thuần túy, hóa ra tỷ lệ 1:10 thay vì 1: 8 khi dịch G hoặc Mbps sang G hoặc MBps thực.

Vậy Sata 3 là 6Gbps? Yêu cầu tối đa 600MB / s. Ethernet ở tốc độ 100Mb / giây? 10MB / s. Và như vậy.


0

Hãy cẩn thận khi đọc "Bps" (BYTES mỗi giây) so với "bps" (bit trên giây). Bps thường được hiển thị 1/8 giá trị của bps.

Sau đó, mọi người có sử dụng thập phân M và G so với nhị phân M và G cho megabyte và gigabyte hay không.

Trong toán học thập phân thông thường, 1 MB / s sẽ là 1.000.000 Byte / giây, nhưng nếu tác giả của thông số kỹ thuật đang sử dụng toán học nhị phân / máy tính, thì nó sẽ thay đổi thành 1.048.576 Byte / giây.

Để biết thêm chi tiết về các thông số kỹ thuật khác nhau của SATA, hãy truy cập trực tiếp vào chủ sở hữu của thông số kỹ thuật tại http://www.sata-io.org/


1
Điều này giải thích tại sao câu hỏi ban đầu của OP nói rằng 600MB / s bằng 4.687Gb / s, trong khi thực tế nó bằng 4,8 Gb / s. OP đã chuyển đổi từ mebibytes mỗi giây thành gibibits mỗi giây, thay vì từ megabyte mỗi giây thành gigabits mỗi giây. Không thực sự trả lời câu hỏi mặc dù.
Ajedi32
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.