Yazmaç öbeği, bir merkezi işlem birimindeki işlemci yazmaçlarının bir dizisini ifade etmektedir. Modern tümleşik devre tabanlı yazmaç öbekleri genellikle çok portlu hızlı durağan rastgele erişimli bellekleri (SRAM) kullanılarak sistemlere tümleştirilmektedirler. Bu tür rastgele erişimli bellekleri kullandıkları okuma ve yazma girişlerine göre ayrılır, fakat normal çok portlu durağan rastgele erişimli bellekler okuma ve yazma işlemlerini aynı girişleri kullanarak gerçekleştirebilmektedirler.
Bir matris şeklinde arka arkaya ve yan yana bağlanmış kapılardan oluşan yazmaç öbeği de işlemcinin tümüne oranla %20 enerji tüketir. Yazmaç öbeğinde enerji tüketimi yazmaç öbeğinin satırlarına okuma ya da yazma aracılığı ile erişildiği anlarda gerçekleşir. Ancak işlemci bir değer okuyup yazmadığı halde yani yazmaç öbeği durağan halde iken de enerji tüketir, buna durağan (static) enerji tüketimi denilir. Yazmaç öbeği, gibi işlemcinin en yoğun birimleri SRAM tablolarından oluşmaktadır. Yazmaç öbeğini oluşturan SRAM bit hücreleri bitleri saklamak için değerlerini tazeleyen bir döngü içerisinde bulunurlar. Bu döngüde yer alan transistörler sızıntı akımı geçirerek hiçbir iş yapılmadığı anlarda da enerji tüketimine sebep olurlar. Şekil1’de yazmaç öbeğini oluşturan SRAM hücrelerinden 2 portlu bir bit hücresinin şematik çizimi gösterilmektedir.
Şekil 1.’de I1 ve I2 evirici birbiri ardına bağlanarak saklanması istenen verinin I1’in girişinde ve verinin tersinin ise I2’nin girişinde bulunmasını sağlamak ve bu sayede 2 eviricinin birbirini besleyerek devrede güç olduğu sürece verinin tazelenmeden korunmasını başarmaktır.
Devredeki veriye kelime seç telleri kullanılarak ulaşılabilir. Bu teller ve bit telleri hücrelerin birleşimine göre; eğer hücreler yatay seriliyorsa kelime seç telleri ve dikey olarak seriliyorsa bit telleri birbirine bağlanırlar. Hücrede port sayısı artırılabilir, böylece aynı anda birden fazla satır üzerine işlem yapılabilmektedir. Kelime seç–1 teli seçildiğinde T3 ve T4 transistörleri açılır ve eviricilerdeki veri bit tellerine aktarılır. Başka porttaki veriler içinde yine farklı bir hat seçilerek işlemler tekrarlanır.
Bit hücresinde yazma işlemi için yine okumadaki gibi kelime seç teli aktif hale getirilir, daha sonra bit hatları için önceden hazırlanmış veri bit hatlarından kelime seç telinin aktif olması ile eviricilere gelir ve böylece veri hücreye yazılır ve eviricilerde bir dahaki yazma işlemine kadar ve güç beslemesi devam ettiği sürece saklanır. Denilsin ki eviricilere yani hücreye mantıksal 1 değeri yazılmak isteniyor bu durumda Bit 1 teline 1 değeri gönderilir, sonra kelime seç-1 teli seçilir, bu telin aktif hale gelmesi ile transistör açılır ve bit teline gönderilen 1 değeri eviricilere verilir. Sunuç olarak mantıksal 1 değeri bit hücresine yazılmış olur. Eğer tek portlu olsaydı her bir işlem için bir vuruş harcanacaktı, fakat port sayısı çoksa aynı anda tek vuruşta birden fazla işlem gerçekleştirilebilir.
Aynı anda bir hücre birden fazla port tarafından okunabilir, fakat farklı portların yazacağı değerin aynı olup olmadığı bilinememesi sebebi ile aynı anda bir hücreye ancak bir port tarafından veri yazılabilir. Port sayısının tek vuruşta çok işlem sunması gibi artı yöndeki etkisi yanında fiziksel büyüklüğü artırması ve SRAM tablosuna erişimi etkilemesi gibi eksileri de bulunmaktadır. Bir hücrede port sayısı arttıkça her port için bulunan nmos transistör sayısı toplam transistör sayısına eklenecek, eviricilere eklenecek her bir giriş ve transistör fazladan sığa ekleyecek, fazladan eklenecek bit telleri ve bu telleri sürmek ve işlem için yeni elemanlar eklenecek, sonuç olarak hücre fiziksel olarak büyüyecektir. Bunun yanında sığalar, telleri sürmek için gereken zaman, işlemler için eklenen kod çözücü gibi elemanlarında aynı işlemi gerçekleştirmek için büyüyecek olması ve diğer faktörler hepsi toplam gecikmeyi artıracaktır. Yine benzer etmenlerden dolayı artan güç tüketimi de port sayısının artmasının kötü etkisini artırmaktadır.
SRAM tablosu; çok sayıdaki bit hücrelerinin dizi olarak sıralanması şeklindedir. Burada birçok bit hücresinin üzerinde işlem yapmak için çeşitli çevre elemanları eklenilmektedir. Bu çevre elamanları;
•
•
•Kod çözücü
•
•
olarak belirlenmiştir.
Yazma sürücüleri: SRAM tablosunda kelime uzunluğu yani sütun sayısından bağımsız olarak satır sayısı arttıkça yazma portlarına gönderilecek veri telleri uzamaktadır. Dikey olarak giden bu telleri süren çevre elemanı yazma sürücüsüdür.
Kelime seç sürücüleri: Yazma sürücülerine benzer şekilde fakat bu sefer yatay uzayan kelime seç telini sürmek için kullanılan çevre elemanıdır.
Kod Çözücü: SRAM tablosunda bir kelime okumak için tablonun tüm satırını seçmek gerekmektedir. Bir portun tüm kelime seç telleri birbirine bağlı olduğundan sadece seçilecek satırı saptamak yeterlidir. SRAM tablosu 0’dan başlayarak adreslenir, ilk satır 0 adresine sahiptir. Bundan sonraki her satırın adresi 1 artarak gider. SRAM tablosuna ulaşacak mikroişlemci ilgili adresi verir, bu adresi kullanarak istenen kelime seç telini aktif etmek için kullanılan sistem elemanıdır.
Ön Doldurucu: SRAM tablosunda okuma için kelime seç teli aktif edildikten sonra hücre içindeki eviricilerde saklanan veri bit ve bit değil teline verilir, fakat giderek uzayan teller için aynı işlemi yapmak ve bu telleri sürmek çok küçük boyutlarda tasarlanmış eviricilerle zorlaşmaktadır ve çok zaman almaktadır. Bu amaçla ön doldurucu devreler kullanılmaktadır. Bu devreler okuma sinyali öncesinde Bit ve Bit değil telleri VDD/2 gerilim seviyesine çekerler. Bu sayede okunacak veri ne olursa olsun dolup boşalması gereken sığa yarısına iner. Böylece hem gecikme hem de güç tüketimi azalır. Fark Algılayıcı: Kısaca SRAM tablosunda, okuma sırasında bit ve bit değil telleri arasındaki küçük gerilim değerlerindeki farkı algılayarak bu değerleri mantık düzeylerine (1 ve 0) çeken kazancı çok yüksek olan yükselticilerdir.
Genel olarak yazmaç öbekleri bu çevre elemanları ve SRAM bit hücrelerinin birleştirilmesi ile oluşturulmaktadır.
İşlemcilerde enerji tüketimini azaltmak için çeşitli uygulamalar geliştirilmektedir ve bunlardan önemli bir kısmı yazmaç öbeklerinde enerji tasarrufunu içermektedir. Bir yazmaç öbeğinde yazma ve okuma girişlerinden bazılarını iptal etmek ve yazmaç öbeklerini bloklara bölmek geliştirilen fikirlerden bir tanesidir. Diğer bir yöntem ise kullanılmayan satırların kapatılması yöntemidir. Yazmaç öbeğinde dar değerlerin kullanılması ile bu dar değerlerin tek bir satıra yazılması gibi diğer birçok yöntemde geliştirilmekte olan uygulamalar arasındadır.
Merkezi İşlem Biriminin Buyruk kümesi mimarisi, yonga üzerindeki bellek ile fonksiyonel birimler arasındaki veriyi düzenlemek için kullanılan yazmaç kümesini tanımlamaktadır. Temel MİB’lerde, bunlar yani mimarisel yazmaçlar, MİB içinde bulunan girdilere birebir karşılık gelmektedirler. Daha karmaşık düzeydeki MİB’ler yazmaç yeniden adlandırma (register renaming) işlemini kullanırlar, böylece hangi fiziksel girdinin hangi belirlenen tuttuğunu gösteren çizelge koşum sırasında devingen olarak değişebilmektedir. Transparan önbelleklere nazaran yazmaç öbeği mimarinin bir parçasıdır ve programlayıcı tarafından görülebilmektedir.
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Yazmac obegi bir merkezi islem birimindeki islemci yazmaclarinin bir dizisini ifade etmektedir Modern tumlesik devre tabanli yazmac obekleri genellikle cok portlu hizli duragan rastgele erisimli bellekleri SRAM kullanilarak sistemlere tumlestirilmektedirler Bu tur rastgele erisimli bellekleri kullandiklari okuma ve yazma girislerine gore ayrilir fakat normal cok portlu duragan rastgele erisimli bellekler okuma ve yazma islemlerini ayni girisleri kullanarak gerceklestirebilmektedirler Bir matris seklinde arka arkaya ve yan yana baglanmis kapilardan olusan yazmac obegi de islemcinin tumune oranla 20 enerji tuketir Yazmac obeginde enerji tuketimi yazmac obeginin satirlarina okuma ya da yazma araciligi ile erisildigi anlarda gerceklesir Ancak islemci bir deger okuyup yazmadigi halde yani yazmac obegi duragan halde iken de enerji tuketir buna duragan static enerji tuketimi denilir Yazmac obegi gibi islemcinin en yogun birimleri SRAM tablolarindan olusmaktadir Yazmac obegini olusturan SRAM bit hucreleri bitleri saklamak icin degerlerini tazeleyen bir dongu icerisinde bulunurlar Bu dongude yer alan transistorler sizinti akimi gecirerek hicbir is yapilmadigi anlarda da enerji tuketimine sebep olurlar Sekil1 de yazmac obegini olusturan SRAM hucrelerinden 2 portlu bir bit hucresinin sematik cizimi gosterilmektedir 2 portlu SRAM bit hucresi Sekil 1 de I1 ve I2 evirici birbiri ardina baglanarak saklanmasi istenen verinin I1 in girisinde ve verinin tersinin ise I2 nin girisinde bulunmasini saglamak ve bu sayede 2 eviricinin birbirini besleyerek devrede guc oldugu surece verinin tazelenmeden korunmasini basarmaktir Devredeki veriye kelime sec telleri kullanilarak ulasilabilir Bu teller ve bit telleri hucrelerin birlesimine gore eger hucreler yatay seriliyorsa kelime sec telleri ve dikey olarak seriliyorsa bit telleri birbirine baglanirlar Hucrede port sayisi artirilabilir boylece ayni anda birden fazla satir uzerine islem yapilabilmektedir Kelime sec 1 teli secildiginde T3 ve T4 transistorleri acilir ve eviricilerdeki veri bit tellerine aktarilir Baska porttaki veriler icinde yine farkli bir hat secilerek islemler tekrarlanir Bit hucresinde yazma islemi icin yine okumadaki gibi kelime sec teli aktif hale getirilir daha sonra bit hatlari icin onceden hazirlanmis veri bit hatlarindan kelime sec telinin aktif olmasi ile eviricilere gelir ve boylece veri hucreye yazilir ve eviricilerde bir dahaki yazma islemine kadar ve guc beslemesi devam ettigi surece saklanir Denilsin ki eviricilere yani hucreye mantiksal 1 degeri yazilmak isteniyor bu durumda Bit 1 teline 1 degeri gonderilir sonra kelime sec 1 teli secilir bu telin aktif hale gelmesi ile transistor acilir ve bit teline gonderilen 1 degeri eviricilere verilir Sunuc olarak mantiksal 1 degeri bit hucresine yazilmis olur Eger tek portlu olsaydi her bir islem icin bir vurus harcanacakti fakat port sayisi coksa ayni anda tek vurusta birden fazla islem gerceklestirilebilir Ayni anda bir hucre birden fazla port tarafindan okunabilir fakat farkli portlarin yazacagi degerin ayni olup olmadigi bilinememesi sebebi ile ayni anda bir hucreye ancak bir port tarafindan veri yazilabilir Port sayisinin tek vurusta cok islem sunmasi gibi arti yondeki etkisi yaninda fiziksel buyuklugu artirmasi ve SRAM tablosuna erisimi etkilemesi gibi eksileri de bulunmaktadir Bir hucrede port sayisi arttikca her port icin bulunan nmos transistor sayisi toplam transistor sayisina eklenecek eviricilere eklenecek her bir giris ve transistor fazladan siga ekleyecek fazladan eklenecek bit telleri ve bu telleri surmek ve islem icin yeni elemanlar eklenecek sonuc olarak hucre fiziksel olarak buyuyecektir Bunun yaninda sigalar telleri surmek icin gereken zaman islemler icin eklenen kod cozucu gibi elemanlarinda ayni islemi gerceklestirmek icin buyuyecek olmasi ve diger faktorler hepsi toplam gecikmeyi artiracaktir Yine benzer etmenlerden dolayi artan guc tuketimi de port sayisinin artmasinin kotu etkisini artirmaktadir SRAM tablosu cok sayidaki bit hucrelerinin dizi olarak siralanmasi seklindedir Burada bircok bit hucresinin uzerinde islem yapmak icin cesitli cevre elemanlari eklenilmektedir Bu cevre elamanlari Kod cozucu olarak belirlenmistir Yazma suruculeri SRAM tablosunda kelime uzunlugu yani sutun sayisindan bagimsiz olarak satir sayisi arttikca yazma portlarina gonderilecek veri telleri uzamaktadir Dikey olarak giden bu telleri suren cevre elemani yazma surucusudur Kelime sec suruculeri Yazma suruculerine benzer sekilde fakat bu sefer yatay uzayan kelime sec telini surmek icin kullanilan cevre elemanidir Kod Cozucu SRAM tablosunda bir kelime okumak icin tablonun tum satirini secmek gerekmektedir Bir portun tum kelime sec telleri birbirine bagli oldugundan sadece secilecek satiri saptamak yeterlidir SRAM tablosu 0 dan baslayarak adreslenir ilk satir 0 adresine sahiptir Bundan sonraki her satirin adresi 1 artarak gider SRAM tablosuna ulasacak mikroislemci ilgili adresi verir bu adresi kullanarak istenen kelime sec telini aktif etmek icin kullanilan sistem elemanidir On Doldurucu SRAM tablosunda okuma icin kelime sec teli aktif edildikten sonra hucre icindeki eviricilerde saklanan veri bit ve bit degil teline verilir fakat giderek uzayan teller icin ayni islemi yapmak ve bu telleri surmek cok kucuk boyutlarda tasarlanmis eviricilerle zorlasmaktadir ve cok zaman almaktadir Bu amacla on doldurucu devreler kullanilmaktadir Bu devreler okuma sinyali oncesinde Bit ve Bit degil telleri VDD 2 gerilim seviyesine cekerler Bu sayede okunacak veri ne olursa olsun dolup bosalmasi gereken siga yarisina iner Boylece hem gecikme hem de guc tuketimi azalir Fark Algilayici Kisaca SRAM tablosunda okuma sirasinda bit ve bit degil telleri arasindaki kucuk gerilim degerlerindeki farki algilayarak bu degerleri mantik duzeylerine 1 ve 0 ceken kazanci cok yuksek olan yukselticilerdir Genel olarak yazmac obekleri bu cevre elemanlari ve SRAM bit hucrelerinin birlestirilmesi ile olusturulmaktadir Islemcilerde enerji tuketimini azaltmak icin cesitli uygulamalar gelistirilmektedir ve bunlardan onemli bir kismi yazmac obeklerinde enerji tasarrufunu icermektedir Bir yazmac obeginde yazma ve okuma girislerinden bazilarini iptal etmek ve yazmac obeklerini bloklara bolmek gelistirilen fikirlerden bir tanesidir Diger bir yontem ise kullanilmayan satirlarin kapatilmasi yontemidir Yazmac obeginde dar degerlerin kullanilmasi ile bu dar degerlerin tek bir satira yazilmasi gibi diger bircok yontemde gelistirilmekte olan uygulamalar arasindadir Merkezi Islem Biriminin Buyruk kumesi mimarisi yonga uzerindeki bellek ile fonksiyonel birimler arasindaki veriyi duzenlemek icin kullanilan yazmac kumesini tanimlamaktadir Temel MIB lerde bunlar yani mimarisel yazmaclar MIB icinde bulunan girdilere birebir karsilik gelmektedirler Daha karmasik duzeydeki MIB ler yazmac yeniden adlandirma register renaming islemini kullanirlar boylece hangi fiziksel girdinin hangi belirlenen tuttugunu gosteren cizelge kosum sirasinda devingen olarak degisebilmektedir Transparan onbelleklere nazaran yazmac obegi mimarinin bir parcasidir ve programlayici tarafindan gorulebilmektedir