Skip to content

Latest commit

 

History

History
76 lines (62 loc) · 3.78 KB

syllabus.md

File metadata and controls

76 lines (62 loc) · 3.78 KB

Stevens Institute of Technology - The Innovation University®

CPE-390 Microprocessor Systems

COURSE DESCRIPTION

This course covers how computers work (computer architecture) through assembly language and learning how to program them at a low level. It also uses microcontrollers to interact with their external environment (embedded systems).

We have a wide variety of software and hardware labs. While there are more than can be done in any semester these include

  1. Programming together in git (using version control)
  2. Bit manipulation
  3. Implementing drawing primitives in a bitmap
  4. Optimizing floating point computation in a gravity simulator
  5. Controlling motors using MOSFETs, H-Bridge controllers and Pulse Width Modulation (PWM)
  6. Generating waveforms using a DAC and measuring them
  7. Building a photogate using photoresistors and A/D converter

STUDENT LEARNING OUTCOMES

After successful completion of this course, students will be able to

  • Use a knowledge of how microprocessors work to reduce errors or to know how some of the major problems that can occur
    • Overflow
    • Roundoff
    • Memory faults
  • Use a knowledge of how compilers and microprocessors work to write programs that are more efficient
    • Access Memory sequentially where possible
    • Use cache efficiently to avoid memory accesses
    • Know when the compiler will not be able to optimize and do it manually
  • Read and write digital voltagese
  • Use power transistors and H-bridge controllers to drive motors
  • Use A/D and D/A converters to interact with the analog world
  • Practice using oscilloscopes to
  • Learn to use git to work in teams effectively (a bit).
  • Use a CAD package to record your hardware designs.
  • Use LTSpice to analyze simple hardware designs.

FORMAT AND STRUCTURE

  • Classes involve live coding demonstrations, you are encouraged to join in sometimes using vscode.
  • The instructor will ask questions and you are encouraged to actively participate.
  • There will be weekly coding homework/labs and/or handwritten assignments.
  • Quizzes and tests on paper verify that students know the material they have submitted as homework.

COURSE MATERIALS

  • Textbook(s): none. Notes provided.
  • Other Readings: Papers available in ref directory

COURSE REQUIREMENTS

  • Attendance: Attendance is crucial for an effective learning but will not be graded. Your work will speak for itself.

  • Homework: Coding assignments will be submitted via canvas for individual single files, or via github.

  • Labs: Lab attendance is mandatory. You may work with a partner but all labs must be submitted individually. Late work will not be accepted. Any help on a lab must be cited. This includes any code from online, help from friends or peer mentors. You do not have to cite the TA. Failure to cite sources is cheating and will result in a zero.

  • Exams: There will be two exams and a final.

GRADING PROCEDURES

Grades will be based on:

  • Programming Assignments (15 %)
  • Homework Assignments ( 5 %)
  • Quizzes ( 0 %)
  • Labs (20 %)
  • Exams (60 %)

[Grading Policies] (https://github.com/StevensDeptECE/DovKrugerCourses/blob/main/grading.md) [Academic Honesty and Discipline] (https://github.com/StevensDeptECE/DovKrugerCourses/blob/main/integrity.md)

IMPORTANT DATES

  • Test 1 ** 2023-TBD **
  • Test 2 ** 2023-TBD **
  • Final ** 2023-05-?? **