Teaching


Current Courses


Microprocessors and Applications (H19Y)

Undergraduate Studies Program - Compulsory Course @ 7th Semester

Technological issues related to the design and construction of digital systems using microprocessors and their peripheral units. Data and address buses in computer and microcomputer systems like PCI Bus. Memory organization. Memory addressing  techniques. DMA, Cache, Internal and External Memory (SRAM and DRAM, RAID, usb and firewire). Interrupts. Peripheral interface adapters. History and Programming of microprocessors. Study and analysis of INTEL x86, PENTIUM, POWER PC and ARM up-to-date microprocessors architecture and programming. Instruction Sets: Characteristics, Functions, Addressing Modes and Formats. Assembly. Reduced Instruction Set Computers (RISC) and Complex Instruction Set Computers (CISC). Pipelining, Instruction-Level Parallelism and Superscalar Processors, Parallel Processing. Data input/output techniques. Description of micro-computer systems. 32-bit and 64-bit  microcomputers. Multicore Computers. Lab with microprocessor development boards and ARM microprocessors.


Complex Electronic Systems: Design and Analysis (H48Y)

Undergraduate Studies Program - Optional Course @ 8th Semester

Principles of Complex Electronic Systems. Design methodologies, techniques and methods for the design and implementations of Complex Electronics Systems. EDA tools for FPGAs synthesis, FPGAs design parameters, FPGA future perspectives. Heterogeneous computing, unconventional and green computation. Future and Emergent Electronic Devices, Circuits, Models and Architectures. beyond CMOS Computing Devices and Circuits. Memristors. Quantum Cellular Automata. Neuromorphic Computing. Analysis and Design paradigms of Complex Electronic Systems for different applications, including image processing, computer vision, cryptography, real time systems, biological systems, etc. Study of IP cores of advanced computational tools, like Cellular Automata, Neural Networks, Fuzzy Logic, Bio-Inspired Optimization Techniques.


Embedded Systems Design (H43Y)

Undergraduate Studies Program - Compulsory Course @ 9th Semester

Principles of Embedded Computing. Microprocessors: Instruction Sets, CPUs. Analysis and Design of Programs. Procedures and Operating Systems. Hardware Accelerators. Networks. Memory Management Methodology: Algorithmic Transformations, Memory Hierarchy, System-Level Techniques. Hardware/Software Co-design. Case Studies: Multimedia and Wireless Networks Protocols.


Cellular Automata: Theory and Applications (MM-H8)

Postgraduate Studies Program

Cellular Automata (CA) theory: Turing machines, CAs as universal Turing machines, CA state evolution, group properties of CAs, CA evolution using Genetic Algorithms, quantum CAs. CA applications in VLSI systems: CAs as a VLSI architecture, CAs as universal pattern generators, correcting codes, cipher systems, testable logic synthesis. CAs as models of physical systems and processes: modeling and simulation using CAs, simulation of integrated circuit fabrication processes using CAs, simulation of microelectronic and nanoelectronic devices using CAs, large system simulation using CAs. Design of dedicated parallel processors that execute CA algorithms.


Past Courses