# Computer Engineering

CE 1202 Introduction to Electrical Engineering (2 semester hours) CE 1202 introduces the discipline of engineering. It includes a 1.5-hour lecture per week plus a 3-hour fundamentals laboratory that stresses learning about laboratory procedures and equipment. Topics include: Learning the use of common laboratory electronic equipment; understanding the assembly of electronic circuits; and making various measurements. Students also learn how to work together with a partner and how to write a laboratory report. The lecture introduces general engineering practices, engineering research at UTD, engineering activities at selected local companies, and concepts such as innovation and invention. The course also includes lectures and projects on communication, understanding the importance of lifelong learning, ethics, and a knowledge of contemporary issues. CE 1202 may be taken by students outside of engineering in order to learn about the engineering profession. (Same as EE 1202 and TE 1202) (1.5-3) S

CE 1337 (COSC 1337) Computer Science I (3 semester hours) Introduction to object-oriented software analysis, design, and development. Classes and objects. Object composition and polymorphism. Sorting, searching, recursion. Strings using core classes. Inheritance and interfaces. Graphical User Interfaces. Includes a comprehensive programming project. Prerequisite: CS 1336 with a grade of C or better or equivalent. (Same as CS 1337 and TE 1337) (3-0) S

CE 2305 (MATH 2305) Discrete Mathematics for Computing I (3 semester hours) Principles of counting. Logic and proof methods, including induction. Basic recurrence relations. Basics of algorithm complexity. Sets, relations, functions. Elementary graph theory. Elementary number theory. Students cannot get credit for both CE 2305 and (CE 3307 or TE 3307). Prerequisite: MATH 1326 or MATH 2413 or MATH 2417. (Same as CS 2305 and TE 2305) (3-0) S

CE 2310 Introduction to Digital Systems (3 semester hours) Introduction to digital circuits, hardware structures, and assembly-language concepts that underlie the design of modern computer systems. Topics include: Internal data representation and arithmetic operations in a computer, basic logic circuits, MIPS assembly language and an overview of computer architecture. Some knowledge of a high-level language such as C++ or Java is expected. This class also has a laboratory component. Exercises will be assigned in class for completion in the laboratory. This class may be offered as either regular or honors sections (H). (Same as EE 2310) (3-1) S

CE 2336 (COSC 2336) Computer Science II (3 semester hours) Exceptions and number formatting. File input/output using Stream classes. Implementation of primitive data structures, including linked lists (all types), stacks, queues, and binary trees. Advanced data manipulation using core classes. Introduction to multi-threading, multimedia, and networking. Includes a comprehensive programming project. Prerequisite: CE 1337 or CS 1337 or TE 1337. Prerequisite or corequisite: CE 2305 or CS 2305 or TE 2305. (Same as CS 2336 and TE 2336) (3-0) S

CE 2v99 Topics in Computer Engineering (1-4 semester hours) May be repeated as topics vary (9 hours maximum). ([1-4]-0) R

CE 3101 Electrical Network Analysis Laboratory (1 semester hour) Laboratory to accompany CE 3301. Design, assembly and testing of linear electrical networks and systems. Use of computers to control electrical equipment and acquire data. Prerequisites: (CE 1202 or EE 1202 or TE 1202) and RHET 1302. Corequisite: CE 3301. (Same as EE 3101 and TE 3101) (0-1) S

CE 3102 Signals and Systems Laboratory (1 semester hour) Laboratory based on MATLAB and LabVIEW to provide implementation experience on topics covered in CE 3302. Laboratory experiments cover linear time-invariant systems, convolution, Fourier series, continuous Fourier transform, sampling, discrete Fourier transform, analog and digital filtering. Each lab is followed by a design application. Corequisite: CE 3302. Prerequisite: RHET 1302. (Same as EE 3102 and TE 3102) (0-1) S

CE 3110 Electronic Devices Laboratory (1 semester hour) Laboratory to accompany CE 3310. Experimental determination and illustration of properties of carriers in semiconductors including carrier drift, carrier diffusion; p-n junctions including forward and reverse bias effects and transient effects; bipolar transistors including the Ebers-Moll model and secondary effects; field effect transistors including biasing effects, MOS capacitance and threshold voltage. Corequisite: CE 3310 or EE 3310. Prerequisite: RHET 1302. (Same as EE 3110) (0-1) S

CE 3111 Electronic Circuits Laboratory (1 semester hour) Laboratory to accompany CE 3311. Design, assembly and testing of electronic circuits that use diodes, transistors and operational amplifiers in configurations typically encountered in practical applications. Corequisite: CE 3311 or EE 3311. Prerequisite: RHET 1302. (Same as EE 3111) (0-1) S

CE 3120 Digital Circuits Laboratory (1 semester hour) Laboratory to accompany CE 3320. Design, assembly, and testing of logic circuits. Use of programmable logic devices and simple CAD tools. Corequisite: CE 3320 or EE 3320. Prerequisite: RHET 1302. (Same as EE 3120) (0-1) S

