Front-side bus

**Bus mặt trước** (**front-side bus** - **FSB**) là một giao diện truyền thông máy tính (bus) thường được sử dụng trong các máy tính dựa trên chip Intel trong những năm 1990 và 2000. Bus EV6 phục vụ cùng chức năng cho các CPU AMD cạnh tranh. Cả hai thường truyền dữ liệu giữa đơn vị xử lý trung tâm (CPU) và một trung tâm điều khiển bộ nhớ, được gọi là cầu bắc.

Tùy thuộc vào cách triển khai, một số máy tính cũng có thể có một bus mặt sau kết nối CPU với bộ nhớ đệm. Bus này và bộ nhớ đệm kết nối với nó nhanh hơn so với việc truy cập bộ nhớ hệ thống (hoặc RAM) thông qua bus mặt trước. Tốc độ của bus mặt trước thường được sử dụng như một thước đo quan trọng về hiệu suất của máy tính.

Kiến trúc bus mặt trước nguyên bản đã được thay thế bởi HyperTransport, Intel QuickPath Interconnect và Direct Media Interface, tiếp theo là Intel Ultra Path Interconnect và Infinity Fabric của AMD.

## Lịch sử
Thuật ngữ này được Tập đoàn Intel đưa vào sử dụng vào khoảng thời gian các sản phẩm Pentium Pro và Pentium II được công bố, vào những năm 1990.

"Mặt trước" (Front side) đề cập đến giao diện bên ngoài từ bộ xử lý đến phần còn lại của hệ thống máy tính, trái ngược với mặt sau (back side), nơi bus mặt sau kết nối bộ nhớ đệm (và có khả năng là các CPU khác).

Bus mặt trước (FSB) chủ yếu được sử dụng trên các bo mạch chủ liên quan đến PC (bao gồm máy tính cá nhân và máy chủ). Chúng hiếm khi được sử dụng trong các hệ thống nhúng hoặc các máy tính nhỏ tương tự. Thiết kế FSB là một sự cải thiện hiệu suất so với các thiết kế bus hệ thống đơn lẻ của các thập kỷ trước, nhưng các bus mặt trước này đôi khi vẫn được gọi là "bus hệ thống".

Các bus mặt trước thường kết nối CPU và phần còn lại của phần cứng thông qua một chipset, mà Intel đã triển khai dưới dạng cầu bắc và cầu nam. Các bus khác như Kết nối thành phần ngoại vi (PCI), Cổng đồ họa tăng tốc (AGP) và bus bộ nhớ đều kết nối với chipset để dữ liệu lưu thông giữa các thiết bị được kết nối. Các bus hệ thống phụ này thường chạy ở tốc độ bắt nguồn từ xung nhịp bus mặt trước, nhưng không nhất thiết phải đồng bộ hóa với nó.

Để đáp lại sáng kiến Torrenza của AMD, Intel đã mở socket CPU FSB của mình cho các thiết bị của bên thứ ba.
Trước thông báo này, được đưa ra vào mùa xuân năm 2007 tại Intel Developer Forum ở Bắc Kinh, Intel đã bảo vệ rất nghiêm ngặt những ai có quyền truy cập vào FSB, chỉ cho phép các bộ xử lý Intel trong socket CPU. Ví dụ đầu tiên là các bộ đồng xử lý mảng cổng lập trình được dạng trường (FPGA), kết quả của sự hợp tác giữa Intel-Xilinx-Nallatech và Intel-Altera-XtremeData (được xuất xưởng vào năm 2008).

## Tốc độ của các thành phần liên quan

### CPU

Tần số mà bộ xử lý (CPU) hoạt động được xác định bằng cách áp dụng một hệ số nhân xung nhịp vào tốc độ bus mặt trước (FSB) trong một số trường hợp. Ví dụ, một bộ xử lý chạy ở tốc độ 3200 MHz có thể đang sử dụng FSB 400&nbsp;MHz. Điều này có nghĩa là có một thiết lập hệ số nhân xung nhịp nội bộ (còn được gọi là tỷ lệ bus/nhân) là 8. Nghĩa là, CPU được thiết lập để chạy ở tần số gấp 8 lần tần số của bus mặt trước: 400&nbsp;MHz × 8 = 3200&nbsp;MHz. Các tốc độ CPU khác nhau đạt được bằng cách thay đổi tần số FSB hoặc hệ số nhân CPU, điều này được gọi là ép xung hoặc hạ xung.

### Bộ nhớ

