Forum: Markt Tester gesucht für FPGA-Projekt


von Josef G. (bome) Benutzerseite


Lesenswert?

Es geht um das hier beschriebene Projekt:
http://www.mikrocontroller.net/articles/8bit-Rechner

Gesucht werden registrierte Forum-Teilnehmer,
welche eines der folgenden FPGA-Boards besitzen:

Spartan-3A Starter Kit (Revision-D Board),
Spartan-3E Starter Board, Nexys2 Board,
Altera DE1 Board.

Wer ist bereit, die von mir erstellte Konfiguration
zu testen und in folgendem Thread darüber zu berichten:
Beitrag "8bit-Computing mit FPGA"

Die ersten fünf Leute erhalten von mir je 100 Euro.

Voraussetzungen:
Die Konfiguration wird erfolgreich zum Laufen gebracht.
Es wird das auf meiner Website auf der Seite Emul mit 1.DEMO
bezeichnete Kommando ausgeführt, der dann geladene Programmtext
compiliert, das Programm zum Laufen gebracht und mindestens eine
Rechnung durchgeführt. Dies wird durch ein Foto dokumentiert, auf
welchem mindestens ein ausreichender Teil des Monitors und das
FPGA-Board zu sehen sind. Der Forums-Beitrag muss auf mindestens
10 Zeilen von angemessener Länge über die Erfahrungen berichten.

Für meine Zahlung ist es erforderlich, dass mir in einer über das
Forum versandten Email ("PN") die Bankverbindung mitgeteilt wird.

von Stephan S. (Gast)


Lesenswert?

Josef G. schrieb:
> mir in einer über das
> Forum versandten Email ("PN") die Bankverbindung mitgeteilt wird.

hahaha

von Guido C. (guidoanalog)


Lesenswert?

Hallo,

Stephan S. schrieb:
> hahaha

naja, zur Not wird Dir Josef das Geld sicher auch als versichertes Paket 
zusenden. In diesem Fall wird der Betrag aber um die Versandkosten 
verringert.

Mit freundlichen Grüßen
Guido

von Martin B. (martin_b35)


Lesenswert?

Challenge accepted.
 - Digilent Nexys 2 - 500k
 - Paypal oder Schein als Einschreiben
 - Auszuführende Binaries werden HIER lokal kompiliert

von Josef G. (bome) Benutzerseite


Lesenswert?

Martin B. schrieb:

>  - Paypal oder Schein als Einschreiben

Damit bin ich nicht einverstanden. Die Zahlungsweise
Überweisung ist essentieller Bestandteil meines Angebots.

>  - Auszuführende Binaries werden HIER lokal kompiliert

Verstehe ich nicht, was ist damit gemeint?

von Richard (Gast)


Lesenswert?

Ich würde ja mitmachen, habe aber nur das folgende Board zur Verfügung:

http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,792&Prod=S3EBOARD

Viele Grüße
Richard

von Josef G. (bome) Benutzerseite


Lesenswert?

Richard schrieb:
> Ich würde ja mitmachen, habe aber nur das folgende Board zur Verfügung:
> http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,792&Prod=S3EBOARD

Das ist doch genau das benötigte Spartan-3E Starter Board ??

Bitte beim Posten des Erfahrungsberichts und des Fotos angemeldet
sein, sonst kann ich zum Bezahlen die Identität nicht prüfen.

von Richard (Gast)


Lesenswert?

Josef G. schrieb:
> Das ist doch genau das benötigte Spartan-3E Starter Board ??
Du hast aber Nexys2 geschrieben.

Das wäre ja das hier:
http://www.digilentinc.com/Products/Detail.cfm?Prod=NEXYS2

Viele Grüße
Richard

von Richard (Gast)


Lesenswert?

Welche Dateien muss ich den jetzt von 
http://www.bomerenzprojekt.de/Website/Downloads.html runterladen?

Viele Grüße
Richard

von Josef G. (bome) Benutzerseite


Lesenswert?

Richard schrieb:
> Du hast aber Nexys2 geschrieben.

Josef G. schrieb:
> Spartan-3A Starter Kit (Revision-D Board),
> Spartan-3E Starter Board, Nexys2 Board,
> Altera DE1 Board.

Es sind insgesamt 4 verschiedene Boards, ich habe nur das
S3E-Starter und das Nexys2 in dieselbe Zeile geschrieben.

von Richard (Gast)


Lesenswert?

Josef G. schrieb:
> Es sind insgesamt 4 verschiedene Boards, ich habe nur das
> S3E-Starter und das Nexys2 in dieselbe Zeile geschrieben.
Ja, jetzt hab ich das auch gesehen...

Viele Grüße
Richard

von Josef G. (bome) Benutzerseite


Lesenswert?

Richard schrieb:
> Welche Dateien muss ich den jetzt von ... runterladen?

Steht auf der Seite Hawa, ziemlich weit unten:
Zur Konfiguration für das S3E-Board gehören ...

von Mio (Gast)


Lesenswert?

@Josef: Wolltest Du mit den Interessenten nicht Geld verdienen statt 
jetzt welches auszugeben?

von Josef G. (bome) Benutzerseite


Lesenswert?


von Davis (Gast)


Lesenswert?

Bin jetzt einfach einmal neugierig, Josef: Was ist der Sinn deiner 
Aktion? Warum 100 Euro für etwas, was der ein oder andere auch so machen 
würde?

von Josef G. (bome) Benutzerseite


Lesenswert?

Davis schrieb:
> was der ein oder andere auch so machen würde?

Dass jemand es machen würde hilft mir nichts.
Es geht darum, dass jemand es tatsächlich macht.

von Richard (Gast)


Lesenswert?

Josef G. schrieb:
> Es geht darum, dass jemand es tatsächlich macht.
Wobei Du es mir nicht wirklich leicht machst.

