Computer Architecture: Micro-Architecture Design, Instruction Set Architecture Design, Memory Ordering Design, Memory Model Design, Simulator Design, Performance Analysis, Debugging, Assembly Representation, RTL, Demand Driven Execution (Lazy Execution), Future Gated Single Assignment (FGSA), Compiler Internal Representation (CIR), Flexible Architecture Simulation Tool (FAST), Architecture Description Language (ADL).
MIPS32: Instruction Set Architecture, Micro-architecture, Assembly language.
Programming Languages: C, C++, CUDA, VHDL, Unix shell, MATLAB, NI LabVIEW.
Simulation Software: Cadence Virtuoso, PSPICE.
HDL Design and VLSI: Xilinx ISE 9.2i, Intel/Altera Quartus Prime, Magic VLSI Layout Tool.
Embedded System Software: MPLAB X IDE, CCS Microchip PIC C Compiler, MPLAB XC compiler, IAR Embedded Workbench, Code Vision AVR.
PCB Design: EAGLE Layout Editor, Altium Designer.