GAL RS-FF programmieren

Gast #496813
Lesenswert?

Hallo,

ich bin total verzweifelt, ich bekomme einfach keine RS-FlipFlops 
programmiert.
Ich arbeite mit "isp Lever" von Lattice. Bei der grafischen 
Programmierung komme ich nicht weiter. Jetzt habe ich es mit einer 
Wahrheitstabelle probiert, aber da bleiben die Zustände an den Ausgängen 
ja nur konstant wenn die Signale so anliegen und ich habe Taster am 
Eingang.

Könnt ihr mir bitte mal nen Anfangspunkt sagen, ich komme gerade einfach 
nicht mehr weiter?

(Die Artikel hier im Forum haben mich auch nicht weiter gebracht.)
(Ich habe mein "Wahrheitstabellenentwurf" mal als anhang dazu gehängt)

Vielen Dank
Camel
Angehängte Dateien:
Gast #496828
Lesenswert?

so hatte ich es auch schon probiert: (Auszug von HP0)

  when (set_HP0 =='01') then

   HP0  = '1';

  when (set_HP0 =='10') then

   HP0  = '1';

//  when (set_HP0 =='11') then

//   HP0  = '1';

  when (res_HP0 =='0001') then

   HP0  = '0';

  when (res_HP0 =='0010') then

   HP0  = '0';

  when (res_HP0 =='0100') then

   HP0  = '0';

  when (res_HP0 =='1000') then

   HP0  = '0';

//  when (res_HP0 =='1111') then

//   HP0  = '0';
Persönliche Seite #497768
Lesenswert?

@Camel Hallo!
Wichtig: halte den PIN 1 frei von Eingängen.
Da kommt nur der Clock dran.
Sonst geht das nicht.
Es gibt so viele Dialekte in der Gal-Asm Sprache.
z.B WinCUPL ,ABEL ect. pp.....
In deinem Usermanual mus auch so was
wie xx.fb oder xx.D  xx.AR ....xx.SP  usw drinstehen.
Hier ist das mit .fb also Feedback.
***********************************
.D /* D input of D-type flip-flop */
************************************
Mit den Ausgangs SignalNamen Out_sigal_rot.fb
****************************************
Ein toggelndes Flipflop machen , mit  z.B  GAL 16V8.
****************************************

 CLK, OE    pin 1, 11;    "Namen an Clock- und OE-Pin zuweisen
-----------------------------------------------------------
CLOCK muss auf PIN#1 bei z.B  GAL 16V8
OE ist unbedigt an  PIN#11 also an GND sonst ist das Disabled. bei z.B 
GAL 16V8.

Hier wird dem Signalnahmen ein '.fb' angehängt.
Mit := ist geclockte Logic gemeint ....
-------------------------------------
Flip-Flop mit Takt:
Out_sigal_rot := !Out_sigal_rot.fb;
Out_sigal_rot := !RESET & !Out_sigal_rot.fb # SET;

Hier ist das mit .fb also Feedback.
-------------------------------------------------------
Zusätzlich noch die Kopplung ?????
an den CLOCK,_=_=_ und Out_enable an (GND)
Out_sigal_rot.clk = CLK;    "Clock-Pin mit Flipflop verbinden
Out_sigal_rot.oe  = !OE;    "OE-Pin mit Ausgang verbinden (invers!)

----------------------------------
Der Link hier noch bitte ansehen :
http://wwwlrh.fh-bielefeld.de/abel/k241.htm
Viel Erfolg.
Hast du schon ein einfaches Gal-Modell
als Hardware am laufen ?????.
Was wilst du mit den Gal-Teilen genau machen ???.
---------------------------------------------------
Der Link hier bitte ansehen :
http://www.eng.mu.edu/~perezjc/eece143/Handout04.pdf
Das ist ein Beispiel daraus mit .d Syntax.
B.d = s&!B&A # s&B&!A;

Gruss Holger.


Persönliche Seite #497775
Lesenswert?

