Teaching Overview
Master’s (PGCC/UEFS)
PGCC008 — Computer Systems
Foundations of modern computer systems spanning architecture, operating systems, concurrency, and distributed execution. Short, incremental labs connect concepts to performance, reliability, and reproducibility.
Specialization (CESiC/UEFS)
SIC002 — Digital Processing
Core DSP principles for embedded/real-time contexts: sampling, transforms, spectral analysis, filtering, fixed- vs. floating-point trade-offs, and implementation on MCU/FPGA targets.
Undergraduate (UEFS)
* Computer Engineering — Technology Department
TEC401 — Digital Circuits
Combinational/sequential logic, FSMs, synchronous timing, hazards, and HDL/FPGA prototyping with timing-aware verification.
TEC402 — Computer Architecture
ISAs and datapaths, pipeline design, memory hierarchy, I/O subsystems, performance modeling, and case studies bridging hardware and systems software.
TEC418 — Introduction to Hardware
Digital building blocks, sensor/actuator interfacing, signal integrity, PCB/SoC basics, and toolchain onboarding for hardware projects.
TEC440 — Microprocessors & Microcontrollers
MCU architecture, C/assembly for embedded targets, peripheral drivers (GPIO, UART, SPI, I²C), interrupts/timers/ADC, and bare-metal bring-up.
TEC470 — Embedded Systems
RTOS concepts, task scheduling, device drivers, low-power strategies, and communication stacks for IoT nodes with end-to-end integration labs.
TEC497 — Introduction to Electronics
Essential analog/digital concepts for computer engineers: devices, biasing, amplification, conversion, and mixed-signal interfaces.
TEC498 — Design of Digital Circuits
RTL design flow, constraints, synthesis, verification, timing closure, and FPGA implementation of system-level designs.
TEC499 — Digital Systems
System integration with sensors/actuators, communication interfaces, and test/validation of complete digital/embedded solutions.
TEC502 — Concurrency & Connectivity
Concurrent programming models, synchronization, and networking fundamentals for connected embedded applications and distributed services.
* Computer Engineering — Exact Sciences Department
EXA801 — Algorithms & Programming I
Algorithmic thinking, control structures, functions, and basic data types. Emphasis on problem decomposition and code clarity through weekly coding exercises.
EXA805 — Programming II
Data abstraction and modular design with structured programming; introduction to object-oriented concepts, error handling, and automated testing.
EXA806 — Data Structures
Arrays, lists, stacks, queues, trees, hash tables, and graphs with complexity analysis and application-driven labs in search, sorting, and indexing.
EXA810 — Database
Relational modeling, SQL, normalization, transactions, and introductory query optimization. Project work covers schema design and CRUD APIs.
EXA811 — Systems Analysis & Design
Requirements engineering, UML modeling, architectural styles, and iterative design. Students deliver specs and prototypes for a real-world scenario.
EXA862 — Numerical Methods
Root finding, linear systems, interpolation/approximation, and ODEs with computational assignments oriented to engineering applications.