Sevgili e-bergi okurları, ilk yazımda sizlerle ARM işlemciler üzerine konuşacağım. "En çok kullanılan işlemci türü ne?" diye sorsam eminim ki birçoğunuz Intel dersiniz. İyi tahmin, ama sanılanın aksine yanlış. "AMD o kadar popüler oldu mu ya?" dediğinizi duyar gibiyim. Yok daha olmadı. İşlemci dünyasının kralı ne AMD ne de Intel. Bu iki dev, buz dağının sadece görünen kısmı. Bir balık burcu olarak rahatça söyleyebilirim ki, buzdağının görünmeyen kısmını ARM oluşturuyor. :)
Nereden çıktı bu ARM diyorsunuz. Demiyorsanız daha güzel; ama o zaman da anlatmaya devam edemem. Önce basit bir örnek vereyim, cep telefonunuz bir ARM işlemcisi kullanıyor. Birçok mp3 çalar da ARM işlemci kullanıyor. Evet iPhone, iPad, Galaxy S II hepsi ARM işlemcileri kullanıyor. Nokia 6120c de 384 MHz bir ARM işlemcisi kullanıyordu. Game Boy'unuz var mı bilmiyorum ama o da ARM. Nintendo 3DS bile... ARM'ler her yerdeler, sadece gigahertzleriyle ve fan gürültüleriyle dikkatinizi çekmiyorlar. Bir de fazla ısınıp kucağınızı yakmıyorlar.
Biraz Tarih
İlk ARM işlemci 1985’te çıkarıldı, Acorn RISC Machines tarafından efsanevi BBC Micro için bir ek işlemci olarak. (ARM bir İngiliz firması.) O zamanlar İngiltere'de masaüstünün kralı belli değildi, büyük çekişmeler vardı (o tarihte ben yazıyla "eksi altı" yaşımdaydım). Acorn RISC Machines küçük bir şirket olması nedeniyle küçük bir araştırma bütçesine sahipti. Dolayısıyla ürettikleri işlemci de küçüktü (işlemci tasarımını yapacak fazla elemanları yoktu) ve üretmesi basit bir işlemciydi (işlemciyi hızlıca test edebilmek için). İlk ARM işlemcide 25000’den az transistör kullanıldı. 1985’te küçük bir şirketin içinde bulunduğu zor şartların günümüzü nasıl değiştirdiğini görüyoruz.
Her ne kadar ilk ARM işlemci 1985’de üretildiyse de, ARM bazlı ilk bilgisayar 1987’de piyasaya çıktı: Archimedes. 8 MHzde çalışan Archimedes performans açısından rakiplerinin (Intel ve Motorola) gerisindeydi. Sonrasında ARM, işlemcilerini geliştirmeye devam etti. 1990’da şu an bildiğimiz haliyle ARM kuruldu. Ortaklar Acorn, VLSI Technology ve Apple'dı.
ARM bir süre daha işlemci üretmeye devam etti. 1992’de, bir şirket ARM ile lisans anlaşması imzalayarak ARM işlemcilerin klonlarını üretmeye başladı. ARM bir süre sonra kendisi işlemci üretmeyi bıraktı. Şu anda ARM işlemciler, "ARM Partnerleri" tarafından bir lisans karşılığı üretilmekte. ARM ise sadece işlemci teknolojisini lisanslamakta.
Neden ARM?
ARM işlemcilerin Intel işlemciler (ve diğer işlemciler) üzerinde bazı avantajları var.
1) RISC mimari: Bu özellik işlemci tasarlamayı, üretmeyi, işlemcide çalışacak kodu üretmeyi acayip kolaylaştırıyor.
2) Güç tüketimi:Kimse kusura bakmasın ama ARM işlemciler güç tüketimi konusunda çok iyiler. Bataryayı kokluyorlar resmen. Nedeni ise işlemcinin transistör sayısını düşük tutacak şekilde tasarlanmış olması. Bu özellik mobil aygıtlarda ARM kullanılmasının nedenlerinden biri.
3) RAM'e erişim:ARM komut seti, yani makine dili, (bana soracak olursanız eğer) rakiplerinin çok daha ötesinde. Mesela Intel birçok komutunun hem yazmaçlar (register) üzerinde çalışan, hem de RAM üzerinde çalışan versiyonlarını hazırlar. Fakat ARM işlemcilerde RAM'e LOAD/STORE ile erişip bütün işlemlerinizi yazmaçlar üzerinde yaparsınız. Dolayısıyla elinizdeki komut seti daha temizdir. Bu, işlemci tasarımınızı da temiz tutmanızı sağlar.
4) İşletim modeli: İntel işlemcilerde bir karar vermek için önce bir karşılaştırma (cmp) yaparsınız, sonra da bu karşılaştırmanın sonucuna göre programın başka bir kısmına atlarsınız(jump). Bu atlama işlemcinin kafasını karıştırır (bkz: pipelining). Intel işlemcilerde sırf bunu engellemek için "branch predictor" vardır. ARM işlemcilerde ise her komutun hangi durumda çalıştırılacağı komutun bir parçasıdır. İşlemci o anda bulunulan komuta uymayan komutları atlar. Bu ise bazı algoritmaların çok daha temiz ve performanslı yazılabilmesini sağlar.
5) Lisans modeli-Model çeşitliliği: İsteyen bir şirket, ARM lisansı alıp kendi ARM işlemcilerini üretebilir. Bunun sonucu olarak da, piyasada tasarım olarak birbirinden farklı ama aynı şekilde çalışan, fiyatları, performansları, özelikleri farklı birçok ARM işlemci bulunur. Eğer bir mobil aygıt üretecekseniz, sadece Intel'in veya AMD'nin size sunduklarıyla kısıtlı değilsinizdir. Bunun en güzel örneği, Apple'ın iPad için A4 çipini üretmesidir. Evet o da ARM.
6) 32-Bit: 32-bit olmak, tek seferde daha fazla işlem yapabilmek demek. ARM ilk işlemciden beri 32-bit. Intel ise önce 4, sonra 8, 16, 32 ve 64 ile gitti. (Intel şu an 64, ARM hala 32-bit.) ARM rakipleri(Microchip PIC serisi mesela) ise ancak 2000 sonrasında 32-bit işlemcilerini çıkarabildiler.
ARM Kullanan Ürünler
Aşağıya ARM işlemci kullanan birkaç ürün yazıyorum, aklınızda bulunsun diye:
- Bütün "i" ile başlayan Apple ürünleri
- Bütün Android telefonlar
- Birçok mp3 çalar
Yetmez mi?
ARM'nin Geleceği
Geçen ay Windows 8'in geliştiriciler için tanıtımı oldu, belki biliyorsunuzdur. Orada, Windows 8'in ARM işlemcilerde çalışacağı müjdelendi. Apple zaten uzun süredir ARM destekliyor(iOS ile). Linux... Linux candır. 1.0'da bile destekliyordu ARM platformunu. Şu anki araç(gadget) çılgınlığına bakarak rahatça öngörüyorum ki, ARM önümüzdeki 10 yıl daha mobil ürünlerin vazgeçilmez işlemcisi olacak.
Esen kalın.