Forum: FPGA, VHDL & Co. 7 Segmentanzeige mit GAL programmieren HILFE


von Robi (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich hoffe ihr könnt mir weiterhelfen. Ich habe folgendes Problem.
Ich muss den 7-Segmentdecoder DM9368 durch einen Gal16V8 ersetzen.
Ich habe es bereits geschafft den Gal Baustein mittels isplever so zu 
programmieren, dass er mir die Ziffern 0-F anzeigt.

Programm befindet sich im Anhang.

Jetzt müsste ich noch den Latch Enable Input (Active Low) programmieren.
Hatt jemand eine Idee bzw. Lösung dafür. Ich meine dass es mit einem 
D-Latch funktionieren müsste.

Vielen Dank

Mit freundlichen Grüßen

Robi

von MaWin (Gast)


Lesenswert?

Willst du latchen, also speichern, dafür wäre Typ COM nicht angemessen,
oder enabeln, als den Ausgang freischalten ?

von Robi (Gast)


Lesenswert?

Ja ich will speichern. Ja da müsste man istype 'reg,buffer' schreiben 
oder ?

Könntest du mir da weiterhelfen ?

DAnke

von ich (Gast)


Lesenswert?

>'reg,buffer'

irgendsowas war da mal... google am besten nach einem ABEL-Tutorial

von Robi (Gast)


Lesenswert?

Das müsste doch auf zwei, drei Zeilen realisierbar sein oder ?
Wäre super wenn ihr einen Lösungsansatz hättet.

von ich (Gast)


Lesenswert?


von Robi (Gast)


Lesenswert?

Vielen Dank :), dass muss ich mir nochmal genauer anschauen, hab heute 
zum ersten Mal mit isplever gearbeitet. Da fehlen mir noch die Basics. 
Ich weiss das es zu viel verlangt wäre für eine konkrete Lösung, da man 
sichs selbst erarbeiten muss um es richtig zu verstehen, wäre aber 
trotzdem sehr nett von euch.

von ich (Gast)


Lesenswert?

Hier ist noch ein gutes ABEL-Manual mit vielen Beispielen.

http://www.latticesemi.com/lit/docs/manuals/abel_ref.pdf

Wenn deine Software auch VHDL könnte waäre eine konkrete Lösung kein 
Problem...

von Robi (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe es mal versucht, aber es klappt nicht.
Vielleicht seht ihr was ich falsch gemacht habe.Beim Fitting kommt der 
Fehler " Unable to preserve preassignments - performing second pass 
without preassignments.
Note 4068: Signal A cannot be assigned (to pin 12) because
       the register type of 'A' pin 12 is invalid."

Und das für alle Segmente.

Wisst ihr wie ich nach (output := input), die gesamten Eingänge 
zusammenfasse ? "input" nimmt er mir nicht an.

Danke

von ich (Gast)


Lesenswert?

Warum nimmst du die Segmente als buffer? Ist es nicht 
Resourcenschonender wenn du das Latch an die 4 Bit Eingänge baust?

Also: 4-Bit Eingang -> 4-Bit Latch -> Dekodierung auf 7S

von Robi (Gast)


Lesenswert?

Ich weiß nicht, wie ich das schreiben soll :(

von Robi (Gast)


Lesenswert?

RBI und RBO müsste ich auch noch programmieren.

von Robi (Gast)


Lesenswert?

ich bin mir sicher dass ich es so schreiben muss, klappt aber nicht !

data0 pin;
latch_enable pin;
out0 pin istype 'reg';

Equations
out0 := data0;
out0.lh = latch_enable;
END top

von MaWin (Gast)


Lesenswert?

>   output := X0;
>  output := X1;
>  output := X2;
>  output := X3;
>  output.lh = X4;

Was möchtest du damit sagen ?

>   X4 PIN 6;  "Latch Enable Pin

Wo ist denn Latch Enable an deinen GAL ?
Also bei meinen ist es an Pin 1.

Wie meinst du, soll der GAL-Assembler das umlöten ?

Ach du liebe Scheisse, daher kommt Pin6,
du hast die Aufgabe komplett abgeschrieben und kein Wort verstanden:
http://www.inf.fu-berlin.de/lehre/SS02/HWP/aufgaben/Labor4.pdf

von Robi (Gast)


Lesenswert?

Ich habe garnichts abgeschrieben.
Wie bereits gesagt ich bin Anfänger in diesem Gebiet also bitte

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.