Pci-E

Kısaca: PCI Express, resmen PCIe (PCI-E`de olabilmekte ve genellikle bu kullanılmaktadır) olarak kısaltılmıştır ve kesinlikle PCI-X ile karıştırılmamalıdır. PCI-X, mevcut PCI programlama kavramlarını kullanan bir PCI bağlantı standartıdır, fakat bu bağlantıyı full duplex, multi - lane, noktadan noktaya seri fiziksel katman iletişim protokollerini kullanarak çok daha farklı ve süratli bir biçimde gerçekleştirir. PCI Express daha önceleri 3üncü Jenerasyon I/O için Arapaho veya 3 ...devamı ☟

PCI Express, resmen PCIe (PCI-E`de olabilmekte ve genellikle bu kullanılmaktadır) olarak kısaltılmıştır ve kesinlikle PCI-X ile karıştırılmamalıdır. PCI-X, mevcut PCI programlama kavramlarını kullanan bir PCI bağlantı standartıdır, fakat bu bağlantıyı full duplex, multi - lane, noktadan noktaya seri fiziksel katman iletişim protokollerini kullanarak çok daha farklı ve süratli bir biçimde gerçekleştirir. PCI Express daha önceleri 3üncü Jenerasyon I/O için Arapaho veya 3GIO olarak bilinirdi. PCIe geçit başına 250 MB/s hızında veri transfer eder. Maksimum 32 geçit sayısıyla, PCIe toplam birleştirilmiş 8 8 GB/s veri transfer hızına ulaşabilmektedir. Bu rakamları bir perspektife oturtabilmek üzere şunları belirtebiliriz; tek bir geçit normal bir PCI`ın veri hızının yaklaşık iki katına ulaşabilmektedir, dört geçitli bir yuva PCI-X`in en son versiyonunun veri hızıyla kıyaslanabilecek bir veri hızına sahiptir, ve sekiz geçitli bir yuva AGP`nin en hızlı versiyonuna eşit bir veri hızına sahiptir. PCIe`ninfull duplex noktadan noktaya özelliği PCI üzerindeki avantajını özellikle çok sayıda cihazlerı içeren sistemlerde daha da geliştirecektir.

Gözden geçirme

PCIe fiziksel katmanı daha çok bükümlü tel çifti “twisted pair” ethernet`e benzer bir seri bağlantılar ağıdır. Ana kart üzerinde çok bacağı olan tek bir göbek kullanılır, bu göbek geniş bir anahtarlama ve dönemdeşliğe olanak sağlar. Bu tasarımın tercih edilmesinin nedeni, saat hızı arttıkça, paralel bağlantıların senkronzasyonlarının zamanlama çarpıklığı “timing skew” nedeniyle engellenmesidir. PCIe paralel veri yollarından seri bağlantılara geçişe örneklerden sadece bir tanesidir. Diğer örenkler için HyperTransport, Serial ATA, USB, SAS veya FireWire`ı inceleyiniz. PCIe öncelikle Intel tarafından desteklenmektedir. Intel InfiniBand sisteminden ayrıldıktan sonra Arapahoe projesi olarak standart üzerinde çalışmaya başlamıştı. PCIe sadece yerel bağlantı “local interconnect” olarak kullanılmak üzere geliştirilmiştir. Mevcut PCI sistemi üzerine kurulduğu için kartlar ve sistemler sadece fiziksel katman değiştirilerek PCI Express`e dönüştürülebilirdi - mevcut sistemler hiç bir yazılım değiştirilmeden PCI Express`e uyarlanabilirdi. PCI Express üzerindeki artırılmış bant genişliği onun AGP ve PCI dahil olmak üzere neredeyse bütün dahili yuvaların yerine geçebilmesini sağlıyor. Intel böylece şimdiki makinelerde kullanılan northbridge/southbridge çözümlerinin aksine, bütün harici cihazlarla iletişim kurabilen bir PCI Express kontrol birimi tasavvur ediyor.

Donanım protokol özeti

PCIe linki geçit "lane" adı verilen tek yönlü özgülleştirilmiş seri (1 bit) noktadan noktaya bağlantılar etrafında kurulmuştur. Bu durum tüm cihazların aynı çok yönlü, 32 bit (veya 64 bit), paralel yuvayı paylaştıkları yuva tabanlı bir sistem olan PCI bağlantısı ile çok keskin bir tezat oluşturur. PCI Express Hareket Katmanı, Veri Linki Katmanı ve Fiziksel Katmanı içeren bir protokoldür. Fiziksel katman kendi içerisinde mantıksal alt katmana ve elektriksel alt katmana bölünmüştür. Mantıksal alt katman da kendi içerisinde Fiziksel Kodlama Alt katmanına (PCS) ve bir Ortam Erişim Kontrolü Alt katmanına (MAC) ayrılmıştır (bu terimler IEEE 802 ağ oluşturma protokolü modelinden alınmıştır). .

