Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

FPGA algaja.

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    FPGA algaja.

    Tere.

    Seoses möödunud kokkutulekuga sihuke küsimus. Oleks soov saada selgeks FPGA de programmeerimine. Millest peaks alustama ja milliseid vahendeid kasutada. On olemas www.digilentinc.com poolt toodetud Basys plaat ja sellega kaasas olevad demod on jooksutatud. Proovisin ka oma käe peal loogikaplokkidest miskit kokku joonistada aga vähegi suurema asja puhul kasvab see kiiresti üle pea. Tean, et veel on olemas sihukesed keeled nagu vhdl ja verilog. Kumba neist proovida tasub? Ja kas on olemas mingeid häid materjale algajale internetis, või häid raamatuid. Need mida netist leidsin ja lugeda proovisin tekitasid rohkem küsimusi, kui andsid vastuseid. Openchip'i ajakirjad tunduvad ka rohkem edasijõudnute värk olema.
    Lugupidamisega
    Ank

    #2
    Vs: FPGA algaja.

    Esmalt postitatud Ank poolt
    Tere.

    Seoses möödunud kokkutulekuga sihuke küsimus. Oleks soov saada selgeks FPGA de programmeerimine. Millest peaks alustama ja milliseid vahendeid kasutada. On olemas www.digilentinc.com poolt toodetud Basys plaat ja sellega kaasas olevad demod on jooksutatud. Proovisin ka oma käe peal loogikaplokkidest miskit kokku joonistada aga vähegi suurema asja puhul kasvab see kiiresti üle pea. Tean, et veel on olemas sihukesed keeled nagu vhdl ja verilog. Kumba neist proovida tasub? Ja kas on olemas mingeid häid materjale algajale internetis, või häid raamatuid. Need mida netist leidsin ja lugeda proovisin tekitasid rohkem küsimusi, kui andsid vastuseid. Openchip'i ajakirjad tunduvad ka rohkem edasijõudnute värk olema.
    kahjuks sulle 100% oigeid vastuseid pole

    VHDL vs verilog

    VHDL == Ada (Modula)
    Verilog == C
    koodi stiili suhtes

    molemal omad head ja vead, verilog on kompaktsem (vahem klahve vajutada vaja) aga jne

    saab (ja peab voi tuleb) kasutada koike segamini, enamik
    FPGA softe tunnistab "mix-lang" st vhdl-verilog segamini
    sinna vahele skeemi juppe ja core generaatori asju, jne

    ma ise soovitaks eelistada VHDL-i, aga kui oled vaga suur
    C sober void ka verilog valida.

    aga kuna netist leiab vaheldumisi vhdl/verilog ei tohiks
    kumbagi karta, neid saab kasutada "black box" ina
    esialgu voidki nii teha et top level on skeem kus sa
    verilog/vhdl mooduleid kokku uhendad.

    minu ajakirjad on jah siiani suht advanced olnud kuigi seal on
    ka lihtsaid projekte vahel sees (ok lihtsad mulle..)

    aga palun raagi mis laadi asju/projekti saa proovida tahaks
    ma hea meelega aitan

    netis on toesti palju, aga nagu alati on sellist mida lihtne kasudata
    ja arusaadav ja dokumenteeritud mitte nii lihtne leida

    hm, akki peaks oma ajakirjas tegame rubriigi "lihtsad FPGA projektid" ?
    jama on see minu jaoks on koik lihtne (olen natuke inverter selle koha pealt)

    Antti
    PS mul on yks FPGA projekt kyll mis sobiks algajale, pane yks tavaline
    LED kahe FPGA pin vahele ja tee kahe-poolse kommunikatsiooni moodul
    see tootab kyll, ma natuke mangisin, Altera kodu lehelt leiad natuke
    juttu kuidas seda teha. et siis yks tava LED on saatja ja vastuvatja

    Comment


      #3
      Vs: FPGA algaja.

      Krt ma soovitaks ikka VHDL just seetõttu et see EI OLE C sarnane. Tihtipeale tekib verilogis tunne nagu kirjutaks mikrokontrollerile programmi ja see ei ole hea..

      Comment


        #4
        Vs: FPGA algaja.

        Esmalt postitatud KaruTEC poolt
        Krt ma soovitaks ikka VHDL just seetõttu et see EI OLE C sarnane. Tihtipeale tekib verilogis tunne nagu kirjutaks mikrokontrollerile programmi ja see ei ole hea..
        jah mina ka tegelikult, peamine pohjus oleks kyll see et
        "parameter passing" on parem, sobib paremini suure SoC systeemide
        jaoks kus ilgelt librarisid parameetriseeritaks

        kui Xilinx EDK eelkaija nimega V2PDK (Virtex 2 platform development kit)
        oli 100% verilog, siis ajapikku tosteti enami EDK IPisid VHDL ymber
        no neil laks kyll selleks yle viia aasta ja vahepeal oli kammi kui palju.

        ja VHDL saab toesti ilusat kirjutada kuigi tahab vaadata kuidas
        siis voib LEON-3 source browsida (kahjuks vist jalle natuke mitte
        algajatele, aga vaadata voib ikka, naide heast koodist VHDLis)

        aga jah ESIMENE asi mida unustada on C ja microcontrollerid,
        FPGA EI OLE PROTSESSOR, (kui temasse soft proset pole pandud)

        kui C koodis min latency pin copy

        ESIMENE ASI MEELDE JATTA!

        // C, MCU kood:
        // for min latency INT must be disabled
        // utilization
        // <1% of MEM
        // 100.00 of CPU time
        // system clock must be running
        // latency, time sliced(jitter in clock raster), >3 system clocks
        while (1) {
        set_pin( read_pin() );
        }

        //FPGA, VHDL
        // 0% MEM
        // <0.01% of LOGIC resources
        // 0% of "processor time"
        // latency FIXED (no clocked jitter) <10ns typical
        --
        outpin <= inpin;
        --

        tundub et paljud kes tahavad FPGA uurida seda ylaltoodud
        selgitust selgeks ei saagi, ikka tahavad teha asju nagu

        wait for 100 ns; -- VHDL ok, aga ainult SIMULATSIOONIS!

        ja printf() on muidugi ka lemmik asi mida ikka proovitakse
        VHDL koodi sisse panna

        Antti

        Comment


          #5
          Vs: FPGA algaja.

          Ise alustasin xilinx kividega kuna LPT kabla lihtne teha ja kive ka siis oli.
          Spartan seeria kive saab lõpmata arv progeda.
          Kui plaadil ka veel prose saab sealt kaudu laadida mis annab võimaluse yhe flashimisega uuendada prose ja FPGA softi.

          Alustasin skeemiga, lihtsad PWM jne asjad.
          Siis vaatasin verilogi ja VHDL vahel, nagu karu juba mainis liiga C sarnane, kui C-d ei proge fine aga muidu segi nagu pudru ja kapsad. Seega VHDL.
          Simulatsioon on kaka, ei kasuta yhtegi simulaatorit sest julgen väita et ykski ei tööta nagu originaal asi, igal omba bugid ja kiiksud. Isenesest FPGA on tore asi kui vaja teha kindlat lihtsat taski ja kiiresti. Minu jaoks kuulub asi ikka prose lisavarustusse, see et sinna sisse saab prose ajada see on juba mõnes mõttes ressursi raiskamine.
          FPGA puhul on soovitav olla tuttav loogika kividega. FPGA on nagu karbitäis 74HC seeria kive mida saad softiliselt kokku laduda.



          Oskuste poolest ei ytle et pro, pigem ka algaja.
          Includeda faile ei oska(pole piisavalt vajadust olnud) teen kõik yhes suures failis.
          Vahel on probleeme erinevate asjade syncimiseganäiteks: >2 async suhtlus liidest ja dual port rami pole.
          Mapin pinne käsitsi texti failides (UCF).


          Kui skeem selge siis tee näiteks skeemis mõni PWM ledi vilgutaja.
          Tee sama asi näiteks VHDL-is.
          Modelleerimises ja tootmises kehtivad:
          1. Avariikindel vooluring lühistab kõik teised.
          2. Transistor, millel on kiiresti toimiv kaitse, säästab kaitset, sulades kõigepealt ise.

          Comment


            #6
            Vs: FPGA algaja.

            Esmalt postitatud openchip poolt
            ...
            hm, akki peaks oma ajakirjas tegame rubriigi "lihtsad FPGA projektid" ?....
            Vat ma loeks küll huviga. Oli kunagi 1 FPGA (vist küll CPLD aga ma loll ei tee neil vahet...) projekt mis jäigi seisma kuna ei osanud näidiskoodi oma vajadustele ümber mätsida.
            Tuli meelde Tipis õppimise aeg ja programeerimise aine (PL/1 keel) kus ..no mitte millelegi pihta ei saanud. Eksami kukkusin läbi...
            Et kui säärasele dumb-notjuuserile midagi kirjutatakse, on see vääga meelepärane tegu
            - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
            - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

            Comment


              #7
              Vs: FPGA algaja.

              ma loeks ka huviga.
              ..ja miks oleks vaja FPGAsse proset teha ? Proset on inimesel vaja tavaliselt selleks, et seal peal aplikatsiooni jooksutada. ..aga aplikatsiooni saab ju ka kohe FPGAsse teha... milleks peaks seda keerulisemalt tegema ?

              ..kas PLD (lattice ispLSI1016 näiteks mul siin) on algeline FPGA ?

              (Ahjaa.. Kas selle teema jaoks ole Mikroprotsessorite alafoorum sobivam koht ? )

              Comment


                #8
                Vs: FPGA algaja.

                Tere.

                Aitähh vastamast. Et siis VHDL tulgu ja C mingu. Aga kas Selle VHDL'i kohta mingit algõpetuse värki kah netis liigub. Seoses mitte väga masuga olen nõus isegi raamatute peale mõistlikke summasid kulutama, kui keegi teaks mõnda head raamatut soovitada.
                Sihukese lihtsama näpuharjutusena tahaks oma pisikese protsessori kivisse kirjutada Mul selle kohapeal jäigi katsetamine kunagi pooleli. 8 bitise ALU sain loogikaplokkidest valmis ja edasi läks keeruliseks. Probleemiks oli ka see, et ei suutnud otsustada milliseid käske oleks sinna veel peale loogikatehete ja liitmise vaja. Mingisugune tingimuslik siire kindlasti. Aga käske peaks olema alla 10-ne. Ja kõike seda sünkroonis takti järgi käima saada on loogikaplokkidena keeruline. Peaks kõrgemat abstraktsioonitaset kasutama. Selleks siis olekski mingi sihuke kõrgem keel.
                Üle tüki aja kaevasin oma plaadi kah välja ja mõtlesin, et ühendan oma läpaka külge, aga võta näpust. Soft on aja jooksul kaduma läinud. Mõtlesin siis, et muudkui kodulehelt tirima. Seal on aga seda pe 6GB jagu ja mina oma kõuga ilmselt jäängi ootama. Seal oli võimalus nagu väiksemate osade kaupa kah sikutada aga äkki keegi tark oskab nõu anda milliseid neist oleks alguseks vaja.
                Lugupidamisega
                Ank

                Comment


                  #9
                  Vs: FPGA algaja.

                  Esmalt postitatud juxx poolt
                  ma loeks ka huviga.
                  Aga miks üldse on vaja FPGAsse proset teha ? Proset on inimesel vaja tavaliselt selleks, et seal peal aplikatsiooni jooksutada. ..aga aplikatsiooni saab ju ka kohe FPGAsse teha... milleks peaks seda keerulisemalt tegema ?

                  ..kas PLD (lattice ispLSI1016 näiteks mul siin) on algeline FPGA ?
                  "ressursi hind" on proses ja FPGA's erinev..

                  funktsioon mis votab 1K prose malu voib "maksta" FPGA ressursidena
                  (kui loogikas teha) >10$, sel juhul on lihtsam kasutada 3$ ressurrsi
                  et panna FPGA sisse pisi prose.. yks naide

                  samal ajal asju mida prose halvasti teeb, tuleb jalle FPGA sisse
                  otse-loogikast panna

                  1016 on klassikaline CPLD (mit GAL bloki uhes kivis) mul oli neid
                  kah oma 100 tykki yle aga viskasin minema koik

                  Antti

                  Comment


                    #10
                    Vs: FPGA algaja.

                    Esmalt postitatud Ank poolt
                    Tere.

                    Aitähh vastamast. Et siis VHDL tulgu ja C mingu. Aga kas Selle VHDL'i kohta mingit algõpetuse värki kah netis liigub. Seoses mitte väga masuga olen nõus isegi raamatute peale mõistlikke summasid kulutama, kui keegi teaks mõnda head raamatut soovitada.
                    Sihukese lihtsama näpuharjutusena tahaks oma pisikese protsessori kivisse kirjutada Mul selle kohapeal jäigi katsetamine kunagi pooleli. 8 bitise ALU sain loogikaplokkidest valmis ja edasi läks keeruliseks. Probleemiks oli ka see, et ei suutnud otsustada milliseid käske oleks sinna veel peale loogikatehete ja liitmise vaja. Mingisugune tingimuslik siire kindlasti. Aga käske peaks olema alla 10-ne. Ja kõike seda sünkroonis takti järgi käima saada on loogikaplokkidena keeruline. Peaks kõrgemat abstraktsioonitaset kasutama. Selleks siis olekski mingi sihuke kõrgem keel.
                    Üle tüki aja kaevasin oma plaadi kah välja ja mõtlesin, et ühendan oma läpaka külge, aga võta näpust. Soft on aja jooksul kaduma läinud. Mõtlesin siis, et muudkui kodulehelt tirima. Seal on aga seda pe 6GB jagu ja mina oma kõuga ilmselt jäängi ootama. Seal oli võimalus nagu väiksemate osade kaupa kah sikutada aga äkki keegi tark oskab nõu anda milliseid neist oleks alguseks vaja.
                    tead ei ole vaja raamatuid osta, seal raagitakse enamasit hasti palju
                    seda mida pole kohe vaja, ja oledki sassis

                    aga, hm mul on yks pooleli jaanud 8 bitise prose VHDL kood mis on
                    kirjutatud VAGA lihtsas VHDL, pisike kompilaator on ka test proged
                    jooksevad ka, natuke peaks kaske juurde tegema, ja rohkem test
                    programme, akki tahad uurida katseda?

                    ISE download on jah 6GB
                    koike pole vaja, aga ara looda et web install tootab, katsu
                    see 6gb koik katte saada

                    Antti

                    Comment


                      #11
                      Vs: FPGA algaja.

                      Web Pack ISE on kiiksudega näljane asi.
                      Esiteks kruvi maha xp skinn classic peale. Mingul olematul põhjusel annab see muidu imelikku käitumist.

                      Rahuga arvesta et compile time P3 cellu peal umbes 10 minta.
                      2GHz AMD, 3G ram, saab hakkama alla minuti.
                      Ma ise loobusin uuest versioonst ja kasutan 8.x, see miski 2G installer ja liigub nobedamalt. Nende FPT-st sai vist sikutada ka vanemat rev-i.
                      Modelleerimises ja tootmises kehtivad:
                      1. Avariikindel vooluring lühistab kõik teised.
                      2. Transistor, millel on kiiresti toimiv kaitse, säästab kaitset, sulades kõigepealt ise.

                      Comment

                      Working...
                      X