Q-Bus

Q-bus, còn được gọi là LSI-11 Bus, là một trong số các công nghệ bus được sử dụng với các hệ thống máy tính PDP và MicroVAX trước đây được sản xuất bởi Digital Equipment Corporation tại Maynard, Massachusetts.

Q-bus là một phiên bản ít tốn kém hơn của Unibus, sử dụng kỹ thuật ghép kênh (multiplexing) để các tín hiệu địa chỉ và dữ liệu chia sẻ cùng một đường dây. Điều này cho phép triển khai cùng một chức năng cơ bản nhưng với kích thước vật lý nhỏ hơn và chi phí thấp hơn.

Theo thời gian, phạm vi địa chỉ vật lý của Q-bus đã được mở rộng từ 16 lên 18 và sau đó là 22 bit. Các chế độ truyền khối (block transfer) cũng được thêm vào Q-bus.

Các tính năng chính của Q-bus

Giống như Unibus trước đó, Q-bus sử dụng:
 I/O ánh xạ bộ nhớ
 Đánh địa chỉ theo byte
 Một mối quan hệ chủ-tớ nghiêm ngặt giữa các thiết bị trên bus
 Tín hiệu không đồng bộ

I/O ánh xạ bộ nhớ có nghĩa là các chu kỳ dữ liệu giữa bất kỳ hai thiết bị nào, cho dù là CPU, bộ nhớ hay thiết bị I/O, đều sử dụng cùng một giao thức. Trên Unibus, một phạm vi địa chỉ vật lý được dành riêng cho các thiết bị I/O. Q-bus đơn giản hóa thiết kế này bằng cách cung cấp một tín hiệu cụ thể (ban đầu được gọi là BBS7, Bus Bank Select 7 nhưng sau đó được gọi chung là BBSIO, Bus Bank Select I/O) để chọn phạm vi địa chỉ được sử dụng bởi các thiết bị I/O.

Đánh địa chỉ theo byte có nghĩa là địa chỉ vật lý được truyền trên Unibus được hiểu là địa chỉ của một lượng dữ liệu có kích thước byte. Bởi vì bus thực sự chứa một đường dẫn dữ liệu rộng hai byte, bit địa chỉ [0] phải được diễn giải đặc biệt và dữ liệu trên bus phải di chuyển trong các byte lane chính xác.

Mối quan hệ Chủ-Tớ nghiêm ngặt có nghĩa là tại bất kỳ thời điểm nào, chỉ có một thiết bị có thể là Chủ (Master) của Q-bus. Thiết bị chủ này có thể khởi tạo các giao dịch dữ liệu, sau đó có thể được phản hồi bởi tối đa một thiết bị tớ (slave) được chọn. (Điều này không ảnh hưởng đến việc một chu kỳ bus nhất định là đọc hay ghi dữ liệu; chủ bus có thể ra lệnh cho cả hai loại giao dịch.) Vào cuối chu kỳ bus, một giao thức phân xử bus sẽ chọn thiết bị tiếp theo được trao quyền làm chủ bus.

Tín hiệu không đồng bộ có nghĩa là bus không có thời gian chu kỳ cố định; thời gian của bất kỳ chu kỳ truyền dữ liệu cụ thể nào trên bus được xác định duy nhất bởi các thiết bị chủ và tớ tham gia vào chu kỳ dữ liệu hiện tại. Các thiết bị này sử dụng các tín hiệu bắt tay để kiểm soát thời gian của chu kỳ dữ liệu. Logic thời gian chờ bên trong thiết bị chủ giới hạn độ dài tối đa cho phép của bất kỳ chu kỳ bus nào.

Tùy thuộc vào thế hệ của nó, Q-bus chứa 16, 18 hoặc 22 đường BDAL (Bus Data/Address Line). 16, 18 hoặc 22 đường BDAL được sử dụng cho phần địa chỉ vật lý của mỗi chu kỳ bus. Tám hoặc 16 đường DBAL sau đó được tái sử dụng cho (các) phần dữ liệu của mỗi chu kỳ bus. Các thế hệ bus mới hơn cho phép truyền chế độ khối (block mode), trong đó một địa chỉ bus duy nhất có thể được theo sau bởi nhiều chu kỳ dữ liệu (với các lần truyền diễn ra tại các địa chỉ bus liên tiếp). Vì phần địa chỉ của mỗi chu kỳ bus không thể truyền dữ liệu, việc sử dụng chế độ khối có nghĩa là ít chu kỳ địa chỉ hơn và có nhiều thời gian hơn cho các chu kỳ dữ liệu, cho phép tăng băng thông truyền dữ liệu của bus.

