Crouse (SE) İşlemciler

Crouse SE işlemcileri chipset bütünlüğü, düşük isi dağılımlı, verimli güç kullanımı, yüksek performans ve x86 uyumluluğunu birleştirerek büyüyen bir ihtiyacı karşıladı.

1. CROUSE İŞLEMCİSİNİN ORTAYA ÇIKIŞI

Santa Clara , Calif – Transmeta şirketi bugün yeni enerji verimi yüksek olan Crouse (TM) Special Embedded (Özel gömülü) işlemcilerini duyurdu. Bu işlemciler x86 gömülü uygulamalarının geniş bir dizisini işaret etmektedir. Bu uygulamalar endüstriyel otomasyonu, bilimsel araçları, yazar kasaları, satış terminal noktalarını, işlem kontrol ve ev otomasyonlarını içermektedir.Transmeta ayrıca bunun programını bos şirketlerine rehberlik için , gömülü işletim sistemi şirketleri için ve silikon malzeme üreticileri için Crouse SE işlemcilerine bağlı olarak verimi arttırmak amacıyla müşteri desteği sağlayacaklarına dair söz verdiler.

Gömülü sistemlerin ihtiyacı olan ve Crouse işlemcilerinin sağladığı özellikler ile devamlı büyüyen gereksinimleri (x86 uyumluluğu birleştirerek, yüksek performans, güç verimliliği, düşük ısı yayılımı ve chipset entegrasyonu) iyi bir şekilde karşıladı.Tercih edilen güç yönetim teknolojisini, dinamik olarak işlemci frekans ve voltajını, chip sıcaklığını gösterirken en uygun biçimde kullanan, güç kullanımı ve sıcaklığını minimum seviyede tutmaya yarayan LongRun (uzun çalisma) Crouse Se işlemcilerinde kullanılır.Gömülü sistem geliştiricileri küçük bir paket içinde soğutma fanına ihtiyaç duymadan, içine bir kuzey köprüsü entegre ederek x86 uyumluluğu ile hemen hemen 1Ghz üzerinde verim sağlayabiliyorlar.Crouse ürün ailesi günümüzün performans geliştiricileri ve x86 gömülü sistemleri için mükemmel bir çözümdür.

Crusoe SE işlemcileri tasarlandı ve uzun bir süre zarfında zor ortamlarda (chipin sıcaklığı 100 dereceye kadar çıkarılarak) test edildi.Crouse işlemcilerinin gelecek versiyonları çok yüksek sıcaklık aralıklarına gereksinim duyan uç uygulamalarda da kullanılabilecektir.Transmeta şirketi başkanı Dr. Matthew R. Perry .”Bizler hedef piyasamızı crouse işlemciler ile daha da büyütüyoruz. ” dedi.

Crouse Se işlemcilerinin kapsadığı maddeler:

  • Crouse SE parçaları 667 MHz, 800 MHz ve 933 MHz te kullanılır ve x86 gömülü uygulamalar için optimize edilmiştir.

  • Her bir işlemci standart yada daha düşük güç versiyonlarında kullanılabilir.

  • Fan kullanan sistemler akla getirildiğinde, güvenli bir şekilde azaltılmış işlem sıcaklıkların da fansız bir sistem dizaynını mümkün kılar.

  • Long Run (uzun çalışma) güç ve termal yönetimi gömülü sistemin performansını, güç tüketimini ve ısı dağılımını azalttığı sürece maksimumda tutar.

  • Upgrade edilen Code Morphing Software (CMS) x86 ile olan uyumluluğu tamamlamayı sürdürürken eş zamanlı olarak ta performans artısını maksimum etmeye çalışır.

  • Entegre edilen kuzey köprüsü yoğun tasarımlara izin vererek board boşluğunun azaltır.

  • Haftanın 7 günü ve günün 24 saati yüksek hız ve sıcaklıkta kritik görevli gömülü tasarımlar da yüksek güvenirlilik sağlar.

  • Uzatılmış Couse SE programı gömülü ürünün çalışma süresince ürüne destek verir.

1.1. Transmeta’nin gömülü kardeş programı

