I am new in the reverse engineering, I have a good experience in programming MCUs like c51 and ARM. Now I would like to learn about Tricore reverse engineering... ECUs mainly. I can obtain the ECU flash as bin files, my question is: what IDE and debugger hardware (jtag) is best for this job?
- IDE: High Tech RT but it is usually tied up to one TriCore processor with other limitations. However you can compile your C into TriCore executable
- JTAG Debugger: Mini Wiggler from Infineon or if your budget allows that, Lauterbach. However ECUs are safety critical devices, so they use a system of internal and external watchdogs. If you set a breakpoint in TriCore, after hitting the breakpoint ECU usually reset itself. So OCDS can be (on production ECUs) used only as RAM monitor at best.
Second problem which you will come across is, that most of TriCore ECUs has JTAG interface disabled because UCB0 is set.
It should be obvious that you should first buy some development kit, like this application kit which has integrated debugger and understand how TriCore's internals are working. It is going to be less frustrating for you than develop anything on security hardened production ECUs.
for RE work where you have the binary file already I would just use IDA PRO or build your own tool for flow analysis, etc
If you actually need to pull the binary file, then the other answer is correct - but, in addition, openOCD may work for you for simple binary copy which is a much cheaper open source option.
Understanding code/data flow in an ECU is a fairly difficult task given how code is designed and the complex safety eco system and peripheral set of tricore. Be prepared to study that and understand the features before delving in.