Ik vraag me af wat de redenen zijn waarom er nog steeds zo weinig nieuwe en jonge gebruikers zijn voor FPGA of CPLD toepassingen. Blijkbaar is de drempel om te starten met een PIC controller veel lager of zijn er anderen redenen.

FPGA toepassingen liggen nochtans heel dicht bij hardware ontwerpen. Ze zijn ook perfect geschikt voor heel veel toepassingen en kunnen heel hoge snelheden aan.

Kan het zijn dat een PIC of andere kleinere microcontroller meer aanspreekt omdat ze nog heel veel in een gewone DIL behuizing beschikbaar zijn en dit aan zeer lage prijs. Alhoewel, is een hogere prijs een echte reden? Ik denk van niet want als je de uitgave van 1 weekeindje van de jeugd van vandaag zou spenderen aan een FPGA dan zouden hier heel veel gebruikers moeten zijn.

Zou de engelse taal van de ontwikkelingstools zoals "Quartus" een probleem zijn? of het pakket te groot om te starten?

Er is natuurlijk meer beschikbaar op het net voor de software controllers, meer schema's, maar ik vermoed dat er bij de huidige opleidingen een tekort is aan mensen die het aandurven met deze technieken te werken.

Ik vraag me ook af welke toepassingen een nieuwe gebruiker vooral op oog heeft. Als ik de vragen van deze groep overlees zie ik heel veel heel elementaire toepassingen zoals: een looplichtje, een klokje, een vertraging, een timer, een of ander licht aansturen enz. Dit zou ook met de kleinste FPGA kunnen.

Een FPGA verbuikt doorgaans wel wat meer dan bepaalde controllers, dit kan ook een probleem vormen net zoals de verschillende voedingsspanningen die doorgaans bij een moderne FPGA nodig zijn. Waarschijndelijk is een voeding reeds een groot probleem voor veel beginners. Ik merk dat er trouwens heel veel zijn die enkel iets nabouwen, niets van kennis hebben... nu ja dit zal bij iedere beginner wel zo zijn. Je moet het eens leren.

Ik heb verschillende kleine testen gedaan om te zien wat je in de kleinste FPGA of CPLD kunt realiseren. Het valt mij op hoe veel daar reeds inkant. Zo vb voor een EPM7032S in PLCC44 uitvoering heb ik net een looplicht gemaakt met up/down counter mogelijkheid om de richting van het looplicht te wijzigen en dit voor 16 leds met 16 sequenties. Het patroon van de leds is willekeurig in te stellen en terwijl het loopt kun je met de up/down switch de richting omkeren. je kunt er ook een klok mee maken en 7 segment displays aanhangen. Dit alles zonder maar iets opnieuw te moeten solderen. In deze zelfde behuizing past ook een EPM7064 die het dubbele aantal elementen bezit waardoor je meer extra delers, timers enz kunt gebruiken. Een PLCC44 is door iedereen soldeerbaar net zoals een DIL behuizing. Heb je geen angst om een fijnere chip te gebruiken dan heb je een veel ruimere waarbij je direct heel veel elementen beschikbaar hebt. Maar om te starten volstaat reeds een EPM7032S of EPM7064S in een PLCC44 behuizing.

Dus je mijn vraag blijft:

- Wat is de reden waarom jullie nog niet gestart zijn met CPLD of FPGA ?
- Wat mag het kosten om te starten ( prijs range)
- Is er meer hulp nodig van andere om jullie op weg te brengen?
- Ja Free_electron is bezig met een goed boek te schrijven, dus Free.... doe een beetje vooruit hé.
- Is er hulp nodig bij de juiste keuze van de componenten om te starten ?

Frans

Ook de verkrijgbaarheid is het probleem voor PICs is er voti.nl en voor AVRs is er aavrs.nl maar ik weet geen webshop voor FPGA en CPLD waar je geen creditcard voor nodig hebt.

Om even je vragen te beantwoorden: Ik ben zelf nog nooit begonnen aan FPGA

reden: Ik weet niet eens wat het inhoud, waarvoor het gebruikt wordt, wat de voordelen zijn kortom ik weet helemaal niet wat FPGA is.

