www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Welcher Spartan ist idealer ?


Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hoffe, dass ein derartiger Thread nicht bereits existiert.
Ich fand einige, die ähnliche Probleme behandelten, aber so präzise war 
der Ausgang leider auch nicht.

Ich habe vor einen Z80 Rechner mit FPGAs zu bauen.
Und ja. Es muss dieser Prozessor sein^^, da der schon in meinem 
vorherigen Einplatinenrechner-Projekt verwendet wurde und einfach Kult 
ist.

Mein Problem ist jedoch die Frage, ob der Spartan-2 oder 3 besser 
geeignet wären.

Zum rumbasteln habe Ich mir bereits eine Spartan 3 gekauft, welche 
momentan über ein Parport-Kabel testweise programmiert werden kann^^.

Jetzt musste ich leider feststellen, dass viele wichtige Bausteine, wie 
RAM, EPROM und der Z80 selbst offiziell(!) keine 3,3V Betriebsspannung 
unterstützen.

Momentan stehe ich deshalb wirklich auf dem Schlauch und kann schlecht 
abwägen

Der Spartan2 ist (bei Reichelt) deutlich teurer als ein 3 und hat 
weniger Zellen und Gates.
Dafür ist er 5V kompatibel.

Ich möchte das Levelshifting nicht übertreiben.

Was rät Ihr mir ?

Autor: Roger Steiner (edge)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kauf ein fertiges Demoboard und bau dein SoPC dort rein.
EPROM wuerde ich mal ganz schnell vergessen, fuer das hat so ein Board 
ja auch mindestens ein FLASH mit drauf.

Ein Spartan-3 ist fuer sowas sicher besser geeignet.

Ach ja, 5V? das war mal im letzten Jahrtausend.

Cheers, Roger

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Der Spartan2 ist (bei Reichelt) deutlich teurer als ein 3 und hat
> weniger Zellen und Gates. Dafür ist er 5V kompatibel.
Das ist der letzte Spartan, der ohne Tricks 5V-tolerant ist. Und in 
einen 200k Spartan passt der Z80 mit kompletter Peripherie (8255, 
8256...).

Alternativ könntest du einen Spartan 3 nehmen und aktuelle Bauteile 
(RAM, Flash...) drumrum bauen. Dann setzt du nicht von Anfang an auf 
einen abgehalfterten Gaul (=Spartan 2).

Autor: Maik H. (littlechip)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ausserdem wurde der Support für den S2 und V2 in der ISE 11.0 gecancelt. 
Da fährt man also mit dem S3 auf jeden fall besser.

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für erste Versuche und kleinere Systeme reicht sicherlich der interne 
Blockram aus. Die Peripherie sollte auch ohne größere Schwierigkeiten 
reinpassen (wenn schon der Z80 passt ;).

Das Timing des T80 Cores ist allerdings nicht ohne (bzw. schlecht 
dokumentiert). Für erste Versuche solltest du vielleicht etwas 
einfacheres verwenden.

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erstmal danke für die Antworten :-)

>Für erste Versuche und kleinere Systeme reicht sicherlich der interne
>Blockram aus.
Blockram ist schon ein tolles Feature.
Aber externes RAM wird definitiv benötigt.
512kb sollte das System schon haben.

>Das ist der letzte Spartan, der ohne Tricks 5V-tolerant ist.
Aber laut Datenblatt ist er es...
Dies scheint aber nur für den Spartan2 zu gelten.
Nicht für den Spartan2E.
Zwar merkwürdigerweise ohne 5V Versorgungsspannung.....

>Ach ja, 5V? das war mal im letzten Jahrtausend.

>Alternativ könntest du einen Spartan 3 nehmen und aktuelle Bauteile
>(RAM, Flash...) drumrum bauen. Dann setzt du nicht von Anfang an auf
>einen abgehalfterten Gaul (=Spartan 2).
Ich würde gerne alles auf 3,3V aufbauen.
Nur entweder ist das Angebot von Reichelt extrem arm, oder diese 
Bausteine laufen vielleicht doch gut mit 3,3V.

Reichelt bietet momentan nur die 62xxx SRAM-Serie an.
Diese ist laut Datenblatt auf 5V beschränkt.
Zumindest ist es der 628512, welchen Ich gerne verwenden würde.

Gleiches gilt auch für die seriellen I2C EEPROMs 24Cxxx.

Könntest du mir RAM Bausteine empfehlen ?

>Das Timing des T80 Cores ist allerdings nicht ohne (bzw. schlecht
>dokumentiert). Für erste Versuche solltest du vielleicht etwas
>einfacheres verwenden.
Der Z80 muss nicht unbedingt ein SoftCore sein.
Dafür sind die Zellen doch etwas zu wertvoll. :-)
Sollte natürlich noch Platz übrig sein.... hehe

>Kauf ein fertiges Demoboard und bau dein SoPC dort rein.
>EPROM wuerde ich mal ganz schnell vergessen, fuer das hat so ein Board
>ja auch mindestens ein FLASH mit drauf.
Ich habe mir von Anfang an vorgenommen, so ein Board komplett selbst zu 
bauen. Das funktioniert ganz prima und ich spare dabei noch einiges an 
Geld.

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe ich richtig verstanden ? du möchtest z80, ram, eprom und den 
spartan physikalisch als bausteine haben ?

Oder möchtest du den z80 emulieren in dem spartan ?

Also falls du emulieren möchtest, dann Spartan 3 auf jeden fall, falls 
du aber den Spartan zusätzlich auf der platinne haben möchtest, dann 
nimm Spartan 2.

Ich habe noch paar Spartan XL oder Cyclone/Apex, ja richtig verstanden, 
dich ich verbauen werde - finde total unsining sachen wegzuschmeissen 
wenn die noch gehen und dafür neue kaufen - nur weil die 'supported' 
werden - für die paar sachen, wie z.b. ein Arcade computer - reichen 
auch 'alte' teile.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Das Timing des T80 Cores ist allerdings nicht ohne (bzw. schlecht
>>dokumentiert). Für erste Versuche solltest du vielleicht etwas
>>einfacheres verwenden.

> Der Z80 muss nicht unbedingt ein SoftCore sein.
> Dafür sind die Zellen doch etwas zu wertvoll. :-)
> Sollte natürlich noch Platz übrig sein.... hehe

Dachte, da gibts einen Haufen fertige Softcores für Z80 ... Der ist ja 
fast überall verbaut worden ...

Gibt ganz sicher einen guten und bewährten Softcore, der in 90% alles 
Z80-FPGA-Nachbauten verwendet wird ...

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tom wrote:
> habe ich richtig verstanden ? du möchtest z80, ram, eprom und den
> spartan physikalisch als bausteine haben ?
Korrekt.

> Oder möchtest du den z80 emulieren in dem spartan ?
Ein Z80 ist recht günstig (3 €) und wird immer noch hergestellt.
Es wäre - für mich - eine Katastrophe so etwas zu emulieren.
Da spare ich lieber Zellen.