CE 3301 Electrical Network Analysis (3 semester hours) Analysis and design of RC, RL, and RLC electrical networks. Sinusoidal steady state analysis of passive networks using phasor representation; mesh and nodal analyses. Introduction to the concept of impulse response and frequency analysis using the Laplace transform. Prerequisites: MATH 2420 and PHYS 2326. Corequisite: CE 3101. (Same as EE 3301 and TE 3301) (3-0) S

CE 3302 Signals and Systems (3 semester hours) Introduces the fundamentals of continuous and discrete-time signal processing. Linear system analysis including convolution and impulse response, Fourier series, Fourier transform and applications, discrete-time signal analysis, sampling and z-transform. Prerequisite: ENGR 3300. Corequisite: CE 3102. (Same as EE 3302 and TE 3302) (3-0) S

CE 3310 Electronic Devices (3 semester hours) Theory and application of solid state electronic devices. Physical principles of carrier motion in semiconductors leading to operating principles and circuit models for diodes, bipolar transistors, and field effect transistors. Introduction to integrated circuits. Prerequisite: CE 3301 or EE 3301 or TE 3301. Corequisite: CE 3110 or EE 3110. (Same as EE 3310) (3-0) S

CE 3311 Electronic Circuits (3 semester hours) Large-signal and small-signal characteristics of diodes, BJT and MOSFET transistors. Analysis of circuits containing diodes. Analysis of the DC and small-signal characteristics of single-stage BJT and MOSFET amplifiers. Analysis of circuits with an operational amplifier as a black box. Introduction of high-frequency models of BJT and MOSFET transistors and methods to analyze amplifier frequency response. Prerequisite: CE 3310 or EE 3310. Corequisite: CE 3111 or EE 3111. (Same as EE 3311) (3-0) S

CE 3320 Digital Circuits (3 semester hours) Design and analysis of combinational logic circuits using basic logic gates and other building blocks like multiplexers and ROMs. Design and analysis of latches and flip-flops. Design and analysis of synchronous state machines. State minimization and introduction to state assignment. Design of datapath components: adders, multipliers, registers, shifters, and counters. Electrical properties of logic gates. Students cannot receive credit for both CS 4341 and CE 3320 or EE 3320. Prerequisite: CE 2310 or EE 2310. Corequisite: CE 3120. (Same as EE 3320) (3-0) S

CE 3345 Data Structures and Introduction to Algorithmic Analysis (3 semester hours) Analysis of algorithms including time complexity and Big-O notation. Analysis of stacks, queues, and trees, including B-trees. Heaps, hashing, and advanced sorting techniques. Disjoint sets and graphs. Course emphasizes design and implementation. Students that completed CE 3346 or TE 3346 cannot receive credit for this course. Prerequisites: (CE 2305 or CS 2305 or TE 2305) and (CE 2336 or CS 2336 or TE 2336). Prerequisite or corequisite: CS 3341 or SE 3341 or ENGR 3341. (Same as CS 3345 and SE 3345 and TE 3345) (3-0) S

CE 3354 Software Engineering (3 semester hours) Introduction to software life cycle models. Software requirements engineering, formal specification and validation. Techniques for software design and testing. Cost estimation models. Issues in software quality assurance and software maintenance. Prerequisites: (CE 2336 or CS 2336 or TE 2336 or CS 3333), and (CE 2305 or CS 2305 or TE 2305 or equivalent). Prerequisite or corequisite: ECS 3390. (Same as CS 3354 and SE 3354) (3-0) S

CE 4304 Computer Architecture (3 semester hours) Introduction to computer organization and design, including the following topics: CPU performance analysis. Instruction set design, illustrated by the MIPS instruction set architecture. Systems-level view of computer arithmetic. Design of the datapath and control for a simple processor. Pipelining. Hierarchical memory. I/O systems. I/O performance analysis. Multiprocessing. Students cannot receive credit for both (CS 3340 or SE 3340 or TE 3340) and (CE 4304 or EE 4304). Prerequisite: CE 3320 or EE 3320. (Same as EE 4304) (3-0) S

CE 4337 Organization of Programming Languages (3 semester hours) Principles of design and implementation of contemporary programming languages. Formal description including specification of syntax and semantics of programming languages. Language definition structures including binding, scoping, data types, control structures, parameter passing, abstraction mechanism, and run-time considerations. Design issues of imperative languages, object-oriented languages, functional languages and logic languages. Design, implement, and debug programs in various programming language paradigms. Prerequisites: (CE 2336 or CS 2336 or TE 2336 or CS 3333) and (CE 2305 or CS 2305 or TE 2305) and (CS 3340 or SE 3340 or TE 3340 or CE 4304 or EE 4304). (Same as CS 4337) (3-0) S

