TÜBİTAK Projesi, 2005 - 2010
Elektronik tasarım otomasyonu, günümüzde katma değeri en yüksek yazılım
sektörüdür. Bu konuda uzmanlaşmış ve devleşmiş yazılım şirketleri her sene
milyonlarca dolarlık ciro yapmakta ve daha küçük ama özelleşmiş yazılım
şirketlerini satın alarak hem bu şirketlerin daha da oluşmasını desteklemekte
hem de kendi cirolarını arttırmaktadır. Elektronik tasarım otomasyonundaki
kullanılan yazılımlar özellikle akademik çalışmalar sonucunda ortaya çıkmış,
patentlenebilir ürünlerdir. Ülkemizde bu sektöre yönelik bir yapılanma
olmamasına rağmen elektronik tümdevre tasarımının çeşitli aşamalarında
otomasyon araçları çoklukla kullanılmaktadır.
Gömülü sistemler ise bilgisayarların insan hayatına, hayatı kolaylaştırmak için
girmiş şeklidir. Hızla gelişen elektronik ve özellikle mikrokontrolör teknolojisi
sayesinde özellikle tüketim elektroniği ürünlerinde güvenilirlik, çeşitlilik, ucuzluk
ve kalitenin artması bu sayede sağlanmaktadır. Bu yüzden, özellikle dünya
tüketim elektroniği piyasasında ucuz, kaliteli ve yeni ürünler için kıyasıya bir
rekabet vardır. Dolayısıyla hızla gelişen teknolojiye ve piyasanın
rekabet koşullarına ayak uydurabilmek için bu ürünlerinin tasarım süresinin, ürün
kalitesinden ödün vermeden, kısalması gerekmektedir. Bu da gömülü sistemlerin
tasarımı için otomasyon yazılımlarının geliştirilmesini zorunlu kılmaktadır.
Günümüzde, 50’den fazla üretici tarafından önerilen 10.000’den fazla
mikrokontrolör vardır. Her sene sektöre giren üreticilerin sayısı ve ürün yelpazesi
de artmaktadır. Dolayısıyla herhangi bir ürün gamını tasarlamaya başlamadan
önce amaca uygun en iyi mikrokontrolörü seçmek ciddi zaman kaybına yol açan
bir süreç olmaya başlamıştır.
Bu proje kapsamında, kullanıcı uygulama ve kısıtlarına göre Alan Programlamalı
Kapı Dizileri (APKD1
) üzerinde en iyi şekilde çalışacak gömülü sistem tasarım
aracı geliştirilmeye başlanmıştır. Bunun için uygulamanın paralel veya dizgisel
çalışma özelliklerine göre kullanıcı tarafından girilmesini sağlayacak yeni bir
tasarım dili geliştirilmiştir. Bu dil üzerinde çalışan derleyici ve sentezleyiciler,
APKD’lerin esnek özelliğini kullanarak geliştirilen mikroişlemcinin veri yolunun,
komut setinin ve yığın dosyasının tamamen uygulamaya yönelik olarak
tasarlanmasını sağlamaktadır.
Geliştirdiğimiz tasarım aracıyla geliştirilen mikroişlemciler uygulamaya-yöneliktümdevre olarak üretilebilecek esnekliğe de sahiptir. Ancak APKD’lerde
gerçeklendiği zaman bu yapılarda önerilen yeniden betimlenebilme özelliği
kullanılarak oldukça etkin mikroişlemciler tasarlanabilmektedir. Bunun için
çalışma anında yeniden betimlenmenin sağlanması için bir modül geliştirilmiştir.
Xilinx APKD’ler için geliştirilmiş bu araç sayesinde sadece mikroişlemci içindeki
veriyolundaki elemanların eklenip çıkarılması değil aynı zamanda birden çok özel
geliştirilmiş mikroişlemcinin yoğun veri işleme ve hızlı veri transferi ihtiyacı olduğu
uygulamalarda mikroişlemciler arası haberleşmenin de en hızlı şekilde yapılması
sağlanmaktadır. Yoğun veri transferi veya veri işleme istenmediği durumlarda da
sistemin ihtiyaçlarına göre en iyi yonga-üstü-ağ yapısını kurabilmek için
uyarlanabilir bir yönlendirici tasarımı da bu proje kapsamında gerçeklenmiştir.