ICE40 Fpga için board tasarlama.

Bildiğim kadarıyla aselsanda falan daha çok VHDL kullanılıyor. ABD askeriyesinde de öyle ama dünya yavaş yavaş verilog'a kayıyormuş.
 
Ali'de GOWİN 20K var. Bu çipi deneyen oldu mu acaba?
SDK iki parçadan oluşuyor. 30 Euro limiti sağ olsun ayrı ayrı alınması gerekiyor, beraber alınca limite takılır.
 
Ali'de GOWİN 20K var. Bu çipi deneyen oldu mu acaba?
SDK iki parçadan oluşuyor. 30 Euro limiti sağ olsun ayrı ayrı alınması gerekiyor, beraber alınca limite takılır.
gowin 9k ve 20k devkitler türkiyede de ucuz nerdeyse ali fiyatına. ben videolarını izledim ve bir eksiğin göremedim tüm ihtiyacı karşılar.
bu projede tercih etmeme sebebim chipler ucuz değil ve bulunabilirlik sorunu var.

kdv dahil 1071tl- amazonu beklemeye değmez.

 
gowin 9k ve 20k devkitler türkiyede de ucuz nerdeyse ali fiyatına. ben videolarını izledim ve bir eksiğin göremedim tüm ihtiyacı karşılar.
bu projede tercih etmeme sebebim chipler ucuz değil ve bulunabilirlik sorunu var.

kdv dahil 1071tl- amazonu beklemeye değmez.

linkte gösterilmiş 9k. ali'de ayni kart 5xx TL. Yani fiyatı öyle tutuyorlar ki aliden sipariş anlamsız olsun. Tüccar tayfası.
18K çipin tanesi 321TL ali'de. https://tr.aliexpress.com/item/1005006070249184.html
Mouser de var gw2ar çipleri, ~60 dolara satıyorlar.
 
Evde benim bir frekans jeneratörü var aynen videodaki gibi yapmışlar. R-2R DAC ile. Yalnıcaz iyi bir çıkış opampı lazım. Sonrasında frekans gen yapmanın zorluğu yok.
 
Türkiye'de distribütörü var:

fiyat konusuna da şöyle bakıyorum. genelde mouserdeki fiyatın yarısına çin maliyeti oluyor.
bu durumda bize maliyetler lattice 3.5usd- gowin 7-8 usd. yani gowin ucuza gelmiyor. içinde ekstra yetenekler de bize lazım olmadığı için
tercih edemiyorum. hatta lattice 1k lut için 1.5 usd civarına inebiliyor.
 
Son düzenleme:
Benim frekans jeneterönün içinde de Lattice var :)

Burada güzel bir şey var, VHDL ya da Verilog öyle evrensel diller ki, ha lattice için yazılmıi, ha Xilinx ha çinli bir şey. FPGA'in de güzel yanı bu olsa gerek.
 
ice40 fpga kartı baba dedi :) epey bir uğraştan ve biraz da yardım aldıktan sonra sistemi çalıştırdım. kısaca uydudan 12.015 ghz frekansında gelen qpsk kodlanmış sinyal bir LNB ile 10600 fark frekansı düşülerek 1415mhz downconvert ediliyor. ardından bu sinyal fotoğraftaki tunere giriyor orada bir zero IF iq mikserden geçip artık dijital olarak decode ediliyor reed solomondu-viterbiydi derken tunerden 64 mbit hızında 8 bit paralel data olarak çıkıyor. işte ICE40 fpga burada işe giriyor çünkü zavall STM32 nin bu hızda bir sinyale yetişmesi imkansız. ICE40 64mbit datayı alıp paket hedaerına bakıyor işine yarayan paketleri bir dual port ram içinde kaydediyor ve hazır olduğunda 115200 baud hızında seri protokol ile stm32 işlemciye yolluyor. işlemci bu paketlerin içinde o an kilitlenilen transponderin yayıncı adı ve uydunun derecesi, sinyal frekansı gibi bilgilere erişiyor.



1740068268887.jpeg


1740068288108.jpeg
 

Ekler

  • WhatsApp Video 2025-02-20 saat 19.20.34_75e76f2d.mp4
    1.5 MB