> Also falls du emulieren möchtest, dann Spartan 3 auf jeden fall, falls
> du aber den Spartan zusätzlich auf der platinne haben möchtest, dann
> nimm Spartan 2.
Das habe ich mir auch gedacht, da das in gewissen anderen Projekten auch 
der Fall ist.
Jedoch ist der Spartan 2 wesentlich teurer.
Hier der Vergleich bei Reichelt:

XC2S 100-5 TQ144 24 € (cells 2700)
XC2S 30-5 TQ144 16 € (cells 972)

XC3S 50 TQ144 13 € (cells 1728)

Der preisliche Unterschied ist groß.
Und leider kann ich mir unter einer Zahl immer wenig vorstellen.
Soll Ich zur Sicherheit einen Spartan-2-100 und einen 30er nehmen ?
Oder 2 30er ?

Die FPGAs sollen MMU, Grafikchip, Soundchip und Floppy Controller 
enthalten.

> Ich habe noch paar Spartan XL oder Cyclone/Apex, ja richtig verstanden,
> dich ich verbauen werde - finde total unsining sachen wegzuschmeissen
> wenn die noch gehen und dafür neue kaufen - nur weil die 'supported'
> werden - für die paar sachen, wie z.b. ein Arcade computer - reichen
> auch 'alte' teile.
Richtig, aber was ist jetzt richig ?
Ist der Spartan2 5V kompatibel ?
Warum sagte gerade jemand, dass es nicht so ist ?


>>>Das Timing des T80 Cores ist allerdings nicht ohne (bzw. schlecht
>>>dokumentiert). Für erste Versuche solltest du vielleicht etwas
>>>einfacheres verwenden.
>> Der Z80 muss nicht unbedingt ein SoftCore sein.
>> Dafür sind die Zellen doch etwas zu wertvoll. :-)
>> Sollte natürlich noch Platz übrig sein.... hehe
>Dachte, da gibts einen Haufen fertige Softcores für Z80 ... Der ist ja
>fast überall verbaut worden ...
>Gibt ganz sicher einen guten und bewährten Softcore, der in 90% alles
>Z80-FPGA-Nachbauten verwendet wird ..
Ich habe schon einige gefunden.
Aber Ich sehe gerade keinen Grund einen Softcore zu verwenden.

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
eigentlich sollte jetzt sowas wie 'nimm einen AVR oder Arm7 und linux' 
kommen :)

Es gibt Z80 die beim 3.3V laufen, SRAM würde ich 70 ns nehmen, du 
brauchst keine 55 ns.

Die low-voltage sind 628512LLFP, zum thema IIC EEPROM, hatte bis jetzt 
keine probleme gehabt mit 3.3V, laut datenblatt funktioneiren die auch, 
die LC sind dann ab 2.5V

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
du solltest anderes anfangen, gucke erst mal in ISE wie viele LE's du 
brauchst, dann kannst du entscheiden ob einer oder zwei ( oder vielleich 
3 Cyclone 1 - wie ich hatte ) sein müssen.

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tom wrote:
> eigentlich sollte jetzt sowas wie 'nimm einen AVR oder Arm7 und linux'
> kommen :)
Argh >< !
Nein. Den Z80 kenne ich wenigstens.


> Es gibt Z80 die beim 3.3V laufen
Muss es ja. Ansonsten hätte der Game Boy nicht funktioniert.
Ich finde es nur wirsch, dass Reichelt teilweise falsche Datenblätter 
hat.
Der Z80A, den Ich dort bestellt habe, konnte das auch.
Aber bei dem Z84C00-10 bin ich mir nicht sicher. Laut Blatt geht es 
nicht.


> SRAM würde ich 70 ns nehmen, du brauchst keine 55 ns.
Moment. Ich habe nicht erwähnt, dass Ich 55ns verwenden wollte.
Woher weißt du das ?
Aber sind 55ns bei einem Video Display Controller nicht vorteilhafter ?
Bei 320 Pixeln pro Zeile, habe ich bei PAL ca. 120 ns Zeit, um einen 
Pixel zu fetchen.
Ich wollte aber jede Zeile buffern und in den Austastlücken Sprites 
holen.
Da ist schneller = besser

> Die low-voltage sind 628512LLFP,
Dann haben diese Variante wenigstens einen Namen.
Aber bei Reichelt gibt es die nicht.
Wo bestellt du ?

> zum thema IIC EEPROM, hatte bis jetzt
> keine probleme gehabt mit 3.3V, laut datenblatt funktioneiren die auch,
> die LC sind dann ab 2.5V
Das habe ich auch erst gedacht.
Bei dem 24C256 stimmt das auch.
Aber bei dem 24C512 gibt es 3 Versionen für 3 verschiedene Spannungen.
Welchen Sinn das auch immer macht...

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tom wrote:
> du solltest anderes anfangen, gucke erst mal in ISE wie viele LE's du
> brauchst, dann kannst du entscheiden ob einer oder zwei ( oder vielleich
> 3 Cyclone 1 - wie ich hatte ) sein müssen.
Das ist das Problem.
Ich weiß, dass ein XC3S50 im TQFP144 zu wenig User I/O haben wird.
Deswegen sollten es schon 2 sein.
Und Ich würde gerne erst anfangen, groß zu entwickeln, wenn Ich eine 
reale Testumgebung habe.
Das mag wahrscheinlich falsch sein, jedoch bin Ich bei FPGAs noch sehr 
grün hinter den Ohren und kann den Aufwand schlecht abschätzen.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Die FPGAs sollen MMU, Grafikchip, Soundchip und Floppy Controller
> enthalten.

Aaaahsoo ... jetzt samma beinand :)

Es gibt zwei Möglichkeiten:
- Erst synthetisieren und dann den FPGA kaufen
- oder einen großen FPGA kaufen.

Einen mit 200kGates müsste wohl reichen ... Da passt ein kompletter VC20 
rein.

>Ist der Spartan2 5V kompatibel ?
>Warum sagte gerade jemand, dass es nicht so ist ?

Nein, ist er nicht. Er ist 5V-Tolerant, aber nicht wirklich 
kompatibel.

Grüße
Gast

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gast wrote:
>> Die FPGAs sollen MMU, Grafikchip, Soundchip und Floppy Controller
>> enthalten.
>
> Aaaahsoo ... jetzt samma beinand :)
Sorry, das hätte ich wohl eher sagen müssen.

> Es gibt zwei Möglichkeiten:
> - Erst synthetisieren und dann den FPGA kaufen
> - oder einen großen FPGA kaufen.
In dem Fall dann wohl den größeren FPGA. Das ist dann wenigstens noch 
ausbaufähig.

> Einen mit 200kGates müsste wohl reichen ... Da passt ein kompletter VC20
> rein.
Bist du sicher ? Ein VC20 in einem einzigen XC3S200 ?
So viel Block RAM hat der doch auch nicht, oder ?

