Download Embedded Peripherals IP User Guide

Transcript
Chapter 31: Vectored Interrupt Controller Core
Altera HAL Software Programming Model
31–15
The generator produces a vector table file for each VIC in the system, named
altera_<name>_vector_tbl.S. The vector table's source path is added to the BSP
Makefile for compilation along with other VIC driver source code. Its contents are
based on the BSP settings for each VIC's interrupt ports.
1
The VIC does not support runtime stack checking feature
(hal.enable_runtime_stack_checking) in the BSP setting.
VIC BSP Settings
The VIC driver scripts provide settings to the BSP. The number and naming of these
settings depends on your hardware system's configuration, specifically, the number of
optional shadow register sets in the Nios II processor, the number of VIC controllers
in the system, and the number of interrupt ports each VIC has.
Certain settings apply to all VIC instances in the system, while others apply to a
specific VIC instance. Settings that apply to each interrupt port apply only to the
specified interrupt port number on that VIC instance.
The remainder of this section lists details and descriptions of each VIC BSP setting.
altera_vic_driver.enable_preemption
Identifier:
ALTERA_VIC_DRIVER_ISR_PREEMPTION_ENABLED
Type:
BooleanDefineOnly
Default value:
1 when all components connected to the VICs support preemption. 0 when any
of the connected components don’t support preemption.
Destination file: system.h
Enables global interrupt preemption (nesting). When enabled (set to 1), the
macro ALTERA_VIC_DRIVER_ISR_PREEMPTION_ENABLED is defined in
system.h.
Description:
Two types of ISR preemption are available. This setting must be enabled along
with other settings to enable specific types of preemption.
All preemption settings are dependant on whether the device drivers in your BSP
support interrupt preemption. For more information about preemption, refer to
the Exception Handling chapter of the Nios II Software Developer’s Handbook.
Occurs:
Once per VIC
altera_vic_driver.enable_preemption_into_new_register_set
Identifier:
ALTERA_VIC_DRIVER_PREEMPTION_INTO_NEW_REGISTER_SET_ENABLED
Type:
BooleanDefineOnly
Default value:
0
Destination file: system.h
June 2011
Altera Corporation
Embedded Peripherals IP User Guide