Past Interms of the Embedded Systems Group
Summer 2009

David Sheldon created an optimal scheduler for hardware accelerators, using the NetBSD operating system running on the eMIPS processor. Dave was a fifth year PhD student at University of California, Riverside.
Summer 2008

Jeff Carver demonstrated dynamic bit-stream relocation for the eMIPS and MicroBlaze processors. Being the first twin-intern (or intern-with-a-twin :-) he doubled and created the first placer tool for bus-macros. Jeff was a first year PhD student at Utah State University. 
Vikram Chandrasekhar worked on the Giano simulator, adding tools for automatic detection of parallelism in applications. Vikram was a first year PhD student at Massachusetts Institute of Technology. 
Gabe Knezek battled the lawyers to make the first release of the P2V compiler, then worked on optimizing its area footprint. Oh, and he also helped Jeff in showing pretty pictures on a VGA monitor at the Faculty Summit. Gabe was a first year PhD student at Texas A&M University. 
Abilash Sekar added memory and interrupt support to the M2V compiler. Abilash was a first year PhD student at Georgia Institute of Technology.
Scott Sirowy worked on explaining and quantifying the ginourmous speedups FPGAs can get you. Scott was a third year PhD student at University of California, Riverside.
Summer 2007

Risto Serg used futures to turn multithreaded programs into serial programs, to save memory. He created the smallest Web 2.0 server on an AVR Butterfly (an 8051-type 16-bit processor), the whole working system consisting of 2,636 bytes of code and 92 bytes of data. Risto was a fourth year PhD student at Tallinn University of Technology, Estonia. 
Nishith Khantal created a data management system based on multiple trust evidence sources, illustrating a new approach to online and embedded security. He was the first intern to join us from the India-MSR program. Nishith was a third year undergraduate at Indian Institute of Technology, Kanpur. 
Sibin Mohan created the first temporal analyzer for distributed embedded systems that uses a mix of static-dynamic flow analysis, achieving optimal thread linearization and tight worst-case execution time estimates... then rushed to India to get married. Congratulations Sibin! Sibin was a fifth year PhD student at North Carolina State University. 
Hong Lu wrote the P2V compiler, a tool that generates eMIPS extensions for monitoring PSL properties of software programs. This was the first time ever that online verification of (real-time) programs was performed with zero overhead. Hong was a fourth year PhD student at Texas A&M University. 
Oscar Almeida worked on integrating Robotics Studio with our EWS toolkit, applying the resulting system to an outpatient monitoring medical scenario. Oscar was a first year PhD student at Texas A&M University. 
Philip Garcia designed a system of data-flow stream buffers for developing parallel, streaming applications as if they were straightforward serial programs. Phil was a second year PhD student at University of Wisconsin, Madison. 
Bharat Sukhwani worked on the I/O system of the eMIPS processor, demonstrating for the first time loading and unloading of on-chip peripheral devices at run-time, under software control. Bharat was a second year PhD student at Boston University. 
Karl Meier created M2V, a MIPS-to-Verilog compiler that translates blocks of MIPS machine code into hardware Extensions for the eMIPS dynamically extensible processor. Karl was a first year PhD student at University of Washington. 
Giovanni Busonera created eBug, a debugging system for the eMIPS processor. eBug is the first dynamically loadable hardware module that fully supports the GDB debugger and can work in conjunction with P2V, making debugging of embedded software a breeze! Giovanni was a third year PhD student at University of Cagliari, Italy.
Summer 2006

Ping Hang Cheung worked on using PSL to specify properties for block-structured programming languages. Ping was a first year PhD student at Portland State University. 
Jong Hee Kang worked on creating embedded web services in C#. He was the first intern to successfully defend his thesis during the internship. Yong was a fifth year PhD student at University of Washington. 
Antti Kantee rewrote the routing code for Microsoft Invisible Computing. He was the first of our interns to successfully transfer his research to a product group during the intership. Antti was a second year PhD student at Helsinki University of Technology, Finland. 
Richard Neil Pittman created the first working eMIPS processor. He is the first of our interns to be hired by Microsoft Research. Neil was a third year PhD student at Texas A&M University. 
Jürgo-Sören Preden worked on creating adaptable distributed real-time systems. He was the first intern that had a conference paper accepted during his internship, and the first to get two papers out of it. Jürgo was a second year PhD student at Tallinn University of Technology, Estonia.
Summer 2005

Nathaniel L. Lynch worked on the design of eMIPS and the re-design of Giano. Nathan was a third year PhD student at Texas A&M University.
Summer 2004

Behnam Neekzad helped create the Giano co-simulator and on porting software components to an FPGA, specifically an AES cypher and other simpler modules. He was the first of our interns to work on Reconfigurable Computing. Ben was a first year PhD student at University of Maryland. 
Stefan Sigurdsson came back to work on linking real-time and non real-time systems together. Stebbi was a fourth year PhD student at University of Washington.
Summer 2003

Paul Pham came back to create a real-time C# interpreter and to finish the scheduler. Paul was a fourth year undergraduate at MIT. 
Yong Xiong came back to design and prototype a security system for home consumer electronics that is easy to use. Yong was a fifth year PhD student at Texas A&M University.
Summer 2002

Yong Xiong extended the SOAP support and network autoconfiguration in Microsoft Invisible Computing. Yong was a fourth year PhD student at Texas A&M University. 
Amit Vyas worked on router-less networking and ported DSR to Microsoft Invisible Computing. Amit was a second year PhD student at Stanford University.
Summer 2001

Jagadeeswaran Rajendiran wrote the first SOAP decoder for Microsoft Invisible Computing. Jags was a second year PhD student at Duke University. 
Paul Pham worked on the scheduler for Microsoft Invisible Computing and created a low-power radio link using a PIC and FM transceivers. He is the only undergrad ever to get invited to BillG's MSR intern party. Paul was a second year undergraduate at MIT.
Summer 2000

Andrew MacBeth added support for wireless networking to Microsoft Invisible Computing. He was the first of our interns to be subsequently hired by Microsoft. Adam was a first year PhD student at University of Washington. 
Stefan Sigurdsson wrote the infrastructure for protocol servers for Microsoft Invisible Computing. Stebbi was a first year PhD student at University of Washington.