>>Ist der Spartan2 5V kompatibel ?
>>Warum sagte gerade jemand, dass es nicht so ist ?
> Nein, ist er nicht. Er ist 5V-Tolerant, aber nicht wirklich
> kompatibel.
Das heißt, er kann 5V am Input vertragen und mit Ladepumpen bei Output 
ausgeben ?
Oder wie darf ich mir das vorstellen ?
5V liegen ja für den Output nirgends in Form von Spannung am FPGA an.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>>Ist der Spartan2 5V kompatibel ?
>>>Warum sagte gerade jemand, dass es nicht so ist ?
>> Nein, ist er nicht. Er ist 5V-Tolerant, aber nicht wirklich
>> kompatibel.
>Das heißt, er kann 5V am Input vertragen und mit Ladepumpen bei Output
>ausgeben ?
>Oder wie darf ich mir das vorstellen ?
>5V liegen ja für den Output nirgends in Form von Spannung am FPGA an.

Er verträgt am Input 5V und gibt 3,3V am Ausgang aus. Mehr ist das nicht 
... Das heißt nur, er geht bei 5V am Eingang nicht kaputt.

+3,3V Signale für +5V-Logik ist zwar nicht sauber geht aber meistens. 
Nur bei Schmitt-Trigger-Eingängen, wie es manche Controller haben, muss 
man echt aufpassen!

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gast wrote:
>>>>Ist der Spartan2 5V kompatibel ?
>>>>Warum sagte gerade jemand, dass es nicht so ist ?
>>> Nein, ist er nicht. Er ist 5V-Tolerant, aber nicht wirklich
>>> kompatibel.
>>Das heißt, er kann 5V am Input vertragen und mit Ladepumpen bei Output
>>ausgeben ?
>>Oder wie darf ich mir das vorstellen ?
>>5V liegen ja für den Output nirgends in Form von Spannung am FPGA an.
>
> Er verträgt am Input 5V und gibt 3,3V am Ausgang aus. Mehr ist das nicht
> ... Das heißt nur, er geht bei 5V am Eingang nicht kaputt.
>
> +3,3V Signale für +5V-Logik ist zwar nicht sauber geht aber meistens.
> Nur bei Schmitt-Trigger-Eingängen, wie es manche Controller haben, muss
> man echt aufpassen!
Das ist dann aber auch wieder nichts halbes und nichts ganzes :-/.
TTL würde gehen.
Aber nicht jeder CMOS bei 5V nimmt 3,3V als HIGH.
Dann müsste ich bei vielen I/O s 5V Pull Ups haben, sofern das gestattet 
ist.

Autor: Roger Steiner (edge)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andre Z. wrote:
> Ich habe mir von Anfang an vorgenommen, so ein Board komplett selbst zu
> bauen. Das funktioniert ganz prima und ich spare dabei noch einiges an
> Geld.

Du sparst dadurch kein Geld, sondern verlierst dich im Detail.
Mit einem fertigen Board hast du Hardware die funktioniert und 
zeitgemaesse Bausteine drauf hat. Ausserdem kannst du dich da auf den 
angenehmeren Teil deines ´Projekts´ konzentrieren.

> Aber externes RAM wird definitiv benötigt.
> 512kb sollte das System schon haben.

Mit einem SDRAM bist du schnell und guenstig im Bereich von 16MB, bei 
DDR2 wirds noch billiger bei 64MB. Nur, auch mit den 512KB bist du mit 
einer 32Bit CPU besser bedient und wenns alt sein soll gibts auch 68k 
cores.

> Reichelt bietet momentan nur die 62xxx SRAM-Serie an.
> Diese ist laut Datenblatt auf 5V beschränkt.
> Zumindest ist es der 628512, welchen Ich gerne verwenden würde.

Mit Vorteil nimmst du bei FPGA designs synchrone RAMs. Es gibt auch 
huebsche SSRAMs. Ich wuerde jedoch ein SDRAM vorziehen.

> Gleiches gilt auch für die seriellen I2C EEPROMs 24Cxxx.

Brauchst du kein FLASH fuer Bitstream und Code?
Wozu Heute noch seriellen EEPROMs?

> Der Z80 muss nicht unbedingt ein SoftCore sein.
> Dafür sind die Zellen doch etwas zu wertvoll. :-)
> Sollte natürlich noch Platz übrig sein.... hehe

Mit einer soften CPU kannst du ein komplett synchrones design schaffen, 
und du hast die Moeglichkeit wenn du den Z80 gesehen hast auf etwas 
anderes umzusteigen.

> Das mag wahrscheinlich falsch sein, jedoch bin Ich bei FPGAs noch sehr
> grün hinter den Ohren und kann den Aufwand schlecht abschätzen.

Drum erst recht der Tip mit der gekauften Hardware, da kannst du gleich 
loslegen bestehende designs auszuprobieren, modifizieren und davon 
lernen.
Pack dein ganzes System samt CPU ins FPGA, je weniger externe 
Schnittstellen du am Anfang hast, um so besser.

Cheers, Roger

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Roger Steiner wrote:
> Andre Z. wrote:
>> Ich habe mir von Anfang an vorgenommen, so ein Board komplett selbst zu
>> bauen. Das funktioniert ganz prima und ich spare dabei noch einiges an
>> Geld.
>
> Du sparst dadurch kein Geld, sondern verlierst dich im Detail.
> Mit einem fertigen Board hast du Hardware die funktioniert und
> zeitgemaesse Bausteine drauf hat. Ausserdem kannst du dich da auf den
> angenehmeren Teil deines ´Projekts´ konzentrieren.
Dann hätte ich jedoch auch Geld für Hardware ausgegeben, welche nicht 
benötigt wird.
Und derartige Boards kosten 100 € und mehr.

Vielleicht wird es Zeit, anzumerken, dass meine Inspiration von dieser 
Seite kommt:
http://www.retroleum.co.uk/electronics.html

Dieser 'Phil' hat schon einige Z80 Rechner entworfen und wird 
dementsprechend auch gewisse Erfahrungen haben.

>> Aber externes RAM wird definitiv benötigt.
>> 512kb sollte das System schon haben.
>
> Mit einem SDRAM bist du schnell und guenstig im Bereich von 16MB, bei
> DDR2 wirds noch billiger bei 64MB. Nur, auch mit den 512KB bist du mit
> einer 32Bit CPU besser bedient und wenns alt sein soll gibts auch 68k
> cores.
Ich möchte nicht über mein Ziel hinausschießen.
512kb sind in Ordnung.
Um eine MMU, werde ich wegen dem Framebuffer wohl eh nicht rumkommen.


>> Reichelt bietet momentan nur die 62xxx SRAM-Serie an.
>> Diese ist laut Datenblatt auf 5V beschränkt.
>> Zumindest ist es der 628512, welchen Ich gerne verwenden würde.
>
> Mit Vorteil nimmst du bei FPGA designs synchrone RAMs. Es gibt auch
> huebsche SSRAMs. Ich wuerde jedoch ein SDRAM vorziehen.
Es mag sein, dass SDRAMs für so ein Projekt besser geeignet wären.
Aber sind diese nicht auch viel komplexer ?
Du meinst doch SDRAM DIMM Module, oder ?

