catalog header

Course Catalog

Computer Engineering

Computer Engineering (CpE) combines the disciplines of electrical engineering and computer science. It encompasses computer hardware, software, and systems. The study of computer engineering is not limited to general purpose computers, but also covers embedded computer systems that control a vast multitude of devices and functions from automotive ignitions to cellular phones and various industrial controls, medical instruments, robotics, consumer electronics. Computer hardware design involves logic design, digital electronics, computer architecture, and integrated circuit design. Computer software involves the design of programs in various languages using structured and object-oriented techniques to control devices and systems. Computer systems involve the combination of hardware, software and operating system that will provide the most effective realization of a system.

Computer engineers are continually developing newer and faster computers, and they find new applications for computers every day to fill the needs of society. The computer engineer must have a broad understanding not only of computer systems, but also of basic engineering fundamentals to apply computer technology to the solution of real engineering problems.

The courses and laboratories offered in the CpE program are organized into the three disciplines of hardware, software, and system design. Technical electives that are chosen from various fields of specialization (e.g., robotics, networking, machine learning, high-performance computing, communications, computers, controls, and electronics) enable CpE seniors to apply their computer engineering knowledge in selected areas in their professional career.

The department of Electrical and Computer Engineering, in conjunction with its various constituencies, has clearly defined program objectives. These engineering program objectives are listed in the School of Engineering and Applied Science section of this catalog.

The Bachelor of Science in Computer Engineering degree program is accredited by the Engineering Accreditation Commission of ABET, www.abet.org, under the General Program Criteria and the Electrical, Computer, Communications, Telecommunication(s) and Similarly Named Engineering Programs Program Criteria.

B.S. in Computer Engineering: 133 credits


Technical Electives in Computer Engineering

Only 300 and 400 level courses that are not required in the degree plan can be used to satisfy the technical elective requirements. Approved electrical and computer engineering and computer science courses with a EENG, CPEN or CPSC designation may be used as electives. The student’s advisor must approve the selection. However, a maximum number of two approved computer science courses with a CPSC course designation may be used to satisfy computer engineering technical elective degree requirements. Please see your advisor for current course offerings.

Computer Engineering and Computer Science

  • CPEN 435 Parallel  and Cloud Computing
  • CPEN 436 Machine Learning in Biomedicine
  • CPSC 435 Parallel and Cloud Computing
  • CPSC 436 Machine Learning in Biomedicine 
  • CPSC 321 Database Management Systems
  • CPSC 346 Operating Systems 
  • CPSC 348 Computer Security
  • CPSC 450 Advanced Algorithms

Electrical Engineering

  • EENG 340/EENG 340L Introduction to Electric Power Engineering
  • EENG 401 Electronics III
  • EENG 403 Passive and Active Filter Design
  • EENG 406 VLSI Circuits and Systems
  • EENG 411 Introduction to Control Systems
  • EENG 412 Digital Control Systems
  • EENG 413/EENG 413L Automation
  • EENG 421 Introduction to Communication Systems
  • EENG 422 Digital Communication Systems
  • EENG 424 Digital Signal Processing

 

