Teaching HW/SW Co-Design With a Public Key Cryptography Application

被引:9
作者
Uhsadel, Leif [1 ,2 ]
Ullrich, Markus [1 ,2 ]
Das, Amitabh [1 ,2 ]
Karaklajic, Dusko [1 ,2 ]
Balasch, Josep [1 ,2 ]
Verbauwhede, Ingrid [1 ,2 ]
Dehaene, Wim [2 ,3 ]
机构
[1] Katholieke Univ Leuven, ESAT SCD COSIC, B-3001 Heverlee, Belgium
[2] Katholieke Univ Leuven, iMinds, B-3001 Heverlee, Belgium
[3] Katholieke Univ Leuven, ESAT MICAS, B-3001 Heverlee, Belgium
关键词
8051; microcontroller; hardware/software (HW/SW) co-design; Montgomery; public key cryptography; RSA; MULTIPLICATION; ALGORITHMS; CODESIGN;
D O I
10.1109/TE.2013.2257785
中图分类号
G40 [教育学];
学科分类号
040101 ; 120403 ;
摘要
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.
引用
收藏
页码:478 / 483
页数:6
相关论文
共 15 条
[1]   The Issue of (Software) Plagiarism: A Student View [J].
Chuda, Daniela ;
Navrat, Pavol ;
Kovacova, Bianka ;
Humay, Pavel .
IEEE TRANSACTIONS ON EDUCATION, 2012, 55 (01) :22-28
[2]  
Dutta S., 1995, SDCC SMALL DEV C COM
[3]   A new hardware/software codesign environment and senior capstone design project for computer engineering [J].
Klenke, RH ;
Tucker, JH ;
Blevins, JM .
2003 IEEE INTERNATIONAL CONFERENCE ON MICROELECTRONIC SYSTEMS EDUCATION, PROCEEDINGS, 2003, :66-67
[4]   Montgomery Multiplication in GF(2k) [J].
Koç Ç.K. ;
Acar T. .
Designs, Codes and Cryptography, 1998, 14 (1) :57-69
[5]   Analyzing and comparing Montgomery multiplication algorithms [J].
Koc, CK ;
Acar, T ;
Kaliski, BS .
IEEE MICRO, 1996, 16 (03) :26-33
[6]  
Menezes A., 1996, HDB APPL CRYPTOGRAPH
[7]  
MONTGOMERY PL, 1985, MATH COMPUT, V44, P519, DOI 10.1090/S0025-5718-1985-0777282-X
[8]  
Osmera M., 2011, MCU 8051 IDE
[9]  
RIVEST RL, 1978, COMMUN ACM, V21, P120, DOI 10.1145/357980.358017
[10]  
Schaumont P.R., 2010, PRACTICAL INTRO HARD