Advent Instruments Inc.
4. Programming
4. Programming
4.1 Overview
As mentioned in section 1.2 Firmware Overview, the AI-7280 includes the ability to
store and execute user defined programs. These programs may read or write to all of the
AI-7280's hardware abstraction layer (HAL) properties giving them a wide range of
capabilities.
There are two primary motivations for developing programs. They are:
•
Time critical tasks: In some testing situations the timing requirements between
telephony events makes it difficult to operate the AI-7280 using the PC. The
un-deterministic latency of programs running on a PC along with latency within
the serial or USB communication channel causes a large degree of timing
uncertainty. Using the program execution units (PEU) within the AI-7280
eliminates the PC as a possible source of timing uncertainty.
•
Offloading simple tasks: For more complex test systems it may be simpler to
break the system into two levels. Simple tasks can be performed by the AI-7280
PEUs, while the higher level test control tasks performed by the PC.
Capabilities
The AI-7280 contains six program execution units (PEU). Each one can be thought as a
very simple processor executing instructions that manipulate HAL properties in order to
perform user specified tasks. The operation of each PEU is controlled by commands sent
to the AI-7280. A basic summary of a PEUs capability is:
•
Read and/or write data to any of the HAL properties.
•
Perform basic math operations.
•
Flow control structures for implementing loops and conditional statements.
•
A simple stack supporting functions and subroutines.
•
Ability to fully control any of the other six PEUs, thus supporting multiple
programs running in parallel or a single program consisting of multiple
processes.
•
A private data pool used for storing variable data.
•
A global data pool shared by all PEUs. Normally used to pass data between
PEUs or between a PEU and the PC.
•
Executes from either RAM or the AI-7280's non-volatile flash memory.
Programs executing from RAM are downloaded from the PC.
AI-7280 Programmers Guide - Direct Control
77