Auf einer Downloadseite erwarte ich ein fertiges .zip-File mit allen 
benötigten Dateien (vhd + ucf + ...) damit ich mir ein Projekt damit 
aufsetzen kann. So ein Sammelsurium, wo auch noch woanders steht, was 
benötigt wird ist nicht sehr benutzerfreundlich.

Viele Grüße
Richard

von Richard (Gast)


Lesenswert?

Soooooo. Die Synthese ist erstmal komplett durchgelaufen, ich komme aber 
erst morgen dazu, das Bitfile auszuprobieren.

Das ist mir an wichtigen Warnungen aufgefallen:
1
flhs3e.syr:WARNING:Xst:737 - Found 1-bit latch for signal <runvdo>. Latches may be generated from incomplete case or if statements. We do not recommend the use of latches in FPGA/CPLD designs, as they may lead to timing problems.
2
flhs3e.syr:WARNING:Xst:737 - Found 1-bit latch for signal <wart>. Latches may be generated from incomplete case or if statements. We do not recommend the use of latches in FPGA/CPLD designs, as they may lead to timing problems.
3
flhs3e.syr:WARNING:Xst:737 - Found 1-bit latch for signal <init>. Latches may be generated from incomplete case or if statements. We do not recommend the use of latches in FPGA/CPLD designs, as they may lead to timing problems.
4
5
flhs3e.syr:WARNING:Xst:2042 - Unit cpu: 24 internal tristates are replaced by logic (pull-up yes): adrbus<0>, adrbus<10>, adrbus<11>, adrbus<12>, adrbus<13>, adrbus<14>, adrbus<15>, adrbus<1>, adrbus<2>, adrbus<3>, adrbus<4>, adrbus<5>, adrbus<6>, adrbus<7>, adrbus<8>, adrbus<9>, datbus<0>, datbus<1>, datbus<2>, datbus<3>, datbus<4>, datbus<5>, datbus<6>, datbus<7>.

Viele Grüße
Richard

von Josef G. (bome) Benutzerseite


Lesenswert?

Richard schrieb:
> ich komme aber erst morgen dazu, das Bitfile auszuprobieren.

Vergiss nicht, dich anzumelden, wenn du Bericht & Foto postest.

Josef G. schrieb:
> Bitte beim Posten des Erfahrungsberichts und des Fotos angemeldet
> sein, sonst kann ich zum Bezahlen die Identität nicht prüfen.

von Fpgakuechle K. (Gast)


Lesenswert?

Josef G. schrieb:
> Es geht um das hier beschriebene Projekt:
> http://www.mikrocontroller.net/articles/8bit-Rechner
>
> Gesucht werden registrierte Forum-Teilnehmer,
> welche eines der folgenden FPGA-Boards besitzen:
>
> Spartan-3A Starter Kit (Revision-D Board),
> Spartan-3E Starter Board, Nexys2 Board,
> Altera DE1 Board.

Von "meinen" Boards hier brauche ich in den nächsten Wochen das Xilinx 
Spartan-3AN Starterkit nicht, das könnte ich dir leihweise überlassen.
Das board befindet sich derzeit bei München, bei Interesse Mail.

MfG,

von Josef G. (bome) Benutzerseite


Lesenswert?

Fpga Kuechle schrieb:
> das könnte ich dir leihweise überlassen.
Sorry, ich suche nicht ein Board, sondern Leute,
welche die Konfiguration auf ihrem Board testen.

von Josef G. (bome) Benutzerseite


Lesenswert?

Richard schrieb:
> Das ist mir an wichtigen Warnungen aufgefallen:
Die Latches sind absichtlich eingebaut.

Josef G. schrieb:
> Die ersten fünf Leute erhalten von mir je 100 Euro.
Mein Angebot gilt noch.

von Moritz S. (Gast)


Lesenswert?

Josef G. schrieb:
> Mein Angebot gilt noch.

kan ich mit meinen selbstgebastelten z80 platine auch teilnehmen?

von Dirk (Gast)


Lesenswert?

Nein, aber mit einem selbstgebackenen Kuchen.

von Moritz Scheller (Gast)


Lesenswert?

na weil ich dachte meinr auch 8bitts hat und man das mit seiner cpu 
villeicht kuppeln kann

von Josef G. (bome) Benutzerseite


Lesenswert?

Ich erhöhe meine Angebot von 100 Euro auf 150 Euro.

von Gustl B. (-gb-)


Lesenswert?

Ja, also die Informationen sind halt echt spärlich gesäht.

Wo finde ich dieses ominöse 1.Demo? Wie bekomme ich das auf das Board? 
Muss ich dazu irgendwas compilen? Welche Baudrate?

Ich hab das hier schön laufen auf einem XC3S1200E und kann auch Befehle 
eintippen wie 1.SI und dann das coka.txt über RS232 an das Board 
schicken - aber das macht nichts.
Ich sehe auf dem Monitor immer nur die eingegebenen Befehle und ein paar 
zusätzliche Zahlen.

von Josef G. (bome) Benutzerseite


Lesenswert?

Gustl Buheitel schrieb:
> Ich hab das hier schön laufen auf einem XC3S1200E
Auf einem Nexys2 1200 vermutlich?

Das vorgehen ist beschrieben im Thread im Forum Codesammlung:
Beitrag "Re: 8bit-Computing mit FPGA"
Etwas weiter unten stehen auch Erläuterungen zur Tastaturbelegung.

Wenn du sogar die serielle Schnittstelle in Betrieb genommen
hast, hast du schon viel mehr gemacht als erforderlich. Das
Demo-Programm ist bereits in der bei der Konfiguration
aufgespielten Software enthalten.

Wäre großartig, wenn du im Forum Codesammlung
über deine Erfahrungen berichten würdest.

