Design of Digital Systems (1801T046)

Abbreviations

p-sz - obligatory module of common theoretical basis, obligatory for all specialisations,
pv-ob - elective branch module, obligatory for selected branches,
pv-za - elective specialisation module, obligatory for selected specialisations,
p-hu - obligatory humanity module,
p-em - iobligatory economical-management module,
p-pr - obligatory project,
pv-hu - elective humanity module,
v - elective module.

module (abbreviation) dimension completion type of module lecturer recom. year
Statistics for Informatics ( MIE-SPI ) 4+1 z,zk p-sz Blažek, Ph.D. 1.
Parallel Algorithms and Systems ( MIE-PAR ) 3+1 z,zk p-sz prof. Tvrdík 1.
Systems Theory ( MIE-TES ) 2+1 z,zk p-sz prof. Moos 1.
Design for the FPGA and ASIC Technology ( MIE-NFA ) 2+1 z,zk pv-ob Schmidt, Ph.D. 1.
System Modeling and Analysis ( MIE-MAS ) 2+1 z,zk pv-ob doc. Janeček 1.
Cybernality ( MIE-KYB ) 2+0 zk p-hu doc. Jirovský 1.
Mathematics for Informatics ( MIE-MPI ) 4+1 z,zk p-sz doc. Šolcová 1.
Arithmetics and Codes ( MIE-AAK ) 2+1 z,zk pv-ob doc. Pluháček 1.
Parallel Computer Architectures ( MIE-PAP ) 2+1 z,zk pv-ob Šimeček, Ph.D. 1.
Security and Hardware ( MIE-BHW ) 2+1 z,zk pv-ob Dr.-Ing. Novotný 1.
elective module 2+1 z,zk v 1.
elective module 2+1 z,zk v 1.
Project Management ( MIE-PRM ) 1+2 z p-em Vala 1.
Problems and Algorithms ( MIE-PAA ) 3+1 z,zk pv-ob Schmidt, Ph.D. 2.
Systems on Chip ( MIE-SOC ) 2+1 z,zk pv-ob doc. Kubátová 2.
Testing and Reliability ( MIE-TSP ) 2+1 z,zk pv-ob prof. Novák 2.
Master project ( MIE-MPR ) z p-pr 2.
elective module 2+1 z,zk v 2.
elective module 2+1 z,zk v 2.
Information Security ( MIE-IBE ) 2+0 zk p-em Čermák, CSc. 2.
elective module 2+1 z,zk v 2.
IT Support to Business and CIO Role ( MIE-CIO ) 3+0 zk p-em prof. Dohnal 2.
obligatory humanity module zk pv-hu 2.
Master Thesis (MIE-DIP) z p-pr 2.

MIE-AAK - Arithmetics and Codes

Annotation

Circuits realizing arithmetic operations belong to fundamental components of computers and digital devices in general. In the module, algorithms for basic and advanced arithmetic operations (including elementary mathematical funcions) will be presented that are suitable especially to be implemented using logic circuits. The goal is to present various ways to detect or correct individual errors and burst errors in data stored into memories or transmitted via channels.

Lectures program

  1. Standard number systems and negative number representations.
  2. Nonstandard number systems.
  3. Addition, subtraction, and carry acceleration.
  4. Multiplication.
  5. Division.
  6. Floating point.
  7. Evaluating elementary functions.
  8. Linear codes.
  9. Cyclic codes.
  10. The RM a BCH codes.
  11. Burst error correction.
  12. Convolution codes and turbo codes.
  13. Error coding for arithmetic.

MIE-BHW - Security and Hardware

Annotation

The module introduces students into the area of security of computer systems using hardware and provides knowledge needed for analysis and design of computer system security.

Lectures program

  1. Security HW modules - cryptographic accelerators, random number generators, DRM support.
  2. HW support for authentication and identification - smart cards, tokens, RFID.
  3. HW means for physical parameter measurement - biometrics.
  4. Side-channels - technology and architecture influence, fault security.
  5. System tamper resistance - physical parameter monitors, trusted platforms, secure interconnection.
  6. Input and ouput security, storage security.