Wat het mag kosten om te starten, Als het net zoiets als een microcntroller en zoiets die functionaliteit heeft ligt de drempel ongeveer bij 50 euro.

hulp: Ja die is er zeker meer nodig.. schema's en dergelijke brengen me vaak op ideen

Kortom meer uitleg enzo over wat het is en waar je het voor kan gebruiken zouden mij miss de aanleiding geven om ermee te beginnen

Zit hem denk ik voornamelijk in de beschikbaarheid en verschillende packages. Een pic of avr vind je op elke straathoek en FPGA haast nergens. Ook kan je voor DIP, SOIC, SSOIC zelf thuis nog etsen maar voor die PLCCs, BGAs, TQFP of PQFP krijg je dat (haast) niet meer voor elkaar.

Verkrijgbaarheid is een groot probleem idd. Zeker Altera chips, je hebt digikey, buyaltera (=digikey) waar ze prima te bestellen zijn maar alleen met grote bestellingen handig. In Nederland heb je geloof ik alleen EBV en die levert vast niet aan particulieren. Ik heb ze nog nooit in een webshop in Nederland gezien. AVRs en PICs zijn overal te vinden.

Dan heb je ook dat het relatief onbekend is. FPGA en CPLD klinkt als iets wat alleen maar door de industrie gebruikt wordt (en gezien dit topic klopt dat ook wel). Er zijn gewoon weinig hobbyisten die daar mee bezig zijn en dus komt het ook minder onder de aandacht.

Informatie is nog een probleem. In verhouding met microcontrollers is er veel minder 'eenvoudige' informatie over te vinden. Altera heeft bergen informatie op de site staan maar sommige mensen hebben behoefte aan een tutorial om te beginnen. Verilog tutorials zijn er op zich wel redelijk alleen zijn er veel erg abstract en theoretisch. Je krijgt meteen alles van verilog te horen inclusief delays, system functions e.d. Terwijl er maar een relatief klein deel echt te synthetiseren is. Ook hoe de synthese werkt (hoe iets in verilog eruit ziet in hardware) wordt vaak totaal overgeslagen. Toen ik verilog begon te leren vond ik vooral de blocking assignments en het iteratieve karakter daarvan erg verwarrend. Hoezo iteratief? Dat bestaat toch niet in hardware lijkt me. Toen me duidelijk werd dat dit alleen om het gedrag ging en niet om de volgorde van uitvoering werd alles duidelijk.

De manier van denken is heel anders dan met software en dat kan een drempel zijn om het te leren. Zodra je doorhebt dat je hardware aan het programmeren bent wordt alles een stuk duidelijker. Veel mensen zijn bekend met software schrijven en dat maakt het makkelijker voor een microcontroller te kiezen.

Dan heb je ook nog de nodige hardware om het te programmeren. Daar is ook veel minder over te vinden dan met microcontrollers. Natuurlijk is er de byteblaster maar parallele poorten bereiken ook het eind van hun leven. Enige alternatief is dan een USB blaster kloon met dezelfde verkrijgbaarheids problemen.

Voor FPGA's zou je trouwens een controller kunnen gebruiken met eigen programmeersoftware. Je hebt dan geen JTAG maar hebt geen bijzondere hardware nodig om het te programmeren. Maar dan moet er wel iemand zijn die zoiets maakt.

Als laatste heeft misschien niet iedereen het ook echt nodig. FPGA's/CPLD's zijn heel krachtig maar veel mensen maken relatief eenvoudige projecten die ook prima met een microcontroller op te lossen zijn.

Ik wil zeker nog wel eens beginnen met FPGA/CPLD's! Maar ook voor mij geldt dat de verkrijgbaarheid en de benodigde hardware een probleem is. Ik heb eigenlijk nergens een mooi zelfbouw development board gezien ofzo. Ook zou ik graag willen hoe het zit met de uC-cores die er blijkbaar ook 'ingestopt' kunnen worden.
Plus dat ik aan een usb-programmer moet want mn laptop heeft geen parallelle poort meer, en ja dat kost weer veel geld voor iets waarvan je niet weet of het je gaat lukken.

