Introduction to RISC-V architecture Training Course
This course serves as an introduction to the RISC-V architecture and the microcontrollers built upon it. Participants may optionally engage in practical exercises using the GD32VF103 microcontroller, along with programming tasks in C or assembly language facilitated by the RARS simulator.
This course is available as onsite live training in Slovakia or online live training.Course Outline
Exploration of RISC-V architecture origins, the modular architecture definition encompassing base architectures and extensions, the RISC-V ISA including registers and the instruction set, features aligned with modern software concepts, and an overview of various RISC-V implementations.
RISC-V system architecture, exception handling mechanisms, the CLIC interrupt controller, and the ECLIC interrupt controller within the GD32VF103.
Exercises:
1. Firmware development for the GD32VF103 using VScode.
2. Implementation and management of GD32VF103 interrupts.
Requirements
Fundamental knowledge of the C programming language is required.
Open Training Courses require 5+ participants.
Introduction to RISC-V architecture Training Course - Booking
Introduction to RISC-V architecture Training Course - Enquiry
Introduction to RISC-V architecture - Consultancy Enquiry
Testimonials (1)
Being able to ask for advanced subjects even if there were not planned initially.
Gabriel Chouinard - Spark Microsystems
Course - FreeRTOS: Programming for Real Time Operating Systems
Upcoming Courses
Related Courses
Advanced Embedded Systems Development
35 HoursThis instructor-led, live training in Slovakia (online or onsite) is designed for engineers who wish to learn how to utilize embedded C to program various microcontrollers based on different processor architectures (8051, ARM CORTEX M-3, and ARM9).
Buildroot: a Firmware Generator for Embedded Systems
7 HoursBuildroot is an open-source initiative comprising scripts that generate a cross-compilation toolchain, a customizable root filesystem image, and a Linux kernel tailored for embedded devices. In this hands-on course, participants will acquire the skills to utilize Buildroot effectively:
- Selecting software packages to include in the root filesystem.
- Adding new packages and modifying existing ones.
- Introducing support for new embedded hardware boards.
Participants will create bootable filesystem images during the course. Remote sessions are conducted using the QEMU emulator, while in-person classes may utilize either QEMU or actual embedded boards selected by the instructor.
For projects with similar objectives, consider the Yocto project and OpenWRT. Refer to these presentations to help determine which build system best suits your specific needs.
Circuits and Electronics Fundamentals
14 HoursThis instructor-led, live training in Slovakia (online or onsite) is designed for engineers and computer scientists who aim to apply circuit and electronics fundamentals to design devices and systems that leverage electrical component properties to enhance hardware functionalities.
Upon completion of this training, participants will be able to:
- Set up and configure the essential tools and software for circuit and circuit board development.
- Grasp the core principles governing circuits and electronics engineering.
- Employ primary electronic components to build efficient computer hardware technologies.
- Optimize electronic devices through the implementation of circuit analysis methods.
- Apply electronics and circuit fundamentals to the development of enterprise applications.
Digital Signal Processing (DSP) Fundamentals
21 HoursThis instructor-led live training in Slovakia (online or onsite) targets engineers and scientists who wish to learn and apply DSP implementations to efficiently handle diverse signal types and achieve better control over multi-channel electronic systems.
By the end of this training, participants will be able to:
- Set up and configure the required software platform and tools for Digital Signal Processing.
- Understand the foundational concepts and principles of DSP and its applications.
- Recognize DSP components and apply them in electronic systems.
- Generate algorithms and operational functions using DSP outcomes.
- Utilize basic features of DSP software platforms and design signal filters.
- Synthesize DSP simulations and implement various filters for DSP.
Embedded C Application Design Principles for Automotive Professionals
14 HoursThis two-day program explores fundamental design principles, supported by code examples and insights into contemporary industrial technologies. It is highly beneficial for professionals working in automotive software development.
Embedded C Application Design Principles
14 HoursThis instructor-led live training (available online or on-site) is designed for C developers who want to master the principles of embedded C design.
Upon completion of this training, participants will be able to:
- Grasp the design considerations essential for creating reliable embedded C programs
- Define the functionality of an embedded system
- Establish the program logic and structure required to achieve desired outcomes
- Design robust, error-free embedded applications
- Optimize performance on target hardware
Course Format:
- Interactive lectures and discussions
- Exercises and practical practice
- Hands-on implementation in a live lab environment
Customization Options:
- To request customized training for this course, please contact us to arrange.
Electronic Control Unit (ECU) - Practical Vector
28 HoursThis instructor-led, live training in Slovakia (online or onsite) is aimed at intermediate-level automotive engineers and technicians who wish to gain hands-on experience in testing, simulating, and diagnosing ECUs using Vector tools like CANoe and CANape.
By the end of this training, participants will be able to:
- Understand the role and function of ECUs in automotive systems.
- Set up and configure Vector tools such as CANoe and CANape.
- Simulate and test ECU communication on CAN and LIN networks.
- Analyze data and perform diagnostics on ECUs.
- Create test cases and automate testing workflows.
- Calibrate and optimize ECUs using practical approaches.
Electronic Control Unit (ECU) - Theoretical Vector
21 HoursThis instructor-led, live training in Slovakia (online or onsite) targets intermediate-level automotive engineers and embedded systems developers who want to grasp the theoretical foundations of ECUs, with a focus on Vector-based tools and methodologies employed in automotive design and development.
Upon completion of this training, participants will be able to:
- Comprehend the architecture and functionality of ECUs in contemporary vehicles.
- Analyze the communication protocols utilized in ECU development.
- Explore Vector-based tools and their theoretical applications.
- Apply model-based development principles to ECU design.
FreeRTOS: Programming for Real Time Operating Systems
14 HoursIn this instructor-led live training in Slovakia, participants will learn how to code using FreeRTOS as they step through the development of a simple RTOS project using a microcontroller.
By the end of this training, participants will be able to:
- Understand the basic concepts of real-time operating systems.
- Learn the environment of FreeRTOS.
- Learn how to code with FreeRTOS.
- Interface a FreeRTOS application to hardware peripherals.
Learning Vivado
14 HoursThis instructor-led live training in Slovakia (online or onsite) targets FPGA developers seeking to utilize Vivado for designing, debugging, and implementing hardware solutions.
By the end of the training, participants will be able to:
- Develop HDL systems with C code and Vivado tools.
- Generate and implement soft processors in Vivado.
- Test and simulate C code using Vivado.
LEDE: Set Up a Linux Wireless Router
7 HoursThe LEDE Project (Linux Embedded Development Environment) is a Linux operating system derived from OpenWrt. It serves as a comprehensive alternative to the proprietary firmware typically provided by vendors for a wide array of wireless routers and non-networking devices.
During this instructor-led live training, participants will gain the knowledge and skills needed to configure a LEDE-based wireless router.
Target Audience
- Network administrators and technicians
Course Format
- A blend of lectures, discussions, exercises, and extensive hands-on practice
Introduction to FreeRTOS
7 HoursThis course provides an introduction to RTOS-based software design for embedded systems and IoT. Participants will learn RTOS concepts, synchronization mechanisms, and software design scenarios using RTOS. The exercises are performed using STM32 Nucleo 144 or similar development boards.
Yocto Project
28 HoursIn this instructor-led, live training in Slovakia, participants will learn how to create a build system for embedded Linux based on Yocto Project.
By the end of this training, participants will be able to:
- Understand the fundamental concepts behind a Yocto Project build system, including recipes, metadata, and layers.
- Build a Linux image and run it under emulation.
- Save time and energy building embedded Linux systems.
The Yocto Project - An Overview - hands-on
28 HoursDescription
This four-day training merges theoretical concepts with practical exercises to introduce participants to the Yocto Project.
It addresses common inquiries such as:
- Is it truly essential to utilize a different toolchain/libraries/packages version for every GNU/Linux project, alongside adopting a distinct workflow?
- Can you guarantee that the development environment remains consistent for all developers and suppliers, allowing you to reproduce identical builds today and over a decade from now?
- Can the YP assist in identifying the software licenses under which the packages you utilize are distributed?
Practical sessions are conducted on target hardware (for instance, Beagle Bone Black Rev. C - http://beagleboard.org/BLACK). Upon completing the training, you will receive access to a Docker image containing Ubuntu 14.x with all necessary dependencies pre-installed, along with course examples, enabling you to practice in your own lab environment. Please note that this is not an introductory course for Embedded GNU/Linux. Participants are expected to already understand how Embedded GNU/Linux functions and be proficient in configuring and building the GNU/Linux kernel and its drivers.
Who should attend?
This course is designed for individuals who already use GNU/Linux in their projects and have likely heard of the Yocto Project but hesitated to explore it further or found it difficult to use. If you are unsure how to integrate the YP into your daily workflow and generally perceive it as overly complex—questioning why something that was previously (supposedly) much easier has become this complicated—you should attend. After the training, you will be equipped to decide whether the YP is suitable for your needs. The workshop targets software developers, system engineers, testers, administrators, and other professionals interested in the YP who possess solid knowledge of Embedded GNU/Linux.