MIE-CIO - IT Support to Business and CIO Role

Annotation

Students are introduced to the trends and challenges of ICT management. The module is focused on ICT support for the company business. Students are introduced to the importance of communication with business that will be illustrated on CRM.

Lectures program

  1. Introduction. IT trends and business support. CIO and CEO relationship. ICT Management (categorization, management models, services, processes).
  2. CIO role, responsibility. CIO Decision Cycle (business goals, innovation, strategy, plan, execution, measurement).
  3. The value chain and ICT support. Marketing and selling processes, business cycle.
  4. CIO priorities: Team management. Understanding of the business environment. ICT vision. Shape ICT demand and communicate expectations. IT Governance.
  5. CIO priorities: Bring business and ICT strategies together. Communication of the ICT value to business. Risk Management.
  6. CIO priorities: Creation of a new ICT. Change in the profile of ICT people. ICT competencies (technical, business, behavioral).
  7. ICT business cases on workforce (time management, meeting management, delegation).
  8. ICT business cases on workforce (appraisal, coaching, mentor, mentee).
  9. CRM as an example of ICT support of business processes. CRM and enterprise culture.
  10. CRM processes.
  11. CRM Technology. CRM innovation and the role of ICT.
  12. Specific tasks of ICT management (sourcing, cost cutting).
  13. Invited lecturer – CIO of a selected company, discussion.

MIE-IBE - Information Security

Annotation

The field of information security governance in modern organizations and companies is of growing importance. The module is to provide students a good overview of methods and standards for informstion security. The aim of the module is to let the students understand the importance of information security governance, to provide them sufficient arguments for the support of ISMS implementation process and for successfull implementation and/or management of ISMS.

Lectures program

  1. Management, management and governance, IT management.
  2. Information security management system, IS/ICT governance, international standards on IS/ICT security, legislation in the Czech Republic.
  3. Risk management.
  4. Physical security, access control system, information resource valuation, internal and external threats, evaluation of countermeasures,
  5. Administration security (guidelines, training).
  6. Disaster recovery planning, business continuity management, incident management,
  7. IS/IT audits, application security testing, penetration testing, certifications.
  8. Certification according ISO 27001, Best practises (ISO 17999),
  9. Information security trends.

MIE-KYB - Cybernality

Annotation

The goal of this module is to provide knowledge of cyberspace attacks, systems for their monitoring and analysis, and an overview of a corresponding legislative. It also familiarizes students with principles of network attacks and means how to defend against them at the organization level.

Lectures program

  1. Basic leslative norms relevant for operation of computer systems and networks, basic notions.
  2. Classification of attacks.
  3. Systems for computer network operation monitoring.
  4. Cybernetic attacks, psychologic and social aspects of a cybernetic attack, life cycle of exploiting the system weaknesses.
  5. Hackers - hacker comunity, types and motivations of the hacker behaviour.
  6. Cyberterorism, its demonstration and methods.
  7. Principles of infoware, the role of intelligent agents, strategic information warfare.
  8. Principles of attacks on the web, trends of attacks and attackers, phases of an attack, coordination and management of an attack.
  9. Basic types of attacks - DoS, forged node, manipulation with address sequences.

MIE-MAS - System Modeling and Analysis

Annotation

Modern systems - networks or embedded systems - consist of many components working in parallel. The behavior and peformance of the system as a whole is difficult to determine analytically. Deployment of ill-designed or low-performance system leads to significant losses. Students learn to work with models based on stateful descriptions and temporal logic that allows to describe the behavior of the target system, verify its correctness, and avoid problems such as deadlocks. Students will get acquainted with models based on the principles of queuing theory that allow to estimate, or verify by simulation, the behavior of queuing systems under load.

