490r Group Software Project (3)
Continuation of the group design effort started in CPSC 450. Implementation of a major software product. Oral and written presentation of progress and final results required. Prerequisites: CPSC 450 with a grade of C or better and senior standing in computer science or approval of instructor.
495r Departmental Honors (1-3 hours per term, 4 hours for the two terms)On demand. See Departmental Honors.
497r Research (1-4)
498r Individual Studies (1-4)
499r Group Studies (1-4)
COMPUTER ENGINEERING COURSES (CPEN)
251 Introduction to Operating Systems (3)
Basic operating system principles, job control languages and operating system internals. The hardware/software interface; file systems; resource management; command languages; segmentation, paging and virtual memory; other virtual resources. Detailed examination of two or more current operating systems, such as Windows, UNIX or Novell NOS. Prerequisite: CPSC 160 with a grade of C or better. May be registered as CPSC 251. Credit not allowed in both CPEN 251 and CPSC 251.
261 Software Design and Development (3)
A study of the analysis, design and implementation phases of software systems development using a phased life cycle approach. Process, data and object oriented development models. Introduction to modeling tools and CASE software. Team approaches to software development. Project management concepts. Prerequisite: CPSC 160 with a grade of C or better. May be registered as CPSC 261. Credit not allowed in both CPEN 261 and CPSC 261.
305 Digital Logic and Introduction to Computer Hardware (4)
Number representation and arithmetic; basic digital devices and their Boolean representations; introduction to logic circuit design and simplification using Boolean algebra and Karnaugh maps; combinational logic building blocks such as multiplexers, demultiplexers, encoders, decoders, comparators, adders, ALUs; analysis and design of sequential logic circuits; sequential logic building blocks such as storage registers, shift registers and counters. Lecture 3 hours and laboratory 2 hours. Prerequisite: CPSC 150 with a grade of C or better. May be registered as CPSC 305. Credit not allowed in both CPEN 305 and CPSC 305.
306 Computer System Organization and Assembly Language Programming (4)
Structure of digital computers; introduction to machine language, symbolic coding, and assembly language; register sets, instruction types, and addressing modes; assembler directives and macros; low-level input/output techniques; interrupts; procedure calls, returns, and stack operations; linking to high-level languages. Lecture 3 hours and laboratory 2 hours. Prerequisites: CPSC 160 and CPSC or CPEN305 with grades of C or better. May be registered as CPSC 306. Credit not allowed in both CPEN 306 and CPSC 306.
451 Computer Engineering Senior Project:Planning and Design Phase (1)
A team project course that serves as the first part of the culminating experience for students in the Computer Engineering concentration. Students will work in small groups to develop specifications for hardware and software components and a proposed design for a system to solve a problem typical of real-world engineering practice using realistic engineering standards and constraints. Prerequisites: ENGR 222, CPSC or CPEN 306, CPSC 312 and ENEE 377/378 with grades of C or better.
460 Computer Architecture (3)
An advanced course in computer architecture. Topics include classical uniprocessor architecture, computer arithmetic, instruction sets, control unit design including the basics of microprogramming, I/O operations, memory hierarchies, cache and virtual memory mechanisms, instruction and arithmetic pipelines, CISC, RISC, superscalar and superpipelined architectures, parallel architectures. Prerequisites: CPSC or CPEN 251 and 306 with grades of C or better. May be registered as CPSC 460. Credit not allowed in both CPEN 460 and CPSC 460.
475 Advanced Computer Systems (3)
A study of representative computer systems including architectural features, hardware implementation, machine level programming, memory systems, I/O device interfacing, and system design. Prerequisites: CPSC or CPEN 305, 306, and 460 with grades of C or better. May be registered as CPSC 475. Credit not allowed in both CPEN 475 and CPSC 475.
490 Computer Engineering Senior Project:Implementation Phase (3)
A team project course that serves as the second part of the culminating experience for students in the Computer Engineering concentration. Students will work in interdisciplinary teams made up of computer engineers, computer scientists, and electrical engineers to move a project forward from an initial design through development and implementation, resulting in a complete system that solves a problem typical of real-world engineering practice, using realistic engineering standards and constraints. Written and oral presentations included. Prerequisites: CPEN 451 with a grade of C or better.