Fiziksel katman



Elektriksel seviyede her geçit iki adet 2.5 Gbit/s hızında tek yönlü düşük voltaj türevsel imleşim “low voltage differential signaling” (LVDS) çifti kullanır. Gönderme alma birbirinden farklı türevsel çiftlerdir, geçit başına 4 adet veri kablosu bulunur. DFI`ın LanParty nF4 Ultra-D`sinde görüldüğü gibi geleneksel bir 32 bit PCI yuvası (alt) ile karşılaştırıldığında PCI Express`in yuvaları (yukarıdan aşağıya: x4, x16, x1 ve x16`dır). XFX marka nVidia GeForce 6600GT PCI-Express video adaptör kartı Herhangi iki PCIe cihazı arasındaki bağlantı bir “link” olarak tanımlanır ve 1 veya daha fazla geçitin bir araya gelmesiyle oluşur. Kullanılan tüm cihazlar en azından tek geçitli (x1) linkini destekleyebiliyor olmalıdır. Cihazlar tercihe bağlı olarak; 2, 4, 8, 12, 16, veya 32 geçitli linkleri destekleyebilir. Bu sayede her iki yönde de çok iyi uyumluluk elde edilir. Bir PCIe kartı en azından kendisi kadar büyük olan herhangi bir yuvaya fiziksel olarak uyar (ve düzgün biçimde çalışır) (örneğin bir x1 kartı x4 veya x16 yuvasına rahatça takılabilir) ve fiziksel olarak daha büyük olan bir yuvaya (örneğin x16) daha az sayıdaki geçitle elektriksel olarak kablolanabilir (örneğin x1 veya x8, fakat yine de daha büyük fiziksel yuvanın gerektirdiği güç ve topraklama bağlantılarını sağlıyor olması gerekir). Her iki durumda da PCIe linki desteklenen en yüksek geçit sayısı üzerinden iletişim kuracaktır. Buna karşın herhangi bir chazın fiziksel olarak kendinden daha küçük bir yuvada çalışmasına imkan yoktur (örneğin bir x4 kartı bir x1 yuvasına fiziksel olarak yerleştirilemez - buna rağmen sadece tek geçit kablolanararak bir x4 yuvasında çalıştırılabilir).

