Title :
Teaching HW/SW Co-Design With a Public Key Cryptography Application
Author :
Uhsadel, Leif ; Ullrich, Marcel ; Das, Aruneema ; Karaklajic, Dusko ; Balasch, Josep ; Verbauwhede, Ingrid ; Dehaene, Wim
Author_Institution :
ESAT/SCD-COSIC & iMinds, KU Leuven, Leuven-Heverlee, Belgium
Abstract :
This paper describes a lab session-based course on hardware/software (HW/SW) co-design. Real problems often need to combine the speed of an HW solution with the flexibility of an SW solution. The goals of this course are to show that there are many alternative solutions in the design space and to teach the fundamental concepts of HW/SW co-design. The sample application for the course project is a basic public key (RSA) application. This application is attractive for pedagogic purposes because its complex arithmetic and large word lengths make it difficult to realize in SW on an embedded microcontroller. However, the alternative of a pure application-specific integrated circuit (ASIC) application is also not a satisfactory solution, as this lacks the flexibility to support multiple public key applications. The project follows a stepwise approach, with assignments that build on each other. Students are required to make their own decisions as to the partitioning between HW and SW, the interface design, and the optimizations goals. Besides imparting hard skills in HW design and embedded SW design, the course inculcates several soft skills-in particular, decision making, presentation skills, teamwork, and design creativity-generally overlooked in engineering.
Keywords :
application specific integrated circuits; decision making; educational courses; hardware-software codesign; microcontrollers; public key cryptography; teaching; ASIC application; HW-SW codesign teaching; application-specific integrated circuit; decision making; design creativity; embedded microcontroller; hardware-software codesign; lab session-based course; pedagogic purposes; presentation skills; public key cryptography application; stepwise approach; teamwork; word lengths; Algorithm design and analysis; Education; Hardware; Microcontrollers; Optimization; Public key cryptography; Software; 8051 microcontroller; Montgomery; RSA; hardware/software (HW/SW) co-design; public key cryptography;
Journal_Title :
Education, IEEE Transactions on
DOI :
10.1109/TE.2013.2257785