Credits: 3

Semesters Offered

Fall 2017, Fall 2018, Fall 2019, Fall 2020, Fall 2021

Learning Objectives

  • Understand security vulnerabilities in hardware design, physical tamper and side channel attacks to systems.
  • Learn the fundamentals and practical techniques to design secure and trusted digital systems.
  • Get familiar with hardware security primitives.
  • Master techniques for writing and analyzing x86 assembly code.
  • Develop reverse engineering skills with IDA Pro.
  • Practice secure programming.
  • Use Wireshark for protocol and packet analysis.

Topics Covered

  • Verilog Syntax and Structure
  • Verilog Structural and Gate-Level Modeling
  • Simulation Environment for Schematics and Verilog Models
  • Adder Circuits: Full-Adder Components, Ripple-Carry and Carry-Lookahead Structures
  • Encoders, Decoders, and Seven-Segment Displays
  • Asynchronous and Synchronous Counters
  • Verilog Modeling with Level-Sensitive and Edge-Sensitive Behaviors
  • Digital Data Representation and Conversions
  • Sequence Analyzers and Finite State Machine Design
  • Combinational and Sequential Multiplier Circuits
  • Digital Calculator Implementation
  • First-In First-Out (FIFO) Buffer Design
  • Error Detection and Correction Codes

Learning Outcomes

  • Ability to apply knowledge of math, science, and engineering (Significant)
  • Ability to design/conduct experiments & analyze/interpret data (Significant)
  • Ability to design a system, component, or process to meet needs (Significant)
  • Ability to function on a multi-disciplinary team (Moderate)
  • Ability to identify, formulate, and solve engineering problems (Significant)
  • Understanding of professional and ethical responsibilities (Significant)
  • Ability to communicate effectively (Moderate)
  • Recognition of need for and ability to engage in life-long learning (Moderate)
  • Knowledge of contemporary issues (Significant)
  • Techniques, skills, and modern engineering tools necessary for practice (Significant)