Gömülü sistem geliştiricileri ticarete ve teknik gereksinimlere, ürün operasyonları ve geçerli niteliklerin kompleks ve uzun süreler içinde çalışabilir olması ile transmeta diğer şirketlere meydan okuyor.Güvenirliliğine ek olarak, stratejik parçalara(örn: Crouse SE işlemcisine bile) uzun süreli destek sağlanıyor. Bu müşteriler güvenilir yapıdaki tamamlayıcı şirketlere gereksinim duyarlar ki; bu şirketler gömülü sistem ihtiyaçlarının çoğuna destek verir.


Sonuç olarak transmeta, temel destek servislerini ve müşterilerin gömülü uygulamaları için yararlı olacak parçalarını sağlamak amacı ile birçok iş arkadaşı ile beraber çalışmaktadır. Bu is arkadaşları bios şirketleri, gömülmüş işletim sistem şirketleri ve silikon parçaları sağlayan şirketlerdir. Bu iş arkadaşları aracılığı ile müşteriler donanım ve yazılım da (bu yazılımlar ve donanımlar Crouse SE işlemcileri ile birlikte kullanılarak daha kolay geliştirme ve daha hızlı pazarlama için test edilmiştir.)kendilerine geniş bir platform elde etmiş olurlar.

1.2. Teknik Özellikler

Birçok kez duyduğunuz gibi belki de ilk kez duyduğunuz; eğer geçmiş Crouse ‘lari incelediyseniz Crouse ilk basta yazılım ve donanımın karışımı olan bir işlemci gibi piyasada lanse edildi. Sunumları boyunca x86 işlemcilerinin donanımda yaptığı bir çok fonksiyonun transmeta da tekrarlandığı vurgulandı.Crouse bunu Code Morphing Software adi verilen kompleks bir yazılım ile yapar.Bu doğru fakat Transmetanin bunu atmasının yolu eğer iyi incelenmemiş ise önemsenmeyen bir yanılgıya sebep olabilir.Görüldüğü gibi her şey eninde sonunda donanımın içinde yapilmaktadir.hepsi bu .. aşağıdaki blok diyagrama bir göz atalım.bu diyagram x 86’nin 6’inci ve yedinci jenerasyonlarını göstermektedir.Aşağıdaki blok diyagram gerçek bir işlemcinin yollularını yansıtmamaktadır. Bu bloklar sadece fikir vermek amacıyla verilmiştir.

Modern x86 işlemcileri (K6,K7) yada Pentium 3 aslında x86 komutlarını bu şekilde çalıştırmaz.Bütün bu kod çevrimlerini yapmak için K7 ve Pentium 3’ ün oldukça kuvvetli kod çözücü donanıma ihtiyacı vardır. (yukarıdaki blok semada sol tarafta gösterilen bölüm)

Hemen hemen bütün işlemcilerin (x86,ppc,Alpha vb.) kodu, en iyi şekilde islemek ve en iyi şekilde kullanmak amacıyla diğer özel donanımları vardır. Bu kaliteli donanımlar çok yer kaplarlar ve güç gereksinimini artırırlar.

Mavi yerler silikonu, sari yerler ise yazılımı göstermektedir. Crouse ’ un mavi bölümleri daha küçüktür, çünkü bütün bu üstün dönüşümler,dallanma tahminleri ve diğer donanım uygulamaları donanımsal olarak ortadan kalkar ve yazılım içinde bu işlemler sürdürülür.Bütün bu fonksiyonlar eşzamanlı olarak özel programlar tarafından uygulama kodu olarak işlem görür.

Hayatta hiçbir şey boşuna değildir.Bu fonksiyonları yazılıma aktarmak işlemcinin bu fonksiyonları icra etmek zorunda olmadığını göstermez. Bu VLIW (Çok uzun komut kelimesi) merkezi dallanma tahmini ve kayıtların yeniden isimlendirilmesi işlemini yapar.K7 bunu yapmak için özel bir donanıma ihtiyaç duymaz.Crouse’un kendini donanıma adamasında ki eksiklik, yazılımın bu fonksiyonları icra ederken donanım kaynaklarını ve işlemcinin her devri x86 daki uygulama yazılımları ile paylaşmasından kaynaklanmaktadır.Aşağıdaki resim herşeyin nasıl ilerlediğini göstermektedir.

