Schedule of Project Presentations
Monday, May 12, 6:009:20pm
The Nguyen Engineering Building, room 3507

Time and location:  Wednesday, 4:307:10 PM, Aquia Building, room 219 
Instructor:  Kris Gaj 
Email:  kgaj (at) gmu.edu 
Office hours:  Monday, Wednesday, 3:004:00 PM; Wednesday, 7:308:30 PM; and by appointment 
Syllabus:  link 
Behrooz Parhami, Computer Arithmetic: Algorithms and Hardware Design, 2^{nd} Edition, Oxford University Press, New York, 2010.
Recommended Textbooks
JeanPierre
Deschamps,
Gery Jean Antoine Bioul, Gustavo D. Sutter, Synthesis
of
Arithmetic Circuits: FPGA, ASIC and Embedded Systems,
WileyInterscience,
2006.
Joseph Cavanagh, Computer
Arithmetic and Verilog HDL Fundamentals, CRC Press,
2009.
Milos D. Ercegovac and Tomas Lang, Digital Arithmetic, Morgan Kaufmann Publishers, 2004.
Isreal Koren, Computer Arithmetic Algorithms, 2nd edition, A. K. Peters, Natick, MA, 2002.
Sundar Rajan, Essential VHDL: RTL Synthesis Done Right, S & G Publishing, 1998.
Software Packages Used in This Class
Course Description
Course Outline (subject to possible modifications):
Lecture slides
Lecture 11: Advanced Dividers. [PPT, PDF]
Lecture 10: Basic Dividers. [PPT, PDF]
Radix 2 Restoring Divider (unsigned): diagram 1, diagram 2
Radix 2 NonRestoring Divider (unsigned): diagram
Lecture 9: HighRadix Sequential Multipliers. BitSerial Multipliers. Modular Multipliers. [PPT, PDF]
Radix 4 Sequential Multiplier with Booth Encoding without CSA (unsigned a and x): diagram, recoding logic
Radix 4 Sequential Multiplier with Booth Encoding with CSA (unsigned a, signed x): diagram 1, diagram 2
Lecture 8: FPGA Multipliers. Radix 2 Sequential Multipliers. [PPT, PDF]
Radix 2 Sequential Multipliers LeftShift Version (unsigned): diagram
Radix 2 Sequential Multipliers RightShift Version with CSA (unsigned): example, diagram 1, diagram 2, timing 1, timing 2
Lecture 7: Tree and Array Multipliers. [PPT, PDF]
Lecture 6: Multioperand Addition. Modular Addition. [PPT, PDF]
Lecture 5: Floating Point Representations. Rounding. Representation of the Galois Field elements. [PPT, PDF]
Lecture 4: FixedPoint Representations. Endianness. [PPT, PDF]
Lecture 3: ConditionalSum Adders and Parallel Prefix Network Adders. FPGA Optimized Adders. [PPT, PDF]
Lecture 2: CarryLookahead, CarrySelect, & Hybrid Adders. [PPT, PDF]
Lecture 1: Basic Adders and Counters. Implementation of Adders in FPGAs. [PPT, PDF]
Lecture 0: Objectives, Scope, and Organization of the Course [PPT, PDF]
Posted gradually before a given lecture.
See the course web page from Spring 2013 for slides from the previous year.
Project
Project can be done either individually or
in groups of two students.
The students can choose one of the
following project types:
Recommended Outline of Your Specification
Recommended Outline of Your Presentation
List and Format of Project Deliverables
Recommended Outline of Your Report
Hardware Projects
Area: Public Key Cryptography
Project 1: Postquantum public
keycryptography: McEliece scheme
Resources:
Project 2: Implementation of RSA using DSP
units
Resources:
Project 3: Implementation of RSA based on the Huang et al. architecture for Montgomery multiplication
Resources:
Area: Coding Theory
Project 4: ReedSolomon Code for RAID systems
Resources:
Project 5: Error Correcting Code Encoder and Decoder for Physical Unclonable Functions
Resources:
R. Maes, A. Van Herrewege, I. Verbauwhede, "PUFKY: A Fully Functional PUFbased Cryptographic Key Generator," Proc. CHES 2012, LNCS 7428, pp. 302319.
Area: Financial Computations
Project 6: Floating point unit for Decimal64 floatingpoint format (supporting at least multiplication and addition)
Resources:
Area: Factoring
Project 7: Trial Division by Small Primes
Project 8: Pollard's Rho Method of Factoring
Area: FPGAoptimized Arithmetic Units
Project 9: FPGAoptimized Adders and Modular Adders for Long Integers
Resources:
H. Nguyen, B. Pasca, and T. Preusser, "FPGAspecific arithmetic optimizations of shortlatency adders," in 2011 International Conference on Field Programmable Logic and Applications (FPL), 2011, pp. 232–237.
Software Projects
Project 10: Comparative analysis of multiprecision arithmetic libraries for public key cryptography
Resources:
A. Abusharekh, Comparative Analysis of Multiprecision Arithmetic Libraries for Public Key Cryptography (text + slides), MS Thesis, George Mason University, Spring 2004.
Analytical Projects
Project 11: Comparative analysis of DSP units of Xilinx, Altera, and Microsemi FPGAs
Resources:
Project 12: Comparative analysis of CORDICbased architectures for Direct Digital Frequency Synthesizer (DDFS)
Resources:
S.A. Khan, Digital Design of Signal Processing Systems: A Practical Approach, Wiley 2011. Chapter 12: CORDICbased DDFS Architectures.
Project 13: Comparative analysis of hardware architectures for Fast Fourier Transform
Resources:
S.A. Khan, Digital Design of Signal Processing Systems: A Practical Approach, Wiley 2011, Chapters 8.5.38.5.5, 8.6.
Project 14: Comparative analysis of fast exponentiation algorithms
Resources:
Alfred J. Menezes, Paul C. van Oorschot, and Scott A. Vanstone, Handbook of Applied Cryptography, CRC Press, Inc., 1996. Chapter 14: Efficient Implementations.
Homework Assignment
Homework 4  due Monday, March 17, 11:59pm; solutions to bonus problems can be submitted by Sunday, March 23, 11:59pm
Homework 3 Bonus  due Saturday, March 1, 11:59pm
Homework 3  due Wednesday, February 26, 4:30pm; please use the following Answer Sheets
Homework 2 Bonus  due Sunday, February 16, 11:59pm
Homework 2
 due Saturday, February 15, 11:59pm; please use the following Answer Sheets
