Authors:
Sonni Lorenz F. Cubero (sonni.cubero@proventusnova.com) CJ Mirafuentes (cj.mirafuentes@proventusnova.com) |
Date: February 27, 2025 |
About
This document serves as a guide for project managers dealing with ProventusNova products, providing them with essential technical knowledge, industry terms, best practices, and tools to effectively manage projects in an embedded systems environment.
Project Manager Terms
These are the terms that a project manager needs to know when dealing with ProventusNova products.
Software
Software is a collection of programs, instructions, and data that run on a computer to perform tasks. It is the opposite of hardware, which is the physical parts of a computer.
Embedded Software
Embedded software is computer code that controls devices other than traditional computers. It is designed to work with a specific device's hardware and is often found in everyday objects like cars, appliances, and smartphones.
Embedded Platforms/Systems
An embedded platform is defined as a system that includes various types of peripherals with distinct characteristics. These peripherals can either be integrated into modern SoC devices or remain as part of the platform board to enhance the capabilities of the SoC device.
Computer Architecture
The structure of a computer system and how its parts work together. It defines how the computer's components interact to process data.
ARM (Advanced RISC Machine)
Refers to a type of computer processor architecture. ARM processors are known for their energy efficiency and performance.
RISC (Reduced Instruction Set Computer)
A microprocessor architecture that uses a small set of simple instructions to perform tasks more quickly than other architectures.
x86_64
Also known as x64 or AMD64, x86_64 is a 64-bit architecture for CPUs. It is used in most home computers and servers. x86_64 is an extension of the 32-bit x86 architecture, supporting 64-bit mode and compatibility mode, which allows users to run 16-bit and 32-bit applications.
Linux
Linux is a free, open-source operating system (OS) that is used on computers, servers, and mobile devices. It is similar to Unix and is one of the most widely used operating systems in the world.
GStreamer
GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows.
GStreamer Daemon (gstd)
GStreamer Daemon, also called gstd, is a GStreamer framework for controlling audio and video streaming using an InterProcess Communication protocol.
GStreamer Interpipes
GstInterpipe is a RidgeRun open-source GStreamer plug-in that enables pipeline buffers and events to flow between two or more independent pipelines. The plug-in consists of two elements: Interpipesink and Interpipesrc. The Interpipesrc connects with an Interpipesink, from which it receives buffers and events.
Kernel
A kernel is the core part of an operating system. It acts as a bridge between software applications and the hardware of a computer.
API
An API, or application programming interface, is a set of rules or protocols that enables software applications to communicate with each other.
Raspberry PI
A small, inexpensive computer used for learning and exploring computer science. It is about the size of a credit card and offers cost-effective, high-performance computing for businesses and home use.
Ubuntu
Ubuntu is a modern, open-source operating system based on Linux for enterprise servers, desktops, cloud computing, and IoT.
Nvidia Jetson
NVIDIA Jetson is a platform for AI applications in robotics and embedded systems. It includes compact computers, software development kits, and other tools. It is used by professional developers to create breakthrough AI products across industries and by students and enthusiasts for hands-on AI learning and innovative projects.
ESP32
ESP32 is a low-cost, low-power microcontroller board with built-in Wi-Fi and Bluetooth. It is designed for a variety of applications, including IoT devices, wearable electronics, and mobile devices. Its low cost and power efficiency make it ideal for a variety of IoT applications.
Texas Instruments Processors
Developed by Texas Instruments, these processors feature ARM9, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A15, and ARM Cortex-A53 cores. Sitara Processors offer low-power and high-performance models, making them suitable for battery-operated devices and industrial systems. They provide a developer-friendly environment with tools like Code Composer Studio and RTOS support.
Qualcomm Snapdragon
A system-on-chip (SoC) that powers a variety of devices, such as smartphones, tablets, laptops, and desktops. Snapdragon processors integrate ARM Cortex cores, DSP, and AI and come with built-in Wi-Fi, LTE, and 5G, making them ideal for IoT and edge computing.
Intel Atom Processors
Intel Atom Processors are designed for low-power consumption while providing sufficient power for embedded systems. Their x86 architecture ensures compatibility with a wide variety of software.
Microchip PIC Microcontrollers
Known for their low power consumption and affordability, Microchip PIC Microcontrollers are ideal for embedded systems, particularly in battery-powered devices and simple consumer electronics.
STMicroelectronics STM32 Series
Based on the Arm Cortex-M processor, featuring cores from Cortex-M0 to Cortex-M7.
Renesas RX
The Renesas RX Family uses 32-bit RX cores, delivering strong computational power and support for complex applications.
Arm Cortex-M Series
Widely used for its scalability, low power, and strong performance, the Arm Cortex-M Series offers a range of cores from Cortex-M0 to Cortex-M7.
Arduino
Arduino is an open-source electronics platform that uses hardware and software to read inputs and create outputs. It is used to build prototypes for various applications, including smart homes, entertainment, and monitoring systems.
NXP i.MX Series
The NXP i.MX Series offers performance versatility, with different models targeting various market segments. They come with Arm Cortex-A series cores, GPU, and DSP for enhanced performance in multimedia and machine learning applications.