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
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.
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
> "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.
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.
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
>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.
1 | <snip> |
2 | lan91c111_ce_n <= '1'; |
3 | ram_ce_n <= '1'; |
4 | flash_ce_n <= '1'; |
5 | </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...
>>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 . . .
@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
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...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.