Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Digital Design 2

    A tantárgy neve magyarul / Name of the subject in Hungarian: Digitális technika 2

    Last updated: 2024. február 19.

    Budapest University of Technology and Economics
    Faculty of Electrical Engineering and Informatics
    Course ID Semester Assessment Credit Tantárgyfélév
    VIIIAA05 2 2/1/1/v 6  
    3. Course coordinator and department Dr. Rácz György,
    Web page of the course https://www.iit.bme.hu/targyak/BMEVIIIAA06
    4. Instructors
    • Dr. Horváth Tamás
    • Dr. Pilászy György
    • Dr. Rácz György
    5. Required knowledge

    Number systems, and binary representation of numbers.

    Logical functions, combinational and sequential networks.

    Common digital integrated circuits (multiplexer, decoder, counter, comparator)

    6. Pre-requisites
    Kötelező:
    (TárgyEredmény( "BMEVIIIAA01" , "jegy" , _ ) >= 2 VAGY
    TárgyEredmény( "BMEVIIIAA04" , "jegy" , _ ) >= 2 VAGY
    TárgyEredmény( "BMEVIIIA104" , "jegy" , _ ) >= 2 VAGY
    TárgyEredmény( "BMEVIIIA105" , "jegy" , _ ) >= 2 )

    ÉS NEM (TárgyTeljesítve("BMEVIIIA106") VAGY TárgyTeljesítve("BMEVIIIA108") )

    ÉS NEM ( TárgyEredmény( "BMEVIIIAA02" , "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény("BMEVIIIAA02", "FELVETEL", AktualisFelev()) > 0)


    ÉS (Training.Code=("5N-A7") VAGY Training.Code=("5N-A7H") VAGY Training.Code=("5NAA7"))

    A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

    A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

    7. Objectives, learning outcomes and obtained knowledge

    The course (together with the course entitled Digital Design 1) provides the students with all system level hardware and software knowledge required to the logical level design of microprocessor and microcontroller based digital equipment. The theoretical background is also widened through the solution of design problems during the classroom and laboratory practices and homework assignments.

    Students successfully passing the course will:

    • learn the methods and practices in the design and analysis of microprocessor and microcontroller based systems.
    • obtain detailed understanding of a simple microcontroller, its common peripherals and its assembly language
    be able to quickly understand the usage of other microprocessors
    8. Synopsis

    Lectures (one lecture every week):

    Week 1: Quick rewiev of combinational and sequential networks, binary arithmetic, binary multiplication. Separation of control and datapaths.

    Week 2: Organization of a general purpose control unit: the ALU, Program counter, instruction decoder, register file, instruction memory, data memory. Case study: designig a simple number sequencing cpu (3 instructions)

    Week 3: Three state signals, time multiplexing of data wires. Busses and bus systems (control, data and address busses). Extending the memory interface. Separate I/O and memory busses.

    Week 4: Simple memory types (RAM, ROM, FLASH). Memory interfacing to an actual bus system (as an example the Microchip PIC24F family’s EPMP bus is used).

    Week 5: Introduction of an actual commercial microcontroller: cpu core and instruciton set, power requirements, reset and clocking. (as an example, the Microchip PIC24F core is used, the actual device used in labs will be the PIC24JF256GA705)

    Week 6: Introduction to he programming model of the PIC24: Registers, instruction encoding, address modes. Arithmetic and logical instructions, condition flags, conditional jumps.

    Week 7: Indirect addressing and stack. Pointers, subroutines, parameter passing to subroutines. (Mainly in assembly, with some references to C)

    Week 8: Interrupt handling, context save and restore. Nested interrupts, interrupt priorities. Implementing a simple software based delay, and its problems.

    Week 9: Introduction to common micocontroller periherals through the example of a timer, and common timer based beripherals (input capture, output compare, PWM).

    Week 10: Communication related peripherals (UART, SPI).

    Week 11: Organizaton and handling of simple communication buffers, an example for setup and interrupt based usage of the PIC24F’s buffered UART.

    Week 12: Introduction to bus arbitration and DMA. Overview of the PIC24F’s DMA capabilities.

    Week 13: Specialities of modern memory types: NVRAM, FRAM, MRAM, DRAM, DDRAM, NAND and NOR FLASH.

    Week 14: Quick overwiev of programmable logical devices: PAL, GAL, CPLD, FPGA, the PIC24F’s CLC peripheral.

     

     Practices (one practice every two weeks):

    1: Logic levels and logic level conversion, open collector buffers. Implementing simple logical functions usint only open collector outputs.

    2: Simple design tasks based on arithmetic, comparators, multiplexers and counters.

    3: Memory interfacing to a bus system.

    4: Basic assembly programming: formula evaluation, simple loops, counting problem.

    5: Basic assembly programming: subroutines, functions, lookup tables, data conversion.

    6: IO handling, button debouncing, writing a simple embedded control program in assembly.

    7: Practicing common exam problems

     

    Labs (3 times 3 hour lab practices in total):

    1: Hands-on practice in a microcontroller development environment (MPLAB X). Trace and debug functions. Debugging and tracing a simple C and assembly program.

    2: IO port handling, edge detection, output pulse generation. Filling an external shift register using bit-banged IO (a shift register based LED display is used on the dev board).

    3: Complex microcontroller based program, using IO ports, timers and SPI peripheral. (implementing a stopwatch)

    9. Method of instruction

    Two hours of lecture weekly, two hours of practice evey other week, and altogether 3 times 3 hour lab practices.

    10. Assessment

    Attendance on at least 70% of the classroom practices and on all the laboratory practices is mandatory for passing the course.

    The term requirements are fulfilled by achieving at least 50% of all the points on 2 out of the 3 the homework assignments.

    Written examination in the exam period.

    11. Recaps

    Only one laboratory practice can be repeated.

    There is no replacement for the homeworks. 

    12. Consultations Upon individual request at the teachers.
    13. References, textbooks and resources
    • Robert Bryan Reese, Bryan A. Jones, J. W. Bruce: Microcontrollers: From Assembly Language to C Using the PIC24 Family, Cengage Learning, 2014, ISBN: 1305076559, 9781305076556
    • D. M. Harris, S.L. Harris: Digital Design and Computer Architecture
    • M. Morris Mano, Charles R. Kime: Logic and Computer Design Fundamentals, Prentice Hall, 2001, ISBN 0-13-031486-2
    • John F. Wakerly: Digital Design, Prentice Hall, 2001, ISBN 0-13-089896-1
    14. Required learning hours and assignment
    Contact hours56
    Preparation for contact hours42
    Preparation for Lab practices6
    Homework assignments 16
    Home readings 0
    Preparation for the exam 60
    Total workload 180
    15. Syllabus prepared by

    Dr. Pilászy György



    Dr. Horváth Tamás


    Dr. Rácz György