Close
 
 
Computer Engineering

Course Descriptions

CMPE 1101 Introduction to Computer Engineering [3-0]

as scheduled

This course is an introduction to computer engineering concepts and vision, the history of computer systems, societal and ethical issues, binary values and number systems, analog and digital data representation, gates and circuits, Boolean algebra and circuit simplification, basic computer architecture, low-level, high-level programming languages and pseudocode, and communications skills

Prerequisite(s): Grade of C or better in MATH 1340 or placement in a higher level Math course.

 

CMPE 1170 Engineering Computer Science I Laboratory [0-3]

fall, spring, summer

The course includes hands-on instruction and laboratory exercises in developing programs written in a high-level object-oriented programming language applying the principles taught in the CMPE 1370 lecture course. Co-requisite: CMPE 1370. Equivalent Course: CSCI 1170. A student may receive credit in only one course.

CMPE 1178 Engineering Computer Science I Laboratory (Honors) [3-0]

as scheduled

The course includes hands-on instruction and laboratory exercises in developing programs written in a high-level object oriented programming language applying the principles taught in the CSCI 1378 lecture course.

Equivalent course: CSCI 1170 A student may receive credit in only one course.

 

Co-requisite: CMPE 1378

 

CMPE 1370 Engineering Computer Science I [3-0]

as scheduled

An introduction to computer science and computer engineering. The fundamentals of a high-level programming language will be introduced. Methods of problem solving, techniques of algorithmic development and concepts of procedural and object-oriented programming will be emphasized. Fulfills Computer Literacy Core Requirement.

Co-requisite: CMPE 1170.

 

Cannot receive credit for both CSCI 1380 and CMPE 1370. Will replace a grade received in CSCI. Equivalent Course: CSCI 1370-. A student may receive credit in only one course.

 

Prerequisite(s): Computer Literacy experience and enrollment In or credit for CMPE 1101 & MATH 1340 or placement in higher level Math.

 

CMPE 1378 Engineering Computer Science I (Honors) [3-0]

The fundamentals of a high-level programming language will be introduced. Methods of problem solving, techniques of algorithmic development and concepts of procedural and object oriented programming will be emphasized. Fulfills Computer Literacy Core Requirement

Prerequisite(s): Comp. Literacy exp. & enrollment or placement in Math 1340 or higher. Credit or enrollment in CMPE 1101

 

Co-requisite: CMPE 1178

 

CMPE 2120 Electrical Circuits Laboratory [0-3]

fall, spring, summer

This course covers fundamental circuit measurement techniques and reinforces concepts from CMPE 2320, Electrical Circuits I. Topics include basic instrumentation; measurement of voltage, current, resistance, power, frequency and phase; analysis of experimental data; and reporting of technical results. Prerequisite: Credit or registration for CMPE 2320. Equivalent Course: ELEE 2120. A student may not receive credit for both CMPE 2120 and ELEE 2120.

CMPE 2130 Digital Systems Engineering I Laboratory [0-3]

fall, spring, summer

Basics of digital logic and hardware; combinational circuits, flip-flops, registers, sequential circuits and state machines. Co-requisite: Credit or registration for CMPE 2330. Equivalent Course: ELEE 2130. A student may not receive credit for both CMPE 2130 and ELEE 2130.

CMPE 2320 Electrical Circuits I [3-0]

fall, spring,

This course covers fundamentals of electrical circuits, including basic definitions, Kirchoff’s laws, nodal and loop analysis, superposition, Thevenin and Norton equivalents, time-varying circuits, simple transient response, sinusoidal steady state analysis using phasors and power in sinusoidal steady state circuits. Equivalent Course: ELEE 2320. A student may not receive credit for both CMPE 2320 and ELEE 2320. Prerequisites: Credit for MATH 1470, credit or registration for PHYS 2402.

CMPE 2322 Signals and Systems [3-0]

fall, spring, summer

Fourier and Laplace transforms with applications to circuit analysis; transfer functions and impulse response; discrete time systems including sampling and z transforms. Prerequisites: ELEE 2320 with a grade of C or better, credit or enrollment in MATH 3349.

