The ICAP process is replicated on every IPE and runs under an operating system designed for use on high speed digital signal processors such as the TI TMS320C40 used for the ICAP IPEs. As in the CP, there are many concurrent tasks in each process. These tasks are normally initiated upon request from the CP. The ICAP process may consist solely of system-supplied service tasks or have additional user-supplied tasks. If there are user-supplied tasks, it is assumed that they will be working in coordination with the user's CP task.
Although the IPEs could run different processes, we do not intend to support this model. Different processes greatly complicate debugging because the IUA debugger (modified gdb) only supports one symbol table at a time. Different processes would require different concurrent instances of the debugger session, greatly complicating the user's interaction with the program. Different processes can be simulated by loading all the code for all processes on all processors, and simply not invoking the extraneous code. If there is insufficient memory for this approach we will pursue the option of dynamic code caching. The term ICAP is used when referring to a task performed by all of the IPEs together.
IUA Home Page