Embedded Systems Research at DemoFest'07 - Almeida, Oscar; Forin, Alessandro; Garcia, Philip; Helander, Johannes; Khantal, Nishith; Lu, Hong; Meier, Karl; Mohan, Sibin; Nielsen, Henrik Frystyk; Pittman, Neil; Serg, Risto; Sukhwani, Bharat; et al. (2007)
The Embedded Systems group at Microsoft Research has been engaged in joint academic collaborations spanning both teaching and research activities. The results of these collaborations are jointly reviewed, and highlighted to the academic community at the Faculty Summit at Microsoft headquarters in Redmond, WA, during the DemoFest event. This is also a good opportunity to review some of the other research projects that the group is engaged in, with special consideration to the research performed as part of the summer internships. This report presents the demonstrations that took place during the 2007 DemoFest. Two undergraduate student projects from the Real Time Distributed System group at Texas A&M illustrate the results of the teaching activities. The first was a six-motor robotic assembly capable of solving the Rubik Cube puzzle interactively, on an actual cube. The second was a 3D spherical display system realized with a rotating ring of LEDs controlled by twelve microcontroller boards, each board controlling a row of 18 multi-color LEDs. The research projects presented included the introduction of the first working prototype of the MSR eMIPS dynamically self-extensible microprocessor and three current intern projects that leverage the eMIPS architecture. Additional joint projects included a prototype of a data management system based on multiple trust evidence sources, illustrating a new approach to online and embedded security developed in collaboration with the Software Design and Implementation group. A walking stick for outpatient monitoring was the result of the collaboration between the Robotics and the Embedded Systems groups. Finally, scalability in Embedded Systems was the focus of two closely related projects. The first project realized the world’s smallest Web2.0 server, using 2,636 bytes of code and 92 bytes of data on an 8-bit AVR microprocessor. This result leveraged the analysis and modeling tools realized in the second project, a collaboration with the Foundations of Software Engineering group that led to a hybrid static-dynamic tool for worst-case execution time estimation and off-line scheduling generation.