CMPE 2330 Digital Systems Engineering I [3-0]

fall, spring, summer

Boolean algebra; analysis and synthesis of combinational and sequential switching network; applications to computer design.
Co-requisite: CMPE 2130 recommended but not required.
Equivalent Course: ELEE 2330. A student may not receive credit for both CMPE 2330 and ELEE 2330.
Prerequisite(s): CMPE 1101 and CMPE 1370 or CSCI 1370. Placement or enrollment in or credit for MATH 1460.

CMPE 2333 Computer Organization and Assembly Language [3-0]

fall, spring, summer

An introduction to computer organization, use of assembly language programming, basic instruction sets, arithmetic and logical operations, addressing modes and macro definition. Several computer programming projects are included. Prerequisite: CMPE 1370 or CSCI 1381 or 1387. Equivalent Course: CSCI 2333. A student may receive credit in only one course.

CMPE 2380 Computer Science II [3-0]

fall, spring, summer

A second programming course includes problem solving by structured design; provides an introduction to elementary data structures, including linked lists, stacks queues, trees and graphs and advanced programming techniques, including recursion, sorting and searching. Prerequisite: CSCI 1381 or CSCI 1388 or CSCI 1370 or CMPE 1370 or consent of instructor. Equivalent Course: CSCI 2380. A student may receive credit in only one course.

CMPE 2388 Computer Science II (Honors) [3-0]

as scheduled

 

This course problem-solving by object-oriented design and development; covers elementary data structures, including linked lists, stacks, queues and binary trees, with an introduction to graphs, advanced programming techniques, including recursion and sorting and searching algorithms. Students are required to complete problem solving projects.

Prerequisite(s): CMPE 1370 OR CSCI 1370 or consent of instructor. Equivalent course: CSCI 2388, a student may receive credit in only one course.

 

CMPE 3226 Instrumentation Lab I [0-6]

fall, spring, summer

Intermediate-level measurements, instrumentation and data acquisition; limitations of ideal models; design projects in areas of digital logic and electronics; technical communication. Prerequisite(s): Concurrent enrollment in or credit for MATH 3349. Credit or enrollment in CMPE 3403.

CMPE 3331 Microcontroller and Embedded Systems Lab [1-6]

fall, spring, summer

Design projects of progressively increasing complexity including mixed signal design, computer interfacing, embedded microcontrollers and distributed systems. Prerequisites: CMPE 3226, CMPE 3403 and CMPE 3437 with a grade of C or better.

CMPE 3333 Algorithms and Data Structures [3-0]

fall, spring, summer

This course is a continuation of data structures topics covered in CMPE 2380. Content includes theoretical topics in algorithmic efficiency and complexity, along with abstract data types, including graphs, networks, trees and priority queues. Search topics, including hashing, trees, external search trees (B-trees) and sorting algorithms including external sorting are introduced and compared. Computational complexity topics include the Class P and NP, NP-completeness and reducibility, NP-completeness proofs and NP-complete problems. Prerequisites: CMPE 2380 or CSCI 2380, and concurrent enrollment in MATH 2346. Equivalent Course: CSCI 3333. A student may receive credit in only one course.

CMPE 3334 Systems Programming [3-0]

fall, spring, summer

This course covers the design and implementation of system software. It investigates the relationship between software design and machine architecture. Topics may include assemblers, macroprocessors, compilers, loaders, debugging environments, program development and archival tools, command language interpreters (shells), file systems, I/O support, processes, threads and inter-process communication. Equivalent Course: CSCI 3334. A student may receive credit in only one course. Prerequisites: CSCI 2333 or CMPE 2333 or ELEE 3435 or CMPE 3437.

CMPE 3340 Software Engineering [3-0]

fall, spring, summer

A formal approach to the state-of-the-art techniques in software design and development. Emphasis will be on project planning, requirements, specification and system design and includes object design, testing and implementation. Provides the student with the opportunity to work on large projects in a group situation. Prerequisite: CMPE 2380 or CSCI 2380 and three advanced hours in CSCI or CMPE courses. Equivalent Course: CSCI 3340. A student may receive credit in only one course.

CMPE 3341 Software Engineering II [3-0]

