mikrocontroller.net

Forum: FPGA, VHDL & Co. LAN91C111 abschalten - aber wie?!?


Autor: Maik Ritter (kiamur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich habe hier ein NIOS II Evaluation Board Stratix Edition.

Das ganze benutze ich NICHT als NIOS Plattform, sondern zur "normalen" 
VHDL Programmierung.

Auf dem Board befindet sich ein LAN91C111-Chip. Den benötige ich in 
meinem Design nicht, und musste nun feststellen, dass er bei meiner FPGA 
Konfiguration sehr heiß wird. Ich habe in meiner Konfiguration alle 
Pins, die ich nicht benutze auf "Input Tri-State" gestellt. Das scheint 
aber nicht so gut zu sein.

Jetzt wollte ich den LAN91C111 einfach mit einem minimal Entity in 
meinem Projekt ausschalten, und hatte gehofft, dass er so etwas wie 
einen "Chip Enable" Eingang hat. So weit ich dass in dem Datenblatt (> 
http://www.smsc.com/main/datasheets/91c111.pdf <) überblicken kann, ist 
das aber nicht der Fall. Leider steige ich nicht durch, wie ich die 
Register in dem Chip anspreche, und wie ich dort die Konfigurationsbits 
setze. Ab Seite 95 im Datenblatt steht ja, wie ich den Chip 
herunterfahre, aber leider hilft mir das nicht weiter.

Kennt einer von euch diesen Chip, und kann mir ein paar Tips zur 
Vorgehensweise geben? Wäre supernett!

Gruß
Maik

Autor: Schlumpf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau mal bitte nach, ob du in deinem Design nicht aus versehen Pins 
benutzt, die an den MAC angeschlossen sind.
denn wenn du alle Leitungen vom MAC an das FPGA auf input stellst, 
sollte nix passieren
Ich vermute, du hast da irgendwelche Ports des FPGA in deinem Desing 
benutzt, die an den MAC gehen.

Autor: Maik Ritter (kiamur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

In dem Datenblatt des Boards steht folgendes:

"On the Nios development board, Stratix Edition, the flash memory,
SRAM and Ethernet MAC/PHY devices share address and control lines."

Ich benutze in meinem Design weder flash memory, noch SRAM, noch den 
MAC/PHY.
Auch ein Vergleich mit meinen zugewiesenen Pins ergab keine 
Überschneidungen. . . .

Trotzdem Danke für den Tip!

Maik

Autor: Schlumpf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> "On the Nios development board, Stratix Edition, the flash memory,
> SRAM and Ethernet MAC/PHY devices share address and control lines."

... sagt ja nur, dass diese Komponenten sich einen gemeinsamen Datenbus 
teilen. Natürlich können sie auch gleichzeitig benutzt werden.

Ich hab selber das NIOSII Board CycloneII Edition, aber das wird ja 
nicht grundlegend anders sein. Ich hatte jedenfalls keine Probleme 
damit.
Daher auch die Vermutung, dass es nur an den Pins liegen kann.

Auf dem Schaltplan vom Board siehst du ja, welche PFGA Pins an den MAC 
rangeführt sind. Aber wenn du da ne Überschneidung ausschliessen kannst, 
ist das echt rätselhaft.

Ich würde halt eher nach de Ursache suchen, als den MAC abzuschalten.
Besser, das Problem an der Wurzel zu packen, ist immer mein Motto.


Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab mir keine Datenblätter angeschaut, aber vielleicht hilft es ja: Wenn 
mehrere Teilnehmer an einem Bus angeschlossen sind, muss genau einer zu 
jedem Zeitpunkt den Bus halten. Wenn du alle unbenutzten Pins "as input 
tri-stated" hast, floatet 1. dein Bus, 2. die enable Eingänge der Chips. 
Die Leiterbahnen wirken wie Antennen und es könnte passieren, dass sich 
2 Chips gleichzeitig einschalten => bus contention. Folglich: Schalte 
ganz bewusst alle unbenützten Chips aus und leg gültige Signale an den 
Bus. Wenn du ihn nicht brauchst, bietet sich '0' an. Wenn du glück hast, 
lebt die Peripherie noch.

Autor: Maik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo und Danke für die Hilfen!

Also, Ich kann definitiv ausschließen, dass ich einen Pin benutzt habe, 
der an den MAC/PHY geht. Im Schaltplan meines Boards ist eindeutig zu 
sehen, dass die ganzen Steuerleitungen zum MAC/PHY direkt verbunden 
sind, da ist nichts parallel zu einem anderen Baustein verdrahtet. Auch 
die Pin-Nummern, die dort eingetragen sind, habe ich im Pin-Asignment 
meines Projektes nicht benutzt. Also müssten sie ja alle Tri-State 
Inputs sein.

Das mit den Floating Signalen auf diesen Leitungen scheint mir 
jedenfalls der plausible Grund zu sein, warum der Baustein so heiß wird 
(er ist (noch) nicht kaputt, denn mit der original NIOS Konfiguration 
funktioniert er wunderbar, wird da aber auch nicht so heiß). Ich möchte 
ihn aus diesem Grund eben in einen definierten Powersave Mode bringen, 
der laut Datenblatt (S. 95) auch existiert. leider verstehe ich den 
Vorgang nicht, da in dem Datenblatt zwar drinsteht, welche Bits ich in 
welchem Konfigurationsregister setzen muss, ich habe aber keine Ahnung, 
wie ich diese Konfigurationsregister anwählen soll. Vielleicht kann ja 
ein erfahrener Datenblattmeister mal kurz da reinschauen, und mir sagen, 
wo ich mal etwas genauer nachlesen soll. Ich finde es nämlich nicht.
Danke!

Gruß,
Maik

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>In dem Datenblatt des Boards steht folgendes:
>
>"On the Nios development board, Stratix Edition, the flash memory,
>SRAM and Ethernet MAC/PHY devices share address and control lines."

...

>da ist nichts parallel zu einem anderen Baustein verdrahtet.

Das beißt sich irgendwie, oder? Die ce Leitung muss wohl einzeln sein, 
der
Rest kann es nicht sein, wenn das Datenblatt stimmt.

Für einen schnellen Test einfach die Chips am Bus per enable-Leitung 
abschalten und die Temperatur beobachten.
<snip>
    lan91c111_ce_n <= '1';
    ram_ce_n <= '1';
    flash_ce_n <= '1';
</snip>

Um den Chip in den energiesparmodus zu versetzen, müsstest du ihn wohl 
geeignet ansteuern => state machine mit entsprechenden Ausgängen.

Hab grad mal das Datenblatt durchgeschaut. Das ist ein ganz schönes 
Monstrum und nicht in einigen Minuten zu beherrschen (für mich). 
Vielleicht hilft es ja, ihn permanent im reset zu halten. Aber da hol 
dir ruhig noch ne zweite Meinung ein...

Autor: Maik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Hab grad mal das Datenblatt durchgeschaut. Das ist ein ganz schönes
>>Monstrum und nicht in einigen Minuten zu beherrschen (für mich).

Genau das ist der Grund, warum ich hier nachgefragt habe . . .

Wenn es doch an dem teil nur eine CE geben würde . . .

Autor: Rick Dangerus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Maik:
Gibt es denn kein Beispiel-/Referenzprojekt, wo Du mal einen Blick 
reinwerfen kannst? Andererseits sollte ja im Datenblatt die 
Stromaufnahme und die Leistung stehen. Manche ICs der Nachrichtentechnik 
können da ganz schön zulangen.

Rick

Autor: Schlumpf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank hat recht, das könnte theoretisch auch passieren und Ursache 
deines Problems sein. Wobei lt Schaltplan des Boards die Steuerleitungen 
des MAC mit entsprechenden Pullups versehen sind...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.