ENG20
ENG20
Computer engineering is referred to as computer science and engineering at some universities. Most
entry-level computer engineering jobs require at least a bachelor's degree in computer engineering
(or computer science and engineering). Typically one must learn an array of mathematics such
as calculus, algebra and trigonometry and some computer science classes.[citation needed] Degrees
in electronic or electric engineering also suffice due to the similarity of the two fields. Because
hardware engineers commonly work with computer software systems, a strong background in
computer programming is necessary. According to BLS, "a computer engineering major is similar to
electrical engineering but with some computer science courses added to the curriculum". [19] Some
large firms or specialized jobs require a master's degree.
It is also important for computer engineers to keep up with rapid advances in technology. Therefore,
many continue learning throughout their careers. This can be helpful, especially when it comes to
learning new skills or improving existing ones. For example, as the relative cost of fixing a bug
increases the further along it is in the software development cycle, there can be greater cost savings
attributed to developing and testing for quality code as soon as possible in the process, particularly
before release.[20]
Prefi
Title Suffix Requirements
x
There are two major focuses in computer engineering: hardware and software.
Specialty areas[edit]
There are many specialty areas in the field of computer engineering.
Processor design[edit]
Main article: Processor design
Processor design process involves choosing an instruction set and a certain execution paradigm
(e.g. VLIW or RISC) and results in a microarchitecture, which might be described in e.g. VHDL or
Verilog. CPU design is divided into design of the following components: datapaths (such as ALUs
and pipelines), control unit: logic which controls the datapaths, memory components such as register
files, caches, clock circuitry such as clock drivers, PLLs, clock distribution networks, pad transceiver
circuitry, logic gate cell library which is used to implement the logic.
Computer engineers work in coding, cryptography, and information protection to develop new
methods for protecting various information, such as digital images and music, fragmentation,
copyright infringement and other forms of tampering. Examples include work on wireless
communications, multi-antenna systems, optical transmission, and digital watermarking.[37]
Engineers working in computer systems work on research projects that allow for reliable, secure,
and high-performance computer systems. Projects such as designing processors for multi-threading
and parallel processing are included in this field. Other examples of work in this field include the
development of new theories, algorithms, and other tools that add performance to computer
systems.[37]
Computer architecture includes CPU design, cache hierarchy layout, memory organization and load
balancing.
Embedded systems[edit]
Quantum computing[edit]
Main article: Quantum computing
See also[edit]
Related fields[edit]
Electrical engineering
Electronic engineering
Computer science
Computer programming
Software development
Computer network
Electrical and electronic engineering
Associations[edit]
Association of Computer Engineers and Technicians
IEEE Computer Society
Association for Computing Machinery