The RESOURCE_SELECT procedure call is the only mandatory procedure call that must appear inside the VHDL process statement for every application module. Every other API call (such as CONFIGURE_COUNTER and READ_FIFO_DATA, ect.) must appear after the first call to RESOURCE_SELECT.

The RESOURCE_SELECT procedure call has three primary purposes which are to:

1) select which framework clock domain a set of framework resources will be assigned to
2) select the framework resource domain each framework component will be selected from
3) drive the framework combinatorial next_state_rec signal to a default signal value

Partitioning of hardware resources is achieved by making multiple calls to RESOURCE_SELECT, each time with a different resource index. This will cause the framework module synchronous hardware components to be assigned to either the SYS_CLK clock domain or different resource clock domain depending on the clock parameter. The resource index must be specified in every API call. If an explicit index is not specified, it is assumed that the API call references the default resource domain 0. Otherwise, the resource index, 'M', must be explicitly referenced in the next_state_rec(M) and state_reg_rec(M) parameters, which are the last mandatory parameters of every API call.

Example API Call(s):

RESOURCE_SELECT( sys_clk, next_state_rec, state_reg_rec );
RESOURCE_SELECT( 120E6, next_state_rec(1), state_reg_rec(1) );

Call Data [ 3 parameters (3 mandatory) ]

[in]clock_freq[1] clock domain frequency in Hz or SYS_CLK

Return Data


Command Reference

Voice and Hotkey Commands:

See also
Resource Select Command
Framework Resources

Command Parameter Mapping

[in]clock_freq[1] [integer] "clock <integer>"

Command Return Data


Voice/HotKey Command Sequence

RESOURCE_SELECT( 120E6, next_state_rec(1), state_reg_rec(1) );

Voice Command HotKey Sequence
"resource select one" rs1
"clock one twenty mega-hertz" clock 120E6
"goto state four" goto 4

Usage Example

Add Example Usage

Notes and Warnings

Resource domains are a subset of clock domains, as there as there can be many resource domains that operate on the same clock domain.
The developer is responsible for specifying a system clock frequency. If no SYS_CLK frequency is specified, it is assumed that SYS_CLK == 100MHz.

See also


clock_freq: natural
signal next_state_rec: out NSR
state_reg_rec: in SRR
clock_freq: natural
signal next_state_rec: out NSR_ARRAY
state_reg_rec: in SRR_ARRAY
 Overloaded for array interface.