NoTA is a service based modular device architecture for embedded systems. Service based architecture concept applies ideas and technologies from SOA (Service Oriented Architecture)- world and e.g. from web services but implementing them in a device context. The architecture consists of three types of logical foundation elements, namely Application Nodes (AN), Service Nodes (SN), and Device Interconnect Protocol (DIP). Communication between the Application and Service Nodes takes place always over the DIP. Architecture concept and technologies are operating system agnostic and easily portable to different technologies and platforms.

Modular architecture is applied at system level. Instead of defining modular SW and HW architectures separately, the device architecture is described as a functional architecture where the device functionalities and capabilities are defined as services. Next phase in the system design is to define logical architecture where Service Nodes and Application Nodes are partitioned to subsystems.
![]() |
![]() |
| Functional Architecture | Logical Architecture |
A subsystem is a module which is connected to the device-level interconnect DIP. Strict modularity allows independent testing of the subsystems before final system integration is done.
NoTA and DIP is targeting various embedded device, e.g. mobile phones, portable devices, CE devices in general, automotive systems etc. NoTA technologies and solutions are not limited or targeted to any specific use case or device category.
Apply "internet technologies" in device level architecture
Beyond PC architecture

Services Interface Specification (SIS) defines the functional requirements and they are appended with non-functional requirements like performance, latency and power consumption. Application Node (AN) uses services from the Service Nodes (SN) but can not provide services. Service Node provides services but it can also use other Service Nodes to implement the service it is providing. This will result a hierarchical service definition. Each Service Node has a unique device level Service Identifier (SID).
NoTA architecture framework does not define the services for any specific domain, product or use case. There are several reasons for this. First of all, there are other forums and initiatives working on this already, e.g. Khronos standardization for multimedia and graphics domain. Secondly, NoTA is not targeting any specific domain or product category so the number of possible services is unlimited. Thirdly, one
of the main drivers for this open architecture is to facilitate open innovation and fast productization of disruptive technologies. These disruptive ideas will always need to be accompanied with corresponding service interface definitions without any consensus on these interfaces.
Subsystem includes the implementation of the DIP protocol together with certain set of Service and Application Nodes therefore defining a logical architecture. NoTA architecture framework does not define any subsystems; this is a system design and productization decision. A subsystem is connected to the device level physical interconnect and runs the DIP stack. The subsystem embodies the SNs as black-box implementations. Sub-system consists of all the software and hardware resources (including peripherals, memories, controllers, internal buses
etc.) needed to implement the defined Nodes. SNs can be implemented as software, hardware, mechanics or by any means as long as they implement the functionality declared in their interfaces. SNs and ANs can share resources within the subsystem but they can use resources outside of the subsystem only through declared service interfaces of the other services. A service can't e.g. use a memory resource from other subsystem if it is not done through a service interface.