Homework 1
 due Wednesday, February 5, 4:30pm (at the beginning of the class);
solutions to bonus problems can be submitted by Saturday, February 8,
11:59pm
Posted gradually about a week before a given assignment is due.
See the course web page from Spring 2013 for homework assignment from the previous year.
vhdl.org  HDL Resources of EDA Industry Working Groups
ECE 645: Spring 2013, Spring
2012
ECE 448: Spring 2013, Spring 2012
Practice Exams
DISCLAIMER: The exams from previous years are not representative of the material covered in class this semester, and may include questions you are not required to know solutions to, and omit material covered in class this year.
Midterm Exam from Spring 2012  solutions
Midterm Exam from Spring 2010  solutions
Midterm Exam from Spring 2009  solutions
Midterm Exam 1 from Spring 2007  solutions
Midterm Exam 1 from Spring 2005  solutions
Practice Midterm Exam from Spring 2005
Midterm Exam 1 from Spring 2004  solutions
Practice Midterm Exam from Spring 2004
Midterm Exam 1 from Spring 2002  solutions
Midterm Exam 1 from Spring 2000
Final Exam from Spring 2010 Solutions: Problem 1, Problem 2, Problem 3, Problem 5
Midterm Exam 2 from Spring 2007
Midterm Exam 2 from Spring 2006
Midterm Exam 2 from Spring 2005