www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

PLD

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> FPGA in CPLD programabilna vezja
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14555
Aktiv.: 65.36
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Tor Feb 08, 2011 10:38 pm    Naslov sporočila:   Odgovori s citatom

Novo igračkanje Wink


BILD1002.JPG
 Opis:
 Velikost datoteke:  371.25 KB
 Pogledana:  52 krat

BILD1002.JPG



_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Sadida
Član
Član



Pridružen-a: Pet 17 Apr 2009 12:53
Prispevkov: 636
Aktiv.: 3.48
Kraj: Zasavje

PrispevekObjavljeno: Tor Feb 08, 2011 11:22 pm    Naslov sporočila:   Odgovori s citatom

Silvo, to je neka programirljiva matrika kajne? S katerim jezikom to programiraš? VHDL?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14555
Aktiv.: 65.36
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Tor Feb 08, 2011 11:52 pm    Naslov sporočila:   Odgovori s citatom

Sadida je napisal/a:
Silvo, to je neka programirljiva matrika kajne? S katerim jezikom to programiraš? VHDL?


Kaj pa vem, kako se imenuje ta "jezik". Tukaj sem popoln začetnik. Pred pol ure sem dal GAL-a na testno. Uporabljam free atmelovo orodje WinCupl. Gledam primere, ki so napisani ter malo poskušam. Ni videt preveč komplicirano.

Moj prvi testni primer Wink

Koda:
Name     test1 ;
PartNo   00 ;
Date     8.2.2011 ;
Revision 01 ;
Designer Engineer ;
Company  - ;
Assembly None ;
Location  ;
Device   g16v8a ;

/* *************** INPUT PINS *********************/
PIN    2 = A                        ; /*                                 */
PIN    3 = B                        ; /*                                 */
PIN   4 = C            ;
/* *************** OUTPUT PINS *********************/
PIN  19   = Q                        ; /*                                 */
PIN  18   = Q1                        ; /*                                 */
PIN  17  = Q2      ; /*                                 */
PIN  16 =Q3   ;


Q1=!(A&B)   ;
Q2=A#B#C   ;
Q3=!C   ;


Seveda bi bil dobrodošel kak nasvet kakega poznavalca. Sploh kako se uporablja simulator. Če bo kaj interesa lahko odpremo novo temo.

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
NUFAN
Član
Član



Pridružen-a: Pon 05 Apr 2004 21:39
Prispevkov: 947
Aktiv.: 4.25
Kraj: Žalec

PrispevekObjavljeno: Sre Feb 09, 2011 7:32 pm    Naslov sporočila:   Odgovori s citatom

Sadida je napisal/a:
Silvo, to je neka programirljiva matrika kajne? S katerim jezikom to programiraš? VHDL?

Za PAL in GAL se uporablja predvsem Abel in CUPL, za kakšne bolj kompleksne pa Verilog, VHDL.

_________________
Roke spadajo k telesu, ne k delu.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 6.07
Kraj: KOPER

PrispevekObjavljeno: Sre Feb 09, 2011 10:12 pm    Naslov sporočila:   Odgovori s citatom

Citiram:

Seveda bi bil dobrodošel kak nasvet kakega poznavalca. Sploh kako se uporablja simulator. Če bo kaj interesa lahko odpremo novo temo.


Sicer nisem poznavalec, vendar PLD(Programmable Logic Device) uporabljam že dolgo let. Največkrat ga uporabljam v kombinacija z dekoderji, ko rabim drugačen vhod ali izhod kot ga ima na voljo npr 74hc138 . Lepo se da narediti kombinirana logična vrata, šift register itd. Sicer ne uporabljam WinCupl, ker na w2k ne dela v redu. Uporabljam še dosovske programe in simulacijo. Ti so bili v kompletu starega Pcada. Če kdo rabi kaj več informacij lahko pomagam.

_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14555
Aktiv.: 65.36
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Sre Feb 09, 2011 10:50 pm    Naslov sporočila:   Odgovori s citatom

Rudi, bom kar zatežil. Kot sem napisal - včeraj sem prvič poslušal. Kako izgleda sintaksa programa sem gledal v priloženih primerih.

Ok kako "spisati" običajna vrata and,or,xor,inv.... razumem.

