Altera_Forum
Honored Contributor
15 years agoBug when using a second Triple-Speed-Ethernet IP in a system.
I all!
I have a basic system nios ii/fmain_mem
avalon_mm_pipeline_bridge
timer_sys_clk
sysid
jtag_uart
sgdma_tx
sgdma_rx
descriptor_memory
tse_mac that works well (except that I can't use Avalon-MM pipeline bridge, cf. http://www.alteraforum.com/forum/showthread.php?t=24531 (http://www.alteraforum.com/forum/showthread.php?t=24531)) Now I have instanciated a second triple-speed-ethernet IP. I connected config avalon MM bus to CPU data bus. I connected RGMII bus to corresponding IOs of my board I connected RX and TX avalon streaming buses to plugs. In these conditions, the mac is not usable, so I did not even added software to handle it. System should work in the exactly same manner as before instanciation. but now, I soon as I ping the tse_mac interface, the system crashes. I observed the config bus of the new mac, and there is not traffic there. So I suspect there is a bug in the way the syslib or the software is generated. Has anyone ever encountered this issue? Thanks ------------------------------------------------------------------------- P.S: the way the system crashes is very weird: My main() function displays a message <WELCOME_MESSAGE>, clears the timer, launches the initial task, and starts the OS. The initial tasks inits the NicheStack, and starts a monitoring task which is my only task (except for the interniche tasks dealing with the tse interface) and self-destructs. The monitoring tasks basically does: while (1) {
printf monitor message;
tksleep(5000); // sleep 5s
} [/INDENT] So when I ping the tse, the <WELCOME_MESSAGE> is displayed again (after all the monitoring traces), and then nothing happens. So it seems that for some reason the CPU jumps to main() again, and crashes immediatly after that...