Computer engineering compendium explained

This is a list of the individual topics in Electronics, Mathematics, and Integrated Circuits that together make up the Computer Engineering field. The organization is by topic to create an effective Study Guide for this field. The contents match the full body of topics and detail information expected of a person identifying themselves as a Computer Engineering expert as laid out by the National Council of Examiners for Engineering and Surveying.[1] It is a comprehensive list and superset of the computer engineering topics generally dealt with at any one time.

Part 1 - Basics

Character Encoding

Character (computing)

Universal Character Set

IEEE 1394

ASCII

Math

Bitwise operation

Signed number representations

IEEE floating point

Operators in C and C++

De Morgan's laws

Booth's multiplication algorithm

Binary multiplier

Wallace tree

Dadda multiplier

Multiply–accumulate operation

Big O notation

Euler's identity

Basic Electronics

Series and parallel circuits

RLC circuit

Transistor

Operational amplifier applications

Signal Processing

Signal processing

Digital filter

Fast Fourier transform

Cooley–Tukey FFT algorithm

Modified discrete cosine transform

Digital signal processing

Analog-to-digital converter

Error Detection/Correction

Parity bit

Error detection and correction

Cyclic redundancy check

Hamming code

Hamming(7,4)

Convolutional code

Forward error correction

Noisy-channel coding theorem

Modulation

Signal-to-noise ratio

Linear code

Noise (electronics)

Part 2 - Hardware

Hardware

Logic family

Multi-level cell

Flip-flop (electronics)

Race condition

Binary decision diagram

Circuit minimization for Boolean functions

Karnaugh map

Quine–McCluskey algorithm

Integrated circuit design

Programmable Logic

Standard cell

Programmable logic device

Field-programmable gate array

Complex programmable logic device

Application-specific integrated circuit

Logic optimization

Register-transfer level

Floorplan (microelectronics)

Hardware description language

VHDL

Verilog

Electronic design automation

Espresso heuristic logic minimizer

Routing (electronic design automation)

Static timing analysis

Placement (EDA)

Power optimization (EDA)

Timing closure

Design flow (EDA)

Design closure

Rent's rule

Assembly/Test

Design rule checking

SystemVerilog

In-circuit test

Joint Test Action Group

Boundary scan

Boundary scan description language

Test bench

Ball grid array

Head in pillow (metallurgy)

Pad cratering

Land grid array

Processors

Computer architecture

Harvard architecture

Processor design

Central processing unit

Microcode

Arithmetic logic unit

CPU cache

Instruction set

Orthogonal instruction set

Classic RISC pipeline

Reduced instruction set computing

Instruction-level parallelism

Instruction pipeline

Hazard (computer architecture)

Bubble (computing)

Superscalar

Parallel computing

Dynamic priority scheduling

Amdahl's law

Benchmark (computing)

Moore's law

Computer performance

Supercomputer

SIMD

Multi-core processor

Explicitly parallel instruction computing

Simultaneous multithreading

Redundancy & Reliability

Dependability

Active redundancy

Dual modular redundancy

Triple modular redundancy

High-availability Seamless Redundancy

N-version programming

RAID

Fault tolerance

Fault-tolerant computer system

Watchdog timer

Redundant array of independent memory

Memory

Computer data storage

Memory controller

Memory management unit

Static random-access memory

Dynamic random-access memory

Synchronous dynamic random-access memory

DDR2 SDRAM

Flash memory

Memory scrubbing

Data striping

Hard disk drive performance characteristics

Disk sector

Part 3 - OS, Software, Testing, AI

Operating Systems

Operating system

Multiprocessing

Concurrent computing

Computer cluster

Distributed computing

Trusted computing base

Embedded system

In-circuit emulator

Real-time operating system

Comparison of real-time operating systems

Rate-monotonic scheduling

Earliest deadline first scheduling

Least slack time scheduling

Deadline-monotonic scheduling

Round-robin scheduling

O(1) scheduler

Thread (computing)

Concurrency control

Synchronization (computer science)

Mutual exclusion

Device driver

Software Development

Software development process

Software requirements specification

Spiral model

Agile software development

Behavior-driven development

Cowboy coding

Lean software development

Extreme programming

Structured systems analysis and design method

List of software development philosophies

Programming language generations

Comparison of programming languages

Printf format string

Programming paradigm

Object-oriented design

Software documentation

Software design document

Object-oriented programming

Concurrent Versions System

Software maintenance

Revision control

Software configuration management

Software release life cycle

MIL-STD-498

Software assurance

Systems development life cycle

Software quality

Software quality management

Relational database

ACID

List of data structures

Semipredicate problem

Application Interface Specification

Homoiconicity

Domain-specific modeling

Unified Modeling Language

Test/Integration

Software testing

Test-driven development

Acceptance test-driven development

Integration testing

Software walkthrough

Code review

Software inspection

Software verification

Functional testing

Software testing

White-box testing

Black-box testing

Gray box testing

Verification and validation (software)

Correctness (computer science)

AI & Robotics

Speech processing

Image processing

Computer vision

Robotics

Speech recognition

Part 4 - Information Theory, Encryption, Networking, and Security

Information Theory

Information theory

Channel capacity

Shannon–Hartley theorem

Nyquist–Shannon sampling theorem

Shannon's source coding theorem

Zero-order hold

Data compression

Modulation order

Phase-shift keying

Encryption

Hash function

List of hash functions

String searching algorithm

Avalanche effect

Rabin–Karp algorithm

Burst error-correcting code

Cryptography

Cryptographic hash function

Public-key cryptography

Viterbi algorithm

Networking

Computer network

List of network buses

Wide area network

Local area network

Network science

Non-return-to-zero

Manchester code

Ethernet

Internet

OSI model

Transmission Control Protocol

Point-to-Point Protocol

Exposed node problem

Circuit switching

Fiber-optic communication

Capacity management

Bandwidth management

Bandwidth (computing)

Throughput

Networking hardware

Wireless network

IEEE 802.11

Complementary code keying

Session Initiation Protocol

Message authentication code

Port Control Protocol

Network monitoring

Simple Network Management Protocol

Measuring network throughput

Reliability (computer networking)

Channel access method

Time division multiple access

Security

Computer security

Separation of protection and security

Information security

Information security management system

Internet security

Hacker (computer security)

DMZ (computing)

Firewall (computing)

Stateful firewall

Intrusion detection system

Denial-of-service attack

IP address spoofing

Part 5 - Misc

Multiple-criteria decision analysis

Notes and References

  1. Web site: NCEES PE Electrical and Computer Exam Specifications(note: requires updating every 6 months). National Council of Examiners for Engineering and Surveying.