Việc thiết lập tốc độ FSB liên quan trực tiếp đến cấp tốc độ của bộ nhớ mà hệ thống phải sử dụng. Bus bộ nhớ kết nối cầu bắc và RAM, giống như bus mặt trước kết nối CPU và cầu bắc. Thông thường, hai bus này phải hoạt động ở cùng một tần số. Việc tăng bus mặt trước lên 450&nbsp;MHz trong hầu hết các trường hợp cũng có nghĩa là chạy bộ nhớ ở mức 450&nbsp;MHz.

Trong các hệ thống mới hơn, có thể thấy các tỷ lệ bộ nhớ là "4:5" và tương tự. Bộ nhớ sẽ chạy nhanh gấp 5/4 lần FSB trong tình huống này, nghĩa là bus 400&nbsp;MHz có thể chạy với bộ nhớ ở mức 500&nbsp;MHz. Điều này thường được gọi là một hệ thống 'bất đồng bộ'. Do sự khác biệt trong kiến trúc CPU và hệ thống, hiệu suất tổng thể của hệ thống có thể thay đổi theo những cách không mong muốn với các tỷ lệ FSB-trên-bộ nhớ khác nhau.

Trong các ứng dụng hình ảnh, âm thanh, video, chơi game, tổng hợp FPGA và các ứng dụng khoa học thực hiện một lượng nhỏ công việc trên mỗi phần tử của một tập dữ liệu lớn, tốc độ FSB trở thành một vấn đề hiệu suất chính. Một FSB chậm sẽ khiến CPU mất một lượng thời gian đáng kể để chờ dữ liệu đến từ bộ nhớ hệ thống. Tuy nhiên, nếu các tính toán liên quan đến mỗi phần tử phức tạp hơn, bộ xử lý sẽ mất nhiều thời gian hơn để thực hiện chúng; do đó, FSB sẽ có thể theo kịp vì tốc độ truy cập bộ nhớ được giảm bớt.

### Bus ngoại vi

Tương tự như bus bộ nhớ, các bus PCI và AGP cũng có thể được chạy bất đồng bộ với bus mặt trước. Trong các hệ thống cũ, các bus này được vận hành ở một phần cố định của tần số bus mặt trước. Phần này được thiết lập bởi BIOS. Trong các hệ thống mới hơn, các bus ngoại vi PCI, AGP và PCI Express thường nhận tín hiệu xung nhịp riêng của chúng, điều này loại bỏ sự phụ thuộc của chúng vào bus mặt trước để định thời.

### Ép xung

Ép xung là việc làm cho các thành phần máy tính hoạt động vượt quá mức hiệu suất mặc định của chúng bằng cách thao tác các tần số mà thành phần đó được thiết lập để chạy, và khi cần thiết, sửa đổi điện áp gửi đến thành phần để cho phép nó hoạt động ở các tần số cao hơn này với độ ổn định cao hơn.

Nhiều bo mạch chủ cho phép người dùng thiết lập thủ công hệ số nhân xung nhịp và cài đặt FSB bằng cách thay đổi các cầu nhảy hoặc cài đặt BIOS. Hầu hết các nhà sản xuất CPU hiện nay đều "khóa" một thiết lập hệ số nhân định sẵn vào chip. Có thể mở khóa một số CPU bị khóa; ví dụ, một số bộ xử lý AMD Athlon có thể được mở khóa bằng cách kết nối các tiếp điểm điện qua các điểm trên bề mặt CPU. Một số bộ xử lý khác từ AMD và Intel được mở khóa ngay từ nhà máy và được người dùng cuối cũng như các nhà bán lẻ dán nhãn là bộ xử lý "dành cho người đam mê" vì tính năng này. Đối với tất cả các bộ xử lý, việc tăng tốc độ FSB có thể được thực hiện để tăng tốc độ xử lý bằng cách giảm độ trễ giữa CPU và cầu bắc.

Việc thực hành này đẩy các thành phần vượt quá thông số kỹ thuật của chúng và có thể gây ra hành vi thất thường, quá nhiệt hoặc hỏng hóc sớm. Ngay cả khi máy tính có vẻ chạy bình thường, các vấn đề có thể xuất hiện dưới tải nặng. Hầu hết các PC được mua từ các nhà bán lẻ hoặc nhà sản xuất, chẳng hạn như Hewlett-Packard hoặc Dell, không cho phép người dùng thay đổi hệ số nhân hoặc cài đặt FSB do khả năng xảy ra hành vi thất thường hoặc hỏng hóc. Các bo mạch chủ được mua riêng để xây dựng một máy tính tùy chỉnh có nhiều khả năng cho phép người dùng chỉnh sửa hệ số nhân và cài đặt FSB trong BIOS của PC.

