With this syllabus, this course aims to introduce students to the design and analysis of digital systems. Students will learn about the architecture and basic operation of a computer and gain an understanding of its fundamental components.
The course is structured into four parts. The first part covers Boolean algebra in order to understand the binary representation of information. The second part introduces combinational systems and binary arithmetic, which are used to implement basic digital devices. The third part examines how information can be stored in a digital system and introduces basic sequential systems. The fourth and final part focuses on the sequential systems used to implement the control units of computers and complex digital systems in general.
Titular Professors
Professors
None
Upon successfully completing the Introduction to Computers course, students will have acquired the following knowledge and developed the following skills:
- Understand the digital domain and its components, as well as how to design digital systems based on real-world problem statements, including system interconnection, signal analysis, and the evaluation of the response of different elements and components. (a)
- Design and use systems, components, processes, or experiments to meet established requirements, and analyse and interpret the results obtained. (b+c)
- Identify, formulate, and solve technology-based problems that require a digital system, working in a multidisciplinary environment either individually or as a member of a team. (d+e)
- Use modern system-design techniques and tools, whether as part of a workflow or as a methodology for developing a system from its initial conception through to its operation. The most commonly used tools are system simulation tools. (k)
Part I. Boolean Algebra
1. Number representation systems (4 sessions)
1.1 Number systems
1.2 Binary codes
1.3 Signed number representation
1.4 Two’s complement representation
2. Boolean algebra and logic gates (5 sessions)
2.1 Boolean algebra
2.2 Boolean functions
2.3 Truth tables
2.4 Boolean operations
2.5 Canonical forms
2.6 Boolean theorems
2.7 Design and implementation of systems using logic gates
2.8 VHDL language. Examples
2.9 Description of systems using logic gates in VHDL
3. Combinational logic circuits (10 sessions)
3.1 Function simplification using Karnaugh maps
3.2 Incompletely specified functions
3.3 Design exercises
Part II. Combinational System
4. Combinational functional blocks (9 sessions)
4.1 Characteristics of the input and output signals of functional blocks
4.2 Encoders
4.3 Decoders
4.4 Multiplexers
4.5 Comparators
4.6 Applications using functional blocks
5. Binary arithmetic (8 sessions)
5.1 Arithmetic addition in natural binary
5.2 Arithmetic subtraction in natural binary
5.3 Arithmetic multiplication in natural binary
5.4 Arithmetic operations in natural binary
5.5 Examples and design exercises involving arithmetic operations in natural binary
5.6 Two’s complement arithmetic
5.7 Examples and design exercises involving signed arithmetic operations
5.8 Arithmetic in VHDL
Part III. Basic Memory Elements and Registers
6. Memory elements, registers and counters (19 sessions)
6.1 Introduction to memory elements. Classification of sequential systems
6.2 R-S and D flip-flops, and D flip-flops with asynchronous R-S inputs
6.3 Flip-flops in VHDL
6.4 Registers and their characteristics
6.5 PI/PO registers
6.6 Serial-shift registers: SI/SO, SI/PO, PI/SO
6.7 Commercial registers
6.8 Design of control signals in registers
6.9 Register design problems
6.10 Registers in VHDL
6.11 Introduction to counters
6.12 Design of synchronous counters
6.13 Increasing counting capacity
6.14 Counters in VHDL
7. Introduction to sequential systems (5 sessions)
7.1 Introduction to sequential systems
7.2 Definition of state machines
7.3 Design of state machines
7.4 Implementation of state machines
7.5 State machines in VHDL
Part IV. Synchronous Sequential Systems
8. Sequential systems I (8 sessions)
8.1 Design of synchronous sequential systems with additional hardware
9. Memories (6 sessions)
9.1 Types of memory
9.2 Random-access memories: RAM and ROM
9.3 Sequential-access memories: LIFO and FIFO
9.4 Content-addressable memories: CAM
9.5 Exercises
10. Sequential systems II (8 sessions)
10.1 Design of synchronous sequential systems using memories
From a pedagogical perspective, the course structures learning into four levels, seeking to align with Dr Norman Webb’s four levels of Depth of Knowledge (DoK):
- Recall and reproduction: course theory
- Skills and concepts: individually simulating our designs
- Strategic thinking: designing circuit diagrams according to specified requirements
- Extended thinking: an individual practical assignment integrating the concepts learned
The methodology used in the Introduction to Computers course combines lectures with active learning methods, as well as a substantial number of continuous assessment exercises that students must complete individually or in cooperation with their classmates or the course teaching staff. The knowledge acquired during in-person classes is reinforced through group practical assignments submitted throughout the course.
The eStudy platform is used in this course as a means of communication between students and lecturers. All materials required throughout the course are published on this platform, including manuals, proposed exercises, examination papers, supporting materials, and other resources.
EVALUATION OF THE THEORY
The evaluation of the theory is organised into four quarters, two in each semester. In each quarter, both the continuous evaluation exercises and the quarter final exam will be taken into account.
Any evaluated activity that is not submitted, is submitted after the established deadline, or does not meet the specified submission requirements will receive a grade of 0.
a. CONTINUOUS EVALUATION
Continuous evaluation mainly consists of in-class exercises: periodically, students will be required to submit exercises completed in the classroom. These exercises will provide a grade that will correspond to the continuous evaluation exercise grade.
Continuous evaluation exercises cannot be retaken.
The continuous evaluation grade for each topic (EAC_Tj) will be calculated as the arithmetic mean of all the exercises corresponding to that topic. Exercises that are not submitted will also be included in the average with a grade of 0.
The continuous evaluation grade for each quarter will be calculated using the following weightings:
- EAC_Q1 = 20% EAC_T1 + 40% EAC_T2 + 40% EAC_T3
- EAC_Q2 = 50% EAC_T4 + 50% EAC_T5
- EAC_Q3 = 70% EAC_T6 + 30% EAC_T7
- EAC_Q4 = 40% EAC_T8 + 30% EAC_T9 + 30% EAC_T10
b. QUARTER FINAL EXAMS
Each quarter will include a final exam (EF_Qi) covering all the content taught during that quarter, in the following examination periods:
- EF_Q1: October Midterms, corresponding to Topics 1, 2 and 3.
- EF_Q2: December Ordinary Call, corresponding to Topics 4 and 5.
- EF_Q3: March Midterms, corresponding to Topics 6 and 7.
- EF_Q4: June Ordinary Call, corresponding to Topics 8, 9 and 10.
All four exams may be retaken during the extraordinary call under the conditions explained below.
c. QUARTER GRADE
The grade for each quarter (Qi) will be calculated as follows:
Qi = MAX(EF_Qi; 0.70 · EF_Qi + 0.30 · EAC_Qi)
FINAL THEORY GRADE
The final theory grade will be calculated using the weighted average of the four quarters:
TEOFINAL = 0.15 · Q1 + 0.25 · Q2 + 0.25 · Q3 + 0.35 · Q4
If TEOFINAL is >= 5, the theory part is passed for the current academic year.
EXTRAORDINARY CALL
If TEOFINAL is below 5, the student must sit the extraordinary call.
The student may choose which quarter final exams (EF_Qi) to take in order to improve the final theory grade. After the extraordinary call, TEOFINAL will be recalculated using the same formula.
Submitting a quarter final exam during the extraordinary call implies forfeiting any previous grade obtained for that quarter final exam.
The continuous evaluation grades for each quarter are retained for the calculation of grades during the extraordinary call.
EVALUATION OF THE PRACTICAL ASSIGNMENTS
Throughout the course, several practical assignments will be carried out and must be implemented by the students, either using discrete components on a prototyping board or using the DE10-Lite kit.
The final practical assignments grade (PRACTFINAL) will be obtained from the weighted average of the practical assignment grades according to their complexity, in accordance with the Practical Assignments Regulations published on eStudy.
If PRACTFINAL >= 5, the practical assignments part is passed for the current academic year.
FINAL COURSE GRADE
In order to pass the course, both the theory and practical assignments components must be passed separately. The final course grade will be calculated as follows:
• If TEOFINAL >= 5 and PRACTFINAL >= 5, the final course grade will be:
FINAL_GRADE = TEOFINAL · 0.7 + PRACTFINAL · 0.3
• If PRACTFINAL < 5 or TEOFINAL < 5, the final course grade will be:
FINAL_GRADE = MIN(4; TEOFINAL)
Considerations
- An activity that is not submitted, is submitted after the deadline, is blank, is submitted through an unauthorised channel, contains an incorrect, corrupted or inaccessible file, or does not allow its contents to be verified will receive a grade of 0 for calculation purposes. The student is responsible for checking that the submission has been completed successfully and that the correct file can be opened.
- Grades are valid only for the current academic year. Under no circumstances will theory or practical work grades from previous academic years be retained for subsequent academic years.
- All practical assignments must comply with the specifications and requirements stated in the assignment description, as well as with the Practical Work Regulations published on eStudy.
- Full or partial copying in any evaluated activity will be penalised in accordance with the provisions of the academic regulations, applying equally and without exception to both the source and the copy. The assessment activities are classified as follows:
-Continuous assessment exercises: Moderately significant activity
-Theory quarter final exams: Highly significant activity
-Practical assignments: Highly significant activity - Any interaction by email with staff associated with the course (theory lecturers, practical work instructors, teaching assistants, etc.) must be carried out strictly using the school email address (@students.salle.url.edu). Emails sent from addresses not belonging to the school will not receive a response.
- Use of AI tools: in accordance with the AIAS scale, the evaluated activities of the course are classified as Level 1. The use of artificial intelligence tools to prepare, solve, correct, reformulate or complete any evaluated activity is not permitted. Students must carry out these activities independently and demonstrate their own knowledge and skills.
The following will be assessed:
AC.1 Basic knowledge of digital technology and its components as well as how to design digital systems.
AC.2 The design and use of systems, components, processes or experiments to achieve the established requirements and analyze and interpret the results obtained.
AC.3 The identification, formulation and resolution of technology-based problems that require a digital system.
AC.4 The use of systems design techniques and tools for development from their inception until they begin to function.
AC.5 Knowledge in the use of digital systems simulation tools.
AC.6 Understanding the architecture of a personal computer and the knowledge and know-how to use it in an engineering project environment.
AC.7 The knowledge to design combinational and sequential digital electronic circuits, including programming using hardware description languages.
ITC Teachers (2024) Introduction to Computers Notes. La Salle Engineering - Ramon Llull University
Angulo, J. M. (1991) Electrónica Digital Moderna. Teoría y Práctica. [12ª Edición Corregida y Ampliada]. Madrid. Editorial Paraninfo S.A.
Enoch O. Hwang, (2005). Digital Logic and Microprocessor Design With VHDL. CL Engineering
Palaniappan, R. (2011). Digital systems design. Bookboon.
Roth Jr, C. H., & Kinney, L. L. (2013). Fundamentals of logic design. Nelson Education.