Increasing computing capabilities are a key driver behind many emerging applications, such as smart healthcare, smart cities, smart buildings, smart transportation, and autonomous driving. These applications continue to evolve by integrating more advanced hardware and software. For instance, a typical consumer vehicle today is equipped with over 10 million lines of software code, and this number is expected to grow significantly in the future. Additionally, the number of connected devices is rapidly increasing, enabling improved services, enhanced safety, and greater efficiency. This trend paints a vision of a world as a vast, interconnected network of computing devices working together to perform diverse and complex tasks.
Along with all benefits from ever growing network of connected devices with more powerful computing capabilities come various challenges. First, security has been and will become even bigger problem as many devices we experience everyday have critical impact on our well beings if they have vulnerabilities that can be exploited by malicious parties. Second, as the scale of connected computing devices is getting larger, and the need to integrate more computing power into miniaturized systems is growing, making computation be more efficient has high importance. Third, unlike traditional consumer applications where the typical life span of computing devices is 2 -- 4 years, most current and future devices have significant physical aspects. Those devices are usually designed to last for a long period of time. During such long life time, the operating context and thus the missions originally designed for a device may change. An important question is how to design a system that can evolve itself to adapt to ever changing environment.
Our overall research objective is to address challenges as outlined above, and future challenges brought by new applications or as results of new technologies. Our broad research areas include computer architecture, embedded systems, and verification and testing. Currently, we are looking at hardware safety and security assurance by investigating various design time and runtime methods and techniques, application of machine learning in design automation, efficient hardware design of machine learning algorithms, and formal verification and reasoning of hardware and software systems. Please visit our research page for more information
To interested graduate students: dedicated and hardworking students are welcome to join us to work on different projects as outlined above. If you are interested in something that is related but not listed, please do share your thoughts. When you contact us, please explain briefly why you would like to apply, and why you are interested in the area of yoru choice.
Undergraduate students with good academic records and strong self-learning capabilities are also welcome to contact us for research experience opportunities.