von Gustl B. (-gb-)


Lesenswert?

Das mit dem -E kann ich nicht machen, weil meine Tastatur keine Power 
Taste hat. Ist halt ne stink normale Cherry PS2. Oder auf welcher Taste 
müsste Power liegen?

Das mit RS232 scheint nicht zu klappen ... aber ich kenne ja nichtmal 
die Baudrate. Wenn ich ein 1_socard versuche, dass "arbeitet" das FPGA 
Board schon irgendwie, also die Displays ändern sehr schnell ihren Wert, 
aber am PC kommt nichts an, egal bei welcher Baudrate.

von Josef G. (bome) Benutzerseite


Lesenswert?

Gustl Buheitel schrieb:
> weil meine Tastatur keine Power Taste hat.

Rechts neben dem Haupt-Tastenfeld ist das Feld, wo unten die
Cursortasten sind. Über diesem Feld sind ganz oben 3 Tasten, eine
davon die Power-Taste. Die müsste eigentlich jede PS2-Tastatur haben.

Zur Verwendung der RS232-Schnittstelle habe ich für Linux-PC
Programme erstellt, wie auf der Seite Hawa meiner Website
beschrieben. Die Baudrate ist aus dem Quelltext dieser
Programme abzulesen und beträgt 19200 Baud.

Aber beschäftige dich doch zunächst nicht mit der RS232-Schnittstelle,
erst muss es mit der Tastatur-Bedienung klappen.

Versuch als erstes vielleicht, das Kommando =WARE einzugeben.
Es müsste die Steckplatz-Belegung angezeigt werden.

von Gustl B. (-gb-)


Lesenswert?

Also die Taste hat nicht jede PS2 Tastatur, ich hab aber mehrere USB 
Tastaturen und eine davon funktioniert jetzt mit einem Adapter. =WARE 
geht auch und zeigt auf 1 die Testkarte an.

Hier mal was ich eingegeben habe mit der Ausgabe:

1_DEMO (der _ ist rechts shift)
=NEW =PGM +1111
=NEW =EDI +1111
=IN_C +PGM
=IN_D +EDI
=MPRO
=ENDM
*QER 00 ELSE
-PGM
*QER 00 COMM

Wenn ich Power drücke sehe ich den Quelltext und kann schreiben.

von Josef G. (bome) Benutzerseite


Lesenswert?

Gustl Buheitel schrieb:
> =MPRO
> =ENDM
> *QER 00 ELSE

Vermutlich hast du auf der Seite E die Blockmarken nicht wie
angegeben gesetzt. Dann findet =MPRO den Text nicht und
=ENDM führt zu einem Fehler.

von Josef G. (bome) Benutzerseite


Lesenswert?

Zum Setzen der Blockmarken siehe
Beitrag "Re: 8bit-Computing mit FPGA"

von Gustl B. (-gb-)


Lesenswert?

Also der Fehler nach MPRO kommt nichtmehr, der nach ENDM schon.

Du schreibst hier Beitrag "Re: 8bit-Computing mit FPGA"
1
=NEW =PGM +1111
2
=NEW =EDI +1111
3
=IN.C +PGM       (Punkt: Siehe oben)
4
=IN.D +EDI       (Punkt: Siehe oben)
5
=MPRO
6
=ENDM
7
-PGM

und hier http://www.bomerenzprojekt.de/Website/Emul.html
1
Geben Sie folgende Kommandos ein:  =NEW =PG1 +1111  //
2
=NEW =ED1 +1111  //  =IN.C +PG1  //  =IN.D +ED1  //  =MPRO .
3
(Zur Eingabe der Ziffer 1 die Tastenfolge 6 1 drücken.)
4
Positionieren Sie in Seite E den Cursor 2 Zeilen weiter unten.
5
Geben Sie =ENDM ein. In Seite E können Sie das Listing ansehen.
6
Starten Sie das Programm mit -PG1 und geben Sie die erfragten
7
Werte ein.

Und dann noch diese seltsame Aussage:
"(Zur Eingabe der Ziffer 1 die Tastenfolge 6 1 drücken.)"

Das funktionier bei mir nicht, da erscheint sofort die 6 weshalb ich 
gleich die 1 mit der Taste 1 eingebe.

Also einmal ist es PGM, einmal PG1, einmal EDI, einmal ED1 ?!

Ich habe jetzt die Blockmarken so gesetzt, dass die erste gestrichelte 
Linie über der ersten Zeile "*PGM ARITH" liegt und die zweite 
gestrichelte Linie ist unter der letzten Zeile "*RETN". Der Coursor 
blinkt dahinter.

von Josef G. (bome) Benutzerseite


Lesenswert?

Gustl Buheitel schrieb:
> und hier http://www.bomerenzprojekt.de/Website/Emul.html

Da wird die Bedienung des Emulationsprogramms beschrieben,
welches auf einem Linux-PC läuft. Dort muss man mit der PC-Tastatur
und dem Zeichensatz des PCs auskommen. Aber du hast ja das reale
System auf einem FPGA-Board, und eine völlig andere Tastatur-"Hardware".

Wg. PGM/PG1: Da habe ich tatsächlich ungeschickterweise
verschiedene Namen verwendet.

PS: PGM,EDI bzw. PG1,ED1 sind frei wählbare Variablen-Namen.

von Gustl B. (-gb-)


Angehängte Dateien:

Lesenswert?

So, das Board, das Nexys2 zeigt nachdem ich die CPU gestartet habe beim 
ersten Mal E440 auf den Displays an. Wenn ich dann die CPU resette und 
wieder starte, dann steht da 6440. Also nur das erste mal mit einem E 
statt der 6.

Dann gebe ich 1_Demo ein und setze die Blockmarken. Dann setze ich den 
Coursor 2 Zeilen unter die letzte Textzeile und wechsele wieder zurück.
Da gebe ich dann ein was auf dem Foto ist.

