Einen schönen guten Morgen an alle Elektronikfreunde, Ich bin noch ein FPGA-Anfänger. Für ein kleines privates Projekt (Steuerung) möchte ich bei meiner jetzt anstehenden Verkleinerung von einem Arty A7-35T auf einen ICE40 von Lattice Semiconductor wechseln. Ich habe unter anderem 4 ADCs und 2 Temperatursensoren verbaut. Meine Leistungsschalter steuere ich aktuell mit 100 bis 400 kHz an. Die ADCs werte ich aktuell mit einem SPI-Takt von (100/12) MHz aus, also etwa 520kSamples. Zur relativ genauen Einstellung des PWM hätte ich gerne weiterhin eines Mindesttakt von 100 MHz. Daher dachte ich zuerst an ein ICE40LP oder ICE40HX. Die ICE40Ultra-Serie läuft soviel ich weiß nur mit maximal 48 Mhz. Beim genaueren Durchlesen des Productselection-Guide kriege ich jedoch Zweifel an meiner Wahl. Ich brauche mindestens 6 SPI Verbindungen zur Erfassung aller notwendigen Daten. Beim Arty A7 habe ich mir einfach 6 passende SPI mit Zustandsautomaten und Zähler erzeugt, jetzt sehe ich, dass die Lattice ICE40 keine Timer-Module haben. Die Fragen klingen eventuell blöd. Funktioniert das unabhängige Hochzählen von beispielsweise 10 Counter, trotzdem? Das PWM-Modul der Ultra-Serie wird in einer der Application-Notes mit 12 Mhz betrieben, kann man dieses nicht auch über eine der PLL beschleunigen? Viele Grüße Stefan
Stefan C. schrieb: > Beim Arty A7 habe ich mir einfach 6 passende SPI mit > Zustandsautomaten und Zähler erzeugt, jetzt sehe ich, dass die Lattice > ICE40 keine Timer-Module haben. Hier blick ich nicht durch. Welches davon wurde erzeugt und welches hast du selber geschrieben? Ein Zustandsautomat wirst du sicherlich selber geschrieben haben, beim Timer klingts jedoch hier anders. In HDL ist es eigentlich relativ einfach einen Counter/Timer zu schreiben. Du solltest auch prüfen, ob die ganze Logik von Artix in den ICE passt.
Hallo, da habe ich mich etwas undeutlich ausgedrückt. Die Zustandsautomaten, die mir den SPI ansteuern, habe ich selber programmiert. ich habe mein Programm etwas vereinfacht und es könnte mit dem ICE5LP4K-SG48ITR klappen. Ich verstehe allerdings das Datenblatt bezogen auf die Taktfrequenz und deren Application-Note mit den PLL nicht so richtig. Das Modell ICE5LP4K-SG48ITR verfügt über einen internen Oszillator, der mit 48 MHz taktet, jedoch für mich eine zu große Schwankung aufweist. Intern besitzt dieser auch PLLs. Bei den Registern stehen Werte von 100 MHz, mit denen diese betrieben werden können. Kann ich tatsächlich die Haupttaktfrequenz, die ich im VHDL-Code mit "rising_edge" abfrage, mit einem externen Oszillator auf 100 Mhz stellen? Viele Grüße Stefan
Dein Baustein hat nur eine PLL. Ob dein Design 100MHz schafft, das wirst du wohl ausprobieren müssen. Schmeiß doch mal eine Synthese mit icecube2 an. Die PLL kann dir noch viel höhere Takte als 100MHz erzeugen, die Frage ist eher, ob deine Logik mit dem Takt zuverlässig läuft.
Beitrag #6640105 wurde vom Autor gelöscht.
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.