Khe cắm pci trông như thế nào? Nói ngắn gọn về PCI và sự khác biệt với PCIe và AGP. Đầu nối để kết nối bộ xử lý trên bo mạch chủ

Chuẩn PCI Express là một trong những nền tảng của máy tính hiện đại. Khe cắm PCI Express từ lâu đã chiếm một vị trí vững chắc trên bất kỳ bo mạch chủ máy tính để bàn nào, thay thế các tiêu chuẩn khác, chẳng hạn như PCI. Nhưng ngay cả tiêu chuẩn PCI Express cũng có những biến thể và kiểu kết nối riêng khác nhau. Trên các bo mạch chủ mới, bắt đầu từ khoảng năm 2010, bạn có thể thấy rất nhiều cổng trên một bo mạch chủ, được chỉ định là PCIE hoặc PCI-E, có thể khác nhau về số dòng: một x1 hoặc một số x2, x4, x8, x12, x16 và x32.

Vì vậy, hãy cùng tìm hiểu lý do tại sao lại có sự nhầm lẫn như vậy giữa cổng ngoại vi PCI Express tưởng chừng đơn giản. Và mục đích của từng chuẩn PCI Express x2, x4, x8, x12, x16 và x32 là gì?

Xe buýt PCI Express là gì?

Trở lại những năm 2000, khi quá trình chuyển đổi diễn ra từ tiêu chuẩn PCI lỗi thời (mở rộng - kết nối các thành phần ngoại vi) sang PCI Express, thì PCI Express có một lợi thế rất lớn: thay vì bus nối tiếp là PCI, một điểm-điểm xe buýt truy cập đã được sử dụng. Điều này có nghĩa là mỗi cổng PCI riêng lẻ và các card được cài đặt trong đó có thể tận dụng tối đa băng thông tối đa mà không gây nhiễu lẫn nhau, như đã xảy ra với kết nối PCI. Vào thời đó, số lượng thiết bị ngoại vi lắp vào card mở rộng rất nhiều. Card mạng, card âm thanh, bộ thu TV, v.v. - tất cả đều yêu cầu đủ tài nguyên PC. Nhưng không giống như tiêu chuẩn PCI, vốn sử dụng một bus chung để truyền dữ liệu với nhiều thiết bị được kết nối song song, PCI Express, khi xem xét tổng thể, là một mạng gói có cấu trúc liên kết hình sao.


PCI Express x16, PCI Express x1 và PCI trên một bo mạch

Theo cách nói thông thường, hãy tưởng tượng máy tính để bàn của bạn như một cửa hàng nhỏ với một hoặc hai nhân viên bán hàng. Tiêu chuẩn PCI cũ giống như một cửa hàng tạp hóa: mọi người xếp hàng chờ đợi để được phục vụ, gặp vấn đề về tốc độ với giới hạn của một nhân viên bán hàng phía sau quầy. PCI-E giống một đại siêu thị hơn: mỗi khách hàng đi theo lộ trình riêng của mình để mua hàng tạp hóa và tại quầy thanh toán, một số nhân viên thu ngân sẽ nhận đơn hàng cùng một lúc.

Rõ ràng, một đại siêu thị nhanh hơn nhiều lần so với một cửa hàng thông thường về tốc độ phục vụ, do thực tế là cửa hàng không thể đủ khả năng chứa nhiều hơn một nhân viên bán hàng với một máy tính tiền.

Ngoài ra còn có các làn dữ liệu dành riêng cho từng card mở rộng hoặc các thành phần bo mạch chủ tích hợp.

Ảnh hưởng của số lượng dòng đến thông lượng

Bây giờ, để mở rộng phép ẩn dụ về cửa hàng và đại siêu thị của chúng ta, hãy tưởng tượng rằng mỗi bộ phận của đại siêu thị đều có nhân viên thu ngân riêng dành riêng cho họ. Đây là lúc ý tưởng về nhiều làn dữ liệu phát huy tác dụng.

PCI-E đã trải qua nhiều thay đổi kể từ khi ra đời. Ngày nay, các bo mạch chủ mới thường sử dụng phiên bản 3 của tiêu chuẩn, phiên bản 4 nhanh hơn đang trở nên phổ biến hơn, phiên bản 5 dự kiến ​​sẽ ra mắt vào năm 2019. Nhưng các phiên bản khác nhau sử dụng cùng một kết nối vật lý và những kết nối này có thể được thực hiện ở bốn kích thước chính: x1, x4, x8 và x16. (có cổng x32 nhưng cực kỳ hiếm trên bo mạch chủ máy tính thông thường).

Nhiều kích thước vật lý Cổng PCI-Express cho phép bạn phân chia rõ ràng theo số lượng kết nối đồng thời với bo mạch chủ: cổng vật lý càng lớn thì càng nhiều kết nối tối đa nó có khả năng chuyển sang thẻ hoặc ngược lại. Những kết nối này còn được gọi là dòng. Một đường có thể được coi là một đường bao gồm hai cặp tín hiệu: một để gửi dữ liệu và một để nhận.

Các phiên bản khác nhau của tiêu chuẩn PCI-E cho phép tốc độ khác nhau trên mỗi làn đường. Nhưng nói chung, càng có nhiều làn trên một cổng PCI-E thì dữ liệu có thể truyền giữa thiết bị ngoại vi và phần còn lại của máy tính càng nhanh.

Quay trở lại phép ẩn dụ của chúng ta: nếu chúng ta đang nói về một người bán trong cửa hàng, thì dải x1 sẽ là người bán duy nhất phục vụ một khách hàng. Một cửa hàng có 4 nhân viên thu ngân đã có 4 hàng x4. Và cứ thế, bạn có thể chỉ định nhân viên thu ngân theo số dòng nhân với 2.


Các loại thẻ PCI Express khác nhau

Các loại thiết bị sử dụng PCI Express x2, x4, x8, x12, x16 và x32

Đối với phiên bản PCI Express 3.0, tốc độ truyền dữ liệu tối đa tổng thể là 8 GT/s, trên thực tế, tốc độ của phiên bản PCI-E 3 thấp hơn một chút so với một gigabyte mỗi giây trên mỗi làn.

Do đó, một thiết bị sử dụng cổng PCI-E x1 chẳng hạn sẽ có mức tiêu thụ điện năng thấp. card âm thanh hoặc ăng-ten Wi-Fi sẽ có thể truyền dữ liệu từ tốc độ tối đaở tốc độ 1 Gbit/s.

Một thẻ vừa khít với một khe lớn hơn - x4 hoặc x8, ví dụ: thẻ mở rộng USB 3.0 sẽ có thể truyền dữ liệu nhanh hơn tương ứng bốn hoặc tám lần.

Tốc độ truyền của cổng PCI-E x16 về mặt lý thuyết bị giới hạn ở băng thông tối đa khoảng 15 Gbps. Điều này là quá đủ trong năm 2017 đối với tất cả các card đồ họa hiện đại do NVIDIA và AMD phát triển.


Hầu hết các card đồ họa rời đều sử dụng khe cắm PCI-E x16

Giao thức PCI Express 4.0 cho phép sử dụng 16 GT/s và PCI Express 5.0 sẽ sử dụng 32 GT/s.

Nhưng hiện tại không có thành phần nào có thể sử dụng số làn đường này với thông lượng tối đa. Card đồ họa cao cấp hiện đại thường sử dụng x16 PCI Express 3.0. Thật vô nghĩa khi sử dụng cùng một làn cho một card mạng sẽ chỉ sử dụng một làn trên cổng x16, vì cổng Ethernet chỉ có khả năng truyền dữ liệu lên đến một gigabit mỗi giây (tức là khoảng 1/8 thông lượng của một làn PCI-E - hãy nhớ: tám bit trong một byte).

Trên thị trường có các ổ SSD PCI-E hỗ ​​trợ cổng x4 nhưng có vẻ như chúng sẽ được thay thế bằng tiêu chuẩn M.2 mới đang phát triển nhanh chóng. cho SSD, cũng có thể sử dụng Xe buýt PCI-E. Card mạng cao cấp và phần cứng dành cho người đam mê như bộ điều khiển RAID sử dụng kết hợp định dạng x4 và x8.

Kích thước cổng và làn đường PCI-E có thể khác nhau

Đây là một trong những vấn đề khó hiểu nhất với PCI-E: một cổng có thể được tạo ở dạng x16, nhưng không có đủ làn để truyền dữ liệu qua, chẳng hạn, chỉ x4. Điều này là do mặc dù PCI-E có thể mang số lượng không giới hạn kết nối riêng lẻ, vẫn có giới hạn thực tế đối với dung lượng băng thông của chipset. Bo mạch chủ rẻ hơn với chipset cấp thấp hơn có thể chỉ có một khe cắm x8, ngay cả khi khe cắm đó có thể chứa thẻ hệ số dạng x16 về mặt vật lý.

Ngoài ra, bo mạch chủ dành cho game thủ còn có tới bốn khe cắm PCI-E đầy đủ với x16 và cùng số làn để có băng thông tối đa.

Rõ ràng điều này có thể gây ra vấn đề. Nếu bo mạch chủ có hai khe x16, nhưng một trong số chúng chỉ có làn x4 thì hãy kết nối một khe x16 mới card đồ họa sẽ làm giảm năng suất của lần đầu tiên tới 75%. Tất nhiên, đây chỉ là kết quả lý thuyết. Kiến trúc của bo mạch chủ sao cho bạn sẽ không thấy hiệu suất giảm mạnh.

Cấu hình chính xác của hai card màn hình đồ họa nên sử dụng chính xác hai khe x16 nếu bạn muốn có sự thoải mái tối đa khi sử dụng song song hai card màn hình. Sách hướng dẫn tại văn phòng sẽ giúp bạn tìm hiểu xem một khe cắm cụ thể có bao nhiêu dòng trên bo mạch chủ của bạn. trang web của nhà sản xuất.

Đôi khi nhà sản xuất thậm chí còn đánh dấu số dòng trên bo mạch chủ PCB bên cạnh khe cắm

Bạn cần biết rằng thẻ x1 hoặc x4 ngắn hơn có thể vừa khít với khe x8 hoặc x16 dài hơn. Cấu hình liên hệ địa chỉ liên lạc điện làm cho điều này có thể. Đương nhiên, nếu thẻ vật lý lớn hơn khe cắm thì bạn sẽ không thể lắp thẻ vào.

Vì vậy, hãy nhớ rằng, khi mua card mở rộng hoặc nâng cấp những card hiện tại, bạn phải luôn nhớ cả kích thước của khe cắm PCI Express lẫn số làn đường cần thiết.

Và PCI-X là các đầu nối có rãnh có các chân cắm cách nhau 0,05 inch. Các khe cắm nằm xa bảng điều khiển phía sau hơn một chút so với ISA/EISA hoặc MCA. Các thành phần của card PCI nằm ở mặt bên trái của card. Vì lý do này, khe PCI ngoài cùng thường dùng chung khe cắm bộ điều hợp (khe ở thành sau của thùng máy) với khe ISA liền kề. Khe cắm như vậy được gọi là khe cắm chia sẻ; thẻ ISA hoặc PCI có thể được cài đặt trong đó.

Thẻ PCI có thể được thiết kế cho tín hiệu giao diện 5 V và 3,3 V, cũng như có tính phổ quát. Các khe cắm PCI có các mức tín hiệu tương ứng với nguồn điện của chip thiết bị PCI trên bo mạch chủ (bao gồm cả cầu nối chính): 5 V hoặc 3,3 V. Để tránh kết nối sai, các khe cắm có các phím xác định định mức điện áp. Các phím là các hàng liên hệ 12, 13 và/hoặc 50, 51 bị thiếu:

  • đối với khe 5 V, phím (phân vùng) được đặt ở các tiếp điểm 50, 51 (gần thành trước của vỏ); những khe cắm như vậy bị hủy trong PCI 3.0;
  • đối với khe 3,3 V, vách ngăn nằm ở các chân 12, 13 (gần thành sau của thùng máy);
  • không có phân vùng trên các khe phổ quát;
  • trên các đầu nối cạnh của thẻ 5 V chỉ có các khe khớp ở vị trí tiếp điểm 50, 51; những thẻ như vậy bị hủy trong PCI 2.3;
  • trên thẻ 3.3 Chỉ trong các khe ở vị trí liên lạc 12, 13;
  • Thẻ đa năng có cả hai phím (hai khe).