Overigens heb ik een tijdje terug een experiment gedaan met de bitbang mode van een FT232RL om Max II's te programmerne. Je zou vrij goedkoop een printje kunnen maken met een Max II, een FT232RL, 3.3V regulator en een USB connector. Dan heb je een minimaal starters ontwikkel bordje die via USB te programmeren is. De seriele link kan je dan meteen ook gebruiken in je MAX II om met een PC te communiceren, en voeding kun je uit de USB poort halen.

Oké, beschikbaarheid is blijkbaar een probleem. Dit zou echter wel kunnen gedeeltelijk opgelost worden met een IA.

Het solderen is ook een probleem maar niet voor de PLCC versie. Daarvoor zijn voetjes die in een 2.54mm raster zitten die je gewoon net als een DIL kunt solderen.

Voor de grotere versie's is er een probleem die ikzelf ook niet kan oplossen omdat een PQFP, BGA, FBGA, TQPF enz niet zomaar te solderen valt, ook doormij niet. Maar als je ergens 50 euro kunt spenderen kun je die peggyback modules kant en klaar gebouwd en getest verkrijgen. Dan zit je direct al met heel ruime capaciteit, doorgaans met de MAX II reeks met 256, 540 od 1270 elementen en voldoende aansluitpinnen die naar buitengebracht zijn op 2.54mm pinnen aan de zijkant.

Wil je nog iets ruimer dan heb je direct de mogelijkheid een cyclone of cyclone II en daar heb je al snel 5700 elementen. Die zitten tussen 50 en 100 euro maar zijn dan ook al heel krachtig.

Ga je nog meer investeren dan is de beste prijs/kwaliteit verhouding een DE1 board van terasic. Ze verkopen die board aan kostprijs om de nieuwe gebruikers te helpen en dit is een industirieel board volldig afgewerkt met voeding, USB, enz. ik heb die gekocht een week geleden en doe daar nu al mijn hobby ontwikkelingen en testen op. Op 2 dagen was dit geleverd vanuit taiwan en gisteren was de volledige afrekening binnen inclusief invoer rechten en BTW en dit voor 189 euro. Hiervoor kun je nooit de componenten kopen. Maar goed dit is geen starterboard meer maar enkel voor degenen die echt willen werken en blijven werken met FPGAs.

FPGA en micro controller hoeven elkaar niet te bekampen. Het gaat hier niet noodzakelijk dat je dit met de ene of de andere niet kunt. Het zijn 2 verschillende technieken. Eens je beiden geproefd hebt kun je gemakkelijker kiezen welke oplossing je aan een bepaald probleem zult geven. Dus nee, het is geen oorlog tussen beiden systemen.

Een FPGA is eigenlijk niets anders dan een verzameldoos met allemaal digitale blokjes waarvan je de samenstelling zelf kunt schikken tot de meest ondenkbare schakeling zonder maar 1 draad te moeten leggen.

Nemen we even een basis schema:

http://users.skynet.be/fotoopa/fpga/loop_licht.png

Deze opstelling laat je toe heel wat te experimenteren, leren, want hierover gaat het in de eerste plaats. Leren kun je idd best met heel eenvoudige toepassingen, toepassingen waar je allerlei variaties kunt opmaken. in de leerfaze hoeven ze daarom niet direct een definitief project te zijn. later komt dit wel. Zie mijn controlbox voor het fotograferen van vliegende beestjes.

Met bovenstaand blokje kun je leren hoe tellers werken, hoe uitlezing van een 7 segment display werkt, hoe een eenvoudige encoder werkt die up of af trekt in funtie van de draairichting van de encoder. Kun je een timer maken, leer je verschillende delers te maken zoals uren minuten seconden. kun je looplichten laten werken. Dit allemaal voor heel weinig euros en weinig middelen. Zo een opstelling zou ik gewoon op gaatjes print maken, niet eens PCB nodig, hoewel dit zou mogen.

