|
Kategoriler
  
Sanal İşlemci Tasarımı
Bu kategorinin hedefi, sanal olarak bir işlemci tasarlanmasıdır. Sanal işlemci generic olup, temel sayısal devreleri arithmetic logic unit (aritmetik mantık birimi, ALU), instruction decoder (komut çözücü), control unit (kontrol devresi), register files (yazıcılar), ve program counter unit (program sayacı) birimleridir. Bu sanal işlemcimiz, sanal hafıza ve giriş çıkış birimleri üzerinde temel işlemci fonksiyonları gerçekleştirecektir.
Bu kategoride yarışan katılımcılar, temel komutları, yazıcı sayısı, kelime uzunluğu tarafımızdan belirlenen 16-bit bir işlemci tasarımı yapacaklardır. İşlemcinin tasarımında Logisim, Easysim, Multisim, Digital Works, CircuitLogix, vs gibi sanal devre simülatörleri kullanılacaktır. 1. veya 2. kategorideki simülatör ve/veya EDA (Elektronik Tasarım Otomasyonu) araçları için ihtiyaç duyulacak finansman değer görülen proje katılımcılarına sağlanacaktır. Ortaya çıkan çalışmalar eğitim amacı taşımaktadır.
Temel amaç kısıtlı komutları yürütebilen, kısıtlı hafıza ve çevre birimleri üzerinde işlem yapabilen ilkel sanal bir işlemci tasarımı yapmaktır. Kullanıcıların kullanacağı simülatör veya sanal yazılım programı kayıt sürecinde mutlaka tanımlanmalıdır. Belirlenen teknik özelliklere uyduğu sürece herhangi bir kısıtlama olmamasına rağmen, ancak proje yöneticilerinin onaylayacağı araçlar ile projenin yürütülmesi esastır.
Projenin diğer kategorilerine de katılacak kişilerin, daha profesyonel araçlara ihtiyaç duymaları halinde bu aşamada da finansal destek söz konusu olabilir. Bu desteği sağlayabilmeniz için gerekli onay proje yöneticileri ve direktörü tarafından sponsorlardan sağladığı bütçeden karşılanacaktır. İleriye dönük çalışmalarda Verilog ,VHDL gibi HDL (Hardware Description Language) dillerinin yanında SytemC, System Verilog gibi daha kolay seviyede hardware tasarım dillerinin kullanımını tavsiye ederiz.
FPGA ile Fiziksel İşlemci Tasarımı
Bu kategorideki amaç, ayrıntıları tarafımızca verilecek olan bir işlemcinin FPGA (Bukalemun Yonga) üzerinde Xilinx ISE, Icarus Verilog gibi EDA (Elektronik Tasarım Otomasyonu) programları kullanarak gerçekleştirilmesidir.
Katılımcıların VHDL, Verilog gibi donanım tasarım programlama dillerine ve simülasyon programlarına vakıf olması veya öğrenme sürecine girmeleri gerekmektedir. Bu kategoriye, proje direktörü tarafından yeterli görülen veya sayısal tasarım konusunda deneyimli mühendisler ve mühendislik öğrencileri katılacaktır. Yarışmaya katılmak için yeterli görülen katılımcılardan değer bulunanların tasarım sırasında kullanacağı FPGA ve EDA programları tarafımızdan sağlanacaktır. Mümkün olduğunca gerçeklenebilme esas olmalıdır. Projenin devamında bu sistemlerin ilerletilmesi konusunda çalışmalar yapılacaktır.
Akademik Yenilikçi Gömülü Sistem Tasarımı
Yarışmamızın bu kategorisine akademik çalışmalar katılabilecektir. Tasarımlarının içinde herhangi bir işlemci bulunan SoC (System on a Chip) projeleri, herhangi bir gömülü sistem etrafında yaratıcı ve yenilikçi çalışmalar bu kategoriye kabul edilecektir. Yapılacak tasarımların problemlere yenilikçi bir yaklaşımla yaklaşması, yaratıcı olması ve ortaya çıkacak olan ürünün mevcut gömülü sistem tasarımlarına katma değer sağlaması hedeflenmektedir.
Bu kategoriye üniversitelerin tez ve/veya proje aşamasında bulunan ve içinde bir gömülü sistem de olan tüm çalışmalar katılabilirler. Doğrudan bu kategoriye katılacak üniversite tez ve/veya proje çalışmaları da kayıt yaptırmalıdırlar. Bu çalışma yürütücüleri herhangi bir nedenden dolayı projelerinin her aşamasında tamamen gizli kalmasını talep edebilirler. Bu durumda kayıtlar sadece kendilerine ve proje yöneticilerine açık olacak ve kamuoyuna basit bir anlatım duyurulacaktır.
Temel Sınırlamalar ve Teknik Özellikler (Kategori 1 ve 2)
"Sanal İşlemci Tasarımı ve FPGA ile Fiziksel İşlemci Tasarımı kategorileri için sınırlayıcı değerler aşağıda belirtilmiştir.
- Kelime Uzunluğu: 16-Bit
- Temel Komutlar:
| Komut |
Açıklama |
| Add |
Addition |
| Addi |
Addition (immediate) |
| Sub |
Subtraction |
| Subi |
Subtraction (immediate) |
| Mul |
Multiplication |
| Muli |
Multiplication (immediate) |
| Mulu |
Multiplication (unsigned) |
| Cmp |
Compare |
| And |
AND |
| Andi |
AND (immediate) |
| Or |
OR |
| Ori |
OR (immediate) |
| Not |
NOT |
| Xor |
XOR |
| Xori |
XOR (immediate) |
| Sll |
Logical shift left |
| Srl |
Logical shift right |
| Sla |
Arithmetic shift left |
| Sra |
Arithmetic shift right |
| Lw |
Load word |
| Sw |
Store word |
| Mov |
Move data between registers |
| Movi |
Move data (immediate) |
| Beq |
Branch if equal to 0 |
| Bne |
Branch if not equal to 0 |
| Ba |
Branch always |
| BL |
Branch and Link |
| Nop |
No operation |
| Hlt |
Halt |
| Syscall |
System call (software interrupt) |
- Hafıza Organizasyonu: Serbest
- OPCode Organizasyonu: Serbest
- Yazıcılar: 1 Adet Akümülatör, toplam en az 3 adet. Organizasyonu serbest
Değerlendirme Kriterleri
Öncelikle en önemli değerlendirme kriteri "Özgün Çalışma" dır. Özgün olmayan çalışmalar değerlendirme dışı bırakılır. Değerlendirme kriterlerine uyup uymadığı veya hangi ölçüde bir performans alındığını görmek amacı ile Jüri, projenin herhangi bir aşamasında, makine dilinde bir program parçasının tasarlanan işlemcilerde koşmasını isteyebilir. Bu program parçasının kaç saat çevriminde koştuğu bir değerlendirme kriteridir ancak gerçek çalışma frekansı "Sanal İşlemci Tasarımı" ve "FPGA ile Fiziksel İşlemci Tasarımı" kategorilerinde herhangi bir sınırlayıcı koşul olarak ele alınmayacaktır.
Yazıcı sayısı, operand sayısı (işlemlerin kaç yazıcı üzerinde yapılabildiği), hafıza organizasyonu ve pipeline, daha-path control, cache gibi tasarımda performans arttırma yöntemleri değerlendirme kriterleridir.
"Akademik Yenilikçi Gömülü Sistem Tasarımı" kategorisinde ise akademisyenlerin yenilikçi fikirleri, yeni temel yetkinlik fikirlerini denemeleri (teori geliştirmeleri), kıyaslama, ortak çalışma yürütme, makale yazma ve benzeri yöntemler ile kolektif bilgi birikimi oluşturmaya yönelik raporlu, metodik bir çalışma ve sonuca ulaşma sistematiğini değerlendirme kriterleri olacaktır. Akademik Yenilikçi Gömülü Sistem Tasarımı projelerinde mutlaka proje/tez öğretim üyesinin onayı aranacaktır.
Tavsiye Edilen Sanal Devre Simülatörleri
Tavsiye Edilen FGPA Tasarım Kitleri
- Xilinx Spartan 3 Starter Kit - URL
- Xilinx Spartan 3 E Starter Kit - URL
- Altera Cyclone II FPGA Starter Development Kit - URL
- Actel IGLOO Starter Kit - URL
Tavsiye Edilen EDA (Elektronik Tasarım Otomasyonu) Araçları
- Xilinx ISE - URL
- Altera Quartus II - URL
- Actel's Libero Integrated Design Environment (IDE) - URL
Yukarıda belirtilen EDA (Elektronik Tasarım Otomasyonu) araçlarının yanında aşağıdaki ücretsiz tasarım programlarını da kullanabilirsiniz.
- Sentez ve simülasyon için Icarus Verilog - URL
- VHDL kodlarının syntax denetimi için gHDL - URL
- FPGA yonga tasarım organizasyonu için Chip Vault - URL
Ciddi görülen her çalışma için projenin herhangi bir evresinde tasarım kitleri, EDA (Elektronik Tasarım Otomasyonu) araçları veya benzer her türlü yazılım/donanım masraflarına maddi destekler sağlanabilecektir.
|