![NXP Semiconductors SLN-LOCAL2-IOT User Manual Download Page 47](http://html.mh-extra.com/html/nxp-semiconductors/sln-local2-iot/sln-local2-iot_user-manual_1721901047.webp)
shows the software architecture of NXP’s ASR for SLN-LOCAL2-IOT. The ASR control structure points to a command
inference engine instance, the linked lists of language models, and the wake word engines. There are memory pools assigned
for the command as well as the wake word inference engine instances in the SRAM. The language_x_model.bin files are located
in the flash memory, where each BIN file is basically a pack of a language’s base model and
N+1
groups of wake word(s)
and commands.
The ASR control snippet is shown in
. It describes the three major structure members.
Figure 56. ASR control snippet
7.1.2.3 Language model
Figure 57. ASR language model snippet
The language model structure in
consists of the following members:
• iWhoAmI: the ASR model is language-specific. Each ASR voice engine must define a language. You can extend
with other languages.
• nGroups: the number of groups in a language model binary. By default, it contains a language-specific base model
(counted as a group) and a wake word group. You can define
N
command groups.
• addrBin: the address of a language model binary. This address points to a base model.
• addrGroup[MAX_GROUPS]: the addresses of wake word and
N
command groups. MAX_GROUPS should be greater
than or equal to
N+1
.
• addrGroupMapID[MAX_GROUPS - 1]: addresses of MapIDs. A MapID is an ID that can be assigned to a set of
commands.
• next: the pointer to the next language model in a linked list.
Table 9. ASR language type
Language type
asr_language_t code
Encoding
Unknown
UNDEFINED_LANGUAGE
0x0000
English (EN)
ASR_ENGLISH
0x0001
Chinese (ZH)
ASR_CHINESE
0x0002
Table continues on the next page...
NXP Semiconductors
Far-field local voice control framework
SLN-LOCAL2-IOT Developer’s Guide, Rev. 0, 19 April 2021
User's Guide
47 / 87