Lectures program

  1. State description of the system, automata as models.
  2. Extended finite state machine (FSM), cooperating FSMs.
  3. Verification of the automaton model, SPIN.
  4. Temporal logic as a behavioral model, derived languages.
  5. Alternative models - Petri nets, process algebras, LOTOS.
  6. Time properties of applications, the RM analysis.
  7. Scheduling strategies, the RM and EDF scheduling.
  8. Queueing system models, Markov automata.
  9. M/M/1, M/D/1, M/M/n, and M/D/n systems, simulation.
  10. Performance validation and predictability.
  11. Performance optimization.
  12. Functionality validation. Dynamic checking.
  13. Formal verification and combined methods.

MIE-MPI - Mathematics for Informatics

Annotation

Mathematics as a language for description of the world is a key discipline for an informatics engineer. The aim of this module is introduce students to the relevant parts of modern mathematics that form the theoretical background of many informatics disciplines.

Lectures program

  1. [2] Universal algebra: groups, finite groups, Cayley tables, group types, permutation, alternating, cyclic, and symmetry groups, normal subgroups.
  2. Finite fields, prime order of field, rings and their properties, integral domain, ideal. Lattices.
  3. Introduction to category theory, classes of objects, classes of morphisms and its properties, examples of categories: grupoid, category of all lattices, category of all commutative groups, category of all integral domains, category of all relations. Homomorphisms.
  4. Selected problems of graph theory, types of Hamiltonian problems. Algebraic solutions of combinatorial problems, Polya enumeration theorem.
  5. Algebra and algorithms (Algorithms for calculations of polynom roots - Newton' method, Lehmer-Schur's method, etc.).
  6. Convex sets, convex hull, pure convex set, theorem on partition of convex sets, Minkowski theorem on projection.
  7. Selected problems of number theory, quadratic congruence, Gauss algorithms. Special primes - factorial, palindromic, cyclic, Gauss', Eisenstein's primes. Examples of applications.
  8. Properties of Fermat primes, Little Fermat Theorem, primality tests, Pépin test, number theory and geometry, constructability of polygons.
  9. Selected numerical methods, Lagrange and Hermite interpolation, numerical integration, numerical solution of ordinary differential equations, calculating of eigenvalues of matrices, methods of solving of linear equations systems.
  10. Fast algorithms: multiplication, numerical searching of square roots, Fourier transformation, Fermat transformation.
  11. Axiomatic systems and their properties, recursive functions, proofs in the axiomatic system, examples of axiomatic systems, Peano's arithmetics, von Neumann's model of numbers.
  12. Special logics, multi-valued logics, modal logics, fuzzy logics.

MIE-NFA - Design for the FPGA and ASIC Technology

Annotation

The module builds a bridge from the basic digital design, which students have learned earlier, to the level where the students will understand professional designers. They will gain insight into the interplay between technology, software tools, workflow, and the quality of the result.

Lectures program

  1. The gist of hardware design. The role and types of decomposition. Synthetic and analytic steps. Basic economy of product design and manufacturing.
  2. CMOS circuits, dynamic behavior, power consumption. Technology characterization. Implementation of programmable combinational function and programmable interconnect.
  3. Synchronous digital design, timing, models. Clock domains, signal transfer across clock domain boundary. Metastablility.
  4. Top-down and bottom-up design process, its steps and iteration loops. Hardware project management, metrics. Intellectual property cores. Reuse methodology.
  5. Programmable devices: overview, usage, programming methods. SPLD and CPLD devices.
  6. FPGA devices: architecture, logical blocks, interconnect, blocks performing computation and communication, memory blocks. Dynamic behavior.
  7. Design styles for ASICs. The impact of deep submicron technologies. ASIC design tools.
  8. ASIC and FPGA workflow comparison, key differences.
  9. Verification techniques: formal techniques (model checking, equivalence checking), advanced simulation, assertions, hybrid assertion-based techniques.
  10. Physical design: routing, placement, technology mapping.
  11. Logic synthesis, basic phases, used formalisms. Timing-driven and power-driven synthesis.
  12. Behavioral synthesis, areas of use.
  13. System-level design, hardware-software decomposition and codesign, design by model refinement.

MIE-PAA - Problems and Algorithms

Annotation