von Josef G. (bome) Benutzerseite


Lesenswert?

Beim zweiten Bild fällt mir auf, dass die Blockende-Marke unmittelbar
unter dem Quelltext steht. Sie muss weiter unten stehen, am besten
in Zeile ff, weil =ENDM ein Kurzlisting ausgeben will und dafür
Platz braucht.

PS: Vergiss nicht vor Rückkehr in die Seite C
den Cursor an den Textanfang zu setzen.

von Josef G. (bome) Benutzerseite


Lesenswert?

Josef G. schrieb:
> PS: Vergiss nicht vor Rückkehr in die Seite C
> den Cursor an den Textanfang zu setzen.
Jetzt geht alles etwas durcheinander, deshalb nochmal:
Vor =MPRO den Cursor an den Textanfang setzen,
Vor =ENDM den Cursor unter den Quelltext setzen.

von Josef G. (bome) Benutzerseite


Lesenswert?

Ich bin jetzt einige Zeit nicht am Rechner, deshalb vorsorglich dies:
Falls du es schaffst, das Programm zu starten, bitte berücksichtigen:
Der erste Operand OPA ist signed. Vorzeichen stets angeben.
Der zweite Operand ist unsigned.

von Gustl B. (-gb-)


Angehängte Dateien:

Lesenswert?

Juhu, es läuft! Ich habe leider überhaupt keinen Plan von CPUs, aber ich 
teste gerne weiter.

von Josef G. (bome) Benutzerseite


Lesenswert?

Gustl Buheitel schrieb:
> Juhu, es läuft!
Wow!

Bei MUL und DIV bitte beachten:
Multiplikator bzw. Divisor ist OPB+1.

von Gustl B. (-gb-)


Angehängte Dateien:

Lesenswert?

Also ADD, SUB und MUL geht, aber DIV kann ich nicht nachvollziehen.

von Josef G. (bome) Benutzerseite


Lesenswert?

Gustl Buheitel schrieb:
> aber DIV kann ich nicht nachvollziehen.

8192/(127+1) = 70 Rest 12 (Alle Zahlen sind hex).

Gerade nachgerechnet mit Taschenrechner:
70*128+12 = 8192

von Josef G. (bome) Benutzerseite


Lesenswert?

Übrigens: Multiplikation und Division werden per Software
realisiert. Die CPU kann weder dividieren noch multiplizieren.

Bin jetzt längere Zeit nicht am Rechner.

von Gustl B. (-gb-)


Lesenswert?

Ah ok, stimmt. Danke!

von Andreas S. (igel1)


Lesenswert?

Wird noch ein weiterer Tester für das "Spartan-3E Starter Board" 
benötigt?
Ich hätte evtl. Lust und habe erst neulich solch ein Board erstanden.

Allerdings stehe ich noch gaaaanz am Anfang meiner FPGA-Karriere und 
habe noch niemals vorher etwas mit FPGA's gemacht. Auch habe ich bislang 
noch nichts auf mein Board geflashed und somit Null FPGA-Vorwissen.

Ich weiß daher nicht, ob ich zur Tester-Zielgruppe passe. Auch würde 
mich interessieren, wieviel Zeit ich etwa dafür veranschlagen sollte 
(denn an der lieben Zeit hapert's ab und an etwas bei mir).

Außerhalb von FPGA's habe ich allerdings schon ein wenig Ahnung von 
CPU's, deren Architekturen, MC's, Logik-Zeugs, Simulatoren, Software & 
Co.

Viele Grüße

Igel1

von Josef G. (bome) Benutzerseite


Lesenswert?

Andreas S. schrieb:
> Wird noch ein weiterer Tester ... benötigt?
Es wären noch Tester willkommen.

> Auch habe ich bislang noch nichts auf mein Board geflashed
Es reicht fürs erste, die Konfiguration flüchtig auf das FPGA-
interne Konfigurations-RAM zu übertragen.
(Jumper für Konfiguration in Stellung JTAG)


> wieviel Zeit ich etwa dafür veranschlagen sollte
Hast du ISE schon zum Laufen gebracht, ist die Lizensierung geklärt?
Je nach Betriebssystem Windows/Linux kann es erforderlich sein, zur
Übertragung der Konfiguration über USB mittels Impact einen Treiber
zu installieren. Ist das geklärt?

Du müsstest die Seite Hawa meiner Website kurz überfliegen und den
Abschnitt "Zur Konfiguration für das Spartan-3E Starter Board gehören"
lesen. Es wären 5 Dateien herunterzuladen, zu dekomprimieren und die
Namen-Suffixe anzupassen. In ISE neues Projekt anlegen, mit "Copy to
project" die fünf Dateien einbinden, Einstellungen vornehmen,
Synthese, Place&Route, Generate Progamming File laufen lassen,
Konfiguration übertragen.

von Josef G. (bome) Benutzerseite


Lesenswert?

Gustl Buheitel schrieb:
> beim ersten Mal E440 auf den Displays an. Wenn ich dann
> die CPU resette und wieder starte, dann steht da 6440.

Das Display zeigt die untersten 4 Stellen der Programmlaufzeit an.
Beim Power-Up-Reset wird der Textspeicher gelöscht. Dies entfällt
beim Tasten-Reset. Deshalb sind die Zeiten unterschiedlich.

von Josef G. (bome) Benutzerseite


Lesenswert?

Es haben mich E-Mails zum Altera DE1 Board erreicht.
Besitzer des DE1 Boards sollten sich dies ansehen:
Beitrag "Re: 8bit-Computing mit FPGA"

von Josef G. (bome) Benutzerseite


Lesenswert?

Josef G. schrieb:
> Wer ist bereit, die von mir erstellte Konfiguration
> zu testen und in folgendem Thread darüber zu berichten:
> Beitrag "8bit-Computing mit FPGA"
> Die ersten fünf Leute erhalten von mir je 100 Euro.
Josef G. schrieb:
> Ich erhöhe meine Angebot von 100 Euro auf 150 Euro.

Ich erhöhe mein Angebot auf 200 Euro unter der Voraussetzung, dass
zusätzlich zu den bereits genannten Voraussetzungen das compilierte
Demonstrations-Programm auf SD-Karte gespeichert, nach Löschen des
RAM per Reset wieder von der Karte geladen und erneut gestartet
wird. Das ganze ist durch Fotos zu dokumentieren.

Dazu braucht man eine SD-Karte mit 1 oder 2 GByte (keine SDHC-Karte).
Das vorinstallierte Dateisystem wird zerstört. Ausserdem muss man
Software per RS232 vom PC auf das Board übertragen. Das PC-seitig
dazu erforderliche Programm existiert bisher nur für Linux.

Das Angebot wird vor allem für Besitzer des Altera DE1 Boards
interessant sein. Bei den anderen Boards braucht man einen
Pmod-SD-Kartenhalter von Digilent. Dieser ist erhältlich
zB. bei trenz für derzeit ca. 24 Euro + MwSt.

von Pelzig (Gast)


Lesenswert?

Nun übernimm Dich mal nicht...

von Tim  . (cpldcpu)


Lesenswert?

Josef G. schrieb:
> Ich erhöhe mein Angebot auf 200 Euro unter der Voraussetzung, dass
> zusätzlich zu den bereits genannten Voraussetzungen das compilierte
> Demonstrations-Programm auf SD-Karte gespeichert, nach Löschen des
> RAM per Reset wieder von der Karte geladen und erneut gestartet
> wird. Das ganze ist durch Fotos zu dokumentieren.

Ist dieser Vorgang wirklich so kompliziert, dass er mit 50 EUR 
abzurechnen ist?

von TimB (Gast)


Lesenswert?

Nö das nicht aber der Josef braucht nach endlosen Versuchen und 
gefühlten 100 Threads endlich mal vorzeigbare Interessenten :-)

