Course syllabus adopted 2021-02-17 by Head of Programme (or corresponding).
Overview
- Swedish nameMaskinorienterad programmering
- CodeDAT017
- Credits7.5 Credits
- OwnerTKITE
- Education cycleFirst-cycle
- Main field of studyComputer Science and Engineering, Software Engineering
- DepartmentCOMPUTER SCIENCE AND ENGINEERING
- GradingTH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Course round 1
- Teaching language Swedish
- Application code 52126
- Maximum participants160
- Open for exchange studentsNo
- Only students with the course round in the programme overview.
Credit distribution
Module | Sp1 | Sp2 | Sp3 | Sp4 | Summer | Not Sp | Examination dates |
---|---|---|---|---|---|---|---|
0116 Laboratory 3 c Grading: UG | 3 c | ||||||
0216 Examination 4.5 c Grading: TH | 4.5 c |
|
In programmes
Examiner
- Erik Sintorn
- Associate Professor, Computer and Network Systems, Computer Science and Engineering
Eligibility
General entry requirements for bachelor's level (first cycle)Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Specific entry requirements
The same as for the programme that owns the course.Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Course specific prerequisites
Introductory courses in imperative programming and computer engineering.Aim
This course is intended as an introduction to small embedded systems. It should give the student insight into how imperative constructs are translated to assembly code and also demonstrate the problems that arise when event driven systems with several data sources are to be programmed.Learning outcomes (after completion of the course the student should be able to)
- write simple assembly language programs using the selected architecture's instruction set.
- write simple machine oriented C programs using the programming language's data types and control structures.
- describe the assembler equivalent of typical programming structures in C.
- apply tools from the course to develop programs
- contribute to the construction and programming of simple embedded systems with given components
- construct systems generating various types of exceptional events (internal exceptions, interrupts, restarts)
- describe and illustrate a few basic types of peripherals and their use
Content
Software development in C and assembly language, testing and troubleshooting. Structured assembler, basic code generation. First level system programming, ie how the computer is programmed to boot from power on, and handling of different types of exceptions such as internal errors, events and interrupts. Programming devices for parallel input and output, time management and programming of timers. Basics of computer communications and programming devices for serial communications. Moreover, a simple time-sharing systems (in C and assembly language) with special emphasis on the use of peripheral circuits, is implemented.Organisation
Scheduled teaching comprises lectures, demonstrations, and supervised simulation and coding exercises; and also supervised mandatory laboratory.
During the course, the student designs progressively bigger and bigger building blocks of software in C and assembler. The theory is acquired through lectures and demonstrations. The student designs the blocks then carries out tests with the aid of simulators during simulation exercises. In preparation for laboratory exercises the student will finally adapt the software in order to enable hardware verification of the function.
Literature
See the course homepage.Examination including compulsory elements
Examination is based on a written exam and approved laboratory exercises. Based on the exam result, the grade F, 3, 4, or 5 are given.The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.