Salut,
Je viens de me lancer dans l'apprentissage de ispLever de Lattice et du langage Abel.
J'essaye de générer 2 signaux à partir d'un signal Clock et d'un signal d'activation. Voir fichier attaché.
Ma cible est pour l'instant une GAL16V8D
J'ai fait le programme suivant (mon 1er), en simulation ca a l'air bon. PAr contre pour la generation du jedec ca coince. Sur une autre cible type 22v10 ca rentre.
Si un cerveau plus éveillé que le mien pouvait me simplifier mon prog... je prends. Ou me filer un conseil avant que je rattaque demain.
MODULE USDrive
"INPUT
clock pin 1;
OE1 pin 2;
"OUTPUT
OUT1A pin 13 istype 'reg';
OUT1B pin 14 istype 'reg';
OUT3 pin 15 istype 'reg';
OUT1=[OUT1A,OUT1B];
Equations
OUT1.CLK=clock;
"OUT1.ACLR=!OE1; "non accepté par le compilo ?
OUT3.CLK=clock;
"OUT3.ACLR=!OE1; "non accepté par le compilo ?
WHEN OE1==0 THEN {OUT1A:=0; OUT1B:=0; OUT3:=0;}
ELSE
{
when (OUT3==1) THEN OUT1B:=1;
when (OUT1A==1) THEN OUT1A:=0;
WHEN (OUT1A.FB==1) THEN OUT3:=1;
when (OUT1B==1) THEN OUT1B:=0;
when (!OUT1A & !OUT1B & !OUT1A.FB & !OUT1B.FB &!OUT3) THEN OUT1A:=1;
}
Test_vectors
([clock,OE1]->[OUT1])
[.x. , 0]->[.x.];
[.c. , 0]->[.x.];
[.c. , 0]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 0]->[.x.];
[.c. , 0]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
[.c. , 1]->[.x.];
END
Merci
Julien
-----