PCIe duraklamalar da dahil olmak üzere bütün mesajları veri için kullanılan aynı link üzerinden gönderir. Seri protokol hiçbir zaman bloke edilemez, böylece PCI ile kıyaslanabilecek bir bekleme süresi (PCI`ın adanmış duraklama hatları vardır) elde edilir. Çoklu geçit linkleri üzerinden gönderilen verinin serpiştirilmiş özelliği vardır. Bunun anlamı her ardışık baytın yine ardışık geçitten gönderileceğidir. PCIe spesifikasyonu bu serpiştirme özelliğinden “ veri ayıklama “ (data striping) olarak söz eder. Gelen ayıklanmış verinin senkronize edilmesi (veya kayıklığını giderme) için önemli ölçüde karmaşık donanım gerekmesine rağmen ayıklama işlemi sonuç olarak linkten alınan iş miktarını önemli ölçüde yükseltir. Dolgu gereksinimlerine bağlı olarak, ayıklama işlemi link üzerindeki küçük veri paketlerinin bekleme süresinde kısalmaya neden olmaz.

Saat besleme bilgisinin bütün yüksek hızlı veri iletişim protokollerinde olduğu gibi sinyalin içerisine gömülü halde olması gerekir. Fiziksel seviyede PCI Express birbirini takip eden birler veya birbirini takip eden sıfırlar dizilerinin uzunluklarının sınırlandırılabilmesi için ortak bir 8B/10B encoding veri tanımlaması kullanır, böylece alıcı bit kenarlarının nerede olduğu bilgisini takip edebilir. Bu kodlama tanımlaması 8 adet kodlanmamış (yük) bit veriyi gönderilen verinin 10 adet kodlanmış bit verisiyle değiştirir, bu arada elektriksel bant genişliğinin %20`sini kullanır. (SONET gibi) diğer bazı protokoller saat besleme bilgisini veri akışına eklemek için çırpma "scrambling" adı verilen farklı bir şifreleme biçimi kullanırlar. PCI Express spesifikasyonu da bir scrambling algoritmasına sahip olmasına rağmen gerçekleştirdiği scrambling SONET içerisindeki scrambling ile birbirine karıştırılmamalıdır. PCI içerisindeki scrambling, saat bilgisini gömmek yerine gönderilen veri dizisi içerisinde RF yayım doruklarına neden olan tekrarlayan veri düzenlerini engellemeye yönelik olarak tasarlanmıştır. PCIe`nin birinci jenerasyonu 2.5 gigabits/s hızda tekli bir işaretleşme hızı ile kısıtlanmış durumdaydı. PCI Özel İlgi Grubu “Special Interest Group” (muhtelif PCI standartlarını geliştiren ve sahibi olan endüstriyel bir organizasyon) ileride çıkartacakları versiyonların hızlarının 5 ve 10 gigabit/s olmasını planlıyor.

Veri linki katmanı



Veri linki katmanı, Hareket Katmanı tarafından yaratılan Hareket Katmanı Paketlerinin (TLP`ler), 32 bit veri koruma çevrimsel artıklık kodlamasının “cyclic redundancy check” (CRC, fakat bu kavram içerisinde LCRC olarak biliniyor) ve bir alındı protokolünün (ACK ve NAK işaretleşme) sıraya dizilmesi işlemini yerine getirir. TLP`ler LCRC kontrolünden geçtiğinde ve alındı bilgisi veren bir sıra numarası kontrolu yapıldığında ACK, bu testlerden geçemeyenler olumsuz alındı bilgisi verir, diğer bir ifadeyle NAK. NAK ile sonuçlanan TLP`ler veya ACK için beklerken zaman aşımına uğrayan TLP`ler Veri Linki Katmanının veri iletim geçidinde özel bir ara bellek tarafından yeniden oynatılır. Böylece cihazın herhangi bir şekilde ürettiği veya iletim ortamından kaynaklanan parazitler engellenir ve elektriksel gürültü yerine sadece TLP`lerin aktarılması sağlanır. ACK ve NAK işaretleri veri linki katmanı paketi veya DLLP olarak bilinen alt seviye bir paket olarak iletilir. DLLP`ler bağlantılı iki cihazın iletişim katmanları arasında akış kontrol bilgisinin paylaşılması için olduğu kadar bazı güç yönetim fonksiyonları için de kullanılmaktadır.

Hareket katmanı



PCI Express bölünmüş hareket uygular (istek ve cevabın zaman olarak birbirinden ayrılmış olduğu hareketler). Böylece hedef cihaz cevap vermek için veri toplarken linkin diğer veri trafiğine izin vermesini sağlar. PCI Express kredi tabanlı bir çeşit akış kontrolu kullanır. Bu düzende; bir cihaz Hareket Katmanı içerisindeki alış ara belleklerinin her biri için belirli miktarda bir kredi tanımlar. Linkin diğer ucundaki cihaz, bu cihaza hareket gönderdiğinde bu gönderim esnasında her TLP`nin kendi hesabından kullanmış olduğu krediyi sayar. Gönderen cihaz sadece TLP gönderir, bunu gerçekleştirirken kullanılan kredinin kendi kredi limitini aşmaması gerekir. Alan cihaz ara belleğinde TLP`leri işlemeyi bitirdiğinde veriyi gönderen cihaza kredilerinin geri yüklendiğini belirten bir sinyal gönderir. Böylece kredi limiti tekrar eski düzeyine yükseltilmiş olur. Kredi sayaçları modüler sayaçlardır ve kullanılan kredilerin kredi limitleri ile karşılaştırılması için modüler aritmetiğe “modular arithmetic” gerek duyulur. Bu düzeneğin avantajı (bekleme durumları veya el sıkışma tabanlı transfer protokolleri gibi diğer yöntemlerle kıyaslandığında) kredi geri dönüşündeki bekleme süresinin performansı etkilememesidir, bunun şartı kredi limitinin aşılmamıl olmasıdır. Bunun için de yeterince büyük ara belleğe sahip cihazlar kullanılması gerekir.

Birinci jenerasyon PCIe`nin genellikle her geçit için her yönde 250 MB/s veri hızını desteklediği belirtilir. Belirtilen bu rakam fiziksel işaretleşme hızının (2.5 Gbaud) şifreleme yüküne (10bits/byte)bölümü ile bulunur. Bunun anlamı 16 geçitli (x16) bir PCIe kartının teorik olarak her yönde 250 * 16 = 4 GB/s yeteneğine sahip olması gerektiğidir. Bu durum veri baytları yönünden doğrudur, daha anlamlı hesaplamalar için kullanılabilir veri yükü ile birlikte yapılacak çalışmalardan elde edilecek sonuçlara bakılması gerekir, bu durumda tarfiğin profili önem kazanacaktır. Trafik profili yüksek seviye (yazılım) uygulamasının ve orta protokol seviyelerinin bir faktörüdür. Diğer seri bağlantılı yüksek veri hızlı sistemlerde olduğu gibi, PCIe`ninde ilave transfer sağlamlığı ihtiyacından doğan bir protokolü ve fazladan işlem yükü vardır (CRC ve Alındılar). Uzun ve devamlı tek yönlü transferlerde (yüksek performanslı depolama kontrol birimlerinde olduğu gibi) PCIe`nin ham (geçit) veri hızının %>95`ine ulaşılabilir. Bu transferler en çok faydayı sayısı artırılmış olan geçitlerden görürler (x2, x4, vb.) Fakat daha tipik uygulamalarda (USB veya Ethernet kontrol birimi gibi) trafik profili, sık ve güçlendirilmiş alındılara sahip kısa veri paketleri olarak karakterize olur. Bu çeşit bir trafik paketlerin ayrıştırılmasını gerektirmesinden ve duraklamalara zorlanmasından ötürü doğan yükler nedeniyle linkin verimliliğini azaltır (cihazın ana bilgisayar ara yüzü veya PC`nin CPU`sunun duraklamaya zorlanması). Bu tür This type of traffic reduces the efficiency of the link, due to overhead from packet parsing and forced interrupts (either in the device`s host interface or the PC`s CPU.) Bu tür kayıplar sadece PCIe`ye mahsus kayıplar değildir.

