Hakem (elektronik) - Arbiter (electronics)

Hakemler paylaşılan kaynaklara erişimi tahsis eden elektronik cihazlardır.

Otobüs hakemi

Veri yolu hakemi, çoklu ana birimde kullanılan bir cihazdır otobüs her bir veriyolu döngüsü için veriyolunu hangi veri yolu yöneticisinin kontrol etmesine izin verileceğine karar vermek için sistem. En yaygın veri yolu hakemi türü, bir veri yolundaki bellek arabulucusudur. sistem veriyolu sistemi.

Bir bellek hakem, bir paylaşılan hafıza her bellek döngüsü için hangi CPU'nun bu paylaşılan belleğe erişmesine izin verileceğine karar verecek sistem.[1][2][3]

Biraz atom talimatları diğer CPU'ların atomik "yarı yolda" bellek okumasını önlemek için hakeme bağlıdır. oku-değiştir-yaz Talimatlar.

Bir bellek hakemi tipik olarak bellek denetleyicisi /DMA denetleyicisi.

Gibi bazı sistemler geleneksel PCI, "otobüs hakemi" olarak gösterilebilecek tek bir merkezi veri yolu tahkim cihazına sahip olun. Diğer sistemler, tüm cihazların daha sonra kimin gideceğine karar vermek için birlikte çalıştığı merkezi olmayan otobüs tahkimini kullanır.[4][5]

Bellek hakemine bağlanan her CPU, bellek erişim döngülerini senkronize ettiğinde, bellek hakemi eşzamanlı bir arabulucu olarak tasarlanabilir.Aksi takdirde, bellek hakem asenkron bir arbiter olarak tasarlanmalıdır.

Eşzamansız hakemler

Önemli bir hakem biçimi, asenkron devreler zaman uyumsuz istekler arasından paylaşılan bir kaynağa erişim sırasını seçmek için. İşlevi, iki işlemin olmaması gerektiğinde aynı anda gerçekleşmesini önlemektir. Örneğin, birden çok CPU'ya sahip bir bilgisayarda veya erişim sağlayan diğer aygıtlarda bilgisayar hafızası ve birden fazla saat, senkronize edilmemiş iki kaynaktan gelen isteklerin hemen hemen aynı anda gelme olasılığı vardır. "Neredeyse" zaman içinde çok yakın olabilir,femtosaniye Aralık. Bellek hakemi daha sonra hangi talebe hizmet vereceğine karar vermelidir. Maalesef bunu sabit bir zamanda yapmak mümkün değildir [Anderson 1991].[açıklama gerekli ]

Ivan Sutherland ve Jo Ebergen, "Saatsiz Bilgisayarlar" başlıklı makalesinde Arbiters'ı şu şekilde tanımlamaktadır:

"Hakem, bir sonraki arabanın hangi arabanın geçebileceğine karar veren kavşaktaki bir trafik görevlisi gibidir. Yalnızca bir talep verildiğinde, bir Hakem derhal ilgili işleme izin verir ve herhangi bir ikinci talebi ilk işlem tamamlanana kadar geciktirir. Bir Hakem iki talep aldığında aynı anda, ilk olarak hangi talebin verileceğine karar vermelidir.Örneğin, iki işlemci yaklaşık olarak aynı anda paylaşılan bir belleğe erişim talep ettiğinde, Arbiter istekleri bir sıraya koyar ve her seferinde yalnızca bir işlemciye erişim sağlar. Arbiter, tıpkı trafik görevlisinin bir çarpışma rotasında kavşaktan hiçbir zaman iki aracın geçmemesini sağlayarak kazaları önlemesi gibi, aynı anda iki eylemin yapılmayacağını garanti ediyor. "
"Hakem devreleri bir seferde birden fazla talepte bulunmasa da, her zaman sabit bir süre içinde bir karara varacak bir Hakem inşa etmenin bir yolu yoktur. Günümüzün Hakemleri, ortalama olarak çok hızlı bir şekilde, genellikle yaklaşık birkaç yüz pikosaniye. [...] Ancak yakın aramalarla karşılaşıldığında, devreler bazen iki kat daha uzun sürebilir ve çok nadir durumlarda bir karar vermek için gereken süre normalden 10 kat daha uzun olabilir. "[6]

