Als Ableger von meinem Blog sammle ich auf dieser Website einige Beiträge, die mit FPGA und einigen anderen Themen zu tun haben. Derzeit sind dies die hier veröffentlichten Seiten:
- Techniken für den Logikentwurf
- Taktdomänenwechsel
- Taktdomänen, verwandte Takte und nicht verwandte Takte
- Metastabilität und die Grundlagen des Taktdomänenwechsels
- Taktdomänenwechsel mit Daten
- Initialisierung eines FPGA und Resets
- Asynchrone Resets auf FPGAs: Nicht so einfach, wie viele glauben
- Resets auf FPGAs: Synchron, asynchron oder gar nicht?
- Die Logik für das richtige Hochfahren und Zurücksetzen eines FPGA
- Arithmetik in Verilog
- Einsatz von IP im Design
- FPGA-FIFOs: Von der Einführung bis zu fortgeschrittenen Themen
- Einführung in FPGA-FIFOs
- FPGA-FIFOs: Varianten und Zusatzfunktionen
- Implementierung von Single-Clock-FIFOs in Verilog
- FIFO mit EOF als Schutz vor Überlauf
- Timing-Verbesserung bei FIFOs durch zusätzliche Register
- Die Grundlagen der Multi-Gigabit-Transceiver
- Multi-Gigabit-Transceiver: Ein Überblick
- Liste der Protokolle für die Kommunikation zwischen FPGAs mit Multi-Gigabit-Transceivern
- Eine kurze Einführung in die 8b/10b-Kodierung, 64b/66b, 128b/130b usw.
- Der PCS: Kodierung, Gearboxen, Tx/Rx-Puffer und mehr
- Der PMA: Senden und Empfangen von Daten
- Der PMA: OOB-Signale, elektrischer Leerlauf usw.
- Taktversorgung eines MGTs: Die Grundlagen
- Flusskontrolle: Methoden und Protokolle für den Einsatz mit MGTs
- Randbedingungen und die Steuerung der Design-Tools
- Timing und Timing-Vorgaben
- Timing ist alles
- Die Grundlagen des Timing im Logikentwurf
- Die Taktperioden-Vorgabe und ihre Timing-Analyse
- Mehr über die Taktperioden-Vorgabe
- Die Kunst des Timing-Closure
- Strategien für das Timing-Closure
- Die Taktperioden-Vorgabe und Taktobjekte
- Tcl-Befehle zum Auswählen von Logikelementen
- Timing-Ausnahmen (timing exceptions)
- Timing-Vorgaben und Taktdomänenübergang
- Timing-Vorgaben für Multicycle-Pfade
- Die richtige Strategie für das I/O-Timing wählen
- I/O-Timing-Vorgaben in SDC-Syntax
- Die Validierung der Timing-Vorgaben
- Verwendung von Platzhaltern (Wildcards) und -hierarchical in SDC-Timing-Vorgaben
- Das FPGA als elektronisches Bauelement
- Register im I/O-Block verwenden
- Source-synchrone Ausgänge
- Source-synchrone Eingänge
- Verwendung der 01-Signal-Abtastung bei source-synchronen Eingängen
- Herstellerspezifische FPGA-Themen
- Themen, die für AMD FPGA (Xilinx) spezifisch sind
- Vivados Timing-Analyse der Timing-Vorgaben set_input_delay und set_output_delay
- Vivados Timing-Analyse der Timing-Vorgaben set_max_delay und set_min_delay
- Vivado: Die „maximale Frequenz“ nach der Synthese finden
- Vivado: Bitstrom-Programmierung des FPGA über die Linux-Kommandozeile
- Vivado-Blockdesign-Dateien vergleichen
- Partielle Rekonfiguration mit Vivado: Hauptseite
- Partielle Rekonfiguration mit Vivado verstehen
- How-To: Partielle Rekonfiguration mit Vivado
- Partielle Rekonfiguration mit Xilinx: Zurücksetzen und Entkopplung
- Remote Update mit partieller Rekonfiguration unter Vivado
- FIFOs auf Versal-ACAP-FPGAs verwenden
- Themen, die spezifisch für Intel-FPGAs (Altera) sind
- Timing-Analyse in Quartus für set_input_delay- und set_output_delay-Constraints
- Quartus, Timing-Closure: Einen kompakten Multi-Corner-Report über Timing-Pfade erstellen
- Quartus: Die Bedeutung von derive_pll_clocks in der SDC-Datei
- Quartus / Linux: FPGA über die Kommandozeile programmieren
- Quartus: Register in I/O-Zellen unterbringen
- Allgemeine Themen
- Die goldenen Regeln für gutes FPGA-Design
- Elektronik-Exorzismus: Warum FPGAs sich manchmal benehmen, als wären sie besessen
- Index für Seiten über Xillybus
- Schnellstart-Anleitung für Xillybus
- Der „Hello, world“-Test mit Xillybus unter Linux
- Der „Hello, world“-Test mit Xillybus unter Microsoft Windows
- Schnellstart-Anleitung für eigene Xillybus-IP-Cores
- Einfache Datenerfassung mit Xillybus
- Zugriff auf die Gerätedateien von Xillybus
- Weitere Themen
- Ein USB-Gerät unter Linux zurücksetzen (und vielleicht seine Stromversorgung steuern)
- Umrechnung zwischen Galois- und Fibonacci-Polynomen eines Linear-Feedback-Schieberegisters
- Indexseite für Seiten über Xillinux und Smart Zynq
- Live-Ansicht und Videoerfassung mit einem OV7670-Kamerasensor und Smart Zynq
- Schreiben auf die Register des OV7670-Kamerasensors über I2C mit Smart Zynq
- Normale Kopfhörer an einen digitalen Ausgangspin anschließen und Musik hören
- Steuerung von acht Servomotoren mit Smart Zynq
- Einen Linux-Desktop auf einem Microsoft-Windows-Computer verwenden