STM32'ler o kadar zayıf değil. Mesela bir F407 bu işi yapabilir. AE'de ucuza bulunabiliyor (~2$). DMA'nın her bir stream için 16 bayt FIFO'su var + double buffer özelliği var. CCM (core coupled memory) özelliği var.

Bir zamanlayıcıyı dışardan saat sinyali alacak şekilde ayarlayıp, DMA özelliklerini ayarlayıp, bir port grubundan 8 bit paralel veriyi DMA ile çift buffer düzeninde kaydedip okursanız, DMA ve işlemci birbirleriyle erişim için çekişmesin diye stack ve heap hafıza için CCM bölgesini seçerseniz bu veriyi işleyebilmek için bir dünya zamanınız olur. Hatta hafıza erişimlerini dikkatli bir şekilde zamanlayarak neredeyse işlemci zamanının tümünü kullanabilirsiniz.
 
STM32'ler o kadar zayıf değil. Mesela bir F407 bu işi yapabilir. AE'de ucuza bulunabiliyor (~2$). DMA'nın her bir stream için 16 bayt FIFO'su var + double buffer özelliği var. CCM (core coupled memory) özelliği var.

Bir zamanlayıcıyı dışardan saat sinyali alacak şekilde ayarlayıp, DMA özelliklerini ayarlayıp, bir port grubundan 8 bit paralel veriyi DMA ile çift buffer düzeninde kaydedip okursanız, DMA ve işlemci birbirleriyle erişim için çekişmesin diye stack ve heap hafıza için CCM bölgesini seçerseniz bu veriyi işleyebilmek için bir dünya zamanınız olur. Hatta hafıza erişimlerini dikkatli bir şekilde zamanlayarak neredeyse işlemci zamanının tümünü kullanabilirsiniz.
doğru bunu da düşündüm aslında sistemde bir tane 180 mhz M4 var ama o başka işlerle çok meşgul, saniyede 100 defa double kalman alıyor, gyro okuyor, tuner modulunden 100hz sinyal parametreleri okuyor yorumluyor birkaç da haberleşme yapıyor.

hatta bu stm32 chipi seçerken amacım içindeki dcmi ve dma beraber kullanarak double buffer ile. bir paketi dma ile memory kopyala onu analiz ederken dma yeni gelen paketi diğer buffer'a yazsın. tabi bir paketi analiz etmek için sadece 23.5 usec vaktim kalıyor ardından diğer pakete geçmem gerekli. hatta 30.000-35.000 gibi sembolde bir paket gelirse vaktim 15 usec altına inecek gene bile yapılabilir ama işlemcinin başka bir iş yapmaya vakti kalır mı bilmiyorum. fpga için bu tip hızlar umrunda bile olmuyor, istersen 8 değil 80 mhz clock rate ile 400-500 mbit veri gir alet işini gene hiç zorlanmadan yapıyor.
 
doğru bunu da düşündüm aslında sistemde bir tane 180 mhz M4 var ama o başka işlerle çok meşgul, saniyede 100 defa double kalman alıyor, gyro okuyor, tuner modulunden 100hz sinyal parametreleri okuyor yorumluyor birkaç da haberleşme yapıyor.

hatta bu stm32 chipi seçerken amacım içindeki dcmi ve dma beraber kullanarak double buffer ile. bir paketi dma ile memory kopyala onu analiz ederken dma yeni gelen paketi diğer buffer'a yazsın. tabi bir paketi analiz etmek için sadece 23.5 usec vaktim kalıyor ardından diğer pakete geçmem gerekli. hatta 30.000-35.000 gibi sembolde bir paket gelirse vaktim 15 usec altına inecek gene bile yapılabilir ama işlemcinin başka bir iş yapmaya vakti kalır mı bilmiyorum. fpga için bu tip hızlar umrunda bile olmuyor, istersen 8 değil 80 mhz clock rate ile 400-500 mbit veri gir alet işini gene hiç zorlanmadan yapıyor.
Selamlar. ICE40 ile başladığım bir projemi, kapsamı büyüdükçe kaynak yetersizliğinden dolayı önce Intel MAX10 familyası ile, sonra maliyeti uçtuğu için Efinix Trion familyası ile güncelledim. Eğer tedarik açısından sorun yaşamayacağınızı düşünüyorsanız ve adetli iş yapacaksanız Efinix öneririm. Fakat Efinix'in tek bir TR distrubitoru var, bu kısımda biraz sorun yaşayabilirsiniz. İlk mesajınızı biraz inceleyebildim. Eğer verilog ile testbench calısmalarına ihtiyacınız olursa opensource olarak ben Surfer kullanıyorum çok da memnunum. Sentezleme toolları da var bu arkadaşların. Sadece brand-specific RTL oluşturma kısımlarında ek toollara ihtiyacınız doğabilir.
 