Postal sem bolj "zahteven" Wink

Recimo želel bi, da bi se izhod postavljal ob ko so postavljeni določeni vhodi. Določil sem tri vhode A,B,C
za začetek bi želel, da je na izhodu stanje nizko, če so vsi vhodi nizki. Ko bi postavil recimo A na visoko stanje bi bil izhod tudi visok. (seveda bi rad določil še več kombinacij vhodov pri katerih bi bil izhod visok)

Tale sintaksa, ki sem jo napisal očitno ni prava. Izhod Q je stalno visok. Prevajalnik ne javlja napake.

Cela koda:
Koda:

Name     test1 ;
PartNo   00 ;
Date     8.2.2011 ;
Revision 01 ;
Designer Engineer ;
Company  - ;
Assembly None ;
Location  ;
Device   g16v8a ;

/* *************** INPUT PINS *********************/
PIN    2 = A                        ; /*                                 */
PIN    3 = B                        ; /*                                 */
PIN   4 = C            ;
/* *************** OUTPUT PINS *********************/
PIN  19   = Q                        ; /*                                 */
PIN  18   = Q1                        ; /*                                 */
PIN  17  = Q2      ; /*                                 */
PIN  16 =Q3   ;



Q2=A#B#C   ;

Q=(!(A&B&C))#(!A&B&C)   ;

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 6.07
Kraj: KOPER

PrispevekObjavljeno: Čet Feb 10, 2011 7:43 am    Naslov sporočila:   Odgovori s citatom

Po mojem bo tako:

Koda:


