Hallo,
Ich debugge gerade ein Design mit einem seriellen 66Mhz AT45DB642D Datenflash. Ein Problem was ich habe ist, dass ich unter stärkeren
externen Störungen (Z.b. 10V/m in der Messhalle im Bereich von <
200Mhz und/oder Burst) Probleme habe mit diesem Baustein. Die Probleme
äußern sich durch Datenkorrumption beim Lesen und Schreiben. Beim
Lesen ist das ganze nicht so schlimm, da dies zu keinen permanenten
Probleme führt. Beim Schreiben ist es jedoch anders. Korrumpieren dort
die Daten schreibe ich vielleicht an die falsche Speicherstelle oder
eventuell auch falsche Daten. Softwareseitig werden wir jetzt beim
Schreiben ein mehrfaches Verify machen und auch beim Lesen werde ich
die Daten nun zur Kontrolle zweimal lesen und nur bei Korrektheit
weitergeben. Die Daten wo CRC geschützt sind, sind klarerweise noch
etwas einfacher.
Meine Frage hier ist aber natürlich eher von der Hardwareseite. Schaltungsmässig habe ich die Eingänge des Atmel einmal mit 100pF bedämpft. Die SPI Leitungen sind alle mit Serienwiderständen ausgeführt (Bei den jeweiligen Treibern). Vom Layout her gibt es einen Controllerteil mit ungefähr 40mm Abstand zum seriellen Datenflash. Leider müssen/gehen diese Leitungen auch über einen 250mm FCC Kabel zu einer weiteren Platine. Die Geschwindigkeit des SPI ist 2Mhz zum Flash und 250kHz zu den anderen Modulen. Ich sehe noch folgende Möglichkeiten auf die schnelle, währe aber dankbar für weitere Anregungen. Das Layout des Controllers ist ein 2-Lagen Design und hat ein paar unglückliche Cuts in der Groundplane. Die habe ich aber testweise schon gebrückt, weil ich dort das Problem vermutete. Die Versorgung des AT45DB642D ist mit 1uF, 100nF und 10nF gestützt.
- Filter beim FCC Stecker um Störungen dort nicht auf den Bus zu lassen. Im einfachsten Fall ein RC auf Masse. - Eventuell die Signal auf den externen Bus nur bei Bedarf aufschalten (Buffer mit Enable)
Danke, Christian
Ich debugge gerade ein Design mit einem seriellen 66Mhz AT45DB642D Datenflash. Ein Problem was ich habe ist, dass ich unter stärkeren
Meine Frage hier ist aber natürlich eher von der Hardwareseite. Schaltungsmässig habe ich die Eingänge des Atmel einmal mit 100pF bedämpft. Die SPI Leitungen sind alle mit Serienwiderständen ausgeführt (Bei den jeweiligen Treibern). Vom Layout her gibt es einen Controllerteil mit ungefähr 40mm Abstand zum seriellen Datenflash. Leider müssen/gehen diese Leitungen auch über einen 250mm FCC Kabel zu einer weiteren Platine. Die Geschwindigkeit des SPI ist 2Mhz zum Flash und 250kHz zu den anderen Modulen. Ich sehe noch folgende Möglichkeiten auf die schnelle, währe aber dankbar für weitere Anregungen. Das Layout des Controllers ist ein 2-Lagen Design und hat ein paar unglückliche Cuts in der Groundplane. Die habe ich aber testweise schon gebrückt, weil ich dort das Problem vermutete. Die Versorgung des AT45DB642D ist mit 1uF, 100nF und 10nF gestützt.
- Filter beim FCC Stecker um Störungen dort nicht auf den Bus zu lassen. Im einfachsten Fall ein RC auf Masse. - Eventuell die Signal auf den externen Bus nur bei Bedarf aufschalten (Buffer mit Enable)
Danke, Christian