Eşzamansız hakemler ve yarı kararlılık

Hakemler bağları koparır. Gibi flip-flop devresi bir hakemin iki seçeneğe karşılık gelen iki kararlı durumu vardır. İki istek birkaç pikosaniye içinde bir hakeme ulaşırsa (bugün, femtosaniye ) birbirlerinden, devre olabilir meta kararlı bağı bozmak için kararlı durumlarından birine ulaşmadan önce. Klasik hakemler, meta-kararlı olduğunda çılgınca salınım yapmamak ve tipik olarak ekstra güç kullanarak, olabildiğince hızlı bir şekilde meta-kararlılıktan çürümek için özel olarak tasarlanmıştır. Kararlı bir duruma ulaşmama olasılığı, girdiler sağlandıktan sonra zamanla katlanarak azalır.

1970'lerin ortalarında bu soruna güvenilir bir çözüm bulundu. Belirli bir süre içinde karar veren bir hakem mümkün olmasa da, zor durumda bazen biraz daha uzun süren bir hakem (yakın görüşmeler) çalıştırılabilir. Çok aşamalı kullanmak gerekli senkronizasyon hakemin henüz kararlı bir duruma gelmediğini tespit eden devre. Hakem daha sonra kararlı bir duruma ulaşılana kadar işlemi geciktirir. Teoride, hakemin kararlaştırması keyfi olarak uzun sürebilir, ancak pratikte, nadiren birkaç taneden fazla zaman alır. kapı gecikmesi zamanlar. Klasik makale [Kinniment and Woods 1976], bu sorunu çözmek için "3 durumlu bir flip flop" un nasıl kurulacağını açıklar ve [Ginosar 2003], mühendislere hakem tasarımındaki yaygın hatalar konusunda bir uyarıdır.

Bu sonuç, önemli ölçüde pratik öneme sahiptir. çok işlemcili bilgisayarlar onsuz güvenilir bir şekilde çalışmaz. İlk çok işlemcili bilgisayarlar, güvenilir arabulucuların geliştirilmesinden önce 1960'ların sonlarından kalmadır. Hakemden muzdarip olan her işlemci için bağımsız saatlere sahip bazı erken çok işlemciler yarış koşulları ve dolayısıyla güvenilmezlik. Bugün, bu artık bir sorun değil.

Senkron hakemler

Arabulucular, eşzamanlı bağlamlarda da paylaşılan bir kaynağa erişim tahsis etmek için kullanılır. Bir wavefront hakem bir tür geniş kapsamlı mevcut olan eşzamanlı hakem örneğidir. ağ anahtarı.

Referanslar

  1. ^ Michael Fingeroff."Üst Düzey Sentez Mavi Kitap".2010.p. 270.quote: "Veriyolu veya bellek hakemi, isteği farklı işlemlerden işler ve veriyoluna / belleğe kimin erişeceğine karar verir."
  2. ^ Arten Esa, Bryan Myers."DDR3 Bellek için Arbiter Tasarımı".2013.
  3. ^ Kearney, D.A .; Veldman, G."Boşta duran döngü atlama kullanan dinamik IP çekirdekleri için eşzamanlı çok bankalı bellek hakemi".2003.DOI: 10.1109 / FPT.2003.1275789.
  4. ^ Tim Downey."Otobüs Tahkim"
  5. ^ Shun Yan Cheung."Otobüs Tahkim"
  6. ^ Sutherland, Ivan E.; Ebergen, Jo (Ağustos 2002). "Saatsiz Bilgisayarlar". Bilimsel amerikalı. 287 (2): 62–69. Bibcode:2002SciAm.287b..62S. doi:10.1038 / bilimselamerican0802-62. PMID  12140955.

Dış bağlantılar