Implemented the decyrption module comprising of a binary multiplier and thresholder for a R-LWE cryptosystem in verilog.
EC592 Course Project under Dr. Aydin Aysu
Implemented a C++ simulator to model the timing of a hypothetical RISC-V-based processor with a variable latency execution unit, forwarding and reorder buffer for dynamic execution of instructions.
Analyzed the impact of parameter changes like the size of issue queue, superscalar width and reorder buffer on the IPC of a processor
EC563 Course Project under Dr. Eric Rotenberg.
Implemented S-Box based AES encryption and decryption modules in Python.
Performed a DPA attack for key extraction using a provided power trace run from a modified AES implementation on a Sakura FPGA.
EC592 Course Project under Dr. Aydin Aysu.
Modelled a gshare, bimodal and hybrid branch predictor in C++.
Analyzed the impact of parameter changes on the misprediction rate.
EC563 Course Project under Dr. Eric Rotenberg
Implemented a 2-level cache model (using LRU and WBWA) with a prefetch buffer in C++.
Analyzed the impact of cache sizes and various configurations on miss rate.
EC563 Course Project under Dr. Eric Rotenberg
Designed and implemented re-configurable memory architectures on FPGA/s for feeding image inputs into a convolutional kernel with optimized LUT and BRAM utilization as well as latency, while taking advantage of the redundancies found in typical CNN implementations.
Tested out the latencies and generated a report comparing the designed architectures.
B.Tech Thesis/Major Project under Dr. Sumam David.