Quyền làm chủ bus được trao dựa trên khoảng cách tô-pô của thẻ I/O đối với bộ phân xử bus (ở đầu logic của bus); các thẻ ở gần hơn được ưu tiên hơn các thẻ ở xa hơn.

Các ngắt có thể được gửi đến Bộ xử lý xử lý ngắt (Interrupt Fielding Processor - IFP) tại bất kỳ mức nào trong bốn mức ưu tiên ngắt. Trong một mức nhất định, các thẻ gần IFP hơn (ở đầu bus) sẽ được ưu tiên hơn các thẻ ở xa hơn trên bus. Các ngắt được định hướng vectơ: một thẻ yêu cầu ngắt sẽ có vectơ ngắt của nó được đọc bởi IFP. Bằng cách này, các ngắt từ tất cả các thẻ I/O trong hệ thống có thể được phân biệt mà không có sự mơ hồ.

 Đặc điểm vật lý 
Các mô-đun Q-bus được cấu tạo dưới dạng các bảng mạch in với các đầu nối cạnh thẻ mạ vàng, khớp với các khe cắm tương ứng trên một backplane. Các đầu nối cạnh trên các mô-đun được chia thành các "ngón" riêng lẻ, tương tự như các mô-đun Unibus, nhưng bị giới hạn ở bốn đầu nối, so với sáu đầu nối của Unibus. Các mô-đun có sẵn ở kích thước chiều cao kép (hai đầu nối) hoặc chiều cao quad (bốn đầu nối). Cách gọi tên này hơi phản trực giác, vì sự khác biệt giữa hai loại thực chất là chiều rộng của PCB. Các mô-đun chiều cao quad có xu hướng được sử dụng cho CPU, bộ nhớ, bộ xử lý video và các thành phần băng thông cao khác, trong khi các mô-đun chiều cao kép có xu hướng được sử dụng cho các thẻ giao tiếp, bảng đấu nối đầu nối, đồng hồ thời gian thực, ROM/mã vi (microcode) và các thành phần băng thông tương đối thấp khác. Một số ngoại lệ là các CPU LSI-11/2, KDF11-A và KDJ11-A chiều cao kép, và nhiều mô-đun bộ nhớ dung lượng nhỏ thời kỳ đầu.

Tối thiểu hóa logic
Giống như Unibus, việc truyền tín hiệu đã được tối ưu hóa cẩn thận để yêu cầu lượng logic tối thiểu trên toàn bộ hệ thống bus. Tín hiệu không đồng bộ được sử dụng nhưng việc khử lệch (de-skewing) địa chỉ và dữ liệu là trách nhiệm của chủ bus hiện tại, giúp giảm thiểu độ phức tạp của các thiết bị tớ trên bus. Trách nhiệm về thời gian chờ (timeout) cho các chu kỳ bus bị lỗi cũng được đặt vào các thiết bị chủ. Tương tự, sự phức tạp của việc xử lý các giao dịch ngắt được tập trung vào một Bộ xử lý xử lý ngắt duy nhất (máy tính PDP-11 hoặc VAX-11) trong hệ thống.

Tính tương thích
Thiết kế của Q-bus có liên quan rất chặt chẽ với thiết kế của Unibus cả về tinh thần và triển khai chi tiết. Các bộ chuyển đổi (adapter) có sẵn từ Digital và từ các bên thứ ba cho phép các thiết bị Q-bus được kết nối với các máy tính dựa trên Unibus và ngược lại. Một số thiết bị I/O có sẵn ở cả hai phiên bản Unibus hoặc Q-bus; một số thiết bị này có những khác biệt nhỏ trong khi nhiều thiết bị khác về cơ bản là giống hệt nhau.

Các bản sao của Liên Xô
Trong các hệ thống của Liên Xô (xem 1801 series CPU), kiến trúc Q-Bus được gọi là МПИ (Магистральный Параллельный Интерфейс, hay giao diện bus song song). Sự khác biệt chính của nó là nó hỗ trợ tối đa bốn bộ xử lý.

 Tham khảo