Wenn Sie die Intel® Arria® 10 FPGA External Memory Interface (EMIF) IP verwenden, um eine DDR3- oder DDR4-Speicherschnittstelle mit Fly-by-Topologie zu implementieren, sehen Sie je nach Mainboard-Topologie möglicherweise eine suboptimale Signalintegrität für die Adress- und Befehlssignale aufgrund von Signalübertaktungen und Untertakten. Möglicherweise können Sie die Signalintegrität verbessern, indem Sie die betroffenen Adress- und Befehlsstifte so konfigurieren, dass eine langsame Slew-Rate verwendet wird. Die EMIF IP und die Quartus® II Software wählen standardmäßig eine schnelle Slew Rate für I/O-Puffer.
In einer zukünftigen Version der IP können Sie die Slew-Rate direkt von der EMIF-Generierungs-GUI angeben. Diese Option ist in der Quartus Software version 14.1 und 14.1a10s nicht verfügbar. Allerdings können Sie dennoch eine langsame Slew Rate implementieren, indem Sie Zuweisungen manuell hinzufügen, entweder über den Zuweisungseditor oder durch direkte Bearbeitung des . QSF.
Führen Sie die folgenden Schritte durch, um die Langsame Slew-Rate für einen Pin der obersten Ebene mit namen PIN_NAME anzugeben:
- Regenerieren Sie die IP, nachdem Sie die Einstellungen für Address/Command OCT in UNCALIBRATED Termination in der EMIF IP GUI geändert haben.
- Setzen Sie set_instance_assignment -name SLEW_RATE 0 auf PIN_NAME.
(Sie müssen diese Zuweisung für alle betroffenen Adress- und Befehlsstifte wiederholen.) - Langsame Slew-Rate wird nur unterstützt, wenn ein Ausgangspuffer die On-Chip-Beendigung (OCT) nicht verwendet, entweder kalibriert oder nicht kalibriert. Wenn Ihre Adress- und Befehlsstifte OCT verwenden, müssen Sie die Ausgabekündigung deaktivieren , um eine langsame Slew-Rate zu verwenden.
Dies können Sie über den OUTPUT_TERMINATION und die CURRENT_STRENGTH_NEW Zuweisung tun. Zum Beispiel:
set_instance_assignment -name OUTPUT_TERMINATION AUS -zu PIN_NAME
set_instance_assignment -name CURRENT_STRENGTH_NEW desired_current_strength -to PIN_NAME (Wenn Sie diese Zuweisung im Zuweisungseditor hinzufügen und dann die CURRENT_STRENGTH Einstellung verwenden, fügt Quartus die CURRENT_STRENGTH_NEW automatisch in der QSF-Datei hinzu).
wobei desired_current_strength der Wert der aktuellen Stärke des Stiftes ist, z. B. "8mA".
- Bestimmte I/O-Standards (z. B. SSTL-12, SSTL-15) unterstützen die Deaktivierung der Ausgabekündigung nicht. Um langsame Slew-Rate zu verwenden, müssen Sie auch den I/O-Standard auf einen überschreiben , der eine Feststrom-Ausgabe unterstützt. Verwenden Sie zum Beispiel für 1,2 V DDR4 die folgende Zuweisung:
set_instance_assignment -name IO_STANDARD "1,2-V" - zu PIN_NAME
und für 1,5 V DDR3 verwenden Sie die folgende Zuweisung:
set_instance_assignment -Name IO_STANDARD "1,5-V" - zu pin_name