You are on page 1of 1

xPC Target Function Library Quick Reference Sheet

Note: Header file xpctarget.h contains function prototypes for all xPC Target functions

Data Structures
Type

Structure

Structure Description

Members

xpcPCIDevice

Defines PCI configuration space

BaseAddress[6]
VirtAddress[6]
Length[6]
AddressSpaceIndicator[6]
MemoryType[6]
Prefetchable[6]
InterruptLine
VendorId
DeviceId
SubDeviceId
SubVendorId

uint32_T
uint32_T
uint32_T
uint16_T
uint16_T
uint16_T
uint16_T
uint16_T
uint16_T
uint16_T
uint16_T

Physical base address assigned by PCI BIOS


Virtual address (see xpcReserveMemoryRegion)
Length of region in bytes
0: Memory-mapped, 1: I/O port mapped
0: 32-bit, 1: Locate below 1MB, 2: 64-bit
Indicates if memory is prefetchable
Contains the assigned interrupt line, 0-15
Vendor ID
Device ID
Sub-device ID
Sub-vendor ID

Member Description

xpcTime

Holds time value in nanoseconds

U64.NanoSecondsLo
U64.NanoSecondsHi

uint32_T
uint32_T

Bottom 32 bits of 64-bit value in nanoseconds


Top 32 bits of 64-bit value in nanoseconds

Functions
Function Name
xpcInpB
xpcInpW
xpcInpDW
xpcOutpB
xpcOutpW
xpcOutpDW
xpcGetPCIDeviceInfo

Description
Returns value of byte input port
Returns value of word input port
Returns value of double word input port
Writes to byte output port
Writes to word output port
Writes to double word output port
Get PCI device information

Returns
uint8_T value
uint16_T value
uint32_T value
void
void
void
0: pass
int32_T
1: fail

xpcShowPCIDeviceInfo
xpcAllocPhysicalMemory
xpcFreePhysicalMemory
xpcReserveMemoryRegion
xpcGetElapsedTime
xpcSubtractTime
xpcBusyWait
xpcIsModelInit

Display PCI device information


Allocate physical memory
Free physical memory
Map physical memory to virtual
Returns time since system boot
Returns difference between two times
Wait for specified length of time
Returns target model load state;
true: while application loads,
false: start application execution

void
void * physical
void
void * virtual
real_T seconds
real_T seconds
void
boolean_T load

Arguments
uint16_T port
uint16_T port
uint16_T port
uint16_T port, uint8_T value
uint16_T port, uint16_T value
uint16_T port, uint32_T value
uint16_T vendorId, uint16_T deviceId,
uint16_T subVendorId, uint16_T subDeviceId,
uint16_T bus, uint16_T slot, xpcPCIDevice *pciInfo
xpcPCIDevice *pciInfo
uint32_T numBytes
const void *physical
const void *physical, uint32_T numBytes, uint32_T access
xpcTime *upTime
xpcTime *time, const xpcTime *time2, const xpcTime *time1
real_T seconds
void

Interrupt Hook Functions


Function Name

Description

Returns

Arguments

PCI

ISA

PreHookFunction

ISR function to be called when board issues interrupt request

xpcPCIDevice *pciInfo

PostHookFunction
StartFunction
StopFunction

Runs after return from function call on interrupt, before model execution
Called before model begins execution to enable interrupts
Called after model termination to disable interrupts

int XPC_RUN_ISR
XPC_DROP_ISR
void
void
void

All members of
xpcPCIDevice
except VirtAddress
are provided.

Only
BaseAddress[0] of
xpcPCIDevice is
provided.

Macros
#define

Description

XPC_NO_VEND_DEV
XPC_NO_BUS_SLOT
XPC_RT_PG_USERREADWRITE
XPC_RUN_ISR
XPC_DROP_ISR

Use when no VendorId, DeviceId, subVendorId or subDeviceId is required


Use when not specifying PCI bus or slot
Read/write access to memory region
Hook function return if interrupt occurred
Hook function return if no interrupt occurred

xPC Target Version 4.0 (R2008b)

2008 The MathWorks, Inc.

xpcPCIDevice *pciInfo
xpcPCIDevice *pciInfo
xpcPCIDevice *pciInfo