Computer Engineering BE Program
A few decades ago, the computer engineering discipline was virtually nonexistent.
Today, it is one of the most rapidly growing fields in engineering. The ever-increasing
use of computers in almost every sphere of our society has created high demand for
engineers with balanced knowledge of hardware and software. In the heart of every
computer is electronics, which supports the execution of programs that perform tasks
for intended objectives. Therefore, computer engineers must have skills that are not
only used for design and manufacturing of central processing units, memory systems,
peripheral devices, or design of digital systems in general, but also for software
development and systems programming.
The curriculum of computer engineering provides a solid education in the fundamentals
of electrical engineering and an extensive study of digital hardware and software.
In the first two years students take courses that prepare them with the necessary
background in mathematics, physics and the fundamental concepts and principles in
circuit theory, electronics, digital systems, embedded microprocessor system design
and computer science. In the third and fourth years, students take courses in computer
architecture, software engineering, operating systems, and software tools.
Many of the courses require laboratory work where students are trained to go through
entire design cycles. For example, in a course on design of embedded microprocessor
systems, whose topics include system level architecture, microprocessors, ROM, RAM,
I/O subsystems, address decoding, programmable integrated circuits, assembly language
programming and decoding, students design, implement, and test microprocessor controlled
circuits. In a follow-up course, they study subjects such as real-time requirements,
timing, multi-module and multi-language systems, then design a complete system, and
finally, prototype it in a laboratory.
In the senior year, students take a one-year senior design course in which they team-up
with a partner, and work on a project to design and build a prototype of a particular
system. The students use their skills and knowledge acquired previously to complete
their system, which besides operational requirements must satisfy other constraints,
including economic factors, reliability, and safety. The students write a series of
technical reports on their work, give oral presentations, and at the end, demonstrate
the performance of their system.
For more information, courses, requirements, and procedures, please see our Program Guide.