![Infineon Technologies TC1796 Скачать руководство пользователя страница 576](http://html1.mh-extra.com/html/infineon-technologies/tc1796/tc1796_user-manual_2055437576.webp)
TC1796
System Units (Vol. 1 of 2)
Peripheral Control Processor (PCP)
User’s Manual
11-39
V2.0, 2007-07
PCP, V2.0
Note: Enabling PRAM partitioning (PCP_CS.PPE = 1) with a CSA size of zero
(PCP_CS.PPS = 0) is an invalid setting and will cause a PCP error event
whenever any interrupt request is received by the PCP.
11.6.2
Channel Watchdog
The Channel Watchdog is a PCP internal watchdog that optionally allows the user to
ensure that the PCP will not become locked into executing a single channel due to an
endless loop or unexpected software sequence. As each channel executes, the PCP
maintains an internal count of the number of instructions that have been read from
CMEM since the channel started. If the watchdog function is enabled (by programming
PCP_CS.CWE = 1) and the internal instruction fetch counter reaches the threshold
programmed by the user (programmed via PCP_CS.CWT), a PCP error is generated.
The threshold setting (PCP_CS.CWT) is global to all channels. From this it follows that
the threshold must be selected to be greater than the maximum number of instructions
that can be fetched by any channel program, taking all channels into consideration. It
should be noted that the instruction width of the PCP is 16 bits and that therefore
execution of an instruction that is encoded into 32 bits (e.g. LDL.IL) will generate two
CMEM instruction reads. That will therefore cause the internal watchdog counter to be
incremented twice.
Note: Enabling the Channel Watchdog function (PCP_CS.CWE = 1) with a threshold of
zero (PCP_CS.CWT = 0) is an invalid setting and will cause a PCP error event
whenever any interrupt request is received by the PCP.
11.6.3
Invalid Opcode
The PCP includes the Invalid Opcode mechanism to check that each instruction fetched
from CMEM is a legal instruction. If the PCP attempts to execute an illegal instruction,
then a PCP error is generated.
Note: The DEBUG instruction must be only used in DEBUG mode otherwise it will be
considered to be an illegal operation and will generate an IOP error.
11.6.4
Instruction Address Error
An Instruction Address Error is generated if the PCP attempts to execute an instruction
from an illegal address. An address is considered to be illegal if:
•
The address is outside the available CMEM area (see
size implemented in this derivative)
and/or
•
The specified address could not be contained in the 16-bit PC (i.e. an address
calculation yielded a 16-bit unsigned overflow).