Tester gesucht für FPGA-Projekt

OP Persönliche Seite #3262478
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.
OP Persönliche Seite #3262855
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.
Gast #3264110
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
Gast #3264266
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
Gast #3264461
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,
#3273902
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.
OP Persönliche Seite #3274123
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.
#3274140
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.
OP Persönliche Seite #3274156
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.
#3274167
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.
#3276311
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.
OP Persönliche Seite #3276324
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.
#3276342
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.
Angehängte Dateien:
#3276724
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
OP Persönliche Seite #3276822
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.
OP Persönliche Seite #3287081
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.
#3287090
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?
OP Persönliche Seite #3293674
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.
#3294590
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
#3294735
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
Persönliche Seite #3294747
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 ;) )
OP Persönliche Seite #3295008
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.
OP Persönliche Seite #3295443
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.
#3299155
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
Gast #3306705
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.
#3306846
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.
OP Persönliche Seite #3307063
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.
(Firma: fritzler-avr.de) #3307188
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);
OP Persönliche Seite #3307272
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"
OP Persönliche Seite #3307998
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.
#3311131
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?"
#3311174
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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren