Ana Sayfa
Ana Sayfa » Çalışmalar »
?

 cpu_kulis (Fiziksel İşlemci Kategorisi İkincisi)
: 17 Aralık 2007 Pazartesi
: Aktif
: 1 Eylül 2008 Pazartesi
: Prof. Dr. Sarp ERTÜRK
: Arş. Gör. Anıl ÇELEBİ
: Çağrı GÜVENEL, KOU-Elektronik ve Haberleşme Mühendisliği, 3. Sınıf Öğrencisi
Ahmet TEKYILDIZ, KOU-Elektronik ve Haberleşme Mühendisliği, 3. Sınıf Öğrencisi
: Yrd. Doç. Dr. Oğuzhan URHAN
Yrd. Doç. Dr. M. Kemal GÜLLÜ
Kocaeli Üniversitesi
: 1-) 16 bitlik bir mikroişlemcinin Verilog HDL kullanılarak davranış modellemesinin yapılması ve modelsim benzetiminin gerçekleştirilmesi.

2-) Kapasitesinin yeterliliği ile orantılı olarak yapılan tasarımın Spartan3 veya Virtex II Pro FPGA'ini içeren bir geliştirme kartında çalıştırılmak üzere sentezlenmesi ve en son yerleşim benzetimlerinin yapılarak tasarımın board üzerinde test edilmesi.

3-) Yukarıdaki adımlarda başarı elde edildiği taktirde tasarım üzerinde güç tüketimini ve çalışma hızını iyileştirici yenilikler yapılması.

4-) Son olarak tasarlanan işlemci üzerinde klasik mikroişlemcilerle gerçekleştirilmesi güç bir sayısal işaret işleme komutunun paralel olarak yürütülmesi hedeflenmektedir.

Tüm bu süreçlerin başarı ile tamamlanması halinde özgün bir gömülü sistem tasarımının elde edilmesi hedeflenmektedir
: Sanal işlemci tasarımı için talep ettiğimiz herhangi bir destek yoktur ancak fiziksel tasarımda hali hazırda elimizde bulunan spartan 3 starter kit üzerindeki xc3s200 fpga kaynakları yetersiz kalabileceğinden Spartan-3E geliştirme kitinin sağlanması faydalı olacaktır.

Projenin akademik yenilikçi gömülü sistem geliştirme adımında tasarlanacak olan işlemcinin bir video kodlama algoritmasının donanım gerçeklemesinin yapılması hedeflenmektedir. Bu amaçla gerekli altyapıyı en ucuza sağlayabilecek en yeni kartlardan birisi olan "Virtex-4 Video Starter Kit" kartından 1 adet sağlanması faydalı olacaktır.

Yazlım konusunda bir desteğe ihtiyacımız yoktur. Xilinx firmasının gerekli bütün yazılımları üniversitemize bağışlanmıştır.
: Xilinx HW-SPAR3E-SK
: anilcelebi@gmail.com
: [ Gizli ]
: [ Gizli ]
: [ Gizli ]

Final Dosyaları

Bu kısımdaki dosyalar finalde değerdirmeye alınacak dosyalardır.

cpu_kulis

DataPathOneLevelIn

DataPathTopLevel

TahminiGucTuketimi

TasarimOzeti

cpu_kulis

 

Cpu-Kulis çalışma raporu ve RTL şeması

Bu çalışma ile CpuTurkey kapsamında Cpu-Kulis işlemcisi üzerinde yaptığımız çalışmalar son bulmuştur. Ekte Cpu-Kulis işlemcisini içeren sistemin yapı taşlarını ve anlatımlı örnek uygulamaları içeren çalışma raporu sunulmuştur. Aşağıdaki şekilde tasarımın en son haliyle elde edilen RTL devre şeması görünmektedir.

Rapor_v1.12

 

Cpu_Kulis işlemcisi kesmeleri ve VGA gösterimi

Cpu_Kulis işlemcisine çeşitli kesme yapıları eklenmiş ve bu kesmelerin çalışması VGA üzerinde gerçekleştirilen basit bir yılan oyunu mantığı ile görselleştirilmiştir. Aşağıdaki bağlantıya tıklanarak kesme yapılarının anlatıldığı bu kısa film izlenebilir.

