Açık Kaynak İşlemci Mimarileri: RISC-V ile Tasarım ve Üretim
Baştan beridir işlemci dünyası, bir elin parmaklarını geçmeyen global şirketlerin hakimiyetindeydi. Bilgisayarlarımızda x86 (Intel, AMD) ve mobil cihazlarımızda ARM mimarileri, kapalı kapılar ardında geliştirilen yüksek lisans ücretlerine tabi ve “kara kutu” olarak adlandırabileceğimiz tasarımlardı. Bir şirket veya bir geliştirici kendi özel işlemcisini tasarlamak istediğindeyse ya bu devlere yüksek bedeller ödemek ya da sıfırdan, devasa bir mühendislik yüküyle kendi mimarisini yaratmak (böyle bir işe girişmeye kalkışan şirketler ya da kurumlar global şirketler tarafından anında satmaya/projeyi sonlandırmaya baskılanıyorlar) zorundaydı. Ancak küresel şirketlerin durdurmayı bir türlü başaramadıkları yazılım dünyasındaki “Linux” ile yaşanan devrim şimdi donanım dünyasında “açık kaynak işlemci mimarileri (RISC-V)” ile yaşanıyor.
Donanım Dünyasında Yeni Bir Devrim
Bu devrimin merkezinde ise tek bir isim var: RISC-V (telaffuzu “risk-five”).
Berkeley Üniversitesi’nde başlayan basit bir akademik proje, bugün yarı iletken endüstrisinin geleceğini yeniden şekillendiren küresel bir harekete dönüştü.
Peki, bir işlemci mimarisinin “açık kaynak” olması ne anlama geliyor ve bu kendi özel çipinizi tasarlamanın önündeki engelleri nasıl kaldırıyor?
Açık kaynak işlemci mimarilerinin ne olduğunu, RISC-V’nin neden bu kadar önemli olduğunu ve en önemlisi, bir fikirden başlayıp RISC-V tabanlı bir işlemciyi tasarlayıp üretmenin (FPGA prototiplemesinden ASIC üretimine) adımlarını detaylıca ele alalım.
Açık Kaynak İşlemci Mimarisi Nedir?
Yazılımda “açık kaynak”, kaynak kodunun herkes tarafından görülebilir, değiştirilebilir ve dağıtılabilir olması demektir. Peki, bu kavram donanıma, yani fiziksel ve değiştirilemez görünen çiplere nasıl uygulanır?
Buradaki kilit kavram ISA‘dır (Instruction Set Architecture), yani Komut Seti Mimarisi.
ISA, bir işlemcinin anladığı en temel dildir. Yazılım (örneğin bir C++ programı) ile donanım (transistörler) arasındaki en temel sözleşmedir. Hangi komutların (toplama, çıkarma, hafızadan veri yükleme) hangi ikili (binary) kodlarla temsil edileceğini tanımlar.
Geleneksel modellerde (ARM, x86), bu ISA’lar şirketlerin ticari mülkiyetindedir. ARM, kendi ISA’sını kullanarak işlemci çekirdeği tasarımları (Cortex-A, Cortex-M) yapar ve bunları çip üreticilerine (Qualcomm, Apple, Samsung) lisanslar. Bu lisanslar milyonlarca doları bulabilir ve genellikle üretilen her çip başına ek bir “royalty” (telif) bedeli içerir.
Açık Kaynak İşlemci Mimarisi ise bu modeli kökten değiştirir:
- ISA Özgürdür: Mimarinin (ISA) spesifikasyonları kamuya açıktır. Herkes bu spesifikasyonları indirebilir, okuyabilir ve bu ISA’yı temel alan bir işlemci tasarlayabilir.
- Lisans Ücreti Yoktur: RISC-V gibi mimariler, kullanımı ücretsiz olan (genellikle BSD veya Apache gibi) esnek lisanslar kullanır. Bir RISC-V işlemci tasarladığınızda veya kullandığınızda, mimarinin sahibine herhangi bir lisans veya royalty bedeli ödemezsiniz.
- Özelleştirme (Customization) Özgürlüğü: En önemli avantajlardan biridir. Geleneksel bir ARM çekirdeği aldığınızda, genellikle “olduğu gibi” kullanmak zorundasınızdır. Oysa açık kaynak bir mimariyle, temel ISA’ya kendi özel komutlarınızı ekleyebilirsiniz. Örneğin, yapay zeka hızlandırması için özel bir komut seti geliştirip bunu doğrudan işlemciye entegre edebilirsiniz.
- Güvenlik ve Şeffaflık: “Kara kutu” tasarımların aksine, açık kaynak çekirdeklerin tasarımları (RTL kodları) incelenebilir. Bu, güvenlik açıkları veya kasıtlı olarak yerleştirilmiş “arka kapılar” (backdoors) olup olmadığını denetlemeyi mümkün kılar.
Neden RISC-V? Devrimin Lideri
Açık kaynak ISA denemeleri daha önce de oldu (OpenSPARC, OpenPOWER gibi), ancak hiçbiri RISC-V kadar geniş çaplı bir kabul görmedi. Peki, RISC-V’i bu kadar özel kılan nedir?
1. Modüler Tasarım Felsefesi
RISC-V’nin tasarımcıları, geçmişteki hatalardan ders çıkardı. x86, on yıllar içinde eklenen komutlarla devasa ve karmaşık bir yapıya (CISC – Complex Instruction Set Computer) bürünmüştü. RISC-V ise “basit olan güzeldir” felsefesini benimser.
- Temel ISA (Base ISA): RISC-V, son derece küçük bir temel komut setine (örneğin RV32I veya RV64I) sahiptir. “I” (Integer – Tamsayı) temel seti, bir işletim sistemini çalıştırmak için gereken minimum komutları içerir.
- Standart Eklentiler (Standard Extensions): İhtiyacınız olan özellikleri modüller halinde eklersiniz. Bu eklentiler standart harflerle temsil edilir:
- M: Tamsayı Çarpma ve Bölme (Integer Multiplication and Division)
- A: Atomik Operasyonlar (Atomic Operations – çok çekirdekli sistemler için kritik)
- F: Tek Hassasiyetli Kayan Nokta (Single-Precision Floating-Point)
- D: Çift Hassasiyetli Kayan Nokta (Double-Precision Floating-Point)
- C: Sıkıştırılmış Komutlar (Compressed Instructions – kod yoğunluğunu artırır, bellek kullanımını azaltır)
Bu sayede, sadece bir LED yakıp söndürecek basit bir mikrodenetleyici için RV32IC (Temel + Sıkıştırılmış komutlar) yeterliyken, tam teşekküllü bir Linux çalıştıracak yüksek performanslı bir işlemci için RV64GC (G, ‘IMAFD’ eklentilerinin genel adıdır) kullanılabilir.
2. Lisans Modeli Değil, Bir Standarttır
RISC-V’i yöneten RISC-V International, kâr amacı gütmeyen bir vakıftır. Bu vakıf, RISC-V ISA’sının sahibi değildir; sadece standardın koruyucusudur. Görevi, ISA’nın parçalanmasını önlemek ve uyumluluğu sağlamaktır.
Bu, ARM modelinden temel bir farktır. ARM Ltd. bir şirkettir ve IP’sinin sahibidir. RISC-V ise Linux Vakfı’nın Linux çekirdeğini yönetmesine benzer bir yapıyla, küresel bir topluluk tarafından yönetilen bir standarttır.
3. Ekosistem Patlaması
Google, NVIDIA, Qualcomm, Samsung, Western Digital, SiFive, Alibaba ve daha yüzlerce şirket RISC-V Vakfı’nın üyesidir. Bu devasa endüstri desteği, yazılım ekosisteminin (derleyiciler, işletim sistemleri, geliştirme araçları) hızla olgunlaşmasını sağlamaktadır.
RISC-V ile Tasarım Rehberi: Fikirden Prototiplemeye
Teoriyi bir kenara bırakıp pratiğe geçelim. Kendi RISC-V tabanlı çipinizi tasarlamak istediğinizi varsayalım. İzlemeniz gereken adımlar kabaca şunlardır:
İhtiyaç Analizi ve Çekirdek (Core) Seçimi
İlk soru şudur: Ne tür bir işlemciye ihtiyacınız var?
- Gömülü Mikrodenetleyici (IoT, Sensörler): Düşük güç tüketimi, düşük maliyet. RV32I veya RV32IC yeterli olabilir.
- Yüksek Performanslı Uygulama İşlemcisi (Linux/Android Çalıştıran): Çok çekirdekli (multicore), sanal bellek desteği (MMU), L1/L2 önbellekler. RV64GC gerekir.
- Özel Hızlandırıcı (Yapay Zeka, DSP): Temel bir çekirdek + özel komut eklentileri.
Bu ihtiyaca göre bir işlemci çekirdeği (CPU Core) seçmeniz gerekir. Burada iki ana yolunuz var:
A. Hazır Açık Kaynak Çekirdekleri Kullanmak: Tıpkı bir kütüphane kullanmak gibi, topluluk tarafından geliştirilmiş, test edilmiş ve optimize edilmiş hazır çekirdekleri kullanabilirsiniz. Bunlar genellikle donanım tanım dilleri (Verilog veya VHDL) ile yazılmış RTL kodlarıdır.
- Örnekler:
- PULP Platform (ETH Zurich): Düşük güç tüketimli IoT uygulamaları için tasarlanmış (Ibex, Ariane gibi) çekirdekleriyle ünlüdür.
- Berkeley Out-of-Order Machine (BOOM): Yüksek performanslı, “Out-of-Order” (sıra dışı) komut yürütebilen, modern masaüstü işlemcilerine kafa tutmayı hedefleyen karmaşık bir çekirdek.
- VexRiscv: SpinalHDL adlı modern bir dilde yazılmış, son derece yapılandırılabilir ve yüksek performanslı bir çekirdek.
- NEORV32: Sadece VHDL ile yazılmış, eğitsel amaçlı ve FPGA’lere sığması kolay, kompakt bir çekirdek.
B. Kendi Çekirdeğinizi Yazmak: Bu, en zorlu yoldur ancak tam kontrol sağlar. Verilog veya VHDL gibi bir Donanım Tanımlama Dili (HDL – Hardware Description Language) kullanarak RISC-V ISA spesifikasyonlarına uyan kendi işlemci çekirdeğinizi sıfırdan yazabilirsiniz.
Simülasyon ve Doğrulama (Verification)
Donanımda kural şudur: “Test etmediysen, çalışmıyordur.” Yazılımda bir hatayı (bug) düzeltmek bir “patch” (yama) yayınlamak kadar kolayken, donanımda (özellikle silikona döküldükten sonra) bir hatayı düzeltmek milyonlarca dolara veya projenin tamamen iptal olmasına mal olabilir.
Bu nedenle tasarımın büyük bir kısmı doğrulama (verification) ile geçer.
- Testbench: Yazdığınız veya seçtiğiniz çekirdeği test etmek için bir “test ortamı” (testbench) oluşturursunuz. Bu ortam, işlemciye komutlar gönderir ve çıktılarının (register veya hafıza değerleri) beklenenle aynı olup olmadığını kontrol eder.
- Simülasyon Araçları:
- Verilator (Açık Kaynak): Verilog kodunu yüksek hızlı simülasyon için C++ veya SystemC koduna dönüştüren mükemmel bir araçtır.
- Renode (Açık Kaynak): Sadece işlemciyi değil, tüm sistemi (UART, I2C, bellek vb. çevre birimleriyle) simüle etmenizi sağlayan bir platformdur.
- Ticari Araçlar: Cadence, Synopsys ve Siemens (Mentor Graphics) firmalarının sunduğu profesyonel simülatörler (QuestaSim, VCS, Xcelium).
FPGA Üzerinde Prototipleme
Simülasyonlar genellikle yavaştır. İşlemcinizin saniyede milyarlarca komut yürüteceği yerde, simülatör saniyede birkaç bin komutu ancak çalıştırabilir. Gerçek dünyada, örneğin bir Linux işletim sistemini “boot” etmeyi test etmek simülasyonda günler sürebilir.
İşte burada devreye FPGA (Field-Programmable Gate Array) girer.
FPGA, içindeki mantık blokları ve bağlantıları yazılımsal olarak yeniden programlanabilen bir çiptir. Bir FPGA’ya işlemci tasarımınızı (RTL kodunuzu) “yüklediğinizde”, o FPGA fiziksel olarak sizin işlemcinize dönüşür.
Bu, “donanım hızında simülasyon” yapmanızı sağlar.
- Süreç (Synthesis – Sentezleme):
- Verilog/VHDL kodunuzu alırsınız.
- FPGA üreticisinin (Xilinx/AMD, Intel/Altera, Lattice) sağladığı aracı (örneğin Vivado veya Quartus) kullanırsınız.
- Bu araç, soyut HDL kodunuzu FPGA’nın içindeki belirli mantık bloklarına (LUT’lar, Flip-Flop’lar) haritalar (mapping) ve bunlar arasındaki bağlantıları (routing) yapar.
- Sonuçta “bitstream” adı verilen bir dosya oluşur.
- Popüler FPGA Geliştirme Kartları:
- Digilent Arty A7/S7: RISC-V projeleri için popüler, Xilinx FPGA’lı bir kart.
- Terasic DE10-Nano: Intel Cyclone V FPGA’sı ve yerleşik bir ARM işlemci (HPS) içeren güçlü bir kart.
- Lattice iCEstick: Çok düşük maliyetli, küçük projeler ve açık kaynak araç zincirleri (Yosys, Nextpnr) ile denemeler için idealdir.
FPGA üzerinde çalışan RISC-V işlemcinize artık klavye, fare, ekran bağlayabilir, üzerine Linux yükleyebilir ve gerçek bir bilgisayar gibi test edebilirsiniz.
Üretim Aşaması: Silikona Giden Yol (ASIC)
Prototipiniz FPGA üzerinde sorunsuz çalıştı. Artık seri üretime geçmek, yani kendi özel çipinizi (ASIC – Application-Specific Integrated Circuit) üretmek istiyorsunuz.
Bu, donanım tasarımının “son seviyesidir” ve FPGA’dan çok daha karmaşık ve maliyetlidir.
- FPGA vs. ASIC:
- FPGA: Yeniden programlanabilir, prototipleme için harika, düşük hacimli üretimde (birkaç bin adet) makul maliyetli. Ancak birim başına daha pahalıdır, daha fazla güç tüketir ve ASIC kadar hızlı çalışamaz.
- ASIC: Tek bir görev için üretilmiş özel çiptir. Programlanamaz. Tasarım maliyeti (NRE – Non-Recurring Engineering) çok yüksektir (milyonlarca dolar olabilir). Ancak seri üretime (milyonlarca adet) geçildiğinde birim maliyeti çok düşer (sentlere kadar), çok az güç tüketir ve çok yüksek hızlara ulaşır.
ASIC Tasarım Akışı (P&R ve Tape-out)
- RTL’den Netlist’e (Sentezleme): FPGA sentezlemesine benzer, ancak bu kez hedef bir FPGA değil, belirli bir üretim teknolojisinin (örneğin TSMC 7nm veya SkyWater 130nm) “standart hücre kütüphanesidir”. Sentez aracı (örneğin Synopsys Design Compiler), Verilog kodunuzu bu kütüphanedeki temel mantık kapılarına (AND, OR, NOT, Flip-Flop) dönüştürür. Buna Netlist denir.
- Fiziksel Tasarım (Place & Route – P&R): Bu, işin en zorlu kısımlarından biridir.
- Floorplanning: Çipin genel yerleşim planı yapılır. (Bellekler nereye, I/O pinleri nereye, işlemci çekirdeği nereye gelecek?)
- Placement (Yerleştirme): Milyonlarca standart hücre, çip yüzeyine optimal performans ve güç tüketimi için yerleştirilir.
- Routing (Yönlendirme): Bu milyonlarca hücre arasındaki milyarlarca bağlantı, metal katmanlar kullanılarak çizilir.
- Tape-out (Üretime Gönderme): Tüm tasarım kontrolleri (DRC, LVS) yapıldıktan sonra, GDSII adı verilen ve çipin tüm katmanlarının (transistörler, metal bağlantılar) maskelerini içeren devasa bir dosya oluşturulur. Bu dosya, yarı iletken üretim fabrikasına (Foundry) gönderilir.
Açık Kaynak Üretim: Google / SkyWater PDK
Geleneksel olarak ASIC üretimi, sadece dev şirketlerin erişebildiği bir alandı. Çünkü fabrikaların (Foundry – TSMC, Samsung, GlobalFoundries) tasarım kitleri (PDK – Process Design Kit) son derece gizli ve pahalıydı.
RISC-V’nin açık kaynak felsefesi, üretim sürecini de değiştirdi. Google, SkyWater fabrikası (130nm teknolojisi) ve Efabless platformu ile bir araya gelerek tarihi bir adım attı:
- Açık Kaynak PDK: SkyWater 130nm (SKY130) teknolojisinin PDK’sı tamamen açık kaynak hale getirildi.
- Açık Kaynak Araç Zinciri: Tasarımın her aşamasını (Sentezden P&R’ye) yapabilen açık kaynak araçlar (Yosys, OpenROAD, Magic) olgunlaştırıldı.
- Ücretsiz Üretim (Shuttle Program): Google, Efabless platformu üzerinden açık kaynak çip tasarımlarını ücretsiz olarak üretmek için “shuttle” (mekik) programları başlattı. Bu programlarda, birçok farklı proje tek bir silikon plaka (wafer) üzerinde birleştirilerek üretim maliyeti paylaşılır.
Bu, artık bireylerin, hobi geliştiricilerinin ve küçük startup’ların bile kendi özel ASIC çiplerini tasarlayıp üretebilmesinin önünü açtı.
Alternatifler ve Ticari Mimariler
RISC-V, açık kaynak işlemci mimarileri alanında lider olsa da, tek seçenek değildir. Ekosistemi anlamak için rakiplere ve alternatiflere de bakmak gerekir.
1. ARM (Ticari Pazar Lideri ve Küresel Bir Şirket)
Ticari örneklere de değinelim… ARM, açık kaynak değildir ancak yarı iletken dünyasının “IP devi”dir.
- Model: ARM, fiziksel çip üretmez. İşlemci çekirdeği tasarımlarını (IP – Intellectual Property) satar.
- Ürün Aileleri:
- Cortex-M: Gömülü sistemler ve mikrodenetleyiciler (STM32, NXP LPC gibi) pazarını domine eder.
- Cortex-A: Akıllı telefonlar, tabletler (Qualcomm Snapdragon, Apple M serisi, Samsung Exynos) ve sunucularda kullanılır.
- Avantajı: Muazzam olgunlukta bir yazılım ekosistemi, optimize edilmiş derleyiciler ve 30 yıllık bir pazar hakimiyeti.
- Dezavantajı: Yüksek lisans ve royalty bedelleri, kapalı mimari (özelleştirmeye kapalı).
Not: NVIDIA 2020’de Arm’ı satın almak için ~$40 milyar teklif vermiş; ama düzenleyici engeller nedeniyle işlem tamamlanamamış.
2. MIPS (Açık Kaynağa Geçiş Yapan Eski Dev)
MIPS, 90’larda ve 2000’lerde (özellikle modemler, router’lar ve oyun konsollarında) ARM’ın ana rakiplerinden biriydi. Kendisi de bir RISC mimarisidir.
- MIPS Open: 2018’de MIPS mimarisi, RISC-V’ye rakip olmak için “MIPS Open” girişimiyle açık kaynak hale getirildi.
- Durum: Ancak bu girişim, RISC-V’nin kazandığı ivmeyi yakalayamadı ve MIPS’in yeni sahipleri (Wave Computing iflasının ardından) odağını tekrar RISC-V’ye kaydırdı. MIPS’in geleceği belirsizliğini korumaktadır.
3. OpenPOWER
IBM, sunucu ve süper bilgisayarlarda kullandığı güçlü POWER mimarisini “OpenPOWER Foundation” aracılığıyla açtı.
- Farkı: RISC-V daha çok gömülü sistemlerden başlayıp yukarı doğru tırmanırken, OpenPOWER en baştan itibaren yüksek performanslı bilgi işlem (HPC) pazarını hedefledi.
- Kullanım: Çok yüksek performans gerektiren (örneğin Summit ve Sierra süper bilgisayarları) niş alanlarda kullanılır.
Donanım Tasarımının Demokratikleşmesi
Açık kaynak işlemci mimarileri ve özellikle RISC-V, sadece teknik bir gelişme değil, aynı zamanda felsefi bir devrimdir. Donanım geliştirmeyi, bir avuç milyar/trilyon dolarlık şirketlerin tekelinden alıp küresel bir mühendis, akademisyen ve hobi geliştiricisi topluluğunun erişimine açmıştır.
RISC-V sayesinde “domain-specific” (alana özel) mimariler çağı başlamıştır. Artık genel amaçlı bir ARM çekirdeği alıp onu yazılımla yormak yerine, yapay zeka, 5G sinyal işleme veya kriptografi için özelleştirilmiş komutlara sahip RISC-V tabanlı çipler tasarlamak çok daha verimlidir.
FPGA prototiplemesinden açık kaynak PDK’lar ile ASIC üretimine kadar uzanan bu yeni ekosistem, donanım dünyasındaki inovasyonun hızını katlanarak artırmaktadır. Gelecekte, kullandığımız cihazların kalbinde yer alan işlemcilerin çoğu, bu açık ve özgür standart üzerine inşa edilecek.
Tabi, cesaretimiz varsa…
Lütfen Dikkat! Sitemizi kaynak göstermeden kesinlikle alıntı yapmayınız!!!

