Altera SoCAL  16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
 All Data Structures Variables Typedefs Groups
Register : DCLK Count Register - dclkcnt

Description

Used to give software control in enabling DCLK at any time.

SW will need control of the DCLK in specific configuration and partial reconfiguration initialization steps to send spurious DCLKs required by the CB. SW takes ownership for DCLK during normal configuration, partial reconfiguration, error scenerio handshakes including SEU CRC error during partial reconfiguration, SW early abort of partial reconfiguration, and initializatin phase DCLK driving.

During initialization phase, a configuration image loaded into the FPGA can request that DCLK be used as the initialization phase clock instead of the default internal oscillator or optionally the CLKUSR pin. In the case that DCLK is requested, the DCLKCNT register is used by software to control DCLK during the initialization phase.

Software should poll the DCLKSTAT.DCNTDONE write one to clear register to be set when the correct number of DCLKs have completed. Software should clear DCLKSTAT.DCNTDONE before writing to the DCLKCNT register again.

This field only affects the FPGA if CTRL.EN is 1.

Register Layout

Bits Access Reset Description
[31:0] RW 0x0 Count

Field : Count - cnt

Controls DCLK counter.

Software writes a non-zero value into CNT and the FPGA Manager generates the specified number of DCLK pulses and decrements COUNT. This register will read back the original value written by software.

Software can write CNT at any time.

Field Access Macros:

#define ALT_FPGAMGR_DCLKCNT_CNT_LSB   0
 
#define ALT_FPGAMGR_DCLKCNT_CNT_MSB   31
 
#define ALT_FPGAMGR_DCLKCNT_CNT_WIDTH   32
 
#define ALT_FPGAMGR_DCLKCNT_CNT_SET_MSK   0xffffffff
 
#define ALT_FPGAMGR_DCLKCNT_CNT_CLR_MSK   0x00000000
 
#define ALT_FPGAMGR_DCLKCNT_CNT_RESET   0x0
 
#define ALT_FPGAMGR_DCLKCNT_CNT_GET(value)   (((value) & 0xffffffff) >> 0)
 
#define ALT_FPGAMGR_DCLKCNT_CNT_SET(value)   (((value) << 0) & 0xffffffff)
 

Data Structures

struct  ALT_FPGAMGR_DCLKCNT_s
 

Macros

#define ALT_FPGAMGR_DCLKCNT_RESET   0x00000000
 
#define ALT_FPGAMGR_DCLKCNT_OFST   0x8
 

Typedefs

typedef struct
ALT_FPGAMGR_DCLKCNT_s 
ALT_FPGAMGR_DCLKCNT_t
 

Data Structure Documentation

struct ALT_FPGAMGR_DCLKCNT_s

WARNING: The C register and register group struct declarations are provided for convenience and illustrative purposes. They should, however, be used with caution as the C language standard provides no guarantees about the alignment or atomicity of device memory accesses. The recommended practice for writing hardware drivers is to use the SoCAL access macros and alt_read_word() and alt_write_word() functions.

The struct declaration for register ALT_FPGAMGR_DCLKCNT.

Data Fields
uint32_t cnt: 32 Count

Macro Definitions

#define ALT_FPGAMGR_DCLKCNT_CNT_LSB   0

The Least Significant Bit (LSB) position of the ALT_FPGAMGR_DCLKCNT_CNT register field.

#define ALT_FPGAMGR_DCLKCNT_CNT_MSB   31

The Most Significant Bit (MSB) position of the ALT_FPGAMGR_DCLKCNT_CNT register field.

#define ALT_FPGAMGR_DCLKCNT_CNT_WIDTH   32

The width in bits of the ALT_FPGAMGR_DCLKCNT_CNT register field.

#define ALT_FPGAMGR_DCLKCNT_CNT_SET_MSK   0xffffffff

The mask used to set the ALT_FPGAMGR_DCLKCNT_CNT register field value.

#define ALT_FPGAMGR_DCLKCNT_CNT_CLR_MSK   0x00000000

The mask used to clear the ALT_FPGAMGR_DCLKCNT_CNT register field value.

#define ALT_FPGAMGR_DCLKCNT_CNT_RESET   0x0

The reset value of the ALT_FPGAMGR_DCLKCNT_CNT register field.

#define ALT_FPGAMGR_DCLKCNT_CNT_GET (   value)    (((value) & 0xffffffff) >> 0)

Extracts the ALT_FPGAMGR_DCLKCNT_CNT field value from a register.

#define ALT_FPGAMGR_DCLKCNT_CNT_SET (   value)    (((value) << 0) & 0xffffffff)

Produces a ALT_FPGAMGR_DCLKCNT_CNT register field value suitable for setting the register.

#define ALT_FPGAMGR_DCLKCNT_RESET   0x00000000

The reset value of the ALT_FPGAMGR_DCLKCNT register.

#define ALT_FPGAMGR_DCLKCNT_OFST   0x8

The byte offset of the ALT_FPGAMGR_DCLKCNT register from the beginning of the component.

Typedef Documentation

The typedef declaration for register ALT_FPGAMGR_DCLKCNT.