Hallo Ich möchte mit den arbeiten von CPLDs/FPGAs anfangen. Also was braucht man um zB so eine Bauteil wie XCR22LV10 zu programmieren? Ist unbedingt ein entwicklungsboard nötig ? Ich würde mich über antworten sehr freuen MFG Patrick
> 22v10 Diese CPLDs sind uralt, und können mit aktuellen Tools nicht mehr sinnvoll beschrieben werden. Zudem ist so ein 22V10 schon teurer oder gleich teuer wie ein aktuelles CPLD (Coolrunner oder 9500) von Xilinx. Für diese "neuen" CPLDs gibt es dann auch aktuelle Software kostenlos (Webpack). Klick doch einfach mal auf ---> CPLD <---- oder suche in der E-Bucht mal nach Xilinx. Da gibt alles zum loslegen für unter 20 Euro, und der Vorteil dabei: Du weißt schon mal, dass die Hardware tut.
denn 22V10 bekomm ich um 2,10€ Ich werd mal meine suche auf die Bucht werfen. Danke. MFG Patrick
Patrick Weinberger wrote:
> denn 22V10 bekomm ich um 2,10€
Aber aktueller wird er dadurch nicht ;-)
Bei Reichelts Angelika gibts den XC 9572XL PC44 für 3 Euronen.
Der hat immerhin schon 72 FFs und nicht nur 10.
naja in der Bucht liegt zur Zeit kein Entwicklungsboard mit JTAG und allem. Wieviel kostet sowas den neu ? MFG Patrick
Für Coolrunner gibts was: Digikey: http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail?name=122-1573-ND NuHorizons: http://www.nuhorizons.com/xilinx/boards/coolrunner/starterkit.asp
Ich hätt jetzt noch eine Frage bezüglich der Taktfrequenz eines solchen CPLD Chips. Was für Taktfrequenzen sind den effektiv möglich ? MFG Patrick
@ Patrick Weinberger (seennoob)
>CPLD Chips. Was für Taktfrequenzen sind den effektiv möglich ?
Einfache Logik mit einer Logikebene.
200MHz
Komplexere Sachen mit mehreren Logikebenen. Die Hälfte oder weniger.
MFG
Falk
Was ich noch nicht verstehe was ist eine Makrozelle ? Kann man eigentlich in so CPLDs µC synthetisieren ? MFG Patrick
Eine Makrozelle ist in wesentlichen ein FlipFlop. Und bissl Logik drumherum. Beim PLD zumindest. Einen µC kann man aufgrund der begrenzten Anzahl Makrozellen wohl kaum da rein bekommen. Bei FPGAs ist das allerdings üblich
Patrick Weinberger wrote: > Kann man eigentlich in so CPLDs µC synthetisieren ? Achtung: du machst damit einen sehr großen Schritt vom GAL 22V10 zu FPGAs. Teil das mal leichter in mehrere kleine Schritte auf: - EVAL-Board kaufen (am besten gleich FPGA, fertig aufgebaut, damit die Hardware schon mal funktioniert) - VHDL lernen und verstehen (oder von mir aus auch Verilog, aber mit VHDL bekommst du hier [in Europa] leichter Unterstützung) - Dann das "Hello World" der Hardware basteln: ein Lauflicht - Dann den Prozessorcore implementieren (Hier dürften dann die Blumen schon wieder blühen)
> Was ich noch nicht verstehe was ist eine Makrozelle ? Im Wesentlichen eine Boolesche Funktion (PLA-ähnlich) und optional ein Flipflop am Ausgang. Die Funktion kann relativ viele Eingänge haben (ich meine mich an 50 oder so zu erinnern). > Kann man eigentlich in so CPLDs µC synthetisieren ? Kleine µC ja, z.B. Picoblaze. Macht aber nur in Ausnahmefällen Sinn, weil sonst nicht mehr viel ins CPLD reingeht und man dann auch gleich einen fertigen µC nehmen könnte. In FPGAs wird sowas aber oft gemacht ("Softcore").
Naja meine vorgehensweise is mal ein billiges CPLD evalboard in der Bucht zu bekommen. Dann mal etwas mein wissen an VHDL ausbauen die üblichen sachen eben wie Lauflicht, PWM usw (zu aller anfang ein LED zum leuchten bringen). Wenn ich echt an den Grenzen gestossen bin kommt dann ne FPGA evalboard MFG Patrick P.S.: Wieviele Makrozellen hat so ein FPGA ?
Patrick Weinberger wrote: > P.S.: Wieviele Makrozellen hat so ein FPGA ? Die Architektur von FPGAs ist deutlich unterschiedlich zu der von CPLDs. Ich zitiere mich selbst: Beitrag "Re: Umstieg von FPGA auf CPLD"
> Wenn ich echt an den Grenzen gestossen bin kommt dann ne FPGA evalboard Würde ich so nur empfehlen, wenn du das CPLD Evalboard deutlich billiger bekommst. Ansonsten lieber gleich ein FPGA Evalboard, da entsteht dir ja kein Nachteil wenn du die Features nicht ausnutzt. > P.S.: Wieviele Makrozellen hat so ein FPGA ? Keine. FPGAs benutzen eine etwas andere Architektur als CPLDs. Grob gesagt sind die Booleschen Funktionen sehr viel "kleiner", nämlich mit max. 4, 5 oder 6 Eingängen je nach FPGA. Dafür kann man aber mehrere davon kaskadieren (passiert automatisch im Synthesetool) um größere Funktionen zu bauen und hat sehr viel mehr Flipflops. Die Programmierung funktioniert aber genauso (VHDL), die Unterschiede sieht man nur in der "Größe" und im Timing. Außerdem sind im FPGA fast immer sogenannte "Hard-Cores" eingebaut, also Hardwaremodule die eigentlich nichts mit der FPGA-Technik zu tun haben, aber bestimme Funktionen effizienter und Platzsparender ausführen. Beispiele: Clock-Generatoren, RAMs, Multiplizierer, Netzwerk-PHYs oder sogar ganze PowerPC-Prozessoren. Welche Hardcores und wieviele drin sind hängt vom konkreten FPGA ab.
Ich was sagt ihr den zu diesem Board ? Ich find über das irgendwie keine Daten im Inet aus denen ich schlau werd :-( http://cgi.ebay.at/Altium-LiveDesign-Evaluation-Kit-Evaluation-Board-FPGA_W0QQitemZ130272983544QQcmdZViewItemQQptZSoftware?hash=item130272983544&_trksid=p3286.c0.m14&_trkparms=72%3A1229|66%3A2|65%3A12|39%3A1|240%3A1318 MFG Patrick
Patrick Weinberger wrote: > Ich was sagt ihr den zu diesem Board ? http://cgi.ebay.at/Altium-LiveDesign-Evaluation-Kit-Evaluation-Board-FPGA_W0QQitemZ130272983544QQcmdZViewItemQQptZSoftware?hash=item130272983544&_trksid=p3286.c0.m14&_trkparms=72%3A1229|66%3A2|65%3A12|39%3A1|240%3A1318 > MFG Patrick Die gabs vor zwei Jahren als Gewinn auf den entsprechenden Messen oder für 99$ zu kaufen. Das Ding ist mit dem WebPack von Xilinx programierbar und soweit OK. Das Hauptproblem ist aber, dass kein Konfig-Speicher mit drauf ist. Also muß bei jedem Power-Up die Konfiguration über den PC neu geladen werden. Für die Entwicklung ok, für Musteraufbauten schon nervig...
Das bekommt man schon um 99$ wow und der schreibt was von 115€ Manchmal ist die Bucht echt faszinierend MFG Patrick
Hat sich erledigt mit dem Board wurde leider überboten Weiß wer was zu den Boards von Digilent ? MFG Patrick
Patrick Weinberger wrote: > Das bekommt man schon um 99$ wow und der schreibt was von 115€ > Manchmal ist die Bucht echt faszinierend > MFG Patrick Ja gut, das kann schon sein, wenn du den Dollarkurs vor 2 Jahren ansiehst, dazu dann noch den Versand, den Zoll und die Mehrwertsteuer rechnest... Digilent ist immer vorn dabei, wenn es um Entwicklungsboards für Xilinx geht (ich habe auch 2 Stück von denen). Die sind ganz ok ;-)
ok hab mein Board aus der Bucht leider ohne JTAG Schnittstelle http://cgi.ebay.at/ws/eBayISAPI.dll?ViewItem&item=120341921920&_trksid=p3907.m32&_trkparms=tab%3DWatching Welche JTAG-Schnittstelle sollte ich mir am besten kaufen für ein ilinx Starter-Board mit XC3S400 Spartan-3 FPGA DS-BD-3SxLC-PQ208 von Memec-Design Ich hoff ich hab nix falsches gekauft ! Schon mal danke für eure hilfe. MFG Patrick
Im Prinzip tuts der Nachbau des alten Parallel Cable z.B. Ebay 140287985781 wenn du etwas mehr Geld ausgeben willst, ist ein USB-Programmer natürlich besser. Der kostet aber etwa 150 Euro netto.
Naja ich wurde eh schon vom Verkäufer aufgeklärt aber danke Christian. Schönen Abend/Morgen noch MFG Patrick
Was kann man eigentlich mit einem XC3S400 so machen ? Also nen kleinen µC integrieren sicher aber wo liegen bei dem Modell die grenzen? MFG Patrick
> Also nen kleinen µC integrieren sicher aber wo liegen bei dem Modell die
grenzen?
Nehmen wir als Beispiel mal den Picoblaze-µC: 8-Bit Controller, RISC,
Registersatz 16 x 8bit, interner Speicher 64 x 8bit, 8 bit I/O Port,
Interruptfähig, Arithmetik und Logik, kein Multiplizierer oder andere
"höhere" Funktionen. Benötigt ein Block-RAM fürs Programm (1024 Befehle)
und ca. 100 Slices für Logik und Flipflops.
Der XC3S400 hat 896 (sagen wir 900) CLBs (das vierfache an Slices) und
16 Block-RAMS. Man kann also darin bis zu 16 solcher Microcontroller
plus Logik drumrum bauen (wobei es schon echt schwer wird, wenn man an
die Grenzen geht, aber 10 sollten problemlos gehen).
Fortsetzung: Der XC3S400 hat 16 Multiplizierer-Hard-Cores (je zwei Eingänge à 18 Bits, Ausgang 36 Bits), welche man mit den Prozessoren verbinden kann. Man hätte dann also so eine Art Multiplizierer-Koprozessor. Taktfrequenzen gehen bis zum theoretischen Maximum von (IIRC) 200 Mhz, praktisch machbar sind um die 50 MHz. Du kannst also mit diesem Chip durchaus einen kompletten Rechner älterer Bauart "nachbauen" und dadurch verstehen - machen auch viele. Auf lange Zeit wird die größere Einschränkung darin liegen, was an Peripherie auf dem Evalboard drauf ist. Wenn dir der Lötkolben nicht fremd ist, kannst du aber auch da Sachen dranbauen.
Naja so ein optimierter 10 Kern µC wär schon ganz ok. Wieviel braucht so ein 32bit µC Kern ? MFG Patrick
@ Morin (Gast) >Taktfrequenzen gehen bis zum theoretischen Maximum von (IIRC) 200 Mhz, >praktisch machbar sind um die 50 MHz. Solche Aussagen sind schlicht für die Tonne. Ohne Randbedingungen kann man da nämlich SEHR wenig sagen. UND Saprtan 3 schafft mehr als 200 MHz wenn man will und weiß wie es geht. @ Patrick Weinberger (seennoob) >Naja so ein optimierter 10 Kern µC wär schon ganz ok. Wieviel braucht so >ein 32bit µC Kern ? Der Microblaze braucht IIRC ~1100 Slices. Der 400er hat ca. 1800 Slices (CLBs * 2) MFG Falk
http://www.xilinx.com/publications/matrix/spartan_color.pdf Naja da steht das die FPGA CLBs = Slices * 2 MFG Patrick
Falk: > Solche Aussagen sind schlicht für die Tonne. Ohne Randbedingungen kann > man da nämlich SEHR wenig sagen. Das ist mir völlig klar. Patrick wollte aber eine Aussage haben, ohne dass er Randbedingungen nennen kann. Und meine Erfahrung bis jetzt ist halt, dass man beim Spartan-3 ohne großen Aufwand 50 MHz bekommen kann. 100 MHz ist schon weitaus schwerer, darüber ist es eine Aufgabe für Profis. Bedenke, dass Patrick ein Anfänger ist, der (wahrscheinlich) noch wenig bis nichts über die Tricks zum Hochtakten weiß. > UND Saprtan 3 schafft mehr als 200 MHz wenn man will und weiß wie es geht. Mein Fehler. Ich meinte mich an eine max. Frequenz von 180 MHz laut Datenblatt zu erinnern, lag aber falsch damit. Patrick: > Naja da steht das die FPGA CLBs = Slices * 2 Hm seh ich jetzt nichts drüber. Die Zahlen in den Tabellen sagen 4 für den S-3 und S-3L und ca. 2.7 für den S-3E. Da schaust du am besten im Datenblatt zu deinem konkreten Chip nach. Was nach wie vor gilt: Der Picoblaze braucht 1 Block-RAM und ca. 100 Slices.
Falk Brunner wrote: >>Naja so ein optimierter 10 Kern µC wär schon ganz ok. Wieviel braucht so >>ein 32bit µC Kern ? > > Der Microblaze braucht IIRC ~1100 Slices. Der 400er hat ca. 1800 Slices > (CLBs * 2) Dummerweise ist das ja noch nicht alles. Die Peripherie-Baugruppen fressen auch jede Menge Slices. Wenn ich allein daran denke, was der DMA-Controller MPMC auf dem Virtex 4 braucht....
@ Patrick Weinberger (seennoob) > ... wo liegen bei dem Modell die grenzen? Du siehst, sogar die Profis kommen ins Schwärmen, wenns um uC im FPGA geht ;-) Du wirst vorerst (noch) keinen Core auf dem FPGA implementieren. Was du brauchst, ist ein halbwegs verständliches Buch, in dem FPGA-Design praxisnah beschrieben ist. Das einzige, das sich hier für mich bewährt hat ist "VHDL-Synthese" von Reichardt/Schwarz ISBN 3486581929
Naja das mitdem Lernstoff hab ich schon abgelärt. Jetzt fehlt nur noch das Board. Naja ich werd mir zu Anfang mal mit einfachen Boolischen Sachen beschäftigen und dann erst kommt so ein µC Kern MFG Patrick
@ Morin (Gast) >halt, dass man beim Spartan-3 ohne großen Aufwand 50 MHz bekommen kann. Das ist ein vollkommen andere Aussage als "Taktfrequenzen gehen bis zum theoretischen Maximum von (IIRC) 200 Mhz, praktisch machbar sind um die 50 MHz." >Was nach wie vor gilt: Der Picoblaze braucht 1 Block-RAM und ca. 100 >Slices. Und ist ein geniales Teil! MFG Falk
> Das ist ein vollkommen andere Aussage als > > "Taktfrequenzen gehen bis zum theoretischen Maximum von (IIRC) 200 Mhz, > praktisch machbar sind um die 50 MHz." Die 200 MHz waren wie gesagt ein Irrtum. Was die 50 MHz angeht, so sollte jeder der den Thread liest inzwischen verstehen, wie sie gemeint waren.
Ich hätte jetzt noch eine Frage wie lange dauert es bis so ein FPGA nach einem Kaltstart betriebsbereit ist ? MFG Patrick
Kommt auf die Konfigurationsart an. Ein Spartan X3S400 mit seriellem Konfig-PROM etwa (gefühlte) 300-500ms. Du kannst das auch ausrechnen: mit Konfig-Takt und Bitstrom-Länge. Parallel geht es schneller, allerdings ist dafür einiges an Aufwand nötig.
@ Lothar Miller (lkmiller) >Kommt auf die Konfigurationsart an. In der Tat. Der XC3S400 hat 1,699,136 Bits Konfigurationsspeicher. Standardeinstellung ist 4 MHz beim Master Serial Mode, macht also ~0,4s Konfigurationsszeit. Man kann den Takt aber bis auf 20 (?) MHz hochdrehen, macht dann ~0,1s. Theoretisch schafft das FPGA bis zu 66 MHz bei einer externen Taktquelle (Slave Serial Mode). >Parallel geht es schneller, allerdings ist dafür einiges an Aufwand >nötig. ??? Einfach die 8 Leitungen anklemmen und gut. Ist nicht komplizierter als seriell. MFG Falk
> Einfach die 8 Leitungen anklemmen und gut. > Ist nicht komplizierter als seriell. Autsch, das parallele Platform-Flash habe ich übersehen :-o Hier der Link: http://www.xilinx.com/products/design_resources/config_sol/s3/config_s3e.htm#field
Also man schließt ein einfaches ROM an und von dem werden dann die Daten in den RAM des FPGA's übertragen? MFG Patrick
@ Patrick Weinberger (seennoob) >Also man schließt ein einfaches ROM an und von dem werden dann die Daten >in den RAM des FPGA's übertragen? JAIN. Es sind spezielle PROMs. 0815 Dinger gehen nicht, weil die anders angesteuert werden. Es gibt bei Spartan 3 aber mittlerweile auch die Möglichkeit, normale SPI-Flash Bausteine zu verwenden. MFg Falk
Der spezielle ROM ist sicher wieder verdammt teuer. Ich hab mal gelesen das einige einfach einen µC verwenden zum konfigurieren der FPGA. Ist dann also die LOW COST Variante oder hat dies andere Gründe ? MFG Patrick
> Es gibt bei Spartan 3 aber mittlerweile auch die > Möglichkeit, normale SPI-Flash Bausteine zu verwenden. Oder du nimmst dann gleich die Spartan 3 AN (Nonvolatile), die haben das Prom schon eingebaut. > Ich hab mal gelesen das einige einfach einen µC verwenden > zum konfigurieren der FPGA. Das mit dem uC ist auch so eine Sache. Wenn du schon einen hast, und viel speicher dazu, dann geht das schon. Du brauchst auf jeden Fall den Speicher (200kByte) für den Bitstrom, dann eine Software, die das ins FPGA reinprügelt. > Ist dann also die LOW COST Variante oder hat dies andere Gründe ? Nein, das ist nur praktisch wenn du sowieso z.B. eine SD-Karte im System hast, und darauf die FPGA-Konfiguration mit abgespeichert wird. Bei einem software-Update gibts dann die Möglichkeit, gleich auch die Hardware zu aktualisieren.
Ok mein Board is das und hat jemand mal vorschläge für den Anfang Also leichte Beispiele mit dem man die FPGA kennenlernt ? MFG Patrick
Kommt drauf an, was das Board drauf hat. Lern für den Anfang einen Großteil von dem was drauf ist anzusteuern. Also LEDs blinken lassen, Tasterreaktion, dann Speicher usw.
Hallo alle Ich wollt fragen muss man sich für das ISE WebPack wirklich auf Xilinx.com Registrieren? Oder ist auch anders zu bekommen ? MFG Patrick
> Ich wollt fragen muss man sich für das ISE WebPack wirklich auf > Xilinx.com Registrieren? Soweit ich das die letzten Jahre beobachtet habe, hat Xilinx das Wort "SPAM" nicht erfunden. Mit der Registrierung hast du zudem Zugang zu weiteren Bereichen der HP von Xilinx. > Oder ist auch anders zu bekommen ? Du könntest es als DVD bestellen, nur musst du dann auch deine Daten angeben. Und dann sogar Bank- oder Kreditkarten-Daten :-(
Das Problem liegt darin dass ich nicht wieder eine Scheinfirma oder so gründen will :-( MFG Patrick
Hallo Kennt wer ein gutes Tutorial für VHDL und Xilinx ISE ? Ich hab mir das heute etwas angeschaut und hab echt null Ahnung. Weiß nicht einmal wo ich Anfangen soll. Könntet ihr mir vielleicht ein paar Tipps geben ? MFG Patrick
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.