Hallo Leute, ich habe hier ein Smartfusion Eval Kit vor mir liegen und versuche ein einfaches Design auf die Reihe zu bekommen. Ich verwende den "RAM - Two Port" Core. Ich greife nun auf acht verschiedene Adressen zu und lese Werte aus, die ich anschließend auf die LEDs mappe (z.B. die Wertfolge 0,1,2,3,4,5,6,7). Für die Simulation kann man den RAM vorher initialisieren. In der Simulation funktioniert das Design korrekt und die Werte werden richtig ausgelesen. Wie kann ich nun den RAM initialisieren? Bei Altera oder Xilinx ist der RAM bereits im Bitstream mit gewünschten Werten belegt. In den PDFs und der Libero Hilfe ist nur dieser eine Weg möglich: Initialisieren im Flash/ESRAM (ENVM) --> Master --> Slave (RAM) alles über den APB3 Bus. Gibt es keine "direkte" Möglichkeit?
Xilinx und Altera FPGAs basieren ja idR auf flüchtigem Speicher. D.h. der ganze Bitstrom wird beim power up in den flüchtigen Konfigurationsspeicher geladen und der flüchtige BRAM wird gleich mit initialisiert. Der Smartfusion hat nicht-flüchtigen Konfigurationsspeicher. D.h. da wird nach einem power up nichts in Konfigurationszellen geladen, sondern es ist schon "da". Das wiederum heißt, dass da kein flüchtiger BRAM Speicher aus irgendeinem Bitstrom geladen werden kann, sondern nur aus dem nicht-flüchtigen Speicher (ENVM) initialisiert werden kann.
Alles klar, Danke für deine Antwort. Könntest du mich nochmal diesbezüglich aufklären? "RAM with Initialization (SmartFusion and Fusion only) The RAM with Initialization is nearly identical to the standard RAM, except that it generates extra logic so that it can interface with the Flash Memory System. The extra logic allows the RAMs to be switched to a x9 configuration during initialization or saved to the Flash Memory. The RAM will dynamically change its user-selected configuration to the x9 configuration to interface more smoothly with the Flash Memory System." Dies ist aus der Libero SoC Hilfe. Diese IP-Core mit dem Interface kann ich nicht finden. Ich habe testweise ein Projekt mit der Zielplattform Fusion erstellt und ich konnte direkt den "RAM with Initialization" auswählen. Ich denke mal, dass es sich hierbei einfach nur um einen Fehler handelt und der Smartfusion diesen Core nicht unterstützt? Zumal es für den Smartfusion dieses "Flash Memory System" auch nicht gibt.
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.