Op 1 februari 2007 14:37:25 schreef Nick Rongen:
Wat het mag kosten om te starten, Als het net zoiets als een microcntroller en zoiets die functionaliteit heeft ligt de drempel ongeveer bij 50 euro.

hulp: Ja die is er zeker meer nodig.. schema's en dergelijke brengen me vaak op ideen

Kortom meer uitleg enzo over wat het is en waar je het voor kan gebruiken zouden mij miss de aanleiding geven om ermee te beginnen

FPGA is kortgezegd, een programeerbare CPU, in dit ding kun je dus een andere CPU programmeren, denk aan een 6800 of Z80, als er nog ruimte binnen de FPGA is, kan er eventueel nog een video en/of geluids processor in geprogrammeerd worden.
Ontwikkelbordjes zijn v.a zo'n 100 Euri verkrijgbaar.

Ook de verkrijgbaarheid is het probleem voor PICs is er voti.nl en voor AVRs is er aavrs.nl maar ik weet geen webshop voor FPGA en CPLD waar je geen creditcard voor nodig hebt.

Ik meen dat er in Breda een Altera distributiepunt zo zijn. (Ik kan het mis hebben.)

[Bericht gewijzigd door legacy op ]

@Madwizard:
Mooi ontwerp voor die USB blaster. Maar ik denk dat dit niet het grote probleem is. Heel veel gebruikers hebben toch vandaag nog de parallele poort, voor deze is er geen probleem. Voor de anderen zal het ietjes meer kosten maar zoveel winst ga je ook niet hebben als je het zelf maakt tov die $50. Nu het grote voordeel van mijn terasic board is dat die USB blaster daarop zit en alle modes ondersteunt. trek je die waarde af van de board dan heb je maar 140 euro kostprijs voor zo een groots board!

Maak je echter die USB blaster zelf gewoon om ook de techniek te beheersen, dan is het een mooie zaak.

verkrijgbaarheid is iets moeilijker. eigenlijk niet waar want er is digikey , maar dan zagen ze over de kosten. koop 1 keer in de week gene frieten met stoverij van "'t kot" [ of wat er moet voor doorgaan. Van de meest van die stoverij valt niet na te gaan van wat voor soort beest het gemaakt is : " impossible to tell what it used to be"]