Form faktörleri

  • Yüksekliği düşük kart
  • Mini Kart: Mini PCI form faktörü için bir yedek (konnektör üzerinde x1 PCIe, USB 2.0 ve SMBus veri yoluna sahiptir)
  • ExpressCard: PCMCIA form faktörüne benzer (x1 PCIe ve USB 2.0`a sahip, takılmaya hazır)
  • XMC: CMC/PMC form faktörüne banzer (x4 PCIe veya seri RapidI/O`lu)
  • Gelişmiş TCA: Daha büyük uygulamalar için CompactPCI`ye bir tamamlayıcı; seri tabanlı arka yüz topolojilerini destekler.
  • AMC: AdvancedTCA spesifikasyonu için bir tamamlayıcı; işlemciyi ve ATCA kartları üzerinde I/O modüllerini (x1, x2, x4 veya x8 PCIe). destekler.
  • Kablo Spesifikasyonu: PCI SIG bir kablo spesifikasyonu çıkartmak için çalışmalara devam ediyor (13 Eylül 2006). Bu spesifikasyon bağlanacak olan PCIe kartına, sanki ana kartın işlemcisine bağlanmışcasına onlarca hatta birkaç yüz metre uzunluğunda kabloyla aynı bağlantı bant genişliğinde bağlanabilmesine izin verir (v0.3 spesifikasyonu, 2004) Bu kablo spesifikasyonu özellikle bağlantı ve genel I/O genişlemesi ve diğer uygulamalara ihtiyaç duyan toplu olmayan PC`lerin ve yer sorunu olan laptoplar ve diğer cihazlerın kullanımı için özellikle faydalı olacaktır.
  • Mobil PCI Express Modülü NVIDIA. Tarafından geliştirilen, laptoplar için endüstri standardı format.


Yarışan protokoller

Yüksek bant genişliğinde seri bağlantı mimarisi tabanına dayanan muhtelif iletişim standartları geliştirilmiştir. Bu standartlar sayılanlarla kısıtlı kalmamak kaydıyla HyperTransport, InfiniBand, RapidIO, ve StarFabric gibi standartları içerir. Endüstride bu sayılanların her birinin destekleyicileri vardır ve geliştirilmeleri için büyük harcamalar yapılmıştır, bu nedenle bu standartları geliştiren konsorsiyumlar kendi standartlarının diğerlerine kıyasla avantajlı taraflarını vurgulamaya özen gösterirler.

Gerçekte aralarındaki farklar esneklik ve genişleme yeteneği ile bekleme süresi ve yük faktörleri arasında yapmış oldukları dengededir. Bu dengelemeye bir örnek vermek gerekirse; karmaşık bir yönlendirme yapabilmek için gönderilen pakete yine karmaşık bir başlık atamak (PCI Express bu yeteneğe sahip değildir). Buradaki ilave yük ara yüzün etkili bant genişliğini azaltacaktır ve veri yolunun bulunması ile yazılımın ilklendirilmesini daha zor bir hale getirecektir. Aynı zamanda sistemi yazılım izleme ağ topolojisi değişikliklerine ihtiyaç duyacak hale getirecektir. Bu amaca uygun veri yolları arasında InfiniBand ve StarFabric sayılabilir.