>> Gleiches gilt auch für die seriellen I2C EEPROMs 24Cxxx.
>
> Brauchst du kein FLASH fuer Bitstream und Code?
> Wozu Heute noch seriellen EEPROMs?
Serielle EEPROMs glänzen geradezu mit einem einfachen I2C-Protokoll.
Man könnte natürlich auch SPI mit SD-Karten verwenden.

>> Der Z80 muss nicht unbedingt ein SoftCore sein.
>> Dafür sind die Zellen doch etwas zu wertvoll. :-)
>> Sollte natürlich noch Platz übrig sein.... hehe
>
> Mit einer soften CPU kannst du ein komplett synchrones design schaffen,
> und du hast die Moeglichkeit wenn du den Z80 gesehen hast auf etwas
> anderes umzusteigen.
Das wäre ein Vorteil, korrekt.
Aber der T80 belegt mal eben 50% einer XC3S200.

>> Das mag wahrscheinlich falsch sein, jedoch bin Ich bei FPGAs noch sehr
>> grün hinter den Ohren und kann den Aufwand schlecht abschätzen.
>
> Drum erst recht der Tip mit der gekauften Hardware, da kannst du gleich
> loslegen bestehende designs auszuprobieren, modifizieren und davon
> lernen.
> Pack dein ganzes System samt CPU ins FPGA, je weniger externe
> Schnittstellen du am Anfang hast, um so besser.
Welches Board würdest du empfehlen ?

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaube, Ich habe mich entschieden und fasse nochmal zusammen.
Bitte widerspricht mir, falls Ich mich irre.

Das Preis/Leistungsverhältnis der Spartan2 ist mittlerweile unter aller 
Kanone.
Farnell verkauft keine Spartan2 mehr.

Die Spartan3 setzt 3,3V vorraus.
Daher muss Ich den RAM bei Farnell bestellen.
Genau wie die 2. Spartan3, die Ich bräuchte, welche dort auch günstiger 
ist.

So etwas komplexes wie SDRAM kommt nicht in Frage.
Ich möchte die Erfahrungen von meinem ersten Einplatinenrechner nutzen.
Und der verwendet asynchrones SRAM.

Ein Demoboard kommt auch nicht in Frage.
Mein selbstgebautes FPGA Board für die ersten Tests und Spielereien in 
Kombination mit dem ebenfalls selbstgebauten Xilinx Byteblaster 
(Paralleles Programmierkabel), funktioniert meiner Meinung ziemlich gut.
Es war zwar am Anfang eine üble Frickelei, bis alles abgestimmt war, 
aber mittlerweile ist es stabil und schnell.
Außerdem habe ich dadurch auch mehr über die Konfiguration einer 
Spartan3 gelernt.

Ebenfalls habe ich deutlich weniger Erfahrungen mit SPI, als mit I2C.
Deshalb werde Ich wohl "Serial Slave"-Konfiguration mit einem PIC und 
einem I2C-EEPROM machen.
Falls SPI mit SD Karte doch besser sein sollte, könnte man ja immer noch 
wechseln.

Wahrscheinlich gibt es hier einige, die nicht meiner Meinung sind.
Aber das sind bisher meine Beobachtungen...

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok.
Wahrscheinlich wäre SPI doch besser.
Aber warum dann trotzdem kein EEPROM ?
In Speichergrößen von 128k ist EEPROM günstiger als Flash.

Eine Frage ist noch offen.
Das System soll, wie das erste auf Lochraster aufgebaut werden.

Ich benutze TQFP144-Adapter von http://www.elk-tronic.de/, die Ich sehr 
empfehlen kann, da diese qualitativ und preislich perfekt für Bastler 
sind.

Meine Frage an die FPGA Experten ist, ob das ganze noch stabil läuft, 
wenn Ich die Adapterplatine mit Buchsenleisten und Steckerleisten mit 
der Hauptplatine verbinde.

Ansonsten dürfte eigentlich alles klar sein.

Ich habe den Z84C00-10 gerade auf meinem vorherigen Projekt getestet.
Er läuft - zumindest bei 4 MHz (normalerweise steckt ein Z80 A drauf) - 
stabil auf 3,3V, auch wenn das Datenblatt 5V voraussetzt.
Soviel zu den Datenblättern von Reichelt...

Autor: Roger Steiner (edge)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andre Z. wrote:

> Vielleicht wird es Zeit, anzumerken, dass meine Inspiration von dieser
> Seite kommt:
> http://www.retroleum.co.uk/electronics.html

Herzig. Analog zu:
http://home.hetnet.nl/~weeren001/

Aber auch dort musstens leider diskrete MCUs sein, was das ganze etwas 
unflexibel macht.
Ein guter Ansatz ist z.B. hier:
Beitrag "Amiga-Minimig läuft auf DE2 Board"

> Ebenfalls habe ich deutlich weniger Erfahrungen mit SPI, als mit I2C.
> Deshalb werde Ich wohl "Serial Slave"-Konfiguration mit einem PIC und
> einem I2C-EEPROM machen.

Wozu? FPGAs von Heute koennen sich selbst konfigurieren.

> Wahrscheinlich wäre SPI doch besser.
> Aber warum dann trotzdem kein EEPROM ?
> In Speichergrößen von 128k ist EEPROM günstiger als Flash.

Fuer den Preis eines 128Kb EEPROM kriegst du ein 64Mb FLASH.
Schau dir z.B mal den 25P16 an, ein Altera FPGA kann von dort sein
Bitstream selbst laden, daneben Platz fuer uC code und anderes.
Mit einem Spartan 3 sollte das auch gehen.

> Eine Frage ist noch offen.
> Das System soll, wie das erste auf Lochraster aufgebaut werden.

LOL.

> Welches Board würdest du empfehlen ?

Das terasic DE2 hat einen guten ruf.
oder das hier:
http://www.altera.com/products/devkits/altera/kit-...

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Roger Steiner wrote:
> Andre Z. wrote:
>
>> Vielleicht wird es Zeit, anzumerken, dass meine Inspiration von dieser
>> Seite kommt:
>> http://www.retroleum.co.uk/electronics.html
>
> Herzig. Analog zu:
> http://home.hetnet.nl/~weeren001/
>
> Aber auch dort musstens leider diskrete MCUs sein, was das ganze etwas
> unflexibel macht.
> Ein guter Ansatz ist z.B. hier:
> Beitrag "Amiga-Minimig läuft auf DE2 Board"
Es mag sein, dass man in diesem Moment deutlich unflexibler ist.
So könnte Ich mehrere verschiedene Prozessoren in meinem Projekt 
verwenden.

Man muss doch aber auch abwägen.
Ein T80 alleine, setzt schon einen relativ großen Spartan-3 vorraus.
Relativ heißt hier, relativ zum XC3S50.