CE 4348 Operating Systems Concepts (3 semester hours) An introduction to fundamental concepts in operating systems: their design, implementation, and usage. Topics include process management, main memory management, virtual memory, I/O and device drivers, file systems, secondary storage management, and an introduction to critical sections and deadlocks. Prerequisites: (CS 3340 or SE 3340 or TE 3340 or equivalent), and (CE 3345 or CS 3345 or SE 3345 or TE 3345), and a working knowledge of C and UNIX. (Same as CS 4348 and SE 4348 and TE 4348) (3-0) S

CE 4370 Embedded Microprocessor Systems (3 semester hours) An introduction to microprocessors and their uses. Features commonly found in a CPU are discussed, such as: The Program Counter, Stack, Status Register, General Purpose Registers, ALU, Instruction Set and peripheral devices. Memory (SRAM, DRAM, EPROM, EEPROM) and Memory Mapped IO Peripheral Devices. Assembly language is used to create the binary machine code necessary to program a Microprocessor system. The special features of microprocessors: the stack, interrupts, input ports, out ports and display. Prerequisites: (CE 3311 or EE 3311) and (CE 3320 or EE 3320). Corequisite: CE 4304 or EE 4304. (3-1) Y

CE 4372 Contemporary Systems Design (3 semester hours) Design and analysis based system level design concepts, develop working projects using traditional and emerging technologies. Emphasis on specifying requirements, tracking projects and building test and validation strategies. Prerequisites: (CE 3320 or EE 3320) and (CE 3345 or CS 3345 or SE 3345 or TE 3345) and (CE 3354 or CS 3354 or SE 3354). (3-0) Y

CE 4388 Senior Design Project I (3 semester hours) First of two sequential semesters devoted to a team project that engages students in the full engineering design process. The goal of senior design projects is to prepare the student to run/participate in engineering projects related to an appropriate industry. Thus, all project teams are to follow standard industrial practices and methods. Teams must carry the engineering project to completion, examining real world and multiple design constraints, following applicable industrial and business standards. Such constraints may include but are not limited to: economic, environmental, industrial standards, team time/resource management and cross-disciplinary/departmental result integration. Students are required to work in teams that include collaborative design interaction. Additionally, cross-disciplinary teams are encouraged but not required. In Senior Design I, project proposals will be written, reviewed and approved. Initial designs will be completed and corresponding constraints will be determined. All students will participate in a public oral and poster presentation following departmental approved guidelines at a departmental approved time and location. Teams will also submit a written end of semester progress report and documented team communication (complete sets of weekly reports and/or log books) following guidelines approved by the faculty. Students must have completed ECS 3390 and one of the following prerequisite sequences: ((CE 3311 or EE 3311), and (CE 3320 or EE 3320), and (CE 3345 or CS 3345 or SE 3345 or TE 3345), and (CE 3354 or CS 3354 or SE 3354)), or [((ENGR 3300 and (CE 3302 or EE 3302 or TE 3302), and (CE 3311 or EE 3311), and (CE 3320 or EE 3320)), or ((ENGR 3300 and (CE 3302 or EE 3302 or TE 3302), and (CE 3345 or CS 3345 or SE 3345 or TE 3345)); prerequisite or corequisite: EE 3350 or TE 3350.] (Same as EE 4388 and TE 4388) (3-0) S

CE 4389 Senior Design Project II (3 semester hours) Continuation of the Senior Design project begun in the previous semester. In Senior Design II, projects based on approved project proposals will be completed. All limitations of the design will be determined and addressed. All students will participate in a public oral presentation following faculty-approved guidelines at a faculty-approved time and location. Teams will also submit a written final report and documented team communication (complete sets of weekly reports and/or log books) following faculty-approved guidelines. Prerequisite: CE 4388 or EE 4388 or TE 4388. (Same as EE 4389 and TE 4389) (3-0) S

CE 4390 Computer Networks (3 semester hours) The design and analysis of computer networks. Topics include the ISO reference model, transmission media, medium-access protocols, LANs, data link protocols, routing, congestion control, internetworking, and connection management. Students cannot get credit for both (CE 4390 or CS 4390 or TE 4390) and EE 4390. Prerequisite: CE 3345 or CS 3345 or SE 3345 or TE 3345 or equivalent. (Same as CS 4390 and TE 4390) (3-0) S

CE 4399 Senior Honors in Computer Engineering (3 semester hours) For students conducting independent research for honors theses or projects. (0-3) R

CE 4v95 Undergraduate Topics in Computer Engineering (1-9 semester hours) Subject matter will vary from semester to semester. May be repeated for credit as topics vary (9 hours maximum). ([1-9]-0) R

CE 4v97 Independent Study in Computer Engineering (1-9 semester hours) Independent study under a faculty member's direction. May be repeated for credit as topics vary (9 hours maximum). Instructor consent required. ([1-9]-0) R

CE 4v98 Undergraduate Research in Computer Engineering (1-9 semester hours) Topics will vary from semester to semester. May be repeated for credit as topics vary (9 hours maximum). Instructor consent required. ([1-9]-0) R