fall, spring, summer

The course will cover the analysis of requirements and software architecture and with a major emphasis on object design, implementation, testing and validation, maintenance and software re-engineering. It will provide the student with the opportunity to work on large projects in a group situation. Prerequisite: CMPE 3340 or CSCI 3340. Equivalent Course: CSCI 3341. A student may receive credit in only one course.

CMPE 3342 Probability and Statistics for Computer Engineers [3-0]

fall, spring, summer

Probability, random variables, distribution and density functions, statistical estimators, correlation, regression techniques, system response to random inputs. Prerequisite: ELEE 2321 or CMPE 2322. Equivalent Course: ELEE 3340. A student may not receive credit for both ELEE 3340 and CMPE 3342.

CMPE 3403 Electronics for Computer Engineering [3-1]

fall, spring, summer

An intensive one-semester introduction to electronics, emphasizing topics specific to computer engineering. Basic semiconductor devices, device characteristics and models, amplifier circuits, device level design of switching and logic circuits, operational amplifiers and power supplies. Prerequisites: CMPE 2320 or ELEE 2320 and CMPE 2330 or ELEE 2330 with a grade of C or better.

CMPE 3437 Microprocessor Systems [3-3]

fall, spring, summer

Basic microprocessor programming and principles of assembly language programming; microprocessor organization and interfacing; applications, including data acquisition, control and communication. Prerequisites: CMPE 2330 and CMPE 1370. Equivalent Course: ELEE 3435. A student may not receive credit for both ELEE 3435 and CMPE 3437.

CMPE 4185 Research Seminar [0-0-3]

as scheduled

Students will have the opportunity to conduct faculty-sponsored research in the area of mutual interest resulting in oral and written presentation of their work to other students and faculty. May be repeated up to 6 credit hours. Up to the three credit hours can be used to meet CMPE degree requirements. Cross-Listed with CSCI 4185 Research Seminar

CMPE 4301 Digital Image Processing [3-0]

fall, spring, summer

The course presents fundamental concepts and applications of digital image processing. Topics include basic color, image perception and transformation, image enhancement and compression, image analysis and computer vision. Prerequisite: CSCI 3333 or CMPE 3333. Equivalent Course: CSCI 4301. Students may receive credit for only one.

CMPE 4303 Digital Systems Engineering II [3-0]

fall, spring, summer

Hardware implementation of arithmetic and other algorithmic processes; organization, design and simulation of digital systems; asynchronous sequential switching networks. Prerequisite: CMPE 2330. Equivalent Course: ELEE 4303. A student may not receive credit for both CMPE 4303 and ELEE 4303.

CMPE 4327 Compiler Construction [3-0]

fall, spring, summer

Syntax analysis and semantic processing for a block-structured language. Compilation vs. interpretation; lexical analysis based on finite automata; syntax-directed translation; symbol tables; run-time storage allocation; error detection and recovery; code generation and optimization. Students are required to write a compiler. Prerequisites: CSCI 3334 or CMPE 3334 or consent of instructor. Equivalent Course: CSCI 4327. A student may receive credit in only one course.

CMPE 4333 Database Design and Implementation [3-0]

fall, spring, summer

Study of logical (hierarchical, network, relational) and physical (sequential, indexed, relative) organization of databases. Database management systems and their features, querying databases, distributed databases and data compression. Prerequisite: CSCI 3333 or CMPE 3333. Equivalent Course: CSCI 4333. A student may receive credit in only one course.

CMPE 4334 Operating Systems [3-0]

fall, spring, summer

This course provides a study of the basic concepts of operating systems; process management, memory management, file systems, resource allocation and protection. Prerequisites: CMPE 3333 or CSCI 3333 and CMPE 3334 or CSCI 3334. Equivalent Course: CSCI 4334. A student may receive credit in only one course.

CMPE 4335 Computer Architecture [3-0]

fall, spring, summer