Ganz ehrlich ?
http://www.terasic.com.tw/cgi-bin/page/archive.pl?...
Als die Leistungsdaten sah, war Ich begeistert.
Als Ich den Preis sah, bin Ich fast vom Stuhl gefallen.
Man kann damit sicherlich viel machen.
Der FPGA könnte tatsächlich das gesamte System enthalten.
Aber das ist für meine Zwecke totaler Overkill.
Ist dir der kommerzielle Preis der Minimig bekannt ?
Werf mal einen Blick darauf.
http://www.vesalia.de/d_minimig.htm


>> Ebenfalls habe ich deutlich weniger Erfahrungen mit SPI, als mit I2C.
>> Deshalb werde Ich wohl "Serial Slave"-Konfiguration mit einem PIC und
>> einem I2C-EEPROM machen.
>
> Wozu? FPGAs von Heute koennen sich selbst konfigurieren.
Meinst du dann mit dem fertigen Xilinx Flash PROM ?

>> Wahrscheinlich wäre SPI doch besser.
>> Aber warum dann trotzdem kein EEPROM ?
>> In Speichergrößen von 128k ist EEPROM günstiger als Flash.
>
> Fuer den Preis eines 128Kb EEPROM kriegst du ein 64Mb FLASH.
> Schau dir z.B mal den 25P16 an...
Da muss Ich widersprechen.
Der 25P16 kostet bei Farnell 2,19 €
Das EE 93LC46 A/P bei Reichelt kostet 23(!) Cent.
Außerdem hat das EEPROM 1 Mio. garantierte Schreibzyklen.
NOR-Flash ist lange nicht soweit.

>, ein Altera FPGA kann von dort sein
> Bitstream selbst laden, daneben Platz fuer uC code und anderes.
> Mit einem Spartan 3 sollte das auch gehen.
Kann er ?
Da muss Ich mich nochmal erkundingen. Ich meine aber, dass "Master 
Serial" der Spartan3 ein ähnliches, aber anderes Protokoll verwendet.

>> Eine Frage ist noch offen.
>> Das System soll, wie das erste auf Lochraster aufgebaut werden.
>
> LOL.
Ätzt du für Prototypen direkt Platinen ?

>> Welches Board würdest du empfehlen ?
>
> Das terasic DE2 hat einen guten ruf.
> oder das hier:
> http://www.altera.com/products/devkits/altera/kit-...
Siehe oben...
Sorry. Es ist ja nicht so, dass Ich dieses Projekt für eine Firma mache, 
die mich dafür bezahlt und auch die Kosten für das Board übernimmt.
Da wäre dieses DE2 bestimmt ideal.
Aber es ist ein Hobby und einen Goldesel habe Ich hier nicht rumstehen 
;-).

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andre Z. (slamy):

Solang dein Projekt ein Hobbyprojekt bleibt und nicht kommerziell 
genutzt wird, kannst du auch dieses Spartan-III-Layout als Basis nutzen:

http://www.pcb-dev.com/index.php?option=com_conten...

Vlt nimmt es dir Arbeit ab ... Ist zumindest schon getestet und 2*512kx8 
RAM hat es auch schon drauf ...

Grüße
Thomas

Autor: Roger Steiner (edge)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andre Z. wrote:
> Ist dir der kommerzielle Preis der Minimig bekannt ?
> Werf mal einen Blick darauf.
> http://www.vesalia.de/d_minimig.htm

Es gibt Boards in dieser Preisklasse mit aktuellerem und groesserem 
FPGA,
da ist man flexibler. Das Minimig board ist lustig fuer das was es 
konzipiert ist aber das ist es auch schon.

>> Wozu? FPGAs von Heute koennen sich selbst konfigurieren.
> Meinst du dann mit dem fertigen Xilinx Flash PROM ?

Fertig?

> Der 25P16 kostet bei Farnell 2,19 €
> Das EE 93LC46 A/P bei Reichelt kostet 23(!) Cent.
> Außerdem hat das EEPROM 1 Mio. garantierte Schreibzyklen.
> NOR-Flash ist lange nicht soweit.

Hast du mal einen groessenvergleich gemacht und das hochgerechnet?

>>, ein Altera FPGA kann von dort sein
>> Bitstream selbst laden, daneben Platz fuer uC code und anderes.
>> Mit einem Spartan 3 sollte das auch gehen.
> Kann er ?
> Da muss Ich mich nochmal erkundingen. Ich meine aber, dass "Master
> Serial" der Spartan3 ein ähnliches, aber anderes Protokoll verwendet.

Kann ich zwar nicht glauben, aber wenn dem so ist, dann ist es schade 
dass dies bei Xilinx nicht geht. Aber soviel ich weiss soll ein Spartan 
3 sich von einem parallelen FLASH konfigurieren koennen, vielleicht mag 
ein Xilinx user darueber elaborieren.

>>> Eine Frage ist noch offen.
>>> Das System soll, wie das erste auf Lochraster aufgebaut werden.
>>
>> LOL.
> Ätzt du für Prototypen direkt Platinen ?

Nein, ich lass Platinen z.B. bei eurocircuits fertigen. Frueher hatte 
ich Schaltungen auch auf Lochraster aufgebaut, aber mittlerweile bin ich 
zu faul zum faedeln und BGAs sind so auch kein Problem.

Und zum schnell mal was basteln hab ich ein paar FPGA Demoboards mit 
Santa-Cruz Steckplatz, da kann man eine kleine Lochraster Platine 
ranklemmen, FPGA, Speicher etc. sind so auf dem Demoboard und muss nicht 
immer wieder aufs neue gebaut werden.

> Sorry. Es ist ja nicht so, dass Ich dieses Projekt für eine Firma mache,
> die mich dafür bezahlt und auch die Kosten für das Board übernimmt.
> Da wäre dieses DE2 bestimmt ideal.
> Aber es ist ein Hobby und einen Goldesel habe Ich hier nicht rumstehen
> ;-).

Kommt draufan worauf du deinen Fokus legst, ein DE2 zu Hobbyzwecken zu 
kaufen finde ich gar nicht abwegig, und du waehrst sicher nicht der 
Erste.

Cheers, Roger

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gast wrote:
> @Andre Z. (slamy):
>
> Solang dein Projekt ein Hobbyprojekt bleibt und nicht kommerziell
> genutzt wird, kannst du auch dieses Spartan-III-Layout als Basis nutzen:
>
> http://www.pcb-dev.com/index.php?option=com_conten...
>
> Vlt nimmt es dir Arbeit ab ... Ist zumindest schon getestet und 2*512kx8
> RAM hat es auch schon drauf ...
>
> Grüße
> Thomas
Ah. Danke^^
Inspiration kann Ich immer gebrauchen.
Nur SPI muss es nicht unbedingt sein.
Ich hatte irgendwie den Amiga Chipsatz im Hinterkopf.
"Chip RAM" für Grafik, Sound und Floppy.
Und "Fast RAM" für den Z80 alleine.
Der Zugriff auf das Chip RAM würde stets über den Spartan3 gelenkt 
werden.

Autor: Alda Sagg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da es hier im Thread mal angesprochen wurde:

>Ich habe noch paar Spartan XL

Die hab ich auch, hast auch eine Soft zum synthetisieren?

