MAX7000AE ersetzt MAX3000A und verbraucht 10x mehr!

Gast #5469615
Lesenswert?

Hallo Leute,

ich habe ein interessantes Problem:

Gegeben ein Design auf Basis eines Altera MAX3000A (EPM3032A-10N).
die MAX3000 sind obsolet. Es gibt einen pinkompatiblen Ersatztypen aus 
der MAX7000AE Reihe: EMP7032AE-10N
Also den MAX7000 aufs board geloetet und zunaechst einfach das binary 
vom MAX3000 drauf geflasht.
Ergebnis: Alles funktioniert wie vorher. :-)

Nun in Quartus das Projekt umgestellt auf den neuen Typen und ein neues 
binary generiert mit exakt den gleichen Sourcen.
Ergebnis: Das CPLD verbraucht nun nicht mehr 9mA sondern 90mA! Wird 
zudem knallheiss.

Was ist da los?

Ich habe einen Verdacht: Das MAX7000 ist zwar pinkompatibel, hat aber 
bei zwei Ground Pins des Max3000 zusaetzlich noch zwei IOs. Diese 
benoetige ich nicht und in meinem Design sind die auch nicht 
berueckstichtigt. Aber ich habe ein generelles Setting im Quartus 
gefunden, mit dem ich unbenutzte Pins entweder auf GND oder auf Input 
schalten kann. Zunaechst hatte ich sie auf GND stehen, dann testweise 
auf Input. Beides veraendert nichts am Fehlerbild! Dennoch habe ich den 
Verdacht, das diese Pins irgendwie high gegen GND treiben. Das 
Experiement, diese Pins auf dem board von GND zu trennen steht 
allerdings noch aus. waere sicher interessant, um meine Theorie zu 
stuetzen.

Ich bin wirklich am Verzweifeln, den das MAX7000 dauerhaft mit binaries, 
die fuers MAX3000 compiliert wurden zu versorgen scheint mir auch nicht 
richtig.

Kennt jemand so etwas? Wie wird man das los?

LG,
Andi
Moderator (Firma: Titel) Persönliche Seite #5469647
Lesenswert?

andi6510 schrieb:
> Zunaechst hatte ich sie auf GND stehen, dann testweise auf Input.
Und im Design auch tatsächlich verwendet?
Hast du noch anderen offene, floatende Pins in deinem Design?

Ich hatte sowas mal bei einem Xilinx CPLD: die unbenutzten Pins einfach 
ignoriert. Und im Endeffekt das selbe Problem wie du auch: hohe 
Stromaufnahme und Heizung. Letztlich habe ich alle freien Pins auf 
Ausgang geschaltet und einen Pegel ausgegeben.
Gast #5469657
Lesenswert?

Nein, die ueberzehligen Pins werden im Design nicht verwendet. Es gibt 
auch keine weiteren unbenutzten Pins.

Ich wollte vermeinden, die Pins im Design (Verilog code) explizit 
angeben zu muessen, da damit die Rueckwaertskompatibilitaet zum alten 
Max3000 code nicht gegeben ist.

Aber Du hast recht, wenn ich im Design die Pins explizit auf 0 setze, 
dann muesste es klappen.
Persönliche Seite #5469816
Lesenswert?

Die neuen Bausteine brauchen mitunter mehr Strom, weil/wenn sie 
schneller schalten sollen. Das hat technologische Gründe. Das sind aber 
Größenordnungen um +/- 30%.

Hier ist garantiert ein Pin-Fehler die Ursache. Ich empfehle immer, ALLE 
Pins in einem Design ausdrücklich zu beschreiben und gfs auf Input 
zusetzen, wenn Tristate nicht geht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren