Nếu thiết kế ví dụ Nios® II Triple Speed Ethernet (TSE) được ví dụ như một hệ thống con sử dụng Qsys phân cấp, cần phải sửa đổi thủ công cho Phần mềm Mẫu để xác định đường dẫn chính xác đến các thiết bị ngoại vi.
Phần mềm ví dụ sử dụng tên phiên bản của các thành phần trong thiết kế mẫu TSE, nhưng chúng được gắn sẵn với tên phân cấp nếu thiết kế TSE được khởi tạo thành hệ thống con trong Qsys. Điều này sẽ gây ra các lỗi tương tự như bên dưới khi biên dịch trong công cụ Nios II xây dựng phần mềm (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)
Để giải quyết các lỗi, hãy làm theo các bước dưới đây trong Dự án ứng dụng của bạn Nios II SBT để được cấp Eclipse:
- Mở network_utilities.c và thực hiện tìm kiếm và thay thế cho "EXT_FLASH" -> "_ EXT_FLASH"
- Ví dụ: Nếu hệ thống .qsys cấp cao nhất của bạn được gọi là "QSYS_TOP" trong kết quả tìm kiếm dự án .qsys cấp cao nhất của bạn cho "EXT_FLASH" và thay bằng "QSYS_TOP_EXT_FLASH"
- Trước:
#define EXT_FLASH_NAME "/dev/ext_flash"
- Sau:
#define QSYS_TOP_EXT_FLASH "/dev/ext_flash"
- Ví dụ: Nếu hệ thống .qsys cấp cao nhất của bạn được gọi là "QSYS_TOP" trong kết quả tìm kiếm dự án .qsys cấp cao nhất của bạn cho "EXT_FLASH" và thay bằng "QSYS_TOP_EXT_FLASH"
- Chỉnh tse_my_system.c: dòng 10 để cập nhật các macro #defines được sử dụng khi cấu trúc thông tin TSE được tạo:
- Trước:
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) };
- Sau:
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) };
- Trước:
- Xây dựng lại Dự án ứng dụng phần mềm
Thông tin này dự kiến sẽ được bao gồm trong phiên bản trong tương lai của thiết kế mẫu Nios II TSE và
Tài liệu.