Jika desain contoh Nios® II Triple Speed Ethernet (TSE) dijadikan subsstem menggunakan Qsys hierarki, diperlukan modifikasi manual ke Perangkat Lunak Contoh untuk menentukan jalur periferal yang benar.
Contoh perangkat lunak menggunakan nama contoh komponen dalam desain contoh TSE, tetapi ini telah ditunda dengan nama hierarki jika desain TSE disematkan sebagai sub sistem di Qsys. Hal ini akan menyebabkan kesalahan yang mirip dengan di bawah ini terlihat pada kompilasi di Nios II Software Build Tools (SBT):
error: 'EXT_FLASH_NAME' undeclared here (not in a function)
error: 'TSE_MAC_BASE' undeclared here (not in a function)
error: 'TSE_MAC_BASE' undeclared here (not in a function)
error: 'TSE_MAC_TRANSMIT_FIFO_DEPTH' undeclared here (not in a function)
error: 'TSE_MAC_RECEIVE_FIFO_DEPTH' undeclared here (not in a function)
error: 'TSE_MAC_USE_MDIO' undeclared here (not in a function)
error: 'TSE_MAC_ENABLE_MACLITE' undeclared here (not in a function)
error: 'TSE_MAC_MACLITE_GIGE' undeclared here (not in a function)
error: 'TSE_MAC_IS_MULTICHANNEL_MAC' undeclared here (not in a function)
error: 'TSE_MAC_NUMBER_OF_CHANNEL' undeclared here (not in a function)
Untuk mengatasi kesalahan, ikuti langkah-langkah di bawah ini dalam Proyek Aplikasi Anda di Nios II SBT untuk Eclipse:
- Buka network_utilities.c dan lakukan temuan dan ganti "EXT_FLASH" -> "_ EXT_FLASH"
- Misalnya: Jika sistem .qsys tingkat atas Anda disebut "QSYS_TOP" di proyek .qsys tingkat atas Anda, cari "EXT_FLASH", dan ganti dengan "QSYS_TOP_EXT_FLASH"
- Sebelum:
#define EXT_FLASH_NAME "/dev/ext_flash"
- Setelah:
#define QSYS_TOP_EXT_FLASH "/dev/ext_flash"
- Misalnya: Jika sistem .qsys tingkat atas Anda disebut "QSYS_TOP" di proyek .qsys tingkat atas Anda, cari "EXT_FLASH", dan ganti dengan "QSYS_TOP_EXT_FLASH"
- Edit tse_my_system.c: baris 10 untuk memperbarui makro #defines digunakan saat struktur info TSE dibuat:
- Sebelum:
alt_tse_system_info tse_mac_device[MAXNETS] = { TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO(TSE_MAC, 0, SGDMA_TX, SGDMA_RX, TSE_PHY_AUTO_ADDRESS, 0, DESCRIPTOR_MEMORY) };
- Setelah:
alt_tse_system_info tse_mac_device[MAXNETS] = { TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO(QSYS_TOP_TSE_MAC, 0, QSYS_TOP_SGDMA_TX, QSYS_TOP_SGDMA_RX, TSE_PHY_AUTO_ADDRESS, 0, QSYS_TOP_DESCRIPTOR_MEMORY) };
- Sebelum:
- Membangun Kembali Proyek Aplikasi Perangkat Lunak
Informasi ini dijadwalkan untuk disertakan dalam versi Nios II dan desain contoh TSE di masa mendatang
Dokumentasi.