de grote drempel volgens mij is dat je HARDWARE ontwerp met ene fpga terwijl je SOFTWARe ontwerpt met ene cpu.
en zelfs al schrijf je verilog of vhdal het blijft hardware : in die zin dat er vanalles parallel gebeurt en dat je zelf moet zorgen dat alles synchroon blijft draaien intern. terwijl je dat bij ene cpu ( als je geen interrupt dribven of scheduled dingen gaat maken zoals multitaskers tenminste. maar ik denk dat je het aantal programmas op die PIC's wat interrupt driven (multitasking dan) werkt op 1 vinger kan tellen ... misschien zelfs op 2 vingers ( duim en wijsvinger van de zelfde hand varvan je de vingertoppen tegen elkaar brengt en zo het cijfer 0 vormt )

het is een andere manier van denken. ik zie dat regelmatig. als er een software ontwikkelaar iets moet doen op die fpga dan wordt hij knetter ... :

noob : 'maar allez' waarom is dat hier nu hoog , ik doe daar niks mee....

f_e: klopt maar je hebt en clock en als je daar niks doet is dat signaal hoog en gaat ide en daar flipflop aan

noob: .. aaaaarghhh , waarom draait dat ding niet sequentieel zoals ene processor ... en wat is een flipflop ? en waarom moet ik rekening houden met die clock ?

f_e: al eens een timing criticla routine gemaakt in assembler waar je moet weten hoe de cpu in elkaar steekt ?

noob: assembler ? waddisda ? iets nieuws , ik ken alleen 'c' ...

f_e : tjah ....

maar binnenkort gaat dat veranderen. nog een paar maanden geduld ...

Op 1 februari 2007 16:08:19 schreef free_electron:
maar binnenkort gaat dat veranderen. nog een paar maanden geduld ...

Dat zei je vorige maand ook al.

Maar hoe zit het met de bordjes van FPGA4Fun free welke zou je het best kopen voor bij jou boek, dan kan voor die bordjes een IA begonnen worden.

Op 1 februari 2007 15:34:48 schreef legacy:
[...]
FPGA is kortgezegd, een programeerbare CPU,

back to square one....

een CPU gelijkt op ene FPGA, als een modelautotje op een doos legoblokken.

met een cpu ( of modelautotje ) kan je ook spelen : deurtje open/dicht en 'broem broem'

met ene fpga maak je vandaag een autotje , morgen zet je er ene spoiler op , steek je er ene andere motor in en geeft het vleugels .. en voor je het weet heb je een ruimtestatino gemaakt. dat zie ik je met dat 'matchboxce' niet direct doen. dat blijf 'deurtje open , deurtje dicht'
met andere woorden je kan daar wel dingen mee doen maar een functie die er niet in zit kan je er niet in stoppen.

een fpga is een 'doos legoblokken' : een grote doos met allemaal flipflops en and en or en not poorten en daar brei je zelf mee wat je wilt. ( ook cpu's als dat moet )

stel met die cpu : dat ding heeft geen uart aan boord : je moet dan al een klets code gaan schrijven om dat te proberen emuleren. of je hebt ene snelle counter nodig ( die je niet in software kan emuleren omdat je cpu te traag is )

bij ene fpga pleur je dat erin. bij ene cpu zit je dan vast.

target voor het boek is mid dit jaar naar 3e kwartaal toe.

voor de bordjes : kzal eens een paar designekes posten hier ( soort 'brick' )
het bordje voor het boek is ofwel het platform van elektuur (voor de grote projecten) , ofwel een design wat ook bij elektuur zal te krijgen zijn ( minibordje met een straffe cpld op ). hoe dat bordje er komt uit te zien weten we nog niet ( het design is af , maar we moeten uitvlooien hoe we hem verkopen ) mijn idee is half fabrikaat : bordje met de chip opgesoldeerd. de rest zet je er zelf op ( ik wil de mensen het solderen van een tqfp144 besparen. )

der komt een epm1270 op ,ene ftdi245 chippie ( hoef je niet te installeren ) 8 led displays en 20 druktoetsen
het gedeelte met de leds en druktoetsen kan je afbreken.
et wordt een eurokaartje waarcan je de linker 4 centimeter af kraakt. daar zit de fpga en ftdi en een trits dip connectoren ( ziet er dus uit als een uit de kluiten gewassen DIL 80 ... ) zo kan idereen ermee aan de slag.
de rechterkant heeft de displays en druktoetsen en ander spul wat nuttig is om te 'spelen'
je kan dan 1 rij van de fpga module daar in prikken en de andere rij hou je nog over om een stuk gaatjes print op te steken.
ik post dit weekend wel eens een paar design layouts

board design is heel eenvoudig gehouden om kosten te drukken.

ik kan hier bij E-tek 5 eurokaarten ( dubbelzijdig gemwtalliseerd ) laten maken voor 20 dollar per stuk op 1 dag turnover time ...

[Bericht gewijzigd door free_electron op ]

Bwa ik vindt het juist leuk dat parallel werken. Daar loop ik bij een pic vaak bij vast. Je moet inderdaad wel beter nadenken bij een fpga hoe alles gaat lopen maar met wat test vectoren zie je toch al veel.

Ik leer het vooral via school want om thuis te beginnen, daarvoor wacht ik nog even op free electron zijn cursus.

[Bericht gewijzigd door Herman R. op ]

Op 1 februari 2007 16:08:19 schreef free_electron:maar binnenkort gaat dat veranderen. nog een paar maanden geduld ...

Doe maar snel verder met je boek. Het ontbreken hiervan is de voornaamste reden dat er zo weinig nieuwe kandidaten zijn voor FPGA toepassingen!

Dat je ook CPU's kunt integreren in die FPGA's dat is waar maar eigenlijk willen de software mensen altijd die kant op. Beter is het bij het begin zich eerst op de hardware eigenschappen te fixeren. Als je enkel een FPGA wilt om er een 8051 core in te steken ben je beter af met een origineel 8051. Voor grotere projecten zijn er idd goede cores om delen software en hardware samen te bundelen. Maar deze zullen niet voor starters zijn.

En die hogere taal zoals verilog of VHDL, wel sinds ik de raad van free_electron heb opgevolgd vliegen de projectjes hier massaal uit de ontwikkelings board!

Even een vraagje tussendoor, wat is eigenlijk het verschil tussen een CPLD en een FPGA ?

Heb hier de Reichelt kataloog voor me liggen en daar staan CPLD's in bijvoorbeeld de XC 9536-15 in 44 pins PLCC (kost €4.15) of de XC9572-15 ook 44 pins PLCC, kost €4.50

Dit zijn(vlgs. Reichelt) 5 volt typen.

Wat heb ik als beginneling nodig om hiermee aan de slag te kunnen, en wat kan ik ermee ?

een van de demos die ik ga geven met het boek ( op de elektuur module dan , die is groot genoeg )
is een 8051 met ram , rom , peripherie en nog ene nest ander spul die de intel basic interpreter loopt.

fpga aan de seriele poort en je hebt ene module die basic loopt waar je ene programa kan op schrijven ...

een programmeerbare component waarin een cpu is geprogrammeerd waar een programmeertaal op draait waarop een programma draait die door de gebruiker geschreven is (die bijvoorbeeld een eprom programmeert ...)

moet er nog 'progrmmeer zijn ?

ik heb een pic voor 1,75 :P en hier zijn heel erg veel voorbeelden voor te vinden en erg veel mensen die je kunnen helpen. Zelfde geld voor de AVR's. Waarom aan iets nieuws beginnen als het oude: goedkoper is, beter ondersteund is en prima aan je eisen voldoet?

grtz Bas

Op 1 februari 2007 16:24:15 schreef DC2PCC:
Even een vraagje tussendoor, wat is eigenlijk het verschil tussen een CPLD en een FPGA ?

Heb hier de Reichelt kataloog voor me liggen en daar staan CPLD's in bijvoorbeeld de XC 9536-15 in 44 pins PLCC (kost €4.15) of de XC9572-15 ook 44 pins PLCC, kost €4.50

Dit zijn(vlgs. Reichelt) 5 volt typen.

Wat heb ik als beginneling nodig om hiermee aan de slag te kunnen, en wat kan ik ermee ?

zoek ne keer op t forum , kheb daar al eens een epistel over gepost.

hedentendage : niet vele meer.
de interne architectuur is anders. maar voor user point of view : tzelfste.
voordele van cpld is dat de config rom erin zit , bij fpga is die extern.

cpld zijn kleiner ( minder flipflops en poorten)

CPLD = Complex Programmable Logic Device ( de overtreffende trap van een PLD (denk aan PAL en GAL)
FPGA ( field programmable Gate array ) veeeeeeeel meer poorten.

en voor de rest van de geschiedenisles : lees mijn boek alst uitkomt daar staat ene gans hoofdstuk over
ULA,UMA,PAL,GAL PEEL,PLD,CPLD, FPGA , MACH , ORCA en nog een trits anderen.
de eerste user programmable PLD was van signetics by the way. en daarnaa heeft MMI de PAL uitgevonden. ik heb hier originele MMI PAL16R4 liggen ( 4 flipflops ! ). gekocht uit de rommeldoos bij fry's . splinterniew voor halve dollar. fabrikagedatum 1981. die dingen kostten toen 4 dollar !

@basz. je kan dat niet vergelijken. het is iets compleet anders. en ja je 1.75 euro PIC kan je ook leuke dingen mee doen , maar maak eens een 8x8 multiplier ( 2 keer 8 bits in en 1 keer 8 bits uit , dus 24 pinnen) en we gaan eens zien hoe snel die PIC is ( als ie al poten genoeg heeft )
ik kan degelijke multiplier in de simpelste, goedkoopste CPLD laten blazen boven de 200 mips ... als die PIc er 1 haalt zalt heeeeeeel veel zijn.

maak eens dat voorbeeldje van fotoopa in een PIC ( die led looplichtjes die hij hier gemaakt heeft. je zal daar serieus wat werk aan hebben. in een cpld i dat op 3 minuten geklonken.

gisteren kwam ene collega/hobbyist met een leuke vraag. hij wou nixie buizen sturen vanuit een cpu. om zo ene klok te maken die de NMEA stream interpreteert van zijn GPS ontvanger. maar zijn cpu heeft niet genoeg pinnen. dus hij kwam iets vragen over schuif register ( 74595 )
na 15 minuten was hij dik kontent met zijn EPM7128 waarin ik gans de nixie bollenwinkel gemapt heb. alle register , de 1 to 10 decoders , en nog ene nest ander spul zoals een PWM op de uitgang waarmee hij de nixies kan 'dimmen'
en voor zijn klein cputje is het werk nu een stuk lichter.
gewoon de getallen als bcd doorsturen. de cpld heeft een 4 bit databus en een 3 bit address bus en ene write strobe.

hij ging er nu nog zelf wat logica bijzetten zodat ie de cpu kan 'afzetten' en de klok blijft lopen ( de counters zitten in de fpga en je kan schakelen tussen external display drive of internal clock ) zo spaart ie stroom en hoeft zijn gps niet constant op te staan )

een cpu is ene chip waar je ene programma in stopt. een cpld is je ene chip waarin je zelf ene schema stopt ( en als dat shcmea een cpu is kan je er dan nog ene programma laten op lopen )

het heeft niks met prijs te maken.
je moet het zien als : een cpld of fpga is het dichtste waar je als hobby ( en voor 99.9% ook als professioneel ) kan komen om zelf ene chip te ontwerpen. echt 'in de zandbak' spelen is slechts voor weinigen toegankelijk gewoon omdat de kostne te hoog zijn , en het niveau va specialisme te hoog is. zelfs ik waag mij daar (zelden of) nooit aan. ik maak af en toe wel eens een circuit met 'blokken' wat op silicium terecht komt dan. mar das analoog aan : je pakt wat ttl ictjes en wat opamps en zet een circuit in elkaar ( met zijn beperkingen dan , want veel dingen die je op ene print doet moet je anders in elkaar steken op silcium . als je 2 transistoren te dicht op elkaar zet in chip krijg je crosstalk , of andere narigheden, en er zijn geen weerstanden van '10k' of '1k'. er zijn alleen weerstandsverhoudingen. weerstanden worden ook niet uitgedrukt in ohms maar in 'units'. als je ene spanningsdeler nodig hebt van 1:4 zet je boven een weerstand die 1 unit lang en 1 unit breed is. en lang onder ene die 1 uit lang is maar 3 units breed.)

'echt designen' op transitor-silicium niveau is nog een ander paar mouwen. begin maar hoor .ik heb hier mos transistor nodig die 40 volt kan houden , zo snel is ,en een Vt heeft van zoveel . das gene elektronica maar maar fysica , en als je de fysica uitgevlooid heb kun je gaan zien of het wel gaat compatibel zijn met de scheikunde die gebruikt wordt om de transistor te maken ...daar begin ik helemaal niet aan.

een 'process library' ( de bibliotheek met duizenden getestte componenten , en we spreken nu over transistoren , weerstanden en condensatoren ) is verschrikkelijk kostelijk om te maken : je moet de fysica en de scheikunde beheersen en de boel reproduceerbaar kunnen maken. dat is echt expert werk.

[Bericht gewijzigd door free_electron op ]

Op 1 februari 2007 16:25:12 schreef basz:
ik heb een pic voor 1,75 :P en hier zijn heel erg veel voorbeelden voor te vinden en erg veel mensen die je kunnen helpen. Zelfde geld voor de AVR's. Waarom aan iets nieuws beginnen als het oude: goedkoper is, beter ondersteund is en prima aan je eisen voldoet?

grtz Bas

Omdat een pic heel veel zaken niet kan die een CPLD/FPGA wel kan! Het gaat ook niet over prijs maar om technologie. Eens je iets meer (sneller) wilt doen is het gedaan met de PIC's. En we spreken dan nog niet eens van ietjes snelle dingen.

Op 1 februari 2007 16:25:12 schreef basz:
ik heb een pic voor 1,75 :P en hier zijn heel erg veel voorbeelden voor te vinden en erg veel mensen die je kunnen helpen. Zelfde geld voor de AVR's. Waarom aan iets nieuws beginnen als het oude: goedkoper is, beter ondersteund is en prima aan je eisen voldoet?

Ja zo dacht ik er tot voor kort ook over, maar het is wel gaaf om ene uC en de randlogica eromheen in ene chip te hebben. Het schijnt dat een FPGA heel flexibel is, en als het starten niet te ingewikkeld is wil ik het zeker gaan proberen. Maar ja dan de volgende vragen: FPGA of CPLD? Welk type? Welke programmer? Welk board? enz.
Het liefst alles zelfbouw, maar wat en waar?
* SMD lover ziet door de bomen het bos ni meer ;(

@Madwizard, mooie programmer!

Zeg free rond wanneer is uwen boek af?

Op 1 februari 2007 16:08:19 schreef free_electron:
verkrijgbaarheid is iets moeilijker. eigenlijk niet waar want er is digikey , maar dan zagen ze over de kosten. koop 1 keer in de week gene frieten met stoverij van "'t kot" [ of wat er moet voor doorgaan.

€18 (plus €13 als de totale bestelling onder de €100 blijft), dat is een duur frietje met stoof...

Die programmer die ik gemaakt heb is overigens geen USB blaster, het werkt niet direct met Quartus samen. Quartus kan naast de standaard programmer files (lees: 'firmware') ook een JAM/STAPL file genereren. Dat is een soort programmertaal opzich (er is een tekst en een bytecode versie van) die instructies bevat om de MAX II (en andere devices ook trouwens) te programmeren. De player (interpreter) voor deze files heeft Altera online staan met code erbij. Ik heb deze code aangepast zodat deze de (synchrone) bitbang mode gebruikt van de FT232R. Dat klinkt traag maar met m'n eerste test (kleinste MAX II) was het ongeveer even snel als met een USB blaster kloon.

@SMD lover: Met een CPLD beginnen is het makkelijkst omdat die intern flashgeheugen hebben en je dus niet nog een config geheugen nodig hebt. MAX II is een leuk beginpunt, al vrij krachtig voor een CPLD, maar grote CPUs e.d. integreren ga je daar niet mee halen. Ter vergelijking: de kleinste MAX II heeft 240 logic elements, de kleinste cyclone 2 (FPGA) heeft er 4608.

Als programmer kun je de byteblaster nemen, als je een parallele poort hebt. En je kunt mijn ding ook proberen als je een FT232 hebt liggen en met een MAX II begint (als je wilt heb ik er trouwens nog wel een MAX II voor je, tis aleen wel de versie die zowel 3.3V als 1.8V nodig heeft(GT ipv T)).

Het grootste probleem is om een chip op een drager printje te maken met een TQPF of dergelijke behuizing. Moest iemand zich geroepen voelen om zo een klein printje te maken waar een MAX II of cyclone II opstaat en gesoldeerd is met aan de buitenzijde de I/O pinnen op 2.54mm raster dan kan iedereen zoiets gaan gebruiken op een eigen carrier board. Die kleine drager kan in de meeste gevallen met dubbel layer pcb opgelost worden, dan heb je nog een beetje ground voor de snelle signalen. Hoogstens nog de lokale voedingsregulator erop en klaar is kees. Een MAX II 1270 versie zou al heel veel experimenten toelaten en er moet maar 1 type chip gekocht worden.

Het ontwikkelings board van Elektuur vind ik spijtig genoeg veel te duur, zeker als je dit vergelijkt met het veel krachtiger ontwikkelings board van terasic ( 20 K elementen) en vooral de multilayer board is echt proffesioneel wat je niet van het elektuurboard kunt zeggen ( en die is bijna 3x duurder).