Many practical tasks are computationally infeasible. Students will learn to distinguish tasks where the complexity grows too fast with the task size from those which are undecidable independently of size. They will learn fast algorithms for exact and, primarily, approximate solution. Some of the more advanced ones are inspired by processes in nature and sometimes referred to as softcomputing. A series of homeworks will lead students from very simple tasks to applications of advanced heuristics on a practical problem.

Lectures program

  1. Discrete optimization, examples of practical tasks. Combinatorial problems. Algorithm complexity, problem complexity.
  2. State, state space, search space. Basic exact search methods.
  3. Decidable problems. models of computation. The classes P and NP. Polynomial hierarchy. The classes PO and NPO.
  4. The notion of completeness. Complexity comparison techniques. The classes NP-complete and NP-hard. The structure of NP and NPO.
  5. Deterministic approximation algorithms. Classification of approximative problems. Pseudopolynomial algorithms. Randomization and randomized algorithms.
  6. Practical deployment of heuristic and exact algorithms. Experimental evaluation.
  7. Simple local heuristics in state space and search space.
  8. Simulated annealing.
  9. Simulated evolution: taxonomy, genetic algorithms.
  10. Advanced genetic algorithms: competent GA, fast messy GA, the selfish gene method. Applications to multicriterial optimization.
  11. Stochastic optimization: models and applications. Bayesian optimization.
  12. Tabu search.
  13. Global methods, taxonomy of decomposition-based methods. Exact and heuristic global methods, the Davis-Putnam procedure seen as a global method.

MIE-PAP - Parallel Computer Architectures

Annotation

Nowadays, the importance of parallel computing rapidly grows due to the fact that Moore's law moved to parallelization of processors, multiprocessor systems are becoming a commodity, and even any PC end-user meets these systems. These trends bring challenges for SW developers, since common applications should be optimally parallelized. The goal of the module is to provide an overview of present parallel architectures in PCs, emebedded systems, mobile computing devices, GPUs. The aim is to teach students tools and methods for programming these systems.

Lectures program

  1. SIMD architectures. programming, data dependency solutions, hiding latency of instructions.
  2. VLIW architectures, programming, speculative solutions of data dependences, solutions for exceptions.
  3. VLIW architectures for digital signal processing.
  4. Multithreaded architectures.
  5. Homogeneous multi-core architectures, memory subsystem, interrupts.
  6. Heterogeneous multi-core architectures, shared and local memory, data transfers.
  7. GPU architectures.
  8. Programming environments and tools for multicore architectures.
  9. Programming environments and tools for GPUs.
  10. Systems on chip (SoC, NoC), switching networks, synchronous and asynchronous module interconnections.
  11. Special parallel architectures, neural networks.

MIE-PAR - Parallel Algorithms and Systems

Annotation

The aim of the course is to provide students with the theoretical background for parallel algorithmization that lets them design and implement algorithms for parallel systems, from multicore systems and systems-on-chip to clusters, understand their behavior and estimate performance characteristics.

Lectures program

  1. Performance characteristics of parallel computations.
  2. Models of parallel systems with shared memory.
  3. Interconnection networks of parallel computers.
  4. Embeddings and simulations of interconnection networks.
  5. Models for interprocessor communication and routing.
  6. Collective communication algorithms.
  7. Fundamental parallel algorithmics.
  8. Parallel sorting algorithms.
  9. Parallel algorithms for linear algebra.
  10. Parallel combinatorial space search.

MIE-PRM - Project Management

Annotation

Project management and project thinking became an integral part of management of projects of all kinds (research, development, finances, engineering, etc.). Knowledge of this field takes an important places in the process of recruitment. The aim of this subject is to acquaint student with all of the aspects of project management, refer to the relatated areas, introduce most important methodologies of PM and prepade students for the basic certification of theoretical knowledge of PM (e.g., IPMA – D grade). The most common and important software tools used in project management will also be introduced.

