Altera_Forum
Honored Contributor
16 years agoReset from Swtich Button hangs Nios II system
Dear all,
I am using Stratix III FPGA Development Kit. 1 Nios II/e processor. 1 On-chip Memory (128 Kb). 1 DDR2 SDRAM High Speed Controller for connection to on board DDR2 1Gb DIMM. 1 Jtag_Uart (to use printf) I connected one of the user switch buttons (Pin_B17) to the reset_n signal of the system. Actually there are two reset signals: One for CPU, On-Chip Memory, all Avalon interfaces, arbitrators, etc. and one for High Speed Controller (global_reset_n). I made a top design and connected two reset signals to make one reset_n for the overall system. I want to push S5 (Pin_B17) and reset the whole system. I am running the simplest program. Just one Printf("Hello World"), and then program finishes. Actually both the hardware and software are quite complex (4 cores, and parallelized program running on such system). However, I made the simplest possible system to resolve the following problem: Whenever Program (.text) is placed on On-chip memory, I can easily reset system (in Nios IDE per each push on button I can see "Hello World"). However, when I put (.text) on DDR2 and after running program I want to reset system it hangs. (nothing is displayed anymore). I have to reload the program to see the correct result again. The problem is not related to pin assignments, adding constraints, etc., because much complex system (4 cores with shared on chip memory) is running perfectly in the first load of programs (everything .text, .rodata, .rwdata, .heap, .stack are placed on DDR2), but whenever I want to reset system it hangs. I connected DDR2 Controller’s (global_reset_n) signal to the overall system’s reset_n, because I saw the same connection in one of the example designs (stratixiii_3sl150_dev_niosII_standard) on disk provided with the board. Even this example has the same problem with reset. Please give me some guidance. I don’t want to reload my system each time when I need to reset it.