Korkens Optical Flow sensor

Berätta om dina pågående projekt.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Korkens Optical Flow sensor

Inlägg av Korken »

Grejen är att jag inte vet hur varm den kommer bli. :)
Så just nu tänkte jag förbereda för det värsta och sen hoppas jag på att jag slipper kylning.
Men att göra 200 000 FFTer/s kanske genererar lite värme. :roll:

Men tack för idén, ska kolla på sånna kylflänsar!
Agwan
Inlägg: 1617
Blev medlem: 15 september 2009, 09:05:14

Re: Korkens Optical Flow sensor

Inlägg av Agwan »

När du routade DDR3-minnena, använde du 40 eller 50 ohms impedans? Det står 40 ohm på hälften av alla ställen och 50 på resterande.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Korkens Optical Flow sensor

Inlägg av Korken »

För Artix-7 så görs allt i mjukvara, den har On Die Termination (ODT) så man kan välja lite hejvilt.
Men jag kör med 50 Ohm vilket också rekommenderat för DDR2, vilket jag kör med (behövde inte hastigheten i DDR3).

För Zynq så är jag lite osäker, där måste jag snegla i manualen. :)
UG933, sidan 63 säger att för DDR3/3L så ska det vara 40 Ohm.
ug933-Zynq-7000-PCB.pdf
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
qx5
Inlägg: 1678
Blev medlem: 14 augusti 2014, 04:23:04

Re: Korkens Optical Flow sensor

Inlägg av qx5 »

Hur häftigt minne kan du köra med din FPGA? Några problem med signalintegritet på mönsterkortet? Hur går det med att minnesåtkomsten måste ske i större block? (burst)

(finns SD, DDR1, DDR2, DDR3, DDR4 och diverse GDDR)
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Korkens Optical Flow sensor

Inlägg av Korken »

Artix-7 stödjer DDR3, DDR2 och LPDDR2 i generatorn som skapar ett memory interface (MIG).
När det kommer till signalintegritet så är det standard: matchad längd på banor, 50 ohm för single ended och 100 ohm för differentiell.

Minnesåtkomst har jag inte kollat på än, jag har bara beräknat hur snabbt det behöver vara och sedan tagit till extra.
Det kommer bli ett eget kapitel i min väg att lära mig FPGAer. :)



Saken som jag ser som största problemet för mig inom en snar framtid är att hitta ett interface som stöder nog snabba överföringar.
Jag har typ Gigabit Ethernet och USB 3.0 att välja, och USB 3.0 har ingen vettig bridge IC än samt att ethernet är mer industristandard.
Så måste ta och läsa in mig på ethernet och se om jag kan skriva en egen MAC + enkel UDP överföring (utan att behöva ta till en soft core MCU) för att pumpa bilddata i 43MB/s. :humm:
Hittade folk som gjort det, så det är inte omöjligt men jag kan inte ethernet nog bra än.
Agwan
Inlägg: 1617
Blev medlem: 15 september 2009, 09:05:14

Re: Korkens Optical Flow sensor

Inlägg av Agwan »

Kör du Zynq:en så kan du låta en av processoerna sköta Ethernet-interfacet. Så gör vi. 400 Mbit/s skall inte vara så svårt att nå med en lösningen. Kopiera ethernetlösningen från något av demokorten bara. Om du vill flöda data från en Artix-7 till zynq:en så gör det via något av Xilinx standard serieinterface.

Men varför skall du flöda så mycket data, skall du inte utvärdera datat på FPGA:n och bara skicka resultatet?
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Korkens Optical Flow sensor

Inlägg av Korken »

Jodå, för Artix-kortet så blir det inte något så avancerat, då skulle det projektet aldrig bli klart. :)
Jag funderar dock mer för framtida användning för att kunna strömma en bildström till minne i datorn för att testa algoritmer innan man börjar trycka in dom i en FPGA.
Att utveckla en algoritm från början i en FPGA känns lite överambitiöst.
Tex så kommer vi snart behöva det på universitetet för framtida utveckling, så funderar redan på det.

Men på Zynqen, finns det "gratis" block för ethernet där?
Jag har tvärr inte haft nog med tid att leka där än, men vet att alla Xilinx ethernet IPs inte är gratis för Artix-7 iaf. :humm:
Agwan
Inlägg: 1617
Blev medlem: 15 september 2009, 09:05:14

Re: Korkens Optical Flow sensor

Inlägg av Agwan »

ARM:arna kan köra ethernet i hårdvara, FPGA:n behöver inte blandas in. Så inga IP behövs förutom IP-nummer då. ;) Det enda man behöver göra är att langa över datat från FPGA:n till minnet så att ARM:arna kan komma åt det.
Agwan
Inlägg: 1617
Blev medlem: 15 september 2009, 09:05:14

Re: Korkens Optical Flow sensor

Inlägg av Agwan »

