Computer Engineering Syllabi & Exam Descriptions
Revised January 2018
Compulsory exams – Six required
Devices: circuit models and characteristics. Integrated circuits. Diodes, rectifiers, and wave shaping networks. Field effect and bipolar transistors: small-signal and AC analysis. Single-stage amplifier design. Operational amplifiers and applications. Large-signal analysis, wave shaping and bistable circuits including multivibrators, triggers, and waveform generators. Digital electronics including basic logic gates and memory elements. Hybrid analog/digital devices including A/D and D/A converters.
17-Comp-A2 Digital Systems Design
Boolean algebra. Design of combinatorial and sequential logic. Implementation using simple gates. Programmable logic devices and gate arrays. Characteristics of digital integrated circuit families. Analysis and design for controllers, processors, and memories. Microprocessors, including components, data flow, signals, and timing. Small system design, interconnection of associated devices. Computer interfacing, including parallel and serial I/O, interrupts and DMA. Common bus structures.
17-Comp-A3 Computer Architecture
Architecture, programming and I/O. Computer structure and typical processor architecture. CPU and memory organization, buses. Characteristics of I/O and storage devices. Processing unit and controller design, hardwired and microprogram control. Instruction sets and addressing modes; assembly language programming, I/O and interrupt servicing.
17-Comp-A4 Program Design and Data Structures
Programming language syntax and semantics. Design of structured and modular programs in a high level language (C, C++). Basics of object-oriented programming: classes. Non-numerical processing. Design and construction of programs involving structured data: arrays, stacks, queues, lists, trees, and records.
17-Comp-A5 Operating Systems
Operating system principles, components, and programming. Design and implementation of operating systems. Synchronization of concurrent processes, resource allocation, scheduling, protection, and privacy. Data, task, and job management: loading, linking; I/O control. Multi-core, multithreading and multiprocessing. Virtualization, hypervisors and containers. Real-time aspects. Basic characteristics of modern operating systems: unix, Windows.
17-Comp-A6 Software Engineering
Software cycles and requirements analysis. Design, implementation, test, verification and validation, documentation, quality assurance, control and life-cycle management of correct, reliable, maintainable, and cost effective software. Current design methodologies, including modularization, graphical design tools, design in high-level languages, and data flow driven designs. Planning and management of software projects. Software maintenance and configuration management.
Elective exams – Three required
17-Comp-B1 Advanced Computer Architecture
Architecture of high speed workstation and personal processors and systems. Instruction set design for pipelined machines. Caches. Multiple processor architectures, highly parallel machines, systolic arrays, neural networks, multitasking machines, real-time systems, interconnection of multiple processor systems. Architectures for specialized purposes, array processors, vector processors. Virtual machines. Embedded systems and control.
17-Comp-B2 Principles of VLSI
Very large scale integrated circuits. Fabrication processes in CMOS and BICMOS. Simplified design rules. Design methodology. Static and dynamic logic, multiphase clocking. Memory elements and memory structures. Gate arrays and standard cell technology; placement and routing. Programmable logic devices. I/O devices. Testing.
17-Comp-B3 Data Bases and File Systems
Concepts and structures for design and implementation of data bases and file systems. Data models, data normalization, data description languages, query facilities, data integrity and reliability, concurrency. Data bases: hierarchical, network and relational databases; data organization. Relational query languages: relational algebra and calculus, SQL. Relational database design. Transaction processing, query processing, reports. Security and integrity; concurrency control. File organization: sequential, indexed and direct access, multiple key, and hashing. File processing: records, files, compaction. Sorting, merging and updating files. Algorithms for inverted lists, multilist, indexed sequential and hierarchical structures. File I/O: control, utility, space allocation, and cataloguing. Index organization.
17-Comp-B4 Computer Graphics
Hardware and software systems for graphics. Input and output devices, display devices. Techniques for describing and generating image. Object modeling and display techniques. Transformations in two and three dimensions: scaling, translation, rotation, clipping and windowing. Visual realism: perspective, visibility, hidden surface elimination, illumination, shading and rendering. Graphic software and data structures, display data structures and procedures, efficient algorithms. Graphic standards such as GKS, PHIGS, TIGA, and X-windows.
17-Comp-B5 Computer Communications
Data communications, including signals, modulation and reception. Error detecting and correcting codes. Including circuit and packet switching. Multiplexing, including time, frequency and code division multiplexing. Digital networks, including ISDN, frame relay and ATM. Protocols: the ISO/OSI reference model, X.25. Internetworking and router-based networks: the TCP/IP suite of protocols, routing and flow control, Internet addressing and domain names. Local area networks, topologies, access schemes, medium access and logic layers; CSMA/CD and token ring protocols; segmented and hubbed LANs. This syllabus requires knowledge of linear systems as described in 16-Elec-A1.
17-Comp-B6 Computer Control and Robotics
Discrete-time and quantized data control systems. Z-transform and state space methods. Principles of digital control. Digital controllers and components. Controller software. Industrial and robotic systems. Descriptions of 3D space, geometry of robotics manipulators. Transducers and interfacing. This syllabus requires knowledge of linear systems as described in 16-Elec-A1.
17-Comp-B7 Digital Signal Processing
Theory of discrete-time linear systems. Digital filtering. Discrete Fourier analysis. Application to voice and image processing, communications, etc. Hardware for digital signal processing, including digital signal processors. This syllabus requires knowledge of linear systems as described in 16-Elec-A1.
17-Comp-B8 Computer Integrated Manufacturing
The integration of mechanical, electronic and informational components in manufacturing. Hierarchical and distributed computer control, including hardware and software. Collecting, controlling, processing and disseminating data. Sensors and tool control, station control. “Factory floor” local area networks and protocols; manufacturing data bases. Process design and operation. CAD/CAM, manufacturing resource planning, and numerical control.
17-Comp-B9 Artificial Intelligence and Expert Systems
Concepts of artificial intelligence. Overview of knowledge-based and expert systems. Logic programming. Programming languages (LISP and Prolog) for AI and expert system implementation. Knowledge representation. Rule-based and object-based systems.
17-Comp-B10 Distributed Systems
Characteristics of distributed systems. Networked vs. centralized systems. Fundamental concepts and mechanisms. Client-server systems. Process synchronization and interprocess communications. Principles of fault tolerance. Transaction processing techniques. Distributed file systems. Operating systems for distributed architectures. Security.
17-Comp-B11 Advanced Software Design
The design and programming aspects of the construction of large software systems. Advanced objectoriented design. Language support for modular programming, visual programming systems, GUI design and implementation.
17-Comp-B12 Computer Security
Types of threats, terminology, network basics, internet fraud, theft, cyber stalking, DoS attacks, malware, hacking, industrial espionage, encryption and cryptography, security technology: accvess control, virus scanners, firewalls, IDS, certificates, SSL/TLS, VPN, Wi-fi security; security policies; forensics.
17-Comp-B13 Mechatronic Design
Microprocessors microcontrollers, architectures, programming languages, embedded software and event-driven control, software design, communications and protocols, peripherals: sensors and interface circuits.