von TimB (Gast)


Lesenswert?

Der landet mit seiner CPU noch in der Klappsmühle- da ist dann 
wenigstens die Wahrscheinlichkeit höher das sich dafür jemand 
interessiert :-)

von Josef G. (bome) Benutzerseite


Lesenswert?

Beitrag "Re: Tester gesucht für FPGA-Projekt"

Das ursprüngliche Angebot, welches nur das Compilieren und Starten
des Demonstrations-Programms erfordert, wird hiermit beendet.

Sollte jemand bereits Arbeit investiert haben und kurz vor
Abgabe des Erfahrungsberichts gestanden haben, möge
er sich per PN mit mir in Verbindung setzen.

Das modifizierte Angebot, welches zusätzlich den Betrieb
der SD-Karte erfordert, wird wie folgt geändert:

Die maximale Zahl der Teilnehmer wird von fünf auf drei reduziert.
Der von mir gezahlte Betrag wird von 200 Euro auf 300 Euro erhöht.

von Martin B. (martin_b35)


Lesenswert?

Als frischgebackener Elektrotechnikstudent habe ich vor Semesterbeginn 
noch viel Zeit, wenig Geld und das Technische Interesse ist auch da.

Aktuell wächst daher auf meinem Schreibtisch ein Testaufbau der dem 
Chaos-Thread würdig ist, ein SD-Leser bleibt zu improvisieren...

Grüße, Martin

von Andreas S. (igel1)


Lesenswert?

Hmmm - jetzt bin ich schon ein wenig enttäuscht, denn ich habe mit viel 
Aufwand mein Spartan 3E Board endlich ans Fliegen gebracht.

Nun war gerade dabei, mich tapfer so weit hin die Materie einzuarbeiten, 
daß ich wenigstens verstehe, was ich da für Josef machen soll und jetzt 
wird die Aktion abgeblasen - schade, schade ...

Viele Grüße

Igel1

von Julian W. (julian-w) Benutzerseite


Lesenswert?

Andreas S. schrieb:
> Nun war gerade dabei, mich tapfer so weit hin die Materie einzuarbeiten,
> daß ich wenigstens verstehe, was ich da für Josef machen soll und jetzt
> wird die Aktion abgeblasen - schade, schade ...

Wieso die Aktion besteht doch noch? Nur jetzt ist halt die SD-Card 
Pflicht.
Kannst ihm doch sicherlich mal ne PN schicken wenn du jetzt schon so 
lange und hart daran gearbeitet hast ob es notfalls auch ohne SD-Card 
geht ;)

Und Respekt das du dir diese Doku antust ich hab es auch mal versucht 
aber da ist meine System-Architektur Vorlesung 100x verständlicher...

@Josef:
Eine bessere Doku wäre sehr wünschenswert! Investiere lieber darein 
anstatt das Geld an Tester zu verschwenden die solange drauf rum hauen 
bis es klappt (@igel1: dich ausgenommen ;) )

von Josef G. (bome) Benutzerseite


Lesenswert?

Martin B. schrieb:
> ein SD-Leser bleibt zu improvisieren...

Nexys2 Board, Pmod-Anschluss C obere Buchsenreihe:

Pin 1: SELECT
Pin 2: MOSI
Pin 3: MISO
Pin 4: CLK
Pin 5: GND
Pin 6: VCC = 3.3V (Jumper!)

An Pin 3 ist Pullup-Widerstand erforderlich,
anlöten oder in der UCF-Datei Zeile jc03 ergänzen:
NET "jc03" LOC = "G13" | PULLUP;

