An embedded-controller-based system, such as a personal digital assistant
(PDA), includes a system-on-a-chip with a processor, system bus, memory,
and system-bus peripherals. The system-bus peripherals include connections
to data paths that are not accessible from the system bus during execution
of application programs. Associated with these connections are test
drivers that include registers that can be written to by the processor via
the system bus for software controllability. When the processor executes a
test program, it writes test values to these registers. Some bits of the
test values are used to control multiplexers so that they can decouple
function block ports from the non-system-bus connections and then couple
the remaining bits of the registers. In this way, a test program can write
data directly to the non-system bus connections. The results of the test
data being applied at the source of inter-block connections can be read
from the destinations using test samplers. The test samplers can be taps
to function block ports that are multiplexed to the system bus for reading
during a test procedure for software observability. Thus, both bus
connections and non-bus connections can be tested by a program running the
system processor without requiring external test equipment.
Un système enfoncer-contrôleur-basé, tel qu'un aide numérique personnel (PDA), inclut un système-sur-un-morceau avec un processeur, un autobus de système, une mémoire, et des périphériques d'système-autobus. Les périphériques d'système-autobus incluent des raccordements aux circulations de données qui ne sont pas accessibles de l'autobus de système pendant l'exécution des programmes d'application. Associés à ces raccordements sont des conducteurs d'essai qui incluent les registres qui peuvent être écrits à par le processeur par l'intermédiaire de l'autobus de système pour la contrôlabilité de logiciel. Quand le processeur exécute un programme d'essai, il écrit des valeurs d'essai à ces registres. Un certain peu des valeurs d'essai est employé pour commander des multiplexeurs de sorte qu'ils puissent découpler des ports de bloc de fonction des raccordements d'non-système-autobus et puis coupler le peu restant des registres. De cette façon, un programme d'essai peut écrire des données directement aux raccordements d'autobus de non-système. Les résultats des essais étant appliqués à la source des raccordements entre blocs peuvent être lus des destinations en utilisant des échantillonneurs d'essai. Les échantillonneurs d'essai peuvent être des robinets à fonctionner les ports de bloc qui sont multiplexés à l'autobus de système pour lire pendant une méthode d'essai pour l'observabilité de logiciel. Ainsi, des raccordements d'autobus et les raccordements d'non-autobus peuvent être examinés par un programme courant le processeur de système sans exiger l'équipement d'essai externe.