Nu routade du ju inte DDR3-minnen här, men du kanske tittat på det tidigare. På sida 64 i ditt fina dokument som du länkat till ovan står det:
In the fly-by topology, TL0 should be kept from 0-64 mm, with TL1 14 mm ±0.1 mm, and
TL2 from 6-20 mm.
TL1 är från FPGA till första minnet, TL1 mellan minnen och TL2 från sista minne till terminering. Det som förvånar mig är att det står 14mm mellan minnena. När jag monterar minnena i princip kant i kant så blir mina trace ändå 15,7mm långa. Iaf de som behöver gå i vior genom hela kortet. Jag är förvånad över att kravet verkligen skulle vara precis 14mm.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Korkens Optical Flow sensor

Inlägg av Korken »

Ahhh, justja - man kan ju köra det genom PS delen och inte använda PL öht!
Det är mycket enklare skulle jag gissa på än att använda Ethernet i en vanlig FPGA. :)
Har ni testat att köra ethernet från bare-metal? Jag skulle iaf inte vilja ha ett helt linux körandes där.
Såg att FreeRTOS och lwIP stöds, så de kanske man kan testa.


Angående trace längder, jag kommer ihåg att jag läst detta, men det är konstigt.
Jag ska fråga våran expert på universitetet om han vet varför det är så, men det har säkert något att göra med reflektioner som kan ske när man gör stubs.
Dock när jag själv gör detta så kör jag nästan alltid T-branch, jag gjorde Fedevel Academy:s kurser och där är det 4 minnen man routar, två på ovansidan och två på undersidan.
SÅ när jag kommer köra fler minnen blir det nog samma grej för mig. Bäst att sno något som man har facit för. ;)
Agwan
Inlägg: 1617
Blev medlem: 15 september 2009, 09:05:14

Re: Korkens Optical Flow sensor

Inlägg av Agwan »

Vi har inte kommit så långt i utvecklingen än, men tanken är att vi skall köra i Linux.

Ser fram emot förklaring från er expert.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Korkens Optical Flow sensor

Inlägg av Korken »

Han hade lite spekulationer, men summa summarum va:
Svårt att dra några direkta lärdomar av det xilinx föreslår här är jag rädd, känns som om texten är tagen ur en större rapport och att för många detaljer tagits bort.
Så vi får leva med det tror jag... :humm:

Dock så är det inte bra att vi diskuterar Zynq så mycket, nu vill jag byta till den minsta att ha på processing kortet istället... :P
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Korkens Optical Flow sensor

Inlägg av Korken »

Hmm, jag har nu jämfört Artix-7 och Zynq-7000, och man får en Zynq för 100kr extra.
Det lockar väldigt mycket att köra den av fyra anledningar:

1. Den har en CPU direkt, så tex sup-pixel registreringen jag behöver göra skulle vara mycket enklare att utföra (en minsta kvadratmetod plus optimering av maxima).
2. Den har inbyggda kondingar i kapseln så det är lite mindre känsligt för hur man gör med all avkoppling.
3. Zynq kommer i en trevlig 225 bollar BGA som passar prefekt till projektet och tar mindre plats mot Artix-7an som behövde en 324 bollars för att få dit DDR2 minnet.
4. Zynq har delay matching i CPUn för DDR minnena så man kan fiddla lite där för att garantera att DDR minnet skulle funka bra.

Vad säger ni? Ska man stanna på Atrix-7 eller hoppa till en Zynq? Är väldigt kluven... :humm:
Agwan
Inlägg: 1617
Blev medlem: 15 september 2009, 09:05:14

Re: Korkens Optical Flow sensor

Inlägg av Agwan »

Vi använder båda. Artixen som en dum enhet som bara processar data och omvandlar till en serieström som skickas in i en Zynq för packetering och ethernetöverföring via ARM-kärnorna. Men vi har en modulär design där det ofta blir 9 Artixar som skickar data en Zynq.

Zynq:en är ett klart bättre val, men har du orken och tiden att lära dig både FPGA:delen och ARM:delen samt kommunikationen mellan dem? Och det utöver det projekt som är kärnan i det du arbetar med.
Användarvisningsbild
Korken
Inlägg: 2230
Blev medlem: 3 februari 2006, 19:19:36
Ort: Luleå, Porsön

Re: Korkens Optical Flow sensor

Inlägg av Korken »

Att lära sig och använda den är ingen fara, ska till efter sommaren börja på en 3D sensor baserad på Zynq 7Z030, så det måste jag lära mig iaf. :)
Men jag har lite koll på det just nu, AXI delen börjar falla på plats, bara vanan kvar. Det som mest gör mig fundersam just nu är PS delen.
Har lekt med den i bare metal mode, men skulle behöva komma igång med FreeRTOS, lwIP osv där (hur man ställer in allt som är mitt största problem). :humm:
Samt i värsta fall kan jag strunta i PS delen och köra allt som ett isolerat system i PL delen. Men det ska inte vara några problem hoppas jag.

Jag testar att designa lite med Zynqen och ser hur den känns. :)

För de som vill lära sig AXI delen, kolla alla videos av denne person: https://www.youtube.com/user/mamsadegh2
Gav mig allt jag behövde för att börja använda det!
Skriv svar