Ansonsten mein Tipp: Besorg Dir ein das kleine Spartan-3e 
AVNet-Evalboard.
Kostet so um die 40 Tacken.
Da kann man vorzüglich erstmal in die Welt der FPGAs hineinschnuppern.
Und Z80igs kann das Ding mehrere ;-)

Wenn man dann die Untiefen ausgemacht hat, kann man immer noch sein 
eigenes
Layout ins Auge fassen.

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Roger Steiner wrote:
> Andre Z. wrote:
>> Ist dir der kommerzielle Preis der Minimig bekannt ?
>> Werf mal einen Blick darauf.
>> http://www.vesalia.de/d_minimig.htm
>
> Es gibt Boards in dieser Preisklasse mit aktuellerem und groesserem
> FPGA,
> da ist man flexibler. Das Minimig board ist lustig fuer das was es
> konzipiert ist aber das ist es auch schon.
Da hast du natürlich recht.
An User I/O bleibt da nicht mehr viel übrig.

>>> Wozu? FPGAs von Heute koennen sich selbst konfigurieren.
>> Meinst du dann mit dem fertigen Xilinx Flash PROM ?
>
> Fertig?
Ich habe mich wohl falsch ausgedrückt.
Es sollte bedeuten, dass die Xilinx Flashs direkt Out-Of-The-Box 
funktionieren. Es ist keine GlueLogic oder uC nötig.

>> Der 25P16 kostet bei Farnell 2,19 €
>> Das EE 93LC46 A/P bei Reichelt kostet 23(!) Cent.
>> Außerdem hat das EEPROM 1 Mio. garantierte Schreibzyklen.
>> NOR-Flash ist lange nicht soweit.
>
> Hast du mal einen groessenvergleich gemacht und das hochgerechnet?
Natürlich nicht :-).
Aber 16 MB sind für meine Zwecke zuviel.
Ich brauche den Platz nur für die Cores und als Boot-ROM für den uP.
Dass ein EPROM mit UV-Löschvorgang etwas überholt ist, glaube Ich euch 
ja.


>>>, ein Altera FPGA kann von dort sein
>>> Bitstream selbst laden, daneben Platz fuer uC code und anderes.
>>> Mit einem Spartan 3 sollte das auch gehen.
>> Kann er ?
>> Da muss Ich mich nochmal erkundingen. Ich meine aber, dass "Master
>> Serial" der Spartan3 ein ähnliches, aber anderes Protokoll verwendet.
>
> Kann ich zwar nicht glauben, aber wenn dem so ist, dann ist es schade
> dass dies bei Xilinx nicht geht. Aber soviel ich weiss soll ein Spartan
> 3 sich von einem parallelen FLASH konfigurieren koennen, vielleicht mag
> ein Xilinx user darueber elaborieren.
Die parallele Konfiguration ist bestimmt schneller.
Aber die Geschwindkeit der seriellen Variante ist für meine Zwecke 
schnell genug...hoffe Ich...
Wenn ein FPGA ca. 1500 ms braucht, um sich zu konfigurieren, ist mir das 
noch recht.
Außerdem braucht es so deutlich weniger Pins.

>>>> Eine Frage ist noch offen.
>>>> Das System soll, wie das erste auf Lochraster aufgebaut werden.
>>>
>>> LOL.
>> Ätzt du für Prototypen direkt Platinen ?
>
> Nein, ich lass Platinen z.B. bei eurocircuits fertigen. Frueher hatte
> ich Schaltungen auch auf Lochraster aufgebaut, aber mittlerweile bin ich
> zu faul zum faedeln und BGAs sind so auch kein Problem.
Eine BGA-FPGA wäre schon toll.
Gerade wegen der Anzahl an User I/O.
Aber da kostet alleine die Platine wieder 50 €.
Das muss nicht sein.
Durch das fädeln können auch schnell Änderungen vorgenommen werden.

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ansonsten mein Tipp: Besorg Dir ein das kleine Spartan-3e
> AVNet-Evalboard.
> Kostet so um die 40 Tacken.
> Da kann man vorzüglich erstmal in die Welt der FPGAs hineinschnuppern.
> Und Z80igs kann das Ding mehrere ;-)
>
> Wenn man dann die Untiefen ausgemacht hat, kann man immer noch sein
> eigenes
> Layout ins Auge fassen.
Och. Meine Spartan ist ja schon funktionstüchtig.
Wenn Ich Platz auf dem Lochraster lasse und mich langsam an das Ergebnis 
antaste, müsste es doch auch so funktionieren.

Autor: Alda Sagg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Och. Meine Spartan ist ja schon funktionstüchtig.
> Wenn Ich Platz auf dem Lochraster lasse und mich langsam an das Ergebnis
> antaste, müsste es doch auch so funktionieren.

Dann gutes Gelingen.

Der FPGA auf dem AVNET-Board ist halt ein BGA.
Soweit ich weiss, gibts den in der Grösse nicht mehr als QFN.

Und 40 Eu sind vom Preis ja nicht so verkehrt.

Autor: Roger Steiner (edge)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andre Z. wrote:
> Roger Steiner wrote:
>
>> Fertig?
> Ich habe mich wohl falsch ausgedrückt.
> Es sollte bedeuten, dass die Xilinx Flashs direkt Out-Of-The-Box
> funktionieren. Es ist keine GlueLogic oder uC nötig.

Genau.

>>> Der 25P16 kostet bei Farnell 2,19 €
>>> Das EE 93LC46 A/P bei Reichelt kostet 23(!) Cent.
>>> Außerdem hat das EEPROM 1 Mio. garantierte Schreibzyklen.
>>> NOR-Flash ist lange nicht soweit.
>>
>> Hast du mal einen groessenvergleich gemacht und das hochgerechnet?
> Natürlich nicht :-).
> Aber 16 MB sind für meine Zwecke zuviel.

Der 25P16 ist 2MiB gross, IMHO die eine gute Groesse als Platform FLASH 
zum experimentieren.

> Die parallele Konfiguration ist bestimmt schneller.

Mag sein, aber ein Altera FPGA liest mit 20MHz bis 40MHz z.B. da geht 
die Konfiguration recht fix. Ist natuerlich abhengig von der FPGA und 
somit der Bitstream Groesse.

> Aber die Geschwindkeit der seriellen Variante ist für meine Zwecke
> schnell genug...hoffe Ich...
> Wenn ein FPGA ca. 1500 ms braucht, um sich zu konfigurieren, ist mir das
> noch recht.

Auch ein Spartan 3 wird sich selbst seriell in einem Augenzwinkern 
konfigurieren.

> Außerdem braucht es so deutlich weniger Pins.

Meine Rede, ich bin absoluter Fan von active serial configuration.

> Durch das fädeln können auch schnell Änderungen vorgenommen werden.

Tip: wenn mal alles am FPGA drann ist, dann uebernimmt das Faedeln die 
Software. Es gibt Ausnahmen aber das ist ein anderes Thema.

