About Me
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
Agile System-on-Chip Design
I currently teach a special topics course on Agile System-on-Chip design. The focus of this course is to put students in the mentality of a small hardware startup company or academic lab. They will identify a problem, propose a solution which can be solved through an ASIC, then implement their solution. The course focuses on the RTL-to-tapeout process, with the goal of students being ready to turn their ideas into a hardware startup after completion of the course.
Microprocessors and Toys
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 was 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.
Current / Future Teaching
- 2025 Spring - ECE-GY 6443: VLSI System and Architecture Design
- 2024 Fall - ECE-GY 9433: Agile System-on-Chip Design (Special Topics)
Past Teaching
- NYU
- 2024 Spring - ECE-GY 9433: Agile System-on-Chip Design (Special Topics)
- Michigan
- 2019 Winter - ENGR 100: Microprocessors and Toys
- 2018 Winter - ENGR 100: Microprocessors and Toys
- 2016 Winter - ENGR 100: Microprocessors and Toys
- 2015 Winter - ENGR 100: Microprocessors and Toys
- 2014 Winter - ENGR 100: Microprocessors and Toys