Abhishek Sharma Resume
Abhishek Sharma Resume
Education
Un iv er s it y o f I ll in o i s a t Ur b an a Ch am p ai gn , I ll in oi s Dec 2016
Master of Science in Electrical and Computer Engineering GPA: 3.77/4
In d i an In s ti tu te o f Tec h n o lo g y B o m b a y , India Aug 2014
Bachelor of Technology in Electrical and Computer Engineering with minor in Computer Science GPA: 9.43/10
Skills
• Python, C, C++ • Algorithms • Caches, Memory • Leadership
• Git, SVN • Data Structures • Micro-Architecture • Problem Solving
• Perl, Tcl • Parallel Programming • Computer Architecture • Time Management
• Operating Systems • Discrete Mathematics • Machine Learning • Cross-team Collab.
Work Experience
Ram b u s In c . Nov 2019-Present
De sign E ngi nee r, C ry pto grap hy Re sea rc h and S e c ur ity IP
• Development of elaboration, synthesis, and implementation scripts in Python
• Built infrastructure for running regressions and tools for internal checks using an open-source Python library
• Worked on the microarchitecture and design of Root of Trust (RoT) Security IP using Verilog and Perl
• Design of hardware cores performing cryptographic algorithms
• Devised microarchitecture for debug support in RISC-V processor inside RoT IP
Researc h Experience
Gr ad u a te R es ear ch Th e s is , U IU C Sep 2015-July 2016
Developed a graph-based algorithm to select signals for post-silicon observation in System on Chips (SoC)
• Represented the flow of protocol between different blocks in an SoC as graph
• Nodes represented the state of blocks that perform tasks and send messages to other blocks (edges)
• SoC with multiple protocols executing concurrently was represented by constructing a graph from the protocol graphs
• Constructed graph nodes represent state of SoC (tuple of each block) & edges represent a non-deterministic choice of transition
• The algorithm optimally selects a limited set of messages to be traced over the constructed graph
• Implemented the tool in Python and tested it on OpenSPARC T2 SoC from Oracle
Cach e M od e l l in g, U I UC Apr 2016-May 2016
• Developed a model of directory-based cache coherence protocol
• Used linear temporal logic (LTL) properties and assertions for performing model checking
Un d er gr ad u ate Th es i s , I IT B o m b a y Jan 2014-Apr 2014
• Implemented a Machine Learning based algorithm on Gem5 simulator for incorporating Dynamic Power Scaling in a processor
• Power stats from McPAT (tool) and stats from Gem5 simulator were given to an optimization algorithm
• ML algorithm was trained using power state chosen by the optimization algorithm and hardware stats from Gem5