Felt-programmerbarhed - Field-programmability
Det siges, at en elektronisk enhed eller indlejret system er feltprogrammerbar eller på plads programmerbar, hvis dens firmware (gemt i ikke-flygtig hukommelse , såsom ROM ) kan ændres "i marken" uden at adskille enheden eller returnere den til dets producent.
Dette er ofte en ekstremt ønskelig funktion, da det kan reducere omkostningerne og omdrejningstiden til udskiftning af buggy eller forældet firmware. For eksempel kan en digitalt kamera kunne leverandør distribuere firmware understøtter et nyt billede filformat ved at instruere forbrugerne til at hente en ny firmware billede til kameraet via et USB- kabel.
Historie
Når en enheds firmware gemmes i maske-rom eller en engangsprogrammerbar PROM, kan den ikke ændres uden fysisk at erstatte det integrerede kredsløb , så en sådan enhed kan ikke være feltprogrammerbar i moderne forstand. Sletbar PROM- baseret firmware kan slettes og omprogrammeres, men kun efter langvarig eksponering for en højintensiv ultraviolet lyskilde.
Feltprogrammerbare enheder var således ikke praktisk, før opfindelsen af EEPROM og flashhukommelse i 1980'erne. Tidlige EEPROM'er kunne kun omprogrammeres med dyre, dedikeret programmør hardware , da de krævede høje spændinger (10-20 V , i forhold til typiske 3-5 V logiske niveauer ), og der var ingen standard programmering protokol ; som et resultat blev feltprogrammering for det meste udført af professionelle teknikere og serviceteknikere. Fra begyndelsen af 2000'erne var mange enheder imidlertid udtrykkeligt designet til at være feltprogrammeret af almindelige forbrugere. Flere udviklinger har gjort dette muligt:
- Moderne EEPROM og flashenheder indeholder interne ladepumper, der eliminerer behovet for høje spændinger.
- De fleste forbrugere har adgang til personlige computere , som kan udføre vilkårlige programmeringsprotokoller.
- Allestedsnærværende Internet adgang giver en bekvem måde til hurtigt at distribuere firmware billeder.
Standardprotokoller til programmering af ikke-flygtige hukommelsesenheder er fremkommet. F.eks. Kan JTAG bruges til at læse og programmere EEPROM og Flash-chips i mange forbrugerelektronik- enheder. Mange sådanne enheder inkluderer JTAG-headere internt til fabriksprogrammering og kvalitetskontrol , selvom der ikke er udsat et eksternt stik i det færdige produkt.
Programmerbar logik
I 1980'erne blev der indført programmerbare logiske enheder (plds) såsom PAL'er , PLA'er og CPLDs . Dette er integrerede kredsløb, der kan implementere næsten vilkårlige digitale logikfunktioner baseret på firmwarelignende information, der er gemt i ikke-flygtig hukommelse.
Således kan enheder, der indeholder PLD'er, betragtes som feltprogrammerbar hardware , medens EEPROM og flashhukommelse fungerer som lagring for feltprogrammerbar software .
Felt-programmerbare gate-arrays (FPGA'er) blev opfundet i 1984 og er den mest avancerede form for programmerbar logik, der er tilgængelig i dag. Disse enheder med høj kapacitet kan implementere ekstremt kompleks logik, såsom mikroprocessorer eller digitale signalprocessorer . I dag er de en stor hjælp til udvikling og hurtig implementering af digitale elektroniske enheder. FPGA'er bruges ofte til prototyping af hardwarekonstruktion og hardwareacceleration .
Hobbyist muligheder
Mange forbrugerelektroniske enheder (inklusive MP3-afspillere , bredbåndsrutere , mobiltelefoner og digitale kameraer) indeholder indlejrede systemer baseret på generelle mikroprocessorer og mikrokontrollere . De fleste af disse enheder indeholder feltprogrammerbare komponenter, der kan findes og få adgang til af kyndige hardware hackere . Feltprogrammering giver hobbyister mulighed for at erstatte en enheds firmware med en ny kode, der kan ændre eller udvide dens muligheder.
Talrige onlinesamfund har dukket op omkring enheder, der viser sig at være særligt befordrende for en sådan ændring. For eksempel har iPodLinux- og OpenWrt- projekterne gjort det muligt for brugere at køre fuldt udstyrede Linux-distributioner på henholdsvis deres MP3-afspillere og trådløse routere.
Selvom hobbyprogrammeres feltprogrammering teoretisk er muligt i praktisk talt ethvert indlejret system i dag, hæmmes forsøg på at ændre forbrugerenheder ofte i praksis af mangel på dokumentation for hardwaren .
Se også
- Firmware
- JTAG
- Feltprogrammerbar gate array (FPGA)
-
Feltprogrammerbar analog array (FPAA) - ligesom FPGA men med analoge signaler
- Feltprogrammerbare radiofrekvens -enheder
eksterne links
- UsbAudioHowTo : en guide til konvertering af en trådløs router til en internetradioafspiller fra OpenWrt- projektet