A study of the operational units and their interconnections of a modern computer as well as the theory behind the design of the instruction set, control unit, registers, memory hierarchy and addressing modes, bus structures, input/output and storage units. Similarities between CISC and RISC architectures and related issues such as instruction level parallelism and superscalar processors are discussed. Prerequisites: CSCI 2333 or CMPE 2333 or CMPE 3437 and CSCI 3333 or CMPE 3333. Students may receive credit for only one of CSCI 4335, CMPE 4335, CMPE 4380 or ELEE 4380. Equivalent Course: CSCI 4335.

CMPE 4336 Parallel and Distributed Computing [3-0]

fall, spring, summer

Presents principles and practices of parallel and distributed computing. Topics include parallel and distributed computation models and architectures; design, analysis and implementation of parallel algorithms; and methods of parallel and distributed programming. Prerequisite: CSCI 4335 or CMPE 4335 or CMPE 4380. Equivalent Course: CSCI 4336. A student may receive credit in only one course.

CMPE 4341 Topics in Computer Engineering [3-0]

fall, spring, summer

Topics selected from current issues in computer engineering. May be repeated for credit when topics vary. Prerequisite: Consent of instructor.

CMPE 4343 Software Verification, Validation and Quality Assurance [3-0]

fall, spring, summer

Course topics include: Methods for evaluating software for correctness and reliability including code inspections and their role in software verification; program proofs and testing methodologies; formal and informal proofs of correctness; unit and system testing techniques, testing tools and limitations of testing; statistical testing; and reliability models. Prerequisites: CMPE 3340. Equivalent Course: CSCI 4343. A student may receive credit in only one course.

CMPE 4345 Computer Networks [3-0]

fall, spring, summer

An introduction to data communication topics, including data transmission, encoding, data link control, switching, network topologies, protocols, Internet working and data security. Examples of existing networks and network architectures are studied. Prerequisite: CMPE 3333. Equivalent Course: CSCI 4345. A student may receive credit in only one course.

 

CMPE 4350 Artificial Intelligence [3-0]

fall, spring, summer

Study of intelligent machines and machine learning. Includes problem solving and heuristic search, natural language understanding, game playing, database and expert systems. Artificial Intelligence projects will be implemented using an AI language such as Lisp, Prolog, C++ or Java. Prerequisite: CSCI 3333 or CMPE 3333. Equivalent Course: CSCI 4350. A student may receive credit in only one course.

CMPE 4363 Computer and Network Security [3-0]

fall, spring, summer

This course examines the internetworking architecture and routing, design and implementation issues related to secure and reliable networks, cryptography, firewalls, digital signatures, worms, viruses, logic bombs and spyware. Prerequisite: CMPE 4345 or CSCI 4345 or CMPE 4390. Equivalent Course: CSCI 4363. A student may receive credit in only one course.

CMPE 4365 Digital Signal Processing [3-0]

fall, spring, summer

Sampling theory, discrete processing of analog signals, discrete Fourier transforms, signal analysis, z-transforms, digital filter design, real-time digital signal processing, applications. Prerequisites: ELEE 2321 or CMPE 2322 and credit for or enrollment in MATH 3349. Equivalent Course: ELEE 4365. A student may not receive credit for both ELEE 4365 and CMPE 4365.

CMPE 4366 Introduction to Image Processing [3-0]

fall, spring, summer

This course provides an introduction to image processing topics and design of image processing software. The course covers methods for computer analysis of images, and processing of images including image formation, spatial resolution, preprocessing techniques, image filtering, image enhancement and image segmentation methods. Prerequisites: CSCI 1370 or equivalent. Equivalent Course: ELEE 4366. A student may not receive credit for both CMPE 4366 and ELEE 4366.

CMPE 4367 Fiber Optics Communication [3-0]

fall, spring, summer

Introduction to optics, photonics and optoelectronics, fiber optics devices and communication systems. Topics include ray optics, electromagnetic optics, resonator optics, dielectric waveguides and fibers, semiconductor and laser light sources and detectors, modulators, amplifiers, connectors and optical fiber communication systems. Prerequisite: CMPE 2321 or CMPE 2322. This course is equivalent to course ELEE 4367. A student will not receive credit for both.

CMPE 4371 Senior Design I Software Track [1-6]

fall, spring, summer

