7 courses with the subject CPE, each shown exactly as we captured it from the college's catalog, with every element we hold. Where the wording looks broken, that is our reading of the catalog, not the college's text.
CPE 223Engineering Programming II3
An Introduction to C/C++ and programming concepts such as data structures and object-oriented programming, emphasizing applications in Computer Engineering on resource-limited machines such as calculations, encryption, data error detection, electrical/mechanical systems modeling, and communication states/transitions.
Object-oriented programming (OOP), data structures, and algorithm design. The course covers topics such as encapsulation, inheritance, polymorphism, and method overloading, along with language syntax like namespaces, templates, and dynamic memory management, as well as essential data structures and algorithm analysis topics such as time and memory complexity, searching and sorting algorithms, and dynamic programming.
A study of factors that influence the design, operation, and performance of computer processors, memories, and networks. Topics may include instruction set architecture, hardware implementation of processors, memory and cache design, instruction execution paradigms, registers for I/O clock timers, etc. for synchronous digital devices, bus protocols, and component selection.
A grade of C or better in both CPE 223 and EE 221 . Credits: 3
CPE 362Embedded Linux3
An introduction to concepts and techniques needed to design and implement Linux-based conventional and/or embedded operating systems. This course includes topics such as the composition of the embedded operating system, hardware characteristics, peripheral control techniques, and managing processes. Embedded topics may include preemptive scheduling and fail-safe IO.
Engineering of distributed systems and interconnecting hardware, emphasizing scalability, reliability, and performance. This course covers topics such as switches, routers, load balancing, and high-availability systems as well as efficient and fault-tolerant networking. It may also cover traffic analysis topics, such as end-to-end delay and throughput measurement using real-time monitoring and tuning tools. Through hands-on labs using Linux-based devices, students will work with computing network hardware to optimize transmission paths and implement high-speed interconnectivity. (3 credits; 2 lecture, 2 lab)
A study of robotic systems design and programming, emphasizing the computational foundations and embedded implementation of autonomous articulated and mobile robots. This course includes topics such as forward and inverse kinematics, numerical methods for motion computation, trajectory and path planning algorithms, real-time sensing and control, and embedded control programming on microcontroller- and processor-based platforms.
An introduction to machine learning including knowledge representations and algorithms used to create computational systems that improve their performance with experience. Topics may include search techniques, pattern recognition, artificial neural networks, reinforcement learning, deep learning, and their applications in engineering (3 credit; 2 Lecture, 2 Lab).