Typen schrijfbeveiliging en het programmeren ervan · Transceivers en vormfactoren · Optische transceivers en kabels · Documentatie · CodingBox
CodingBox Documentatie

Typen schrijfbeveiliging en het programmeren ervan

De vormfactor vertelt u waar de velden van een module staan. Een tweede, onafhankelijke factor bepaalt of u ze kunt wijzigen: de manier waarop de module het geheugen tegen schrijven beschermt. Fabrikanten gebruiken vijf methoden; elk vraagt om een eigen programmeermethode. Als u het type eerst herkent, voorkomt u uren mislukte schrijfpogingen.

De vijf beschermingstypen

#TypeHoe u het herkentHoe u het programmeert
1OnbeveiligdAccepteert schrijfbewerkingen meteenRechtstreeks schrijven — maar met een trage klok
2Hardware-schrijfbeveiligingspinBlijft alleen-lezen wat u ook probeert; geen wachtwoord helptStuur de WP-lijn aan tijdens het schrijven
3Wachtwoord (firmwarecontroller)WRITE FAIL totdat u een wachtwoord invoertVoer eerst het wachtwoord in op 0x7B
4Tijdelijke opslag + opslagopdrachtSchrijfbewerkingen lijken te slagen, maar verdwijnen na een stroomcyclusStuur de opslagreeks van de fabrikant
5GecombineerdVereist een fabrikant-specifieke I/O-reeks om te ontgrendelenProgrammeringsalgoritme van de fabrikant (scripts)

1. Onbeveiligd

De EEPROM kent geen schrijfbeperking. De praktische beperking is timing: betrouwbaar programmeren vraagt doorgaans om een tweedraads klok van ongeveer 1 kHz — ongeveer tien keer langzamer dan de normale leessnelheid. Bij standaardsnelheid mislukken schrijfbewerkingen soms en blijven pagina's gedeeltelijk beschreven achter. Een verwante aanwijzing: bij sommige eenvoudige modules leest alleen A0h zonder fouten, terwijl A2h fouten teruggeeft.

2. Hardware-schrijfbeveiligingspin

De WP-pin van de EEPROM is via een weerstand met de voeding verbonden, waardoor de chip vergrendeld opstart. Om te ontgrendelen trekt u de WP-lijn tijdens het schrijven via een pad met een lagere impedantie naar massa. Alleen een programmerboard dat die lijn kan aansturen, kan dat doen. Software alleen komt niet langs dit type: de module blijft alleen-lezen na stroomcycli en wachtwoordpogingen.

3. Met wachtwoord beveiligd (firmwarecontroller)

Volgens SFF-8472 reserveert het A2h-blok een wachtwoordgebied van 7 byte vanaf offset 0x7B; de meeste modules gebruiken een 4-byte wachtwoord. Een controller in de module vergelijkt wat daar is geschreven met de opgeslagen waarde en ontgrendelt EEPROM-schrijfbewerkingen pas daarna. Zonder het wachtwoord geeft elke schrijfbewerking WRITE FAIL terug.

  • Voer het juiste wachtwoord in en schrijf daarna.
  • Als het onbekend is: zoek met een woordenboekzoekopdracht in bekende fabrikantwachtwoorden (zie EEPROM-hercodering voor veelgebruikte waarden) of vraag het de fabrikant.
  • Deze controllers zijn gevoelig voor kloksnelheid en voor de tussenruimten tussen blokken; nog een reden om langzaam te programmeren.

4. Tijdelijke opslag met een opslagopdracht

Schrijfbewerkingen komen in vluchtig geheugen terecht. Alles lijkt goed te gaan, totdat de module een stroomcyclus doorloopt en de oude code terugkeert. De firmware van de fabrikant heeft een expliciete opslagopdracht nodig, een bedrijfseigen bytevolgorde, om de tijdelijke image naar permanente opslag vast te leggen. Geen standaard definieert deze opdracht; iedere fabrikant heeft een eigen reeks, vastgelegd als een script.

5. Gecombineerde bescherming

De nieuwste modules combineren meerdere mechanismen: hardware-WP en een wachtwoord en een opslagopdracht en operationele voorwaarden. Zo moet een module bijvoorbeeld in low-power mode staan voordat hij schrijfbewerkingen accepteert. Dit is gebruikelijk bij modules met recente SFF-8472-revisies die 256+ pagina's boven A2h-offset 0x80 aanbieden, en bij CMIS-modules. Programmeren vereist het algoritme van de fabrikant, dat meestal met klanten met grote afnamevolumes wordt gedeeld.

Het type bepalen

  1. Probeer gewoon te lezen: leest A2h zonder fouten? (Type 1 faalt hier vaak.)
  2. Probeer één byte naar een onbeveiligd veld te schrijven. Meteen succes → type 1. WRITE FAIL → type 3 (of 5). Stille schijnbare voltooiing die na een stroomcyclus verdwijnt → type 4.
  3. Voer bekende wachtwoorden in. Nog steeds alleen-lezen → type 2 (hardware) of type 5 (gecombineerd).
  4. Controleer de vormfactor en de specificatierevisie — CMIS en SFF-8472-modules met late revisies zijn doorgaans type 5.

In CodingBox

  • Wachtwoordinstellingen — tabeladres, wachtwoordadres (0x7B) en waarde stelt u in bij Beveiligd geheugen en wachtwoorden; bekende wachtwoorden worden uit de database toegepast.
  • Scripts — de programmeerscripts van CodingBox bevatten opslagreeksen en ontgrendelalgoritmen van fabrikanten voor typen 4 en 5.
  • Byte voor byte schrijven en een trage klok voor modules die bij standaardsnelheid falen.
  • Hardware-WP wordt door het programmerboard geregeld, niet door software.
  • Elke lezing wordt vóór het schrijven opgeslagen in de Code database, zodat een mislukte poging altijd herstelbaar is.

Symptomen op de werkbank — WRITE FAIL, een schrijfbewerking die verdwijnt, een geweigerd wachtwoord — en wat u in elk geval doet: EEPROM-lees- en schrijffouten.

Waarom deze typen bestaan — een afzonderlijke EEPROM tegenover een door een MCU geëmuleerde map, opslagopdrachten, firmwarekopieën en handtekeningen zoals de firmware die implementeert: Controller en firmware.


Vindt u een onjuistheid of fout in dit materiaal? Selecteer het betreffende fragment en druk op Ctrl+Enter om .