banner

Computer Design and Assembly Language Programming

Purpose: to help other instructors teaching the same course

Common Course ID: 
CPE 133: Digital Design, CPE 233: Computer Design and Assembly Language Programming
CSU Instructor Open Textbook Adoption Portrait

Abstract: This open textbook is being utilized in a Computer Science course for undergraduate students by Bryan Mealy at Cal Poly, San Luis Obispo. 

About the Course

Course Title and Number
Brief Description of course highlights:  CP 133 - Number systems, Boolean algebra, Boolean functions, and function minimization. Analysis and design of combinational and sequential digital logic circuits. Hardware Description Language (HDL) concepts and applications digital design and synthesis in FPGAs. Course may be offered in classroom-based or online format. CP 233 - Design and implementation of digital computer circuits via CAD tools for programmable logic devices (PLDs). Basic computer design with its datapath components and control unit. Introduction to assembly language programming of an off-the-shelf RISC-based microcontroller.

Student population:  CPE 233 taught four to five times an academic year, and CPE 133 one to two times an academic year, with 30-35 students a section

Learning or student outcomes:  Because I authored the courseware for these two courses, the main benefit is that I have 100% control over the material. This allows me to fix bugs, add or remove material, clarify explanations, etc.


Key challenges faced and how resolved: There were initially department politics involved. When I first started the project, professors were required to only use texts “sanctioned” by the EE department. Not surprisingly, the text we were required to use was written by a faculty member in the department. Though it was not an easy road to travel down, all professors were eventually allowed to use the courseware of their choosing for the courses they teach.

About the Resource/Textbook 

Textbook or OER/Low cost Title: 

Brief Description:  These are the traditional books however I authored the OER my students used
-CPE 133: There are many books out there that cover this topic.
-CPE 233: No traditional books adequately cover the course topics.
Authors:  Bryan Mealy

Cost Savings:  $150 per book/per class

OER/Low Cost Adoption

OER/Low Cost Adoption Process

Provide an explanation or what motivated you to use this textbook or OER/Low Cost option. My main motivation was to be part of the solution for a major ongoing problem in academia: the cost of courseware. The students are at the low end of the food chain that includes authors, publishers, and bookstores. I wanted to make “knowledge” and “learning” available to my students at no cost. My secondary motivation is that many of the existing resources are somewhat out-of-date; they have fallen behind current technology.

How did you find and select the open textbook for this course?  I can assign reading based on the notion that most of the material in the book is what I feel is important to the course.

Sharing Best Practices:  The response has been mostly positive: my books save students $150 per book. Most of the negative comments were “too many typos” and “too verbose.”

About the Instructor

Bryan Mealy 
Associate Professor   
Electrical Engineering Department
California State University, San Luis Obispo