Habe das selber nicht ausprobiert und weiss nicht ob es funktioniert.
Kann sein, dass wegen des Schutzwiderstands in der Signalleitung die
Methode mit FPGA-internem Pullup nicht funktioniert.

Für einen ersten schnellen Test das Kommando  1.SDR /00  eingeben.
Das Kommando initialisiert die SD-Karte und lädt 32 KByte von der
Karte. Wenn kein Hänger oder Error-Meldung auftritt ist alles ok.

von Josef G. (bome) Benutzerseite


Lesenswert?

Andreas S. schrieb:
> habe mit viel Aufwand mein Spartan 3E Board endlich ans Fliegen gebracht.
Aber doch hoffentlich nicht nur wegen meinem Projekt?

Andreas S. schrieb:
> schade, schade ...
Na gut, dann soll das Angebot 150 Euro für Compilieren und Starten
des Demo-Programms, ohne SD-Karte, in deinem Fall vorerst noch
weiter gelten.

von Martin B. (martin_b35)


Lesenswert?

Sodele. Test anscheinend erfolgreich. Ich werde noch  ein paar Bilder 
sortieren und machen, mit dem Bericht kann heute noch gerechnet werden..

Grüße, Martin

Edith sagt: Wie genau bekommt man das mit 1.SDR geladene Programm denn 
zur Ausführung?

von Josef G. (bome) Benutzerseite


Lesenswert?

Martin B. schrieb:
> Wie  ...  man das mit 1.SDR geladene Programm denn zur Ausführung?

Hast du das per 1.DEMO geladene Demo-Programm
schon compiliert und zum Laufen gebracht?

Hast du die Datei card schon per RS232 auf das Board übertragen?
(Dazu am PC ein Kopie cards anfertigen und sendcard verwenden).

Wenn die Datei card übertragen wurde, befindet sie sich in einem Buffer.
Mit  1.CARD4  überträgt man sie vom Buffer auf Slot4. Mit Reset (BTN0,
dann BTN1) aktiviert man die Software in Slot4 (bei Eingabe von =WARE
wird die Steckkarte in Slot 4 angezeigt). Damit steht die Software
für den Betrieb der SD-Karte zur Verfügung, man kann die Karte
initialisieren, eine Partition löschen, die Partition öffnen und
das compilierte Demo-Programm auf der Karte speichern.

Damit man die Software card nicht jedesmal neu auf das Board übertragen
muss, kann man sie, wenn sie sich im Buffer befindet, mit 1.SDS /nn auf
der SD-Karte ausserhalb des Dateisystems sichern und mit 1.SDR /nn
wieder in den Buffer laden. Der Vorgang zum erneuten Aktivieren ist
derselbe, wie wenn man sie gerade vom PC geladen hat.

PS: Reset löscht natürlich das compilierte Demo-Programm im RAM,
deshalb zuerst die SD-Karte in Betrieb nehmen und erst danach
das Demonstrations-Programm compilieren.

von Martin B. (martin_b35)


Lesenswert?

Danke für die Hinweise,
das Programm zu laden gelang mir durch
=NEW =PGM +1111
4SD.RC +PGM

Nach Eingabe von -PGM startete der Rechner und rechnete korrekt.
Ich werde jetzt die Bilder überspielen und dann meinen Bericht 
verfassen.

Grüße, Martin

von Josef G. (bome) Benutzerseite


Lesenswert?

Wenn's geht Bericht und Fotos bitte im Forum Codesammlung
posten. Der Beitrag hier im Marktteil war eigentlich nur
für's Geschäftliche gedacht.

von Martin B. (martin_b35)


Lesenswert?

Okay, abgeschickt,

von Jan Tenner (Gast)


Lesenswert?

Josef G. schrieb:
> Der von mir gezahlte Betrag wird von 200 Euro auf 300 Euro erhöht.

Langsam braucht der Mann wirklich professionelle Hilfe.
Aber andere als er denkt...

von TinkyWinky (Gast)


Lesenswert?

Josef G. schrieb:
> für's Geschäftliche gedacht.

Er meint seine Geschäftsfantasien.

von Thomas T. (knibbel)


Lesenswert?

Mal etwas Öl ins Feuer gießen wollen:

Es haben sich ja jetzt Tester gefunden. Wann kann man denn mit 
Testergebnissen rechnen?

Und was wurde eigentlich getestet? Die Lauffähigkeit? Die war bekannt. 
Die kryptische Bedienung? Auch bekannt.

Ich frage mich wirklich, was denn nun die eigentliche Testaufgabe war 
...

Meine Meinung:

Vielleicht wäre es wirklich wesentlich besser gewesen, 650 EUR einer 
Werbeagentur für eine neue Website zu geben (vielleicht mit ein paar 
Bildern, die eine Website etwas auflockern können) und für den Rest vom 
Budget einen Interfacedesigner zu beauftragen, deutlichere Mnemoniks für 
die Bedienung zu kreieren.

Ich habe mal begonnen, mich durch die Website zu kämpfen. Aber ehrlich: 
Wenn das Konzept einer "neuen" FPGA-CPU schon nicht wirklich tragfähig 
ist, dann sollte wenigstens die Werbung erstklassig sein. Und das kann 
ich hier beim besten Willen leider nicht erkennen.

Gruß,
Thomas

von Ulf (Gast)


Lesenswert?

Josef G. schrieb:

> Der von mir gezahlte Betrag wird von 200 Euro auf 300 Euro erhöht.

Die Kohle würde ich eher mit einer Braut am Wochenende durchbringen, 
statt sie hier zu verteilen.

von TinkyWinky (Gast)


Lesenswert?

Mensch, die Braut ist seine CPU!

von Josef G. (bome) Benutzerseite


Lesenswert?

Es wird hiermit folgendes festgelegt:
Die Aktion endet am Freitag, 13. Sep.

von Tommy (Gast)