Lectures program

  1. Project management, project, process. Definition of project participants, aims, metrics, quantification, planning, budget.
  2. Role of the project manager (presentation, levels of communication, duties). Life cycle and stages of a project.
  3. Project documents. Pre-business and business stages of a project.
  4. Preparation and realization stages of a project. Operation and closure of a project.
  5. Stabilization of a project, feedback, control mechanisms (methodical, contractual, or matter-of-fact supervision), risk management.
  6. Contractual arrangement of a project, business negotations, quality of delivery (SLA, security), warranty.
  7. Demand, definition of services, evaluation of proposals, the act of public contracts, evaluation criteria.
  8. Financial control.
  9. Project team management - human resources (roles, CIO, conducting a meeting, written records, tasks).
  10. Management of large projects (by area, by volume). Multiproject enviroment (reporting, coordination).
  11. Principles of methodology of poject management – Prince2, PMI. Quality management of project according to norms ISO 10006, ISO 9001.
  12. Setting up project management to company (linear x project management, process management).
  13. Particularities of project management of IS development.

MIE-SOC - Systems on Chip

Annotation

Modern highly integrated digital systems are designed to achieve high performance, small dimensions, and low energy consumption. The module brings knowledge required to design both the software and the hardware of such systems, because both areas are tightly coupled. Nevertheless, design is only a small part of the game. "We will die of verification" was heard at conferences as early as in 2000, in reference to difficult verification of system correctness. Therefore, we present the contemporary state-of-the-art in this area, as it is necessary for verification engineers. The last part of the course is dedicated to the construction of dependable systems for critical applications.

Lectures program

  1. A taxonomy and characteristics of systems on a chip (SoC). Common requirements to SoC. Implementation platforms, granularity.
  2. Communications on the chip, latency, throughput, architectures.
  3. Hardware-software decomposition, design space exploration.
  4. System-level timing, scheduling algorithms, time-triggered architectures.
  5. Real-time operating systems and their architectures, implementation of synchronization primitives, communication interfaces.
  6. Real-time applications, fault-tolerant software.
  7. Hardware timing and synchronization, cycle-accurate models, model refinement.
  8. Networks on chip (NoC), routing protocols and their implementation.
  9. Design reuse, third-party intellectual property cores, standard communication and test interfaces.
  10. SoC verification methods. Assertions, Property Specification Language, model checking.
  11. Verification by simulation, simulation cover monitoring and control, random stimuli method.
  12. Verification of protocols, state machines, interfaces, data paths. Equivalence checking. Software verification. Software-hardware coverification.
  13. Large-scale fault-tolerant systems. Fault-tolerance methods for hardware and software.

MIE-SPI - Statistics for Informatics

Annotation

The aim of the module is to provide an introduction to probability, information theory and stochastic processes. Furthermore, the module brings knowledge needed for data analysis and processing. It provides students with knowledge of computational methods and gets them acquainted with the use of statistical software.

