data model
In a similar process of design where application needs are translated into system functions and IP blocks, there is a need to translate the application needs into the data model for the system. In a simple sensor system the data model might be the flow of data that represents the real world phenomena into some actionable consequence via a digital control function.
This design flow takes as inputs the growing understanding of the application needs, either form initial design study or iterative learning, and produces the data models for the primary data and any additional data (inc. ML models) needed to process it.
Understanding the data models will help determine key system parameters such as memory needs, communication bandwidths, etc.
Architectural Design for Machine Learning / Artificial Intelligence
There is a major effort to move Artiificial Intelligence ("AI") / Machine Learning ("ML") to the edge, that is deployed on devices in the real world as opposed to centralised in cloud based data centers. At the edge there is a need to understand the primary input data flowing through the SoC as well as the additional need to select/develop an appropriate inference model to provide the function over the input data.
The initial stage of design utilising ML/AI models is no different than other design task, defining the scope of the application, constraints, etc. Likewise the designer should undertake the usual build/reuse decision. Is there an existing model that will suffice. Obviously in an academic perspective an education oriented project might use an existing model but the drive of research projects it to develop new models that improve on the current. Here the build/reuse decision becomes a build/benchmark decision. The researcher finds existing models and looks for ways to develop an improved model which can be shown to be a improvement by some metric.
There are a lot of software frameworks that provide for model development, model optimization and deployment. Details of these are not replicated here but within the SoC Labs there is an interest sections dedicated to the Machine Learning topic which aims to describe in more detail how SoC Labs implementations benefit from and interact with such model development frameworks.
In that section are some useful resources to help with identifying appropriate data models for AI/ML.
Add new comment
To post a comment on this article, please log in to your account. New users can create an account.