Hier noch mal das Pinning.
Aber bitte vorher selber prüfen.
    Protokolldatei des Logik-Compilers GalAsm,
                  (05.02.2007) von holger
Bearbeitete Datei: 4bitz.eqn
Ziel PLD         : GAL16V8

Pinbelegung des PLDs:
====================
                    ________
                 --+   \__/   +--
    Clk      -> | 1|          |20|       Vcc
                 ==+          +==
    A0       -> | 2|          |19|  <-   CIN
                 ==+          +==
    A1       -> | 3|          |18|  <-   I0
                 ==+          +==
    A2       -> | 4|          |17|  =:>  Q0
                 ==+          +==
    A3       -> | 5|          |16|  =:>  Q1
                 ==+          +==
    B0       -> | 6|          |15|  =:>  Q2
                 ==+          +==
    B1       -> | 7|          |14|  =:>  Q3
                 ==+          +==
    B2       -> | 8|          |13|  <-   I1
                 ==+          +==
    B3       -> | 9|          |12|   ->  COUNT
                 ==+          +==
    Gnd         |10|          |11|  <-  /E
                 --+__________+--

Legende:  ->: kombinatorischer Aus- bzw Eingang
         =:>: sequentieller (registered) Ausgang
         <->: kombinator. Aus- und Eingang (Tristate)
          X : nicht benutzt, sollte auf Gnd gelegt werden

Architekturkontrollbits:
=======================
           Syn   = 0
           AC0   = 1
 CIN     : AC1(1)=1, XOR(1)=1
 I0      : AC1(2)=1, XOR(2)=1
 Q0      : AC1(3)=0, XOR(3)=0
 Q1      : AC1(4)=0, XOR(4)=0
 Q2      : AC1(5)=0, XOR(5)=0
 Q3      : AC1(6)=0, XOR(6)=0
 I1      : AC1(7)=1, XOR(7)=1
 COUNT   : AC1(8)=1, XOR(8)=0

Konfiguration der OLMCs:
=======================
OLMC 1 (Pin 19):  CIN      Eing.
OLMC 2 (Pin 18):  I0       Eing.
OLMC 3 (Pin 17):  Q0       seq.Ausg.,Freig.:/E, rückgek.
OLMC 4 (Pin 16):  Q1       seq.Ausg.,Freig.:/E, rückgek.
OLMC 5 (Pin 15):  Q2       seq.Ausg.,Freig.:/E, rückgek.
OLMC 6 (Pin 14):  Q3       seq.Ausg.,Freig.:/E, rückgek.
OLMC 7 (Pin 13):  I1       Eing.
OLMC 8 (Pin 12):  COUNT    kombinat. Ausg.


Persönliche Seite #497941
Lesenswert?

@Camel
Kanst du mit der isp Lever Soft mal testen ob das geht ?????
GAL 20V8  jetzt ein STK200 Dongle.
Ich habe aber an den Ausgängen keinen echten "TRISTATE".


Hier noch ein Beispiel für "Tristate".
Ich habe das gemessen.

Inputs u. Outputs, da sind interne Pull-Ups drin.
Bei den Inputs ist das sogar nützlich.
Durch das Gal wird die Platine einfach zu routen.

Kan man damit auch einen FPGA-Dongle bauen ??? .

                             ._____    ___.
                             |     \__/     |
                         clk |  1        24 | vcc
                      /OEN_2 |  2        23 | NC_INP_23
                    MISO_mcu |  3        22 | MISO_PC_ACK
                 PC_RESET_09 |  4        21 | mcu_RESET
                          i4 |  5        20 | mcu_RESET_N
                     PROG_PC |  6        19 | PROG_LED
                     SCLK_PC |  7        18 | SCLK_mcu
                     MOSI_PC |  8        17 | MOSI_mcu
                          i8 |  9        16 | NC_OUTP_16
                          i9 | 10        15 | NC_OUTP_15
                         i10 | 11        14 | NC_INP_14
                         gnd | 12        13 | /OEN1_13
                             |______________|
Angehängte Dateien:

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