FPGA: 32 Bit CPU Tasarımı

Başlatan FxDev, 04 Ağustos 2011, 14:00:36

FxDev

Biraz bilgisayarımın arşivini kurcaladığımda aşağıdaki videoya eriştim. Yanılmıyorsam İzmir'deki bir toplantıda da bu videoyu göstermiştim.
Son dönemlerde de Çizgi'nin yine FPGA dağıtımı yaptığını işittim. O kitlere sahip olan ya da kendini lab.'a kapatmış öğrenci, çalışan arkadaşlarımıza FPGA ile neler yapılabileceği hakkındaki bu videoyu da onlarla paylaşmak istedim. Detaylı bilgiye buradan ulaşabileceğiniz videoyu aşağıdan izleyebilirsiniz.

Bir Tecrübe: Mikrodenetleyiciyi unutayım demeyin!


yldzelektronik

Hort olacak ama merakımdan soruyorum;

Fpga ile işlemci tasarımı yaptık.Peki bu işlemciye kod yazabiliyor muyuz?

Örneğin cortex m0 tasarımı yaptık.Sonra c dilinde kod yazıp hexi gömebiliyormuyuz?

Yoksa cpu core tasarladık ve tasarım esnasında işlemcinin yapacağı işi bir kez tanımladık ve bitti mi?

Benim yukarıdaki videodan anladığım;

Bir core tasarlıyoruz ve tasarım esnasında o core için program yazılmış şekilde oluyor.Yani o core sadece o işlemi yapabiliyor.

Yada benim kafam çok mu karıştı?Biri izah edebilir mi?
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

speak48

eğer mimari aynı instructionlar  %100 uygun çalıştıracak şekilde tasarlanırsa
derleyicilerin ürettiği kodlar çalışabilmekte.
bu kodu fpga içinde rom olarak tasarlanırsa değigin gibi birkezlik olur aynı sadece aynı kodu çalıştırır.
ama herhangi bir portla rame yazdırılabilir şekilde yapılırsa programlanabilinir hale gelir.

ama zaten arm orjinal cortex m1 i fpga  için piyasaya sürmüşken kimsenin uğraşacağını sanmam.

yldzelektronik

Alıntı yapılan: speak48 - 26 Haziran 2013, 12:58:12
eğer mimari aynı instructionlar  %100 uygun çalıştıracak şekilde tasarlanırsa
derleyicilerin ürettiği kodlar çalışabilmekte.
bu kodu fpga içinde rom olarak tasarlanırsa değigin gibi birkezlik olur aynı sadece aynı kodu çalıştırır.
ama herhangi bir portla rame yazdırılabilir şekilde yapılırsa programlanabilinir hale gelir.

ama zaten arm orjinal cortex m1 i fpga  için piyasaya sürmüşken kimsenin uğraşacağını sanmam.


Cm1 örnek. Varsayalım ki pic16f84 tasarladım ve ccs c ile yazıp derlediğim kodu gömebileceğim sanırım?
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

Ersin

Altera nın M0 lı core u var , Xilinx in yeni fpga larda A8 Zynq lerde mevcut,Actel in M3 ( yanlış hatırlıyor olabilirim ) core mevcut.Bunların dışında her fpga firmanın kendi cpu su var , mesela: Xilinx in picoblaze 8bitlik ve microblaze 32 bitlik core ları mevcut.

Alıntı YapFpga ile işlemci tasarımı yaptık.
Oyle bir yazmışsın ki sanki led yaktık gibi olmuş.

yldzelektronik

Alıntı yapılan: Ersin - 26 Haziran 2013, 14:10:43
Altera nın M0 lı core u var , Xilinx in yeni fpga larda A8 Zynq lerde mevcut,Actel in M3 ( yanlış hatırlıyor olabilirim ) core mevcut.Bunların dışında her fpga firmanın kendi cpu su var , mesela: Xilinx in picoblaze 8bitlik ve microblaze 32 bitlik core ları mevcut.

Şimdi bu cümle alteranın m0 core olan örnek uygulaması var anlamına mı geliyor?Yani altera examples klasöründe m0 core bulabiliriz anlamına mı geliyor?Yoksa fpga bu core ile mi çalışıyor?

Biraz daha açıklayıcı konuşsanız?Gerçekten konuyu sadece merak ettiğimden öğrenmeye çalışıyorum.Belki ileride bir çalışmam olur.

Alıntı yapılan: Ersin - 26 Haziran 2013, 14:10:43
...
Oyle bir yazmışsın ki sanki led yaktık gibi olmuş.

İlk led yaktığım dönemi hatırlıyorum da...

Benim için çok da farklı değil şu aşamada :D :D
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

speak48

alterayla bir alakası yok
arm kime yaptıysa odur.
http://www.arm.com/support/university/ip/index.php
Alıntı YapThe embedded world is all abuzz with ARM's latest Cortex  M0, M1, and M3
offerings for low-cost, low-power, and portable applications.
The ARM Cortex-M1, in particular, is specifically optimized for FPGAs
and is fully compatible with the M0 and M3 instruction set.

cm1  m0 ve m3 ün  instruction setlerini çalıştırabilen softcore işlemcidir.microblaze,nios gibi.
m1 ile ilgili   arm  artık uğraşmıyoruz dediler.
cm0 ı üniversite programıyla dağıtmaktalar.

cortex a9 ve powerpc gibi fpga içersindeki hardcore larla karıştırmamak gerekir.


Ersin

Altera da M0 değilmiş M1 miş
http://www.altera.com/devices/processor/arm/cortex-m1/m-arm-cortex-m1.html

xilinx son boardlarından ,üzerinde android çalışıyor
http://www.zedboard.org/

https://en.wikipedia.org/wiki/Actel_SmartFusion

İşlemci yapacak seviye geldiğin zaman , işlemci yapmazsın zaten , direk o uygulamada özel yaptığın core ları direk uygularsın.