Selamlar. ICE40 ile başladığım bir projemi, kapsamı büyüdükçe kaynak yetersizliğinden dolayı önce Intel MAX10 familyası ile, sonra maliyeti uçtuğu için Efinix Trion familyası ile güncelledim. Eğer tedarik açısından sorun yaşamayacağınızı düşünüyorsanız ve adetli iş yapacaksanız Efinix öneririm. Fakat Efinix'in tek bir TR distrubitoru var, bu kısımda biraz sorun yaşayabilirsiniz. İlk mesajınızı biraz inceleyebildim. Eğer verilog ile testbench calısmalarına ihtiyacınız olursa opensource olarak ben Surfer kullanıyorum çok da memnunum. Sentezleme toolları da var bu arkadaşların. Sadece brand-specific RTL oluşturma kısımlarında ek toollara ihtiyacınız doğabilir.
şimdilik ice40up5k kapasite olarak yeterli geliyor. zaten çok karışık bir iş de yapmıyor açıkçası paket filtreleme ve ardından rame attığı paketi uartdan gönderiyor. ice40up5k fiyat olarak çok avantajlı 6-7 euro mouser fiyatı var, hong kong'dan 3.5-4 euro arasında temin edilebiliyor. çok uzun süredir marketde olan bir ürün ve birçok stokta bulunuyor. bizim yıllık ihtiyacımız en fazla 500 adet olacak. yani 5k stokladığımız zaman 10 yıl yeterli geliyor. bir önemli konu da kendi içinde güvenlikli ve tek sefer programlanabilir rom özelliği var. harici flash masrafı+güvenlik kaygısı olmuyor.

fakat ice40-lattice bir xilinx-altera kadar bug free ve gelişmiş sentezleme-simulasyon ortamı, ip catalog sunamıyor. bu projeyi yaparken beraber çalıştığımız arkadaşım amerikada ve çok uzun yıllardır gelişmiş fpga projeleri yapıyor, konuya çok hakim. prpje ile uğraşırken bir sürü bug buldu ve aslında çalışması gerekirken çalışmayan kodu başka yöntemlerle ayağa kaldırdı. özetle yeni başlayan biri için öğrenme sürecinde ice40 lattice tavsiye etmiyor.

lattice simulasyon için modelsim desteği veriyor ve ücretsiz lisansının içinde geliyor. ne kadar efektif bilmiyorum.

efinix duymuştum inceleyeceğim, gowin de bir alternatif ancak garip şekilde gowin çok uygun fiyatlı değil. bu projeyi yaptığım firma türkiyeden komponent alımı yapmıyor. çinde ve hong kongda kendi tedarikçileri var. 30-45 günde bir yüklemeler halinde sürekli sevkiyat mevcut. yani uzakdoğu pazarında ürün varsa temin edebiliriz.
 
Son düzenleme:

Forum istatistikleri

Konular
7,411
Mesajlar
125,063
Üyeler
3,012
Son üye
BenMuhsin

Son kaynaklar

Son profil mesajları

Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
Freemont2.0 posta Freemont2.0 wrote on posta's profile.
Merhabalar :)
az bilgili çok meraklı
Prooffy semih_s Prooffy wrote on semih_s's profile.
Merhaba, sizden DSO2C10 hakkında bilgi rica ettim. Yanıtlarsanız sevinirim...
Unal taydin Unal wrote on taydin's profile.
Timur Bey, Arduino kontrollü bir akü şarj cihazı yapmaya çalışıyorum. Aklımdaki fikri basit bir çizim olarak konu açmıştım. Özellikle sizin fikirlerinizi çok önemsiyorum.
Back
Top