Q=(A # !A) & B & C   ;



Bom naložil novo verzijo, pa bom probal tudi sam.

_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 6.07
Kraj: KOPER

PrispevekObjavljeno: Čet Feb 10, 2011 9:52 am    Naslov sporočila:   Odgovori s citatom

wincupl naredi kar mora vendar je problem v fajlu za simulacijo. Bo treba preštudirat zakaj ne prepiše glave iz *.PLD fajla.

prilagam test narejen po mojem:

Koda:


Name     Test ;
PartNo   01 ;
Date     20.1.2009 ;
Revision 01 ;
Designer Engineer ;
Company  SILVO ;
Assembly None ;
Location Koper ;
Device   g16v8 ;

/* *************** INPUT PINS *********************/
PIN 2    =  A                       ; /*                                 */
PIN 3    =  B                       ; /*                                 */
PIN 4    =  C                      ; /*                                 */

/* *************** OUTPUT PINS *********************/
PIN 12    =  Q                   ; /*                                 */
PIN 13    =  Q1                  ; /*                                 */
PIN 14    =  Q2               ; /*                                 */

/** Declarations and Intermediate Variable Definitions       **/

Q = (A # !A) & B & C;



Simulacijski fajl katerega je potrebno napisati v tekstovnem editorju


Koda:


Name     Test ;
PartNo   01 ;
Date     20.1.2009 ;
Revision 01 ;
Designer Engineer ;
Company  SILVO ;
Assembly None ;
Location Koper ;
Device   g16v8 ;



ORDER: A,%3,B,%3,C,%3,Q,%3,Q1,%3,Q2;


VECTORS:

$msg"   ";
$msg"      A   B   C   Q  Q1  Q2 ";
               0   0    0    L   L    L
               1   0    0    L   L   L
               0   1    1    H   L   L
               1   1    1    H   L   L
               1   1    1    L   H   L




rezultat simulacije

Koda:


CSIM  Version 2.11b Serial# 1-00004-012
Copyright (C) 1983,1986 Personal CAD Systems, Inc.
CREATED Thu Feb 10 09:46:13 2011

LISTING FOR SIMULATION FILE: Test.PLD.si

   1: Name     Test ;
   2: PartNo   01 ;
   3: Date     20.1.2009 ;
   4: Revision 01 ;
   5: Designer Engineer ;
   6: Company  SILVO ;
   7: Assembly None ;
   8: Location Koper ;
   9: Device   g16v8 ;
  10:
  11:
  12:
  13: ORDER: A,%3,B,%3,C,%3,Q,%3,Q1,%3,Q2;
  14:
  15:

===============================================================================
                              Simulation Results
===============================================================================
   
      A   B   C   Q  Q1  Q2
0001: 0   0   0   L   L   L
0002: 1   0   0   L   L   L
0003: 0   1   1   H   L   L
0004: 1   1   1   H   L   L
0005: 1   1   1   H   H   L
                  ^
[0019sa] user expected (L) for Q




V vrstici pet je rezultat namerno napisane napake



SILVO.rar
 Opis:
prilagam vse kar je potrebno za geriranje test.jed

Download
 Ime datoteke:  SILVO.rar
 Velikost datoteke:  174.68 KB
 Downloadano:  2 krat


_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14555
Aktiv.: 65.36
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Čet Feb 10, 2011 6:04 pm    Naslov sporočila:   Odgovori s citatom

Spisal logiko BCD to 7 segment decoder. (nekaj takega kot je 4511) zadeva začuda celo dela. Very Happy Verjetno bi to šlo napisati na lažji način kot sem to storil sam. Kako sploh vem koliko "prostora" je še na razpolago?

Koda:

Name     test1 ;
PartNo   00 ;
Date     8.2.2011 ;
Revision 01 ;
Designer Engineer ;
Company  - ;
Assembly None ;
Location  ;
Device   g16v8a ;

/* *************** INPUT PINS *********************/
PIN    2 = A                        ; /*                                 */
PIN    3 = B                        ; /*                                 */
PIN   4 = C            ;
PIN    5 = D   ;
   
/* *************** OUTPUT PINS *********************/
Pin [11..19] = [Q8..0];
/*            GFEDCpAB /* prikaz na displeju */



Q0=(A&B&C&D)#(!A&B&!C&!D)#(A&B&!C&!D)#(!A&!B&C&!D)#(A&!B&C&!D)#(!A&B&C&!D)#(!A&!B&!C&D)#(A&!B&!C&D) ;      
Q1=(!A&!B&!C&!D)#(!A&!B&C&!D)#(A&!B&C&!D)#(!A&B&C&!D)#(!A&!B&!C&D)#(A&!B&!C&D);   
Q2=(!A&!B&!C&!D)#(!A&B&!C&!D)#(!A&B&C&!D)#(!A&!B&!C&D);
Q3=(!A&!B&!C&!D)#(!A&B&!C&!D)#(A&B&!C&!D)#(A&!B&C&!D)#(!A&B&C&!D)#(!A&!B&!C&D)#(A&!B&!C&D);   
Q4=(!A&!B&!C&!D)#(A&!B&!C&!D)#(A&B&!C&!D)#(!A&!B&C&!D)#(A&!B&C&!D)#(!A&B&C&!D)#(A&B&C&!D)#(!A&!B&!C&D)#(A&!B&!C&D);
Q5=(A&B&C&D);    
Q6=(!A&!B&!C&!D)#(!A&B&!C&!D)#(A&B&!C&!D)#(A&!B&C&!D)#(!A&B&C&!D)#(A&B&C&!D)#(!A&!B&!C&D)#(A&!B&!C&D);    
Q7=(!A&!B&!C)#(A&!B&!C&!D)#(!A&B&!C&!D)#(A&B&!C&!D)#(!A&!B&C&!D)#(A&B&C&!D)#(!A&!B&!C&D)#(A&!B&!C&D);

_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 6.07
Kraj: KOPER

PrispevekObjavljeno: Čet Feb 10, 2011 6:38 pm    Naslov sporočila:   Odgovori s citatom

Bravo !

Si to napisal in prevedel v WinCupl ? Če je tako kako si napisal simulacijski fajl.

_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Silvo
Moderator
Moderator



Pridružen-a: Pon 24 Feb 2003 17:09
Prispevkov: 14555
Aktiv.: 65.36
Kraj: Koroška-okolica Dravograda

PrispevekObjavljeno: Čet Feb 10, 2011 6:41 pm    Naslov sporočila:   Odgovori s citatom

Tole je prevedeno ter napisano v GAL 16V8 ter na testni plošči deluje.


test.zip
 Opis:
kompletini projekt

Download
 Ime datoteke:  test.zip
 Velikost datoteke:  6.76 KB
 Downloadano:  9 krat


_________________
lp
Silvo
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> FPGA in CPLD programabilna vezja Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 66 dni


Powered by phpBB © 2001, 2005 phpBB Group