Digital systems  

Prerequisites (none) Objectives - Use binary number systems and binary arithmetic. - Derive, manipulate and minimize boolean functions. - Implement boolean functions with circuits with logic gates. - Understand the operation of the fundamental building blocks of combinational circuits. - Understand the operation of basic memory elements, and work with registers and counters. - Specify and synthesize synchronous sequential circuits. - Understand basic timing issues, including clocking, timing constraints, and propagation delays. - Design low-complexity digital systems with both combinational and sequential components. Program Binary, octal and hexadecimal number systems, arithmetic operations, decimal and alphanumeric codes. Logic circuits: binary logic and gates, Boolean algebra, logic functions, standard forms, incompletely specified functions, algebraic and map minimization, circuits with NAND and NOR gates. Elementary technology elements: logic families, tri-state gates, propagation delays. Combinational circuits: encoders, decoders, multiplexers, demultiplexers, comparators, adders and subtractors. Sequential circuits: latches and flip-flops, timing analysis and timing synchronization. Registers and Counters: registers, shift registers, counters, counter interconnection and expansion. Synchronous sequential circuits: Mealy and Moore models, state diagrams and state tables, state encoding, classical synthesis, alternative synthesis methods, state minimization. Memories: RAM, ROM and PROM. Evaluation Methodology 50% continuous evaluation / 50% non-continuous evaluation Cross-Competence Component The course covers the development of transversal competences in Critical and Innovative Thinking, Interpersonal and Intrapersonal Competences (oral, organizational and teamwork, self-discipline, perseverance, self-motivation) and Information and media literacy (ability to locate and access information) in the laboratory component. The grading weight associated with these skills is of around 10%. Laboratorial Component The curricular unit involves weekly laboratory work aiming at the monitoring and deepening of the topics taught in theoretical lectures. The evaluation of the laboratory work comprises the demonstration of the performed work, the reports, and the discussion. Programming and Computing Component Considering that “Digital Systems” is taught at the beginning of the degree, before the other courses related to programming methodologies and technologies, the offered skills in this domain are related to Boole's logic and algebra, numbering and representation systems (binary), and the elementary principles of sequential procedures, often defined through state machines and/or flowcharts. These skills provide support for the subsequent teaching of formal programming languages (e.g. conditional structures, data types and algorithm implementation). The evaluation of these skills is weighted at least with 50% over all the considered evaluation elements.  More information at: https://fenix.tecnico.ulisboa.pt/cursos/lerc/disciplina-curricular/845953938490007
Presential
English
Digital systems
English

Funded by the European Union. Views and opinions expressed are however those of the author(s) only and do not necessarily reflect those of the European Union or HaDEA. Neither the European Union nor the granting authority can be held responsible for them. The statements made herein do not necessarily have the consent or agreement of the ASTRAIOS Consortium. These represent the opinion and findings of the author(s).