Ich habe einen ARM Cortex 3M (Referenzhandbuch hier ), der über den FSMC (Flexible Static Memory Controller) mit einem Spartan 6 FPGA verbunden ist. Der Spartan 6 wiederum ist mit einem externen SRAM verbunden .
Ich muss den SRAM in der Produktion testen. So wie ich das sehe, habe ich zwei Möglichkeiten:
Liest man sich die Spezifikationen des SRAM durch, scheint es, dass das Schreiben eines SRAM-Treibers für das FPGA eine relativ schwierige Aufgabe ist. Ich neige daher eher zu Option 2. Mir wurde jedoch gesagt, dass es zu Latenzproblemen kommen kann, wenn ich den Cortex naiv zum SRAM überbrücke.
Wie kann ich mit diesen potenziellen Latenzproblemen umgehen? Gibt es andere Schwierigkeiten, die sich aus Option 2 ergeben, die ich möglicherweise übersehe?
Vermutlich hat das FPGA einen Zweck für seine SRAM-Verbindung, obwohl Sie nicht angegeben haben, was das ist. Ich würde vermuten, dass es am besten wäre, ein Mittel zu haben, mit dem der Cortex ausreichend beeinflussen kann, wie das FPGA in den SRAM schreibt, und genug darüber herauszufinden, was er liest, um festzustellen, ob der SRAM ordnungsgemäß funktioniert. Wenn beispielsweise das FPGA normalerweise den SRAM mit von einem ADC empfangenen erfassten Daten schreiben und diese nach einer Verzögerung an einen DAC ausgeben würde, könnte man einen Testmodus haben, der stattdessen Daten aus einem Schieberegister mit linearer Rückkopplung schreibt , und ein weiterer Testmodus, der aus dem SRAM gelesene Daten in ein Schieberegister mit linearer Rückkopplung mit leicht unterschiedlichen Abgriffen mischen würde. Wenn man dafür sorgen kann, dass jeder Testmodus eine kontrollierte Anzahl von Malen durch den SRAM läuft,
WütendEE
Zufallsblau
Das Photon
Zufallsblau