Das Beispiel der Anwendung "Einfacher Sockelserver" verwendet Treiber, die eine Annahme über die Bezeichnung der Ethernet- und DMA-Controller-Namen treffen. In einem benutzerdefinierten Projekt hat der Benutzer möglicherweise verschiedene Namen der Peripheriegeräte angegeben, die dazu führen würden, dass der Verweis auf den Einfachen Socket-Server bei der Ausführung nicht korrekt funktioniert.
Zur Behebung dieses Problems gibt es zwei Optionen:
1. Ändern Sie die Namen der Ethernet- und DMA-Peripheriegeräte, um Folgendes zu entsprechen:
Ethernet Core – TSE_MAC
DMA-Kern lesen – SGDMA_TX
DMA-Kern schreiben – SGDMA_RX
2. Fügen Sie im BSP-Projekt -DTSE_MY_SYSTEM zu Ihrem definierten System hinzu und erstellen Sie eine Funktion, um den tse_mac_device Eintrag korrekt zu definieren und Ihre TSE Max- und DMA-Controller-Einstellungen auszufüllen, die für Ihre Implementierung korrekt benannt werden:
alt_tse_system_info tse_mac_device[MAXNETS] = {
#if (definiert (_BASE) && definiert (_NAME) && definiert (_NAME)
#ifdef DESCRIPTOR_MEMORY_BASE
TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO(, 0, , ,\
TSE_PHY_AUTO_ADDRESS, 0, DESCRIPTOR_MEMORY)
#else
TSE_SYSTEM_INT_MEM_NO_SHARED_FIFO(, 0, , ,\
TSE_PHY_AUTO_ADDRESS, 0)
#endif
#endif
};
Dieses Problem wurde für den Quartus behoben® II Software und neuer.