sven
pointers don't kill programs, programmers kill programs
Ik heb enige tijd eens geexperimenteerd met een "Xilinx Coolrunner 2 design kit". Heb dit allemaal wel werkende gekregen, maar er moet toch maar kunnen uitgehaald worden dan wat logische poorten simuleren?
Dan komt VHDL/Verilog kijken. Hier ken ik ik eigenlijk NIKS van. Heeft er iemand een goede website (of eventueel een boek) van waaruit dit goed te leren is.
Websites voor een simpel projectje zijn te vinden & website met het geavanceerde spul zijn ook te vinden, het tussenstuk echter....
Hoi Sven,
De design kit die je hebt, heeft ook 4 connectoren waar je alle poorten (penne) van de CPLDs die er op zit kunt gebruiken. Als je een stukje europrint neemt, met daarop een 40 polige header, kun je al een heel end komen.
Wat je je moet afvragen is... "Wat wil ik nu eigenlijk door de CPLD laten doen". Als je dat besloten hebt, kun je het schema gaan invoeren / opbouwen met het ISE pakket. Je hebt alle logische elementen tot je beschikking, zoals tellers, latches, flipflops en al dat soort spul.
Het beste kun je deze categorie CPLDs zien als een klein bakje waar je een digitale schakeling in kwijt kan, die, als je die met losse TTL/CMOS ICs in elkaar zou willen zetten, een print nodig zou hebben met het oppervlak van een A4'tje.
Een voorbeeldje van een project wat je designkit aankan, zou een digitale frequentie teller zijn. Je neemt b.v. 8 74LS47 7-segments displays, die je aanstuurt d.m.v. multiplexing. Dit is de output interface om het zo te zeggen. Verder heb je een ingangpen nodig om het digitale klokje op te zetten dat je wilt meten. Dat is je input interface.
De hele digitale schakeling die de pulsjes telt, de counterwaarde in buffer zet, en de logica die de 7-segment drivers aanstuurt komt dan in de CPLD.
De schakeling kun je door middel van het schematic programma invoeren, als je de VHDL niet kent. Ik ben er ook niet echt van op de hoogte; ik gebruik gewoon de schema editor.
Als je meer wilt, dan zul je microcontrollers moeten gaan gebruiken, of de grote versies van CPLDs, de FPGAs.
Ik weet 't.. deze uitleg is geen kant en klaar project waar je mee aan de slag kan, maar het zou een beeld moeten geven van wat de toepassing is van deze CPLDs.
Groeten,
Magic
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
stap over naar altera.
de tools zijn vele beter dan dat spul van xilinx.
het debat verilog/vhdl is een ander paar mouwen.
VHDL is een zeer strickte gestructureerde taal die zich bij uitstek leent voor het beschrijven van zeeer grote projecten waar door vele mensen tesamen aan gewerkt wordt.
Verilog daarentegen is iets meer flexibel maar voor grote projecten wordt het nogal een onoverzichtelijke troep omdat iedereen in zijn eigen stijl kan programmeren ( wat in VHDL niet kan. )
Daar staat dan wel weer tegenover dat de productiviteit vele malen hoger ligt in verilog dan in vhdl.
Vorig jaar is er nog een test gedaan door Synopsis (fabrikant van de VHDL en Verilog Compilers). 5 experts in verilog en 5 in vhdl moesten allemaal 3 projecten uitwerken op een week tijd.
na 1 week draaide bijna alle verilog code correct van iedereen waartegen er van VHDL NIKS klaar was noch correct simuleerde.
en er is nog een groot geografisch verschil ook. Europa is 95 % VHDL en USA is 50% VHDL .....
Bij Esperan en Aldec zijn er zowel VHDL als Verilog tutorials te halen (gratis)
voor een deftige vhdl / verilog edior compiler kan je Quartus II downloaden bij Altera. Kan je gelijk simuleren.
sven
pointers don't kill programs, programmers kill programs
@magicbox:
Ik zoek eerder een "cursus" VHDL of Verilog. Dat ik een hoop logische poorten ermee kon overbodig maken, wist ik al. µC ken ik al, maar ik had de indruk dat m'n eerder gebruik maakt van FPGA's voor de wat complexere schakelingen.
@free_electron:
Heb net quartus gedownload, zal eens bekijken of dit "beter" werkt.
Ik denk dan maar eens Verilog te bestuderen...
Heeft er iemand trouwens een site voor goede / goedkope dev-kit van Altera? Die op hun site is 150$ maar ik heb geen nood aan PCI-connectors e.d.
Op 18 juli 2005 18:21:42 schreef sven:
@magicbox:
Ik zoek eerder een "cursus" VHDL of Verilog. Dat ik een hoop logische poorten ermee kon overbodig maken, wist ik al. µC ken ik al, maar ik had de indruk dat m'n eerder gebruik maakt van FPGA's voor de wat complexere schakelingen.
Ah, dat was niet helemaal duidelijk, althans, het zoeken naar een goede VHDL tutorial leek niet de kern van je eerste post, maar ging ook over verwachtingen van de Xilinx CPLDs, dus vandaar 
Als je het echt 'goed' wil doen, dan zijn de zware FPGA jongens de keuze. Zoals al belicht werd, je kunt er een software CPU (uC) in kwijt en alle rand logica. Dus echt "A System on a Single Chip" zoals ze zeggen. Tevens is een groot verschil tussen FPGAs en CPLDs, dat FPGAs ideaal zijn om bus structuren in onder te brengen. Zij hebben n.l. "Long lines" waar je ideaal 32, 64 en als je wil 128 bit bussen mee kan opzetten.
sven
pointers don't kill programs, programmers kill programs
Op 18 juli 2005 19:55:29 schreef MagicBox:
[...]Ah, dat was niet helemaal duidelijk, althans, het zoeken naar een goede VHDL tutorial leek niet de kern van je eerste post, maar ging ook over verwachtingen van de Xilinx CPLDs, dus vandaar
Als je het echt 'goed' wil doen, dan zijn de zware FPGA jongens de keuze. Zoals al belicht werd, je kunt er een software CPU (uC) in kwijt en alle rand logica. Dus echt "A System on a Single Chip" zoals ze zeggen. Tevens is een groot verschil tussen FPGAs en CPLDs, dat FPGAs ideaal zijn om bus structuren in onder te brengen. Zij hebben n.l. "Long lines" waar je ideaal 32, 64 en als je wil 128 bit bussen mee kan opzetten.
Het "system on a chip" gebeuren is dan ook de reden dat ik me hierin wat meer wil verdiepen.
Ik had gedacht eerst met cpld's wat ervaring op te doen, alvorens met FPGA's te beginnen. En daarom ook dus met VHDL/Verilog, het lijkt mij onbegonnen werk om enkele 100-duizend gates te gaan verbinden via een schema...
Op 18 juli 2005 20:11:50 schreef sven:
[...]Het "system on a chip" gebeuren is dan ook de reden dat ik me hierin wat meer wil verdiepen.
Ik had gedacht eerst met cpld's wat ervaring op te doen, alvorens met FPGA's te beginnen. En daarom ook dus met VHDL/Verilog, het lijkt mij onbegonnen werk om enkele 100-duizend gates te gaan verbinden via een schema...
Ik heb mijzelf nog geen tijd gegund om me VHDL aan te leren, maar heb er al wel naar gekeken daar de outputfiles van mijn schema's in VHDL zijn. Het is weinig anders dan een soort van low level programmeer taal. Een reeks van boolean evaluaties die je aan allerlei variabelen/poorten kan toekennen.
Wat erg handig zou kunnen zijn, is dus het maken van een schema met een digitale schakeling, en kijken hoe de resultaat file er uit ziet, en het dan terug herleiden. Ik denk dat syntax het enige is wat je je eigen hoeft te maken, dan zal de rest vrij simpel zijn. Logisch denken kun je al 
sven
pointers don't kill programs, programmers kill programs
Op 18 juli 2005 20:23:55 schreef MagicBox:
[...]Logisch denken kun je al
Soms toch ja 