Cheers, Roger

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> Och. Meine Spartan ist ja schon funktionstüchtig.
>> Wenn Ich Platz auf dem Lochraster lasse und mich langsam an das Ergebnis
>> antaste, müsste es doch auch so funktionieren.
>
>Dann gutes Gelingen.
Dank dir.

Ich bedanke mich auch bei den anderen, die mich hier beraten haben.
Ich habe gerade die restlichen Bauteile bei Reichelt und Farnell 
bestellt.
Einer alleine bietet einfach nicht alles.

>> Aber die Geschwindkeit der seriellen Variante ist für meine Zwecke
>> schnell genug...hoffe Ich...
>> Wenn ein FPGA ca. 1500 ms braucht, um sich zu konfigurieren, ist mir das
>> noch recht.
>Auch ein Spartan 3 wird sich selbst seriell in einem Augenzwinkern
>konfigurieren.
Nicht über den Byteblaster. ;-)
Die parallele Schnittstelle eines "normalen" Rechners ist nicht schnell 
genug.
Die Programmierung dauert, bei einem 54k-Core, etwas weniger als 2 
Sekunden.

Da Ich eh noch ein paar PICs rumfliegen habe, werde ich erstmal "Slave 
Serial" nutzen. Sollte es wirklich so sein, dass ein Spartan-3 mit SPI 
direkt im "Master Slave" zurecht kommt, werde Ich das auf jeden Fall 
auch verwenden.

Grüße
André

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alda Sagg wrote:
> Da es hier im Thread mal angesprochen wurde:
>
>>Ich habe noch paar Spartan XL
>
> Die hab ich auch, hast auch eine Soft zum synthetisieren?
>

http://www.xilinx.com/tools/classics.htm

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Sollte es wirklich so sein, dass ein Spartan-3 mit SPI
> direkt im "Master Slave" zurecht kommt,
Spartan 3E können sich aus SPI-Flashs booten,
und die Flashs auch über JTAG programmieren.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Roger Steiner wrote:

> Auch ein Spartan 3 wird sich selbst seriell in einem Augenzwinkern
> konfigurieren.

Naja. Ein Spartan 3E 500 mit XCF04S dran benötigt etwas über eine 
Sekunde bis er los legt. Ein Virtex 4 LX40 mit dem XCF32P, aber im 
SerialModus benötigt zwischen 4 und 6 Sekunden.

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier ist ein Z80 in Verilog drin:
http://alexfreed.com/FPGApple/revisited.html
eigentlich ein Apple II mit 6502-Prozessor, aber den Z80 hat er noch 
dazugepackt, um das Diskettenlaufwerk zu simulieren.

Autor: Daddy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Andre Z.!!

Ich habe gerade diesen Thread gelesen und drucke dir die Daumen!
Ich habe mir auch ein FPGA-Board für Retrocomputers selbst gebastelt.
Es funzt einfach prima! Das Board besteht aus Spartan3 400, ATMega644 
und ATMega8.
FPGA kann von SD-Karte konfiguriert werden (ca. 3-4 sek), und von PC 
über integrierten USB Programmer.
ATMega644 kann auch über USB programmiert werden.
Es werden KEINE externe Programmer benötigt.
Und jetzt Realität:
Ich habe hier früher Fragen gestellt wie z.b.
"Kann ein FPGA auf einseitige Platine laufen???"
ALLE haben mich hier für etwas verrückt gehalten :)
Antworten wie "du brauchst mindestens 4 lagige Platine" u s.w.
haben mich damals richtig gebremst.
Es gab's noch diskussionen um Spannugsversorgung und viel mehr.
Dann habe ich eine Testschaltung mit Spartan3 gebaut auf eine 
Lochrasterplatine.
Und... es hat alles funktioniert.
Also!
Erste Projekt auf meinem Board war ZX Spectrum 128.
Floppy Laufwerk wurde im ATMega644 emuliert.
Als Z80 habe ich fertige Softcore von opencores.org "T80" verwendet.
ZX Spectrum habe ich auf meine einseitige selbstebastelte Platine
bis 70MHz gedrosselt!
Es lief ohne Probleme.
Jetzt ist die Frage:
Entweder habe ich bis jetzt "Glück gehabt" und meine FPGA Schaltungen 
liefen oder mir haben nur "Theoretiker" geantwortet :)
Für Massenproduktion oder Industrie sind einseitige Platinen mit FPGAs 
bestimmt ungeeignet aber als Hobby-Projekt klappt bestens!

Bald kommt "version 2".
Wird auf Altera EP2C20 basieren, mit AC97 Audio Codec und SDRAM.
Eventuell werde ich ATMega644 durch AT91SAM7S256 ersetzen.


MfG aus Koblenz

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich habe gerade diesen Thread gelesen und drucke dir die Daumen!
Danke^^

> Ich habe mir auch ein FPGA-Board für Retrocomputers selbst gebastelt.
> Es funzt einfach prima! Das Board besteht aus Spartan3 400, ATMega644
> und ATMega8.
Wo bestellst du deine Bauelemente?
Und welches Package benutzt du für den Spartan3?

> FPGA kann von SD-Karte konfiguriert werden (ca. 3-4 sek), und von PC
> über integrierten USB Programmer.
Ich arbeite momentan mit einem PIC16F628, der mit 20 MHz getaktet wird.
Dazu ein serielles I2C EEPROM. Ein SPI EEPROM ist bereits bestellt.
Die Programmierung einer Spartan3 50 dauert damit leider schon 2 
Sekunden :-/.
Der PIC kommt - selbst mit 20 MHz - leider nicht mal ansatzweise an die 
CCLK Grenzen des Spartan3 heran.

> Und jetzt Realität:
> Ich habe hier früher Fragen gestellt wie z.b.
> "Kann ein FPGA auf einseitige Platine laufen???"
> ALLE haben mich hier für etwas verrückt gehalten :)
Ich kenne das Gefühl.

> Antworten wie "du brauchst mindestens 4 lagige Platine" u s.w.
> haben mich damals richtig gebremst.
Ich höre gar nicht mehr hin.
Fädeldraht ist für Prototypen und regelmäßige Änderung immer noch ideal.

> Also!
> Erste Projekt auf meinem Board war ZX Spectrum 128.
> Floppy Laufwerk wurde im ATMega644 emuliert.
> Als Z80 habe ich fertige Softcore von opencores.org "T80" verwendet.
Ich habe mir das Ding einmal angesehen.
Merkwürdigerweise hatte der T80 jedoch keinen Bidirektionalen Datenbus, 
was doch etwas verwirrte.

> Bald kommt "version 2".
> Wird auf Altera EP2C20 basieren, mit AC97 Audio Codec und SDRAM.
> Eventuell werde ich ATMega644 durch AT91SAM7S256 ersetzen.
Hui^^.
Mein Anspruch ist erstmal nicht so hoch.
Ziel ist erstmal ein funktionierender Grafikchip, der in etwa die Power 
von Denise (Amiga 500) hat. Und dazu ein Soundchip mit ähnlichen 
Leistungen. Dann noch die Trennung zwischen Grafik/Sound-RAM und 
CPU-RAM.
Ich möchte keineswegs kopieren. Das ist alles nur Inspiration ;-) hehe.

