Development, testing and optimization of initialization routines for CPU
Development of tests to validate complex system behavior in controlled environment.
Debug, root-cause analysis and fixing of issues in complex multi-processor systems.
Determine and maintain most optimal configuration of various control/ configuration registers for various HW components in the system focusing MIPS/PowerPC CPU.
Performance analysis of various use-cases in a complex multi-core systems.
Porting of various system software stacks/Drivers on different platforms to ensure that they function correctly with CPU and associated IPs.
Develop prototype software for HW-SW architecture enhancements as a proof of concept.
Must be Proficient in C and MIPS assembly.
Basic knowledge of cross platform tool chains and running bare metal programs on target platforms
Basic knowledge of CPU architecture that includes MIPS and PowerPC
Typical boot sequence. Knowledge of multi-processor initialization/ boot sequence would be an added advantage
Memory organization, barriers, MMU
Exposure to development, enhancement of bootloaders like uboot, Redboot etc
Exposure to compile, run and tweak Linux kernel for MIPS/PowerPC platforms
Awareness of the Linux kernel and device driver programming.
Exposure to debugging issues in multi-processor SW especially those related to concurrency/ incorrect synchronization
Debugging experience using hardware tools like Trace32 and Logic Analyzers, Oscilloscope, J-Tag, BDI3000 etc is a Plus
Education: BS/BE/BTECH/MCA/ME/MTech in CS/EE/ECE is required