Bir başka örnek ise bekleme süresini azaltmak için paket uzunluklarını daha kısa tutmaktır (eğer bir veri yolu bellek ara yüzü olarak kullanılacaksa bu gerekir). Paketlerin daha küçük olması demek, paket başlıklarının paketin daha büyük bir yüzdesini kaplayacağı demektir. Böylece etkin bant genişliği yine azalacaktır. Bu amaçla tasarlanmış veri yolu protokolleri arasında RapidIO ve HyperTransport`u sayabiliriz.

PCI Express bu anlatılanlar arasında ortalarda bir yerdedir. Tasarım olarak bir cihaz ara bağlantısı veya yönlendirilmiş ağ protokolü olamktan ziyade bir sistem ara bağlantıdır(yerel ara bellek “local bus”). Buna ilaveten yazılımın şeffaflığı amaçlanmış olması nedeniyle protokol kısıtlamalara maruz kalmış bu da bir şekilde bekleme süresinin uzamasına neden oluyor.

Genel görünüm

2006 yılı itibariyle PCI Express`in, kişisel bilgisayarların arka yüzü standartı olma yolunda epey yol aldığı söylenebilir. Bu durumun çeşitli açıklamaları yapılabilir, fakat temel sebep bu ürünün yazılım geliştiriciler için tamamen şeffaf olacak biçimde tasarlanmış olmasıdır - PCI için tasarlanmış bir işletim sistemi hiç bir kod modifikasyonuna gereksinim duymadan PCI Express sistemi içerisinde önyükleme yapabilir. Diğer tali sebepler arasında geliştirilmiş performansı ve markanın sağlam ve tanınmış olmasını sayabiliriz.

Bugün (2006 yılında) ATi ve NVIDIA tarafından piyasaya çıkartılan en son teknoloji ürünü grafik kartlarının “graphics cards” hemen hemen tamamı PCI Express kullanmaktadır. NVIDIA yeni geliştirdiği Ölçeklenebilir Link Arayüzü “Scalable Link Interface” (SLI) teknolojisinde PCIe`nin yüksek bant genişliği veri transferini kullanmaktadır. Bu sayede aynı tümleşik devre ailesine ve model numarasına sahip iki grafik kartı aynı anda çalıştırılabilmekte ve bu da performans artışı getirmektedir. ATi de CrossFire adını verdiği PCIe tabanlı bir dual-GPU sistemi geliştirmiştir. Pek çok yeni Gigabit Ethernet yongaları ve bazı 802.11 kablosuz yongalar da PCI Express kullanır. RAID controllers ve network kartları gibi diğer bazı donanımların üreticileri de yavaş yavaş kullanmaya başlamaktalar.

ExpressCard son zamanlarda laptoplarda görülmeye başladı. Buradaki sorun piyasadaki laptopların çoğunluğunda tek bir yuva olması ve bir ExpressCard yuvası elde etmek adına bu yuvadan vaz geçilmesi kararının kolay olmamasıdır. Masa üstü bilgisayarlarda böyle bir sorun yoktur. Bu bilgisayarların yeterince yuvası olduğundan aynı zamanda hem PCI Express hem de eski PCI yuvalarını kullanmaktadırlar.

PCI Express 2.0

PCI Express, versiyon 2.0`i tamamlamak üzeredir. Ürünün 2007 yılı başlarında piyasaya çıkması bekleniyor. PCIe 2.0, veri yolu standartının mevcut bant genişliğini iki katına çıkartarak 5Gbps yapıyor fakat aynı zamanda da şimdiki versiyon olan PCIe 1.1 ile uyumlu. PCI-SIG`in açıklamalarına göre, PCIe 2.0`ın noktadan noktaya veri transferi protokolü ve yazılım mimarisinde de[1] bazı yeni özellikler ve geliştirmeler var.

PCI Express 2.0 Intel tarafından ilk olarak 2007 yılının üçüncü çeyreğinde piyasaya çıkartacakları P35 ve G33 gibi "Intel 3-series" chipset`lerinde kullanılacak.

Kaynaklar

Vikipedi

İlgili konular

agp tlp

Bu konuda henüz görüş yok.
Görüş/mesaj gerekli.
Markdown kullanılabilir.