![](http://datasheet.mmic.net.cn/260000/PCF50732_datasheet_15932419/PCF50732_42.png)
1999 May 03
42
Philips Semiconductors
Objective specification
Baseband and audio interface for GSM
PCF50732
13.3.12 STF
INSTRUCTION
The STF (Set/clear flag) instruction is used to set or clear the user flags A, B or C. System flags cannot be set or reset
under program control.
Table 45
STF instruction
13.3.13 IDX
INSTRUCTION
The IDX (Index operations) instruction is used to store and increment/decrement index values. It should be noted that
additions to the index register is done in modulo 64. A ‘decrement index register by one’ could therefore be programmed
as ‘IDX + 63’. The ‘IDX A’ instruction loads the 6 bits to the left of the binary point into the index register, i.e. it stores the
integer part modulo 64 into I.
Table 46
IDX instruction
13.4
The assembler/emulator
A 2-pass assembler and an emulator was made to assist with the development of VSP programs. The software programs
are written in ‘C’ and currently run under NT, HPUX and LINUX operating systems. The assembler reads assembler
source files and produces a log file, sets of VHDL or Verilog stimuli and an output file containing CSI instructions that,
when loaded, will load the executable into the VSP RAM.
Requirements for the assembler source code are:
One instruction or pseudo instruction (see Table 47) per line
No empty lines
A maximum of 512 instructions
Operation always starts at instruction 0.
Table 47
Assembler pseudo instructions
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
OPERATION
<value>
→
<f.l.>
ASSEMBLER
1
1
0
0
flag
X
X
X
X
X
X
X
X
value
STF <f.l.> <value>
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
OPERATION
<value>
→
I
I + <value>
→
I
A
→
I
ASSEMBLER
1
1
1
1
1
1
0
0
0
1
1
1
0
0
1
0
0
0
0
1
0
X
X
X
X
X
X
X
X
X
value
value
X
IDX = <value>
IDX + <value>
IDX A
X
X
X
X
X
MNEMONIC
INSTRUCTION
DEFINITION
. label
{<.>< ><label>}
Defines a location inside the source code. Is usually used as
an argument to JMF/JSF instructions.
Defines a variable and assigns a value to it. These variables
can then be referenced in the assembler instructions.
Reads in another source code file and then continues with the
current file.
Defines a comment; the rest of the line is skipped.
define
{<define>< ><label> < ><value>
include
{<include>< ><file name>}
--
{<-->< ><comment>