http://video.google.com/videoplay?docid=9159859245635833537

İşlemci üzerinde yapılan geliştirmeleri de içeren güncellenmiş rapor en kısa sürede gerekli düzeltmeler yapıldıktan sonra sisteme yüklenecektir. Mevcut durumda cpu_kulis işlemcisi Alan-Güç Tüketimi-Performans bakımından gayet başarılı bir işlemci olarak karşımıza çıkmaktadır.

 

Cpu_Kulis işlemcisi tahmini güç tüketimi

Tablodan da görüleceği üzere FPGA' nın harcadığı toplam güç 91,02 mW civarındadır. Bu değerin yaklaşık 87,71 mW' lık bölümü FPGA' nın çalışması için gerekli olan minimum güçtür. Cpu_Kulis işlemcisinin harcadığı güç ise karaşimşek uygulaması için yaklaık olarak 3,31 mW civarında gerçekleştmiştir. Jürinin isteği doğrultusunda herhangi bir uygulama için de tahmini güç tüketimi değerleri elde edilebilir.

 

Cpu_Kulis işlemcisi tasarım özeti

Burada Xilinx ISE araçları kullanılarak yapılan işlemler sonucunda FPGA kaynaklarının kullanım oranları görülmektedir. Resimde de görüleceği gibi tasarlanan donanım kart üzerindeki FPGA' nın sadece %16' sını kaplamaktadır.

 

Cpu_Kulis fiziksel işlemci tasarımı çalışma raporu

Bu çalışmada Cpu_Kulis işlemcisinin fiziksel özelliklerinin anlatıldığı rapor sunulmuştur. Henüz tamamlanmamış olmasına rağmen son gün olduğu için sisteme yüklenmiştir. En kısa sürede bilinen eksiklikler giderilerek izin verilmesi halinde sisteme yeniden yüklenecektir.

Rapor_v1.5

 

Cpu_Kulis donanım testleri tamamlandı

Bu çalışma ile birlikte Cpu_Kulis işlemcisinin fiziksel tasarım çalışmaları tamamlanmıştır. İşlemci en son halinde 60MHz civarında çalışabilmektedir ancak tasarımı karmaşıklaştırmamak açısından Spartan 3E starter kit üzerinde bulunan kristal osilatör ile çalıştırılmıştır, dolayısıyla çalışma frekansı 50MHz dir. Sisteme yüklenen en son çalışmadan bu güne kadar işlemcinin RS232 arayüzü ile gerçek zamanlı programlanabilmesi için gerekli tasarımlar yapılmış ve uygulama kodları yazılmıştır. Yapılan en son tasarımın geliştirme kartına yüklenmesinden örnek uygulamanın RS232 aracılığıyla çalıştırılmasına ve başka bir uygulamanın gerçek zamanlı olarak tekrar yüklenip çalıştırılmasına kadar olan süreç yaklaşık 5 dakikalık kısa bir film ile görüntülenmiş ve sisteme yüklenmiştir. Olası indirme problemlerine bir önlem olması için aynı video "http://video.google.com/videoplay?docid=-7058072343586722421&hl=en" bağlantısından da izlenebilir.

Cpu_Kulis_OrnekUygulama

 

CPU-KULIS İşlemcisi öykünücüsü ve örnek çıktısı

Tasarladığımız sanal işlemcinin çalışması esnasında yazmaçlarının nasıl değişeceği ve program sayıcının durumu gibi özelliklerini kullanıcının Modelsim benzetim ekranı yerine daha anlaşılabilir bir arayüz ile incelemesini sağlayan bir öykünücü tasarlanmıştır. Henüz grafik arayüz yazılmamıştır ancak ilerleyen haftalarda gerekli görüldüğü taktirde bu da yapılacaktır. Öykünücüden elde edilen örnek bir dosya ekte sunulmuştur.

OykunucuCiktisi

 

Çalışma raporu v1.3

Çalışma raporunun bir önceki halinde bulunan bazı hatalar düzeltilmiş ve sayfa numaraları eklenmiştir.

CpuKulisCalismaRaporu_v1.3

 

CPU_KULIS Çalışma raporu v1.2 ve derleyici v1.1

Bu çalışmada derleyicinin yeni sürümünü ve çalışma raporunun yeniden düzenlenmiş halini sunuyoruz. Çalışma raporunda işlemcinin son haliyle gerçekleştirebildiği komutlar ve ardışık düzen (pipeline) gibi ayırt edici özelliklerinden bahsedilmektedir. Daha önceden yüklenmiş olan video çekimleri rapora ait uygulamalar olarak düşünülmüştür ve raporda ayrıca bu uygulamardan bahsedilmemiş, içerik nispeten yüzeysel tutulmuştur.

DerleyiciProjeleri

CpuKulisCalismaRaporu_v1.2

 

cpu_kulis v1

cpu_kulis işlemcisi sentezlenebilir olarak tasarlanmış ve modelsim ortamında simülasyonları gerçekleştirilmiştir. Şu aşamada dökümantasyon çalışmaları yapılmaktadır. Ekte assembler kod yazma adımından başlayarak sırasıyla bu kodun derlenmesi, derleme sonucu üretilen hex kodların ISE projesine eklenerek program belleğinin ilklendirilmesi, sentezleme ve ModelSim benzetimlerini gösteren kısa filmler bulunmaktadır. Dökümantasyon çalışmaları devam etmektedir.

1_cpu_kulis tanıtım

2_Derleyici Tanıtımı

3_Kod_yazımı_ve_benzetimi

RTL_Semalar

 

Tüm Data-Path öbeğinin tasarımı

Ekteki dosyalar sentezlenen Data-Path öbeğinin en üst seviye ve 1 seviye altına ait RTL şemalarıdır. Sentezlenen donanım hali hazırda 65 MHz çalışma frekansına sahiptir fakat basit iyileştirmelerle 200MHz üzerinde çalışması mümkündür. Benzetimlerde öbek sorunsuz bir çalışma göstermiştir. ISE proje dosyalarıda ayrıca sıkıştırılarak eklenmiştir. Önümüzdeki günlerde benzetim ekranı resimleri ve yapılan iyileştirme sonuçları sisteme yüklenecektir.

DataPathTopLevel

DataPathOneLevelIn

datapath_ise

 

Derleyici tasarımı

Ekteki sıkıştırılmış dosya derleyici için kullanılan c kodlarını ve basit bir kullanım klavuzunu içermektedir.

Compiler

 

ALU ön tasarımı ve sentez sonuçları

Bu zamana kadar olan çalışmalar kapsamında Datapath bölümünün en üst seviye tasarımı bitirilmiş olup Verilog kodlaması yapılmaktadır. Bu kapsamda tasarımı bitirilen ALU' nun en üst seviye görünü mü ve bir seviye içerisi görülmektedir. Sentez sonuçlarına göre tasarlanan ALU yaklaşık 450 MHz çalışma frekansına sahiptir. Güç analizi şu aşamada gerçek değerlerden uzak bir sonuç vereceği için gerçekleştirilmemiştir. Proje dosyalarının çok yer kaplamaması açısından gelinen aşamada ALU' nun benzetim işlemleri de yapılmamıştır ilerleyen haftalarda tüm Datapath öbeğinin benzetim sonuçları verilecektir.

ALU_RTL_1

ALU_RTL_2

 


BİLGİ: Projenize ait yeni bir çalışma göndermek için, yukarıdaki "Çalışma" butonuna tıklayınız ve ekrana gelen formu doldurunuz. Formu kaydettikten sonra, çalışmanızla ilgigi dosayları da yükleyebilirsiniz.

Bu proje TÜBİDER Okul Bilişim liderliğinde gerçekleştirilmektedir. / Web Tasarım: Hüseyin YİĞİT
Ana Sayfa | Katılım Koşulları | Sık Sorulan Sorular (FAQ) | Başvuru | İletişim | Haberler & Duyurular