Lower Division
CPEN 193 FYS:
3.00 credits
The First-Year Seminar (FYS) introduces new Gonzaga students to the University, the Core Curriculum, and Gonzaga’s Jesuit mission and heritage. While the seminars will be taught by faculty with expertise in particular disciplines, topics will be addressed in a way that illustrates approaches and methods of different academic disciplines. The seminar format of the course highlights the participatory character of university life, emphasizing that learning is an active, collegial process.
CPEN 230 Intro Digital Logic
3.00 credits
Number systems and codes, Boolean Algebra, Logic gates and flip-flops. Verilog HDL. Combinational and sequential Logic Design using CPLDs. Three lecture hours per week.
Concurrent:
CPEN 230L
CPEN 230L Intro Digital Logic Lab
1.00 credit
Three laboratory hours per week. Taken concurrently with CPEN 230.
Concurrent:
CPEN 230
CPEN 231 Embedded Computer Systems
3.00 credits
Study of components of simple computer systems: CPU's memory, registers, busses, computer control, microprogramming, assembly language programming. Three lecture hours per week.
Prerequisite:
CPSC 121 Minimum Grade: D
Concurrent:
CPEN 231L
CPEN 231L Embedded Computer Systems Lab
1.00 credit
Three laboratory hours per week. Taken concurrently with CPEN 231.
Concurrent:
CPEN 231
CPEN 247 Network Interfacing & Sockets
3.00 credits
Reviewing main programming concepts. Introducing network models, services and applications. Processes Communications. UDP and TCP Client/Server Sockets. Offered during Spring semesters.
Prerequisite:
CPSC 121 Minimum Grade: D
Upper Division
CPEN 342 Cyber-Physical Systems
3.00 credits
The microcontroller as an engineering component. Hardware expansion with analog and digital devices. Board-level design of real-time systems. Design of user-friendly interactive displays. Design project. Troubleshooting with logic analyzers and in-circuit emulation. Three lecture hours per week.
Prerequisite:
CPEN 231 Minimum Grade: D and EENG 201 Minimum Grade: D and EENG 201L Minimum Grade: D
Equivalent:
CPEN 442 - Taken before Fall 2005
CPEN 342L Cyber-Physical Systems Lab
1.00 credit
Three laboratory hours per week. Taken concurrently with CPEN 342.
Concurrent:
CPEN 342
CPEN 430 Digital System Design
3.00 credits
Modern methods of digital design realization. Technology independence. Designs utilizing gate arrays and custom integrated circuits. Use of high-level design software. Extensive use of Verilog hardware design language for system description, simulation, and implementation. Three lecture hours per week.
Prerequisite:
CPEN 231 Minimum Grade: D or CPSC 260 Minimum Grade: D
Concurrent:
CPEN 430L
CPEN 430L Digital System Design Lab
1.00 credit
Three laboratory hours per week. Taken concurrently with CPEN 430.
Concurrent:
CPEN 430
CPEN 431 Comp Hardware Design & Arch
3.00 credits
Understanding the design techniques, machine structures, technology factors, evaluation methods that will determine the form of computers in 21st century. Three lecture hours per week.
Prerequisite:
CPEN 231 Minimum Grade: D or CPSC 260 Minimum Grade: D
CPEN 435 Parallel & Cloud Computing
3.00 credits
Parallel Programming platforms; principles of parallel algorithm design; basic communication operations; programming using the message-passing paradigm (MPI); programming on shared address space platforms (POSIX Thread and OpenMP); cloud computing; big data analysis; and other advanced topics. On sufficient demand.
Prerequisite:
CPEN 231 Minimum Grade: D or CPSC 260 Minimum Grade: D
Equivalent:
CPSC 435 - OK if taken since Fall 2022
CPEN 436 Machine Learning in Biomed
3.00 credits
Investigation of the role of computers in the provision of medical services; machine learning algorithms for regression, classification, clustering, and anomaly detection; medical decision-making support; genomic medicine and its techniques. On sufficient demand.
Prerequisite:
CPSC 121 Minimum Grade: D
Equivalent:
CPSC 436 - OK if taken since Fall 2022
CPEN 442 Introduction to Robotics
3.00 credits
Principles of real-time systems and robotics. Thread management and inter-thread communications. Semaphores and thread synchronization. Design and simulation of simple robotic systems. Cooperation, blocking semaphores, FIFO queues, and deadlocks. Thread sleeping and scheduling. File system management, solid-state drives (SSDs), Controller Area Network (CAN). Robotic control systems and fuzzy logic.
Prerequisite:
CPEN 231 Minimum Grade: D or CPSC 260 Minimum Grade: D
CPEN 443 Autonomous Mobile Robots
3.00 credits
Introducing the principles of robotic sensor integration, mobility, real-time systems, line tracking, data acquisition systems, cognition: object detection and tracking, robotic wireless control, tachometers, and odometry. This course will be offered every spring semester
Prerequisite:
CPEN 231 Minimum Grade: D and CPSC 260 Minimum Grade: D
CPEN 481 Special Topics
1.00- 3.00 credits
Courses of special interest may be offered from time to time. Prerequisites will depend on the nature of the material offered and will be announced.