Các phím không cho phép bạn lắp thẻ vào khe cắm có điện áp cung cấp không phù hợp. Thẻ và khe cắm chỉ khác nhau ở nguồn cấp điện cho mạch đệm, xuất phát từ các đường +V I/O:

  • trên khe “5 V”, + 5 V được cung cấp trên đường +V I/O;
  • trên khe “3,3 V”, + (3,3–3,6) V được cung cấp trên đường +VI I/O;
  • trên thẻ “5 V”, các chip đệm chỉ được thiết kế cho nguồn điện + 5 V;
  • trên thẻ “3,3 V”, các chip đệm chỉ được thiết kế cho nguồn điện + (3,3–3,6) V;
  • trên thẻ phổ thông, chip đệm cho phép cả hai tùy chọn nguồn và thường sẽ tạo và nhận tín hiệu theo thông số kỹ thuật 5 hoặc 3,3 V, tùy thuộc vào loại khe cắm mà thẻ được lắp vào (nghĩa là trên điện áp trên + VI/ O địa chỉ liên lạc).

Trên các khe của cả hai loại đều có điện áp cung cấp + 3,3, + 5, + 12 và –12 V trên các đường dây cùng tên. PCI 2.2 xác định đường 3,3Vaux bổ sung - nguồn “dự phòng” + 3,3 V cho các thiết bị tạo ra tín hiệu PME# khi tắt nguồn chính.

GHI CHÚ!

Trên đây là các quy định từ thông số kỹ thuật PCI chính thức. Trên hiện đại bo mạch chủà, hiện tại, hầu hết đều có các khe cắm 5 volt theo phím. Tuy nhiên, điện áp trên đường +V I/O và mức tín hiệu giao diện là 3,3 volt. Tất cả các thẻ hiện đại có phím 5 volt đều hoạt động bình thường trong các khe này - mạch giao diện của chúng hoạt động với cả nguồn điện 3,3 và 5 V. Giao diện với nguồn điện 5 volt chỉ có thể hoạt động ở tần số lên đến 33 MHz. Bo mạch chủ 5V "đúng" chỉ có sẵn cho các mẫu Pentium 486 và đời đầu.

Phổ biến nhất là các khe 32 bit kết thúc bằng chân A62/B62. Khe cắm 64-bit ít phổ biến hơn, chúng dài hơn và kết thúc ở chân A94/B94. Thiết kế của các đầu nối và giao thức cho phép bạn cài đặt thẻ 64 bit ở cả khe 64 bit và 32 bit và ngược lại, thẻ 34 bit ở cả khe 32 bit và 64 bit. Trong trường hợp này, độ sâu bit của trao đổi sẽ tương ứng với thành phần yếu nhất.

Để báo hiệu việc lắp đặt thẻ và mức tiêu thụ điện năng của thẻ, hai tiếp điểm được cung cấp trên đầu nối PCI - PRSNT1# và PRSNT2#, ít nhất một trong số đó được kết nối với bus GND trên thẻ. Với sự trợ giúp của họ, hệ thống có thể xác định sự hiện diện của thẻ trong khe cắm và mức tiêu thụ điện năng của thẻ. Mã hóa mức tiêu thụ điện năng được đưa ra trong bảng; Giá trị cho thẻ PCI nhỏ cũng được đưa ra ở đây.

Thẻ và khe cắm PCI-X tương ứng về mặt cơ học với thẻ và khe cắm 3,3 volt; Điện áp nguồn + V I/O cho PCI-X Chế độ 2 được đặt thành 1,5 V.

Hình minh họa các card PCI trong thiết kế của máy tính tương thích PC/AT. Thẻ có kích thước đầy đủ (Thẻ dài, 107×312 mm) ít được sử dụng, thẻ rút gọn (Thẻ ngắn, 107×175 mm) được sử dụng thường xuyên hơn, nhưng nhiều thẻ cũng có kích thước nhỏ hơn. Card có khung (bracket), tiêu chuẩn cho thiết kế ISA (trước đây đã có card có khung theo kiểu MCA của IBM PS/2). Đối với thẻ Low Profile, chiều cao không vượt quá 64,4 mm; dấu ngoặc của chúng cũng có chiều cao ngắn hơn. Những thẻ như vậy có thể được lắp đặt theo chiều dọc trong hộp 19 inch với chiều cao 2U (khoảng 9 cm).

Cách gán chân của đầu nối thẻ PCI/PCI-X được hiển thị trong bảng bên dưới.

Hàng BHàng AHàng BHàng A
-12V 1 TRST# GND/M66EN 1 49 AD9
TCK 2 +12V GND/Phím 5V/CHẾ ĐỘ 2 50 GND/Khóa 5V
GND 3 TMS GND/Khóa 5V 51 GND/Khóa 5V
TDO 4 TDI AD8 52 C/BE 0#
+5 V 5 +5 V AD7 53 +3,3 V
+5 V 6 INTA# +3,3 V 54 AD6
INTB# 7 INTC# AD5 55 AD4
INTD# 8 +5 V AD3 56 GND
PRSNT1# 9 ECC 5 2 GND 57 AD2
ECC4 2 10 +V I/O AD1 58 AD0
PRSNT2# 11 ECC 3 2 +V I/O 59 +V I/O
GND/Khóa 3,3V 12 GND/Khóa 3,3V ACK 64#/ECC 1 60 YÊU CẦU 64 #/ECC 6
GND/Khóa 3,3V 13 GND/Khóa 3,3V +5 V 61 +5 V
ECC2 2 14 3.3Vaux 3 +5 V 62 +5 V
GND 15 RST# Kết thúc đầu nối 32 bit
CLK 16 +V I/O Dự trữ 63 GND
GND 17 GNT# GND 64 C/BE 7#
số yêu cầu 18 GND C/BE 6# 65 C/BE 5#
+V I/O 19 PME#3 C/BE 4# 66 +V I/O
AD31 20 AD30 GND 67 Cải cách hành chính 64 /ECC 7 2
AD29 21 +3,3 V AD63 68 AD62
GND 22 AD28 AD61 69 GND
AD27 23 AD26 +V I/O 70 AD60
AD25 24 GND AD59 71 AD58
+3,3 V 25 AD24 AD57 72 GND
C/BE3# 26 IDSEL GND 73 AD56
AD23 27 +3,3 V AD55 74 AD54
GND 28 AD22 AD53 75 +V I/O
AD21 29 AD20 GND 76 AD52
AD19 30 GND AD51 77 AD50
+3,3 V 31 AD18 AD49 78 GND
AD17 32 AD16 +V I/O 79 AD48
C/BE 2# 33 +3,3 V AD47 80 AD46
GND 34 KHUNG# AD45 81 GND
IRDY# 35 GND GND 82 AD44
+3,3 V 36 TRDY# AD43 83 AD42
PHÁT TRIỂN # 37 GND AD41 84 +V I/O
PCIXCAP 4 38 DỪNG LẠI# GND 85 AD40
KHÓA# 39 +3,3 V AD39 86 AD38
PERR# 40 SMBCLK 5 AD37 87 GND
+3,3 V 41 SMBDAT 5 +V I/O 88 AD36
SERR# 42 GND AD35 89 AD34
+3,3 V 43 PAR/ECC0 AD33 90 GND
C/BE 1# 44 AD15 GND 91 AD32
AD14 45 +3,3 V Dự trữ 92 Dự trữ
GND 46 AD13 Dự trữ 93 GND
AD12 47 AD11 GND 94 Dự trữ
AD10 48 GND Kết thúc đầu nối 64-bit

Ghi chú!

