Forum Discussion
Altera_Forum
Honored Contributor
15 years agoC4gx dev kit and TSE
Hello all, I work on C4GX dev board, I use the board update portal design exemple and I use Simple Socket server on my NIOS application. First I've worked with the subscription version (3...
Altera_Forum
Honored Contributor
15 years agoHi,
Perhaps the problem is that the TSE constraints created by QSys are incorrect by default. If you look into the file YOUR_SYS\synthesis\submodules\YOUR_SYS_tse_mac_constraints.sdc (where YOUR_SYS is the name of your QSys system) you'll see a section "# Customer modifiable constraints" in the beginning of the file, where you're supposed to fill your board's clock names and values. And if I remember correctly, even the Altera's own examples don't use those pin names and you must change the TSE constraint file before the Ethernet becomes more reliable. The main problem is that the QSys generates the constraint file every time you generate the QSys system and thus overwrites any changes you've made into that constraint file! Not very user-friendly ... I've created the following TCL-script (I've named it fix_qsys.tcl) to modify the contraints to match my system's pin names:
package require fileutil
proc processContentsOfTseMac {fileContents} {
# map search replace
return
}
# Fix TSE MAC constraints
fileutil::updateInPlace nios_sys/synthesis/submodules/nios_sys_tse_mac_constraints.sdc processContentsOfTseMac
If you add the following line into your project's .qsf file, the Quartus will run the script every time it compiles and thus fix the QSys generated constrains:
set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:fix_qsys.tcl"
Hope this helps, Jari