Lectures program

  1. Basics of Probability Theory: Probability Space, Definitions, Properties, Sigma-continuity, etc.
  2. Basics of Probability Theory: Conditional Probability, Independence, Commented Examples
  3. Basics of Probability Theory: Random Variables, Cumulative Distribution Function, Probability Density Function, Dependence, Random Vectors, Marginal and Joint Distribution
  4. Basics of Probability Theory: Conditional Distribution, Conditional Expectation, Characteristics of Random Variables, Selected Examples of Probability Distributions
  5. Basics of Probability Theory: Poisson Process, Simulation Methods, Generating Functions
  6. Basics of Probability Theory: Strong Law of Large Numbers (SLLN), Central Limit Theorem (CLT), Large Deviations, Entropy
  7. Discrete-time Markov Chains with Finite State Space: Basic Concepts, Irreducibility and Periodicity of States, Absorption Probability, Stopping Times
  8. Discrete-time Markov Chains: Examples: Generalized Random Walk, Random Walk on a Graph, Gambler's Ruin, Coupon Collector
  9. Discrete-time Markov Chains: Asymptotic Stationarity, Uniqueness and Existence of Stationary Distributions, Convergence
  10. Discrete-time Markov Chains: Branching Processes, Birth & Death processes
  11. Monte Carlo Methods: Markov Chain Monte Carlo (MCMC) – Basic Concepts and Examples
  12. Monte Carlo Methods: Fast convergence of MCMC, Propp-Wilson Algorithm, Sandwiching, Simulated Annealing
  13. Monte Carlo Methods: Monte Carlo Estimates, Monte Carlo Tests, Reduction of Variance
  14. Stochastic Processes: Definition, Distribution Function, Characteristics of Stochastic Processes
  15. Stochastic Processes: Characteristics and Classification of Stochastic Processes, Examples
  16. Basics of Queueing Theory: Elements of Queueing Systems, Request Arrival Process, Queueing Policy, Service Policy, Kendall Notation
  17. Stochastic Processes: Application of the Poisson Process to Model Arrivals in Queueing Systems
  18. Stochastic Processes: Application of the Poisson Process in Queueing Theory
  19. Stochastic Processes: Non-homogeneous Poisson Process, Spatial Poisson Process, M/G/infinity Queue
  20. Continuous-time Markov Chains: Jump Rates, Timing Jumps by Poisson Process Arrivals, Kolmogorov Equations
  21. Basics of Queueing Theory: M/M/m Queues, Queueing Systems
  22. Basics of Queueing Theory: Open and Closed Queueing Systems
  23. Bootstrap Methods: Properties of Bootstrap Approximations, Bootstrap Correction of Estimation Bias
  24. Bootstrap Methods: Bootstrap Confidence Intervals, Permutation Bootstrap
  25. Bootstrap Methods: Bootstrap Confidence Intervals for Parameters in Linear Regression
  26. Estimation of Probability Density Functions: Histogram, Kernel Estimates, Maximum Likelihood Estimation, Estimation by the Method of Moments

MIE-TES - Systems Theory

Annotation

We are surrounded by phenomena and things that are too complex to be completely and in detail described, understood, and analyzed. However, it turns out that many of them, even though of various nature, show similar properties and behaviors: for example, the number of wolfs hunted down in Canada has similar time characteristics as the oscillations of an electronic relaxation oscillator. The structure of a system, i.e., the way how it is assembled from components, often plays substantial role. Students learn to work with these general rules of law both for the analysis of behavior of such systems and for their construction.

Lectures program

  1. System definition. Structural and functional concept of a system.
  2. Compositional and dynamic systems. Hard and soft systems.
  3. Identification of a system.
  4. Structural tasks of the system analysis. Paths and feedbacks.
  5. Tasks of decomposition and composition of a system and tasks of system goals.
  6. System behavior, behavior models, the notion of a process.
  7. Formalisms for the analysis of model behavior: Petri nets, decision tables.
  8. Bulk analysis and other methods of system analysis.
  9. Soft systems, methods of their analysis.
  10. Selected methodologies of system design, the SSADM method.
  11. System synthesis with discrete time.
  12. Decision and decision processes.
  13. Information in a system and in its neighborhood, system regularity, system viability.

MIE-TSP - Testing and Reliability

Annotation

Students will gain an overview about circuit testing and about methods for increasing reliability and security. Students will understand the complexity of fault detection, fault localisation, reliability evaluation and enhancement by solving practical examples and projects. They will be able to optimize the trade-off between introduced redundancy and the measure of testability and security of the proposed system. Students will obtain a competence for getting a position of testing engineer in the teams working on complex digital designs.

Lectures program

  1. Introduction to testing of digital circuits, defects, errors, faults, failures.
  2. Test generation for combinational circuits, intuitive path sensitization.
  3. Boolean difference, the D algorithm.
  4. Fault diagnosis, test minimization, ATPG systems.
  5. Memory, processor, FPGA, SoC testing.
  6. IDDQ testing, testers, analog circuit testing.
  7. Design for testability, IEEE 1149 and 1500 standards.
  8. Built-in Self Test, test pattern generation, sample and response compression.
  9. Reliability models, reliability indicators.
  10. Reliability of mantained and redundant systems.
  11. Fault-safe systems, totally self-checking circuits.
  12. Reliability improving techniques, design of systems with enhanced reliability.


Last modified: 1.10.2010, 16:11