About Me

Screenshot

I am an assistant professor in New York University’s Electrical and Computer Engineering department. I recently joined NYU (Fall ‘23) after a postdoc at Cornell University with Professor Christopher Batten. My primary research focus lies across computer architecture, VLSI, and EDA.

My faculty page is here and I can be reached by email at rovinski AT nyu DOT edu.

Research

My broad research vision is that Moore’s Law is ending, so architectures and systems will have to evolve in order to pick up the slack. More often than not, this means specializing hardware for emerging applications and integrating solutions from across the hardware/software stack. Developing hardware accelerators has shown me that one of the biggest challenges facing hardware acceleration is integration with system-on-chips (SoCs). My work addresses this challenge by creating tools, methodologies, and accelerators which can reduce engineering time and effort to create complex SoCs. Check out my publications for a list of my recent work.

At Cornell, I worked on several projects including architectures for optoelectronic interconnects, reproducible and open-source hardware, and accelerators for electronic design automation (EDA).

At Michigan, my dissertation entitled Towards Free, Open, and Ubiquitous Hardware Design focused on addressing issues of cost, accessibility, and runtime performance of EDA tools. Under the advising of Professor Ron Dreslinski, I have gained significant experience with chip design methodologies through tapeouts in advanced technologies as well as development on the OpenROAD Project. I also formerly worked with Professors Jason Mars and Lingjia Tang in Clarity Lab with a focus on end-to-end system acceleration.

Teaching

I am on teaching relief this semester as I develop my lab at NYU.

Previously, I have been both an undergraduate Instructional Assistant (IA) and Graduate Student Instructor (GSI) for Michigan’s ENGR 100 - section 250: Microprocessors and Toys. This class is a personal favorite of mine because of both the great introduction to computer engineering and the openness of the course project.

This course is designed to give a broad overview of computer engineering to ambitious freshman. It covers the basics of computer hardware, including CMOS transistors, digital gates, small/medium-scale devices, and control and data paths. The course also covers the basics of low-level programming via assembly, such as ISAs, I/O interfaces, and drivers. The second half of the course is an open-ended project for groups to work in teams to create a microcontroller-based toy. It’s always very interesting to see the ideas students come up with!

My role as an IA / GSI has been to instruct and supervise labs as well as mentor students on their projects. Because the projects are so open-ended, students often select projects that require a much greater working knowledge than the class formally provides through lectures. It’s my job to help teach and guide the students in the material that is often multiple courses ahead of their current knowledge base, although students often do a good job of learning topics on their own.

Past Teaching:

  • Michigan
    • Winter 2019 - ENGR 100: Microprocessors and Toys
    • Winter 2018 - ENGR 100: Microprocessors and Toys
    • Winter 2016 - ENGR 100: Microprocessors and Toys
    • Winter 2015 - ENGR 100: Microprocessors and Toys
    • Winter 2014 - ENGR 100: Microprocessors and Toys