1 - Tín hiệu M66EN chỉ được xác định trong PCI 2.1 cho các khe 3,3V.
2 - Tín hiệu được đưa vào PCI-X 2.0 (trước đây đã có dự trữ).
3 - Tín hiệu được đưa vào PCI 2.2 (trước đây đã có dự trữ).
4 - Tín hiệu được nhập vào PCI-X (trong PCI - GND).
5 - Tín hiệu được giới thiệu trong PCI 2.3. Trong PCI 2.0 và 2.1, các chân A40 (SDONE#) và A41 (SBOFF#) được sử dụng để theo dõi bộ đệm; trong PCI 2.2 chúng đã được phát hành (để tương thích trên bo mạch chủ, các mạch này được kéo lên mức cao bằng điện trở 5 kOhm).

Các khe cắm PCI có các tiếp điểm để kiểm tra bộ điều hợp thông qua giao diện JTAG (tín hiệu TCK, TDI, TDO, TMS và TRST#). Trên bo mạch hệ thống, những tín hiệu này không phải lúc nào cũng được sử dụng nhưng chúng có thể sắp xếp chuỗi logic bộ điều hợp thử nghiệm mà bạn có thể kết nối với thiết bị thử nghiệm bên ngoài. Để có tính liên tục của chuỗi, thẻ không phải JTAG phải có liên kết TDI-TDO.

Trên một số bo mạch chủ cũ hơn, phía sau một trong các khe cắm PCI có đầu nối Media Bus mang tín hiệu ISA. Nó được thiết kế để chứa chipset âm thanh được thiết kế cho bus ISA trên thẻ PCI. Hầu hết các tín hiệu PCI được kết nối bằng cấu trúc liên kết bus thuần túy, nghĩa là các chân khe cùng tên trên cùng một bus PCI được kết nối điện với nhau. Có một số trường hợp ngoại lệ cho quy tắc này:

  • Tín hiệu REQ# và GNT# là riêng biệt cho từng khe; chúng kết nối khe với trọng tài (thường là cầu nối bus này với bus cao hơn);
  • Tín hiệu IDSEL cho mỗi khe được kết nối (có thể thông qua điện trở) với một trong các đường AD, chỉ định số thiết bị trên bus;
  • các tín hiệu INTA#, INTB#, INTC#, INTD# được dịch chuyển theo chu kỳ dọc theo các tiếp điểm, đảm bảo phân phối các yêu cầu ngắt;
  • tín hiệu CLK được cung cấp cho từng khe riêng lẻ từ đầu ra bộ đệm đồng bộ hóa của nó; chiều dài các dây dẫn được cân bằng, đảm bảo đồng bộ tín hiệu trên tất cả các khe (đối với dung sai 33 MHz ± 2 ns, đối với 66 MHz - ± 1 ns).

YouTube bách khoa toàn thư

  • 1 / 5

    Không giống như tiêu chuẩn PCI sử dụng một bus chung để truyền dữ liệu với nhiều thiết bị được kết nối song song, PCI Express nói chung là một mạng gói có cấu trúc liên kết hình sao.

    Các thiết bị PCI Express giao tiếp với nhau thông qua một phương tiện được hình thành bởi các bộ chuyển mạch, trong đó mỗi thiết bị được kết nối trực tiếp bằng kết nối điểm-điểm với bộ chuyển mạch.

    Ngoài ra, bus PCI Express còn hỗ trợ:

    • băng thông được đảm bảo (QoS);
    • quản lý năng lượng;
    • giám sát tính toàn vẹn của dữ liệu được truyền đi.

    Bus PCI Express chỉ được sử dụng như xe buýt địa phương. Bởi vì mô hình phần mềm PCI Express phần lớn được kế thừa từ PCI, sau đó hệ thống hiện có và bộ điều khiển có thể được sửa đổi để sử dụng bus PCI Express bằng cách chỉ thay thế lớp vật lý mà không cần sửa đổi phần mềm. Hiệu suất cao nhất của bus PCI Express cho phép nó được sử dụng thay cho bus AGP, và thậm chí còn hơn thế nữa là PCI và PCI-X. Trên thực tế, PCI Express đã thay thế những bus này trong máy tính cá nhân.

    Đầu nối

    • MiniCard (Mini PCIe) - thay thế cho hệ số dạng Mini PCI. Đầu nối Thẻ Mini hỗ trợ các bus sau: x1 PCIe, USB 2.0 và SMBus.
    • ExpressCard - tương tự như hệ số dạng PCMCIA. Đầu nối ExpressCard hỗ trợ bus x1 PCIe và USB 2.0; Thẻ ExpressCard hỗ trợ cắm nóng.
    • AdvancedTCA là một dạng thức dành cho thiết bị viễn thông.
    • Mobile PCI Express Module (MXM) là một kiểu dáng công nghiệp được NVIDIA tạo ra cho máy tính xách tay. Nó được sử dụng để kết nối các bộ tăng tốc đồ họa.
    • Thông số kỹ thuật của cáp PCI Express cho phép độ dài của một kết nối đạt tới hàng chục mét, điều này giúp tạo ra một máy tính có các thiết bị ngoại vi được đặt ở một khoảng cách đáng kể.
    • StackPC - đặc điểm kỹ thuật để xây dựng có thể xếp chồng hệ thống máy tính. Thông số kỹ thuật này mô tả các đầu nối mở rộng StackPC, FPE và vị trí tương đối của chúng.

    PCI Express X1

    PCI-E nhỏ

    Mini PCI Express là định dạng bus PCI Express dành cho thiết bị di động.

    Nhiều thiết bị ngoại vi có sẵn cho tiêu chuẩn kết nối này:

    SSD Mini PCI Express

    • Nguồn điện 3,3V

    ExpressCard

    Khe cắm ExpressCard hiện nay (tháng 11 năm 2010) được sử dụng để kết nối:

    • Bảng lưu trữ SSD
    • Thẻ video
    • Bộ điều khiển 1394/FireWire (iLINK)
    • Trạm nối
    • Dụng cụ đo lường
    • Trong trí nhớ
    • Bộ điều hợp thẻ nhớ (CF, MS, SD, xD, v.v.)
    • Chuột
    • Bộ điều hợp mạng
    • Cổng song song
    • Bộ điều hợp Thẻ PC/PCMCIA
    • Phần mở rộng PCI
    • Mở rộng PCI Express
    • Điều khiển từ xa
    • Bộ điều khiển SATA
    • Cổng nối tiếp
    • Bộ điều hợp SmartCard
    • bộ điều chỉnh TV
    • Bộ điều khiển USB
    • Bộ điều hợp mạng Wi-Fi không dây
    • Bộ điều hợp Internet băng thông rộng không dây (3G, CDMA, EVDO, GPRS, UMTS, v.v.)
    • Card âm thanh cho giao diện âm thanh đa phương tiện và chuyên nghiệp tại nhà.

    Mô tả giao thức

    Kết nối thiết bị PCI Express sử dụng kết nối nối tiếp điểm-điểm hai chiều được gọi là đường (lane tiếng Anh - dải, hàng); điều này hoàn toàn trái ngược với PCI, trong đó tất cả các thiết bị được kết nối với một bus hai chiều song song 32 bit chung.

    Các giao thức cạnh tranh

    Ngoài PCI Express, còn có một số giao diện nối tiếp được tiêu chuẩn hóa tốc độ cao, sau đây chỉ là một số: HyperTransport, InfiniBand, RapidIO và StarFabric. Mỗi giao diện đều được các công ty công nghiệp ủng hộ, vì số tiền đáng kể đã được chi cho việc phát triển các thông số kỹ thuật của giao thức và mỗi tập đoàn đều tìm cách nhấn mạnh những ưu điểm của giao diện cụ thể của mình so với các giao diện khác.

    Một mặt, giao diện tốc độ cao được tiêu chuẩn hóa phải linh hoạt và có khả năng mở rộng, mặt khác phải cung cấp độ trễ thấp và chi phí thấp (nghĩa là phần chi phí gói không được lớn). Về bản chất, sự khác biệt giữa các giao diện nằm chính xác ở sự thỏa hiệp được lựa chọn bởi các nhà phát triển giao diện cụ thể giữa hai yêu cầu xung đột này.

    Ví dụ: thông tin định tuyến dịch vụ bổ sung trong gói cho phép bạn tổ chức định tuyến gói phức tạp và linh hoạt, nhưng làm tăng chi phí xử lý gói và cũng giảm thông lượng giao diện, phần mềm khởi tạo và cấu hình các thiết bị kết nối với giao diện trở nên phức tạp hơn. Nếu cần đảm bảo cắm nóng các thiết bị, cần có phần mềm đặc biệt để theo dõi những thay đổi trong cấu trúc liên kết mạng. Ví dụ về các giao diện phù hợp với điều này là RapidIO, InfiniBand và StarFabric.

    Đồng thời, bằng cách rút ngắn các gói tin, bạn có thể giảm độ trễ trong việc truyền dữ liệu, điều này yêu cầu quan trọng vào giao diện bộ nhớ. Nhưng kích thước nhỏ của các gói dẫn đến tỷ lệ các trường mào đầu gói tăng lên, làm giảm thông lượng hiệu quả của giao diện. Một ví dụ về loại giao diện này là HyperTransport.

    Vị trí của PCI Express nằm giữa các phương pháp được mô tả, vì bus PCI Express được thiết kế để hoạt động như một bus cục bộ, thay vì bus bộ xử lý-bộ nhớ hoặc một mạng có thể định tuyến phức tạp. Ngoài ra, PCI Express ban đầu được hình thành như một bus tương thích về mặt logic với bus PCI, điều này cũng đưa ra những hạn chế riêng của nó.

    Xin chào tất cả những ai quan tâm đến khe cắm PCI là gì. Tôi nghĩ có rất nhiều trong số đó, bởi vì tiêu chuẩn này vẫn được sử dụng cho đến ngày nay, mặc dù đã phát hành các chất tương tự hiện đại. Nếu máy tính của bạn không còn non trẻ nữa, rất có thể bạn cũng đang gặp phải vấn đề về PCI.

    Bài viết này sẽ giúp bạn hiểu các tính năng và sự khác biệt của nó so với bản sửa đổi “Express” mà bạn có thể đã nghe nói đến vì nó hiện đã phổ biến.

    Giới thiệu về thuật ngữ

    Chữ viết tắt nêu trên là viết tắt của Peripheral Component Interconnect, nghĩa đen là sự kết nối các thành phần ngoại vi. Mặc dù cụm từ này không phản ánh phương án vật lý của PCI nhưng nó được chọn vì lý do chính đáng.

    Như bạn hiểu, “bộ não” của máy tính bao gồm nhiều thiết bị khác nhau (âm thanh, video, card mạng, v.v.), cái gọi là. các thành phần ngoại vi. Hầu hết chúng sẽ kết nối với bo mạch chủ.

    Để kết nối giữa các thiết bị và bo mạch chủ, các đường cao tốc điện tử đặc biệt, hay nói cách khác là xe buýt, được sử dụng. Đây chính xác là PCI. Trên thực tế, đây là một khe cắm mở rộng dài nằm trên bo mạch chủ để có thể lắp card màn hình vào, v.v.

    Về bộ điều khiển

    Ngoài ra còn có một thứ như Bộ điều khiển PCI Giao tiếp đơn giản hoặc Giao diện Công cụ Quản lý, đảm bảo sự tương tác giữa trình điều khiển của các chương trình được cài đặt trên máy tính và trình điều khiển bo mạch chủ. Đôi khi sau khi cài đặt lại hệ thống, một hình tam giác màu vàng sẽ sáng lên bên cạnh mục này trong Trình quản lý thiết bị.

    Trong trường hợp này, bạn nên tải xuống trình điều khiển từ trang web chính thức của Intel hoặc tài nguyên đáng tin cậy khác và cài đặt chúng. Rốt cuộc, giao diện này kiểm soát nhiệt độ, vòng quay của bộ làm mát, chế độ ngủ, v.v.

    Câu chuyện

    Nhóm lợi ích đặc biệt PCI, được thành lập năm 1992 dưới sự lãnh đạo của Tập đoàn Intel, chịu trách nhiệm tạo và hỗ trợ giao diện. Đồng thời, phiên bản đầu tiên của nó đã được phát hành, được phát hành đặc biệt để triển khai chức năng của bộ xử lý Pentium, Pentium Pro và 486.

    Năm tiếp theo, mẫu 2.0 tiếp theo xuất hiện, và sau 3 năm nữa - 2.1, đang ở đỉnh cao phổ biến. Đúng vậy, sau 2 năm đồ họa máy tính đã đạt đến một tầm cao mới và PCI không còn đáp ứng được yêu cầu của nó nữa. Sau đó, card màn hình bắt đầu được kết nối thông qua một đầu nối mới vào thời điểm đó.

    Tuy nhiên, giao diện mà chúng tôi đang xem xét vẫn không mất đi vị thế cho đến năm 2005. Trong thời gian này, nhiều thế hệ của nó đã ra đời, nhưng tôi không nghĩ bạn muốn bận tâm đến chúng. Hơn nữa, đối với người dùng bình thường, sự khác biệt giữa chúng là không đáng kể hoặc không thể hiểu được.

    Thông số kỹ thuật PCI

    Các thông số cổng cơ bản bạn nên biết:

    • Tần số - 33,33 hoặc 66,66 megahertz, thông tin được gửi đồng bộ;
    • Kích thước bit - như thường lệ, 32 hoặc 64 bit;
    • Không gian địa chỉ của bộ nhớ và cổng I/O giống nhau - 4 byte (32 bit);
    • Một không gian địa chỉ (cấu hình) khác cho mỗi chức năng là 256 byte;
    • Tốc độ tối đa của model 32 bit và 33 MHz là 133 megabyte mỗi giây;
    • Điện áp - 3,3 hoặc 5 Vôn;
    • Có chức năng Multiply bus master, nghĩa là một số bộ điều khiển ổ cứng có thể hoạt động trên cùng một bus cùng một lúc.

    Sự khác biệt với PCI-Express

    Đây là một sửa đổi hiện đại của người tiền nhiệm của nó. Nó dựa trên mô hình phần mềm PCI, nhưng có hiệu suất được cải thiện đáng kể. Hầu hết các thiết bị hiện nay đều được sản xuất với giao diện này.


    Sự khác biệt đầu tiên giữa chúng là phiên bản lỗi thời là song song và phiên bản mới là tuần tự. Điều này có nghĩa là trong trường hợp thứ hai có một kết nối hai chiều, có thể bao gồm một số dòng (từ x1 đến x32). Càng có nhiều thì tốc độ làm việc càng cao.

    Dù vậy, thông lượng của xe buýt hiện đại sẽ cao hơn so với xe buýt lỗi thời. Để so sánh: PCI có tần số 66 MHz là 266 MB/s và PCI-E thế hệ thứ 3 với 16 làn là 32 GB/s.

    Bây giờ bạn đã biết những điều cơ bản về PCI.

    Tôi khuyên bạn không nên tập trung vào thông tin này và thu thập kiến ​​​​thức mới từ các bài viết khác trên blog của chúng tôi.

    Các loại vải không cháy được sử dụng ở đâu www.algo-textile.ru. Phụ kiện màn chống muỗi cho màn chống muỗi 2-sklad.ru.

    PCI và PCI-X

    Xe buýt PCI và PCI-X

    Giới thiệu

    Các bus PCI và PCI-X là các bus mở rộng I/O chính trong máy tính hiện đại; để kết nối bộ điều hợp video, chúng được bổ sung bằng cổng AGP. Bus mở rộng I/O (Bus mở rộng) là kết nối cấp hệ thống: chúng cho phép các bộ điều hợp và bộ điều khiển ngoại vi sử dụng trực tiếp tài nguyên hệ thống máy tính - bộ nhớ và không gian địa chỉ I/O, ngắt, truy cập bộ nhớ trực tiếp. Các thiết bị được kết nối với các bus mở rộng có thể tự điều khiển các bus này, có quyền truy cập vào các tài nguyên máy tính khác. Bus mở rộng được triển khai một cách cơ học dưới dạng các khe cắm (đầu nối khe cắm) hoặc đầu nối pin; Chúng được đặc trưng bởi chiều dài dây dẫn ngắn, nghĩa là chúng hoàn toàn cục bộ, cho phép chúng đạt được tốc độ hoạt động cao. Những bus này có thể không xuất ra các đầu nối nhưng được sử dụng để kết nối các thiết bị trên bo mạch chủ tích hợp.

    Lúc đầu, bus PCI được giới thiệu như một phần mở rộng (bus lửng) cho các hệ thống có bus ISA. Nó được phát triển dựa trên Bộ xử lý Pentium, nhưng cũng hoạt động tốt với bộ xử lý i486. Sau đó, PCI đã trở thành bus trung tâm trong một thời gian: nó được kết nối với bus bộ xử lý bằng một cầu hiệu năng cao (cầu “bắc”), là một phần của chipset bo mạch chủ. Các bus mở rộng I/O còn lại (ISA/EISA hoặc MCA), cũng như bus X-BUS giống ISA cục bộ và giao diện LPC, nơi các chip bo mạch hệ thống được kết nối (ROM BIOS, bộ điều khiển ngắt, bàn phím, DMA , Cổng COM và LPT, ổ cứng HDD và những “thứ nhỏ nhặt” khác), được kết nối với bus PCI qua cầu “phía nam”. Trong các bo mạch chủ hiện đại có kiến ​​trúc “trung tâm”, bus PCI đã được chuyển ra ngoại vi mà không ảnh hưởng đến dung lượng kênh liên lạc của nó với bộ xử lý và bộ nhớ, nhưng cũng không tải các thiết bị lên các bus khác có lưu lượng chuyển tuyến.

    Bus PCI đồng bộ - tất cả các tín hiệu được thu bởi cạnh dương (cạnh) của tín hiệu CLK. Tần số đồng bộ danh nghĩa được coi là 33,3 MHz, nếu cần thiết, nó có thể được hạ xuống. Bắt đầu từ phiên bản PCI 2.1, có thể tăng tần số lên 66,6 MHz nếu tất cả các thiết bị trên bus “đồng ý”. Trong PCI-X, tần số có thể đạt tới 133 MHz.

    PCI sử dụng bus địa chỉ/dữ liệu (AD) ghép kênh song song với độ rộng điển hình là 32 bit. Thông số kỹ thuật xác định khả năng mở rộng độ sâu bit lên 64 bit; PCI-X phiên bản 2.0 cũng xác định tùy chọn bus 16 bit. Ở tần số bus 33 MHz, thông lượng lý thuyết đạt 132 MB/s đối với bus 32 bit và 264 MB/s đối với bus 64 bit; ở tần số đồng bộ hóa lần lượt là 66 MHz - 264 MB/s và 528 MB/s. Tuy nhiên, những giá trị cao nhất này chỉ đạt được trong quá trình truyền gói: do chi phí giao thức nên thông lượng bus trung bình thực tế thấp hơn.

    Các đặc điểm so sánh của bus PCI và PCI-X cũng như các bus mở rộng khác của máy tính tương thích với PC được đưa ra trong bảng. 1.1. Bus ISA đang rời bỏ các máy tính để bàn, nhưng nó vẫn giữ được vị trí của mình trong các máy tính công nghiệp và máy tính nhúng, cả ở phiên bản khe cắm truyền thống và phiên bản PC/104 “sandwich”. Khe cắm PCMCIA với bus PC Card và Card Bus được sử dụng rộng rãi trong máy tính xách tay. Bus LPC là phương tiện hiện đại, chi phí thấp để kết nối các thiết bị không tiêu tốn nhiều tài nguyên với bo mạch chủ.

    Lốp xe Thông lượng đỉnh MB/s kênh DMA Bậc thầy xe buýt ACFG Độ rộng dữ liệu Kích thước địa chỉ Tần số MHz
    ISA-8 4 3 - - 8 20 8
    ISA-16 8
    7
    +
    -
    16
    24
    8
    LPC 6,7
    7
    +
    -
    8/16/32
    32
    33
    EISA
    33,3 7 +
    +
    32
    32
    8,33
    MCA-16
    16
    -
    +
    +
    16
    24
    10
    MCA-32
    20
    -
    +
    +
    32
    32
    10
    VLB
    132
    -
    (+)
    -
    32/64
    32
    33-50(66)
    PCI
    133-533
    -
    +
    +
    32/64
    32/64
    33/66
    PCI-X
    533-4256
    -
    +
    +
    16/32/64
    32/64
    66-133
    PCI Express
    496-15872
    -
    +
    +
    1/2/4/8/12/16/32
    32/64
    2,5 GHz
    AGP 1x/2x/4x/8x
    266/533/1066/2132
    -
    +
    +
    32
    32/64
    66
    PCMCIA
    10/22
    +
    -
    +
    8/16
    26
    10
    Xe buýt thẻ 132 - + + 32 32 33

    ACFG1-Hỗ trợ cấu hình tự động. Đối với ISA, PnP là một bổ sung muộn được triển khai bởi các bộ điều hợp và phần mềm.

    Giao thức báo hiệu bus PCI và PCI-X

    Việc trao đổi thông tin trên bus PCI và PCI-X được tổ chức dưới dạng giao dịch - các hoạt động trao đổi được hoàn thành một cách hợp lý. Một giao dịch thông thường bao gồm hai thiết bị: bộ khởi tạo trao đổi, còn được gọi là thiết bị chính và thiết bị đích, còn được gọi là thiết bị phụ. Các quy tắc tương tác giữa các thiết bị này được xác định bởi giao thức bus PCI. Thiết bị có thể giám sát các giao dịch trên xe buýt mà không cần phải là người tham gia (không cần nhập bất kỳ tín hiệu nào); Thuật ngữ Snooping tương ứng với chế độ theo dõi. Có một loại giao dịch đặc biệt (Chu kỳ đặc biệt) - phát sóng, trong đó người khởi tạo không tương tác với bất kỳ thiết bị nào theo giao thức. Mỗi giao dịch thực hiện một lệnh, thường là đọc hoặc ghi dữ liệu. địa chỉ được chỉ định. Một giao dịch bắt đầu bằng giai đoạn địa chỉ, trong đó người khởi tạo chỉ định một lệnh và địa chỉ đích. Các giai đoạn dữ liệu có thể diễn ra sau đó, trong đó một thiết bị (nguồn dữ liệu) đặt dữ liệu lên bus và một thiết bị khác (bộ thu thập dữ liệu) sẽ đọc dữ liệu đó. Các giao dịch có nhiều giai đoạn dữ liệu được gọi là giao dịch hàng loạt. Ngoài ra còn có các giao dịch đơn lẻ (với một giai đoạn dữ liệu). Một giao dịch có thể hoàn thành mà không cần các giai đoạn dữ liệu nếu thiết bị đích (hoặc bộ khởi tạo) chưa sẵn sàng để trao đổi. TRONG Xe buýt PCI-X một giai đoạn thuộc tính đã được thêm vào, trong đó thông tin thêm về giao dịch.

    Giao thức báo hiệu bus PCI và PCI-X

    Thành phần và mục đích của tín hiệu giao diện bus được trình bày trong bảng dưới đây. Trạng thái của tất cả các đường tín hiệu được nhận biết bởi cạnh dương CLK và những khoảnh khắc này trong mô tả thêm có nghĩa là chu kỳ bus (được đánh dấu trong các hình bằng các đường chấm dọc). Tại các thời điểm khác nhau, cùng một đường tín hiệu được điều khiển bởi các thiết bị bus khác nhau và để “chuyển giao quyền lực” chính xác (không có xung đột), cần phải có một khoảng thời gian trong đó không có thiết bị nào điều khiển đường truyền. Trên sơ đồ thời gian, sự kiện này - còn được gọi là "pirouette" (quay vòng) - được biểu thị bằng một cặp mũi tên hình bán nguyệt.

    Bàn. Tín hiệu bus PCI

    Tín hiệu
    Mục đích
    QUẢNG CÁO Địa chỉ/Dữ liệu - bus địa chỉ/dữ liệu đa kênh. Khi bắt đầu giao dịch, địa chỉ được truyền đi, trong các chu kỳ tiếp theo - dữ liệu
    C/B# Kích hoạt lệnh/Byte - lệnh/quyền truy cập byte. Lệnh xác định loại chu kỳ bus tiếp theo được chỉ định bằng mã 4 bit trong pha địa chỉ
    KHUNG#
    Khung. Việc đưa ra tín hiệu đánh dấu sự bắt đầu của giao dịch (giai đoạn địa chỉ), việc loại bỏ tín hiệu cho biết chu kỳ truyền dữ liệu tiếp theo là chu kỳ cuối cùng trong giao dịch
    PHÁT TRIỂN #
    Chọn thiết bị - thiết bị được chọn (phản hồi của trung tâm điều khiển đối với giao dịch được gửi tới nó)
    IRDY#
    Initiator Ready - sự sẵn sàng của thiết bị chính để trao đổi dữ liệu
    TRDY#
    Target Ready - sự sẵn sàng của trung tâm điều khiển để trao đổi dữ liệu
    DỪNG LẠI#
    Yêu cầu từ CPU tới master để dừng giao dịch hiện tại
    KHÓA#
    Tín hiệu khóa xe buýt để đảm bảo hoạt động không bị gián đoạn. Được sử dụng bởi một cầu nối yêu cầu nhiều giao dịch PCI để hoàn thành một thao tác
    số yêu cầu
    Yêu cầu - yêu cầu từ thiết bị chính để thu giữ xe buýt
    GNT#
    Grant - cấp quyền điều khiển xe buýt cho chủ
    cải cách hành chính
    Tính chẵn lẻ - bit chẵn lẻ chung cho các dòng AD và C/BE#
    PERR#
    Lỗi chẵn lẻ - tín hiệu lỗi chẵn lẻ (đối với tất cả các chu kỳ ngoại trừ các chu kỳ đặc biệt). Được tạo bởi bất kỳ thiết bị nào phát hiện lỗi
    PME#
    Sự kiện quản lý nguồn - tín hiệu về các sự kiện gây ra thay đổi trong chế độ tiêu thụ (tín hiệu bổ sung được giới thiệu trong PCI 2.2)
    CLKRUN#
    Đồng hồ đang chạy—bus hoạt động ở tần số đồng hồ danh định. Việc loại bỏ tín hiệu có nghĩa là làm chậm lại hoặc ngừng đồng bộ hóa để giảm mức tiêu thụ (đối với ứng dụng di động)
    PRSN #
    Hiện tại - chỉ báo hiện diện bảng mã hóa yêu cầu tiêu thụ điện năng. Trên card mở rộng, một hoặc hai đường LED được kết nối với bus GND, được bo mạch chủ cảm nhận
    RST#
    Đặt lại - đặt lại tất cả các thanh ghi về trạng thái ban đầu (nhấp vào nút “Đặt lại”
    và khi khởi động lại)
    IDSEL
    Chọn thiết bị khởi tạo - lựa chọn thiết bị trong chu trình đọc và ghi cấu hình; Các chu kỳ này được phản hồi bởi một thiết bị phát hiện mức tín hiệu cao trên đường dây này
    SERR#
    Lỗi hệ thống - lỗi hệ thống. Lỗi chẵn lẻ địa chỉ hoặc dữ liệu trong một khung đặc biệt hoặc lỗi nghiêm trọng khác được thiết bị phát hiện. Được kích hoạt bởi bất kỳ thiết bị PCI nào và gọi NMI
    REQ64#
    Yêu cầu 64 bit - yêu cầu trao đổi 64 bit. Tín hiệu được đầu vào bởi bộ khởi tạo 64 bit; nó trùng khớp với tín hiệu FRAME#. Trong quá trình hoàn tất thiết lập lại (tín hiệu RST#), tín hiệu tới thiết bị 64 bit được kết nối với bus 64 bit. Nếu thiết bị 64 bit không phát hiện được tín hiệu này, nó phải cấu hình lại về chế độ 32 bit bằng cách tắt mạch đệm byte cao
    ACK64#
    Xác nhận trao đổi 64-bit. Tín hiệu được đưa vào bởi CPU 64-bit, CPU đã nhận dạng địa chỉ của nó, đồng thời với DEVSEL#. Việc không cung cấp xác nhận này sẽ buộc người khởi tạo thực hiện trao đổi ở tốc độ 32 bit
    INTA#, INTB#, INTC#, INTD#
    Ngắt A, B, C, D - ngắt dòng yêu cầu, mức độ nhạy, mức hoạt động - thấp, cho phép phân tách (chia sẻ) các dòng
    CLK
    Đồng hồ - tần số đồng hồ xe buýt. Nên nằm trong khoảng 20-33 MHz, bắt đầu với PCI 2.1 có thể lên tới 66 MHz, trong PCI-X lên tới 100 và 133 MHz
    M66EN
    Kích hoạt 66 MHz - độ phân giải tần số xung nhịp lên tới 66 MHz (trên thẻ 33 MHz được nối đất, ở mức 66 MHz là miễn phí)
    PCIXCAP (38B)

    Khả năng PCI-X: bật thẻ PCI- nối đất, trên PCI-X133 được nối đất thông qua tụ điện 0,01 µF, trên PCI-X66 - bằng mạch RC song song 10 kOhm, 0,01 µF.

    SDONE
    Snoop Done - báo hiệu rằng chu trình snoop đã hoàn tất cho giao dịch hiện tại. Mức thấp cho biết chu trình giám sát kết hợp bộ nhớ và bộ nhớ đệm chưa hoàn tất. Tín hiệu tùy chọn, chỉ được sử dụng bởi các thiết bị bus có bộ nhớ đệm. Không còn được dùng nữa kể từ PCI 2.2
    SBO#
    Snoop Backoff - quyền truy cập hiện tại vào bộ nhớ của người đăng ký xe buýt kết thúc bằng một dòng bộ nhớ đệm đã được sửa đổi. Một tín hiệu tùy chọn, chỉ được sử dụng bởi những người đăng ký bus có bộ nhớ đệm trong thuật toán ghi lại. Không còn được dùng nữa kể từ PCI 2.2
    SMBCLK
    Đồng hồ SMBus - tín hiệu đồng hồ của bus SMBus (giao diện I2C). Được giới thiệu kể từ PCI 2.3
    SMBDAT
    Dữ liệu SMBus - dữ liệu nối tiếp của bus SMBus (giao diện I2C). Được giới thiệu kể từ PCI 2.3
    TCK
    Test Clock - Đồng bộ giao diện test JTAG
    TDI
    Đầu vào dữ liệu thử nghiệm - Dữ liệu đầu vào giao diện thử nghiệm JTAG
    TDO
    Đầu ra dữ liệu thử nghiệm - Dữ liệu đầu ra giao diện thử nghiệm JTAG
    TMS
    Bài kiểm tra Chọn chế độ- lựa chọn chế độ cho giao diện kiểm tra JTAG
    TRST
    Kiểm tra logic Đặt lại - đặt lại logic kiểm tra

    Tại bất kỳ thời điểm nào, xe buýt chỉ có thể được điều khiển bởi một thiết bị chính đã nhận được quyền làm như vậy từ trọng tài. Mỗi thiết bị chính có một cặp tín hiệu - REQ# để yêu cầu điều khiển bus và GNT# để xác nhận rằng điều khiển bus đã được cấp. Thiết bị chỉ có thể bắt đầu giao dịch (đặt tín hiệu FRAME#) khi nhận được tín hiệu GNT# đang hoạt động và đợi cho đến khi không có hoạt động bus nào. Lưu ý trong thời gian chờ nghỉ, trọng tài có thể “đổi ý” và giao quyền điều khiển bus cho thiết bị khác có mức độ ưu tiên cao hơn. Việc xóa tín hiệu GNT# sẽ ngăn thiết bị bắt đầu giao dịch tiếp theo và trong một số điều kiện nhất định (xem bên dưới) có thể buộc thiết bị chấm dứt giao dịch hiện tại. Việc phân xử các yêu cầu sử dụng xe buýt được xử lý bởi một nút đặc biệt - trọng tài, là một phần của cầu nối xe buýt này với trung tâm. Sơ đồ ưu tiên (cố định, quay vòng, kết hợp) được xác định bằng chương trình trọng tài.

    Các dòng AD ghép kênh phổ biến được sử dụng cho địa chỉ và dữ liệu. Bốn đường C/BE ghép kênh cung cấp mã hóa lệnh trong pha địa chỉ và độ phân giải byte trong pha dữ liệu. Trong các giao dịch ghi, các đường C/BE cho phép sử dụng các byte dữ liệu đồng thời với sự hiện diện của chúng trên bus AD; trong các giao dịch đọc, các tín hiệu này đề cập đến các byte của giai đoạn dữ liệu tiếp theo. Trong giai đoạn địa chỉ (bắt đầu giao dịch), thiết bị chủ kích hoạt tín hiệu FRAME#, truyền địa chỉ đích trên bus AD và truyền thông tin về loại giao dịch (lệnh) trên đường C/BE#. Thiết bị mục tiêu có địa chỉ sẽ phản hồi bằng tín hiệu DEVSEL#. Thiết bị chính cho biết sự sẵn sàng trao đổi dữ liệu với tín hiệu IRDY#; sự sẵn sàng này có thể được thiết lập trước khi nhận DEVSEL#. Khi thiết bị đích sẵn sàng trao đổi dữ liệu, nó sẽ đặt tín hiệu TRDY#. Dữ liệu chỉ được truyền trên bus AD khi tín hiệu IRDY# và TRDY# xuất hiện đồng thời. Bằng cách sử dụng các tín hiệu này, thiết bị chính và thiết bị đích sẽ phối hợp tốc độ của chúng bằng cách đưa ra trạng thái chờ. Hình bên dưới hiển thị sơ đồ thời gian của một cuộc trao đổi trong đó cả thiết bị chính và thiết bị đích đều nhập đồng hồ chờ. Nếu cả hai đều nhập tín hiệu sẵn sàng ở cuối giai đoạn địa chỉ và không loại bỏ chúng cho đến khi kết thúc quá trình trao đổi thì 32 bit dữ liệu sẽ được truyền trong mỗi chu kỳ xung nhịp sau giai đoạn địa chỉ, điều này sẽ mang lại hiệu suất trao đổi tối đa. Trong các giao dịch đọc, sau giai đoạn địa chỉ, cần có một đồng hồ bổ sung cho pirouette, trong thời gian đó người khởi tạo ngừng kiểm soát dòng AD; Thiết bị mục tiêu sẽ chỉ có thể chiếm quyền kiểm soát bus AD trong chu kỳ xung nhịp tiếp theo. Trong giao dịch ghi, không cần thiết phải thực hiện pirouette vì người khởi tạo sẽ truyền dữ liệu.

    Trên bus PCI, tất cả các giao dịch được coi là các cụm: mỗi giao dịch bắt đầu bằng một giai đoạn địa chỉ, có thể được theo sau bởi một hoặc nhiều giai đoạn dữ liệu. Số lượng pha dữ liệu trong gói không được chỉ định rõ ràng, nhưng trong chu kỳ xung nhịp của pha dữ liệu cuối cùng, thiết bị chính, khi tín hiệu IRDY# được nhập vào, sẽ loại bỏ tín hiệu FRAME#. Trong các giao dịch đơn lẻ, tín hiệu FRAME# chỉ hoạt động trong một chu kỳ xung nhịp. Nếu thiết bị không hỗ trợ giao dịch hàng loạt ở chế độ nô lệ thì thiết bị phải yêu cầu chấm dứt giao dịch hàng loạt trong giai đoạn dữ liệu đầu tiên (bằng cách xác nhận tín hiệu STOP# cùng lúc với TRDY#). Để đáp lại điều này, chủ sẽ hoàn thành giao dịch đã cho và tiếp tục trao đổi giao dịch tiếp theo với giá trị địa chỉ tiếp theo. Sau giai đoạn dữ liệu cuối cùng, thiết bị chính sẽ loại bỏ tín hiệu IRDY# và bus chuyển sang trạng thái không hoạt động (Không hoạt động) - cả hai tín hiệu: FRAME# và IRDY# đều ở trạng thái thụ động.

    Người khởi tạo có thể bắt đầu giao dịch tiếp theo mà không cần thời gian nghỉ bằng cách đặt FRAME# đồng thời với việc xóa IRDY#. Các giao dịch liền kề nhanh như vậy (Quay lại nhanh) có thể được xử lý tới một hoặc tới các thiết bị mục tiêu khác nhau. Loại giao dịch liền kề nhanh đầu tiên được hỗ trợ bởi tất cả các thiết bị PCI đóng vai trò là thiết bị mục tiêu. Hỗ trợ cho loại giao dịch liền kề thứ hai (hỗ trợ như vậy là tùy chọn) được biểu thị bằng bit 7 của thanh ghi trạng thái. Người khởi xướng được phép (nếu biết cách) sử dụng các giao dịch liền kề nhanh chóng với nhiều thiết bị khác nhau(được kích hoạt bởi bit 9 của thanh ghi lệnh) chỉ khi tất cả các tác nhân bus cho phép truy cập nhanh. Khi trao đổi dữ liệu ở chế độ PCI-X, không được phép thực hiện các giao dịch liền kề nhanh.

    Giao thức bus đảm bảo độ tin cậy của việc trao đổi - thiết bị chính luôn nhận được thông tin về quá trình xử lý giao dịch của thiết bị đích. Một phương tiện để tăng độ tin cậy của trao đổi là sử dụng điều khiển chẵn lẻ: các dòng AD và C/BE# trong cả pha địa chỉ và pha dữ liệu đều được bảo vệ bởi bit chẵn lẻ PAR (số bit thiết lập của các dòng này, bao gồm cả cải cách hành chính, phải chẵn). Giá trị PAR thực tế xuất hiện trên bus với độ trễ một chu kỳ xung nhịp so với các đường AD và C/BE#. Khi phát hiện lỗi, thiết bị sẽ tạo tín hiệu PERR# (dịch chuyển một đồng hồ sau khi bit chẵn lẻ hợp lệ xuất hiện trên bus). Khi tính toán tính chẵn lẻ trong quá trình truyền dữ liệu, tất cả các byte đều được tính đến, bao gồm cả các byte không hợp lệ (được đánh dấu bằng tín hiệu C/BEx# cao). Trạng thái bit, ngay cả trong các byte dữ liệu không hợp lệ, phải duy trì ổn định trong suốt giai đoạn dữ liệu.

    Mỗi giao dịch trên bus phải được hoàn thành theo kế hoạch hoặc bị hủy bỏ và bus phải chuyển sang trạng thái nghỉ (tín hiệu FRAME# và IRDY# là thụ động). Việc hoàn tất giao dịch được bắt đầu bởi thiết bị chính hoặc do thiết bị đích bắt đầu.

    Master có thể hoàn tất giao dịch theo một trong những cách sau:

    • hoàn thành - chấm dứt bình thường khi kết thúc trao đổi dữ liệu;
    • hết thời gian - hoàn thành trước thời gian chờ. Xảy ra khi điều khiển bus chính bị xóa trong khi giao dịch (bằng cách xóa tín hiệu GNT#) và Bộ đếm thời gian trễ của nó hết hạn. Điều này có thể xảy ra nếu thiết bị mục tiêu được đánh địa chỉ chậm đột ngột hoặc giao dịch được lên lịch quá dài. Giao dịch ngắn(với một hoặc hai pha dữ liệu) ngay cả khi tín hiệu GNT# bị loại bỏ và bộ hẹn giờ được kích hoạt, chúng vẫn hoàn thành bình thường;
    • master-Abort - Hủy bỏ giao dịch khi thiết bị chính không nhận được phản hồi từ thiết bị đích (tín hiệu DEVSEL#) trong một thời gian nhất định.

    Giao dịch có thể bị chấm dứt theo sáng kiến ​​của thiết bị mục tiêu; Để làm điều này, nó có thể nhập tín hiệu STOP#. Có ba loại chấm dứt giao dịch có thể xảy ra:

    • thử lại - lặp lại, đưa tín hiệu STOP# bằng tín hiệu TRDY# thụ động trước giai đoạn dữ liệu đầu tiên. Tình huống này xảy ra khi thiết bị mục tiêu do bận nội bộ nên không có thời gian để tạo ra dữ liệu đầu tiên đúng giờ (16 chu kỳ xung nhịp). Việc hủy bỏ thử lại là dấu hiệu để chủ khởi động lại giao dịch tương tự;
    • ngắt kết nối - ngắt kết nối, đưa tín hiệu STOP# trong hoặc sau giai đoạn dữ liệu đầu tiên. Nếu tín hiệu STOP# được nhập trong khi tín hiệu TRDY# của pha dữ liệu tiếp theo đang hoạt động thì dữ liệu này sẽ được truyền đi và giao dịch được hoàn thành. Nếu tín hiệu STOP# được đặt khi tín hiệu TRDY# thụ động thì giao dịch được hoàn thành mà không truyền dữ liệu của pha tiếp theo. Ngắt kết nối xảy ra khi thiết bị mục tiêu không thể phát hoặc nhận phần dữ liệu gói tiếp theo một cách kịp thời. Ngắt kết nối là dấu hiệu để chủ khởi động lại giao dịch này, nhưng với địa chỉ bắt đầu đã được sửa đổi;
    • hủy bỏ mục tiêu - thất bại, đưa tín hiệu STOP# đồng thời với việc loại bỏ tín hiệu DEVSEL# (trong các trường hợp trước, khi tín hiệu STOP# xuất hiện, tín hiệu DEVSEL# đã hoạt động). Sau đó, dữ liệu không còn được truyền đi nữa. Việc từ chối xảy ra khi thiết bị mục tiêu phát hiện ra một lỗi nghiêm trọng hoặc các tình trạng khác khiến thiết bị sẽ không thể phục vụ yêu cầu đã đưa ra nữa (bao gồm cả lệnh không được hỗ trợ).

    Việc sử dụng ba loại chấm dứt giao dịch là không cần thiết đối với tất cả các thiết bị mục tiêu, nhưng bất kỳ thiết bị chính nào cũng phải sẵn sàng chấm dứt giao dịch vì bất kỳ lý do nào trong số này.

    Loại kết thúc thử lại được sử dụng để tổ chức các giao dịch bị trì hoãn. Các giao dịch bị trì hoãn chỉ được sử dụng bởi các thiết bị mục tiêu chậm và bởi các cầu nối PCI khi dịch các giao dịch sang một bus khác. Bằng cách hủy bỏ (đối với người khởi tạo) một giao dịch có điều kiện thử lại, thiết bị đích sẽ thực hiện giao dịch trong nội bộ. Khi người khởi tạo lặp lại giao dịch này (đưa ra cùng một lệnh với cùng một địa chỉ và cùng một bộ tín hiệu C/BE# trong pha dữ liệu), thiết bị đích (hoặc cầu nối) sẽ có sẵn kết quả (đọc dữ liệu hoặc ghi tiến trình). trạng thái) rằng nó sẽ nhanh chóng quay trở lại bộ khởi tạo. Kết quả của một giao dịch đang chờ xử lý được thực hiện bởi một thiết bị nhất định phải được thiết bị hoặc cầu nối lưu trữ cho đến khi kết quả được người khởi tạo yêu cầu. Tuy nhiên, anh ta có thể “quên” lặp lại giao dịch (do một số tình huống bất thường). Để tránh tràn bộ đệm lưu kết quả, thiết bị phải loại bỏ các kết quả này. Việc loại bỏ có thể được thực hiện mà không có tác dụng phụ nếu giao dịch được hoãn lại vào bộ nhớ cho phép tìm nạp trước (với thuộc tính có thể tìm nạp trước, xem bên dưới). Nói chung, các loại giao dịch khác không thể bị loại bỏ mà không bị trừng phạt (tính toàn vẹn của dữ liệu có thể bị vi phạm); đối với chúng, việc loại bỏ chỉ được phép sau khi chờ lặp lại không thành công trong 215 chu kỳ bus (khi bộ đếm thời gian loại bỏ được kích hoạt). Thiết bị có thể báo cáo ngoại lệ này cho trình điều khiển của nó (hoặc toàn bộ hệ thống).

    Người khởi tạo giao dịch có thể yêu cầu sử dụng độc quyền bus PCI trong suốt thời gian hoạt động trao đổi yêu cầu nhiều giao dịch bus. Vì vậy, ví dụ, nếu CPU thực thi lệnh sửa đổi dữ liệu trong ô nhớ thuộc thiết bị PCI, thì nó cần đọc dữ liệu từ thiết bị, sửa đổi dữ liệu trong ALU của nó và trả kết quả về thiết bị. Để ngăn các giao dịch từ những người khởi tạo khác can thiệp vào hoạt động này (có thể dẫn đến vi phạm tính toàn vẹn dữ liệu), cầu nối chính thực hiện nó như một hoạt động bị chặn - tín hiệu bus LOCK# được cung cấp trong toàn bộ thời gian hoạt động. Tín hiệu này không được sử dụng (hoặc tạo ra) theo bất kỳ cách nào bởi các thiết bị PCI thông thường (không phải cầu nối); nó chỉ được sử dụng bởi các bridge để kiểm soát trọng tài.

    Sự gián đoạn phần cứng trong máy tính tương thích với PC

    Các thiết bị PCI có khả năng báo hiệu các sự kiện không đồng bộ bằng cách sử dụng các ngắt. Có bốn loại tín hiệu ngắt có sẵn trên bus PCI:

    • truyền tín hiệu có dây truyền thống qua đường INTx;
    • truyền tín hiệu có dây về các sự kiện quản lý năng lượng qua đường dây PME#;
    • báo hiệu bằng tin nhắn - MSI;
    • báo hiệu một lỗi nghiêm trọng trên đường SERR#.

    Chương này đề cập đến từng loại tín hiệu này cũng như bức tranh tổng thể về hỗ trợ ngắt phần cứng trong các máy tính tương thích với PC.

    Sự gián đoạn phần cứng trong máy tính tương thích với PC

    Các ngắt phần cứng cung cấp phản hồi của bộ xử lý đối với các sự kiện xảy ra không đồng bộ đối với mã chương trình đang thực thi. Hãy nhớ lại rằng các ngắt phần cứng được chia thành có thể che được và không thể che được. Bộ xử lý x86, khi có tín hiệu ngắt, sẽ tạm dừng việc thực thi luồng lệnh hiện tại, lưu trạng thái (cờ và địa chỉ trả về) trên ngăn xếp và thực hiện quy trình xử lý ngắt. Một quy trình xử lý cụ thể được chọn từ bảng ngắt bằng vectơ ngắt - số một byte của phần tử trong bảng này. Vectơ ngắt được đưa đến bộ xử lý theo nhiều cách khác nhau: đối với các ngắt không thể che dấu, nó được cố định, đối với các ngắt có thể che giấu, nó được báo cáo bởi bộ điều khiển ngắt đặc biệt. Ngoài các ngắt phần cứng, bộ xử lý x86 còn có các ngắt bên trong - các ngoại lệ liên quan đến các trường hợp thực thi lệnh đặc biệt và ngắt phần mềm. Đối với các trường hợp ngoại lệ, vectơ được xác định bởi chính điều kiện đặc biệt và Intel dành 32 vectơ đầu tiên (0-31 hoặc 00-1Fh) cho các trường hợp ngoại lệ. Trong các ngắt phần mềm, số vectơ được chứa trong chính lệnh (ngắt phần mềm chỉ là một cách gọi thủ tục cụ thể theo số, với thanh ghi cờ được lưu đầu tiên trên ngăn xếp). Tất cả các ngắt này sử dụng cùng một bộ 256 vectơ có thể. Về mặt lịch sử, các vectơ được sử dụng cho các ngắt phần cứng trùng lặp với các vectơ ngoại lệ và các vectơ cho các ngắt phần mềm được sử dụng cho các lệnh gọi dịch vụ BIOS và DOS. Do đó, đối với một số số vectơ, thủ tục được tham chiếu bởi bảng ngắt ngay từ đầu phải chứa mã chương trình xác định lý do nó được gọi: do một ngoại lệ, do ngắt phần cứng hoặc để gọi một số vectơ. dịch vụ hệ thống. Do đó, quy trình thực sự đảm bảo phản hồi của bộ xử lý đối với cùng một sự kiện không đồng bộ đó sẽ chỉ được gọi sau một loạt hành động để xác định nguồn ngắt. Ở đây chúng tôi cũng lưu ý rằng cùng một vectơ ngắt có thể được sử dụng bởi một số thiết bị ngoại vi - đây được gọi là cách sử dụng chung các ngắt, được thảo luận chi tiết bên dưới.

    Việc gọi quy trình dịch vụ ngắt ở chế độ thực và chế độ được bảo vệ của bộ xử lý có sự khác biệt đáng kể:

    • V. chế độ thực Bảng ngắt chứa các con trỏ xa 4 byte (phân đoạn và offset) tới các thủ tục tương ứng được gọi bằng lệnh gọi xa (Gọi Far với các cờ được lưu trước). Kích thước (256 × 4 byte) và vị trí của bảng (bắt đầu từ địa chỉ 0) là cố định;
    • Trong chế độ được bảo vệ (và trong trường hợp cụ thể của nó là chế độ V86), bảng chứa các bộ mô tả ngắt 8 byte, có thể là Cổng ngắt, Cổng bẫy hoặc Cổng tác vụ. Kích thước bảng có thể giảm (tối đa - 256 × 8 byte), vị trí bảng có thể thay đổi (được xác định bởi nội dung của thanh ghi IDT bộ xử lý). Mã xử lý ngắt ít nhất phải có đặc quyền như mã tác vụ bị gián đoạn (nếu không, ngoại lệ bảo mật sẽ được kích hoạt). Vì lý do này, trình xử lý ngắt phải chạy ở cấp nhân hệ điều hành (ở mức đặc quyền bằng 0). Việc thay đổi cấp độ đặc quyền khi gọi trình xử lý sẽ tốn thêm thời gian để xác định lại ngăn xếp. Các ngắt gây ra chuyển đổi tác vụ (thông qua Cổng tác vụ) dành thời gian đáng kể cho việc chuyển đổi ngữ cảnh - dỡ các thanh ghi bộ xử lý vào phân đoạn trạng thái của tác vụ cũ và tải chúng từ phân đoạn trạng thái của tác vụ mới.

    Số vectơ được sử dụng cho các ngắt phần cứng trong hệ điều hành ở chế độ được bảo vệ khác với số vectơ được sử dụng trong hệ điều hành ở chế độ thực để đảm bảo rằng chúng không xung đột với các vectơ được sử dụng cho các ngoại lệ của bộ xử lý.

    Bộ xử lý luôn phản hồi với ngắt không thể che dấu (NMI) (nếu việc phục vụ NMI trước đó được hoàn thành); Ngắt này tương ứng với vectơ cố định 2. Các ngắt không thể che được trong PC được sử dụng để báo hiệu các lỗi phần cứng nghiêm trọng. Tín hiệu tới đường NMI đến từ các mạch điều khiển bộ nhớ (chẵn lẻ hoặc ECC), từ các đường điều khiển bus ISA (IOCHK) và bus PCI (SERR#). Tín hiệu NMI bị chặn trước khi vào bộ xử lý bằng cách đặt bit 7 của cổng 070h thành 1, các nguồn riêng lẻ được bật và xác định bằng các bit của cổng 061h:

    • bit 2 R/W - ERP - quyền kiểm soát RAM và tín hiệu SERR# của bus PCI;
    • bit 3 R/W - EIC - Độ phân giải điều khiển bus ISA;
    • bit 6 R - IOCHK - lỗi điều khiển trên bus ISA (tín hiệu IOCHK#);
    • bit 7 R - PCK - Lỗi chẵn lẻ RAM hoặc tín hiệu SERR# trên bus PCI.

    Phản hồi của bộ xử lý đối với các ngắt có thể che giấu có thể bị trì hoãn bằng cách đặt lại cờ IF bên trong của nó (lệnh CLI vô hiệu hóa các ngắt, lệnh STI cho phép). Các ngắt có thể che được được sử dụng để báo hiệu các sự kiện trong thiết bị. Khi một sự kiện xảy ra yêu cầu phản hồi, bộ điều hợp thiết bị (bộ điều khiển) sẽ tạo ra một yêu cầu ngắt, yêu cầu này được gửi đến đầu vào của bộ điều khiển ngắt. Nhiệm vụ của bộ điều khiển ngắt là đưa yêu cầu ngắt đến bộ xử lý và truyền đạt vectơ mà qua đó quy trình xử lý ngắt phần mềm được chọn.

    Quy trình ngắt thiết bị phải thực hiện các hành động để bảo trì thiết bị, bao gồm việc đặt lại yêu cầu của nó để cho phép nó phản hồi. sự kiện tiếp theo và gửi lệnh hoàn thành đến bộ điều khiển ngắt. Khi gọi thủ tục xử lý, bộ xử lý sẽ tự động lưu trữ giá trị của tất cả các cờ trên ngăn xếp và đặt lại cờ IF, điều này sẽ vô hiệu hóa các ngắt có thể che được. Khi quay trở lại từ quy trình này (sử dụng lệnh IRET), bộ xử lý sẽ khôi phục các cờ đã lưu, bao gồm cả bộ IF (trước khi ngắt), một lần nữa cho phép các ngắt. Nếu trong quá trình vận hành bộ xử lý ngắt, cần có phản ứng với các ngắt khác (mức độ ưu tiên cao hơn), thì lệnh STI phải có trong bộ xử lý. Điều này đặc biệt đúng đối với những người xử lý dài; ở đây, lệnh STI phải được nhập càng sớm càng tốt, ngay sau phần quan trọng (không bị gián đoạn). Bộ điều khiển ngắt sẽ chỉ phục vụ các ngắt tiếp theo có cùng mức ưu tiên hoặc thấp hơn sau khi nhận được lệnh EOI (Kết thúc ngắt).

    Các máy tính tương thích với IBM PC sử dụng hai loại bộ điều khiển ngắt chính:

    • PIC (Peripheral Interrupt Controller) là bộ điều khiển ngắt ngoại vi, phần mềm tương thích với bộ điều khiển 8259A “lịch sử”, được sử dụng trong các mẫu PC IBM đầu tiên. Kể từ thời IBM PC/AT, một cặp PIC xếp tầng đã được sử dụng, cho phép phục vụ tối đa 15 dòng yêu cầu ngắt;
    • APIC (Bộ điều khiển ngắt ngoại vi nâng cao) là bộ điều khiển ngắt ngoại vi tiên tiến được giới thiệu để hỗ trợ các hệ thống đa bộ xử lý trong máy tính dựa trên bộ xử lý thế hệ 4-5 (486 và Pentium) và vẫn được sử dụng cho đến ngày nay cho các mẫu bộ xử lý sau này. Ngoài việc hỗ trợ cấu hình đa bộ xử lý, APIC hiện đại cho phép bạn tăng số lượng đường ngắt có sẵn và xử lý các yêu cầu ngắt từ các thiết bị PCI được gửi qua công cụ thông báo (MSI). Một máy tính được trang bị bộ điều khiển APIC phải có khả năng hoạt động ở chế độ tương thích với cặp PIC tiêu chuẩn. Chế độ này được kích hoạt bằng cách thiết lập lại phần cứng (và bật nguồn), cho phép bạn sử dụng các ứng dụng OS và MS DOS cũ không biết APIC và đa xử lý.

    Sơ đồ truyền thống để tạo các yêu cầu ngắt bằng cách sử dụng một cặp PIC được hiển thị trong hình bên dưới.

    Đầu vào bộ điều khiển ngắt nhận yêu cầu từ các thiết bị hệ thống (bàn phím, bộ hẹn giờ hệ thống, bộ định thời CMOS, bộ đồng xử lý), bộ điều khiển ngoại vi trên bo mạch chủ và thẻ mở rộng. Theo truyền thống, tất cả các dòng yêu cầu không bị chiếm giữ bởi các thiết bị được liệt kê đều có trên tất cả các khe bus ISA/EISA. Những dòng này được chỉ định IRQx và có mục đích chung (xem bảng bên dưới). Một số dòng này được phân bổ cho bus PCI. Bảng cũng hiển thị mức độ ưu tiên ngắt - các yêu cầu được sắp xếp theo thứ tự giảm dần. Số lượng vectơ tương ứng với các dòng yêu cầu của bộ điều khiển, hệ thống ưu tiên và một số tham số khác được đặt theo chương trình khi khởi tạo bộ điều khiển. Các cài đặt cơ bản này vẫn giữ nguyên tính truyền thống để tương thích với phần mềm nhưng khác nhau giữa hệ điều hành ở chế độ thực và chế độ được bảo vệ. Ví dụ: trong HĐH Windows, vectơ cơ sở cho bộ điều khiển chính và phụ lần lượt là 50h và 58h.

    Tên (số 1) Vectơ 2 Vectơ 3 Bộ điều khiển/mặt nạ Sự miêu tả
    NMI 02h


    IRQ0 08h 50 giờ
    #1/1h
    Điều khiển kênh, tính chẵn lẻ bộ nhớ (trong XT - bộ đồng xử lý)
    IRQ1 09h 51 giờ
    #1/2h
    Bàn phím
    IRQ2 0ah 52 giờ
    #1/4h
    XT - dự trữ, AT - không khả dụng (tầng IRQ8-IRQ15 được kết nối)
    IRQ8 70h
    58 giờ
    #2/1h
    CMOS RTC - Đồng hồ thời gian thực
    IRQ9 71 giờ
    59 giờ
    #2/2h
    Dự trữ
    IRQ10 72 giờ
    5ah
    #2/4h
    Dự trữ
    IRQ11 73 giờ
    5Bh
    #2/8h
    Dự trữ
    IRQ12 74 giờ
    5Ch
    #2/10h
    PS/2-Mouse (dự trữ)
    IRQ13 75h
    5Dh
    #2/20h
    Bộ đồng xử lý toán học
    IRQ14 76h

    #2/40h
    HDC - Bộ điều khiển ổ cứng
    IRQ15 77 giờ
    5Fh
    #2/80h
    Dự trữ
    IRQ3 0Bh
    52 giờ
    #1/4h
    COM2, COM4
    IRQ4 0Ch
    53 giờ
    #1/10h
    COM1, COM3
    IRQ5I 0Dh
    54 giờ
    #1/20h
    XT - HDC, AT - LPT2, Âm thanh (dự trữ)
    IRQ6
    55 giờ
    #1/40h
    FDC - bộ điều khiển truyền động phao
    IRQ7 0Fh
    56 giờ
    #1/80h
    LPT1 - máy in

    *1 Các yêu cầu ngắt 0, 1, 8 và 13 không được xuất ra các bus mở rộng.
    *2 Số vectơ được biểu thị khi hoạt động ở chế độ bộ xử lý thực.
    *3 Số vectơ được biểu thị khi làm việc trong hệ điều hành Windows.

    Mỗi thiết bị yêu cầu ngắt để hỗ trợ hoạt động của nó phải được gán số ngắt riêng. Việc gán số ngắt được thực hiện từ hai phía: thứ nhất, bộ chuyển đổi yêu cầu ngắt phải được cấu hình để sử dụng một đường bus cụ thể (bằng bộ nhảy hoặc bằng phần mềm). Thứ hai, phần mềm hỗ trợ bộ điều hợp phải được thông báo về số vectơ đang được sử dụng. Hệ thống PnP cho các bus ISA và PCI có thể tham gia vào quá trình gán các ngắt; các tham số CMOS Setup đặc biệt được sử dụng để phân phối các đường yêu cầu giữa các bus. Các hệ điều hành hiện đại có khả năng thay đổi việc phân công các yêu cầu liên quan đến việc phân bổ được thực hiện thông qua CMOS Setup.

    Sau khi hệ thống ngắt được cấu hình (bộ điều khiển ngắt được khởi tạo, các dòng yêu cầu được gán cho thiết bị và các con trỏ tới quy trình xử lý được đặt), các ngắt phần cứng có thể che được được xử lý như sau:

    • khi có sự kiện gián đoạn, thiết bị sẽ kích thích dòng yêu cầu ngắt được gán cho nó;
    • bộ điều khiển nhận tín hiệu yêu cầu từ các nguồn ngắt (tín hiệu IRQx) và nếu có yêu cầu bị lộ, sẽ gửi tín hiệu yêu cầu ngắt chung (tín hiệu INTR) đến bộ xử lý x86;
    • bộ xử lý, đáp ứng yêu cầu (khi bật ngắt với cờ IF), lưu trữ nội dung của thanh ghi cờ và địa chỉ trả về trên ngăn xếp, sau đó nó tạo ra chu trình bus INTA (Xác nhận ngắt), được gửi tới bộ điều khiển ngắt;
    • tại thời điểm nhận được tín hiệu INTA, bộ điều khiển ngắt sẽ ghi lại trạng thái của các đầu vào yêu cầu của nó - tại thời điểm này, trạng thái của chúng có thể đã thay đổi: các yêu cầu mới có thể xuất hiện hoặc yêu cầu từ một thiết bị “thiếu kiên nhẫn” có thể biến mất. Bộ điều khiển phân tích các yêu cầu đến theo sơ đồ ưu tiên đã được lập trình và gửi cho bộ xử lý một vectơ ngắt tương ứng với yêu cầu không được che giấu có mức ưu tiên cao nhất hiện có ở đầu vào bộ điều khiển tại thời điểm lệnh bus INTA được phát ra. Đồng thời, bộ điều khiển cũng thực hiện một số hành động theo chính sách ưu tiên đã thiết lập, có tính đến vectơ nào đã được gửi (yêu cầu nào được gửi đến dịch vụ);
    • Sau khi nhận được một vectơ ngắt, bộ xử lý gọi thủ tục xử lý ngắt tương ứng bằng số của nó. Nếu một vectơ ngắt nhất định được sử dụng không chỉ cho các ngắt phần cứng mà còn cho các ngoại lệ và/hoặc ngắt phần mềm thì trước tiên, quy trình phải xác định xem sự kiện đó thuộc loại nào. Để thực hiện việc này, quy trình có thể liên hệ với bộ điều khiển PIC (đọc thanh ghi ISR) và phân tích trạng thái của các thanh ghi bộ xử lý. Bước tiếp theođược xem xét trong trường hợp phát hiện ngắt phần cứng;
    • Quy trình xử lý ngắt phải xác định được nguồn gây ra ngắt - xác định thiết bị gây ra ngắt đó. Trong trường hợp nhiều thiết bị sử dụng chung một số yêu cầu nhất định (và do đó là vectơ), nguồn ngắt chỉ có thể được xác định bằng cách truy cập tuần tự vào các thanh ghi của từng thiết bị này. Trong trường hợp này, người ta phải tính đến khả năng nhận yêu cầu từ một số thiết bị cùng lúc hoặc trong khi xử lý ngắt từ một trong số chúng;
    • quy trình phải bảo trì thiết bị nguồn ngắt - thực hiện các hành động “hữu ích” liên quan đến sự kiện mà thiết bị phát tín hiệu. Dịch vụ này cũng phải đảm bảo rằng tín hiệu yêu cầu ngắt từ thiết bị này được loại bỏ. Trong trường hợp các ngắt dùng chung, có thể có một số nguồn và tất cả chúng đều yêu cầu bảo trì;
    • nếu quá trình xử lý ngắt mất một lượng thời gian đáng kể, trong thời gian đó hệ thống cần đáp ứng các yêu cầu có mức độ ưu tiên cao hơn, thì sau phần quan trọng, một lệnh STI sẽ được đưa vào trình xử lý để đặt cờ cho phép ngắt (IF) trong bộ xử lý . Kể từ thời điểm này, các ngắt lồng nhau có thể xảy ra, làm gián đoạn công việc của một trình xử lý nhất định bằng một thủ tục khác có mức độ ưu tiên cao hơn;
    • Quy trình xử lý ngắt phải gửi cho bộ điều khiển một lệnh để hoàn tất quá trình xử lý ngắt EOI (Kết thúc ngắt), theo đó bộ điều khiển sẽ cho phép nhận tín hiệu tiếp theo từ đầu vào được phục vụ và các tín hiệu có mức độ ưu tiên thấp hơn. Việc này phải được thực hiện sau khi loại bỏ tín hiệu ngắt khỏi các thiết bị được bảo trì, nếu không bộ điều khiển sẽ gửi yêu cầu thứ hai sau EOI. Trình xử lý ngắt mà yêu cầu đến từ bộ điều khiển phụ phải gửi EOI đến cả bộ điều khiển phụ và bộ điều khiển chính. Phần của trình xử lý bắt đầu từ khi ban hành lệnh EOI cho đến khi kết thúc (lệnh IRET) phải liên tục, tức là phần quan trọng. Nếu trình xử lý cho phép các ngắt lồng nhau thì phải có các ngắt vô hiệu hóa lệnh CLI trước khi ban hành lệnh EOI;
    • Quá trình xử lý ngắt được hoàn thành bằng lệnh IRET, theo đó bộ xử lý quay lại thực thi luồng lệnh bị gián đoạn, trước đó đã lấy nội dung của thanh ghi cờ từ ngăn xếp. Trong trường hợp này, ngắt phần cứng sẽ được kích hoạt lại.

    Trình tự này được mô tả liên quan đến bộ điều khiển ngắt thông thường (PIC), các hệ thống có APIC thay đổi cách truyền vectơ ngắt từ bộ điều khiển đến bộ xử lý và các ngắt MSI thay đổi cách truyền tín hiệu từ thiết bị đến bộ điều khiển APIC . Những sắc thái này được mô tả trong các phần tiếp theo.

    thông tin chung

    Cầu PCI (Cầu PCI) là phần cứng đặc biệt để kết nối các bus PCI (và PCI-X) với nhau và với các bus khác. Host Bridge được sử dụng để kết nối PCI với trung tâm của máy tính (bộ nhớ hệ thống và bộ xử lý). “Nhiệm vụ cao quý” của cầu nối chính là tạo ra các cuộc gọi đến không gian cấu hình dưới sự kiểm soát của bộ xử lý trung tâm, cho phép máy chủ (bộ xử lý trung tâm) định cấu hình toàn bộ hệ thống con bus PCI. Hệ thống có thể có một số cầu nối chính, cho phép truyền thông hiệu suất cao với trung tâm hơn thiết bị (số lượng thiết bị trên một xe buýt bị hạn chế). Trong số các xe buýt này, một chiếc được chỉ định có điều kiện là xe buýt chính (xe buýt 0).

    Cầu nối ngang hàng PCI (PeertoPeer Bridge) được sử dụng để kết nối các bus PCI bổ sung. Những cầu nối này luôn tạo ra thêm chi phí truyền dữ liệu, do đó hiệu suất hiệu quả của liên lạc giữa thiết bị với trung tâm sẽ giảm đi sau mỗi cầu nối bị cản trở.

    Để kết nối các bus PCMCIA, CardBus, MCA, ISA/EISA, X-Bus và LPC, các cầu nối đặc biệt được sử dụng, được bao gồm trong chipset bo mạch chủ hoặc là các thiết bị (chip) PCI riêng biệt. Những cây cầu này chuyển đổi giao diện của các xe buýt mà chúng kết nối, đồng bộ hóa và trao đổi dữ liệu đệm.

    Mỗi cây cầu đều có thể lập trình được - nó được cung cấp các dải địa chỉ trong bộ nhớ và các không gian I/O được phân bổ cho các thiết bị trên các bus của nó. Nếu địa chỉ CPU của giao dịch hiện tại trên một bus (bên) của bridge đề cập đến bus của phía đối diện, bridge sẽ chuyển giao dịch sang bus thích hợp và đảm bảo đàm phán giao thức bus. Do đó, một tập hợp các cầu nối PCI thực hiện việc định tuyến các yêu cầu dọc theo các bus liên quan. Nếu hệ thống có nhiều cầu nối chính thì việc định tuyến từ đầu đến cuối giữa các thiết bị trên các bus khác nhau có thể không thực hiện được: các cầu nối chính chỉ có thể được kết nối với nhau thông qua các đường trục của bộ điều khiển bộ nhớ. Việc hỗ trợ dịch tất cả các loại giao dịch PCI thông qua các cầu nối chính trong trường hợp này hóa ra lại quá phức tạp và do đó không được đặc tả PCI yêu cầu nghiêm ngặt. Do đó, tất cả các thiết bị hoạt động trên tất cả các bus PCI đều có thể truy cập bộ nhớ hệ thống, nhưng khả năng giao tiếp ngang hàng có thể phụ thuộc vào việc các thiết bị này thuộc về bus PCI này hay bus PCI khác.

    Việc sử dụng cầu nối PCI mang lại những cơ hội như:

    • tăng số lượng thiết bị được kết nối có thể, khắc phục những hạn chế về thông số kỹ thuật điện của xe buýt;
    • chia thiết bị PCI thành các phân đoạn - bus PCI - với các đặc điểm khác nhau về độ sâu bit (32/64 bit), tần số xung nhịp (33/66/100/133 MHz), giao thức (PCI, PC-X Mode 1, PCI-X Mode 2, PCI Express). Trên mỗi xe buýt, tất cả người đăng ký đều là người tham gia yếu nhất; sắp xếp chính xác các thiết bị trên xe buýt cho phép bạn sử dụng khả năng của thiết bị và bo mạch chủ với hiệu quả tối đa;
    • tổ chức các phân khúc có kết nối/ngắt kết nối “nóng” của thiết bị;
    • tổ chức thực hiện song song các giao dịch từ những người khởi tạo nằm trên các xe buýt khác nhau.

    Mỗi cầu PCI chỉ kết nối hai bus: bus chính, nằm gần đầu phân cấp hơn, với bus phụ; Các giao diện bridge mà nó được kết nối với các bus này lần lượt được gọi là sơ cấp và thứ cấp. Chỉ cho phép một cấu hình thuần túy giống như cây, tức là hai xe buýt chỉ được kết nối với nhau bằng một cây cầu và không có “vòng” cầu nào. Các xe buýt được kết nối với giao diện phụ của một cây cầu nhất định bằng các cây cầu khác được gọi là các xe buýt cấp dưới. Cầu nối PCI tạo thành một hệ thống phân cấp các bus PCI, trên cùng là bus chính, được đánh số 0, được kết nối với cầu nối chính. Nếu có nhiều cầu chính thì trong số các xe buýt của chúng (có thứ hạng ngang nhau), cầu chính sẽ là cầu được gắn số 0.

    Cây cầu phải thực hiện một số chức năng bắt buộc:

    • phục vụ xe buýt được kết nối với giao diện phụ của nó:
    • thực hiện phân xử - nhận tín hiệu yêu cầu REQx# từ chủ xe buýt và cấp cho họ quyền điều khiển xe buýt bằng tín hiệu GNTx#
    • đỗ xe buýt - gửi tín hiệu GNTx# đến một số thiết bị khi bất kỳ chủ nhân nào không yêu cầu điều khiển xe buýt;
    • tạo ra các chu trình cấu hình loại 0 với việc hình thành các tín hiệu IDSEL riêng lẻ cho thiết bị PCI có địa chỉ;
    • “kéo” tín hiệu điều khiển lên mức cao;
    • xác định khả năng của các thiết bị được kết nối và chọn chế độ vận hành bus phù hợp với chúng (tần số, độ sâu bit, giao thức);
    • tạo thiết lập lại phần cứng (RST#) bằng cách đặt lại từ giao diện chính và bằng lệnh, báo cáo chế độ đã chọn bằng một cảnh báo đặc biệt.
    • duy trì bản đồ tài nguyên nằm trên các mặt khác nhau cầu;
    • phản hồi dưới vỏ bọc của thiết bị mục tiêu đối với các giao dịch do chủ nhân khởi tạo trên một giao diện và gửi đến tài nguyên nằm trên giao diện khác; phát các giao dịch này sang một giao diện khác, hoạt động như một thiết bị chính và truyền kết quả của chúng đến người khởi tạo thực sự.

    Những cầu thực hiện những chức năng này được gọi là cầu trong suốt; Để làm việc với các thiết bị nằm phía sau những cây cầu như vậy, không cần thêm trình điều khiển cầu nối bổ sung. Chính những cầu nối này đã được mô tả trong thông số kỹ thuật PCI Bridge 1.1 và đối với chúng, với tư cách là thiết bị PCI, có lớp học đặc biệt(06). Trong trường hợp này, mô hình địa chỉ tài nguyên “phẳng” (bộ nhớ và I/O) được ngụ ý: mỗi thiết bị có địa chỉ riêng, duy nhất (không giao nhau với các thiết bị khác) trong một hệ thống nhất định (máy tính).

    Ngoài ra còn có các cầu nối mờ (cầu không trong suốt), cho phép bạn tổ chức các phân đoạn riêng biệt với không gian địa chỉ cục bộ của riêng chúng. Một cây cầu mờ thực hiện dịch địa chỉ (chuyển đổi) cho các giao dịch trong đó thiết bị khởi tạo và thiết bị đích nằm ở hai phía đối diện của cây cầu. Không phải tất cả các tài nguyên (phạm vi địa chỉ) của phía đối diện đều có thể truy cập được thông qua một cây cầu như vậy. Ví dụ: cầu nối mờ được sử dụng khi máy tính có hệ thống con “đầu vào/đầu ra thông minh” (I20) với bộ xử lý I/O và không gian địa chỉ cục bộ của riêng nó.

    thông tin chung

    Bus PCI được xây dựng nguyên bản với khả năng cấu hình tự động. tài nguyên hệ thống(bộ nhớ và không gian I/O và các dòng yêu cầu ngắt). Cấu hình thiết bị tự động (chọn địa chỉ và ngắt) được hỗ trợ bởi các công cụ BIOS và OS; nó tập trung vào công nghệ PnP. Tiêu chuẩn PCI xác định không gian cấu hình cho mỗi chức năng lên tới 256 thanh ghi (8 bit), không được gán cho không gian bộ nhớ hoặc không gian I/O. Chúng được truy cập thông qua đội đặc biệt Bus Đọc cấu hình và Ghi cấu hình, được tạo bằng cách sử dụng một trong các cơ chế phần cứng và phần mềm được mô tả bên dưới. Trong không gian này có những khu vực cần thiết cho tất cả các thiết bị và những khu vực cụ thể. Thiết bị cụ thể có thể không có sổ đăng ký ở tất cả các địa chỉ, nhưng phải hỗ trợ hoàn thành bình thường các hoạt động được gửi tới chúng. Trong trường hợp này, việc đọc các thanh ghi không tồn tại sẽ trả về số 0 và việc ghi phải được thực hiện như một thao tác nhàn rỗi.

    Không gian cấu hình của một hàm bắt đầu bằng một tiêu đề tiêu chuẩn, chứa các mã định danh của nhà sản xuất, thiết bị và loại của nó, cũng như mô tả về các tài nguyên hệ thống được yêu cầu và chiếm dụng. Cấu trúc tiêu đề được chuẩn hóa cho các thiết bị thông thường (loại 0), cầu nối PCI-PCI (loại 1), cầu nối PCI-CardBus (loại 2). Loại tiêu đề xác định vị trí của các thanh ghi nổi tiếng và mục đích của các bit của chúng. Sau tiêu đề có thể có các thanh ghi dành riêng cho thiết bị. Đối với các khả năng (khả năng) được tiêu chuẩn hóa của các thiết bị (ví dụ: quản lý năng lượng) trong không gian cấu hình, có các khối thanh ghi có mục đích đã biết. Các khối này được tổ chức thành chuỗi, khối đầu tiên như vậy được tham chiếu trong tiêu đề tiêu chuẩn (CAP_PTR); trong thanh ghi đầu tiên của khối có một liên kết tới khối tiếp theo (hoặc 0, nếu khối này- cuối cùng). Do đó, bằng cách quét chuỗi, phần mềm cấu hình sẽ nhận được danh sách tất cả các thuộc tính thiết bị có sẵn và vị trí của chúng trong không gian cấu hình chức năng. PCI 2.3 xác định các CAP_ID sau, một số trong đó chúng ta sẽ xem xét:

    • 01 - quản lý năng lượng;
    • 02 - Cổng AGP;
    • 03 - VPD (Dữ liệu sản phẩm quan trọng), dữ liệu cung cấp mô tả toàn diện về các thuộc tính phần cứng (có thể cả phần mềm) của thiết bị;
    • 04 - đánh số các khe và khung;
    • 05 - MSI ngắt;
    • 06 - Hot Swap, kết nối nóng cho Compact PCI;
    • 07 - Phần mở rộng giao thức PCI-X;
    • 08 - dành riêng cho AMD;
    • 09 - theo quyết định của nhà sản xuất (Nhà cung cấp cụ thể);
    • 0Ah — cổng gỡ lỗi (Cổng gỡ lỗi);
    • 0Bh - PCI Hot Plug, cung cấp tiêu chuẩn về “phích cắm nóng”.

    Trong PCI-X dành cho thiết bị Chế độ 2, không gian cấu hình được mở rộng lên 4096 byte; trong không gian mở rộng có thể có những mô tả thuộc tính mở rộng.

    Sau đó thiết lập lại cứng(hoặc khi bật nguồn) các thiết bị PCI không phản hồi với truy cập bộ nhớ và không gian I/O; chúng chỉ khả dụng để đọc và ghi cấu hình. Trong các hoạt động này, các thiết bị được chọn bằng cách sử dụng các tín hiệu IDSEL riêng lẻ và bằng cách đọc các thanh ghi, phần mềm cấu hình sẽ tìm hiểu về các yêu cầu tài nguyên và các tùy chọn cấu hình thiết bị có thể có. Sau khi chương trình cấu hình thực hiện phân bổ tài nguyên (trong quá trình POST hoặc khởi động OS), các tham số cấu hình (địa chỉ cơ sở) được ghi vào thanh ghi cấu hình thiết bị. Chỉ sau đó, các thiết bị (chính xác hơn là các chức năng) mới được đặt thành các bit cho phép chúng phản hồi các lệnh để truy cập bộ nhớ và cổng I/O, cũng như tự điều khiển bus. Để luôn có thể tìm được một cấu hình khả thi, tất cả tài nguyên mà thẻ chiếm giữ phải có thể di chuyển được trong không gian của chúng. Đối với các thiết bị đa chức năng, mỗi chức năng phải có không gian cấu hình riêng. Thiết bị có thể ánh xạ các thanh ghi giống nhau vào cả bộ nhớ và không gian I/O. Trong trường hợp này, cả hai bộ mô tả phải có trong thanh ghi cấu hình của chúng, nhưng trình điều khiển chỉ được sử dụng một phương thức truy cập (tốt nhất là thông qua bộ nhớ).

    Tiêu đề không gian cấu hình mô tả nhu cầu về ba loại địa chỉ:

    • đăng ký trong không gian I/O);
    • Các thanh ghi I/O được ánh xạ tới bộ nhớ (I/O được ánh xạ bộ nhớ). Đây là vùng bộ nhớ phải được truy cập theo đúng yêu cầu của người khởi tạo trao đổi. Việc truy cập các thanh ghi này có thể thay đổi trạng thái bên trong của thiết bị ngoại vi;
    • bộ nhớ cho phép bộ nhớ có thể tìm nạp trước. Đây là vùng bộ nhớ trong đó việc đọc "bổ sung" (với kết quả không được sử dụng) không dẫn đến tác dụng phụ, tất cả các byte được đọc độc lập với tín hiệu BE# và việc ghi từng byte có thể được bắc cầu với nhau (nghĩa là nó được bộ nhớ ở dạng tinh khiết nhất của nó).

    Yêu cầu về địa chỉ được chỉ định trong thanh ghi địa chỉ cơ sở - BAR (Thanh ghi địa chỉ cơ sở). Chương trình cấu hình cũng có thể xác định kích thước của các khu vực được yêu cầu. Để làm điều này, sau khi thiết lập lại phần cứng, nó phải đọc và lưu các giá trị của các địa chỉ cơ sở (đây sẽ là các địa chỉ mặc định), ghi FFFFFFFFh vào mỗi thanh ghi và đọc lại giá trị của chúng. Trong các từ nhận được, bạn cần đặt lại các bit giải mã loại (bit cho bộ nhớ và bit cho I/O), đảo ngược và tăng dần từ 32 bit thu được - kết quả sẽ là độ dài của vùng (bỏ qua các bit cho cổng ). Phương pháp này giả định rằng độ dài của vùng được biểu thị là 2n và vùng được căn chỉnh tự nhiên. Tiêu đề tiêu chuẩn chứa tối đa 6 thanh ghi địa chỉ cơ sở, nhưng khi sử dụng địa chỉ 64 bit, số lượng khối được mô tả sẽ giảm. Các thanh ghi BAR không được sử dụng sẽ luôn trả về số 0 khi đọc.

    PCI có hỗ trợ cho các thiết bị cũ (VGA, IDE), chúng tự khai báo như vậy bằng mã lớp trong tiêu đề. Địa chỉ cổng truyền thống (cố định) của chúng không được khai báo trong không gian cấu hình, nhưng khi bit cho phép truy cập cổng được đặt, các thiết bị cũng được phép phản hồi các địa chỉ đó.