Resmin üzerindeki sari bloklar ön-son (dallanma tahmini, kaydedicilerin yeniden adlandırılması,komut programlaması vb.) işlemci fonksiyonlarını göstermektedir.Kırmızı bloklar ise OS ve uygulama yazılımını göstermektedir.Bütün bu bölgeler CPU merkezinde ayni ayna çalışmaktalar.Söylediğim gibi Crouse işlemcisi hala kaydedicileri yeniden isimlendiriyor, komutları yeniden sıralıyor, x86 komutlarını dahili komut formatına çeviriyor.Aynen diğer işlemcilerde olduğu gibi. O işlemi yapmak için su anda hiçbir adanmış donanım kullanmamaktadır.Bu fonksiyonların ayni donanım tarafından icra edilmesi yerine çarpıcılar, toplayıcılar çıkarıcılar,komut uygulamaları ele alınır.

Muhtemelen doğru tahmin edebilmişsinizdir , yazılım içinde olan tüm bu şeyler bir miktar yavaşlamaya neden olabilir. Yine de Transmeta mümkün olduğunca az cezaya uğrayarak ta olsa çok iyi bir çizgide ilerliyor.

1.3. ÇEKİRDEK

Bu noktada mevcut Crouse çekirdekleri üzerinde çok fazla bilgi olmamasına rağmen, bir parça spekülasyon yapacağım. Fakat üzülmeyin, spekülasyon yaptığımda ve emin olduğumda bunu belirtirim.

Crouse çekirdeği dört kapsamlı is yapar. VLIW uygulaması sayesinde her saat palsinde 4 işlem uygulamaya konulur. Bu uygulama motoru aşağıdaki üniteleri takip eder.

kayan noktalı hesaplamalarında kullanılır.Kayan noktalı işlemlerde tekil hassasiyetin gizli olup olmadığından emin degilsemde biliyorum ki iyi bir performans alabilmek için çift hassasiyetli kayan nokta kullanılmalı. Bu benim tahminim ama yanlışta olabilir.