## Sự tiến hóa

Bus mặt trước có ưu điểm là tính linh hoạt cao và chi phí thấp khi nó được thiết kế lần đầu tiên. Các bộ đa xử lý đối xứng đơn giản đặt một số CPU trên một FSB dùng chung, mặc dù hiệu suất không thể mở rộng tuyến tính do các  về băng thông.

Bus mặt trước đã được sử dụng trong tất cả các mẫu bộ xử lý Intel Atom, Celeron, Pentium, Core 2 và Xeon cho đến khoảng năm 2008 và đã bị loại bỏ vào năm 2009. Ban đầu, bus này là điểm kết nối trung tâm cho tất cả các thiết bị hệ thống và CPU.

Tiềm năng của một CPU nhanh hơn sẽ bị lãng phí nếu nó không thể lấy các lệnh và dữ liệu nhanh như khi nó thực thi chúng. CPU có thể dành thời gian đáng kể để nhàn rỗi trong khi chờ đọc hoặc ghi dữ liệu trong bộ nhớ chính, và do đó các bộ xử lý hiệu suất cao yêu cầu băng thông cao và truy cập bộ nhớ với độ trễ thấp. Bus mặt trước đã bị AMD chỉ trích là một công nghệ cũ và chậm chạp làm hạn chế hiệu suất hệ thống.

Các thiết kế hiện đại hơn sử dụng các kết nối điểm-đến-điểm và nối tiếp như HyperTransport của AMD và DMI 2.0 hoặc QuickPath Interconnect (QPI) của Intel. Các triển khai này loại bỏ cầu bắc truyền thống để ủng hộ một liên kết trực tiếp từ CPU đến bộ nhớ hệ thống, các thiết bị ngoại vi tốc độ cao và Trung tâm điều khiển nền tảng, cầu nam hoặc bộ điều khiển I/O.

Trong một kiến trúc truyền thống, bus mặt trước đóng vai trò là liên kết dữ liệu trực tiếp giữa CPU và tất cả các thiết bị khác trong hệ thống, bao gồm cả bộ nhớ chính. Trong các hệ thống dựa trên HyperTransport và QPI, bộ nhớ hệ thống được truy cập độc lập bằng một bộ điều khiển bộ nhớ được tích hợp vào CPU, để lại băng thông trên liên kết HyperTransport hoặc QPI cho các mục đích sử dụng khác. Điều này làm tăng độ phức tạp của thiết kế CPU nhưng mang lại thông lượng lớn hơn cũng như khả năng mở rộng vượt trội trong các hệ thống đa bộ xử lý.

## Tốc độ truyền tải

Băng thông hoặc thông lượng lý thuyết tối đa của bus mặt trước được xác định bằng tích của độ rộng đường dẫn dữ liệu, tần số xung nhịp của nó (chu kỳ mỗi giây) và số lần truyền dữ liệu mà nó thực hiện trong mỗi chu kỳ xung nhịp. Ví dụ, một FSB rộng 64-bit (8-byte) hoạt động ở tần số 100&nbsp;MHz thực hiện 4 lần truyền mỗi chu kỳ có băng thông là 3200 megabyte mỗi giây (MB/s):

:8 byte/lần truyền × 100 MHz × 4 lần truyền/chu kỳ = 3200 MB/s

Số lần truyền trên mỗi chu kỳ xung nhịp phụ thuộc vào công nghệ được sử dụng. Ví dụ, GTL+ thực hiện 1 lần truyền/chu kỳ, EV6 thực hiện 2 lần truyền/chu kỳ, và AGTL+ thực hiện 4 lần truyền/chu kỳ. Intel gọi kỹ thuật bốn lần truyền mỗi chu kỳ là Quad Pumping.

Nhiều nhà sản xuất công bố tần số của bus mặt trước tính bằng MHz, nhưng các tài liệu tiếp thị thường liệt kê tốc độ truyền tín hiệu hiệu quả lý thuyết (thường được gọi là megatransfer mỗi giây hoặc MT/s). Ví dụ, nếu một bo mạch chủ (hoặc bộ xử lý) có bus được thiết lập ở mức 200&nbsp;MHz và thực hiện 4 lần truyền mỗi chu kỳ xung nhịp, FSB đó được xếp hạng là 800 MT/s.

Thông số kỹ thuật của một số thế hệ bộ xử lý phổ biến được chỉ ra dưới đây.

### Bộ xử lý Intel

### Bộ xử lý AMD

## Tham khảo