Ich habe momentan nur eine Spartan3 50 und wollte mir wahrscheinlich, 
wegen der Pinanzahl, noch einen 2. kaufen.
Wenn der T80 jedoch so gut funktioniert, wäre es vielleicht doch besser 
und platzsparender einen großen Spartan zu kaufen und dann einen 
synthetischen Z80 zu verwenden... :-/

Aber der Preis bei Reichelt für einen Spartan3 400 beträgt bei Reichelt 
immerhin 23 €. Das ist doch etwas viel.

Grüße aus Bergkamen
André

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du dir mal den Spartan3-AN angeschaut?

Der hat Flash-Speicher on board. Da brauchst Du Dir wenigstens keine 
Gedanken zu machen, wie Du Deine Applikation dauerhaft speichern kannst.
Z.B. der 3S200 hat ca. 400kb die du intern per SPI-Bus auslesen kannst 
und mit Deinen eigenen Daten füllen kannst.

Ein reines FPGA-Board mit z.B. parallelem Flash muss ja erst mal zum 
Leben erweckt werden. Der Flashbaustein muss programmiert sein, damit 
das FPGA booten kann, meistens benötigt man das FPGA aber erst um den 
Flash zu programmieren :) klassisches Henne-Ei Problem.
Du könntest entweder einen Bootloader FPGA Programm schreiben und das 
per JTAG runterschieben, im FPGA z.B. eine CPU nur zum Flashen 
implementieren und dann seriell oder wie auch immer dein Applikation ins 
Flash programmieren.

Gruß
Michael

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael schrieb:
> Hast Du dir mal den Spartan3-AN angeschaut?
>
> Der hat Flash-Speicher on board. Da brauchst Du Dir wenigstens keine
> Gedanken zu machen, wie Du Deine Applikation dauerhaft speichern kannst.
> Z.B. der 3S200 hat ca. 400kb die du intern per SPI-Bus auslesen kannst
> und mit Deinen eigenen Daten füllen kannst.
Ich habe mich nur kurz informiert.
Jedoch führt nicht jedes Geschäft AN Varianten.
Und sie sind auch generell teurer als "SPI->PIC->FPGA"-Varianten, auch 
wenn es vielleicht schneller und einfacher wäre.

> Ein reines FPGA-Board mit z.B. parallelem Flash muss ja erst mal zum
> Leben erweckt werden. Der Flashbaustein muss programmiert sein, damit
> das FPGA booten kann, meistens benötigt man das FPGA aber erst um den
> Flash zu programmieren :) klassisches Henne-Ei Problem.
> Du könntest entweder einen Bootloader FPGA Programm schreiben und das
> per JTAG runterschieben, im FPGA z.B. eine CPU nur zum Flashen
> implementieren und dann seriell oder wie auch immer dein Applikation ins
> Flash programmieren.
Och. Der Aufwand ist jetzt nicht so groß.
Ich löse es momentan so, dass der PIC im Reset-Modus verbleibt.
Dabei liegen seine Pins alle auf Hochohmig.
Dann kann ich über die parallele Schnittstelle und entsprechendem 
Software-I2C auf den EEPROM zugreifen.

Grüße
André

Autor: Daddy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wo bestellst du deine Bauelemente?
>Und welches Package benutzt du für den Spartan3?
Spartan3 und 10ns SRAM habe ich bei schukat.com bestellt.
Ich verwende TQ144 Gehäuse

>Ich arbeite momentan mit einem PIC16F628, der mit 20 MHz getaktet wird.
>Dazu ein serielles I2C EEPROM. Ein SPI EEPROM ist bereits bestellt.
>Die Programmierung einer Spartan3 50 dauert damit leider schon 2
>Sekunden :-/.
>Der PIC kommt - selbst mit 20 MHz - leider nicht mal ansatzweise an die
>CCLK Grenzen des Spartan3 heran.
ATmega644 läuft mit 8MHz (intern. Taktgenerator)
Bitstream wird mittels FAT Lib. von ELM von SD-Karte ausgelesen und
über Slave Serial ins Spartan geschoben. Bitstream eines XC3S400tq144
ist ca. 230Kb gross.

>Ich habe mir das Ding einmal angesehen.
>Merkwürdigerweise hatte der T80 jedoch keinen Bidirektionalen Datenbus,
>was doch etwas verwirrte.
Es gibt mehrere TOP-designs eines T80's.
T80a - Asynchron, also eine "kopie" echten Z80, mit asynchronen Datenbus
T80s - Wie T80a, aber Synchron. Databus Input und Databus Output 
getrennt
T80se - Wie T80s, aber mit Clock Enable.

>Hui^^.
>Mein Anspruch ist erstmal nicht so hoch.
>Ziel ist erstmal ein funktionierender Grafikchip, der in etwa die Power
>von Denise (Amiga 500) hat. Und dazu ein Soundchip mit ähnlichen
>Leistungen. Dann noch die Trennung zwischen Grafik/Sound-RAM und
>CPU-RAM.
>Ich möchte keineswegs kopieren. Das ist alles nur Inspiration ;-) hehe.
:) :)
Ich träume das "Nintendo Entertainment System" auf Meinem Boadr läuft!
Kriege leider die Sprites nicht gichtig zum laufen :(

XC3S400 ist schon relativ groß, und es passt bestimmt
was schönes rein :) Mein Design (ZX Spectrum 128 +
AY-8910 Softcore + T80 Softcore) belegt nur 54%.

Autor: Andre Z. (slamy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Wo bestellst du deine Bauelemente?
> Spartan3 und 10ns SRAM habe ich bei schukat.com bestellt.
Hmmm.. Aber anscheinend beliefert Schukat keine Privatkunden.

>>Ich arbeite momentan mit einem PIC16F628, der mit 20 MHz getaktet wird.
>>Dazu ein serielles I2C EEPROM. Ein SPI EEPROM ist bereits bestellt.
>>Die Programmierung einer Spartan3 50 dauert damit leider schon 2
>>Sekunden :-/.
>>Der PIC kommt - selbst mit 20 MHz - leider nicht mal ansatzweise an die
>>CCLK Grenzen des Spartan3 heran.
> ATmega644 läuft mit 8MHz (intern. Taktgenerator)
> Bitstream wird mittels FAT Lib. von ELM von SD-Karte ausgelesen und
> über Slave Serial ins Spartan geschoben. Bitstream eines XC3S400tq144
> ist ca. 230Kb gross.
Wie lange dauert die Konfiguration ?


> :) :)
> Ich träume das "Nintendo Entertainment System" auf Meinem Boadr läuft!
> Kriege leider die Sprites nicht gichtig zum laufen :(
Coole Idee. Viel Erfolg dabei ;-).

Autor: Daddy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wie lange dauert die Konfiguration ?

Wie ich schon geschrieben habe, 3-4 sek.

Autor: Daddy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz vergessen, hier sind die Fotos!

http://zx.pk.ru/showpost.php?p=161149&postcount=1

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.