Tamsayı Aritmetik Mantık Birimi (ALA #0, ALA #1 ): Bu ünite Aritmetik ve Mantıksal işlemleri yapar. Bu ünite tamsayı hesaplamalarını (ekleme,toplama,çarpma vb.) diğer fonksiyonlar kadar iyi yapar.Örneğin mantık fonksiyonları(ve,veya,değil vb.)

Yükleme/Depolama Ünitesi (LSU): Bu ünite hafıza girişlerini ele alır.Örneğin yükleme ve yedekleme gibi.Teknolojik dokümanlar söylemesele balkıda adres hesaplamalarda yapıyor olabilir.

Dallanma Ünitesi: Bu ünite dallanma komutlarının ele alındığı yerdir.

Transmeta teknoloji bilgi sayfalari Crouse’ un 64 tamsayi kaydedicilerine sahip oldugunu göstermektedir. Code Morphing yazilimi bu kaydedicilere yer tahsis eder. Bir kisminada x86 daki durumlarin korunmasi için yer gösterilirken, digerleri dahili iç idare fonksiyonlari olarak kullanilir. Örnegin kaydedicinin yeniden isimlendirilmesi gibi.

1.4. Atomlar ve Moleküller: Komut Formatlaması

Crouse’un dahili komut formati VLIW’ in komut uzunlugundan çok yada azdir.Tek islemler atomlar olarak adlandirilan uygulama ünitesine dogru yönlendirilir.Atomlar yaklasik olarak RISC oparasyonlariyla es anlamlidir. Bu atomlar moleküller adi verilen 64 veya 128 bitlik yiginlar halinde paketlenir. Moleküller EPIC lerde “yiginlar” veya MAJC’ lerde “paketler” olarak ifade edilir.128 bitlik bir yigin 4 atom içerir.Transmeta teknoloji dökümanlarindan alinan asagidaki diyagram nasil çalistigini görsel olarak anlamaniza yardim edecektir.

VLIW programi sadece bu moleküllerin bir listesidir ki bu moleküller uygulama ünitesindeki siraya göre icra edilir ve islemcinin içinden beslenir.Crouse’ un donanimi onlari yeniden siralamak için, gelecek komutlarin nereden gelecegini tahmin edecegini ve ya bu çesit isleri düsünmek zorunda degildir. Sadece komut motorunu mümkün oldugu kadar hizli bir biçimde komut yiginina odaklar.

1.5. VLIW vs. superscalar

Code Morphing’ e gidip detaylar üzerine tartismadan önce VLIW uygulamalari ile standart Superscalar uygulamalari arasindaki farki aydinlatma geregi hissettim. Ama bu kisa bir özet olacak çünkü bu konuyla ilgili detaylari daha önceki Sun’s MAJC ve vIntel’s IA-64, makalelerim de vermistim.

Geleneksel superscalar tasarimda yazilimi yazan kisi dizisel programi yüksek seviyeli bir dilde yazar ve makine koduna derler.Makine koduda ardisildir.Islemcinin komut listesi ve donanima sevk etmesi paralel çalisacak sekilde yeniden yerlestirmesi sarttir.

Programlayici ayrica kodu güvenlik için gözden geçirir ve isleme sokulmadan önce yeniden siralar. Sonuç olarak ardisil siralanmis olan kod aslinda paralel ve siradisi olarak islemci bunu alir ve icra eder.Kod içerikleri ile yapilan bütün bu hileler islemcinin bölümlerinde bir çok ise sebep olur ve saat palsi ve transistörlerin çalisma süreleri arttigi için islemcinin islem süresi artar.

Geleneksel VLIW makineleri bununla birlikte yazilimdaki paralelizmi ve yeniden siralamanin hepsini yapar.Intel’in IA64 gibi VLIW dizayni daha ileridir , yazilimin bir kismi bütün bu derlemeleri yapar.Derleyici, koddaki parelelizmi çikarir ve bagliliklari arar vb. ve VLIW çekirdegi mümkün olabildigince hizli bir sekilde optimize edilmis kodlari sirali bir sekilde üretir.

1.6. Code Morphing

Crouse bir VLIW makinesidir ve bir superscalar makine için derlenen kodlari çalistirir.Bunun tamamlanmasi ve belli bir uyum içerisinde programlanmasi her iki yaklasimin birleserek bir çesit olusturmasini saglar.Crouse Code Morphing yazilimi aslinda derlenmis x86 programini alir ve onu havada (deyimdir.CPU içinde Crouse’un anliyacagi formata sokma.) yeniden Crouse’ un yerel VLIW komut formatina derler.Yeni derleme, gelismis derleyici algoritmasini koddan paralelizmi açmak için kullanir, bagliliklari arar ve bütün bunlari VLIW derleyicisi yapar.

Zaten crouse diyagramina bir daha bakacak olursaniz sari bölgelerin Code Morphing katmanina bagli oldugunu göreceksiniz. Code Morphing katmani Crouse ‘ un yerel Vliw komut kümesine yazilmistir, bu katman islemci , bios ve isletim sistemi arasina oturtulmustur. Code Morphing yazilimi özel bir Rom’un içine yüklenmistir ve makine ilk açildiginda boot islemini bunun üzerinden yapar. Code Morphing katmani yüklendikten sonra , isletim sistemi ve uygulamalar bunun üzerinden yüklenir.

Ardisik olarak, x86 uygulamalari ve isletim siNsteminin kodlari Code Morphing katmaninin içine dogru beslenir. Code Morphing katmani X86 komutlarindan bir grup bütünü alarak ayni anda çevirme islemini saglar. Bu çeviri x86 kodunun büyük bir parçasindan olusur ve Crouse yerel VLIW koduna çevrilir. Bu çevirinin bir kez yapilmasi yeterlidir. Çünkü çeviriler özel bir çeviri önbelleginde (CACHE) saklanir. Bu yolla Crouse ona ihtiyaç duydugunda her seferinde çevirmek zorunda kalmaz ve çeviri önbelleginden onu alarak çalistirir. Çeviri önbelleginin uzunlugu boot sirasinda, ve eger ihtiyaç duyulursa isletim sistemi tarafindan ayarlanabilir.

Eger hersey Code Morphing ’ te olsaydi , gerçektende çok büyük bir teknoloji olurdu. Fakat yinede daha iyisi olabilir. Code Morphing yazilimi, çeviri kodunu hangi parçalarin en sik kullanildigini görmek için izler.Code bloklarini büyük bir çogunlugu birçok kez kullanilir Code Morphing derleyicisi bunlari uygun hale getirmek için çok zorlanir.

Crouse ‘un Code Morphing yazilimi sadece en sik kullanilan bloklarin kaydini tutmakla ve uygun biçime getirmekle kalmaz ayni zamanda en sik alinan dallanmalarin ve orada geçen kodlarin kaydinida tutar. Bu yolla Crouse’un dallanma tahmin algoritmasi dallanmanin nasil alinacagini ve hangi dallanmanin spekülatif olarak yerine getirlmeyecegini bilir.Eger bir dallanma özellikle bir yola veya baska bir seye gitmiyorsa Crouse spekülatif olarak her iki dallanmayida yerine getirmez.

Normal bir islemcide yapilan spekülatif uygulamalar ile aradaki farki görmek amaci ile yapilan karsilastirmada bilgimiz çerçevesinde donanim kisitlamalari (tampon gibi ve tablo büyüklükleri vb.) olan bu islemciye özel dallanmalar yükleyebilir ve onun geçmis tablosuna bu yüklemeler yapilabilir.
Yazilim içinde dallanma geçmislerinin Code Morphing‘ te saklanmasindan beri, uygulamanin daha genis kod penceresindeki tanim parçalari daha iyi kaydedilebilir ve bu nedenle girisler daha dogru sekilde yada özel bir dallanma alinabilir.

1.7. Yüksek Hizda Tutma

Transmetanin en büyük meydan okumalarindan biri Code Morphing yazilimiyla yüzyüze gelmesidir. Code Morphing yazilimi kabul edilebilir bir performansi sürdürmektedir.Yazilim ve donanimi bir araya getirebilmek için beraber tasarladilar.Bununla birlikte donanima özel bir fonksiyon ekleyerek Code Morphing yaziliminin hizini arttirabilirler.

X86 mimarisi isleme tarzinda, istisna olarak sira disi bir x86 kod uygulamayi denerken bir problem yaratabilir. Istisna meydana geldiginde bir komut bir seyler yapmayi dener ve probleme rast gelir. Bir X86 makinasinda bunlar oldugu zaman, istisnaya neden olan komut tamamlanmadan önce diger bütün alt komutlar isletilemez. iyi, eger siz sira disi komut uygulandiginda , siz bunun nasil meydana geldigini göreceksiniz.

Crouse ayni zamanda özel donanimlara sahiptir ki bu donanimlar ona spekülatif yüklemelerle yardim ederler. Crouse Yükle (LOAD) komutunu özel olan “yükle ve koru (Load-and-protected)” komutuna çevirir.Crouse sakla (STORE) komutunu “yükle-altinda-takma ad-saklamak (store-under-alias-mask)” komutuna dönüstürür.Bu komut üzerine yazilamaz bir korumali yükleme (LOAD) olup olmadigina emin olmak için bakar.Eger muhtemelen olmayan durumlar olursa ve Sakla  (STORE) komutu yüklenmis olan datanin üzerine yazmayi denediginde istisnai durum gerçeklesecek ve hata dogrulanacaktir.Bunlarin hepsinin bir sonucunda Crouse yeniden düzenlenebilir ki ihtiyaci da çünkü özel bir defter tutma yetenegine sahiptir ve bu ona hata yaptiginda kendini nasil onaracagini bildirir.

Crouse ‘ un komut listesine yaklasimi yukaridakinden farklidir.

1.8. Uzun çalisma (Long Run)

Baslangiçta da belirttigimiz gibi, Crouse düsük güç için dizayn edilmistir. Bunun nedeni, sunum esnasinda, sirket yeni adim olarak hizi ve verimi hesaba katarak en az performans kadar iyi bir çizgi yakalamasini istemistir. Benchmark’lar tasarimiciya yardim edecek araçlardir. Potansiyel müsteri girislerin de ürün bize tasarimin yararli yönlerini gösterir. Son günlerde bir çok islemci takiminin tasarimindaki birinci avantaji uygulama performansidir. Bu performansta benchmarklara çok is düser. Crouse’ un tasariminda ki en büyük amaç düsük güç tüketimidir. Standard benchmarklar bunu çok iyi yansitamazlar.Bugünün benchmarklarini Crouse üzerinde çalistirmak, matematik efendisine fizik testi vermeye benzer.Bunu yapmak problemleri ele almada ki donanimini arttiracaktir fakat ne için çalistirildigini göstermeyecektir.

Biraz da Crouse ’ un düsük güç gereksinimleri ve küçük kalip büyüklüklerinden konusacagim, fakat kesin rakamlar vermeyecegim. En yüksek çizgideki Crouse 700 MHZ bir islemcidir (0,18 micron islemciler), ki güçün 1 wattini önemsiz yere tüketmektedir.Bunu AMD ‘inin 700 MHZ K7 ‘leri ile karsilastirin (0,18 micron) ki AMD 34 wattini gereksiz yere tüketmektedir. Bayagi büyük bir fark. Ve Crouse mobil pazarini hedeflediginden beri, onun düsük güç tüketimi direk olarak

  • Uzun batarya ömrüne

  • Düsük hafiflik

  • Düsük fiyat ’ a dönüstü.

Bu özellikleri ile mobil pazari için ideal bir ürün halini aldi.Bu hos özellikleri ile , Crouse her çesit webpads,dizüstü bilgisayar, el bilgisayarlari ve diger tasinabilir aletlerle karsimiza çikagelebilir.

Simdi aletin fiziksel karakteristiklerinden,onun uzun süre verimli olarak çalisabilecegini görebilirsin.Transmeta bir veya iki adim daha öteye giderek, bununla birlikte, mümkün olabilen en asgari güç kulanimini yapacagindan emin. Eger animsadiysaniz, Intel ’ in geçenlerde ilan ettigi yeni teknoloji mobil chipler kendilerini kontrol ederek 100 MHZ geriye dönüse izin veriyordu. Crouse bu fikri alarak bir adim ileri götürdü, ve onu alip diger adimlara yöneldi.

Diger sir ise Crouse ’ un gücü muhafaza etmek için kuzey köprüsünü çipsete entegre ettiler, Bu chipset DDR VE SDRAM kontrollerini yaparak, islemci çekirdegi ölünceye kadar çalisacakti. Bu eklenen transistörler uzun bir çalisma saglayarak kapsamli sistemler için güçten tasarruf sagladilar.Bu entegrasyon grafik ve ses yeteneklerini arttirdi. Transmeta sisteme yeni degerler ekleyerek daha düsük güç tüketimini saglayana kadar arayislarini sürdürecek.

1.9. Aydinlatici Bilgiler

RISC (Reduced Instruction Set Computer): Azaltilmis komut kümeli bilgisayarlar. Bir çesit bilgisayar mimarisi

CISC (Complex Instruction Set Computer): Komplex komut kümeli bilgisayarlar. Bir çesit bilgisayar mimarisi

VLIW (Very Long Instructions word): Çok uzun komut kelimeli bilgisayarlar.EPIC mimarisi VLIW mimarisinin gelistirilmis bir modelidir.

Not: Daha Detayli bilgiler için Nurettin Topaloglu’nun X86 tabanli Mikroislemci mimarisi ve Assembly Dili adli kitabindan yararlanabilirsiniz.


Kaynaklar:

www.transmetazone.com

www.arstechnica.com

www.transmeta.com

Bir Cevap Yazın