Lesenswert?

Gute Entscheidung!

von Martin B. (martin_b35)


Lesenswert?

Josef hat tatsächlich und allen Ernstes gezahlt.
Geld ist schon verplant (Studium...)

von Josef G. (bome) Benutzerseite


Lesenswert?

@ Andreas S. (igel1)

Habe noch keine PN mit deiner Bankverbindung erhalten.
Aber vielleicht willst du damit warten, bis du auch die
Verwendung der SD-Karte dokumentiert hast?

von Altera Fan (Gast)


Lesenswert?

Wollte eigentlich heute die Sache auf dem Altera Board zum laufen 
bringen, SD Karte usw ist vorhanden.

Da die Doku dazu absolut unzureichend ist wollte ich mich gestern mal 
ins Konzept einarbeiten und schauen wie alles so abläuft. Arbeite 
beruflich mich FPGAs und VHDL und dachte damit wäre das ein Klacks hier.

Danach sah ich das: http://www.bomerenzprojekt.de/Website/CPU-vhdl.html


Tut mir leid, aber mit so einem Code wäre ich auf Arbeit nach ein Wochen 
gefeuert.

Kommt das aus irgenteinem Tool oder ist das extra so geschrieben das es 
niemand verstehen kann?

Ich hatte hier irgentwas gelesen von

Josef G. schrieb:
> Jeder PC ist ein Computer mit Erweiterungs-Steckplätzen.
>
> Mein System ist aber für einen ganz anderen Zweck gedacht. Es soll
> für den Anwender ohne große Vorbildung vollständig verstehbar sein,
> und er soll selber Assembler-Programme schreiben können, und
> vielleicht auch selber eine Steckkarte basteln können.


Das kann ich beim bestem Willen nicht verstehen, weil es eher umgedreht 
ist. Das gleiche bei der Doku(?), verstehe garnicht worum es geht.

Warum ist das nicht ein Projekt (am besten mit Versionierung) und 
fertigen Skripten oder Makefile, damit auch wirklich jeder es 
ausprobiern kann?


Naja wie auch immer, probiere es gerne aus wenn es eine Schritt für 
Schritt Anleitung gibt und ein fertiges Paket.
Bestenfalls inklusive gebautem FPGA und kompiliertem Sourcecode, damit 
man überhaupt einen Vergleich hat ob alles richtig läuft.

In dem Fall mach ichs sogar kostenlos!
Habe dir schonmal im FPGA Forum geschrieben das ich gerne eine 
brauchbare SD Karten Implementierung fürs DE1 hätte und die hätte ich 
damit, das ist mir Bezahlung genug.

von Tim  . (cpldcpu)


Lesenswert?

Altera Fan schrieb:
> Tut mir leid, aber mit so einem Code wäre ich auf Arbeit nach ein Wochen
> gefeuert.
>
> Kommt das aus irgenteinem Tool oder ist das extra so geschrieben das es
> niemand verstehen kann?

Einige Stellen sind schon ziemlich krass. Als wenn man absichtlich nur 
10% der Sprache nutzt. Josef, wahrscheinlich hast Du die Sprache 
zusammen mit der Entwicklung der CPU erlernt? Wenn Du den Code etwas 
aufräumen würdest, könnten sich Andere an der Entwicklung der CPU 
beteiligen.
1
          ccss <= sss(15) or sss(14) or sss(13) or sss(12) or
2
                  sss(11) or sss(10) or sss( 9) or sss( 8) or
3
                  sss( 7) or sss( 6) or sss( 5) or sss( 4) or
4
                  sss( 3) or sss( 2) or sss( 1) or sss( 0) ;
??
1
  o := outk; voutk :=   o & o & o & o & o & o & o & o
2
                      & o & o & o & o & o & o & o & o;
??
Wenn man hier Vektoren vergleicht reduziert sich das alles auf eine 
einzelne Zeile.

1
  t1 := kka(6 downto 0) & kka(7         );
2
  t2 := kka(5 downto 0) & kka(7 downto 6);
3
  t3 := kka(4 downto 0) & kka(7 downto 5);
4
  t4 := kka(3 downto 0) & kka(7 downto 4);
5
  t5 := kka(2 downto 0) & kka(7 downto 3);
6
  t6 := kka(1 downto 0) & kka(7 downto 2);
7
  t7 := kka(0         ) & kka(7 downto 1);
Hier wäre eine Schleife angebracht.
1
t1sn2  <= not (
2
          (z7 and z6                                          ) or
3
          (z7 and s6 and s5        and s3 and s2 and s1 and s0) or
4
          (z7 and s6 and s5 and s4        and s2 and s1 and s0) or
5
          (s7 and s6                                          ) or
6
          (s7        and s5                                   ) or
7
          (s7               and s4                            ) or
8
          (s7                      and s3                     ) or
9
          (s7                             and s2              ) or
10
          (s7                                    and s1       ) or
11
          (s7                                           and s0) );
Die untere Hälfte des Codes sieht so aus. Ist das die State-machine? 
Lässt sich leider aufgrund unverständlicher Variablennahmen nicht genau 
erkennen. Auf jeden Fall kann man den ganzen Abschnitt wahrscheinlich 
auf ein Case-Statement reduzieren.

von Josef G. (bome) Benutzerseite


Lesenswert?

Altera Fan schrieb:
> Wollte eigentlich heute die Sache auf dem Altera Board zum laufen
> bringen, SD Karte usw ist vorhanden.

Falls du tatsächlich Interesse hast, das Projekt zu realisieren:

Die SD-Karte muss 1 oder 2 GByte haben, darf keine SDHC-Karte sein.
Es muss nach der Konfigurierung des FPGA Software per RS232 vom PC
auf das Board übertragen werden. Das PC-seitig dazu erforderliche
Programm gibt es bisher nur für Linux. Du musst also entweder
Quartus unter Linux installiert haben, oder, falls du es unter
Windows betreibst, musst du dazu bereit sein, die Konfiguration
im Konfigurations-Flash zu sichern, um anschließend Linux zu
starten und die Software per RS232 zu übertragen.

Falls diese Voraussetzungen gegeben sind, brauchst du folgende
Dateien: ade1.csv, ade1.vhd, kde1.vhd, cpu.vhd, rom24.vhd,
sendcard.c, card, coka. Dazu die entsprechenden .txt.zip-Dateien
herunterladen, dekomprimieren, suffixe .txt entfernen.

Nun in Quartus neues Projekt anlegen mit
ade1.vhd, kde1.vhd, cpu.vhd, rom24.vhd, ade1.csv (Constraints).
Für die Logik-Pegel gilt die Voreinstellung LVTTL.
Einstellungen abweichend von den Voreinstellungen:
Unused IO-Pins ==> Inputs with weak Pullups
nCEO Pin       ==> User IO

Synthese starten und Konfigurationsfile erzeugen.
Falls du dich danach im Forum Codesammlung meldest,
können wir die weiteren Schritte zusammen durchgehen.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Altera Fan schrieb:
> Danach sah ich das: http://www.bomerenzprojekt.de/Website/CPU-vhdl.html
>
> Tut mir leid, aber mit so einem Code wäre ich auf Arbeit nach ein Wochen
> gefeuert.
>
> Kommt das aus irgenteinem Tool oder ist das extra so geschrieben das es
> niemand verstehen kann?

Am geilsten sind ja die Variablennamen, da ist absolut nicht 
nachvollziehbar wfür die sind.


Kleiner Tip an dich Josef, nenn doch mal die Variablen so um, dass 
verständlich is worums geht.
zB so:
ABC_INST0_OPA_BYPASS_MUX_CTRL  : out std_logic_vector(1 downto 0);
ABC_INST0_OPB_BYPASS_MUX_CTRL  : out std_logic_vector(1 downto 0);
ABC_INST0_OPC_BYPASS_MUX_CTRL  : out std_logic_vector(1 downto 0);
CID_INSTRUCTION    : in std_logic_vector(31 downto 0);
CID_DECODED_VECTOR  : out std_logic_vector(15 downto 0);
CPA_MEM_DABORT      : in std_logic;
CPA_MEM_DMODE      : out std_logic_vector(4 downto 0);

von Josef G. (bome) Benutzerseite


Lesenswert?

Josef G. schrieb:
> Synthese starten und Konfigurationsfile erzeugen.
Habe vergessen auf folgendes hinzuweisen: Falls du eine Tastatur ohne
Power/Sleep/Wakeup-Tasten hast, solltest du in der Datei kde1.vhd in
der am Anfang stehenden Tabelle drei Änderungen vornehmen wie hier
beschrieben: (Siehe auch Website Seite Hawa ganz unten)
Beitrag "Re: 8bit-Computing mit FPGA"

von Josef G. (bome) Benutzerseite


Lesenswert?

Tim .  schrieb:
> Als wenn man absichtlich nur 10% der Sprache nutzt.
Genau so ist es.

> hast Du die Sprache zusammen mit der Entwicklung der CPU erlernt?
Ebenfalls richtig.

> Hier wäre eine Schleife angebracht.
Und was wäre damit gewonnen?

von Josef G. (bome) Benutzerseite


Lesenswert?

Martin Wende schrieb:
> nenn doch mal die Variablen so um,

Solche Namen brauchen riesig viel Platz, sehen hässlich aus,
und man weiß trotzdem nicht wirklich, wofür sie stehen.

Was ich vielleicht machen sollte: Eine Auflistung, wo zu jedem
Namen eine kurze Beschreibung gegeben wird, wofür er steht.

---------------
Aber eigentlich wollte ich es vermeiden, hier
im Markt-Forum solche Fragen zu behandeln.

von Falk B. (falk)


Lesenswert?

@ Josef G. (bome) Benutzerseite

>Martin Wende schrieb:
> nenn doch mal die Variablen so um,

>Solche Namen brauchen riesig viel Platz, sehen hässlich aus,
>und man weiß trotzdem nicht wirklich, wofür sie stehen.

>Was ich vielleicht machen sollte: Eine Auflistung, wo zu jedem
>Namen eine kurze Beschreibung gegeben wird, wofür er steht.

[ ] Du hast en Sinn von Hochsprachen verstanden
[ ] Du hast den Sinn von sebsterklärenden Variablennamen verstanden.

Naja, was rede ich eigentlich? Es ist längst alles gesagt.

Beitrag "Re: wer kann sich noch an den hex-zeichensatz erinnern?"

von Tim  . (cpldcpu)


Lesenswert?

>> Als wenn man absichtlich nur 10% der Sprache nutzt.
> Genau so ist es.
>
>> hast Du die Sprache zusammen mit der Entwicklung der CPU erlernt?
> Ebenfalls richtig.
>
>> Hier wäre eine Schleife angebracht.
> Und was wäre damit gewonnen?

Es wäre gewonnen, dass andere Deinen Code verstehen können. Momentan 
stellt es sich so dar, als wenn Du Deutsch ohne Grammatik mit einem sehr 
kleinen Vokabular sprichst und daher alles unnötig lang umschreiben 
musst.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

@falk:
zitier doch bitte mal richtig, momentan siehts so aus als würdes das 
zitierte alles von mir kommen, tuts aber nicht...

von Josef G. (bome) Benutzerseite


Lesenswert?

Josef G. schrieb:
> Es wird hiermit folgendes festgelegt:
> Die Aktion endet am Freitag, 13. Sep.

Die Aktion ist beendet.

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
Noch kein Account? Hier anmelden.