Apply the knowledge and skills gained in previous courses to synthesize a solution to a significant and realistic problem, integrating software and hardware design. Participate in team project activities including problem formulation and proposal, project analysis, software and hardware requirements specification, project planning and software and hardware design. Software design documentation and oral presentation are an integral part of the course. Prerequisites: CSCI 3340 or CMPE 3340 and senior standing in computer engineering. Can receive credit for only one of CSCI 4390, CMPE 4371 and CMPE 4373.

CMPE 4372 Senior Design II Software Track [1-6]

fall, spring, summer

Continuation of CMPE 4371. Team project activities include software and hardware design reviews, implementation, quality assurance, software and hardware testing, integration, project documentation, presentations and demonstration. Also covers social and ethical implications of the computer engineering profession. Prerequisite: CMPE 4371 in the previous semester. Cannot receive credit for both CMPE 4372 and CMPE 4374.

CMPE 4373 Senior Design I Hardware Track [1-6]

fall, spring, summer

Apply the knowledge and skills gained in previous courses to synthesize a solution to a significant and realistic problem integrating software and hardware design. Participate in team project activities including problem formulation and proposal, project analysis, software and hardware requirements, specifications, project planning and software and hardware design. Software design documentation and oral presentation are an integral part of the course. CMPE 4373 should be taken in the last two semesters before graduating. Cannot receive credit for both CMPE 4371 and CMPE 4373.

CMPE 4374 Senior Design II Hardware Track [1-6]

fall, spring, summer

Team project activities include software and hardware design reviews, implementation, quality assurance, software and hardware testing, integration, project documentations, presentations and demonstrations. Also covers social and ethical implications of the computer engineering profession. Prerequisite: CMPE 4373 in the previous semester. Cannot receive credit for both CMPE 4372 and CMPE 4374.

CMPE 4375 Introduction to VLSI [3-0]

fall, spring, summer

This course provides an introduction to the area of CMOS VLSI design and design of VLSI circuits, including CMOS logic circuits, integrated circuit layout and design tools and overview of integrated circuit fabrication. Prerequisites: CMPE 2330 and CMPE 3403. Equivalent Course: ELEE 4375. A student may not receive credit for both CMPE 4375 and ELEE 4375.

CMPE 4378 Signal Integrity and Electromagnetic Compatibility [3-0]

fall, spring, summer

Distortion of digital signals analyzed via lumped element and transmission line models, power distribution in electronic systems, printed circuit layout guidelines, basic electromagnetic principles as applied to shielding and grounding, EMI regulations. Prerequisite: ELEE 2321 or CMPE 2322. Equivalent Course: ELEE 4378. A student may not receive credit for both ELEE 4378 and CMPE 4378.

CMPE 4380 Computer Architecture [3-0]

fall, spring, summer

This course presents an overview of digital computer architecture, including architectural issues for processors, instruction sets, microprogramming, memory hierarchy and interleaving, cache and virtual mapping. RISC principles and principles of pipelining and pipeline hazards, as well as input/output devices. Prerequisite: CMPE 3437 or ELEE 3435. Equivalent Course: ELEE 4380. A student may receive credit for only one of the following: CMPE 4380, ELEE 4380, CSCI 4335, CMPE 4335.

CMPE 4381 Interactive Systems and User Interface Design [3-0]

fall, spring, summer

Presents principles and practice of information communication between user and system. The course examines results of past research, as well as evolving trends in interface design and implementation. Prerequisite: CSCI 3333, CMPE 3333 or consent of the instructor. Equivalent Course: CSCI 4381. A student may receive credit in only one course.

CMPE 4390 Computer Networks [3-0]

fall, spring, summer

This course covers engineering principles of data communications, including the following topics: communication media and signal encoding schemes, point-to-point communication standards, layering concepts, data-link protocols, network protocols, transport layer protocols, error control, flow control, congestion control, routing algorithms, virtual circuits, call setup procedure, TCP/IP protocol, internetworking, switching and switching fabric, frame relays, ATM and emerging technologies. Prerequisite: CMPE 4337 or junior standing. Equivalent Course: ELEE 4390. A student may not receive credit for both CMPE 4390 and ELEE 4390.